以太网交换机的主备切换系统和切换方法与流程

文档序号:12182598阅读:3080来源:国知局
以太网交换机的主备切换系统和切换方法与流程

本发明涉及一种以太网通信技术领域,尤其涉及一种以太网交换机的主备切换系统和切换方法。



背景技术:

随着网络技术的迅速发展,以太网的网络通信得到了广泛应用。网络通信在追求高速的同时,对通信的可靠性和稳定性也有严格的要求。因此,在某些特定的网络中,要求采用冗余备份网口,即实现通过两条链路与网络相连,其中一条用于工作,另一条用于备份。在当前工作链路断开后,能够自动切换到备份链路上进行网络通信。

为了不影响通信质量,对切换时间提出了要求,需要在规定的时间范围内完成切换。从目前技术看,交换机设备一般采用以太网操作维护管理(Operation,Administration&Management,OAM)技术(符合Y1731、802.1ag协议),通过CCM消息报文连续性检测机制来探测当前物理通道是否畅通,CCM消息报文时间间隔为最小为3.3ms,如果接收方在连续三个CCM报文接收时间内无法接收到消息报文,则断定该物理连接链路故障,并发送CCM报文通知发送方,启动并触发端口切换,通过这种机制可以从业务层面确保链路的可靠性。

采用此种技术方案,目前有如下三种选择来实现:

一是采用特殊的千兆网络交换芯片,在芯片内部会有集成的专用中央处理器(CPU)来进行OAM协议的控制,采用特殊的微码即可以实现千兆以太网链路的主备倒换功能。缺点是采用此方案会加大硬件的研发成本费用。

二是采用一个专门外置的用于OAM网络协议控制的CPU,在此CPU上专门 运行OAM协议,此方案与上面的方案基本上是一样的,只不过是相比较而言,硬件研发成本会有稍许的降低,但此方案会增加相应的软件研发成本。

三是采用一片外置的现场可编程门阵列(Field-Programmable Gate Array,FPGA)来进行相应的OAM网络协议控制。同样,此方案也要增加软硬件开发成本。

因此,无论采用现有的哪种方案,采用以太网OAM方式来保障链路的可靠性,都有其相应的缺陷,包括要求网络上的设备都要支持OAM;要在本地交换机和对端交换机进行相应的网络的设置,如设置相关的维护域、维护集等。



技术实现要素:

本发明的目的是提供一种以太网交换机的主备切换系统和切换方法,无需复杂的链路控制协议来保障链路的可靠性,实现起来简单易行,可缩短产品研发成本和时间,同时也不需要更多的硬件支持,从而节省了硬件成本。

为实现上述目的,在第一方面,本发明提供了一种以太网交换机的主备切换系统,包括:

第一链路光信号检测单元,对第一链路的光信号进行检测,并输出第一检测信号;其中,所述第一链路为当前状态下的主链路;

第一链路中断检测单元,对所述第一链路的链路状态进行检测,并输出第二检测信号;

第二链路光信号检测单元,对第二链路的光信号进行检测,并输出第三检测信号;所述第二链路为当前状态下的备链路;

第二链路中断检测单元,对所述第二链路的链路状态进行检测,并输出第四检测信号;

预处理单元,接收所述第一检测信号、第二检测信号、第三检测信号和第四检测信号;在当前状态下,当所述第一检测信号和/或第二检测信号发生状态改变时,所述预处理单元输出中断触发信号;

处理器,接收所述中断触发信号,并根据所述中断触发信号产生链路切换控制信号;

本地交换机,接收所述链路切换控制信号,根据所述链路切换控制信号将所述本地交换机的以太网接入端口由连接第一链路的第一端口切换为连接第二链路的第二端口。

优选的,所述处理器根据预设时间间隔生成状态查询信号,并将所述状态查询信号发送给所述本地交换机;

所述本地交换机根据所述状态查询信号获取所述第一链路的链路状态的状态信息和所述第二链路的链路状态的状态信息,并将所述第一链路的链路状态的状态信息和第二链路的链路状态的状态信息按照所述预设时间间隔依次发送给所述处理器;

所述处理器根据所述第一链路的链路状态的状态信息和第二链路的链路状态的状态信息确定是否进行链路切换;其中,当所述第一链路的链路状态的状态信息发生改变时,所述处理器产生链路切换控制信号。

进一步优选的,当所述第二链路的链路状态的状态信息发生改变时,所述处理器产生故障信号,用以提示所述备链路出现异常。

优选的,在产生链路切换控制信号之后,所述处理器生成地址解析协议ARP报文,并将所述ARP报文通过本地交换机的第二端口连接的第二链路发送给上级交换机;其中,所述ARP报文包括第二端口的媒体访问控制MAC地址信息。

优选的,在产生链路切换控制信号之后,所述处理器在MAC地址表中删除所述第一端口的MAC地址信息,并添加所述第二端口的MAC地址信息。

在第二方面,本发明提供了一种以太网交换机的主备切换方法,包括:

对第一链路的光信号进行检测,输出第一检测信号,并且,对所述第一链路的链路状态进行检测,输出第二检测信号;其中,所述第一链路为当前状态下的主链路;并且

对第二链路的光信号进行检测,输出第三检测信号,并且,对所述第二链路的链路状态进行检测,输出第四检测信号;所述第二链路为当前状态下的备链路;

在当前状态下,当所述第一检测信号和/或第二检测信号发生状态改变时,生成中断触发信号,使得处理器根据所述中断触发信号产生链路切换控制信号,从而将本地交换机的以太网接入端口由连接第一链路的第一端口切换为连接第二链路的第二端口。

优选的,在端口切换前,所述方法还包括:

根据预设时间间隔生成状态查询信号;

根据所述状态查询信号,按照所述预设时间间隔依次获取所述第一链路的链路状态的状态信息和所述第二链路的链路状态的状态信息;

当所述第一链路的链路状态的状态信息发生改变时,所述处理器产生链路切换控制信号。进一步优选的,所述方法还包括:

当所述第二链路的链路状态的状态信息发生改变时,生成故障信号,用以提示所述备链路出现异常。

优选的,在产生链路切换控制信号之后,所述方法还包括:

生成地址解析协议ARP报文,并将所述ARP报文通过本地交换机的第二端口连接的第二链路发送给上级交换机;其中,所述ARP报文包括所述第二端口的媒体访问控制MAC地址信息。

优选的,在产生链路切换控制信号之后,所述方法还包括:

在MAC地址表中删除所述第一端口的MAC地址信息,并添加所述第二端口的MAC地址信息。

本发明实施例提供的以太网交换机的主备切换系统,无需复杂的链路控制协议来保障链路的可靠性,实现起来简单易行,可缩短产品研发成本和时间,同时也不需要更多的硬件支持,从而节省了硬件成本。

附图说明

图1为本发明实施例提供的以太网交换机的主备切换系统的应用场景示意图;

图2为本发明实施例提供的以太网交换机的主备切换系统的结构框图;

图3为本发明实施例提供的以太网交换机的主备切换方法流程图。

具体实施方式

下面通过附图和实施例,对本发明的技术方案做进一步的详细描述。

本发明实施例提供的以太网交换机的主备切换系统,可以应用于专用网络或者小型控制网络中。具体可以如图1所示。

设备1至设备11连接在主备切换系统的下联端口,通过主备切换系统1接入网络。主备切换系统1包括控制模块101和本地交换机102。本地交换机102中的上联端口P12、P16互为主备冗余端口,分别用于连接到交换机2和交换机3。交换机2和交换机3分别连接路由器1和路由器2。这两台路由器可以作为网关设备,为简单起见,两台路由器也是冗余备份,故采用相同的网络MAC和IP。

主备切换系统1通过其中的控制模块101选择将P12端口或P16端口接入网络,作为设备1至设备11接入网络的主链路端口,从而选择通过交换机2和路由器1的链路实现网络连接或者通过交换机3和路由器2的链路实现网络连接。

下面,以图2为例,对本发明的以太网交换机的主备切换系统进行说明。

如图所示,本发明实施例的以太网交换机的主备切换系统包括:第一链路光信号检测单元11、第二链路光信号检测单元12、第一链路中断检测单元21、第二链路中断检测单元22、预处理单元3、处理器4和本地交换机5。

第一链路光信号检测单元11,对第一链路的光信号进行检测,并输出第一检测信号P12_SD;

第一链路中断检测单元21,具体可以由PHY芯片来实现,对第一链路的链路状态进行检测,并输出第二检测信号PHY_INT1;

第二链路光信号检测单元12,对第二链路的光信号进行检测,并输出第三检测信号P16_SD;

第二链路中断检测单元22,具体可以由PHY芯片来实现,对第二链路的链路状态进行检测,并输出第四检测信号PHY_INT2;

预处理单元3,接收所述第一检测信号P12_SD、第二检测信号PHY_INT1、第三检测信号P16_SD和第四检测信号PHY_INT2;

假设在当前状态下第一链路为主链路,第二链路为备链路,则预处理单元3对第一检测信号P12_SD和第三检测信号PHY_INT1的信号状态进行检测,当第一检测信号P12_SD和/或第三检测信号PHY_INT1发生状态改变时,预处理单元3输出中断触发信号;

假设在当前状态下第二链路为主链路,第一链路为备链路,则预处理单元3对第三检测信号P16_SD和第四检测信号PHY_INT2的信号状态进行检测,当第二检测信号P16_SD和/或第四检测信号PHY_INT2发生状态改变时,预处理单元3输出有效的中断触发信号;

其中,第一链路光信号检测单元11、第二链路光信号检测单元12可以采用信号检测SFP光模块来实现,第一链路中断检测单元21、第二链路中断检测单元22可以采用检测以太网PHY芯片来实现,预处理单元3可以采用复杂可编程逻辑器件CPLD来实现。

处理器4,接收中断触发信号INT1,当检测到中断触发信号INT1为有效时,产生链路切换控制信号ctl1;

本地交换机5,接收链路切换控制信号ctl1,根据链路切换控制信号ctl1将本地交换机的以太网接入端口由连接第一链路的第一端口P12切换为连接第二链路的第二端口P16。

为实现主备切换,在处理器4产生链路切换控制信号ctl1之后,会生成 地址解析协议(ARP)报文,并将所述ARP报文通过本地交换机5的第二端口P16连接的第二链路发送给上级交换机;其中,ARP报文包括第二端口P16的媒体访问控制(MAC)地址等信息。由此,结合图1所示,在图1所示的网络中,通过ARP报文,将第二端口P16的MAC地址的信息发送到上级交换机,即图1中的交换机2和交换机3,使得交换机2和交换机3能够快速学习到新端口的MAC地址,从而缩短MAC地址学习时间。

此外,处理器4还会在存储的MAC地址表中删除第一端口P12的MAC地址信息,并且在MAC地址表中添加第二端口P16的MAC地址信息。

如上述所述,本发明的以太网交换机的主备切换系统具有链路光信号检查保障机制和PHY芯片物理链路up/down检测保障机制。

链路光信号检查保障机制,通过探测当前接入端口(active端口)的SFP光模块产生的信号的电平变化来确定有无光信号,例如在SFP光模块接收到光信号时输出高电平的检测信号,在没有接收到光信号时输出低电平的检测信号。因此在没有光信号的时候,可以通过CPLD接收到的低电平的检测信号确定链路中断,从而上报处理器4。链路光信号检查保障机制的优点在于,这种方法效率最高,能最快探测到active端口光纤断开异常,缺点是在远端光模块工作异常,但仍然处于光路连通的情况下无法采用此种方法检测链路中断。

PHY芯片物理链路up/down检测保障机制,则是通过PHY芯片检测链路的传输码流,在码流传输中断的情况下,PHY芯片的检测信号发生电平转换,如由高电平变为低电平,从而从物理层上避免了光信号恒定时无法对码流中断进行上报的缺点。

因此,通过链路光信号检查保障机制和PHY芯片物理链路up/down检测保障机制能够有效的对物理链路down掉(包括光信号丢失和码流丢失)的情况进行检测,通过上报处理器4而实现控制主备端口的切换,从而实现从工作链路到备份链路上进行网络通信的切换。

以上两种保障机制都是在链路发生异常时通过主备切换系统接收到异常时才会执行切换的被动保障机制。除此之外,本发明实施例提供的以太网交换机的主备切换系统还提供了一种主动查询链路状态的轮询检测保障机制,为主备切换系统的检测有效性提供了双重保障。

如图2所示,本实施例的以太网交换机的主备切换系统中,处理器4根据预设的时间检测生成状态查询信号,并将状态查询信号发送给本地交换机5。

具体的,处理器4根据预设时间间隔生成状态查询信号,并将状态查询信号发送给所述本地交换机下的物理层设备进行链路的查询。如图所示,具体的查询信号路径为处理器4通过控制端口发送查询信号到本地交换机5的控制端口后,本地交换机5通过SMI_PHY接口对物理层设备(图中的PHY芯片21和PHY芯片22)的相应状态寄存器进行查询,并通过相同的路径将查询到的信息进行反馈。

处理器4按照预设时间间隔依次获取第一链路中断检测单元21检测到的第一链路的链路状态的状态信息和第二链路中断检测单元22检测到的第二链路的链路状态的状态信息;

在第一链路为工作链路,第二链路为备链路的情况下:

当轮询检测到第一链路的链路状态发生改变时,说明工作链路发生异常,此时处理器4产生链路切换控制信号ctl1,控制切换本地交换机5的接入端口由连接第一链路的第一端口P12切换为连接第二链路的第二端口P16。

此外,通过轮询检测也会监控备用链路的状态。当轮询检测到第二链路的链路状态发生改变时,说明备链路发生了故障,此时处理器4会产生故障信号,用以提示相关工作人员备链路出现异常,以便工作人员对备链路进行及时的检查和维修,使得在需要进行主备链路切换的时候不会影响正常的通信传输。

轮询周期可以根据处理器4的性能进行设定,优选可以采用5ms至10ms 的轮询周期。

通常情况下,链路光信号检查保障机制和PHY芯片物理链路up/down检测保障机制的触发都会早于轮询检测保障机制。即在发生异常的时候,会先被链路光信号检查保障机制和PHY芯片物理链路up/down检测保障机制检测出。但是加入轮询检测保障机制,可以为本发明的主备切换系统提供双重保障。

本发明实施例提供的以太网交换机的主备切换系统,无需复杂的链路控制协议来保障链路的可靠性,实现起来简单易行,也不需要更多的硬件支持,极大的节省了成本。

相应的,本发明实施例还提供了一种以太网交换机的主备切换方法,执行在上述实施例的主备切换系统中。

如图3所示,该方法包括如下步骤:

步骤310,主备切换系统初始化;

具体的,在系统上电启动后,首先通过处理器中配置命令行进行主用接口的配置。结合图2所示,如果2个端口P12、P16都有光纤插入,即2个端口都为链路up状态的情况下,会根据配置来决定哪个端口为主用端口,同时根据配置信息将备用以太网接口Link down掉,通过配置命令行将接口下发的配置数据都保存在查询配置模块中。在本例中,首先设置P12端口接入的第一链路为工作链路,即P12端口为主用端口。

随后,进行中断处理函数的挂接初始化,主要用于产生光信号检测的中断和PHY Link UP/DOWN的中断。之后启动定时轮询主备链路状态,设置轮询时间间隔。

步骤320,对第一链路的光信号进行检测,输出第一检测信号,并且,对所述第一链路的链路状态进行检测,输出第二检测信号;对第二链路的光信号进行检测,输出第三检测信号,并且,对所述第二链路的链路状态进行检测,输出第四检测信号;

具体的,对光信号的检测是通过探测与当前接入端口连接的SFP光模块产生的信号的电平变化来确定有无光信号,例如在SFP光模块接收到光信号时输出高电平的检测信号,在没有接收到光信号时输出低电平的检测信号。因此如果发生光路传输异常,SFP光模块的信号输出就会由高电平转为低电平。

对链路状态的检测时通过PHY芯片检测链路的传输码流,在码流传输中断的情况下,PHY芯片的检测信号发生电平转换,如由高电平变为低电平。

步骤330,根据预设时间间隔生成状态查询信号,根据所述状态查询信号,按照所述预设时间间隔依次获取所述第一链路的链路状态的状态信息和所述第二链路的链路状态的状态信息。

具体的,当轮询检测到第一链路的链路状态发生改变时,说明工作链路发生异常。

上述步骤320和步骤330可以是同步执行的。

步骤340,当第一检测信号和/或第二检测信号发生状态改变时,或者当检测到第一链路的链路状态的状态信息发生改变时,产生链路切换控制信号,从而将本地交换机的以太网接入端口由连接第一链路的第一端口切换为连接第二链路的第二端口。

具体的,在第一检测信号或者第二检测信号任一个或两个都发生改变时,如由高电平变为低电平时,说明当前工作链路的光信号或码流传输出现了异常;当轮询检测到第一链路的链路状态发生改变时,也说明工作链路发生异常;上述任一情况发生时处理器都会产生链路切换控制信号,控制切换主备链路的接入。

步骤350,生成地址解析协议ARP报文,并将ARP报文通过本地交换机的第二端口连接的第二链路发送给上级交换机。

具体的,所述ARP报文包括所述第二端口的媒体访问控制MAC地址信息。由此使得上级交换机能够快速学习到新端口的MAC地址,从而缩短MAC地址 学习时间。

此外,还需要在MAC地址表中删除所述第一端口的MAC地址信息,并添加所述第二端口的MAC地址信息。

为了保证不影响通信质量,主备链路切换过程,需要在规定的时间范围内完成。

下面以一个具体的例子,对切换时间进行说明。

假设系统内与本地交换机相连的设备的MAC地址数量不超过20个,按照每1ms向上级交换机传一个MAC地址计算,共需20ms将主备倒换激活端口的MAC地址表通知到上级交换机。端口物理切换时间不超过10ms。

MAC地址表动态配置时,可通过一条指令删除老化端口的MAC地址表。动态配置优点是MAC地址靠交换机自动学习获取的,缺点是如果某主机或主机板为特殊装置,只接收报文,则交换机无法获取其MAC地址,也就无法与该装置通信。

静态配置则需要逐条删除MAC地址表项。静态配置是指交换机初始化以后通过命令,手动将系统内各主机板和主机MAC地址添加到MAC地址表项中,这样就可以解决特殊主机板卡与交换机之间的通信问题,缺点是主机板和主机的MAC地址必须固定,不支持系统内各主机板卡动态添加或更改MAC地址,且端口切换老化地址表项需要逐条删除,需要时间比较长。交换机P12和P16端口必须记录网关的MAC地址表且必须为静态配置,一般网关地址表为一条或两条。因此一共有2条地址表项需要删除和添加。

按照静态配置时删除和添加2条地址表项需要大概12ms时间,再加上以上分析的其他时间消耗,总切换时间为42ms。以上仅为一个实际例子的举例分析,并不用于限定本发明的以太网交换机的主备切换方法在实际应用中的切换时间。

本发明实施例提供的以太网交换机的主备切换方法,无需复杂的链路控制协议来保障链路的可靠性,实现起来简单易行,可缩短产品研发成本和时 间,同时也不需要更多的硬件支持,从而节省了硬件成本。

专业人员应该还可以进一步意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、计算机软件或者二者的结合来实现,为了清楚地说明硬件和软件的可互换性,在上述说明中已经按照功能一般性地描述了各示例的组成及步骤。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本发明的范围。

结合本文中所公开的实施例描述的方法或算法的步骤可以用硬件、处理器执行的软件模块,或者二者的结合来实施。软件模块可以置于随机存储器(RAM)、内存、只读存储器(ROM)、电可编程ROM、电可擦除可编程ROM、寄存器、硬盘、可移动磁盘、CD-ROM、或技术领域内所公知的任意其它形式的存储介质中。

以上所述的具体实施方式,对本发明的目的、技术方案和有益效果进行了进一步详细说明,所应理解的是,以上所述仅为本发明的具体实施方式而已,并不用于限定本发明的保护范围,凡在本发明的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。

当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1