SylixOS 双网卡冗余备份使用说明


开发板需要有双网卡,并能进行正常通信。若选择中断机制实现,硬件PHY上需具有中断引脚且能正常输出。双网卡冗余备份方案采用”主-备份”网卡策略将多块物理网卡进行绑定,绑定后两个网卡只有一个物理地址和IP地址,同一时刻只有一个网卡进行工作,当主网卡或线路出现故障时能自动切换到备份网卡。双网卡冗余备份方案采用轮询机制检测,即每隔一段时间进行一次PHY连接状态检测,当检测到主网卡连接断开且备份网卡连接正常时,切换至备份网卡。双网卡冗余备份方案采用中断机制检测,即PHY连接状态改变产生中断信号,立即进行检测,当检测到主网卡连接断开且备份网卡连接正常时,切换至备份网卡。中断机制检测相比轮询机制,反应时间更快,但需要硬件支持。调用ifconfig命令查看当前网卡信息,获取需要进行绑定的两个网卡名,如图 4.1所示。图4.1获取网卡信息跳转到/etc/目录下,添加一个绑定双网卡的配置文件bonding.ini,内容示例如程序清单 4.1所示。程序清单4.1 bonding.ini配置文件本次配置采用了主从策略,具体说明如下:ipaddr:配置绑定后的IP地址;netmask:配置绑定后的子网掩码;gateway:配置绑定后的默认网关;mac:配置绑定后的物理地址;en1name:配置需要绑定的主网卡名;en2name:配置需要绑定的备份网卡名;mode:配置工作模式(0:轮询机制,1:中断机制),若选择轮询机制,需配置miimon项;若选择中断机制,需配置en1gpio、en2gpio、gpiotype、gpiolevel项;miimon:配置轮询检测时间(毫秒),通常设置为100毫秒;gpiotype:配置触发方式(0:电平触发,1:边沿触发);gpiolevel:配置触发条件(如果为电平触发, 1 表示高电平触发, 0 表示低电平触发;如果为边沿触发, 1 表示上升沿触发, 0 表示下降沿触发, 2 表示双边沿触发)。双网卡冗余备份模块需要调用网卡驱动中的ioctl函数,并设置物理网卡硬件地址,要求底层网卡驱动具有如表格 4.1功能:表格4.1 ioctl函数cmd命令cmd命令参数类型功能SIOCSIFHWADDRstruct ifreq设置硬件地址GET_LINK_STATEstruct ifreq获取PHY状态SET_PHY_MICRNULL设置PHY中断CLEAR_PHY_MISRNULL清除PHY中断状态GET_MAC_IRQULONG获取网卡中断号GET_PHY_GPIOUINT8获取PHY中断输出GPIO管脚号若网卡驱动中ioctl函数未实现,需修改网卡驱动,具体细节为:网卡驱动函数中添加ioctl函数,如程序清单 4.2所示。程序清单4.2网卡驱动函数修改编写ioctl函数,如程序清单 4.3所示。程序清单4.3添加ioctl函数ioctl函数中,添加SIOCSIFHWADDR命令,如程序清单 4.4所示。程序清单4.4添加SIOCSIFHWADDR命令ioctl函数中,添加GET_MAC_IRQ命令,如程序清单 4.5所示。程序清单4.5添加GET_MAC_IRQ命令轮询机制需要调用网卡驱动中的ioctl函数,并读取硬件设备PHY的连接状态,需要修改网卡驱动ioctl函数,具体细节为:ioctl函数中,添加GET_LINK_STATE命令,如程序清单 4.6所示。程序清单4.6添加GET_LINK_STATE命令中断机制需要调用网卡驱动中的ioctl函数,并清除PHY的中断状态寄存器,需要修改网卡驱动ioctl函数,具体细节为:添加SET_PHY_M开发云主机域名ICR命令,如程序清单 4.7所示。程序清单4.7添加SET_PHY_MICR命令添加CLEAR_PHY_MISR命令,如程序清单 4.8所示。程序清单4.8添加CLEAR_PHY_MISR命令注意:申请GPIO管脚号需要在开发板 BSP 适配文件中添加对应的GPIO配置。添加GET_PHY_GPIO命令,如程序清单 4.9 所示。程序清单4.9添加GET_PHY_GPIO命令模块加载,开启双网卡冗余备份。模块卸载,关闭双网卡冗余备份。主机ping开发板,手动拔掉一根网线,观察是否自动切换到另一个网卡上去,网络是否还是连通状态;等会拔掉另一根网线再次观察网络连通性。

相关推荐: SylixOS 双网卡冗余备份使用说明

开发板需要有双网卡,并能进行正常通信。若选择中断机制实现,硬件PHY上需具有中断引脚且能正常输出。双网卡冗余备份方案采用”主-备份”网卡策略将多块物理网卡进行绑定,绑定后两个网卡只有一个物理地址和IP地址,同一时刻只有一个网卡进行工作,当主网卡或线路出现故障时…

免责声明:本站发布的图片视频文字,以转载和分享为主,文章观点不代表本站立场,本站不承担相关法律责任;如果涉及侵权请联系邮箱:360163164@qq.com举报,并提供相关证据,经查实将立刻删除涉嫌侵权内容。

(0)
打赏 微信扫一扫 微信扫一扫
上一篇 03/30 08:33
下一篇 03/30 08:34