[发明专利]在DDS中间件上实现双冗余网卡切换的方法在审
申请号: | 201811346891.0 | 申请日: | 2018-11-13 |
公开(公告)号: | CN109474466A | 公开(公告)日: | 2019-03-15 |
发明(设计)人: | 赵昶宇 | 申请(专利权)人: | 天津津航计算技术研究所 |
主分类号: | H04L12/24 | 分类号: | H04L12/24;H04L12/26 |
代理公司: | 中国兵器工业集团公司专利中心 11011 | 代理人: | 王雪芬 |
地址: | 300308 天津*** | 国省代码: | 天津;12 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 中间件 网卡 双冗余网卡 卸载 发动机技术领域 发生故障 网卡切换 网络设备 网络通信 质量策略 实时性 中断 监测 通信 | ||
1.一种在DDS中间件上实现双冗余网卡切换的方法,其特征在于,包括以下步骤:
S1:在网卡驱动的中断处理程序中监测两个网卡的链路状态;
S2:在发生网卡切换时关闭故障网卡。
2.如权利要求1所述的方法,其特征在于,步骤S1具体为:
系统上电后进入网卡驱动的中断处理程序之后,首次判断到中断状态寄存器的链路状态位被置位时,若监测到第一网卡A的链路状态正常,则用ipAttach()函数挂载第一网卡A,用ifconfig()函数启动第一网卡A,然后用ipAttach()函数挂载第二网卡B,用ifconfig()函数关闭第二网卡B;若监测到第二网卡B的链路状态正常,则用ipAttach()函数挂载第二网卡B,用ifconfig()函数启动第二网卡B,然后用ipAttach()函数挂载第一网卡A,用ifconfig()函数关闭第一网卡A,完成两个网卡工作状态的初始化;
网卡的初始化工作完成后,当前工作网卡为第一网卡A,若判断到中断状态寄存器的链路状态位被置位时,监测到第一网卡A的链路状态正常,则不切换网卡;若监测到第一网卡A的链路状态不正常,则判断第二网卡B的链路状态,若第二网卡B的链路状态正常,则系统切换到第二网卡B进行工作;当前工作网卡为第二网卡B,若判断到中断状态寄存器的链路状态位被置位时,监测到第二网卡B的链路状态正常,则不切换网卡;若监测到第二网卡B的链路状态不正常,则判断第一网卡A的链路状态,若第一网卡A的链路状态正常,则系统切换到第一网卡A进行工作;
若第一网卡A、第二网卡B两个网卡的链路状态均不正常,则向上层用户程序报送故障。
3.如权利要求2所述的方法,其特征在于,在步骤S1中网卡初始化时,还为两个网卡设置相同的MAC地址。
4.如权利要求3所述的方法,其特征在于,为两个网卡设置相同的MAC地址具体为:从PROM中读出其中一块网卡的MAC地址,将该MAC地址的内容写入另一块网卡MAC地址寄存器和数据结构变量中。
5.如权利要求1所述的方法,其特征在于,步骤S2具体为:当发生网卡切换时,若当前故障网卡为第一网卡A,备用网卡为第二网卡B,且备用网卡的链路状态正常,则先用ifconfig()函数关闭第一网卡A,然后用ipAttach()函数挂载第二网卡B,用ifconfig()函数启动第二网卡B;若当前故障网卡为第二网卡B,备用网卡为第一网卡A,且备用网卡的链路状态正常,则先用ifconfig()函数关闭第二网卡B卡,然后用ipAttach()函数第一网卡A,用ifconfig()函数第一网卡A。
6.如权利要求5所述的方法,其特征在于,每块网卡的MAC地址都保存在网卡的PROM中。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于天津津航计算技术研究所,未经天津津航计算技术研究所许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201811346891.0/1.html,转载请声明来源钻瓜专利网。