CN1825832A - 快速环生成树协议 - Google Patents
快速环生成树协议 Download PDFInfo
- Publication number
- CN1825832A CN1825832A CNA2005101343103A CN200510134310A CN1825832A CN 1825832 A CN1825832 A CN 1825832A CN A2005101343103 A CNA2005101343103 A CN A2005101343103A CN 200510134310 A CN200510134310 A CN 200510134310A CN 1825832 A CN1825832 A CN 1825832A
- Authority
- CN
- China
- Prior art keywords
- port
- rrstp
- described bridge
- bridge
- appointed
- 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.)
- Granted
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L45/00—Routing or path finding of packets in data switching networks
- H04L45/28—Routing or path finding of packets in data switching networks using route fault recovery
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L12/00—Data switching networks
- H04L12/28—Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
- H04L12/42—Loop networks
- H04L12/437—Ring fault isolation or reconfiguration
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L12/00—Data switching networks
- H04L12/28—Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
- H04L12/46—Interconnection of networks
- H04L12/4604—LAN interconnection over a backbone network, e.g. Internet, Frame Relay
- H04L12/462—LAN interconnection over a bridge based backbone
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L45/00—Routing or path finding of packets in data switching networks
- H04L45/02—Topology update or discovery
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L45/00—Routing or path finding of packets in data switching networks
- H04L45/48—Routing tree calculation
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Small-Scale Networks (AREA)
- Pharmaceuticals Containing Other Organic And Inorganic Compounds (AREA)
- Computer And Data Communications (AREA)
Abstract
在一种能够使重收敛更容易的方法中,接收用于在多桥环中的多个桥的每一个的第一端口的指定信息以及接收用于在多桥环中的多个桥的每一个的第二端口的指定信息。多个桥的每一个的第一端口是第一方向快速环生成树协议(RRSTP)端口以及多个桥的每一个的第二端口是第二方向RRSTP端口。围绕环的第一方向(如向前方向)与围绕所述环的第二方向(如向后方向)相反。第一保留的MAC地址与桥的每一个的第一方向端口相关联以及第二保留的MAC地址与桥的每一个的第二方向端口相关联。
Description
技术领域
在此的公开总体地涉及通信网络路径冗余技术,以及更特别地涉及生成树协议。
背景技术
已知各种类型的生成树协议(即常规的生成树协议)。这样的常规的生成树协议用来为网络的节点提供路径冗余,同时防止在网络中出现任何不期望的环回。传统的生成树协议的例子包括,但不限制于,生成树协议(STP)、快速生成树协议(RSTP)以及多生成树协议(MSTP)。STP是根据IEEE 802.1D 1998标准的传统(legacy)协议。RSTP符合IEEE 802.1D 2004标准。MSTP符合IEEE 802.1Q 2003标准。
当拓扑发生变化时,生成树协议执行的一个特别的过程称为收敛计算,收敛或重收敛。这样的拓扑的变化的例子包括,但不限制于,链路故障以及有桥或桥端口添加到拓扑中。这样的收敛过程包括从根桥到所有的桥计算新的生成树以及将某些桥端口指定为“转发”或“丢弃”。通过该收敛过程,提供了无环回的拓扑。一旦完成收敛,网络节点拓扑是稳定的并且实现的生成树协议是处于稳定状态,只是大约每2秒交换Hello消息(即称为“Hello时间”)
在网络中避免环回是生成树协议的重要任务。当发生环回时,经由受影响的一个或多个桥的信息的通信很快会变得非常混乱并且要求处理资源(如中心处理单元的资源)。如果发生环回,一个桥可以同时在两个不同的端口上看到同样的站(即其自己的MAC地址),这样将会误导转发引擎应该给哪个目的端口发送分组。
在网络中的环回反过来又影响源学习协议的功能性和/或效率。源学习协议涉及软件或硬件处理,其角色是维护层2的桥接表(即过滤数据库)。该层2的桥接表将任何学到的、给定的MAC地址关联到在给定的VLAN中的给定的端口。这样,允许发生层2转发处理(即将给定的帧发送到正确的端口)。当发生环回时,每次在端口上学到一个站,如果同样的MAC地址在此之前已经在其他端口上被发现,源学习协议软件执行“MAC地址移动”处理,其根据可利用的最新信息,更新层2的桥接表(即发现旧的MAC地址,将其删除并创建新的MAC地址)。
常规的生成树协议,例如STP、RSTP和MSTP通过硬件限制桥接协议数据单元(BPDU)的桥接或泛洪。如此情况,由于相关算法的复杂性,常规的生成树协议只是用软件来实现。生成树协议软件只负责跨越网络发送BPDU。这意味着在给定的拓扑中越是有更多的节点,重收敛就需要越长的时间,因为每一次接收到BPDU,在生成树协议软件能够依次将BPDU发送到一个或几个端口之前,它必须经过生成树协议软件的处理。
对于例如BPDU的小的帧数据单元,经过未过载的桥的硬件通过时间估计在5毫秒左右。对于软件未过载的情况,处理和发送一个或多个BPDU的软件处理时间可以低到10-50毫秒。但是,当软件变得拥挤时,时间会大大地增加。这样,对于生成树协议的常规的实现,为所有的拓扑确保x毫秒以下的重收敛时间是不实际或不现实的,因为软件处理时间与硬件通过时间相比较通常是不可忽略的。
以太网自动保护交换(EAPS)是由极度网络(Extreme Network)提供的专有协议。EAPS提供弹性分组环(RPR)功能以提供秒以下的故障结束协议允许在不使用生成树协议(即IEEE 802.1D)功能的情况下环拓扑可以重收敛。Extreme Network的EAPS声称提供小于50ms的恢复时间,而不管在环中的节点的数量。然而,很可能EAPS是以经过在环中的所有的节点的通过时间为条件的,其是通过硬件来完成的以使恢复的时延最小化。为清除相关的转发表,EAPS发送“拓扑变化”类的帧,这样允许学习新的拓扑。因此,声称的小于50ms的重收敛时间很可能没有考虑为重新学习正确的拓扑整个环的拓扑变化的处理(包括清除L2转发表)。很可能,在环中出现故障之后激活预先已知的作为备用的链路被认为是重收敛。
EAPS端口被排除在在特定的VLAN中参与任何生成树协议之外。这样就很清楚,EAPS不兼容于任何生成树协议(如STP、RSTP或MSTP)。EAPS依赖于两个独特的机制:链路断开报警(link downalerts)和环轮询帧(ring polling frame)。EAPS选出主节点,其具有第一端口和第二端口。当链路断开事件发生时,检测到链路断开事件的节点立即向主节点发送链路断开控制帧。主节点也负责激活是其第二链路的备用链路。在主节点上的第二链路正常地被锁定以确保无环回的拓扑。在故障之后,当第二链路建立时,主节点清除其自己的转发表并且还将控制帧发送到所有的其他环节点,命令它们清除它们的转发表。环轮询帧也被用来监视链路故障。如果环是安全的,那么每个环轮询帧从第一端口发出并且在第二端口上接收。当故障发生时,在故障周期定时器时间到达之后,主节点激活其第二端口并且进入拓扑变化类或处理,清除其自己的转发表和命令其他节点作同样的处理(即通过控制帧)。可以看出,在链路断开机制故障的情况下,例如当链路断开帧丢失时,环轮询机制还用来提供备用机制。
因此,可以克服与常规的生成树协议的实现相关联的缺点的生成树协议的实现将会是有用的、有利的和新颖的。
发明内容
本发明的实施方式涉及在开放系统互连(OSI)参考模型的第二层(L2)的装置,其是由专有的、标准化的L2(即IEEE标准)协议和第3层(L3)(即IETF标准)协议来控制的。这些装置在此后称为“桥”。本发明的这样的实施方式是快速生成树协议(RSTP)的有利的和新颖的实现。当前的RSTP标准定义在文件“IEEE 802.1D2004局域和城域网标准:媒体接入控制(MAC)桥”中。
本发明在此称为快速环生成树协议(RRSTP)。RRSTP解决了生成树协议(STP)各种常规的配置中存在的问题。这样的STP的例子包括,但不限制于,基本STP(即STP)、多STP(MSTP)以及快速生成树协议(RSTP)。STP的这样的常规配置的问题是收敛时间取决于在拓扑中的节点数量。当节点数量增加时,重收敛的时间也增加。
在有利于重收敛方面,RRSTP克服了STP的常规配置的限制。更具体地,RRSTP提供了具有受约束的收敛时间的并且以保持与RSTP兼容的方式的有利于重收敛的手段。因为RRSTP支持RSTP,它必须确保变量“最大的桥老化时间”也可能翻译为“跳数”应该根据标准设定在6和40之间,这仍然限制了环的大小,根据在不同的已知STP标准中的复杂的公式,小于给定的节点最大数量。
为确保受约束的收敛时间,RRSTP依赖于节点(即桥)的硬件来转发专有的桥接协议数据单元(BPDU)。有利地,对于RRSTP环,RRSTP允许小于50ms的环生成树重收敛,但是也允许常规的生成树协议(即RSTP或MSTP)在环中的任何其他地方应用。这是指环的拓扑不会减小为仅仅是RRSTP环,而是环的周围基本上是完全自由的。小于50毫秒的环收敛只是在环中才能确保并且RRSTP直到由“最大的桥老化时间”标准变量引起的最大跳数达到之后,才提供小于50毫秒的收敛。
确实,即使通过硬件实现了RRSTP,在环中的节点数量仍然影响总的通过时间和重收敛时间。然而,跨越一个桥的通过时间以及在1Gbs的链路上发送帧所花费的时间是约为10毫秒。这样,甚至对大的拓扑,相对于软件处理时间,硬件通过时间(即在桥和1Gbs的链路上通过的时间)基本上是可忽略的。
RRSTP协议的一个关键的方面是除保持与其他生成树协议的兼容之外,它提供在环拓扑中的快速收敛。这允许桥上的两个端口可以专注于RRSTP,同时使桥的所有的端口,包括参与RRSTP协议的两个,可以参与任何STP标准。对于常规的STP(如基本STP,RSTP和MSTP),对于RRSTP端口,和任何其他端口一样,参与任何网状拓扑的任何常规的标准STP,是有用的和有利的。以此方式,RRSTP端口与整个拓扑,不仅仅是环拓扑,相互作用以交换常规的BPDU帧(即根据常规的STP的BPDU帧)。
在本发明的一个实施方式中,一种方法包括为在多桥环中的多个桥的每一个的第一端口接收指定信息以及为在多桥环中的多个桥的每一个的第二端口接收指定信息。多个桥的每一个的第一端口是第一方向快速环生成树协议(RRSTP)端口,多个桥的每一个的第二端口是第二方向RRSTP端口以及围绕环的第一方向(如向前方向)与围绕环的第二方向(如向后方向)相反。该方法进一步包括将第一保留的MAC地址与桥的每一个的第一方向端口相关联以及将第二保留的MAC地址与桥的每一个的第二方向端口相关联。
在本发明的另一个实施方式中,一种方法包括为信息传输单元的双向传输配置在多桥环中的多个桥的每一个的两个端口以及配置由桥的每一个利用的转发表,使得桥的每一个的第一个端口接收与第一保留的MAC地址相关联的业务以及桥的每一个的第二个端口接收与第二保留的MAC地址相关联的业务。桥的每一个的第一个端口是在围绕环的第一方向中传输信息传输单元的第一方向端口以及桥的每一个的第二个端口是在围绕环的与第一方向相反的第二方向中传输信息传输单元的第二方向端口。
在本发明的另一个实施方式中,生成树协议(STP)软件包括多个指令。提供的指令用于配置各自的桥的两个端口,RRSTP软件驻留在桥中用于信息传输单元的双向传输,以及用于配置由各自的桥利用的转发表,使得第一方向RRSTP端口接收与第一保留的MAC地址相关联的业务以及第二方向RRSTP端口接收与第二保留的MAC地址相关联的业务。端口的第一个是在围绕桥的环的第一方向中传输信息传输单元的第一方向RRSTP端口,端口的第二个是在围绕桥的环的第二方向上传输信息传输单元的第二方向RRSTP端口以及围绕桥的环的第一方向与第二方向相反。
通过进一步阅读下列说明书和相关的附图,本发明的这些和其他目的、实施方式、优势和/或特性将变得更加清晰。
附图说明
图1A和1B示出了有利于根据本发明的重收敛功能的方法。
图2表示了为了允许根据本发明的重收敛功能,对于IEEE802.1D 2004标准的失效的端口角色转换状态机的所需的修改的实施方式。
图3表示了为了允许根据本发明的重收敛功能,对于IEEE802.1D 2004标准的端口发送状态机的所需的修改的实施方式。
图4表示了为了允许根据本发明的重收敛功能,对于IEEE802.1D 2004标准的端口接收状态机的所需的修改的实施方式。
图5表示了为了允许根据本发明的重收敛功能,对于IEEE802.1D 2004标准的端口信息状态机的所需的修改的实施方式。
图6表示了为了允许根据本发明的重收敛功能,对于IEEE802.1D 2004标准的拓扑改变状态机的所需的修改的实施方式。
图7表示了支持RRSTP的节点拓扑的第一个可选实施方式。
图8表示了支持RRSTP的节点拓扑的第二个可选实施方式。
具体实施方式
正如前面所述的,在常规的生成树协议(即STP)为激活的同时,本发明(即这里称为RRSTP)有优势地进行实施。下面参照STP的常规版本RSTP(即,快速生成树协议)对RRSTP进行描述。本领域的技术人员已经完全理解响应故障(例如根端口故障)的RSTP拓扑和RSTP功能,因此,在这里将不对这种拓扑和功能进行详尽的描述。但是,为了提供该描述的总体框架,这里对这种RSTP环境的例子进行简要的说明。
这里定义了一个合适的RSTP环境的合适例子,为根据IEEE802.1D 2004标准的环境,在该环境中能够有助于RRSTP。在这个环境中,使用例如那些在IEEE 802.1D 2004标准的表17.1-RSTP定时器和通过保持计数参数值中定义的性能参数的默认设置对该环境中的所有节点(即,每个包括桥的节点)进行配置。该环境可以包括具有提供有利功能的RRSTP的比较大数量的节点(例如7个或更多个节点)。
桥接协议数据单元(即BPDU)是在RSTP环境中的每个节点的桥之间传送信息的信息分组。BPDU是消息优先级向量的例子,其结构如下:<根Id,根路径代价,指定的桥ID,指定的端口ID,端口ID>。每当一个端口接收到这样的BPDU,它将该传送的向量与称为端口优先级向量的它自已保持的向量进行比较。如果经过BDPU接收到的信息优先于端口优先级向量信息,则这个条件触发状态机计算以有助于所有端口角色的计算(例如,根端口、指定端口、备份端口和替代端口),从而允许RSTP环境的生成树的重新设计。这种重新设计包括在生成的树中选择一个根桥、每个桥上的根端口、每个链路或本地局域网的指定端口、没有或一个或多个允许朝向根桥的替代路径的替代端口、以及没有或一个或多个提供朝向树的叶子(即,树的对向节点)的替代路径的备份端口。根桥具有最低的桥标识符(即,一个MAC地址和一个优先级)。根端口提供到根桥的最短矩离(即,使用端口路径代价标准参数来确定这个距离)。替代端口和备份端口的职责是在其它网络部件故障的情况下允许连通性。任何端口也可以处于在IEEE 802.1D 2004标准中定义的转发、丢弃或学习状态中。
802.1D 2004标准中完整地解释了拓扑改变和建议/协议消息。关于建议/协议消息,指定的“丢弃”端口总是试图变为转发端口。正如在802.1D 2004标准17.10章节的改变端口状态中所描述的,“转换为丢弃的任何指定端口从其相邻的桥开始依次请求允许转换为转发状态。其效果是激活拓扑中的一个“切断”从根桥传播开,直到它到达网格边缘或稳定的激活拓扑中的最终位置”。因此,效果是,在每个邻居之间交换的建议/协议BPDU期间,暂时的切断在激活拓扑中进行传播。这些事件从当前节点传播开直至到达每个边缘节点。关于拓扑改变消息,每当一个端口变为指定的转发(之前不是指定的转发)或根转发(之前不是根转发)时,各个拓扑改变状态机将该端口视为在网络拓扑中变为激活的,桥必须清除所有端口上的所有MAC地址(即,除了其自己以外),并在除了其自己以外的所有端口上传播拓扑改变消息。依次接收拓扑改变消息的任何桥上的任何端口必须在除其自己以外的所有端口上清除所有的MAC地址,并在除其自己以外的所有端口上传播拓扑改变消息。
现在描述本发明的具体方面,RRSTP具有多个特定的环境配置要求以有助于节点网络中的重收敛。这些特定的环境配置要求必须用于有助于根据本发明的重收敛功能。因此,用于有助于根据本发明的RRSTP功能的方法包括,执行用于实现这些特定环境配置要求的操作。在一个实施方式中,这些操作优选地由配置成用于有助于根据本发明的RRSTP功能的软件(即,STP软件)执行。这种RRSTP功能包括,有助于用于实现这些特定环境配置要求的操作(例如,命令用户执行这样的操作)和/或有助于重收敛功能。
对于每个节点,执行一个操作以有助于每个RRSTP环最多指定两个RRSTP端口。与有助于两个RRSTP端口的指定相关联,执行一个操作以将每个节点的第一个RRSTP端口与正向(例如,第一方向)相关联,将每个节点的第二个RRSTP端口与反向(例如,第二方向)相关联。在一个实施方式中,根据本发明的STP软件提示用户输入为每个节点指定两个RRSTP端口的信息,并且输入将每个节点的第一个RRSTP端口与正向相关联以及将每个节点的第二个RRSTP端口与反向相关联的信息。
因此,这里公开了与前向相关联的所有端口允许在前向方向上围绕环进行环回,并且与反向相关联的所有端口允许在反向方向上围绕环进行环回。这样,围绕节点环的第一方向与围绕环节点的第二方向相反。
执行用于保持每个RRSTP环两个专有的目的MAC地址(即,媒体接入控制地址)的操作。这两个目的MAC地址这里也称为RRSTP MAC地址。第一个MAC地址与前向方向相关联,第二个MAC地址与反向方向相关联。优选地,两个MAC地址是已知的专有的MAC地址。每个RRSTP BPDU遵循IEEE 802.1D 2004 BPDU格式,除了它的目的MAC地址是专有的。
节点支持的常规STP(例如,RSTP,MSTP等)必须也在每个RRSTP端口上得到正常的支持。因此,本方法优选地,但不是必须,包括用于有助于在每个节点上验证和/或实现常规STP的操作。
在执行完每个RRSTP环最大指定两个RRSTP端口和将RRSTP端口与它们各自的方向相关联之后,执行用于配置每个节点可以访问的层2(即L2)转发表的操作,使得每个RRSTP MAC地址与该方向的端口相关联。以这种方式,与对应于前向方向的RRSTP MAC地址相关联的业务被发送到与前向方向相关联的RRSTP端口,与对应于反向方向的RRSTP MAC地址相关联的业务被发送到与反向方向相关联的RRSTP端口。
执行用于配置每个节点的硬件的操作,以使用任一个RRSTP MAC地址将BPDU(即,BPDU帧)发送给该硬件的CPU。使用RRSTP MAC地址发送的BPDU在这里称为RRSTP BPDU。在一个实施方式中,STP软件被适当配置成对每个节点的桥进行编程,以便将每个RRSTPBPDU发送给各个桥的CPU。以这种方式,每个RRSTP BPDU被发送给各个硬件的CPU,并且由各个硬件将其进行转发。
参照图1A-1B,描述了用于有助于根据本发明的重收敛功能的方法。该重收敛功能在一个节点环中的多个节点之中促进。每个节点包括各自的桥(即,桥101-107)。反向方向B指逆时针方向(即,直接从桥101到桥107)。前向方向F指顺时针方向(即,直接从桥101到桥104)。
当在桥101和桥107之间检测到链路故障时(图1A),桥107上的STP软件促进在其端口2上使用与反向方向相关联的RRSTP MAC地址发送RRSTP BPDU-B(反向)。该RRSTP BPDU-B包括当前激活的常规STP(即,现在描述中的RSTP)的所有标准域。正如参照用于促进节点网络中重收敛的上述公开中所描述的,常规的RSTP处理保持不变,常规的RSTP BPDU对话在RRSTP功能期间发生。
仍然参照图1A,桥106上的STP软件接收RRSTP BPDU-B。因为没有端口被指定为桥106上的替代端口,并且桥106上的TC标记没有被设置(即,设置为激活),所以桥106的STP软件通过硬件将RRSTP BPDU-B高速转发到定义了前向方向的桥105的RRSTP端口,并且CPU丢掉RRSTP BPDU-B(即,RRSTP BPDU-B帧)。
桥105上的STP软件接收RRSTP BPDU-B。因为桥105上有一个端口被指定为替代端口(图1A),所以桥105的STP软件触发端口信息状态机(PIM)状态RECEIVE-RRSTP,其为RRSTP修改的PIMRECEIVE状态和RRSTP修改的rcvInfo()版本。当前被指定为根转发(即,ROOT)的桥105的端口1,立即变成被指定为指定转发(即,指定的端口(前向)),如图1B中所示。桥105的端口2,首先被指定为替代端口,试图变成被指定为根转发(即,ROOT端口(前向))。因此,根端口转换状态机的REROOT状态被触发。根据IEEE802.1D2004标准,在“最近根定时器”设定的定时器期间为根端口并且当前被指定为指定转发(即,指定的端口(前向))的任何端口应当变成被指定为丢弃。但是,在RRSTP修改的过程setReRootTree()中,并不在RRSTP指定端口上触发重新根状态。这样,桥105的端口1并不变成被指定为指定丢弃。因此,建议/协议序列不被触发。
桥105的端口2变成被指定为根转发。当桥105的端口2(即,起初被指定为替代端口的端口)变成被指定为根转发,桥105上的STP软件在桥105的RRSTP端口上触发状态DETECTED-RRSTP,在该桥端口上也触发拓扑改变(TC)状态机的PROPAGATING-RRSTP状态。这样,桥105的STP软件立即在桥105的端口1和2上发送RRSTP_TCBPDU。桥105的STP软件也促进在该RRSTP端口上的L2(即,层2)转发表的清除。
响应桥105的端口1和2上发送的RRSTP_TC BPDU,桥102上的STP软件接收RRSTP_TC BPDU。桥102上的STP软件检测到RRSTP_TCBPDU(即,RRSTP帧)和设置TC标记。作为响应,桥102上的STP软件在RRSTP端口上触发NOTIFIED_TC_RRSTP状态。
桥102上的STP软件触发拓扑改变状态机的PROPAGATING_WITHOUT_SENDING状态,并促进在RRSTP端口上的L2转发表的清除。RRSTP_TC BPDU经过其它的RRSTP端口被高速地向桥103转发。这里公开了所有接收RRSTP_TC BPDU的桥根据上述为桥102所公开的RRSTP功能进行操作(即,触发拓扑改变状态机的PROPAGATING_WITHOUT_SENDING状态以及RRSTP端口上的L2转发表的清除)。
为了使得促进前面的参照图1A和1B公开的RRSTP功能,需要对各种IEEE 802.1D 2004标准状态机进行修改。图2中所示的指令(即,圈起来的指令202)是对于失效的端口角色转换状态机的所需的修改。图3中所示的指令(即,圈起来的指令302和304)是对于IEEE802.1D 2004标准端口发送状态机的所需的修改。图4中所示的指令(即,圈起来的指令402-410)是对于IEEE 802.1D 2004标准端口接收状态机的所需的修改。图5中所示的指令(即,圈起来的指令502-508)是对于IEEE 802.1D 2004标准端口信息状态机的所需的修改。图6中所示的指令(即,圈起来的指令602-622)是对于IEEE802.1D 2004标准拓扑改变状态机的所需的修改。
下面的表1公开了对各种RRSTP状态机的过程的描述。下面的表2公开了对RRSTP每个端口变量的描述。
表1 RRSTP状态机过程
findAlternate() | 一个依赖于实现的过程,如果是同个环的RRSTP替代端口部分而不是RRSTP端口部分接收所发现的RRSTP BPDU,则返回TRUE。否则返回FALSE。 |
getLastRRstpOtherPortTree() | 一个依赖于实现的过程,如果在同个RRSTP环的RRSTP端口部分上而不是在 |
调用该过程的端口上接收到RRSTPBPDU,则返回TRUE(返回其它RRSTP端口的lastRRstpPort)。否则返回FALSE。 | |
getRecvRRstpThisPortTree() | 一个依赖于实现的过程,如果在调用该过程的端口接收到RRSTP BPDU,则返回TRUE(返回该端口的lastRRstpPort)。否则返回FALSE。 |
rcvInfo() | 从所接收的将消息优先级和定时器值存储在msgPriority和msgTimes变量中的BPDU,对所述的消息优先级和定时器值进行解码。如果LastRRstpPort为TRUE并且findAlternateRRstpTree()为TRUE,则返回SuperiorRRstpInfo。如果LastRRstpPort为TRUE并且RRSTP帧传送拓扑改变标记,则返回OtherRRstpInfo。如果所接收的消息传送指定的端口角色,并且,1、消息优先级优先于(17.6)端口的端口优先级向量,或者2、消息优先级向量与端口的端口优先级向量相同,并且任何接收的定时器参数值(msgTimes-17.19.15)与那些已经为端口保持的定时器参数值(portTimes-17.19.22)不同,则返回SuperiorDesignatedInfo。如果接收的消息传送指定的端口角色以及消息优先级向量和定时器参数与端口的端口优先级向量或定时器值相同,则返 |
回RepeatedDesignatedInfo。如果接收的消息传送指定的端口角色以及比端口的端口优先级向量更差的消息优先级向量,则返回InferiorDesignatedInfo。如果接收的消息传送根端口、替代端口或备份端口角色以及与端口优先级向量相同或更差的消息优先级,则返回InferiorRootAlternateInfo。否则,返回OtherInfo。 | |
sendRRstpTree() | 一个依赖于实现的过程,仅当一个RRSTP是激活的(根或指定的转发)并变为“失效的端口”时调用。在同一个RRSTP环的其它RRSTP端口上而不是该失效的端口上将RRSTP变量,newInfoRRstp设置为TRUE。 |
sendTcRRstp | 一个布尔量。用于在txRRstp()过程中发送拓扑改变标记。在端口发送状态机状态的TRANSMIT_RRSTP中重置。 |
setRerootTree() | 除非如果端口为带有指定的端口角色的RRSTP端口(rrstp为TRUE),以及如果最后的BPDU是在端口接收到的RRSTP BPDU(getRcvdThisPortRRstp()为TRUE),对桥的所有端口,将reRoot设置为TRUE。 |
setTcPropRRstpTree() | 一个依赖于实现的过程,如果端口没有调用该过程、该端口为RRSTP端口(rrstp为TRUE)以及最后的BPDU是在端口部分上接收到的RRSTP BPDU |
(getRecvRRstpPortTree()为TRUE),则设置所有端口上的tcPropRrstp。如果端口没有调用该过程,并且如果该端口不是RRSTP端口(rrstp为FALSE)或如果最后的BPDU不是端口部分上接收到的RRSTP BPDU(getRecvRRstpPortTree()为FALSE),则过程在所有端口上设置tcProp。 | |
txRRstp() | 类似于标准802.1D 2004的txRstp过程。但是,MAC DA必须根据用于该RRSTP环的专有MAC DA地址和方向而不是根据802.1D 2004标准设置。另外,消息优先级向量RootBridgeId必须设置为最有可能的任意值。另外,不使用newTcWhile()。如果sendTcrRstp被设置为true,则设置拓扑改变标记,并重置sendTcRRstp。 |
表2 RRSTP每个端口变量
lastRRstpPort | 一个布尔量。当接收到任何有效的RRSTPBPDU时进行重置。通过依赖于系统的处理在任何接收有效的RRSTP BPDU的RRSTP端口上进行设置。这个变量用于对接收最后的有效RRSTP BBPDU的最后端口进行跟踪。 |
newInfoRRstp | 一个布尔量。如果一个RRSTP BPDU将要被发送则进行设置。由端口发送状态机进行重置。 |
rcvdRRstp | 一个布尔量。由依赖于系统的处理设置(在BPDU接收期间),当在端口上接收到有效的 |
RRSTP BPDU时,该变量通知端口接收状态机。这里的有效与802.1D 2004标准中的有效具有相同的意思,与标准变量“rcvdBPDU”和下述相关:1、端口必须为RRSTP端口(设置了rrstp),2、BPDU必须为带有与和同个环内的其它端口相关联的MAC DA相匹配的MAC DA的RST BPDU,以及3、在该桥上必须有替代RRSTP端口(findAlternate()为TRUE),或在该RRSTP BPDU中接收到拓扑改变标记。如果这些RRSTP条件的一个没有被设置,则该帧由软件丢弃。由端口接收状态机进行重置。 | |
Rrstp | 一个布尔量。用户输入CLI命令之后,如果端口被声明是RRSTP环的一部分,则进行设置。用户输入CLI命令之后,如果用户将该端口声明为非RRSTP,则进行重置。 |
tcPropRRstp | 一个布尔量:由拓扑改变状态机进行设置,以表示RRSTP拓扑改变应当通过这个端口进行传播。 |
tcPropWithoutSendingRRstp | 一个布尔量:由拓扑改变状态机进行设置,以表示RRSTP拓扑改变不应当通过这个端口进行传播。 |
为了安全的原因,根据本发明配置的桥(例如,具有根据本发明的STP软件)丢弃非RRSTP端口上的任何RRSTP帧,正如由变量rcvdRRstp所定义的。RRSTP BPDU如标准STP BPDU也限制于突发。
至于节点拓扑要求,应当理解,一旦一个端口被声明为用于一个RRSTP环的一个RRSTP端口,它就不能被用于另外的RRSTP环。另外,因为对标准进行了修改以便允许非常快速的重收敛建议/协议序列,所以被允许的拓扑受到了限制。例如,节点拓扑,其中不是作为特定RRSTP环的同一个RRSTP环的部分的一个链路(即,一个端口,或者是另一个RRSTP环的一部分或者是一个STP/RSTP/MSTP端口)将位于已经通过不支持根据本发明的RRSTP功能的RRSTP端口连接的2个RRSTP桥之间。图7和图8中披露了具有作为同一个RRSTP端口的部分的两个点到点链路,并因此确实支持根据本发明的RRSTP功能的替代节点拓扑的例子。
现在涉及计算机可读介质(例如,软件),从这里所做的披露中将理解,适于执行这里披露的RRSTP功能的方法、处理和/或操作,可以确实地包含在其上具有执行这种功能的指令的计算机可读介质中。在一个特定的实施方式中,指令确实地被包含以执行前面参照图1-6所披露的至少一部分功能。这些指令可以由一个或多个数据处理设备从存储设备(例如,RAM、ROM、虚拟存储器、硬驱动存储器等)、从数据处理系统的驱动单元可读的设备(例如,磁盘、光盘、磁带盒等)或同时从两者中进行存取。因此,根据本发明的计算机可读介质的实施方式包括,其上已经映像了适于执行根据本发明的RRSTP功能的计算机程序(即,一组指令)的光盘、硬驱动器、RAM或其它类型的存储设备。
在前面的详细描述中,已经参照了构成说明书一部分的附图,其中以示例的方式描述了本发明可以实施的特定实施方式。已经对这些实施方式及其某些变形进行了充分的详细描述,使得本领域的技术人员能够实施本发明。应当理解,也可以利用其它适合的实施方式,并且可以作逻辑的、机械的和电子的变化,而不会脱离本发明的精神和范围。例如,可以以任何的方式对附图中所示的功能方框进行进一步的组合或分割,而不会脱离本发明的精神或范围。为了避免不必要的细节,这里省略了对于本领域技术人员已知的特定信息的描述。所以,前面的详细描述并不旨在限于这里提出的特定形式,而是相反,它旨在覆盖可以合理地包括在所附的权利要求的精神和范围中的那些替代、修改和等同方案。
Claims (10)
1.一种方法,包括:
为在多桥环中的多个桥的每一个的第一端口接收指定信息,其中多个桥的每一个的第一端口是第一方向快速环生成树协议(RRSTP)端口;
为在多桥环中的多个桥的每一个的第二端口接收指定信息,其中多个桥的每一个的第二端口是第二方向RRSTP端口以及其中围绕所述环的第一方向与围绕所述环的第二方向相反;
将第一保留的MAC地址与所述桥的每一个的第一方向端口相关联;以及
将第二保留的MAC地址与所述桥的每一个的第二方向端口相关联。
2.根据权利要求1所述的方法,进一步包括:
配置所述桥的每一个的相关的硬件以使用所述保留的MAC地址之一将信息传输单元转发到所述桥的各自的一个的CPU。
3.根据权利要求1所述的方法,进一步包括:
在所述桥的每一个的所述RRSTP端口上支持常规的生成树协议,同时在所述RRSTP端口上支持所述RRSTP。
4.根据权利要求1所述的方法,其中关联所述MAC地址包括配置由所述桥的每一个利用的转发表,使得所述桥的每一个的第一方向RRSTP端口接收与第一保留的MAC地址相关联的业务以及所述桥的每一个的第二方向RRSTP端口接收与第二保留的MAC地址相关联的业务。
5.根据权利要求1所述的方法,其中在接收到用于第一方向RRSTP端口的指定信息和接收到用于第二方向RRSTP端口的指定信息之后,分别进行第一保留的MAC地址的所述关联和第二保留的MAC地址的所述关联。
6.根据权利要求1所述的方法,进一步包括:
响应在所述桥的第一个检测到链路故障,使用第一保留的MAC地址,在第一方向上,将RRSTP桥接协议数据单元(BPDU)发送到所述桥的第二个。
7.根据权利要求6所述的方法,进一步包括:
响应由所述桥的第二个接收RRSTP BPDU以及所述桥的第二个具有指定为替换的端口,触发所述桥的第二个的端口信息状态机的至少一个状态,其中所述触发使指定为根转发的所述桥的第二个的端口变成指定为指定转发以及其中指定为替换的所述桥的第二个的端口变成指定为根转发。
8.根据权利要求7所述的方法,进一步包括:
响应指定为替换的所述桥的第二个的端口变成指定为根转发,触发所述桥的第二个的端口信息状态机的至少一个状态,其中所述触发使得将RRSTP TC BPDU,在所述桥的第二个的所述RRSTP端口的两个上,向所述桥的第三个发送,并且使得清除在所述桥的第一个上的L2转发表。
9.根据权利要求1所述的方法,进一步包括:
配置所述桥的每一个的相关的硬件以使用所述保留的MAC地址之一将信息传输单元转发到所述桥的各自的一个的CPU;以及
在所述桥的每一个的所述RRSTP端口上支持常规的生成树协议,同时在所述RRSTP端口上支持所述RRSTP;
其中所述关联包括配置由所述桥的每一个利用的转发表,使得所述桥的每一个的第一方向RRSTP端口接收与第一保留的MAC地址相关联的业务以及所述桥的每一个的第二方向RRSTP端口接收与第二保留的MAC地址相关联的业务;以及
在接收到用于第一方向RRSTP端口的指定信息和接收到用于第二方向RRSTP端口的指定信息之后,分别进行第一保留的MAC地址的所述关联和第二保留的MAC地址的所述关联。
10.根据权利要求9所述的方法,进一步包括:
响应在所述桥的第一个检测到链路故障,使用第一保留的MAC地址,在第一方向上,将RRSTP BPDU发送到所述桥的第二个;
响应由所述桥的第二个接收RRSTP BPDU以及所述桥的第二个具有指定为替换的端口,触发所述桥的第二个的端口信息状态机的至少一个状态,其中所述触发使得指定为根转发的所述桥的第二个的端口变成指定为指定转发以及其中指定为替换的所述桥的第二个的端口变成指定为根转发;
响应指定为替换的所述桥的第二个的端口变成指定为根转发,触发所述桥的第二个的端口信息状态机的至少一个状态,其中所述触发使得将RRSTP TC BPDU,在所述桥的第二个的所述RRSTP端口的两个上,向所述桥的第三个发送并且使得清除在所述桥的第一个上的L2转发表;以及
响应所述桥的第三个接收所述RRSTP TC BPDU,触发所述桥的第三个的端口信息状态机的至少一个状态,其中所述触发使得清除在所述桥的第一个上的L2转发表并且使得将RRSTP TC BPDU,在第一方向上,使用第一保留的MAC地址,从所述桥的第二个向所述桥的第四个发送。
Applications Claiming Priority (4)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US63593204P | 2004-12-14 | 2004-12-14 | |
US60/635,932 | 2004-12-14 | ||
US11/176,874 US7564779B2 (en) | 2005-07-07 | 2005-07-07 | Ring rapid spanning tree protocol |
US11/176,874 | 2005-07-07 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN1825832A true CN1825832A (zh) | 2006-08-30 |
CN1825832B CN1825832B (zh) | 2010-05-12 |
Family
ID=36013280
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN2005101343103A Active CN1825832B (zh) | 2004-12-14 | 2005-12-14 | 快速环生成树协议 |
Country Status (5)
Country | Link |
---|---|
EP (1) | EP1672847B1 (zh) |
CN (1) | CN1825832B (zh) |
AT (1) | ATE408288T1 (zh) |
DE (1) | DE602005009643D1 (zh) |
WO (1) | WO2006065795A2 (zh) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101663863B (zh) * | 2007-04-25 | 2012-05-30 | 株式会社山武 | Rstp处理方式 |
CN103581164A (zh) * | 2012-07-20 | 2014-02-12 | 西门子公司 | 用于在可冗余操作的工业通信网络中进行消息传输的方法和用于可冗余操作的工业通信网络的通信设备 |
CN113938419A (zh) * | 2021-10-15 | 2022-01-14 | 湖南八零二三科技有限公司 | 一种交换机rstp收敛增强方法 |
Families Citing this family (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7668084B2 (en) | 2006-09-29 | 2010-02-23 | Honeywell International Inc. | Systems and methods for fault-tolerant high integrity data propagation using a half-duplex braided ring network |
US7903586B2 (en) * | 2006-11-01 | 2011-03-08 | Alcatel Lucent | Ring rapid multiple spanning tree protocol system and method |
US7876688B2 (en) | 2007-03-30 | 2011-01-25 | Nokia Corporation | Traffic protection in a communication network |
GB2448711A (en) * | 2007-04-25 | 2008-10-29 | Ericsson Telefon Ab L M | Recovering from a failure in a communications network |
EP2183885B1 (en) | 2007-08-14 | 2012-06-06 | Telefonaktiebolaget LM Ericsson (publ) | Network reconfiguration method |
TWI395433B (zh) * | 2010-03-10 | 2013-05-01 | Etherwan Systems Inc | 具有延展性之網路系統及其備援方法 |
Family Cites Families (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6801506B1 (en) * | 1999-03-31 | 2004-10-05 | Cisco Technology, Inc. | Method and apparatus for providing fast spanning tree re-starts |
JP4021841B2 (ja) * | 2003-10-29 | 2007-12-12 | 富士通株式会社 | スパニングツリープロトコルにおける制御パケット処理装置および方法 |
US6717922B2 (en) * | 2002-03-04 | 2004-04-06 | Foundry Networks, Inc. | Network configuration protocol and method for rapid traffic recovery and loop avoidance in ring topologies |
JP4020753B2 (ja) * | 2002-10-25 | 2007-12-12 | 富士通株式会社 | リング切替方法 |
KR20050116363A (ko) * | 2002-12-20 | 2005-12-12 | 엔트라시스 네트워크스, 인크. | 스패닝 트리를 결정하는 장치 및 방법 |
CN1510873A (zh) * | 2002-12-26 | 2004-07-07 | 华为技术有限公司 | 基于多生成树协议的域根切换实现方法 |
CN100337428C (zh) * | 2003-01-24 | 2007-09-12 | 华为技术有限公司 | 一种基于生成树协议的环网管理方法 |
CN1302637C (zh) * | 2003-01-28 | 2007-02-28 | 华为技术有限公司 | 一种多生成树协议桥优先级协调方法 |
JP4128974B2 (ja) * | 2004-03-31 | 2008-07-30 | 富士通株式会社 | レイヤ2ループ検知システム |
DE602004004364T2 (de) * | 2004-04-06 | 2007-08-23 | Alcatel Lucent | Schicht 2 Netzwerk mit VPLS |
US7916668B2 (en) * | 2004-12-30 | 2011-03-29 | Alcatel Lucent | Spanning tree protocol with burst avoidance |
-
2005
- 2005-12-12 WO PCT/US2005/045023 patent/WO2006065795A2/en active Application Filing
- 2005-12-14 AT AT05027288T patent/ATE408288T1/de not_active IP Right Cessation
- 2005-12-14 DE DE602005009643T patent/DE602005009643D1/de active Active
- 2005-12-14 CN CN2005101343103A patent/CN1825832B/zh active Active
- 2005-12-14 EP EP05027288A patent/EP1672847B1/en active Active
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101663863B (zh) * | 2007-04-25 | 2012-05-30 | 株式会社山武 | Rstp处理方式 |
CN103581164A (zh) * | 2012-07-20 | 2014-02-12 | 西门子公司 | 用于在可冗余操作的工业通信网络中进行消息传输的方法和用于可冗余操作的工业通信网络的通信设备 |
CN103581164B (zh) * | 2012-07-20 | 2018-04-13 | 西门子公司 | 用于在可冗余操作的工业通信网络中进行消息传输的方法和用于可冗余操作的工业通信网络的通信设备 |
CN113938419A (zh) * | 2021-10-15 | 2022-01-14 | 湖南八零二三科技有限公司 | 一种交换机rstp收敛增强方法 |
Also Published As
Publication number | Publication date |
---|---|
EP1672847A1 (en) | 2006-06-21 |
CN1825832B (zh) | 2010-05-12 |
WO2006065795A2 (en) | 2006-06-22 |
EP1672847B1 (en) | 2008-09-10 |
ATE408288T1 (de) | 2008-09-15 |
DE602005009643D1 (de) | 2008-10-23 |
WO2006065795A3 (en) | 2007-03-15 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN1825832A (zh) | 快速环生成树协议 | |
US8274919B2 (en) | System and method for implementing multiple ring networks using a common link | |
EP1994694B1 (en) | System and method for preventing loops in the presence of control plane failures | |
EP2533475B1 (en) | Method and system for host route reachability in packet transport network access ring | |
US7558878B2 (en) | Optimal sync for rapid spanning tree protocol | |
EP2352253B1 (en) | Method and apparatus for protecting link aggregation group of ethernet ring | |
JP4370999B2 (ja) | ネットワークシステム、ノード及びノード制御プログラム、ネットワーク制御方法 | |
WO2006077001A1 (en) | A method of operating a node in a communications network | |
CN101610221A (zh) | 一种stp切换时ip单播平滑切换的方法及装置 | |
CN107968753B (zh) | 修改媒体接入控制地址转发表的方法和装置 | |
JP5569272B2 (ja) | 中継システム、中継装置、及び中継方法 | |
WO2014029282A1 (zh) | 跨域保护互通方法及系统 | |
CN106789521A (zh) | 一种环网故障倒换方法及环节点 | |
WO2012097595A1 (zh) | 一种共享网状保护实现方法及系统 | |
CN112995002B (zh) | 一种交换机环网的设计方法、交换机及存储介质 | |
US11552882B2 (en) | Efficient propagation of fault routing notifications | |
WO2014075594A1 (zh) | 基于多环结构网络相交环的业务的传输保护方法及装置 | |
JP4467500B2 (ja) | ネットワーク中継装置 | |
JP2009117899A (ja) | レイヤ2ネットワークおよびネットワーク接続装置 | |
CN113794656B (zh) | 一种报文转发方法及设备 | |
CN103166868B (zh) | 用于防邻居震荡的方法和装置 | |
CN102857423A (zh) | 一种分布式链路聚合系统中业务流转发方法及节点 | |
JP4190170B2 (ja) | 迂回経路設定システム | |
Jin et al. | Ethernet ultra-fast switching: a tree-based local recovery scheme | |
KR100917299B1 (ko) | 스패닝 트리에서 링크집합과의 연동을 지원하는 루프 제거방법 |
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 |