网络收敛的方法、网桥和系统的制作方法

文档序号:7693037阅读:110来源:国知局
专利名称:网络收敛的方法、网桥和系统的制作方法
技术领域
本发明涉及通信技术领域,特别涉及一种网络收敛的方法、网桥和系统。
背景技术
STP (Spanning Tree Protocol,生成树协议)属于数据链路层的管理协议,可应用于存在 环路的局域网,通过有选择性地阻塞网络冗余链路,将网络修剪成树状,来达到消除环路的 目的,同时具备链路备份功能。RSTP (Rapid Spanning Tree Protocol,快速生成树协议)是 STP的优化版,它通过多项改善的措施以达到拓扑快速收敛的目的,其中包括P (Proposal) /A (Agreement)协商机制和增加两种端口角色Alternate阻塞端口 (即根端口的备份端口) 和Backup备份端口 (指定端口的备份端口)。 MSTP (Multiple Spanning Tree Protocol,多生 成树协议)是RSTP的优化版,它通过实例映射机制,将VLAN (Virtual Local Area Network, 虚拟局域网)映射到不同的实例中,由于一个域可以包含一个或多个实例,因此可以在每个 域中形成多棵生成树。各个生成树互不干扰,从而能达到数据在VLAN内的互通以及负载分 担的目的。MSTP兼容STP和RSTP。
STP、 RSTP和MSTP均通过BPDU (Bridge Protocol Data Unit,桥协议数据单元)报文 来交换各个网桥的信息,从而确定网络的拓扑结构。在RSTP和MSTP中,BPDU报文中包 含有标志(Flag)字段,参见图1,该标志字段的长度为1个字节,其中,第7个比特位至第 4个比特位分别代表如下标志信息TCA(Topology Change Acknowledgement,拓扑变化应答)、 Agreement (应答)、Forwarding (转发)、Learning (学习),第3个和第2个比特位共同代表 Port role(端口角色),第1个和第0个比特位分别代表:Proposal(协商)和TC(Topology Change, 拓扑变化)。
RSTP和MSTP的P/A协商是通过BPDU报文的Proposal和Agreement这两个标志位来 完成的。在RSTP模式下,进行协商的端口在收到Proposal置位的BPDU报文后,回复一个 对应的Agreement置位的BPDU报文;在MSTP模式下,进行协商的端口在收到Proposal置 位的BPDU报文后,再收到 一个Agreement置位的BPDU报文后,才回复一个对应的Agreement 置位的BPDU报文。其中,Proposal置位的BPDU报文可以简称为协商BPDU报文,Agreement置位的BPDU报文可以简称为应答BPDU报文。参见图2,网桥有一个根端口 A (端口角色 标志位为0x10),两个指定端口 B和C (端口角色标志位为0x11 ), RSTP模式的P/A协商流 程如下
1. 网桥的根端口 A收到协商BPDU报文;
2. 指定端口 B的状态为Block阻塞状态;
3. 指定端口C的状态为阻塞状态;
4. 根端口 A发送应答BPDU报文;
5. 将根端口 A的状态置为转发状态(即把BPDU报文的标志字段的第5个比特位置位);
6. 指定端口 B发送协商BPDU报文;
7. 指定端口 C发送协商BPDU报文;
8. 从指定端口 B收到应答BPDU报文;
9. 将指定端口B的状态置为转发状态;
10. 从指定端口 C收到应答BPDU报文;
11. 将指定端口C的状态置为转发状态。
现有技术中,当网络拓扑发生变化后,网桥的一个端口在Block状态下发起P/A协商, 向另一个端口发送协商BPDU报文,并开始定时器计时,若在一个规定的转发延迟时间 (Forwarding delay time)内收到另一个端口发来的应答BPDU报文,则本端口的状态立即变 为转发状态,开始转发数据报文;否则,本端口转为学习状态,开始学习另一个端口发来的 数据报文的mac信息,但不转发该数据报文。在下一个转发延迟时间内,如果本端口收到了 应答BPDU报文,则本端口的状态也立即变为转发状态,开始转发数据报文;否则,等到当 前的转发延迟时间超时后,本端口的状态立即变为转发状态,开始转发数据报文。
在对现有技术进行分析后,发明人发现
当进行P/A协商的两个端口中存在Backup端口时,由于Backup端口的状态始终保持为 discarding状态,不能向外发送任何BPDU报文,因此无法完成P/A协商,而且,如果发起协 商的端口始终未收到应答BPDU报文,则从阻塞状态转为学习状态,再转为转发状态,整个 收敛过程需要两倍的转发延迟时间,收敛的时间较长,即进行协商的两个端口所在的链路上 数据流量中断的时间较长。

发明内容
为了提高网络收敛的速度,本发明实施例提供了一种网络收敛的方法、网桥和系统。所述技术方案如下
一方面,本发明实施例提供了一种网络收敛的方法,应用于第一网桥,所述方法包括.-当网络拓扑发生变化时,所述第一网桥通过备份端口接收从所述第一网桥的指定端口发
来的协商桥协议数据单元BPDU报文;
所述第一网桥判断预设的标识是否为允许发送BPDU报文,如果是,则根据所述第一网
桥使用的生成树协议的类型,通过所述备份端口回复应答BPDU报文;
所述第一网桥通过所述指定端口收到所述应答BPDU报文后,将所述指定端口的状态设
置为转发状态。
另一方面,本发明实施例还提供了一种网桥,所述网桥包括
接收模块,用于当网络拓扑发生变化时,通过备份端口接收从所述网桥的指定端口发来 的协商BPDU报文;
处理模块,用于在所述接收模块收到所述协商BPDU报文后,判断预设的标识是否为允 许发送BPDU报文,如果是,则根据所述网桥使用的生成树协议的类型,通过所述备份端口 回复应答BPDU报文;
设置模块,用于当所述网桥通过所述指定端口收到所述应答BPDU报文后,将所述指定 端口的状态设置为转发状态。
另一方面,本发明实施例还提供了一种网络收敛的系统,所述系统包括第一网桥、第二 网桥和第三网桥;所述第一网桥以双归属方式分别与网络的所述第二网桥和第三网桥相连;
所述第二网桥和第三网桥,用于建立至少包括所述第二网桥和第三网桥的BPDU隧道, 且进行配置使所述BPDU隧道透传BPDU报文;
所述第一网桥,用于当网络拓扑发生变化时,通过备份端口接收从所述第一网桥的指定 端口通过所述BPDU隧道发来的协商BPDU报文;判断预设的标识是否为允许发送BPDU报 文,如果是,则根据当前使用的生成树协议的类型,通过所述备份端口回复应答BPDU报文; 当通过所述指定端口从所述BPDU隧道收到所述应答BPDU报文后,将所述指定端口的状态 设置为转发状态。
本发明实施例提供的技术方案的有益效果是
通过设置标识使Backup端口发送BPDU报文,从而完成与指定端口进行生成树协议下 的P/A协商,指定端口收到应答BPDU报文后,将端口设置为转发状态,达到了端口状态快 速转换的目的,縮短了收敛的时间,提高了网络收敛的速度。


图1是现有技术中BPDU报文中标志字段的格式示意图2是现有技术中RSTP模式的P/A协商流程示意图3是本发明实施例1提供的网络收敛的方法流程图4是本发明实施例1提供的双归属组网示意图5是本发明实施例2提供的网桥结构图6是本发明实施例3提供的网络收敛的系统结构图。
具体实施例方式
为使本发明的目的、技术方案和优点更加清楚,下面将结合附图对本发明实施方式作进 一步地详细描述。
本发明实施例提供的网络收敛的方法,应用于网桥,具体包括当网络拓扑发生变化时, 该网桥通过备份端口接收从该网桥的指定端口发来的协商BPDU报文;该网桥判断预设的标
识是否为允许发送BPDU报文,如果是,则根据该网桥使用的生成树协议的类型,通过备份 端口回复应答BPDU报文;该网桥通过指定端口收到应答BPDU报文后,将指定端口的状态 设置为转发状态。
本发明实施例中的网桥可以应用RSTP ,或者应用MSTP ,也可以同时应用RSTP和MSTP 。 实施例1
参见图3,本发明实施例提供了一种网络收敛的方法,应用于网桥,为了描述方便,在
本实施例中记为第一网桥,该方法具体包括
301:第一网桥在本地预设标识,用来设置是否允许第一网桥的备份Backup端口发送 BPDU报文。其中,预设标识有多种方式,如可以在第一网桥上配置一个标识变量Flag,保 存在内存中,并规定该标识变量Flag的值有两种,"1"和"0",如果设置标识变量Flag二l, 则表示允许Backup端口发送BPDU报文,如果设置标识变量Flag=0,则表示遵循现有的标 准协议,不允许Backup端口发送BPDU报文。在初始化时,可以根据实际情况设置该标识 变量的值,在本实施例中设置为l。
302:当网络拓扑发生变化时,通过生成树协议计算,在第一网桥上选出指定端口和 Backup端口 ,第一网桥通过Backup端口接收从第一网桥的指定端口发来的协商BPDU报文。
进一步地,第一网桥收到协商BPDU报文后,还可以在本地清空转发表项,如MAC(Media Access Control,介质访问控制)表、ARP (Address Resolution Protocol,地址解析协议)表等等,从而使第一网桥可以重新学习转发信息,建立新的转发表项。
303:第一网桥判断预设的标识是否为允许发送BPDU报文,如果是,则执行304;否则, 执行306。
304:第一网桥根据当前使用的生成树协议的类型,通过Backup端口回复应答BPDU报文。
具体地,第一网桥可以判断当前使用的生成树协议的类型,如果为RSTP,则第一网桥通 过Backup端口回复应答BPDU报文;如果为MSTP,则第一网桥从Backup端口在收到一个 应答BPDU报文后,通过Backup端口回复应答BPDU报文。
305:第一网桥通过指定端口收到应答BPDU报文后,将指定端口的状态设置为转发状 态,开始转发数据报文,然后结束。
306:按照现有流程进行处理,即第一网桥不通过Backup端口发送应答BPDU报文,然 后结束。
参见图4,为本发明实施例中的技术方案应用在双归属组网环境下的示意图。第一网桥C 位于企业网中,以双归属方式分别与城域网的第二网桥A和第三网桥B相连,这种组网环境 下,需要先建立BPDU隧道,该BPDU隧道至少包括第二网桥A和第三网桥B,且该BPDU 隧道被配置为透传BPDU报文,第一网桥C与BPDU隧道组成了局部MSTP/RSTP网络。其 中,透传BPDU报文是指在该BPDU隧道中,BPDU报文不会被所经过的设备的生成树协议 进行分析,而是直接被该设备转发。
其中,建立透传BPDU报文的BPDU隧道有多种实现方式,如图4中A的GE2/0/2端口 与B的端口 GE3/0/2连接,C发出的BPDU报文所带TAG的VLAN标号为10,则在A和B 之间建立BPDU隧道时,可以分别配置如下
1) 在A上配置端口 GE2/0/1和GE2/0/2转发VLAN标号为10的BPDU报文,且两 个端口均使能BPDU隧道功能;
2) 在B上配置端口 GE3/0/1和GE3/0/2转发VLAN标号为10的BPDU报文,且两个 端口均使能BPDU隧道功能;
具体的配置过程为现有技术,此处不再赘述。
通过BPDU隧道透传BPDU报文,使得第一网桥C的一个端口发送的BPDU报文,可 以被该网桥的另一个端口收到。如第一网桥C的指定瑞口GEl/0/l发送协商BPDU报文,经 BPDU隧道传输后,被第一网桥C的Backup端口 GE1/0/2收到,从而开始进行P/A协商。当 第一网桥C的两个端口协商成功后,通过生成树协议进行计算,C就会阻塞其中的一个端口,从而实现在局部MSTP/RSTP网络内消除环路。另外,当第一网桥C的两个端口进行P/A协 商的过程中,第二网桥A或第三网桥B收到应答BPDU报文后,均在本地清空转发表项(如 MAC表、ARP表),从而使本地设备可以重新学习转发信息,建立新的转发表项。
本实施例通过设置标识使Backup端口发送BPDU报文,从而完成与指定端口进行生成 树协议下的P/A协商,指定端口收到应答BPDU报文后,将端口设置为转发状态,达到了端 口状态快速转换的目的,收敛时间能达到l秒以内(实际收敛时间与BPDU隧道的性能和长 度有关),无需设备等待两倍的转发延迟时间,縮短了收敛的时间,提高了网络收敛的速度。
实施例2
参见图5,本发明实施例还提供了一种网桥,具体包括
接收模块,用于当网络拓扑发生变化时,通过备份端口接收从网桥的指定端口发来的协 商BPDU报文;
处理模块,用于在接收模块收到协商BPDU报文后,判断预设的标识是否为允许发送 BPDU报文,如果是,则根据网桥使用的生成树协议的类型,通过备份端口回复应答BPDU 报文;
设置模块,用于当网桥通过指定端口收到应答BPDU报文后,将指定端口的状态设置为 转发状态。
其中,处理模块具体包括
第一判断单元,用于在接收模块收到协商BPDU报文后,判断预设的标识是否为允许发 送BPDU报文;
第一处理单元,用于当第一判断单元判断出标识为允许发送BPDU报文,且网桥使用的 生成树协议的类型为快速生成树协议时,通过备份端口回复应答BPDU报文。 或者,处理模块具体包括
第二判断单元,用于在接收模块收到协商BPDU报文后,判断预设的标识是否为允许发 送BPDU报文;
第二处理单元,用于当第二判断单元判断出标识为允许发送BPDU报文,且网桥使用的 生成树协议的类型为多生成树协议时,从备份端口在收到一个应答BPDU报文后,通过备份 端口回复应答BPDU报文。
当上述网桥同时应用RSTP和MSTP时,处理模块可以同时包括第一处理单元和第二处 理单元。
进一步地,上述网桥还包括清空模块,用于当接收模块收到协商BPDU报文后,在本地清空转发表项。 本实施例中的网桥通过设置标识使Backup端口发送BPDU报文,从而完成与指定端口 进行生成树协议下的P/A协商,指定端口收到应答BPDU报文后,将端口设置为转发状态, 达到了端口状态快速转换的目的,收敛时间能达到l秒以内(实际收敛时间与BPDU隧道的 性能和长度有关),无需设备等待两倍的转发延迟时间,縮短了收敛的时间,提高了网络收敛 的速度。
实施例3
参见图6,本发明实施例还提供了一种网络收敛的系统,包括第一网桥、第二网桥和第 三网桥;第一网桥以双归属方式分别与网络的第二网桥和第三网桥相连;
第二网桥和第三网桥,用于建立至少包括第二网桥和第三网桥的BPDU隧道,且进行配 置使BPDU隧道透传BPDU报文;
第一网桥,用于当网络拓扑发生变化时,通过备份端口接收从第一网桥的指定端口通过 BPDU隧道发来的协商BPDU报文;判断预设的标识是否为允许发送BPDU报文,如果是, 则根据当前使用的生成树协议的类型,通过备份端口回复应答BPDU报文;当通过指定端口 从BPDU隧道收到应答BPDU报文后,将指定端口的状态设置为转发状态。
本实施例通过第一网桥设置标识使Backup端口通过第二网桥和第三网桥建立的BPDU 隧道发送BPDU报文,从而完成与指定端口进行生成树协议下的P/A协商,指定端口收到应 答BPDU报文后,将端口设置为转发状态,达到了端口状态快速转换的目的,收敛时间能达 到l秒以内(实际收敛时间与BPDU隧道的性能和长度有关),无需设备等待两倍的转发延 迟时间,縮短了收敛的时间,提高了网络收敛的速度。
本发明实施例可以利用软件实现,相应的软件程序可以存储在可读取的存储介质中,例 如,网桥的硬盘、缓存或光盘中。
以上所述仅为本发明的较佳实施例,并不用以限制本发明,凡在本发明的精神和原则之 内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
权利要求
1. 一种网络收敛的方法,应用于第一网桥,其特征在于,所述方法包括当网络拓扑发生变化时,所述第一网桥通过备份端口接收从所述第一网桥的指定端口发来的协商桥协议数据单元BPDU报文;所述第一网桥判断预设的标识是否为允许发送BPDU报文,如果是,则根据所述第一网桥使用的生成树协议的类型,通过所述备份端口回复应答BPDU报文;所述第一网桥通过所述指定端口收到所述应答BPDU报文后,将所述指定端口的状态设置为转发状态。
2. 根据权利要求l所述的网络收敛的方法,其特征在于,所述第一网桥以双归属方式分 别与网络的第二网桥和第三网桥相连,所述第一网桥通过预先建立的BPDU隧道接收所述协 商BPDU报文和回复所述应答BPDU报文,所述BPDU隧道至少包括所述第二网桥和第三网 桥,且所述BPDU隧道被配置为透传BPDU报文。
3. 根据权利要求1所述的网络收敛的方法,其特征在于,所述根据所述第一网桥使用的 生成树协议的类型,通过所述备份端口回复应答BPDU报文,具体包括当所述第一网桥使用的生成树协议的类型为快速生成树协议时,通过所述备份端口回复 应答BPDU报文。
4. 根据权利要求l所述的网络收敛的方法,其特征在于,所述根据所述第一网桥使用的 生成树协议的类型,通过所述备份端口回复应答BPDU报文,具体包括当所述第一网桥使用的生成树协议的类型为多生成树协议时,从所述备份端口在收到一 个应答BPDU报文后,通过所述备份端口回复应答BPDU报文。
5. 根据权利要求l所述的网络收敛的方法,其特征在于,所述第一网桥通过备份端口接 收从所述第一网桥的指定端口发来的协商桥协议数据单元BPDU报文之后,还包括所述第一网桥在本地清空转发表项。
6. 根据权利要求2所述的网络收敛的方法,其特征在于,所述第一网桥通过所述指定端口收到所述应答BPDU报文之前,还包括所述第二网桥或第三网桥收到所述应答BPDU报文,在本地清空转发表项。
7. —种网桥,其特征在于,所述网桥包括接收模块,用于当网络拓扑发生变化时,通过备份端口接收从所述网桥的指定端口发来 的协商桥协议数据单元BPDU报文;处理模块,用于在所述接收模块收到所述协商BPDU报文后,判断预设的标识是否为允 许发送BPDU报文,如果是,则根据所述网桥使用的生成树协议的类型,通过所述备份端口 回复应答BPDU报文;设置模块,用于当所述网桥通过所述指定端口收到所述应答BPDU报文后,将所述指定 端口的状态设置为转发状态。
8. 根据权利要求7所述的网桥,其特征在于,所述处理模块具体包括-第一判断单元,用于在所述接收模块收到所述协商BPDU报文后,判断预设的标识是否为允许发送BPDU报文;第一处理单元,用于当所述第一判断单元判断出所述标识为允许发送BPDU报文,且所 述网桥使用的生成树协议的类型为快速生成树协议时,通过所述备份端口回复应答BPDU报 文。
9. 根据权利要求7所述的网桥,其特征在于,所述处理模块具体包括 第二判断单元,用于在所述接收模块收到所述协商BPDU报文后,判断预设的标识是否为允许发送BPDU报文;第二处理单元,用于当所述第二判断单元判断出所述标识为允许发送BPDU报文,且所 述网桥使用的生成树协议的类型为多生成树协议时,从所述备份端口在收到一个应答BPDU 报文后,通过所述备份端口回复应答BPDU报文。
10. 根据权利要求7所述的网桥,其特征在于,所述网桥还包括:清空模块,用于当所述接收模块收到所述协商BPDU报文后,在本地清空转发表项。
11. 一种网络收敛的系统,其特征在于,所述系统包括第一网桥、第二网桥和第三网桥;所述第一网桥以双归属方式分别与网络的所述第二网桥和第三网桥相连;所述第二网桥和第三网桥,用于建立至少包括所述第二网桥和第三网桥的BPDU隧道, 且进行配置使所述BPDU隧道透传BPDU报文;所述第一网桥,用于当网络拓扑发生变化时,通过备份端口接收从所述第一网桥的指定 端口通过所述BPDU隧道发来的协商BPDU报文;判断预设的标识是否为允许发送BPDU报 文,如果是,则根据当前使用的生成树协议的类型,通过所述备份端口回复应答BPDU报文; 当通过所述指定端口从所述BPDU隧道收到所述应答BPDU报文后,将所述指定端口的状态 设置为转发状态。
全文摘要
本发明公开了一种网络收敛的方法、网桥和系统,属于通信技术领域。所述方法包括当网络拓扑发生变化时,第一网桥通过备份端口接收从该网桥的指定端口发来的协商BPDU报文;判断预设标识是否为允许发送BPDU报文,若是则根据当前生成树协议的类型通过备份端口回复应答BPDU报文;当通过指定端口收到应答BPDU报文后,将该端口状态设置为转发状态。所述网桥包括接收模块、处理模块和设置模块。所述系统包括第一网桥、第二网桥和第三网桥。本发明实现了与备份端口进行生成树协议下的P/A协商,达到了端口状态快速转换的目的,缩短了收敛的时间,提高了网络收敛的速度。
文档编号H04L29/06GK101534211SQ20081010186
公开日2009年9月16日 申请日期2008年3月13日 优先权日2008年3月13日
发明者于庆秋, 何智峰 申请人:华为技术有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1