一种以太网环网算法切换方法
技术领域
本发明涉及通信技术领域,尤其涉及一种以太网环网算法切换方法。
背景技术
传统以太网只支持星形连接方式,而并不支持环网连接方式。当以太网采用环网方式连接时,由于广播风暴的出现,整个以太网将处于阻塞状态而无法正常工作。然而许多时候采用具有冗余能力的以太网环网方式工作将大大减少***成本并增加***可靠性,于是环网算法应用而生。
环网算法是采用一定的技术手段实时感知以太网环路状态,当监测到***成环时主动断开环路中的一条备份链路,迫使环网进入链型状态。当监测到***出现断环时则主动打开备份链路恢复环网连接。由于***始终处在链形状态下,从而保证了以太网通道的正常工作。同时由于环网算法能够在***出现一处线路或设备故障时快速切换备份链路,因此具有较高的***可靠性。
传统的环网算法,例如STP、RSTP、RPR等,环网切换时间普遍高于50毫秒(30台设备组网时),无法满足对环路切换时间要求较高的应用场合。因此许多厂家争相推出自己的环网算法。现有的,环网算法能够达到的环网切换时间在250台以太网交换机设备组网时大概为20ms,具体切换方法包括以下步骤:
步骤S1:***默认具有最大或最小MAC地址的交换机设备为主设备。***上电时,所有设备相互比较自身MAC地址,具有最大或最小MAC地址的交换机设备最终被确认为主设备;
步骤S2:***成环时主设备根据环网算法决定其中一条链路为备份链路,并阻塞该条链路,达到解环目的,如图1所示。
步骤S3:当环网其中一条链路因故障而断开时,处于断开处的两台交换设备分别向主设备传递链路故障信息,如图2所示。
步骤S4:主设备接到链路故障信息后立即向全网发送链路切换信息,并切换备份链路,恢复环路通信,如图3所示。
步骤S5:当故障链路恢复后,该故障链路两边的两台交换设备首先阻塞该链路并分别向主设备传递链路恢复信息,如图4所示。
步骤S6:主设备接到链路恢复信息后立即向全网发送链路切换信息,并阻塞备份链路,如图5所示。
步骤S7:故障链路两边的两台交换设备收到切换信息后恢复故障链路为通信状态,如图6所示。
从上述切换方法可以看出最坏情况下,当链路故障点距离主设备最远端时,
T34=a+b+c+d
其中T34为完成步骤S3-S4,即环路断开需要的总时间;
a为从检测出链路故障到交换机发出链路故障信息所需时间;
b为链路故障信息从交换机传到主设备的传输时间;
c为链路切换信息从主设备传到最远端交换机的传输时间;
d为备份链路启用所需时间;
T57=A+B+C+D
其中T57为完成步骤S5-S7,即环路恢复需要的总时间;
A为从故障链路恢复到交换机发出链路恢复信息所需时间;
B为链路恢复信息从交换机传到主设备的传输时间;
C为链路切换信息从主设备传到最远端交换机的传输时间;
D为已恢复的故障链路被启用所需时间;
从公式不难看出a、d、A、D主要取决于交换机对链路状态的检测、控制和信息处理速度。由于对链路的故障状态的检测以及链路的启用还是禁用与具体的交换机硬件和处理器速度息息相关,而且当硬件确定以后,基本很难提高执行速度,因此该部分时间基本不受算法影响。
而b、c、B、C为信息传播时间,该时间与设备总数、传输距离、数据包形式等密切相关。在相同设备数量情况下,如果能够有效减少传输距离或利用更为快速的数据包进行信息传递将大大加快算法切换时间。
发明内容
本发明要解决的技术问题是提供一种以太网环网算法切换方法。
为解决上述技术问题,本发明的目的是通过以下技术方案实现的。
一种以太网环网算法切换方法,包括以下步骤:
步骤a:***设置最后环路端口发生变化的设备为主设备;
步骤b:***成环时主设备将自身最后发生变化的端口所对应的链路作为备份链路,并阻塞该条链路;
步骤c:当环网其中一条链路因故障而断开时,处于断开处的两台交换设备立即向全网发送链路切换信息,主设备收到任意一条链路切换信息,立刻切换备份链路,恢复环路通信;
步骤d:将处于断开处的两台交换设备中的一台升级为主设备,升级该故障链路为备份链路,且被禁用;
步骤e:主设备将解除备份链路的禁用控制,将该链路置为阻塞状态。
其中,步骤a还包括:如果多台设备同时为最后环路端口发生变化,则具有最大或最小MAC地址的交换机设备为主设备。
其中,步骤a具体为:***上电时,所有设备相互比较端口变化时间,其中端口变化时间通过一组定时器计数器为参考,当环路端口发生变化时计数器被初始化并开始计数,如果环路不再发生变化,计数器逐渐累加或递减计数数值;最终最后环路端口发生变化的设备设为主设备。
其中,步骤b中,若两个环路端口同时变化,则自由选择其中一个端口所对应的链路作为备份链路。
其中,步骤d中,处于断开处的两台交换设备中MAC地址最大或最小的交换设备升级为主设备。
以上技术方案可以看出,本发明具有以下有益效果:
本发明通过采用一种新的环网主设备和备用链路确认机制,通过动态的切换主设备和备用链路达到快速环网解环切换的目的。本发明在环路断开时至少比现有算法缩小一半的环路信息传输时间,随着环路设备和传输距离的增加,效果将十分明显;另外当环路恢复时由于本发明环路恢复时间为0,因此具有无可比拟的环路恢复时间。
附图说明
图1-图6为现有的以太网环网算法切换方法原理图;
图7-图11为本发明以太网环网算法切换方法原理图。
具体实施方式
本发明的核心思想:本发明采用一种新的环网主设备和备用链路确认机制,通过动态的切换主设备和备用链路达到快速环网解环切换的目的。
为便于对本发明进一步理解,现结合附图及具体实施例对本发明进行详细描述。
本发明以太网环网算法切换方法包括以下步骤:
步骤1:***默认最后环路端口发生变化(断开或者连上)的设备为主设备,如果多台设备同时为最后发生变化则具有最大或最小MAC地址的交换机设备为主设备。***上电时所有设备相互比较端口变化时间和自身MAC地址,其中端口变化时间可以使用一组定时器计数器为参考,当环路端口发生变化时计数器被初始化并开始计数,如果环路不再发生变化,计数器逐渐累加或递减计数数值。最终最后环路端口发生变化(断开或者连上)的设备将变为主设备,如果多台设备同时为最后发生变化则具有最大或最小MAC地址的交换机设备将为主设备;
步骤2:***成环时主设备将自身最后发生变化的端口所对应的链路作为备份链路,如果两个环路端口同时变化,则自由选择其中一个端口所对应的链路作为备份链路,并阻塞该条链路,达到解环目的,如图7所示。
步骤3:当环网其中一条链路因故障而断开时,处于断开处的两台交换设备立即向全网发送链路切换信息,原主设备收到任意一条链路切换信息,立刻切换备份链路,恢复环路通信,如图8、9所示。
步骤4:此时环路已经切换完成,随后由于处于断开处的两台交换设备最后发生变化所以原主设备将放弃主设备地位,而两台交换机中MAC地址最大或最小的交换机设备将升级为主设备。另外对于新的主设备而言,由于刚才出现故障的链路最后发生变化,所有该故障链路升级为备份链路,且被禁用。这些过程虽然在环路切换完成之后才完成,但并不影响环路通信,如图10所示。
步骤5:当故障链路恢复后,由于该链路已经升级为备份链路,所有不需要切换链路。主设备将解除备份链路的禁用控制,将该链路置为阻塞状态。等待下次环路切换,如图11所示。
从上述切换方法可以看出最坏情况下,当链路故障点距离主设备最远端时:
t34=a+b+d
其中t34为完成步骤3-4,即环路断开需要的总时间;
a为从检测出链路故障到交换机发出链路切换信息所需时间;
b为链路切换信息从交换机传到主设备的传输时间;
d为备份链路启用所需时间;
t5=0
其中t5为完成步骤5,即环路恢复需要的总时间;
综上所述,本算法在环路断开时至少比现有算法缩小一半的环路信息传输时间,随着环路设备和传输距离的增加,效果将十分明显。另外当环路恢复时由于本算法环路恢复时间为0因此具有无法比拟的环路恢复时间。
以上对本发明所提供的一种以太网环网算法切换方法进行了详细介绍,本文中应用了具体个例对本发明的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本发明的方法及其核心思想;同时,对于本领域的一般技术人员,依据本发明的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本发明的限制。