CN101771570B - 一种状态切换方法及装置 - Google Patents
一种状态切换方法及装置 Download PDFInfo
- Publication number
- CN101771570B CN101771570B CN2010101067316A CN201010106731A CN101771570B CN 101771570 B CN101771570 B CN 101771570B CN 2010101067316 A CN2010101067316 A CN 2010101067316A CN 201010106731 A CN201010106731 A CN 201010106731A CN 101771570 B CN101771570 B CN 101771570B
- Authority
- CN
- China
- Prior art keywords
- port
- backup
- designated
- stp
- network equipment
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Images
Landscapes
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本发明公开了一种状态切换方法,包括:网络设备监控各个端口的信息,所述端口的信息为指定端口或者Backup端口;所述网络设备将所述指定端口和所述Backup端口进行关联;当所述指定端口失效后,所述网络设备将与所述指定端口关联的所述Backup端口从阻塞状态切换为转发状态。本发明中,减少了状态切换所造成的断流时间。
Description
技术领域
本发明涉及通信技术领域,特别是涉及一种状态切换方法及装置。
背景技术
在二层交换网络中,一旦存在环路就会造成报文在环路内不断循环和增生,产生广播风暴,从而占用所有的有效带宽,使网络变得不可用。在这种环境下,STP(Spanning Tree Protocol,生成树协议)协议应运而生。其中,STP是一种二层管理协议,该STP能够通过有选择性地阻塞网络冗余链路来达到消除网络二层环路的目的,并同时具备链路的备份功能。
具体的,如果网络能够像一棵树一样生长就不会出现环路,因此,STP协议中定义了根桥(Root Bridge)、根端口(Root Port)、指定端口(DesignatedPort)、路径开销(Path Cost)等概念,目的在于通过构造一棵树的方法来达到裁剪冗余环路的目的,并实现链路备份和路径最优化。其中,用于构造这棵树的算法称为SPA(Spanning Tree Algorithm,生成树算法)。
如果要实现STP的功能,网桥之间需要进行一些信息的交互,而这些信息交互单元被称为配置消息BPDU(Bridge Protocol Data Unit,网桥协议数据单元)。其中,BPDU是一种二层报文,目的MAC(Media Access Control,媒体访问控制)是多播地址01-80-C2-00-00-00,所有支持STP协议的网桥都会接收并处理接收到的BPDU报文,而BPDU报文的数据区中携带了用于生成树计算的所有有用信息。
具体的,STP的工作过程包括:(1)进行根桥的选举。其中,选举的依据是网桥优先级和网桥MAC地址组合成的桥ID(标识),桥ID最小的网桥将成为网络中的根桥,而由于根桥的所有端口都连接到下游网桥,所以根桥的端口角色都成为指定端口。(2)连接根桥的下游网桥将各自选择一条“最粗壮”的树枝作为到根桥的路径,相应端口的角色成为根端口。循环上述过程到网络边缘,当指定端口和根端口确定之后,一棵树就生成了。
此外,生成树在经过一段时间(默认值是30秒左右)稳定之后,指定端口和根端口将进入转发状态,而其他端口将进入阻塞状态。BPDU会定时的从各个网桥的指定端口发出,以维护链路的状态。而如果网络拓扑发生变化时,生成树会重新计算,相应的端口状态也会随之改变。
与众多协议的发展过程一样,STP协议也随着网络的发展而不断更新,从最初的STP到RSTP(Rapid Spanning Tree Protocol,快速生成树协议),再到最新的MSTP(Multiple Spanning Tree Protocol,多生成树协议)。其中,在STP网络中,当检测到环路时会将某个端口进行阻塞,而到了RSTP网络和MSTP网络中,这个阻塞端口的角色又细分为两种角色:
(1)Alternate端口(替换端口),即根端口的备份端口。其中,当根端口或Master(主)端口被阻塞后,Alternate端口将成为新的根端口或Master端口。而在根端口或者Master端口失效的情况下,Alternate端口会快速转换为新的根端口并无时延地进入到转发状态。
(2)Backup端口(备份端口),即指定端口的备份端口。其中,当指定端口被阻塞(即指定端口失效)后,Backup端口会快速转换为新的指定端口,并无时延的转发数据。具体的,如果使能了MSTP协议的同一台设备的两个端口互相连接时就存在一个环路,设备会将其中的一个端口阻塞,而Backup端口是被阻塞的那个端口。
现有技术中,由于Backup端口为被阻塞的端口,当设备上的端口收到本设备发送的BPDU报文而处于阻塞状态时,则该端口的角色为Backup端口;而如果端口收到本设备发送的BPDU报文处于Forwarding(转发)状态时,则该端口的角色为指定端口,其中,该指定端口为Backup端口的对应指定端口。
当指定端口的直连链路出现故障时,需要将Backup端口切换为新的指定端口,并无时延的转发数据。而根据目前的生成树协议的处理流程,如果Backup端口在3*Hello Time(例如,3*2=6秒)之后,均没有接收到指定端口发送的BPDU报文(即指定端口的直连链路出现故障),则Backup端口状态将进入切换流程,如图1所示的端口状态切换的流程图。该Backup端口从阻塞状态切换为指定端口的转发状态的过程包括:Discarding(状态转向)、Listening(监听)、Learning(学习)、Forwarding(转发)等。
然而,当一个Backup端口在对应的指定端口失效后,需要通过Backup端口的自动老化机制去让该Backup端口状态发生切换。而作为备份链路的Backup端口从阻塞状态切换为指定端口的转发状态将导致产生的断流时间一般在36s左右(Discarding过程开销时间为6s,Listening过程开销时间为15s,Learning过程开销时间为15s),而在该时间内无法转发数据。
发明内容
本发明提供一种状态切换方法及装置,以快速的将Backup端口的状态切换为指定端口,保证流量的不间断转发。
为了达到上述目的,本发明提出了一种状态切换方法,包括以下步骤:
网络设备监控STP端口的信息,所述STP端口的信息具体为指定端口或者Backup端口;
当所述网络设备根据监控结果获知有Backup端口出现时,所述网络设备将所述Backup端口和对应的指定端口进行关联;
当所述指定端口失效后,所述网络设备将与所述指定端口关联的Backup端口从阻塞状态切换为转发状态。
所述网络设备监控STP端口的信息,具体包括:
所述网络设备监控所述STP端口所接收到的网桥协议数据单元BPDU报文;其中,所述BPDU报文中携带了发送端口的PID值;
所述网络设备根据监控结果获知有Backup端口出现,具体为:
在所述网络设备监控所述STP端口所接收到的BPDU报文时,如果所述BPDU报文为所述网络设备的其他STP端口向外发送的BPDU报文时,则需要在所述STP端口和所述其他STP端口中选取指定端口和Backup端口,所述网络设备进一步获知所述STP端口和所述其他STP端口中有Backup端口出现。
所述网络设备将所述Backup端口和对应的指定端口进行关联,具体包括:
所述网络设备根据所述BPDU报文中的PID值将所述Backup端口和对应的指定端口进行关联。
所述网络设备根据所述BPDU报文中的PID值将所述Backup端口和对应的指定端口进行关联,具体包括:
所述网络设备在所述指定端口维护Backup端口的索引链表,并根据所述索引链表关联所述指定端口和所述Backup端口,其中,所述索引链表中包含了所述Backup端口的PID索引;
所述网络设备在所述Backup端口维护指定端口的PID值,并根据所述指定端口的PID值关联所述指定端口和所述Backup端口。
所述网络设备将与所述指定端口关联的Backup端口从阻塞状态切换为转发状态,具体包括:
所述网络设备获取与所述指定端口关联的Backup端口的PID值,并将PID值最小的Backup端口从阻塞状态切换为转发状态。
一种状态切换装置,包括:
监控模块,用于监控STP端口的信息,所述STP端口的信息具体为指定端口或者Backup端口;
关联模块,与所述监控模块连接,用于当根据监控结果获知有Backup端口出现时,将所述Backup端口和对应的指定端口进行关联;
处理模块,与所述关联模块和所述监控模块连接,用于当所述指定端口失效后,将与所述指定端口关联的Backup端口从阻塞状态切换为转发状态。
所述监控模块具体用于,监控所述STP端口所接收到的网桥协议数据单元BPDU报文;其中,所述BPDU报文中携带了发送端口的PID值;
并在监控到所述BPDU报文为所述网络设备的其他STP端口向外发送的BPDU报文时,在所述STP端口和所述其他STP端口中选取指定端口和Backup端口,进一步获知所述STP端口和所述其他STP端口中有Backup端口出现。
所述关联模块具体用于,根据所述BPDU报文中的PID值将所述Backup端口和对应的指定端口进行关联。
所述关联模块进一步用于,在所述指定端口维护Backup端口的索引链表,并根据所述索引链表关联所述指定端口和所述Backup端口,其中,所述索引链表中包含了所述Backup端口的PID索引;
在所述Backup端口维护指定端口的PID值,并根据所述指定端口的PID值关联所述指定端口和所述Backup端口。
所述处理模块具体用于,获取与所述指定端口关联的Backup端口的PID值;并将PID值最小的Backup端口从阻塞状态切换为转发状态。
与现有技术相比,本发明具有以下优点:通过将指定端口和Backup端口进行关联,当指定端口失效后,能够将Backup端口立即从阻塞状态切换为转发状态,从而减少了状态切换所造成的断流时间。
附图说明
图1为现有技术中端口状态切换的流程图示意图;
图2为本发明提出的一种状态切换方法流程图;
图3为本发明应用场景下提出的一种状态切换方法流程图;
图4A和图4B为本发明应用场景下索引链表的示意图;
图5为本发明提出的一种状态切换装置结构图。
具体实施方式
本发明中,通过将Backup端口和对应的指定端口进行关联,当指定端口失效后(例如,指定端口产生链路故障,或者,指定端口去使能STP协议,或者,指定端口down等),通知与该指定端口关联的Backup端口从阻塞状态切换为转发状态,从而减少了状态切换所造成的断流时间。
本发明提出的一种状态切换方法,如图2所示,所述方法包括以下步骤:
步骤201,网络设备监控STP端口的信息,所述STP端口的信息具体为指定端口或者Backup端口。
步骤202,当所述网络设备根据监控结果获知有Backup端口出现时,所述网络设备将所述Backup端口和对应的指定端口进行关联。可以理解的是,当网络设备根据监控结果获知端口中有Backup端口出现时,则此时一定会有相应的指定端口出现,即所述网络设备能够将所述Backup端口和指定端口进行关联。
步骤203,当所述指定端口失效后,所述网络设备将与所述指定端口关联的Backup端口从阻塞状态切换为转发状态。
为了更加清楚的说明本发明提供的技术方案,以下结合一种具体的应用场景对本发明提出的状态切换方法进行详细说明,如图3所示,该方法包括以下步骤:
步骤301,网络设备监控各个STP端口的信息,其中,该网络设备可以为网络中的二层设备。另外,在网络设备中,将包含使能了各种功能的端口,而本发明中所针对的端口,为使能了STP(或者RSTP、MSTP等)功能的端口,即可以称为STP端口,本发明中均直接以端口为例进行说明,即本发明中的所有端口均为STP端口。
实际应用中,各个网络设备之间将通过发送学习BPDU报文实现拓扑收敛,在该BPDU报文中携带的字段如表1所示。
表1
域 | 字节 | 说明 |
根桥BID | 8 | 当前根桥的BID |
根路径开销 | 4 | 本端口累计到根桥的开销 |
发送者BID | 8 | 本交换机的BID |
发送端口PID | 2 | 发送该BPDU的端口ID |
具体的,网络设备中的端口(例如,端口1)会向外发送BPDU报文(即向其他网络设备发送BPDU报文),如果该网络设备中的其他端口(例如,端口2)能够接收到该BPDU报文,则说明在该端口1和端口2之间出现了环路,而为了避免环路的产生,网络设备需要将端口1和端口2划分为一个指定端口和Backup端口。
可以看出,在网络设备中,端口的信息具体为指定端口或者Backup端口,而指定端口的状态为转发状态,用于对数据进行转发处理;而Backup端口的状态为阻塞状态,无法对数据进行转发处理,即通过对Backup端口进行阻塞,从而达到了避免环路产生的目的。例如,网络设备1中的端口1向外发送BPDU报文时,如果网络设备1中的端口2接收到该端口1向外发送的BPDU报文,则说明端口1和端口2之间形成环路,此时,需要将端口1和端口2中的一个端口设置为指定端口,并将另外一个端口设置为Backup端口,从而避免环路的产生。
进一步的,可以通过发送端口的PID值来最终确定指定端口和Backup端口,在表1中,在其它几个优先级(例如,根桥BID等)相同的情况下,发送端口的PID用于在生成树拓扑建立过程中决定哪个端口作为指定端口进行正常转发(即PID值较小的端口),哪个端口作为Backup端口被阻塞(即PID值较大的端口),其中,一般情况下,PID值最小的端口为指定端口,而其他端口为Backup端口。
具体的,根据实际的需要,网络设备中的端口会向外发送BPDU报文,而该BPDU报文中将携带该发送端口的PID值;进一步的,网络设备能够监控到端口所接收到的BPDU报文,如果该端口接收到的BPDU报文为该网络设备的其他端口所向外发送的BPDU报文时,则网络设备能够获知有Backup端口出现;即PID值最小的端口为指定端口,而其他STP端口为Backup端口。
例如,端口1(PID值为1)接收到端口2(PID值为2)向外发送的BPDU报文,以及端口3(PID值为3)向外发送的BPDU报文,同理,端口2也接收到端口1向外发送的BPDU报文以及端口3向外发送的BPDU报文,端口3也接收到端口1向外发送的BPDU报文以及端口2向外发送的BPDU报文;当网络设备监控到上述信息时,对于端口1来说,通过接收到的端口2向外发送的BPDU报文和端口3向外发送的BPDU,端口1获知端口2的PID值为2,端口3的PID值为3,则该端口1可以知道自身的PID值最小,即需要将端口1设置为指定端口,能够进行正常转发;同样的,端口2和端口3可以知道自身的PID值不是最小,即需要将端口2和端口3设置为Backup端口,端口状态为阻塞状态,无法对数据进行转发处理。
需要说明的是,在网络设备中,并不是所有的指定端口和Backup端口都是对应的。例如,网络设备中有5个端口,分别为端口1、端口2、端口3、端口4和端口5,如果端口1向外发送的BPDU报文能够被端口2和端口3接收,则端口2向外发送的BPDU报文也能够被端口1和端口3接收,端口3向外发送的BPDU报文也能够被端口1和端口2接收,则端口1、端口2和端口3之间将形成环路,即需要在端口1、端口2和端口3之间划分指定端口和Backup端口,即根据端口1、端口2和端口3所发送的BPDU报文中的PID值确定指定端口和Backup端口,其中,端口1、端口2和端口3中有一个指定端口和两个Backup端口。
另外,如果端口4向外发送的BPDU报文能够被端口5接收,则端口5向外发送的BPDU报文也能够被端口4接收,则端口4和端口5之间将形成环路,即需要在端口4和端口5之间划分指定端口和Backup端口,其中,端口4和端口5中有一个指定端口和一个Backup端口。
假如端口1和端口4为指定端口,端口2、端口3和端口5为Backup端口,需要注意的是,只有能够形成环路的各个端口之间才是对应的指定端口和Backup端口,例如,上述的端口1和端口5并不是对应的指定端口和Backup端口,端口4和端口2也并不是对应的指定端口和Backup端口,只有端口1和端口2、端口3是对应的指定端口和Backup端口,端口4和端口5为对应的指定端口和Backup端口。
步骤302,网络设备根据端口的PID值将指定端口和对应的Backup端口进行关联。其中,由于每个网络设备的每个端口的PID值是唯一的,因此网络设备能够根据端口的PID值将指定端口和对应的Backup端口进行关联。例如,通过将PID值为1与PID值为2、PID值为3分别进行关联,则说明指定端口1将分别于Backup端口2和Backup端口3进行关联。
需要说明的是,根据PID值将指定端口和Backup端口进行关联的方式可以根据实际的需要任意选择,本发明中以下面的优选方式为例进行说明。
网络设备在端口中维护Backup端口的索引链表和指定端口的PID值;其中,索引链表中包含了Backup端口的PID索引和下一个Backup链表信息,指定端口的PID值记为ulDestinatePID。实际应用中,当端口的状态为指定端口时,则使索引链表生效,而当端口的状态为Backup端口时,则使指定端口的PID值生效,即需要在指定端口中维护Backup端口的索引链表,并在Backup端口中记录ulDestinatePID。
具体的,索引链表可以添加到端口的数据结构中,索引链表的数据结构可以如下定义:
tag_BackupPort_Date
{
ulong ulBackupPID; \\Backup端口PID索引
tag_BackupPort_Date*BackupPort_DateNext\\下一个Backup链表信息
}
实际应用中,在Backup端口中记录ulDestinatePID,例如,在Backup端口2和Backup端口3中均记录了ulDestinatePID为1的信息,则Backup端口2和Backup端口3能够知道PID值为1的端口(端口1)为指定端口。
在指定端口中维护了Backup端口的索引链表,根据各个Backup端口的PID值,为每个Backup端口建立PID索引,并指向下一个Backup链表信息。例如,为Backup端口2建立PID索引2,指向Backup端口3对应的Backup链表信息;并为Backup端口3建立PID索引3,指向下一个Backup端口对应的Backup链表信息(此时为空)。
以下结合图4A和图4B所示的索引链表对链表节点的添加过程进行进一步说明。
端口A为指定端口,索引链表为tag_BackupPort_Date_A,端口B和端口C为Backup端口,当端口B根据来自其他端口的BPDU报文获知端口A为指定端口时,将ulDestinatePID添加为A_PID,同样的,端口C将ulDestinatePID添加为A_PID。
当端口A从来自端口C的BPDU报文中获知端口C为自身的Backup端口,可以查找到对应的索引链表为tag_BackupPort_Date_A,则需要在tag_BackupPort_Date_A中将ulBackupPID添加为C_pID,并将BackupPort_DateNext指向下一个Backup端口(此时为空NULL);如果又从来自端口B的BPDU报文中获知端口B为自身的Backup端口,查找到对应的索引链表为tag_backupPort_Date_A,需要在tag_BackupPort_Date_A中将ulBackupPID添加为B_PID,以按照升序排列(即PID值小的Backup端口信息插在前面)添加各个Backup端口的信息为例,由于端口B的PID值小,则端口B需要放在端口C之前,即需要将端口B的BackupPort_DateNext指向端口C。
可以理解的是,网络设备根据端口的PID值将指定端口和Backup端口进行关联,是在网络设备监控到端口接收到自身其他端口向外发送的BPDU报文时,进行关联的,在此不再详加赘述。
步骤303,网络设备判断指定端口是否失效。当判断结果为是时,转到步骤304,否则,转到步骤305。
具体的,指定端口失效的原因包括但不限于指定端口对应的链路产生故障,指定端口去使能STP协议(即当前的指定端口无法使用STP协议,需要重新使能STP协议),指定端口down等。
步骤304,网络设备将与指定端口关联的Backup端口从阻塞状态切换为转发状态。
具体的,当指定端口失效后,网络设备能够获取到与指定端口关联的所有Backup端口的PID值,并将PID值最小的Backup端口从阻塞状态切换为转发状态。
优选的,网络设备能够从索引链表中直接选出PID值最小的Backup端口。例如,当指定端口A失效后,网络设备获知端口A对应的索引链表为tag_BackupPort_Date_A,而由于tag_BackupPort_Date_A中的Backup端口是按照升序排列,即tag_BackupPort_Date_A中的第一个Backup端口为PID值小,网络设备直接将该Backup端口从阻塞状态切换为转发状态。
步骤305,网络设备保持当前指定端口处于转发状态。
需要说明的是,当网络设备中有端口失效或者失效端口恢复时,则网络设备还需要在各个端口中更新Backup端口的索引链表或者ulDestinatePID。
仍以端口A、端口B和端口C的情况为例进行说明。
(1)当指定端口A失效时,网络设备能够查找到对应的索引链表为tag_BackupPort_Date_A,此时需要将tag_BackupPort_Date_A中的信息删除,端口B和端口C的状态也发生了变化,端口B变为指定端口,端口C变为端口B的Backup端口,在端口B中,需要使索引链表生效,即对应的索引链表为tag_BackupPort_Date_B,并在tag_BackupPort_Date_B中将ulBackupPID添加为C_PID;在端口C中,需要将ulDestinatePID添加为B_PID。
(2)当Backup端口B和/或Backup端口C失效时,网络设备需要更新索引链表tag_BackupPort_Date_A中的信息,即删除端口B和/或端口C所对应的索引。
(3)当失效端口A恢复时,根据各个端口向其他端口发送的BPDU报文,端口A重新获取到自身为指定端口,并在tag_BackupPort_Date_A中重新添加Backup端口B和Backup端口C的信息。另外,Backup端口B和Backup端口C也需要将ulDestinatePID重新添加为A_PID。
(4)当失效端口B和/或Backup端口C恢复时,只需要将失效端口B和/或Backup端口C的信息重新添加到tag_BackupPort_Date_A中。
本发明中,当网络设备中有端口发生变化时,均需要在各个端口中更新索引链表或者ulDestinatePID,本发明中不再详加赘述。
其中,本发明中各个步骤的顺利可以根据实际的需要进行调整。
综上可以看出,当指定端口失效后,网络设备通过查询失效指定端口数据结构中Backup端口的索引链表tag_BackupPort_Date,当索引链表不为空时,立即根据链表首个节点中ulBackupPID找到对应的Backup端口,将该Backup端口进行状态切换,使该Backup端口直接从Discarding状态切换到Forwarding状态,从而使流程缩减为:Discarding(网络设备查找Backup端口花费的时间,约为毫秒级)状态到Forwarding状态,减少了状态切换所造成的断流时间。
需要说明的是,上述处理过程适用于网络设备中运行RSTP网络的情况,而当网络设备中运行于MSTP网络中时,由于MSTP携带实例的概念,从而导致对于数据维护列表的情况略有不同。其中,首先是每个端口需要根据每个实例维护一张tag_BackupPort_Date的数据链表,其次是Backup端口需要根据每个实例记录对应指定端口的ulDestinatePID值,而每个实例下的其它操作相同,在此不再详加赘述。
如图5所示,为本发明提出的一种状态切换装置,包括:
监控模块51,用于监控各个STP端口的信息,所述STP端口的信息具体为指定端口或者Backup端口;其中,所述指定端口的状态为转发状态,所述Backup端口的状态为阻塞状态。
所述监控模块51具体用于,监控所述STP端口所接收到的网桥协议数据单元BPDU报文;其中,所述BPDU报文中携带了发送端口的PID值;并在监控到所述BPDU报文为所述网络设备的其他STP端口向外发送的BPDU报文时,在所述STP端口和所述其他STP端口中选取指定端口和Backup端口,进一步获知所述STP端口和所述其他STP端口中有Backup端口出现。
关联模块52,与所述监控模块51连接,用于当根据监控结果获知有Backup端口出现时,将所述Backup端口和对应的指定端口进行关联。
其中,所述关联模块52具体用于,
根据所述BPDU报文中的PID值将所述Backup端口和对应的指定端口进行关联。
具体的,所述关联模块52进一步用于,
在所述指定端口维护Backup端口的索引链表,并根据所述索引链表关联所述指定端口和所述Backup端口,其中,所述索引链表中包含了所述Backup端口的PID索引;
在所述Backup端口维护指定端口的PID值,并根据所述指定端口的PID值关联所述指定端口和所述Backup端口。
处理模块53,与所述关联模块52和所述监控模块51连接,用于当所述指定端口失效后,将与所述指定端口关联的Backup端口从阻塞状态切换为转发状态。
所述处理模块53具体用于,
获取与所述指定端口关联的Backup端口的PID值;并将PID值最小的Backup端口从阻塞状态切换为转发状态。
其中,本发明装置的各个模块可以集成于一体,也可以分离部署。上述模块可以合并为一个模块,也可以进一步拆分成多个子模块。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到本发明可以通过硬件实现,也可以借助软件加必要的通用硬件平台的方式来实现。基于这样的理解,本发明的技术方案可以以软件产品的形式体现出来,该软件产品可以存储在一个非易失性存储介质(可以是CD-ROM,U盘,移动硬盘等)中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述的方法。
本领域技术人员可以理解附图只是一个优选实施例的示意图,附图中的模块或流程并不一定是实施本发明所必须的。
本领域技术人员可以理解实施例中的装置中的模块可以按照实施例描述进行分布于实施例的装置中,也可以进行相应变化位于不同于本实施例的一个或多个装置中。上述实施例的模块可以合并为一个模块,也可以进一步拆分成多个子模块。
上述本发明序号仅仅为了描述,不代表实施例的优劣。
以上公开的仅为本发明的几个具体实施例,但是,本发明并非局限于此,任何本领域的技术人员能思之的变化都应落入本发明的保护范围。
Claims (6)
1.一种状态切换方法,其特征在于,包括以下步骤:
网络设备监控生成树协议STP端口所接收到的网桥协议数据单元BPDU报文,所述BPDU报文中携带了发送端口的端口标识PID值,且发送端口的PID值用于确定所述STP端口为指定端口或者Backup端口;
如果所述BPDU报文为所述网络设备的其他STP端口向外发送的BPDU报文,则需要在所述STP端口和所述其他STP端口中选取指定端口和Backup端口,且所述网络设备获知所述STP端口和所述其他STP端口中有Backup端口出现;其中,在选取指定端口和Backup端口时,只有能够形成环路的STP端口之间才是对应的指定端口和Backup端口;
所述网络设备根据所述BPDU报文中的PID值将所述Backup端口和对应的指定端口进行关联;
当所述指定端口失效后,所述网络设备将与所述指定端口关联的Backup端口从阻塞状态切换为转发状态。
2.如权利要求1所述的方法,其特征在于,所述网络设备根据所述BPDU报文中的PID值将所述Backup端口和对应的指定端口进行关联,具体包括:
所述网络设备在所述指定端口维护Backup端口的索引链表,并根据所述索引链表关联所述指定端口和所述Backup端口,其中,所述索引链表中包含了所述Backup端口的PID索引;
所述网络设备在所述Backup端口维护指定端口的PID值,并根据所述指定端口的PID值关联所述指定端口和所述Backup端口。
3.如权利要求1所述的方法,其特征在于,所述网络设备将与所述指定端口关联的Backup端口从阻塞状态切换为转发状态,具体包括:
所述网络设备获取与所述指定端口关联的Backup端口的PID值,并将PID值最小的Backup端口从阻塞状态切换为转发状态。
4.一种状态切换装置,其特征在于,包括:
监控模块,用于监控生成树协议STP端口所接收到的网桥协议数据单元BPDU报文,所述BPDU报文中携带了发送端口的端口标识PID值,且发送端口的PID值用于确定所述STP端口为指定端口或者Backup端口;
并在监控到所述BPDU报文为自身的其他STP端口向外发送的BPDU报文时,需要在所述STP端口和所述其他STP端口中选取指定端口和Backup端口,且获知所述STP端口和所述其他STP端口中有Backup端口出现;其中,在选取指定端口和Backup端口时,只有能够形成环路的STP端口之间才是对应的指定端口和Backup端口;
关联模块,与所述监控模块连接,用于当根据监控结果获知有Backup端口出现时,根据所述BPDU报文中的PID值将所述Backup端口和对应的指定端口进行关联;
处理模块,与所述关联模块和所述监控模块连接,用于当所述指定端口失效后,将与所述指定端口关联的Backup端口从阻塞状态切换为转发状态。
5.如权利要求4所述的装置,其特征在于,
所述关联模块进一步用于,在所述指定端口维护Backup端口的索引链表,并根据所述索引链表关联所述指定端口和所述Backup端口,其中,所述索引链表中包含了所述Backup端口的PID索引;
在所述Backup端口维护指定端口的PID值,并根据所述指定端口的PID值关联所述指定端口和所述Backup端口。
6.如权利要求4所述的装置,其特征在于,
所述处理模块具体用于,获取与所述指定端口关联的Backup端口的PID值;并将PID值最小的Backup端口从阻塞状态切换为转发状态。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN2010101067316A CN101771570B (zh) | 2010-02-08 | 2010-02-08 | 一种状态切换方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN2010101067316A CN101771570B (zh) | 2010-02-08 | 2010-02-08 | 一种状态切换方法及装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN101771570A CN101771570A (zh) | 2010-07-07 |
CN101771570B true CN101771570B (zh) | 2012-05-23 |
Family
ID=42504186
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN2010101067316A Active CN101771570B (zh) | 2010-02-08 | 2010-02-08 | 一种状态切换方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN101771570B (zh) |
Families Citing this family (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105099906B (zh) | 2010-09-26 | 2018-11-09 | 新华三技术有限公司 | 降低链路聚合端口报文丢失的方法及硬件控制单元 |
CN102685013B (zh) * | 2012-05-25 | 2015-01-28 | 杭州华三通信技术有限公司 | 防止环路震荡的方法和设备 |
CN104125083A (zh) * | 2013-04-24 | 2014-10-29 | 中兴通讯股份有限公司 | 一种网络设备的主备倒换方法、装置、设备及系统 |
CN105245457B (zh) * | 2015-10-21 | 2018-08-28 | 盛科网络(苏州)有限公司 | 加快mstp中指定端口收敛速度的方法及装置 |
CN108471365A (zh) * | 2017-02-23 | 2018-08-31 | 联想企业解决方案(新加坡)有限公司 | 用于在通信网络中选择根网桥的方法 |
CN109361552A (zh) * | 2018-11-28 | 2019-02-19 | 迈普通信技术股份有限公司 | 端口切换方法、主控板卡、业务板卡及交换设备 |
CN110719219B (zh) * | 2019-09-04 | 2021-09-14 | 厦门网宿有限公司 | 一种端口状态的配置方法及网络设备 |
CN113904980B (zh) * | 2021-09-30 | 2023-07-18 | 北京东土科技股份有限公司 | 一种信道切换方法、装置、交换机及存储介质 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6628624B1 (en) * | 1998-12-09 | 2003-09-30 | Cisco Technology, Inc. | Value-added features for the spanning tree protocol |
CN101018180A (zh) * | 2007-03-12 | 2007-08-15 | 中兴通讯股份有限公司 | 一种堆叠系统内部转发表的实现方法 |
US7480258B1 (en) * | 2003-07-03 | 2009-01-20 | Cisco Technology, Inc. | Cross stack rapid transition protocol |
-
2010
- 2010-02-08 CN CN2010101067316A patent/CN101771570B/zh active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6628624B1 (en) * | 1998-12-09 | 2003-09-30 | Cisco Technology, Inc. | Value-added features for the spanning tree protocol |
US7480258B1 (en) * | 2003-07-03 | 2009-01-20 | Cisco Technology, Inc. | Cross stack rapid transition protocol |
CN101018180A (zh) * | 2007-03-12 | 2007-08-15 | 中兴通讯股份有限公司 | 一种堆叠系统内部转发表的实现方法 |
Also Published As
Publication number | Publication date |
---|---|
CN101771570A (zh) | 2010-07-07 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN101771570B (zh) | 一种状态切换方法及装置 | |
CN103281247B (zh) | 一种数据中心网络的通用路由方法及系统 | |
CN102142970B (zh) | 二层以太网络的组播树构建方法和网络节点设备 | |
CN101588304B (zh) | 一种vrrp的实现方法和设备 | |
CN105162704B (zh) | Overlay网络中组播复制的方法及装置 | |
CN101160909B (zh) | 一种在弹性分组环上实现虚拟路由冗余协议的方法及系统 | |
CN102197625B (zh) | 提供商链路状态桥接(plsb)计算方法 | |
CN102201999B (zh) | 一种实现组播业务负荷分担的方法和系统 | |
CN105915400A (zh) | 一种数据流切换方法及系统 | |
US8320281B2 (en) | Methods, systems and computer readable media for utilizing a standard spanning tree protocol to indicate an active switching fabric in a network node | |
CN110535763B (zh) | 一种路由备份方法、装置、服务器及可读存储介质 | |
CN103873373A (zh) | 一种组播数据报文转发方法及设备 | |
CN102404216A (zh) | 一种trill网络保护的方法、路由桥和系统 | |
CN104506513A (zh) | 防火墙流表备份方法、防火墙及防火墙系统 | |
WO2012077262A1 (en) | Server management apparatus, server management method, and program | |
WO2017113929A1 (zh) | 一种软件定义网络中控制转发设备集群的方法及控制器 | |
CN106713177A (zh) | 一种多控制器的wmSDN组网方法 | |
CN104919760A (zh) | 虚拟机箱系统控制协议 | |
CN112954497B (zh) | 一种基于fc-ae交换机的环形级联网络 | |
CN102904705B (zh) | 一种堆叠系统批量同步的方法及设备 | |
CN104937878A (zh) | 在单向隧道存在的情况下建立协议无关多播树的方法 | |
US9300529B2 (en) | Communication system and network relay device | |
CN103493439B (zh) | 接收信息的方法、发送信息的方法及装置 | |
US20150036508A1 (en) | Method and Apparatus For Gateway Selection In Multilevel SPB Network | |
CN105634765A (zh) | 控制器替换方法及装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant | ||
CP03 | Change of name, title or address | ||
CP03 | Change of name, title or address |
Address after: 310052 Binjiang District Changhe Road, Zhejiang, China, No. 466, No. Patentee after: Xinhua three Technology Co., Ltd. Address before: 310053 Hangzhou hi tech Industrial Development Zone, Zhejiang province science and Technology Industrial Park, No. 310 and No. six road, HUAWEI, Hangzhou production base Patentee before: Huasan Communication Technology Co., Ltd. |