一种在虚拟二层网络中避免环路的方法

文档序号:7655714阅读:886来源:国知局
专利名称:一种在虚拟二层网络中避免环路的方法
技术领域
本发明涉及虚拟二层网络技术,特别涉及一种在虚拟二层网络中避免环路的方法。
背景技术
STP (Spanning Tree Protocol,生成树协议)是根据IEEE协会制定的802. ID标 准建立的,用于在局域网中消除数据链路层物理环路的协议。运行该协议的设备通过彼此 交互信息发现网络中的环路,并有选择地对某些端口进行阻塞,最终将环路网络结构修剪 成无环路的树型网络结构,从而防止报文在环路网络中不断增生和无限循环,避免设备由 于重复接收相同的报文造成的报文处理能力下降的问题发生。MSTP (Multiple Spanning Tree Protocol,多生成树协议)由 IEEE 制定的 802. Is 标准定义,它可以弥补STP和RSTP的缺陷,既可以快速收敛,又能使不同VLAN的流量沿各 自的路径转发,从而为冗余链路提供了更好的负载分担机制。MSTP的主要特点如下1) MSTP设置VLAN映射表(即VLAN与生成树的对应关系表),将VLAN和生成树联 系起来。通过增加“实例”(将多个VLAN整合到一个集合中)这个概念,可以将多个VLAN 捆绑到一个实例中,以节省通信开销和资源占用率。^MSTP将一个交换网络划分成多个域,每个域内形成多棵生成树,生成树之间彼 此独立。:3)MSTP将环路网络修剪成为一个无环的树型网络,避免报文在环路网络中的增生 和无限循环,同时还提供了数据转发的多个冗余路径,在数据转发过程中实现VLAN数据的 负载分担。目前,MSTP广泛运用于二层网络中,用于检测并阻塞二层网络中可能出现的物 理环路,防止广播报文在二层网络中无限循环。然而,现有的MSTP仅仅运用于二层交换 网络中,对于VPLS或PBB等虚拟二层网络却无法支持。这里,VPLS (Virtual Private LAN krvice,虚拟专用局域网)是在公用网络中提供的一种点到多点的层2VPN业务; PBB (Provider backbone bridge,运营商骨干桥)是独立于电信自身的IP MAN,目前主要采 用MAC in MAC技术来提供点对点专线业务。在一些比较常见的VPLS和VPLS/PBB双栈组网应用中,只能依靠组网方式和增加 限制来避免环路。例如在图1 所示VPLS分层组网应用中,UPEl (UPE :User_facing Provider Edge, 靠近用户侧的PE设备)分别与NPEl (NPE =Network Provider Edge,网络核心PE设备)、 NPE2建立主备PW(Pseudo Wire,虚链路)连接,为了避免出现环路,NPEl与NPE2之间不能 建立PW连接。正常情况下流量将在UPEl与NPEl之间或者UPEl与NPE2之间转发,NPEl/ NPE2只能将来自UPEl流量转发到远端NPE或者将远端NPE的流量转发到本地UPE。倘若 NPEl与NPE2之间建立了 PW连接,将会产生UPE1-NPE1-NPE2-UPE1这样的环路流量。当然, 可以在UPEl上将来自NPE2的流量丢弃,但是NPE2发送到UPEl的流量势必会影响UPEl的正常报文转发;并且,在UPEl设备发生主备PW切换或者回切时,可能导致瞬间环路或者 丢包,影响VPLS流量转发质量。因此,为了避免这种情况,一般通过组网方式进行规避,即 NPEl与NPE2之间不建立PW连接,这导致NPEl与NPE2下不能挂接CE (Customer Edge,用 户网络边缘设备)。再例如,在VPLS/PBB双栈组网应用中,所有VPLS域到PBB域的流量都必须经过中 心双栈设备转接。倘若只有一台中心双栈设备,那么一旦中心双栈设备发生故障,VPLS域与 PBB域之间的流量就无法转发;但是当存在多台中心双栈设备时,必然会在整个VPLS/PBB 域内产生环路,如图2所示。图2中,PE(Provider Edge,服务提供商网络上的边缘设备)为VPLS域内的边缘 设备,PE2/BEB2和PE3/BEB3为两台双栈设备,BEBl为PBB域内的边缘设备,PEl发出的广 播报文将沿PE1-PE2-BEB1-BEB3-PE1路径形成环路。为了避免形成环路,双栈组网目前还 是仅限于只有一个中心双栈设备的组网,而这种组网方式本身存在很大安全隐患。

发明内容
本发明提供了一种在虚拟二层网络中避免环路的方法,以在虚拟二层网络的公网 PW环形连接之间形成有效的环路检测,并修剪多余的连接去除环路,从而扩展VPLS/PBB等 虚拟二层网络的组网运用。本发明提供的一种在虚拟二层网络中避免环路的方法,包括A、在虚拟二层网络的网络设备的虚拟交换实例VSI中使能多生成树协议MSTP,并 将VSI实例与一个MSTP实例绑定;B、所述MSTP实例发送桥接协议数据单元BPDU报文进行环路检测。较佳地,所述BPDU报文的目的媒体接入控制MAC地址为预先设置的特定地址,源 MAC地址为发送所述BPDU报文的设备的MAC地址。较佳地,所述预先设置的特定地址为01-80-C2-VSI实例的标识。较佳地,所述虚拟二层网络包括虚拟专用局域网VPLS分层网络和VPLS/运营商 骨干桥PBB双栈组网网络;所述VSI实例包括VPLS实例和PBB实例。较佳地,所述虚拟二层网络的网络设备为服务提供商网络上的边缘设备PE ;该方法在MSTP实例发送BPDU报文进行环路检测之前,进一步包括如果第一 PE 与第二 PE建立了主虚链路PW连接,与第三PE建立了备PW连接,并且第二 PE与第三PE之 间存在Pff连接,则将第一 PE设置为根桥,在第一 PE上将MSTP优先级设置为最高;在第二 PE设备上, 将第二 PE与第一 PE之间的PW连接设置为根PW连接,并将第二 PE与第三PE之间的PW连 接作为指定PW连接;在第三PE上,将第三PE与第二 PE之间的PW连接作为指定PW连接, 并将第三PE与第一 PE之间的PW连接作为阻断PW连接。较佳地,所述虚拟二层网络的网络设备为骨干边缘桥BEB ;该方法在MSTP实例发送BPDU报文进行环路检测之前,进一步包括如果第一 BEB 分别与第二 BEB和第三BEB建立了 PW连接,并且第二 BEB与第三BEB之间存在PW连接, 则
将第一 BEB设置为根桥,在第一 BEB上将MSTP优先级设置为最高;在第二 BEB设 备上,将第二 BEB与第一 BEB之间的PW连接设置为根PW连接,并将第二 BEB与第三BEB之 间的PW连接作为指定PW连接;在第三BEB上,将第三BEB与第二 BEB之间的PW连接作为 指定PW连接,并将第三BEB与第一 BEB之间的PW连接作为阻断PW连接。在所述A之后可以进一步包括在VSI实例内为所述网络设备指定发送BPDU报文的对端;在接收到BPDU报文时,网络设备将目的MAC为预先设置的特定地址的BPDU报文 交由控制层处理;在接收到来自本地用户设备侧的BPDU报文时,当作普通数据报文处理;在接收到来自远端网络设备侧的BPDU报文时,当作普通数据报文处理。在所述A之后可以进一步包括进行如下映射将VSI实例虚链路PW的路径开销对应于MSTP实例的端口路径开销;将VSI所在网络设备的标识作为扩展MSTP域内的桥标识;将VSI实例的PW所在PW设备的出接口对应于MSTP域内的普通端口。由上述技术方案可见,本发明提供的在虚拟二层网络中避免环路的方法通过在虚 拟二层网络的网络设备的VSI实例中使能MSTP,并将VSI实例与一个MSTP实例绑定,从而, MSTP实例可以在虚拟二层网络中发送BPDU报文进行环路检测,并修剪多余的连接去除环 路。将本发明方法应用与VPLS分层网络或VPLS/PBB双栈组网网络,可以在公网PW环形连 接之间形成有效的环路检测,从而扩展VPLS/PBB的组网运用。


图1为现有VPLS分层组网应用中避免环路的组网方式示意图;图2为现有VPLS/PBB双栈组网应用中避免环路的组网方式示意图;图3为本发明一实施例中VPLS/PBB分层双栈组网中实现MSTP技术的示意图;图4为本发明一实施例中的报文转发示意图。
具体实施例方式为使本发明的目的、技术方案及优点更加清楚明白,以下参照附图并举实施例,对 本发明作进一步详细说明。本发明的主要思想是通过在虚拟二层网络的网络设备的VSI实例中使能MSTP, 并将VSI实例与一个MSTP实例绑定,从而,MSTP实例可以在虚拟二层网络中发送桥接协议 数据单元(BPDU,Bridge Protocol Data Unit)报文进行环路检测,并修剪多余的连接去除 环路,从而扩展VPLS/PBB的组网运用。本发明中,VSI实例包括VPLS实例和PBB实例,以VPLS分层组网和VPLS/PBB双 栈组网为例,其中,VPLS内部CE双归属的情形与VPLS分层类似,以分层VPLS为例进行说 明即可,如图3所示。PEl分别与PE2和PE3建立了主备PW连接,PE2和PE3之间建立VPLS连接,BEB4 与PE2、PE3之间建立了 MAC IN MAC连接。上述组网中有两个可能出现的环路,分别是 PE1-PE2-PE3-PE1和BEB4_PE2_PE3_BEB4。为了避免这两个环路,可以在PE设备的VSI实例中使能MSTP,并将VSI实例与MSTP的一个实例绑定,由MSTP发送特定的桥接协议数据单 元(BPDU,Bridge Protocol Data Unit)进行环路检测。为了与现有用户网络中MSTP BPDU报文相区分,需要对VSI的BPDU报文进行 扩展,使之能够携带VSI信息并能够被各个PE/BEB设备接收。通常情况下,BPDU的目 的 MAC 为 01-80-C2-00-00-00 和 01-80-C2-00-00-08,扩展后的 BPUD 报文其目的 MAC 为 01-80-C2-VSI ID, VSI ID 为 1,则对应其 BPDU 报文目的 MAC 为 01-80-C2-01-00_00,PE/ BEB设备识别该目的MAC地址。BPDU报文的源MAC为发送端设备的MAC,也就是发送该BPDU 报文的设备的MAC地址。在PEl设备的VSI实例内使能MSTP的方法如下vsi vsil static//仓丨J建 vsil 实例vsi vsil-id 1 //vsi 1 实例的 IDpeer 2. 2. 2. 2enable mstp// 创建到 PE2 的 PW 连接并使能 MSTPpeer 3. 3. 3. 3enable mstp// 创建到 PE2 的 PW 连接并使能 MSTP在BEB4设备的VSI实例内使能MSTP的方法如下vsi vsil i-sid 1//创建 vsil 实例peer 2-2_2enable mstp// 创建到 PE2 的 PW 连接并使能 MSTPpeer 3-3_3enable mstp// 创建到 PE3 的 PW 连接并使能 MSTPPE2和PE3上的VSI实例是VPLS/PBB双栈实例,因此,需要包含VPLS对端和PBB 对端的MSTP配置,PE2设备上使能MSTP方法如下vsi vsil i-sid 1vsi vsil-id 1peer 1. 1. 1. 1 enable mstppeer 3. 3. 3. 3enable mstppeer 4-4_4enable mstpPE3设备上使能MSTP方法如下vsi vsi li-sid 1vsi vsil-id 1peer 1. 1. 1. Ienable mstppeer 2. 2. 2. 2enable mstppeer 4-4_4enable mstp经过上述处理后,在分层VPLS域内的各个PE设备的VPLS实例内使能了 MSTP,PE 设备之间将通过定时发送扩展的BPDU协议报文进行MSTP环路检测。与普通的MSTP BPDU 报文相比,扩展后的BPDU报文其目的MAC为00-80-C2-VSI ID,其源MAC为发送端设备的 MAC,且外层封装VPLS隧道头部。为了在VSI域内实现正确的MSTP检测,需要进行以下设置1)在VSI实例内为PE设备指定发送BPDU报文的对端,PE设备发送BPDU报文时 只向指定的VSI实例内的Peer发送,而不能向没有指定的Peer对端和本地CE侧发送该协 议报文。2)在接收BPDU报文时,接收到的报文是一个携带VPLS标签的二层报文,PE设备识别扩展的BPDU的目的MAC属性,转发芯片将报文Trap上CPU,交由PE设备的控制层处理。3)对于本地CE侧进入的MSTP BPDU协议报文,当作普通数据报文处理。4)对于远端PE侧进入的MSTP BPDU协议报文,当作普通数据报文处理。扩展后的BPDU报文格式如表1所示
权利要求
1.一种在虚拟二层网络中避免环路的方法,其特征在于,包括A、在虚拟二层网络的网络设备的虚拟交换实例VSI中使能多生成树协议MSTP,并将 VSI实例与一个MSTP实例绑定;B、所述MSTP实例发送桥接协议数据单元BPDU报文进行环路检测。
2.根据权利要求1所述的方法,其特征在于所述BPDU报文的目的媒体接入控制MAC地址为预先设置的特定地址,源MAC地址为发 送所述BPDU报文的设备的MAC地址。
3.根据权利要求2所述的方法,其特征在于所述预先设置的特定地址为01-80-C2-VSI实例的标识。
4.根据权利要求1至3任一项所述的方法,其特征在于所述虚拟二层网络包括虚拟专用局域网VPLS分层网络和VPLS/运营商骨干桥PBB双 栈组网网络;所述VSI实例包括VPLS实例和PBB实例。
5.根据权利要求4所述的方法,其特征在于所述虚拟二层网络的网络设备为服务提供商网络上的边缘设备PE ;该方法在MSTP实例发送BPDU报文进行环路检测之前,进一步包括如果第一 PE与第 二 PE建立了主虚链路PW连接,与第三PE建立了备PW连接,并且第二 PE与第三PE之间存 在PW连接,则将第一 PE设置为根桥,在第一 PE上将MSTP优先级设置为最高;在第二 PE设备上,将 第二 PE与第一 PE之间的PW连接设置为根PW连接,并将第二 PE与第三PE之间的PW连接 作为指定PW连接;在第三PE上,将第三PE与第二 PE之间的PW连接作为指定PW连接,并 将第三PE与第一 PE之间的PW连接作为阻断PW连接。
6.根据权利要求4所述的方法,其特征在于所述虚拟二层网络的网络设备为骨干边缘桥BEB ;该方法在MSTP实例发送BPDU报文进行环路检测之前,进一步包括如果第一 BEB分别 与第二 BEB和第三BEB建立了 PW连接,并且第二 BEB与第三BEB之间存在PW连接,则将第一 BEB设置为根桥,在第一 BEB上将MSTP优先级设置为最高;在第二 BEB设备上, 将第二 BEB与第一 BEB之间的PW连接设置为根PW连接,并将第二 BEB与第三BEB之间的 PW连接作为指定PW连接;在第三BEB上,将第三BEB与第二 BEB之间的PW连接作为指定 PW连接,并将第三BEB与第一 BEB之间的PW连接作为阻断PW连接。
7.根据权利要求2或3所述的方法,其特征在于,在所述A之后进一步包括在VSI实例内为所述网络设备指定发送BPDU报文的对端;在接收到BPDU报文时,网络设备将目的MAC为预先设置的特定地址的BPDU报文交由 控制层处理;在接收到来自本地用户设备侧的BPDU报文时,当作普通数据报文处理;在接收到来自远端网络设备侧的BPDU报文时,当作普通数据报文处理。
8.根据权利要求4所述的方法,其特征在于,在所述A之后进一步包括进行如下映射将VSI实例虚链路PW的路径开销对应于MSTP实例的端口路径开销;将VSI所在网络设备的标识作为扩展MSTP域内的桥标识; 将VSI实例的PW所在PW设备的出接口对应于MSTP域内的普通端口。
全文摘要
本发明提供了一种在虚拟二层网络中避免环路的方法,该方法包括在虚拟二层网络的网络设备的VSI中使能MSTP,并将VSI实例与一个MSTP实例绑定;所述MSTP实例发送BPDU报文进行环路检测。应用本发明能够在虚拟二层网络中修剪多余的连接,去除环路。
文档编号H04L12/46GK102143026SQ20111011173
公开日2011年8月3日 申请日期2011年4月29日 优先权日2011年4月29日
发明者宋小恒, 彭剑远, 郑国良 申请人:杭州华三通信技术有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1