CN102333028B - 一种分层式二层虚拟专用网发送报文的方法及通信设备 - Google Patents
一种分层式二层虚拟专用网发送报文的方法及通信设备 Download PDFInfo
- Publication number
- CN102333028B CN102333028B CN201110171545.5A CN201110171545A CN102333028B CN 102333028 B CN102333028 B CN 102333028B CN 201110171545 A CN201110171545 A CN 201110171545A CN 102333028 B CN102333028 B CN 102333028B
- Authority
- CN
- China
- Prior art keywords
- equivalent
- mac address
- message
- virtual link
- learned
- 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
- 238000000034 method Methods 0.000 title claims abstract description 55
- 238000004891 communication Methods 0.000 title claims description 40
- 238000005538 encapsulation Methods 0.000 claims description 33
- 230000008878 coupling Effects 0.000 claims description 3
- 238000010168 coupling process Methods 0.000 claims description 3
- 238000005859 coupling reaction Methods 0.000 claims description 3
- 230000007246 mechanism Effects 0.000 claims description 3
- 230000008569 process Effects 0.000 description 24
- 238000012545 processing Methods 0.000 description 16
- 238000010586 diagram Methods 0.000 description 14
- 230000006855 networking Effects 0.000 description 4
- 238000001514 detection method Methods 0.000 description 3
- 230000008901 benefit Effects 0.000 description 2
- 230000009977 dual effect Effects 0.000 description 2
- 101150082208 DIABLO gene Proteins 0.000 description 1
- 102100033189 Diablo IAP-binding mitochondrial protein Human genes 0.000 description 1
- MHABMANUFPZXEB-UHFFFAOYSA-N O-demethyl-aloesaponarin I Natural products O=C1C2=CC=CC(O)=C2C(=O)C2=C1C=C(O)C(C(O)=O)=C2C MHABMANUFPZXEB-UHFFFAOYSA-N 0.000 description 1
- 230000002457 bidirectional effect Effects 0.000 description 1
- 230000007423 decrease Effects 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 238000012423 maintenance Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000004806 packaging method and process Methods 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
Images
Classifications
-
- 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/4633—Interconnection of networks using encapsulation techniques, e.g. tunneling
-
- 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/66—Layer 2 routing, e.g. in Ethernet based MAN's
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本发明提供了一种分层式二层虚拟专用网发送报文的方法,其中该方法在等价虚链路学习到同一MAC地址,则不删除之前学习到该MAC地址的等价虚链路的路径信息,可以避免主用虚链路与备用虚链路切换造成的MAC地址重新学习导致的报文丢失或广播报文。
Description
技术领域
本发明涉及通信技术领域,尤其涉及一种分层式二层虚拟专用网发送报文的方法以及通信设备。
背景技术
二层虚拟专用网(L2VPN)可以有多种组网方式,如虚拟专用局域网(VPLS)、运营商骨干桥(PBB)以及VPLS/PBB双栈备份等。
在L2VPN中,虚链路(PW,Pseudo Wire)是公网上的虚拟链路通道,同一虚拟交换实例(VSI,virtual switch instance)运营商边缘设备(PE,ProviderEdge)之间建立和维护PW并将二层协议帧进行封装后在PW上传输、交换,使广域范围内多个局域网在数据链路层面整合成一个网络,提供虚拟的以太网服务。
在分层式二层虚拟专用网(H-L2VPN)中,通常采用主备PW备份的方式来保证PW链路的可靠性。在正常状态下,优先选择主用PW链路作为转发路径,当主用PW链路故障时,将主用PW链路的流量切换到备用PW链路,保护用户流量。
发明内容
为实现上述目的,本发明实施例一种分层式二层虚拟专用网发送报文的方法,该方法包括:
第一对端节点通过等价多路径组的每个等价虚链路连接每个第二对端节点;
第一对端节点通过任一等价虚链路接收相连的第二对端节点发送的具有转发隧道标识的封装报文时,将封装报文的转发隧道标识解封装,
第一对端节点确定解封装报文中用户源MAC地址是未学习的MAC地址,则记录用户源MAC地址以及学习到用户源MAC地址的路径信息;其中,学习到用户源MAC地址的路径信息至少包含等价多路径组的标识以及封装报文当前到达的等价虚链路的标识;
根据解封装报文的用户目的MAC将解封装报文通过相应的接入电路转发到用户侧边缘设备。
为实现上述目的,本发明还提供了一种分层式二层虚拟专用网发送报文的通信设备,该通信设备包括:存储器,处理器,通信接口以及耦合存储器、处理器和通信接口的互连机构;其中
存储器存储有第一转发信息表以及第二转发信息表;
处理器至少包括:链路单元,用于建立属于一个等价多路径组的多个等价虚链路并通过每个等价虚链路连接每个对端节点;
转发单元,通过连接于通信接口的任一等价虚链路接收相连的第二对端节点发送的具有转发隧道标识的封装报文,封装报文的转发隧道标识解封装,在存储器中查找学习到用户源MAC地址的路径信息,若未查找到,则在存储器中记录用户源MAC地址以及学习到用户源MAC地址的路径信息,并根据解封装报文中用户目的MAC将解封装报文通过连接于通信接口的接入电路转发到相连用户侧边缘设备;
其中,学习到用户源MAC地址的路径信息至少包含等价多路径组的标识以及封装报文当前到达的等价虚链路的标识。
本实施例的有益效果之一在于,在等价虚链路学习到同一MAC地址,则不删除之前学习到该MAC地址的等价虚链路的路径信息,可以避免主用虚链路与备用虚链路切换造成的MAC地址重新学习导致的报文丢失或广播报文。
附图说明
图1为本发明实施例提供的二层虚拟专用网报文发送方法的流程图;
图2为本发明实施例提供的二层虚拟专用网报文的设备的框图;
图3为本发明实施例提供一种虚拟专用服务的网络架构示意图;
图4为本发明实施例提供一种运营商骨干桥的网络架构示意图;
图5为本发明实施例提供一种PBB/VPLS双栈网络架构示意图;
图6为本发明实施例提供的另一种PBB/VPLS双栈网络架构示意图;
图7为现有PBB/VPLS双栈网络架构示意图;
图8为本发明实施例提供的另一种虚拟专用服务的网络架构示意图;
图9为本发明实施例提供的一种运营商骨干桥的网络架构示意图;
图10为本发明实施例提供的又一种PBB/VPLS双栈网络架构示意图。
具体实施方式
为使本发明的目的、技术手段和优点更加清楚明白,以下结合附图及具体实施例对本发明作进一步详细的说明。
在已有H-L2VPN中,PE设备通过现有主/备虚链路进行虚链路备份,保护了用户流量,但是主用虚链路和备用虚链路不能同时参与转发,无法做到负载分担。PE设备检测到主用虚链路故障时,将用户流量切换到备用虚链路,并且对之前在主用虚链路上学习到MAC地址重新学习,删除学习到MAC地址的主用虚链路路径信息删除,记录学习到同一个MAC地址的备用虚链路的路径信息。但是MAC地址重新学习完成之前,发送到该MAC地址的报文会出现丢包或者被广播。
如图1所示,本发明实施例提供了一种二层虚拟专用网发送报文的方法,通过两个以上等价虚链路分担用户流量,若MAC地址(作为用户源MAC地址的MAC地址)在这些等价虚链路中一个虚链路上被首次学习到,记录等价多路径组的标识以及学习到MAC地址的等价虚链路的标识,以便于之后从其他具有该等价多路径组的标识的等价虚链路学习到同一MAC地址,则不删除之前学习到该MAC地址的等价虚链路的路径信息,可以避免MAC地址重新学习造成的报文丢失或广播报文。
步骤101,第一对端节点通过等价多路径组的每个等价虚链路连接每个第二对端节点。
步骤102,第一对端节点通过任一等价虚链路接收相连的第二对端节点发送的具有转发隧道标识的封装报文,将封装报文的转发隧道标识解封装。
步骤103,第一对端节点确定解封装报文中用户源MAC地址是未学习的MAC地址,则记录用户源MAC地址以及学习到用户源MAC地址的路径信息;其中,学习到用户源MAC地址的路径信息至少包含等价多路径组的标识以及封装报文当前到达的等价虚链路的标识。
对于第一对端节点而言,将包含该用户源MAC地址的封装报文到达的等价虚链路的标识作为学习到源MAC地址的路径信息,记录用户源MAC地址与等价虚链路的标识和等价多路径组的标识的关联关系,以便于之后从其他等价虚链路学习到同一用户源MAC地址,则不删除第一次学习到用户源MAC地址的等价虚链路的路径信息。
步骤104,第一对端节点根据解封装报文的用户目的MAC地址,将解封装报文通过相应的接入电路转发到用户侧边缘设备。
如果第一对端节点已经通过直连的AC学习过用户目的MAC地址,则将解封装后的报文单播给该AC连接的CE设备;如果第一对端节点未通过直连的AC学习过用户目的MAC地址或者该用户目的MAC地址是广播地址,则第一对端节点将解封装后的报文广播到所有AC连接的CE设备。
图2为本发明实施例提供的分层式二层虚拟专用网发送报文的通信设备200的框图,该通信设备包括:存储器210,处理器220,通信接口230以及互连机构240用于耦合存储器210、处理器220以及通信接口230,其中该处理器220设置有链路单元221和转发单元222。
存储器210用于存储各VSI下的MAC表和广播表;处理器220用于处理数据流量的转发;通信接口230用于发送和接收相应数据流量。
在存储器210中,每个MAC表中至少记录了MAC地址与学习到MAC地址的路径信息的关联关系。每个MAC表包含多个表项,每个表项至少包含MAC地址及学习到MAC地址的路径信息。在每个MAC表中,如果一个表项记录的是在接入电路学习到的MAC地址,则该表项至少包含用户源MAC地址以及接入电路的标识;如果一个表项记录的是在等价多路径组的等价虚链路学习到的MAC地址,则该表项至少包括用户源MAC地址、等价多路径组的标识以及一个以上等价虚链路的标识。接入电路的标识可以是接入电路的接口索引,等价虚链路的标识可以是等价虚链路的出接口的索引。
每个MAC表中,每个表项除记录MAC地址以及关联的学习到该MAC地址的路径信息外,可以根据报文转发的需要增加相应的表项内容。
转发单元222在MAC表中记录的学习到MAC地址的等价虚链路的路径信息至少包括:等价多路径组标识、等价虚链路的标识、学习到该MAC地址的等价虚链路的数目(表示数目为1的任意初始值)。转发单元222从其他等价的虚链路学习到相同MAC地址时,在学习到MAC地址的路径信息中记录新学习到MAC地址的等价虚链路的标识,并更新学习到该MAC地址的等价虚链路的数目(表示数目为2的任意值),以此类推。
进一步的,转发单元222在MAC表中记录的学习到MAC地址的等价虚链路的路径信息至少包括:虚链路转发信息和虚链路检查信息。其中,转发单元222在虚链路转发信息中记录等价多路径组的标识、学习到MAC地址的等价虚链路的标识以及数目,以便根据虚链路转发信息在学习到MAC地址的等价虚链路中选择一个等价虚链路作为转发路径向该MAC地址转发报文;转发单元222根据虚链路转发信息更新虚链路检查信息,以便根据该虚链路检查信息进行源MAC地址检查,其中,该虚链路检查信息包括等价多路径组的标识、学习到MAC地址的等价虚链路的标识以及数目。
转发单元222根据虚链路转发信息判断当前学习到此MAC地址的路径与之前学习到该MAC地址的虚链路是否一致。转发单元222确定当前学习到此MAC地址的路径是接入电路,则删除虚链路转发信息和虚链路检查信息,在学习MAC地址对应的路径信息中记录接入电路的标识。转发单元222确定当前学习到MAC地址的路径与之前学习到该MAC地址的虚链路是具有相同等价多路径组的标识的不同等价虚电路,在虚电路转发信息中记录当前学习到此MAC地址的等价虚电路(以此MAC地址作为用户源MAC地址的封装报文当前到达的等价虚电路)的标识,并更新学习到此MAC地址的等价虚链路的数目,再根据虚链路转发信息更新虚链路检查信息。
转发单元222确定当前学习到此MAC地址的路径与之前学习到该MAC地址的虚链路是相同的等价虚电路,则不修改虚链路转发信息。
在存储器210中,每个广播表用于记录对应VSI下的所有接入电路的路径信息以及所有等价虚链路的路径信息。广播表可以包括一个以上的接入电路表项以及一个以上的等价多路径组表项。其中,每个接入电路表项用于记录每个直连CE设备的每个接入电路的路径信息,如接入电路的接口索引等信息;每个等价多路径组表项用于记录该VSI下等价多路径组的所有等价虚链路的路径信息,如每个等价虚链路的出接口的索引等信息,其中等价多路径组表项还可以进一步记录等价多路径组中所有等价虚链路的数目。
链路单元221,用于建立属于一个等价多路径组的多个等价虚链路并通过每个等价虚链路连接每个第二对端节点。
转发单元222,通过连接通信接口230的任一等价虚链路接收具有转发隧道标识的封装报文,解封装转发隧道标识并在存储器210存储的对应VSI的MAC表中查找解封装报文中的用户源MAC地址关联的路径信息,如果在该MAC表中未查找到学习到用户源MAC地址的路径信息,则在该MAC表中记录用户源MAC地址以及学习到该用户源MAC地址的路径信息;或者,转发单元222在该MAC表中查找到学习到用户源MAC地址的路径信息包括等价多路径组的标识、其他等价虚链路的标识,则在学习到用户源MAC地址的路径信息中记录封装报文当前到达的等价虚链路的标识;或者,转发单元222在该MAC表中查找到学习到用户源MAC地址的路径信息包括封装报文(包含该用户源MAC地址)当前到达的等价虚链路的标识,则不修改存储器210中学习到用户源MAC地址的路径信息;或者,转发单元222在该MAC表查找到学习到用户源MAC地址的路径信息包括接入电路的标识,则在学习到用户源MAC地址的路径信息中删除接入电路的标识并记录等价多路径组的标识、包含该用户源MAC地址的封装报文当前到达的等价虚链路的标识。
转发单元222在该MAC表中查找到学习到用户目的MAC地址的路径信息包含接入电路的标识,则解封装报文转发到该接入电路所连接的用户侧边缘设备;或者,转发单元222在该MAC表中未查找到学习到用户目的MAC地址的路径信息,则根据存储器210中广播表记录的所有接入电路的路径信息,将解封装报文广播给每个接入电路相连的用户侧边缘设备。
转发单元222通过连接通信接口230的接入电路接收来自用户侧边缘设备的报文,在存储器210存储的对应VSI的MAC表中查找到学习到该用户源MAC地址的路径信息包含收到报文的接入电路的标识,则不修改学习到用户源MAC地址的路径信息;或者,转发单元222在该MAC表中未查找到学习到该用户源MAC地址的路径信息,记录收到报文的接入电路的标识;或者,转发单元222在该MAC表查找到学习到该用户源MAC地址的路径信息包含其他接入电路的标识,则删除先前记录的接入电路的标识,记录新学习到用户源MAC地址的接入电路的标识。
转发单元222在该MAC表中未查找到学习到用户目的MAC地址的路径信息,则在对应VSI的广播表中等价多路径组的一个虚链路以及收到报文的接入电路以外的其他接入电路上广播报文。其中,转发单元222报文的报文头以及等价多路径组中等价虚链路的数目计算一个第一散列值,识别对应于该第一散列值的等价虚链路,根据识别的虚链路关联的隧道转发标识封装报文并将封装报文通过识别的虚链路进行转发;或者,转发单元222在该MAC表中查找学习到用户目的MAC地址的路径信息包括等价多路径组的标识、一个以上虚链路的标识,则预置的第二等价多路径选择规则选择报文的头部信息,并根据所选的报文头以及学习到该用户目的MAC地址的等价虚链路的数目计算一个第二散列值,识别对应于第二散列值的等价虚链路;根据识别的等价虚链路关联的隧道转发标识封装报文并将封装报文通过识别的虚链路进行转发。
转发单元222计算第一散列值所依据的报文头的字段与转发单元222计算第二散列值所依据的报文头的字段相同,也可以不同。这些字段包括但不限于报文头中SMAC(用户源MAC),DMAC(用户目的MAC),S-TAG和C-TAG。
链路单元221检测等价多路径组中的每个虚链路上的连接状态并且将检测到等价多路径组中断开连接的虚链路通知给转发单元222。链路单元211可以通过发送BFD(双向转发检测,Bidirectional Forwarding Detection)协议报文、以太网OAM(操作、管理和维护,Operation,Administration and Maintenance)协议报文、CFA(连接错误检测,Connectivity,Fault Detection)协议报文的方式检测连接每个虚链路的连接状态。
转发单元222修改广播表以及MAC表中包含了断开连接的等价虚链路的标识的表项。转发单元222在对应VSI的广播表的等价虚链路表项中删除断开连接的等价虚链路的路径标识,并可以进一步将等价多路径组的等价虚链路的数目减1。转发单元222遍历MAC表中的每个表项,若任一表项中的MAC地址关联的路径信息只包括等价多路径组的标识以及断开连接的等价虚链路的路径标识,则删除该表项,或者若任一表项中的MAC地址关联的路径信息包含等价多路径组的标识、断开连接的等价虚链路的标识以及其他等价虚链路的标识,则将断开连接的等价虚链路的标识从该表项中删除。若该MAC表进一步包括虚链路转发信息以及虚链路检查信息,则转发单元222在MAC地址的虚链路转发信息中删除断开连接的等价虚链路的路径标识并将学习到该MAC地址的等价虚链路的数目减1,根据修改后的虚链路转发信息更新虚链路检查信息。
进一步,如果各VSI的广播表记录了等价多路径组的所有等价虚链路的数目时,转发单元222进一步将广播表中等价多路径组的等价虚链路的数目减1。同理,各VSI的MAC表记录了学习到MAC地址的等价虚链路的数目时,转发单元222进一步将MAC表学习该MAC的等价薛莲路的数目减1。
该通信设备200可以被设置VPLS网络中,作为UPE设备;或者该通信设备可以被设置在PBB网络中,作为直连CE设备的BEB;或者该通信设备可以被设置在PBB/VPLS网络中作为UPE或直连CE的BEB设备。
以下将结合不同的网络架构,说明图2所示通信设备在L2VPN中转发报文的处理过程:
图3所示为本发明实施例提供一种虚拟专用服务的网络架构示意图,在图3的分层式VPLS网络架构300中,该通信设备可以被应用为UPE321、UPE322、UPE323。客户端A通过连接的CE311接入UPE321,客户端B和客户端C分别通过CE312以及CE313接入UPE322和UPE323。
由于UPE321、UPE322、UPE323转发报文的处理过程相同,因而主要以UPE321为例说明转发报文的处理过程:
在UPE321设置某个VSI下的两个等价多路径对端NPE331和NPE332。UPE321与NPE331和NPE332都建立PW连接,在这两个PW的协议状态均UP时,为这两个PW分配相同ECMP 1(等价多路径组的标识,ECMP ID)以及PW1(虚链路标识PW ID),使UPE321通过一个等价多路径组的两个等价PW分别连接NPE331和NPE332。UPE321为NPE331和NPE332分配不同的入标签V-Label1和V-Label2。并获取NPE331和NPE332分配的出标签V-Label3和V-Label4。
同上,在UPE322上设置同一个VSI下的两个等价多路径对端NPE331和NPE332,与NPE331和NPE332都建立PW连接,在这两个PW的协议状态均UP时,为这两个等价PW分配相同等价多路径组的标识ECMP 2(等价多路径组的标识,ECMP ID)以及PW 2(虚链路标识PW ID),使UPE322通过一个等价多路径组的两个等价PW分别连接NPE331和NPE332。UPE322为NPE331和NPE332分配不同的入标签,并获取NPE331和NPE332各自分配的出标签。
同上,在UPE323上设置同一个VSI下的两个等价多路径对端NPE331和NPE332,与NPE331和NPE332都建立PW连接,在这两个PW的协议状态均UP时,为这两个PW分配相同ECMP 3(等价多路径组的标识,ECMP ID)和PW 3(虚链路标识PW ID),使UPE323通过一个等价多路径组的两个等价PW分别连接NPE331和NPE332。另外,UPE323为这两个等价PW分配相同的PWID,为NPE331和NPE332分配不同的入标签,并获取NPE331和NPE332各自分配的出标签。
由于等价的PW具有相同的PW ID,为更好说明本实施例的实施方案,以下说明中将利用附图标号PW1-1和PW1-2分别表示UPE321设置的两个等价PW;利用附图标号PW2-1和PW2-2分别表示UPE322设置的两个等价PW,利用附图标号PW3-1和PW3-2分别表示UPE333设置两个等价PW。
NPE331通过PW1-1、PW2-1以及PW3-1分别连接UPE321、UPE322以及UPE323,这三个PW不属于等价PW;NPE332通过PW1-2、PW2-2以及PW3-2分别连接UPE321、UPE322以及UPE323,这三个PW不属于等价PW。
用户端A向用户端B发送报文,则转发过程如下:
用户端A将报文发送到CE311。CE311将报文通过单播或广播的方式转发到UPE321。
当UPE321通过AC1收到报文时,在对应的VPLS实例的MAC表中未查找到用户源MAC地址MAC-A,则在MAC表中创建一个表项用于记录MAC-A以及AC1的AC接口索引。UPE321在该VPLS实例的MAC表中未查找到用户目的MAC地址MAC-B,则在VPLS实例的广播表选择AC1以外的其他接入电路(图3未示)广播该报文以及根据预置的等价多路径算法计算一个第一散列值,该第一散列值对应于广播表中两个等价PW中PW1-1的出接口的索引,则根据PW1-1连接NPE331设备分配的标签V-Label3封装报文,并将封装报文通过PW1-1转发到NPE331。
NPE331弹掉标签V-Label3,在MAC表中未查找到用户目的MAC地址MAC-B,则根据PW2-1连接的UPE322分配的标签以及PW3-1连接的UPE323分配的标签分别对报文进行封装,将两个封装报文分别通过PW2-1和PW3-1转发到UPE322和UPE323。NPE331学习用户源MAC地址的方式、在PW上单播包含已学习用户目的MAC地址的封装报文的方式以及在各PW上广播包含未学习用户目的MAC地址的封装报文的方式均与现有分层VPLS网络架构中NPE设备相同,本实施例不再重复描述。
UPE322将收到的报文解封装,在对应VPLS实例的MAC表中未查找到用户源MAC地址MAC-A,在MAC表中记录MAC-A及学习到MAC-A的路径信息,该学习到MAC-A的路径信息至少包含ECMP 2、PW2-1的出接口的索引以及学习到MAC-A的等价虚链路的数目为1。UPE322在MAC表中未查找到用户目的MAC地址MAC-B,则在该VPLS实例的广播表中所有AC(图中示出了一个AC2)上将解封装得到的报文广播给所有CE设备(图中仅示出了CE312)。CE312通过单播或广播的方式将解封装得到的报文转发到用户端B。
UPE323接收具有标签的封装报文的处理过程与UPE322的上述处理过程大致相同,其中,UPE323将收到的报文解封装,在对应VPLS实例的MAC表中未查找到用户源MAC地址MAC-A,在MAC表中记录MAC-A以及学习到MAC-A的路径信息,该学习到MAC-A的路径信息至少包含ECMP 3、PW3-1的出接口的索引、学习到MAC-A的等价虚链路的数目为1。
UPE321、UPE322以及UPE323通过发送BFD报文检测连接对端节点NPE331以及NPE332的两个等价的PW的连接状态。
如果,UPE321检测到PW1-1断开连接,遍历VPSL实例的MAC表,未查到任何MAC地址关于该PW1-1的出接口的索引,则在该VPLS实例广播表的等价多路径组中删除PW1-1的出接口的索引,将等价多路径组的等价虚链路的数目更新为1。
如果,UPE3221检测到PW2-1断开连接,遍历VPSL实例的MAC表,若查找到学习到MAC-A的路径信息包含ECMP 2、PW2-1的出接口的索引,则在MAC表中删除MAC-A的表项,并且在该VPLS实例广播表的等价虚链路等价多路径组中删除PW2-1的出接口的索引,将等价多路径组的等价虚链路的数目更新为1。
用户端A再次向用户端B发送报文,则转发过程如下:
当UPE321通过AC1收到报文时,在对应的VPLS实例的MAC表查到学习到MAC-A的AC1与报文到达的AC1一致。UPE321在MAC表中未查找到用户目的MAC地址MAC-B,则在VPLS实例的广播表选择AC1以外的其他接入电路(图3未示)广播该报文以及并且根据预置的等价多路径算法重新计算一个第一散列值,在广播表的两个等价PW的出接口的索引中,PW1-2的出接口的索引对应于重新计算的第一散列值,利用PW1-2连接的NPE332设备分配的标签V-Label4封装报文,并将封装报文通过PW1-2转发NPE332。
NPE332弹掉标签V-Label4,在MAC表中未查找到用户源MAC地址MAC-B,则在收到该报文PW之外的其他PW上广播报文,根据PW2-2连接的UPE322以及PW3-2连接的UPE323各自分配的标签封装报文,将封装报文分别通过PW2-2和PW3-2转发到UPE322和UPE323。
UPE322将收到的报文解封装,在MAC表中查找到学习到MAC-A的路径信息包含ECMP 2、PW2-1的出接口的索引以及学习到MAC-A的等价虚链路的数目为1,则在学习到MAC-A的路径信息中增加PW2-2的出接口的索引,将学习到MAC-A的等价虚链路的数目更新为2。UPE322在MAC表中未查找到MAC-B,则在该VPLS广播表中所有AC(图中示出了一个AC2)上将解封装得到的报文广播给所有CE设备(图中仅示出了CE312)。CE312通过单播或广播的方式将解封装得到的报文转发到用户端B。
UPE323接收具有标签的封装报文的处理过程与UPE322的上述处理过程大致相同。其中,UPE323将收到的报文解封装,在对应VPLS实例的MAC表中查找到MAC-A关联于ECMP 3、PW3-1的出接口的索引以及学习到MAC-A的等价虚链路的数目为1,则在学习到MAC-A的路径信息中增加PW3-2的出接口的索引,将学习到MAC-A的等价虚链路的数目更新为2。
UPE321、UPE322以及UPE323通过发送BFD报文检测连接对端节点NPE331以及NPE332的两个等价的PW的连接状态。
如果UPE322检测到PW2-1断开连接,遍历VPSL实例的MAC表,若查到学习到MAC-A的路径信息包含PW2-1和PW2-2的出接口的索引,则在学习到MAC-A的路径信息中删除PW2-1的出接口的索引,将学习到MAC-A的等价虚链路的数目更新为1。
用户端B向用户端A发送的报文的处理过程:
报文沿着用户端B与CE312之间的路径转发到UPE322。UPE322在对应的VPLS实例的MAC表中未查找用户源MAC地址MAC-B,则在MAC表记录MAC-B以及学习到MAC-B的路径信息,该路径信息至少包含AC2的接口的索引。UPE322在MAC表中查找到用户目的MAC地址MAC-A对应于ECMP 2、PW2-1的出接口的索引、PW2-2的出接口的索引以及学习到MAC-A的等价虚链路的数目为2。UPE322根据报文的头部信息以及学习到MAC-A的等价虚链路的数目计算的第二散列值对应于PW2-1的出接口的索引,则将报文封装NPE331分配的标签并将封装报文转发到NPE331。
NPE331弹掉报文的标签,在对应的VPLS实例的MAC表中未查找用户源MAC地址MAC-B,则在MAC表中记录MAC-B以及学习到MAC-B的PW2-1的出接口的索引。NPE331在该VPLS实例的MAC表中查找到学习到用户目的MAC地址MAC-A的路径信息包括PW1-1的出接口的索引。NPE331根据UPE321分配的V-Label 1封装报文并将具有标签的封装报文通过PW1-1转发到UPE321。
UPE321弹掉标签V-Label1,在对应的VPLS实例的MAC表中未查到用户源MAC地址MAC-B,则在MAC表中记录MAC-B及MAC-B关联的路径信息,该路径信息至少包含ECMP 1以及PW1-1的出接口的索引。UPE321在MAC表中查找到用户目的MAC地址MAC-A关联于AC1,则将解封装得到的报文通过AC1转发到CE311。CE311将报文转发给用户端A。
用户端B再次向用户端A发送报文,转发处理过程如下:
报文沿着用户端B与CE312之间的路径转发到UPE322。UPE322在MAC表中查找到用户源MAC地址MAC-B关联的AC2与报文到达的AC2是相同路径。UPE322在该VPLS实例的MAC表中查找到用户目的MAC地址MAC-A对应于ECMP 2、PW2-1的出接口的索引、PW2-2的出接口的索引。UPE322根据报文的头部信息以及学习到MAC-A的等价虚链路的数目计算的第二散列值对应于PW2-2的出接口的索引,则将报文封装NPE332分配的标签并将封装报文转发到NPE332。
用户端B发送给用户端A的各报文的报文头的字段的相同,但是报文头的字段的属性值并不一定相同,因此根据报文头和学习到MAC地址的等价虚链路的数量计算的散列值并不是同一个散列值。
NPE332在弹掉报文的标签,在对应的VPLS实例的MAC表中未查找用户源MAC地址MAC-B,则在MAC表中记录MAC-B以及MAC-B关联的路径信息,该路径信息包含PW2-2的出接口的索引。NPE332在MAC表中查找用户目的MAC地址MAC-A对应于PW1-2的出接口的索引。NPE332根据UPE321分配的V-Label 2封装报文并将具有标签的封装报文通过PW1-2转发到UPE321。
当UPE321弹掉标签V-Label2,在对应的VPLS实例的MAC表中查到用户源MAC地址MAC-B关联的路径信息包含ECMP 1、PW1-1的出接口的索引,则在MAC-B关联的路径信息中增加PW1-2的出接口的索引,将学习到MAC-B的等价虚链路的数目更新为2。UPE321在MAC表中查找到用户目的MAC地址MAC-A关联于AC1,则将解封装得到的报文通过AC1转发到CE311。CE311将报文转发给用户端A。
用户端A与用户端C之间的报文转发过程与上述用户端A与用户端B之间的报文转发过程大致相同。
图4为本发明实施例提供一种运营商骨干桥的网络架构示意图,在图4的PBB网络架构400中,该通信设备可以被应用为通过AC直连CE设备的BEB421、BEB424、BEB425。客户端A通过CE411接入BEB421。客户端B和客户端C分别通过连接CE412以及CE413分别接入BEB424和BEB425。
BEB421与BEB422和BEB423都建立PW连接,在这两个PW的协议状态均UP时,为这两个PW分配相同等价多路径组的标识ECMP 1’,以使这两个PW成为一组等价的PW。另外,BEB421为这两个等价PW分配相同的PW ID,如,PW1’。
BEB424与BEB422和BEB423都建立PW连接,在这两个PW的协议状态均UP时,为这两个PW分配相同等价多路径组的标识ECMP 2’,以使这两个PW成为一组等价的PW。另外,BEB424为这两个等价PW分配相同的PW ID,如PW 2’。
BEB425与BEB422和BEB423都建立PW连接,在这两个PW的协议状态均UP时,为这两个PW分配相同等价多路径组的标识ECMP 3’,以使这两个PW成为一组等价的PW。另外,BEB425为这两个等价PW分配相同的PW ID,如PW3’。
由于等价的PW具有相同的PW ID,为更好说明本实施例的实施方案,以下说明中将利用附图标号PW1’-1和PW1’-2区分BEB421设置的两个等价的PW;利用附图标号PW2’-1和PW2’-2区分BEB424设置的两个等价的PW,利用附图标号PW3’-1和PW3’-2区分BEB425设置两个等价的PW。
BEB422通过PW1’-1、PW2’-1以及PW3’-1分别连接BEB421、BEB424以及BEB425,这三个PW不属于等价的PW;BEB423通过PW1’-2、PW2’-2以及PW3’-2分别连接BEB421、BEB424以及BEB425,这三个PW不属于等价的PW。
用户端A向用户端B发送报文,则转发过程如下:
用户端A将报文发送到CE411。CE411将报文通过单播或广播的方式转发到BEB421。
当BEB421通过AC1收到报文时,在对应的VPLS实例的MAC表中未查找到用户源MAC-A,则在MAC表中创建一个表项用于记录MAC-A以及MAC-A关联的路径信息,该路径信息至少包含AC1’的AC接口索引。BEB421在该MAC表中未查找到MAC-B,则在该PBB实例的广播表选择AC1以外的其他接入电路(图4未示)用于广播该报文以及并且根据预置的等价多路径算法计算一个第一散列值,在广播表的两个等价出接口的索引中,PW1’-1的出接口的索引对应于散列值,将PW1’-1连接的BEB2的设备MAC地址作为外层目的MAC地址,本设备的MAC地址作为外层源MAC地址,为报文封装MAC-in-MAC报文头,并将封装报文通过PW1’-1转发BEB422。
BEB422弹掉MAC-in-MAC报文头,在对应的PBB实例的MAC表中未查找到用户源MAC地址MAC-A,则在该PBB实例的MAC表中记录MAC-A及MAC-A关联的路径信息,该路径信息至少包括PW1’-1。BEB422在对应的PBB实例的MAC表中未查找到用户目的MAC地址MAC-B,则在收到该报文PW之外的其他PW上广播报文。即,BEB422将PW2’-1连接的BEB424的设备MAC地址作为外层目的MAC地址,本设备的MAC地址作为外层源MAC地址,为报文封装MAC-in-MAC报文头,并将封装报文通过PW2’-1转发BEB424;以及BEB422将PW3’-1连接的BEB425的设备MAC地址作为外层目的MAC地址,本设备的MAC地址作为外层源MAC地址,为报文封装MAC-in-MAC报文头,并将封装报文通过PW3’-1转发BEB425。BEB422与BEB423学习用户源MAC地址的方式、在PW上单播包含已学习的用户目的MAC地址的封装报文的方式以及在PW上广播包含未学习的用户目的MAC地址的封装报文的方式,类似于现有PBB网络中只连接有虚链路的BEB设备的处理方式。
BEB424将收到的报文解封装(弹掉MAC-in-MAC报文头),在对应PBB实例的MAC表中未查找到用户源MAC地址MAC-A,在MAC表中记录MAC-A及MAC关联的路径信息,该路径信息至少包含ECMP 2’以及PW2’-1的出接口的索引。BEB424在该PBB实例的MAC表中未查找到用户目的MAC地址MAC-B,则在该PBB实例的广播表中查找所有AC以及具有不同PW ID的所有等价虚链路。CE412通过直连BEB424的AC2’收到报文,再通过单播或广播的方式将报文转发到用户端B。
图4中,BEB424在该PBB实例下建立了两个等价的具有相同PWID的等价PW,通过查找具有不同PW ID,避免将报文从其他等价的等价虚链路又转发到BEB421,因此,BEB424根据该PBB实例下的接入电路转发通过等价虚链路接收的报文。BEB421可根据等价PW的出接口的索引获取该PW属性,根据PW属性确定PW ID。
BEB425接收具有MAC-in-MAC报文头封装报文的处理过程与BEB424的上述处理过程大致相同,其中,BEB425将收到的报文解封装,在对应PBB实例的MAC表中未查找到用户源MAC地址MAC-A,在MAC表中记录MAC-A关联于ECMP 3’以及PW3’-1的出接口的索引。
BEB421、BEB424以及BEB425通过发送以太网OAM协议报文、CFA协议报文的方式检测各自连接对端节点BEB422以及BEB423的两个等价的PW的连接状态。
BEB421检测到PW1’-1断开连接,遍历对应PBB实例的MAC表,未查到任何MAC地址关联的路径信息包含PW1’-1的出接口的索引,则在该PBB实例广播表的等价虚链路等价多路径组中删除PW1’-1的出接口的索引。
若BEB424检测到PW2’-1断开连接,遍历对应PBB实例的MAC表,若查到MAC-B关联的路径信息包含ECMP 2’和PW2’-1的出接口的索引,则在MAC表中删除MAC-B的表项,并且在该PBB实例广播表的等价虚链路等价多路径组中删除PW2’-1的出接口的索引。
用户端A再次向用户端B发送报文,则转发过程如下:
当BEB421通过AC1’收到报文时,在对应PBB实例的MAC表查到用户源MAC-A关联的AC1’与报文到达的AC1’一致。BEB421在MAC表中未查找到用户目的MAC地址MAC-B,则在该PBB实例的广播表选择AC1’以外的其他接入电路(图4未示)广播该报文以及并且根据报文的报文头以及等价虚链路的数目计算第一散列值,广播表的两个等价出接口的索引中的PW1’-2的出接口的索引对应第一散列值,以PW1’-2连接的BEB423的设备MAC地址作为外层目的MAC地址,本设备的MAC地址作为外层源MAC地址,为报文封装MAC-in-MAC报文头,并将封装报文通过PW1’-2转发到BEB423。
BEB423弹掉MAC-in-MAC报文头,在对应的PBB实例的MAC表中未查找到用户源MAC地址MAC-A,则该MAC表中记录MAC-A以及MAC-A关联的路径信息,该路径信息至少包含PW1’-2。BEB423在MAC表中未查找到用户目的MAC地址MAC-B,则在收到该报文PW之外的其他PW上广播报文。即,BEB423将PW2’-2连接的BEB424的设备MAC地址作为外层目的MAC地址,本设备的MAC地址作为外层源MAC地址,为报文封装MAC-in-MAC报文头,并将封装报文通过PW2’-2转发BEB424。BEB423将PW3’-2连接的BEB425的设备MAC地址作为外层目的MAC地址,本设备的MAC地址作为外层源MAC地址,为报文封装MAC-in-MAC报文头,并将封装报文通过PW3’-2转发BEB425。
BEB424弹掉MAC-in-MAC报文头,在对应PBB实例的MAC表中查找到用户源MAC地址MAC-A关联的路径信息包含ECMP 2’、PW2’-1的出接口的索引,则在MAC-A关联的路径信息中增加PW2’-2的出接口索引。BEB424在该PBB实例MAC表中未查找到用户目的MAC地址MAC-B,则在该PBB广播表中查找所有AC以及具有不同PW ID的所有等价虚链路。CE412通过直连BEB424的AC2’收到,再通过单播或广播的方式将解封装得到的报文转发到用户端B。
BEB425接收具有MAC-in-MAC报文头封装报文的处理过程与BEB424的上述处理过程大致相同。其中,BEB425弹掉MAC-in-MAC报文头,在对应PBB实例的MAC表中查找到用户源MAC地址MAC-A关联的路径信息包含ECMP3’和PW3’-1的出接口的索引,则在MAC-A关联的路径信息中增加PW3’-2的出接口的索引。
若BEB424检测到PW2’-1断开连接,遍历对应PBB实例的MAC表,若查到MAC-A关联PW2’-1的出接口的索引,则在MAC表中删除MAC-A的表项,并且在该PBB实例广播表的等价虚链路等价多路径组中删除PW2’-1的出接口的索引。
用户端B向用户端A发送的报文的处理过程:
报文沿着用户端B与CE412之间的路径转发到BEB424。BEB424在对应PBB实例的MAC表中未查找用户源MAC地址MAC-B,则在MAC表记录MAC-B关联于AC2’。BEB424在PBB实例的MAC表中查找到原始MAC地址MAC-A关联于ECMP 2’、PW2’-1的出接口的索引以及PW2’-2的出接口的索引。BEB424根据报文的报文头以及学习到MAC-A的等价PW的数目计算第二散列值,MAC表中PW2’-1的出接口的索引对应于计算的第二散列值,则将PW2’-1连接的对端节点BEB422的设备MAC地址作为外层目的MAC地址,本设备的MAC地址作为外层源MAC地址,为报文封装MAC-in-MAC报文头,并将封装报文通过PW2’-1到BEB422。
BEB422在对应的对应PBB实例的MAC表中未查找用户源MAC地址MAC-B,则在MAC表记录MAC-B关联于PW2’-1出接口的索引。BEB422在该PBB实例的MAC表中查找到用户源MAC地址MAC-A关联于PW1’-1的出接口的索引。BEB422将PW1’-1连接的对端节点BEB421的设备MAC地址作为外层目的MAC地址,本设备的MAC地址作为外层源MAC地址,为报文封装MAC-in-MAC报文头,并将封装报文通过PW1’-1到BEB421。
BEB421弹掉MAC-in-MAC报文头,在对应PBB实例的MAC表中未查到用户源MAC地址MAC-B,则在MAC表中记录MAC-B关联于ECMP 1’以及PW1’-1的出接口的索引。BEB421在MAC表中查找到用户目的MAC地址MAC-A关联于AC1’,则将解封装得到的报文通过AC1’转发到CE411。CE411将报文转发给用户端A。
用户端B再次向用户端A发送报文,转发处理过程如下:
报文沿着用户端B与CE412之间的路径转发到BEB424。BEB424在对应PBB实例的MAC表中查找用户源MAC地址MAC-B关联AC2’与报文到达的AC2’是相同路径。BEB424在该PBB实例的MAC表中查找到用户目的MAC地址MAC-A关联于ECMP 2’、PW2’-1的出接口的索引、PW2’-2的出接口的索引。BEB424根据报文的报文头以及学习到MAC-A的等价虚链路的数目,计算第二散列值,学习到MAC-A的PW2’-2的出接口的索引对应于当前的第二散列值,则将PW2’-2连接的对端节点BEB423的设备MAC地址作为外层目的MAC地址,本设备的MAC地址作为外层源MAC地址,为报文封装MAC-in-MAC报文头,并将封装报文通过PW2’-2到BEB423。
BEB423在对应的PBB实例的MAC表中未查找用户源MAC地址MAC-B,则在该PBB实例的MAC表记录MAC-B关联于PW2’-2的出接口的索引。BEB423在该PBB实例的MAC表中查找到用户源MAC地址MAC-A关联于PW1’-2的出接口的索引。BEB423将PW1’-2连接的对端节点BEB421的设备MAC地址作为外层目的MAC地址,本设备的MAC地址作为外层源MAC地址,为报文封装MAC-in-MAC报文头,并将封装报文通过PW1’-2到BEB421。
BEB421弹掉MAC-in-MAC报文头,在对应PBB实例的MAC表中查到用户源MAC地址MAC-B关联的路径信息包含ECMP 1’、PW1’-1的出接口的索引,则在MAC-B关联的路径信息中增加PW1’-2的出接口的索引。BEB421在MAC表中查找到用户目的MAC地址MAC-A关联于AC1’,则将解封装得到的报文通过AC1’转发到CE411。CE411将报文转发给用户端A。
用户端A与用户端C之间的报文转发过程与上述用户端A与用户端B之间的报文转发过程大致相同。
BEB421中,MAC表和广播表还可以进一步记录学习到MAC-B等价虚链路的数目以及等价多路径组的等价虚链路的数目。BEB421更新MAC表中学习到MAC-A的等价虚链路的数目的方式,类似于UPE321更新MAC表中学习到MAC-A的等价虚链路的数目的方式。BEB421更新广播表中等价多路径组的等价虚链路的数目的方式,类似于UPE321更新更新广播表中等价多路径组的等价虚链路的数目的方式。
BEB424以及BEB425中,MAC表和广播表还可以进一步记录学习到MAC-B等价虚链路的数目以及等价多路径组的等价虚链路的数目。BEB424以及BEB425更新MAC表中学习到MAC-A的等价虚链路的数目的方式,类似于UPE322更新MAC表中学习到MAC-A的等价虚链路的数目的方式。BEB421更新MAC表中学习到MAC-A的等价虚链路的数目的方式,类似于UPE322更新更新广播表中等价多路径组的等价虚链路的数目的方式。
图5所示为本发明实施例提供一种PBB/VPLS双栈网络架构500的示意图,图5中,UPE521转发报文的处理过程与图3中UPE321转发报文的处理过程相同;BEB531和BEB532转发报文的处理过程与图4中BEB421、BEB424以及BEB425转发报文的处理过程相同。
图6所示为本发明实施例提供一种PBB/VPLS双栈网络架构600的示意图,图6中,UPE621和UPE 622转发报文的处理过程与图3中UPE322转发报文的处理过程相同;BEB631转发报文的处理过程与图4中BEB421、BEB424以及BEB425转发报文的处理过程相同。
在图7所示已有PBB/VPLS双栈组网架构,连接CE的BEB设备或UPE设备通过主用PW和备用PW连接BEB/NPE双栈设备时,如果连接CE的BEB设备所选的主用PW与UPE设备所选的主用PW分别连接不同的BEB/NPE双栈设备,则连接CE的BEB设备与UPE设备之间无法通过BEB/NPE双栈设备连通,导致了报文转发故障。
而图5和图6所示PBB/VPLS双栈组网中,连接CE的BEB设备以及UPE设备均通过多个等价的PW连接BEB/NPE双栈设备,不仅能够通过多个PW分担用户流量,还能够解决已有PBB/VPLS双栈组网中存在的报文转发故障。但是本领域技术人员可以根据上述实施例教导以及实际的L2VPN网络环境需要,通过三个以上等价的PW发送和接收封装报文。
如图8所示的VPLS网络架构中,各UPE设备利用三个等价的PW发送和接收封装报文,各UPE设备学习MAC地址以及转发报文的处理过程与图3网络中UPE321的处理过程大致相同。
如图9所示PBB网络架构中,每个与CE设备连接的BEB设备利用四个等价的PW发送和接收封装报文,这些BEB设备学习MAC地址以及转发报文的的处理过程与图4网络中各BEB421的处理过程大致相同。
如图10所示的又一种PBB/VPLS双栈网络架构,UPE设备与连接到CE设备的BEB设备利用四个等价的PW发送和接收封装报文,这些设备学习MAC地址以及转发报文的处理过程图5中的UPE 521以及BEB531的处理过程大致相同。
由上述实施例可见,本发明实施例中通过多个等价虚链路共同参与转发,分担用户流量,实现了负载分担,当多个等价的等价虚链路中的任一等价虚链路断开连接,将用户流量自动切换到其他的等价虚链路上避免了等价虚链路变化导致的流量丢失。
以上仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本发明保护的范围之内。
Claims (21)
1.一种分层式二层虚拟专用网发送报文的方法,其特征在于,述方法包括:
第一对端节点通过等价多路径组的每个等价虚链路连接每个第二对端节点;
第一对端节点通过任一等价虚链路接收相连的第二对端节点发送的具有转发隧道标识的封装报文时,将封装报文的转发隧道标识解封装;
第一对端节点确定解封装报文中用户源MAC地址是未学习的MAC地址,则记录用户源MAC地址以及学习到用户源MAC地址的路径信息;其中,学习到用户源MAC地址的路径信息至少包含等价多路径组的标识以及封装报文当前到达的等价虚链路的标识;
根据解封装报文的用户目的MAC将解封装报文通过相应的接入电路转发到用户侧边缘设备。
2.根据权利要求1所述的方法,其特征在于,所述方法进一步包括:
第一对端节点确定在等价多路径组的其他虚链路上已学习到解封装报文中用户源MAC地址,则在学习到用户源MAC地址的路径信息中记录封装报文当前到达的等价虚链路的标识。
3.根据权利要求1所述的方法,其特征在于,所述方法进一步包括:
第一对端节点确定已在封装报文当前到达的等价虚链路上学习到用户源MAC地址,则不修改学习到用户源MAC地址的路径信息。
4.根据权利要求1所述的方法,其特征在于,所述方法进一步包括:
第一对端节点确定在接入电路已学习到用户源MAC,则在学习到用户源MAC地址的路径信息中删除接入电路的标识,并记录等价多路径组的标识以及封装报文当前到达的等价虚链路的标识。
5.根据权利要求1所述的方法,其特征在于,所述方法包括:
第一对端节点通过接入电路接收用户侧边缘设备转发的报文;
第一对端节点确定解封装报文中用户目的MAC地址是未学习的MAC地 址,则在等价多路径组中的一个等价虚链路以及收到报文的接入电路以外的其他接入电路上广播报文。
6.根据权利要求1所述的方法,其特征在于,在所述等价多路径组中的一个虚链路上广播报文包括:根据报文的头部信息以及等价多路径组的等价虚链路的数目计算一个第一散列值,识别对应于该第一散列值的等价虚链路;根据识别的等价虚链路关联的隧道转发标识封装报文,将封装报文通过识别的等价虚链路转发到相连的第二对端节点。
7.根据权利要求5所述的方法,其特征在于,所述方法进一步包括:
第一对端节点确定在一个以上等价虚链路上已学习到报文中用户目的MAC地址,则根据报文的头部信息以及学习到用户目的MAC地址的等价虚链路的数目计算第二散列值,识别对应于第二散列值的等价虚链路,根据识别的等价虚链路关联的隧道转发标识封装报文并将封装报文通过识别的等价虚链路转发到相连的第二对端节点。
8.根据权利要求1所述的方法,其特征在于,所述方法包括:第一对端节点存储有第一转发信息表以及第二转发信息表;
第一转发信息表包括等价多路径组表项以及一个以上接入电路表项;
其中,等价多路径组表项至少记录等价多路径组的标识以及等价多路径组中每个等价虚链路的标识;每个接入电路表项至少记录每个接入电路的标识;
第二转发信息表包含多个表项,每个表项至少记录了MAC地址及学习到MAC地址的路径信息;
其中,学习到MAC地址的路径信息至少包括学习到MAC地址的接入电路的标识;或者,学习到MAC地址的路径信息至少包括等价多路径组的标识、一个以上学习到MAC地址的等价虚链路的标识。
9.根据权利要求1所述的方法,其特征在于,所述方法进一步包括:
第一对端节点检测每个等价虚链路的连接状态;
第一对端节点检测到任一等价虚链路断开连接时,在第一转发信息表的等价多路径组表项中删除断开连接的等价虚链路的标识,并且遍历第二转发信息 表的每个表项,若任一表项中的学习到MAC地址的路径信息只包括断开连接的等价虚链路的标识,则删除该表项,或者若任一表项中学习到MAC地址的路径信息包含断开连接的等价虚链路的标识以及其他等价虚链路的标识,则将在该表项中删除断开连接的等价虚链路的标识。
10.一种分层式二层虚拟专用网发送报文的通信设备,其特征在于,所述通信设备包括:存储器,处理器,通信接口;
耦合存储器、处理器和通信接口的互连机构;其中
存储器存储有第一转发信息表以及第二转发信息表;
处理器至少包括:链路单元,用于建立属于一个等价多路径组的多个等价虚链路并通过每个等价虚链路连接每个对端节点;
转发单元,通过连接于通信接口的任一等价虚链路接收相连的第二对端节点发送的具有转发隧道标识的封装报文,封装报文的转发隧道标识解封装,在存储器中查找学习到用户源MAC地址的路径信息,若未查找到,则在存储器中记录用户源MAC地址以及学习到用户源MAC地址的路径信息,并根据解封装报文中用户目的MAC将解封装报文通过连接于通信接口的接入电路转发到相连用户侧边缘设备;
其中,学习到用户源MAC地址的路径信息至少包含等价多路径组的标识以及封装报文当前到达的等价虚链路的标识。
11.根据权利要求10所述的通信设备,其特征在于,转发单元在存储器中查找到学习到用户源MAC地址的路径信息包括等价多路径组的标识、其他等价虚链路的标识,则在学习到用户源MAC地址的路径信息中记录封装报文当前到达的等价虚链路的标识。
12.根据权利要求10所述的通信设备,其特征在于,转发单元在存储器中查找到学习到用户源MAC地址的路径信息包括封装报文当前到达的虚链路的标识,则不修改存储器中学习到用户源MAC地址的路径信息。
13.根据权利要求10所述的通信设备,其特征在于,转发单元在存储器中查找到学习到用户源MAC地址的路径信息包括接入电路的标识,则在学习到用户 源MAC地址的路径信息中删除接入电路的标识并记录等价多路径组的标识以及学习到用户源MAC地址的等价虚电路信息。
14.根据权利要求10所述的通信设备,其特征在于,转发单元通过连接通信接口的接入电路接收用户侧边缘设备转发的报文,在存储器中未查找到学习到用户目的MAC地址的路径信息,则在等价多路径组中的一个虚链路以及收到报文的接入电路以外的其他接入电路上广播报文。
15.根据权利要求10所述的通信设备,其特征在于,转发单元在等价多路径组中的一个等价虚链路上广播报文包括:转发单元根据报文的头部信息以及等价多路径组的等价虚链路的数目计算一个第一散列值,识别对应于该第一散列值的等价虚链路;根据识别的等价虚链路关联的隧道转发标识封装报文并将封装报文通过识别的等价虚链路转发到相连的第二对端节点。
16.根据权利要求15所述的通信设备,其特征在于,转发单元在存储器中查找到学习到用户目的MAC地址的路径信息包括等价多路径组的标识、一个以上等价虚链路的标识,则根据报文的头部信息以及学习到用户目的MAC地址的等价虚链路的数目计算第二散列值,识别第二散列值对应的等价虚链路,根据识别的等价虚链路关联的隧道转发标识封装报文并将封装报文通过识别的等价虚链路转发到相连的第二对端节点。
17.根据权利要求15所述的通信设备,其特征在于,存储器用于存储有第一转发信息表以及第二转发信息表;
第一转发信息表包括等价多路径组表项以及一个以上接入电路表项;
其中,等价多路径组表项至少记录等价多路径组的标识以及等价多路径组中每个等价虚链路的标识;每个接入电路表项至少记录每个接入电路的标识;
第二转发信息表包含多个表项,每个表项至少记录了MAC地址及学习到MAC地址的路径信息;
其中,学习到MAC地址的路径信息至少包括学习到MAC地址的接入电路的标识;或者,学习到MAC地址的路径信息至少包括等价多路径组的标识、一个以上学习到MAC地址的等价虚链路的标识。
18.根据权利要求10所述的通信设备,其特征在于,链路单元检测每个虚链路上的连接状态并且将检测到断开连接的等价虚链路通知给转发单元;
转发单元,用于在第一转发信息表的等价多路径组表项中删除断开连接的等价虚链路的标识,并且遍历第二转发信息表的每个表项,若任一表项中的学习到MAC地址的路径信息只包括断开连接的等价虚链路的标识,则删除该表项,或者若任一表项中学习到MAC地址的路径信息包含断开连接的等价虚链路的标识以及其他等价虚链路的标识,则将在该表项中删除断开连接的等价虚链路的标识。
19.根据权利要求10所述的通信设备,其特征在于,分层式二层虚拟专用网为分层式运营商骨干网桥网络PBB;
设备通过接入电路连接CE的骨干网边缘网桥BEB;
转发隧道标识为MAC-in-MAC报文头。
20.根据权利要求10所述的通信设备,其特征在于,分层式二层虚拟专用网为虚拟专用局域网服务网络VPLS;
设备为面向用户的服务提供商边缘设备UPE,对端节点为面向网络的服务提供商边缘设备NPE;
UPE通过等价虚链路收到的封装报文的转发隧道标识是UPE为NPE分配的虚电路VC标签;UPE通过等价虚链路发送的封装报文的转发隧道标识是NPE为UPE分配的VC标签。
21.根据权利要求10所述的通信设备,其特征在于,分层式二层虚拟专用网是PBB/VPLS双栈网络;
设备为BEB备,对端节点为BEB/NPE双栈设备,
BEB备通过等价虚链路接收的封装报文的转发隧道标签是MAC-in-MAC封装报头;或者,
设备为UPE,对端节点为BEB/NPE双栈设备,
UPE通过等价虚链路收到的封装报文的转发隧道标识是UPE为述BEB/NPE双栈设备分配的虚电路VC标签;UPE通过等价虚链路发送的封装报文的转发 隧道标识是BEB/NPE双栈设备为UPE分配的VC标签。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201110171545.5A CN102333028B (zh) | 2011-06-22 | 2011-06-22 | 一种分层式二层虚拟专用网发送报文的方法及通信设备 |
US13/530,883 US9036637B2 (en) | 2011-06-22 | 2012-06-22 | Message transmission in virtual private networks |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201110171545.5A CN102333028B (zh) | 2011-06-22 | 2011-06-22 | 一种分层式二层虚拟专用网发送报文的方法及通信设备 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN102333028A CN102333028A (zh) | 2012-01-25 |
CN102333028B true CN102333028B (zh) | 2013-02-13 |
Family
ID=45484637
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201110171545.5A Active CN102333028B (zh) | 2011-06-22 | 2011-06-22 | 一种分层式二层虚拟专用网发送报文的方法及通信设备 |
Country Status (2)
Country | Link |
---|---|
US (1) | US9036637B2 (zh) |
CN (1) | CN102333028B (zh) |
Families Citing this family (23)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103384217B (zh) * | 2012-05-02 | 2016-09-07 | 华为技术有限公司 | 一种状态切换方法及路由桥 |
CN102857400B (zh) * | 2012-09-14 | 2016-03-30 | 中兴通讯股份有限公司 | 一种二层虚拟专用网中广播域的建立方法及装置 |
CN103716220B (zh) * | 2012-09-28 | 2017-08-22 | 新华三技术有限公司 | 一种数据传输方法及其装置 |
CN103944826B (zh) * | 2013-01-22 | 2017-03-15 | 杭州华三通信技术有限公司 | Spbm网络中的表项聚合方法及设备 |
CN104038355B (zh) * | 2013-03-04 | 2018-03-06 | 中兴通讯股份有限公司 | 一种通信设备及其主备倒换方法 |
CN103152283B (zh) * | 2013-03-15 | 2016-04-13 | 杭州华三通信技术有限公司 | 一种聚合链路负载分担的方法和设备 |
US9197553B2 (en) | 2013-03-29 | 2015-11-24 | Cisco Technology, Inc. | Using a virtual internet protocol address to represent dually connected hosts in an internet protocol overlay network |
CN103338277A (zh) * | 2013-06-20 | 2013-10-02 | 华为技术有限公司 | 媒体接入控制mac地址回收方法及装置 |
CN103428067B (zh) * | 2013-08-14 | 2017-03-15 | 杭州华三通信技术有限公司 | 一种基于二层虚拟专用网络的报文转发方法和设备 |
US9819573B2 (en) | 2014-09-11 | 2017-11-14 | Microsoft Technology Licensing, Llc | Method for scalable computer network partitioning |
US9544225B2 (en) | 2014-09-16 | 2017-01-10 | Microsoft Technology Licensing, Llc | Method for end point identification in computer networks |
CN105791145B (zh) * | 2014-12-18 | 2019-10-25 | 南京中兴新软件有限责任公司 | 基于等价多路径ecmp的报文传输方法及装置 |
JP6402078B2 (ja) * | 2015-07-30 | 2018-10-10 | 日本電信電話株式会社 | ネットワークシステムおよびパケット転送方法 |
CN105591806B (zh) * | 2015-09-29 | 2019-04-09 | 新华三技术有限公司 | 一种链路切换方法及装置 |
CN105245447B (zh) * | 2015-10-08 | 2018-08-10 | 盛科网络(苏州)有限公司 | 数据中心ToR上支持ECMP的芯片实现装置及方法 |
US11070395B2 (en) * | 2015-12-09 | 2021-07-20 | Nokia Of America Corporation | Customer premises LAN expansion |
CN107846356B (zh) * | 2016-09-19 | 2020-02-11 | 新华三技术有限公司 | 主备伪线pw快速切换方法和装置 |
CN108259346B (zh) | 2017-01-25 | 2020-08-04 | 新华三技术有限公司 | 一种等价路由表项建立方法和装置 |
CN111953576B (zh) * | 2019-05-17 | 2021-07-09 | 华为技术有限公司 | 虚拟网络通信方法、设备及系统 |
CN110635988B (zh) * | 2019-10-24 | 2020-10-27 | 北京大学 | 一种用于多路径传输的数据转发方法及设备 |
CN114205297B (zh) * | 2020-08-28 | 2024-05-17 | 华为技术有限公司 | 流量转发处理方法及设备 |
CN113472647B (zh) * | 2021-06-11 | 2023-07-14 | 新华三信息安全技术有限公司 | 一种报文转发方法及装置 |
CN115550873B (zh) * | 2021-06-30 | 2024-10-18 | 华为技术有限公司 | 通信方法和通信装置 |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101262424A (zh) * | 2008-04-18 | 2008-09-10 | 华为技术有限公司 | 转发mpls报文的方法、设备及mpls通信系统 |
CN102075439A (zh) * | 2011-02-22 | 2011-05-25 | 杭州华三通信技术有限公司 | 一种组播报文转发方法和路由设备 |
Family Cites Families (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7339929B2 (en) * | 2002-08-23 | 2008-03-04 | Corrigent Systems Ltd. | Virtual private LAN service using a multicast protocol |
US8213435B2 (en) * | 2005-04-28 | 2012-07-03 | Cisco Technology, Inc. | Comprehensive model for VPLS |
US8504727B2 (en) * | 2007-01-17 | 2013-08-06 | Rockstar Consortium Us Lp | Method and apparatus for interworking ethernet and MPLS networks |
US8009558B2 (en) * | 2007-04-12 | 2011-08-30 | Cisco Technology, Inc. | Pseudowire load balancing |
KR20100044179A (ko) * | 2007-06-22 | 2010-04-29 | 인터디지탈 테크날러지 코포레이션 | 상이한 무선 통신 아키텍쳐들 간의 이동성에 대한 리소스 관리 |
CN100512196C (zh) * | 2007-09-12 | 2009-07-08 | 华为技术有限公司 | 清除介质访问控制地址的方法、系统和设备 |
US8125926B1 (en) * | 2007-10-16 | 2012-02-28 | Juniper Networks, Inc. | Inter-autonomous system (AS) virtual private local area network service (VPLS) |
US7710993B1 (en) * | 2007-10-31 | 2010-05-04 | Extreme Networks, Inc. | Pseudo wire processing in a packet forwarding device |
JP5443745B2 (ja) * | 2008-12-01 | 2014-03-19 | 富士通株式会社 | スイッチ |
US8160071B2 (en) * | 2008-12-02 | 2012-04-17 | Electronics And Telecommunications Research Institute | Apparatus and method for processing L2/L3 packet |
US8416775B2 (en) * | 2010-05-19 | 2013-04-09 | Juniper Networks, Inc. | Systems and methods for equal-cost multi-path virtual private LAN service |
US8705526B1 (en) * | 2010-12-03 | 2014-04-22 | Juniper Networks, Inc. | Extending VPLS support for CE lag multi-homing |
US8948169B2 (en) * | 2011-12-07 | 2015-02-03 | Cisco Technology, Inc. | Mechanism for E-VPN interoperability with VPLS |
-
2011
- 2011-06-22 CN CN201110171545.5A patent/CN102333028B/zh active Active
-
2012
- 2012-06-22 US US13/530,883 patent/US9036637B2/en not_active Expired - Fee Related
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101262424A (zh) * | 2008-04-18 | 2008-09-10 | 华为技术有限公司 | 转发mpls报文的方法、设备及mpls通信系统 |
CN102075439A (zh) * | 2011-02-22 | 2011-05-25 | 杭州华三通信技术有限公司 | 一种组播报文转发方法和路由设备 |
Also Published As
Publication number | Publication date |
---|---|
US20120327938A1 (en) | 2012-12-27 |
CN102333028A (zh) | 2012-01-25 |
US9036637B2 (en) | 2015-05-19 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN102333028B (zh) | 一种分层式二层虚拟专用网发送报文的方法及通信设备 | |
US7269135B2 (en) | Methods and systems for providing redundant connectivity across a network using a tunneling protocol | |
EP2226973B1 (en) | Routing of frames in a TRILL network using VLAN identifiers | |
CN107819677B (zh) | 一种报文转发方法及装置 | |
CN101051995B (zh) | 基于无连接网络的保护倒换方法 | |
EP1557006B1 (en) | Modified spanning tree protocol for metropolitan area network | |
EP2282453B1 (en) | Routing frames in a shortest path computer network for a multi-homed legacy bridge node | |
CN103731288B (zh) | 报文转发方法及设备 | |
EP2129049B1 (en) | A protecting method and device for ethernet tree service | |
US20130272114A1 (en) | Pseudo wire switching method and device | |
US20080080535A1 (en) | Method and system for transmitting packet | |
US20080181243A1 (en) | Ethernet forwarding in high performance fabrics | |
EP1971099A1 (en) | A data transfer method and a switching equipment | |
CN104348726B (zh) | 报文转发方法和装置 | |
KR20150008449A (ko) | Ietf evpn을 통한 802.1aq 지원 | |
KR101613640B1 (ko) | 패킷 포워딩 | |
US20100254258A1 (en) | Ring-based packet transmitting method, network system and node equipment | |
KR20140119775A (ko) | 링크 상태 프로토콜 제어형 이더넷 네트워크를 통한 ip 포워딩 | |
WO2015074394A1 (zh) | 一种报文转发方法及装置 | |
MX2007008112A (es) | Metodo para ejecutar una red sin conexion como una red de conexion orientada. | |
CN102449962A (zh) | 混合层2网络中的瞬态环路预防 | |
CN102739501A (zh) | 二三层虚拟私有网络中的报文转发方法和系统 | |
CN108337158B (zh) | 单播报文转发方法和装置 | |
CN101800691A (zh) | 一种建立网络中数据转发路径的方法、设备和系统 | |
CN102594651A (zh) | 一种pbb h-vpls网络中的业务保护方法 |
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 |
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. |
|
CP03 | Change of name, title or address |