功能原理

            下面图示说明Bypass工作方式。左边是设备正常工作状态下,两个网络的封包都经过应用软件处理后再传播。右边是设备Bypass导通状态,设备的应用程序不再对网络封包进行处理。


                                          设备正常工作状态                                                   设备故障状态,Bypass导通
            注:网卡指示灯状态可以显示Bypass状态与正常网卡工作状态,Bypass状态下网卡的指示灯不亮,网卡正常工作时,指示灯亮。

上面简单说明了一下Bypass的控制方式,下面针对Bypass工作原理作一下简要的说明,主要从硬件和软件两个层面来分析。

1、 硬件层面
             在硬件层面上,要实现Bypass,主要使用的就是继电器。这些继电器主要连接两个Bypass网口的各个网口信号线,下图以其中一根信号线来说明继电器在其中的工作方式。以电源触发为例,当断电的情况下,继电器内的开关将会跳拨到1的状态,即将LAN 1 的RJ45接口上的Rx直接和LAN2 的RJ45 Tx 导通;而当设备上电以后,开关就会导通到2上,这样如果要使LAN1和LAN2 上的网络间通讯,就需要通过这台设备上的应用程序来实现了。
  

2、 软件层面

     之前在Bypass的分类中谈到了GPIO和Watchdog两种方式来控制、触发Bypass,实际上这两种方式都是对GPIO作操作,然后由GPIO来控制硬件上的继电器作相应的跳转。具体一点,就是相应的GPIO如果被置成高电平,那么继电器就相应的跳转到位置1,相反如果GPIO被置成低电平,继电器就跳转到位置2。

     另外对于Watchdog Bypass,实际上是在上面的GPIO控制的基础上,增加Watchdog控制Bypass。传统上,当Watchdog生效后,系统会Reset ,但如果使用了Watchdog Bypass功能,则在Watchdog生效后,系统不会Reset,而是将相对应的网口Bypass打开,使设备呈现为Bypass状态。实际这种Bypass,也是通过GPIO来控制Bypass的,只不过这种情况下,向GPIO写入低电平的工作由Watchdog来执行,不需要另外编程来写GPIO。值得注意的是,如果使用了Watchdog Bypass,则Watchdog将不能再实现系统Reset。