报文转发方法及服务提供商网络边缘设备的制作方法
【专利摘要】本发明公开了一种报文转发方法及服务提供商网络边缘设备,其中,该方法应用于VPLS网络,所述VPLS网络包括多个PE,每个PE通过接入电路AC连接至CE,所述方法包括:第一PE从第一AC上接收到单播报文;所述第一PE在第一AC关联的第一虚拟交换实例VSI所对应的MAC地址转发表中,查找与所述单播报文中携带的目的MAC地址相匹配的转发表项;若未查找到相匹配的转发表项,则所述第一PE仅将所述单播报文向所述第一VSI内连接本地CE的其他AC泛洪。本发明对于从AC上接收到的目的MAC地址未知的单播报文,不再向骨干网络侧泛洪,而只在本地站点泛洪,节省了骨干网的带宽资源。
【专利说明】报文转发方法及服务提供商网络边缘设备
【技术领域】
[0001]本发明涉及数据通信【技术领域】,特别涉及一种报文转发方法及服务提供商网络边缘设备。
【背景技术】
[0002]为了实现高可靠性和冗余部署,当今大多数企业网络及其数据中心跨越了位于不同地理位置的多个物理站点(Site),在这些站点部署类似的业务,并在这些站点之间进行二层互联。为了实现站点间的资源动态调配和管理,虚拟机在数据中心站点之间要能够自由迁移,由于虚拟机迁移过程对用户透明,不能改变IP地址,所以必须在分布于异地的站点之间实现二层网络互联。VPLS是一种主要的实现二层网络互联的技术。
[0003]VPLS (Virtual Private LAN Service,虚拟专用局域网服务)在传统 MPLS(Mult1-protocol Label Switching,多协议标签交换)L2VPN (Layer 2 Virtual PrivateNetwork,二层虚拟专用网络)方案的基础上发展而成,它可以实现多点到多点的VPN组网。VPLS为运营商提供了一种更加完备的解决方案。VPLS结合了以太网技术和MPLS技术的优势,是对传统LAN全部功能的仿真,其主要目的是通过运营商提供的IP/MPLS网络连接地域上隔离的多个由以太网构成的LAN(Local Area Network,局域网),使它们像一个LAN那样工作。
[0004]图1是现有技术的VPLS的典型组网图,首先对图1中涉及的技术术语进行解释:
[0005]MPLS:使用定长标签来封装分组报文,基于标签进行转发;
[0006]CE (Customer Edge,用户网络边缘设备):有接口直接与SP (ServiceProvider,月艮务提供商)相连,CE可以是路由器或交换机,也可以是一台主机,也不需要必须支持MPLS ;
[0007]PE (Provider Edge,服务提供商网络边缘设备):与CE相连,主要负责VPN业务的接入,它完成报文从私网到公网隧道,并从公网隧道到私网的映射与转发;
[0008]VSI (Virtual Switch Instance,虚拟交换实例):VPLS 实例在一个 PE 上的一个以太网桥功能实体,根据MAC地址和VLAN TAG (标签)进行二层报文转发,VSI是一台虚拟的边界设备 Virtual Edge Device (VE);
[0009]Pff (Pseudo Wire,伪线):两个PE上的VSI之间的一条双向虚拟连接,由一对方向相反的单向VC (Virtual Circuit,虚电路)LSP (Label Switched Path,标签交换路径)组成,也称为仿真电路,只有两个方向的VC LSP都up,PW才是up的;
[0010]Tunnel (隧道):用于承载PW,一条隧道上可以承载多条PW,隧道是本端PE与对端PE之间的一条直连通道,完成PE之间的数据透明传输,可以是MPLS或GRE (GenericRouting Encapsulation,通用路由封装)隧道等;
[0011]AC (Attachment Circuit,接入电路):用户与服务提供商之间的连接,即连接CE与PE的链路,对应的接口只能是以太网接口。
[0012]如图1所示,用户网络可能包括分布在不同地理位置的多个站点(site)。每个站点包括CE及其下挂的大量的PC (Private Computer,个人电脑)和服务器等,CE通过PE接入骨干网。在骨干网上利用VPLS技术将这些站点连接起来,为用户提供一个VPN,这个VPN称为一个VPLS实例。在PE上,通过VSI来为特定的VPN分配资源。一个PE可以同时设置多个VSI,以同时支持多个VPLS实例。
[0013]如图2所示,VPLS通过数据平面的源MAC地址学习来获得可达性信息。PE为每一个VSI维护一张独立的MAC (Media Access Control,媒体访问控制)地址表。当一个PE从与其连接的CE (也即两者之间的AC)上收到报文时,需要将报文中的源MAC地址学习到与该CE直连的以太网接口(也即VSI的对应端口)上。另外,当一个PE从入方向的VC LSP上学习到一个原来未知的源MAC地址后,会将该源MAC地址学习到收到该报文的PW上,也就是将该源MAC地址与出方向的VC LSP形成映射关系。在图2中,实线箭头表示以太网报文:ARP (Address Resolution Protocol,地址解析协议)广播报文的转发路径,虚线表示ARP响应报文的转发路径。当PE2从PWl上收到ARP广播报文后,会在MAC地址转发表中添加出端口为PWl的MAC转发项。
[0014]VPLS实例中的数据转发是通过查找VSI对应的MAC地址转发表来完成的。报文在PW上发送时,需要打上内层的PW标签和外层的隧道标签。隧道标签主要用于通过隧道中间设备的标签交换,将报文送到对端PE,PW标签用于当报文达到对端PE后,对端PE能根据PW标签找到对应的VSI。
【发明内容】
[0015]有鉴于此,本发明实施例提供了一种报文转发方法及服务提供商网络边缘设备,以至少解决现有技术中存在的当PE从VSI的一个AC上收到目的MAC未知的单播报文时,会将该报文向骨干网侧的所有PW泛洪,从而导致浪费骨干网的带宽资源的问题。
[0016]本发明实施例的技术方案如下:
[0017]一方面,提供了一种报文转发方法,应用于VPLS网络,所述VPLS网络包括多个提供商网络边缘设备PE,每个PE通过接入电路AC连接至用户边界网络设备CE,该方法包括:
[0018]第一 PE从第一 AC上接收到单播报文;
[0019]所述第一 PE在第一 AC关联的第一虚拟交换实例VSI所对应的MAC地址转发表中,查找与所述单播报文中携带的目的MAC地址相匹配的转发表项;
[0020]若未查找到相匹配的转发表项,则所述第一 PE仅将所述单播报文向所述第一 VSI内连接本地CE的其他AC泛洪。
[0021]另一方面,还提供了一种第一 PE,应用于VPLS网络中,该第一 PE包括:接收模块,用于从第一接入电路AC上接收单播报文;
[0022]查找模块,用于在第一 AC关联的第一虚拟交换实例VSI所对应的MAC地址转发表中,查找与所述单播报文中携带的目的MAC地址相匹配的转发表项;
[0023]发送模块,用于若未查找到相匹配的转发表项,则所述第一 PE仅将所述单播报文向所述第一 VSI内连接本地CE的其他AC泛洪。
[0024]本发明实施例的以上技术方案,对于从AC上接收到的目的MAC地址未知的单播报文,不再向骨干网络侧泛洪,而只在本地站点泛洪,以节省骨干网的带宽资源。
【专利附图】
【附图说明】[0025]图1是现有技术的VPLS的典型组网图;
[0026]图2是现有技术的VPLS源地址学习的示意图;
[0027]图3是根据本发明的实施例的建立了第一 MP2MP LSP的一种网络架构示意图;
[0028]图4是根据本发明的实施例的建立了第一 MP2MP LSP的另一种网络架构示意图;
[0029]图5是根据本发明的实施例的通告报文或撤销报文封装在G-ACH传送报文中时的报文格式示意图;
[0030]图6是根据本发明的实施例的从AC上接收到单播报文时的报文转发方法的流程图;
[0031]图7是根据本发明的实施例的从PW上接收到MPLS报文时的报文转发方法的流程图;
[0032]图8是根据本发明的实施例的建立了第二 MP2MP LSP的一种网络架构示意图;
[0033]图9是根据本发明的实施例的PE的一种结构示意图;
[0034]图10是根据本发明的实施例的PE的另一种结构示意图;
[0035]图11是根据本发明的实施例的PE的硬件架构组成示意图。
【具体实施方式】
[0036]现有技术中,当PE从VSI的一个AC上收到目的MAC未知的单播报文(在VSI的MAC地址转发表中未找到匹配的MAC地址的单播报文)时,该PE会将该报文向该VSI内所有连接本地CE的AC和连接远端VSI的PW泛洪(即向骨干网侧的所有PW泛洪),这样会浪费骨干网的带宽资源。
[0037]另外,现有技术的基于数据平面的MAC地址学习,强调PW必须是双向的,当从入方向上收到报文时,PE将该报文的源MAC地址与出方向关联,从而实现MAC地址的学习。因此,需要为每一个PW分配一个唯一的标签作为入标签,由于通常一个VSI下会包含有大量的PW,例如包含几十个PW,为每一个PW分配一个唯一的标签,不仅会占用较多的标签资源,而且也会导致标签分配比较复杂。
[0038]为了解决现有技术中存在的当PE从VSI的一个AC上收到目的MAC未知的单播报文时,会将该报文向骨干网侧的所有PW泛洪,从而导致浪费骨干网的带宽资源的问题,本发明以下实施例提供了一种应用于如图1所示的采用了 VPLS技术的MPLS网络中的数据转发方法以及可以使用该方法的PE。本发明实施例还可以进一步为每一个VSI分配一个唯一的标签,从而可以避免VSI占用较多的标签资源,简化标签分配。
[0039]本发明以下实施例有别于标准的VPLS技术,对骨干网进行了虚拟化,以支持各种基于MPLS的服务:
[0040](I)本发明的一个实施例可以在骨干网中建立连接骨干网中的所有PE的MP2MP(Mult1-point to Mult1-point,多点到多点)LSP,在该MP2MP LSP通信通道上运行必要的MPLS协议,PE通过该MP2MP LSP向其他的PE通告MAC地址可达性信息,以及接收其他PE发送的MAC地址可达性信息;
[0041](2)在进行MAC地址学习时,不是采用现有的数据平面的源MAC地址学习来获得可达性,而是依靠控制平面通告MAC地址可达性信息,S卩,由PE的控制平面学习MAC地址可达性;[0042](3)对于从AC上接收到的目的MAC地址未知的单播报文,不再向骨干网络侧泛洪,而只在本地站点泛洪,以节省骨干网的带宽资源;
[0043](4)为PE上设置的不同的VSI分配不同的VSI标签,每一个VSI分配一个唯一的VSI标签,该VSI标签对应于该VSI的所有PW,从而,一个PE上同属于一个VSI的多个PW可以共同使用一个VSI标签,减少了标签资源的占用,而且也使得标签分配更加简单;
[0044](5)本发明的另一实施例还进一步在骨干网中建立了用于连接属于同一个VPLS实例的所有PE的MP2MP LSP,该MP2MP LSP专门用于传送广播报文。
[0045]为了将(I)与(5)中建立的MP2MP LSP进行区别,以下将(I)中的MP2MP LSP称为第一 MP2MP LSP,将(5)中的 MP2MP LSP 称为第二 MP2MPLSP。
[0046]需要说明的是:下文中的第一PE可以是MP2MP LSP连接的任意一个作为叶子节点的PE,而不特指某一个PE,第二 PE可以是不同于第一 PE的任意一个作为叶子节点的PE,也不特指某一个PE。类似的,第一 AC是指第一 PE连接的任意一个AC,第二 AC是指第二 PE连接的任意一个AC。
[0047]本发明实施例的报文转发方法可以由VPLS网络中的任意一个PE执行(以下称为第一 PE),该方法主要包括以下几个部分:
[0048]一、控制平面的源MAC地址学习
[0049]本发明实施例中,VPLS通过控制平面的源MAC地址学习来获得可达性。当PE从AC上学习到MAC地址(该学习过程同现有技术的MAC源地址学习,这里不再赘述)后,通过通告报文(也可称为MAC通告报文)将学习到的MAC地址信息通告给其他PE,同时也可接收其他PE发来的通告报文。同样,当MAC地址表中有MAC地址发生了老化时,也可将发生了老化的MAC地址携带在撤销报文(也可称为MAC撤销报文)中通告给其他PE,同时也可接收其他PE发来的撤销报文。通告报文和撤销报文通过部署在骨干网中的第一 MP2MP LSP来传输,因此,本发明实施例中的控制平面的源MAC地址学习需要依赖于第一 MP2MP LSPjB图3和4所示。
[0050]图3和图4是建立了 MP2MP LSP的两种网络架构示意图。如图3和图4所示,在骨干网络中部署有一个连接所有PE的第一 MP2MP LSP,该第一 MP2MP LSP作为各个PE之间交互协议报文的通信通道。MP2MP LSP只用于承载PE之间的协议报文,包括通告报文和撤销报文,而不用于承载用户数据报文,是一条低负载的通信通道。
[0051]可以根据RFC提供的技术方案建立第一 MP2MP LSP,指定骨干网中的一个节点作为根节点(根节点可以是P设备,也可以是PE ),第一 MP2MPLSP上除根节点以外的其他PE称为叶子节点。根节点是第一 MP2MP LSP上的唯一组播复制节点,根节点对于从任意一个作为叶子节点的PE接收到的分组报文进行组播复制(也就是将分组报文的最外层的隧道标签分别替换为转发到不同PE所需要的标签),发给第一 MP2MP LSP连接的其它PE。从而,作为叶子节点的PE之间可以通过第一 MP2MP LSP交互通告报文和撤销报文。
[0052]图3中,根节点为P设备,图4中,根节点为PE。图3和图4中省略了除指定为根节点的P设备以外的所有其它P设备,虚线双向箭头表示连接根节点与叶子节点的双向的LSP 片段(sub-LSP)。
[0053]本发明实施例的控制平面的源MAC地址学习由特别定义的VPLS MAC地址路由协议完成,该协议报文由第一 MP2MP LSP转发,协议运行机制包括MAC地址信息通告和撤销两个过程,下面分别对这两个过程进行详细介绍:
[0054]1、MAC地址信息通告
[0055]本发明实施例的MAC地址信息通告的方法,应用于一 VPLS网络,该VPLS网络包括多个PE,每个PE通过AC连接至CE ;不同PE上配置的属于同一 VPLS实例的VSI之间建立有PW连接,PE上的每个VSI分配有一个唯一的VSI标签,该VSI标签唯一对应于该PE上的一个VSI,并且该VSI的所有PW均使用该VSI标签,即该VSI标签对应于该VSI的所有Pff ;该VPLS网络中还部署有连接网络中所有PE的第一 MP2MP LSP。上述MAC地址通告的方法,包括以下步骤:
[0056]步骤S402,第一 PE从第一 MP2MP LSP上接收到第二 PE在从AC (为描述方便,假设该AC为第二 AC)上学习到MAC地址后发送的通告报文,该通告报文中携带有第二 PE从该第二 AC上学习到的MAC地址以及与该第二 AC关联的第二 VSI的VSI标签(为描述方便,假设该VSI标签为第二 VSI标签);
[0057]第一 MP2MP LSP上连接的任意一个作为叶子节点的PE从AC (也即从与自己连接的CE)上学习到MAC地址(可以是一个或多个)之后,会通过第一 MP2MP LSP发送携带有自身从AC上学习到的MAC地址以及与该AC关联的VSI标签的通告报文。因此,第一 PE从AC(为描述方便,假设该AC为第一 AC)上学习到MAC地址之后,会通过第一 MP2MP LSP向其他PE发送携带有第一 PE从该第一 AC上学习到的该MAC地址以及与该第一 AC关联的VSI标签的通告报文;同样,第二 PE从第二 AC上学习到MAC地址之后,也会通过第一 MP2MP LSP向其他PE发送携带有第二 PE从该第二 AC上学习到的该MAC地址以及与该第二 AC关联的VSI标签的通告报文。
[0058]对于单向流的应用,因为相反方向没有数据流,因此PE不能从AC上学习到MAC地址,可以手工在PE上配置静态MAC地址,然后再由PE通过第一 MP2MP LSP向其他PE通告这个MAC地址。
[0059]步骤S404,第一 PE判断本地是否存在与在步骤S402中接收到的通告报文中携带的VSI属于同一个VPLS实例的VSI,若存在,则进入步骤S406,否则,进入步骤S408 ;
[0060]在实际应用中,由于在PE上设置一个VSI时,会指定该VSI所属的VPLS实例的VPLS ID。VPLS网络中不同VPLS实例对应不同的VPLS ID,因此VPLS ID可以标识了一个VSI所属的VPLS实例。本发明实施例中,PE从AC上学习到的MAC地址后,还可以在通告报文中可以携带与该AC关联的VSI所属的VPLS实例的VPLS ID。
[0061]因此,在步骤S404中,可以通过判断本地设置的VSI所属的VPLS实例的VPLS ID中是否与通告报文中携带的VPLS ID相同,来判断本地是否存在与该通告报文中携带的VSI属于同一个VPLS实例的VSI,若本地存在相同的VPLSID,则说明本地存在属于同一个VPLS实例的VSI,否则,说明本地不存在属于同一个VPLS实例的VSI。
[0062]步骤S406,若本地存在与在步骤S402中接收到的通告报文中携带的VSI属于同一个VPLS实例的VSI,则所述第一 PE在该VSI对应的MAC地址转发表中新建一转发表项,该转发表项保存有第二MAC地址、第二 VSI标签和所选隧道之间的对应关系,所述所选隧道是从第一 PE到二 PE的隧道中为第二 VSI所选择的隧道。
[0063]例如,第一 PE可以将该通告报文中携带的MAC地址添加到该VSI对应的控制平面的路径数据库中,然后根据该路径数据库更新该VSI对应的MAC地址转发表;[0064]根据本发明的一个实施例,每一个PE中,在控制平面上,为每一个VSI维护和管理一个路径数据库,该路径数据库是控制平面的数据库,用于存储对应VSI下的MAC地址可达性信息(也可称为MAC地址信息),由于VPLS实例中的数据转发是通过查找VSI对应的MAC地址转发表来完成的。因此,需要在更新(包括增加、删除和修改)了一个VSI对应的路径数据库中的信息时,根据该路径数据库中的信息更新该VSI对应的MAC地址转发表,该MAC地址转发表是数据平面的。
[0065]在实际实施时,PE还需要针对本地设置的每一个VSI,为其上存在与该VSI属于同一个VPLS实例的VSI的每一个远端PE (简称为对端PE)按照预定的隧道选择规则,从自身到该对端PE的隧道(即可以达到该对端PE的隧道,可以是多个)中,为其选取至少一个隧道,用于传送该VSI所属的VPLS实例中的报文到该对端PE,该隧道可以是MPLS隧道或GRE
隧道等。
[0066]因此,通告报文中还可以携带发送该通告报文的PE的PE ID,从而,在步骤S406中,第一PE还需要按照预定的隧道选择规则,从自身与第二PE之间的隧道中为接收到的通告报文中携带的VSI选取隧道,然后,第一 PE建立该通告报文中携带的MAC地址与所选取的隧道的对应关系(也就建立了第二PE通告来的每一个MAC地址与所选取的隧道的隧道ID之间的对应关系),并将该MAC地址、VSI标签以及对应的隧道的隧道ID添加到该VSI对应的路径数据库中,之后根据该路径数据库更新该VSI对应的MAC地址转发表。
[0067]这里,第一 PE可以在首次接收到一个对端PE发送的携带有VSI的通告报文时,针对该VSI,为该对端PE选取(或者针对该对端PE,为该VSI选取)隧道。后续,该对端PE再通告该VSI下学习到的新的MAC地址时,无需再进行隧道选取,直接使用上述所选取的隧道即可。当然,本发明实施例中,第一 PE也可以针对该VSI下的每个新学习到的MAC地址,选取一个与之对应的隧道。
[0068]步骤S408,丢弃该通告报文。
[0069]本发明实施例中,改进了现有的VPLS技术,不是采用标准的LAN交换操作,而是裁剪了其中的数据平面的源MAC地址学习,依靠控制平面通告MAC地址可达性,避免因为数据平面对目的MAC地址未知的单播报文进行泛洪处理所导致的骨干网带宽的浪费。
[0070]此外,为了减少标签资源的占用,简化标签分配,本发明实施例中,为PE上设置的不同的VSI分配不同的VSI标签,每个VSI分配一个唯一的VSI标签,该VSI标签对应于该VSI的所有PW。那么,第一 PE从第一 AC上学习到MAC地址后发送的通告报文中除了可以携带其学习到的MAC地址、第一 AC关联的VSI所属的VPLS实例(在实际实施时,可以用该第一 AC关联的VSI所属的VPLS实例的VPLS ID来标识)、以及第一 PE的PE ID以外,还可以携带有为该VSI分配的VSI标签,例如,通告报文中携带如下内容:
[0071]I)发送该通告报文的PE的PE ID ;
[0072]2) AC关联的VSI所属的VPLS实例的VPLS ID ;
[0073]3) AC关联的VSI的VSI标签;
[0074]4) MAC地址列表(PE从该AC上学习到MAC地址的列表)。
[0075]则,在步骤S406中,第一 PE将接收到的通告报文中携带的MAC地址添加到路径数据库中的同时,还可以将该通告报文中携带的为该VSI分配的VSI标签、第二 PE的PE ID、以及三者之间的对应关系添加到路径数据库中。[0076]这样,在实际实施时,一个VSI对应的路径数据库可以采用如表1所示的形式。同样,该VSI对应的MAC地址转发表可以采用表2及表3的形式。
[0077]
MACVSI标签对端PE隧道选择规则~ 隧道标识~
MAC IVSI Labell PE3首选 Tunnel 5 Tunnel5
[0078]表1
[0079]
【权利要求】
1.一种报文转发方法,应用于虚拟专用局域网服务VPLS网络,所述VPLS网络包括多个提供商网络边缘设备PE,每个PE通过接入电路AC连接至用户边界网络设备CE,其特征在于,所述方法包括: 第一 PE从第一 AC上接收到单播报文; 第一 PE在第一 AC关联的第一虚拟交换实例VSI所对应的MAC地址转发表中,查找与所述单播报文中携带的目的MAC地址相匹配的转发表项; 若未查找到相匹配的转发表项,则所述第一 PE仅将所述单播报文向所述第一 VSI内连接本地CE的其他AC泛洪。
2.根据权利要求1所述的方法,其特征在于,所述VPLS网络中部署有连接所有PE的第一多点到多点MP2MP LSP ;不同PE上配置的属于同一 VPLS实例的VSI之间建立有PW连接;PE上的每个VSI 分配有一个唯一的VSI标签,该VSI标签对应于该VSI的所有PW ;所述方法还包括: 第一 PE从第一 AC上学习到第一 MAC地址之后,通过第一 MP2MP LSP发送携带有第一MAC地址、第一 VSI对应的第一 VSI标签、第一 VSI所属VPLS实例的VPLS ID和第一 PE的PE ID的第一通告报文,其中所述第一 VSI是第一 AC关联的VSI,以使得其他PE根据第一通告报文携带的第一 MAC地址、第一 VSI标签和第一 PE的PE ID,在本地对应VSI的MAC地址转发表增加对应的转发表项,所述本地对应的VSI与第一 VSI属于同一个VPLS实例。
3.根据权利要求2所述的方法,其特征在于,还包括: 第一 PE在第一 VSI的MAC地址转发表中的MAC地址发生老化后,通过第一 MP2MP LSP发送携带有老化的MAC地址、第一 VSI所属VPLS实例的VPLS ID和第一 PE的PE ID的第一撤销报文,以使得其他PE根据第一撤销报文携带的老化的MAC地址,删除本地对应VSI的MAC地址转发表中的对应表项。
4.根据权利要求1所述的方法,其特征在于,还包括: 第一PE从第一MP2MP LSP上接收到第二PE发送的第二通告报文,该第二通告报文中携带有第二 PE从第二 AC上学习到的第二 MAC地址、第二 VSI对应的第二 VSI标签、第二 VSI所属VPLS实例的VPLS ID和第二 PE的PE ID,其中所述第二 VSI是第二 VC关联的VSI ; 第一 PE根据第二通告报文中携带的VPLS ID,判断本地是否存在与第二 VSI属于同一VPLS实例的VSI,若存在,则在该VSI对应的MAC地址转发表中新建一转发表项,该转发表项保存有第二MAC地址、第二 VSI标签和所选隧道之间的对应关系,所述所选隧道是从第一PE到第二 PE的隧道中为第二 VSI所选择的隧道。
5.根据权利要求4所述的方法,其特征在于,还包括: 第一 PE从第一 MP2MP LSP上接收到第二 PE在第二 VSI的MAC地址转发表中的MAC地址发生老化后发送的第二撤销报文,第二撤销报文中携带有老化的MAC地址、第二 VSI所属VPLS实例的VPLS ID、以及第二 PE的PE ID ; 第一 PE根据第二撤销报文中携带的VPLS ID,判断本地是否存在与第二 VSI属于同一VPLS实例的VSI,若存在,则根据所述第二撤销报文更新该VSI对应的MAC地址转发表,以将老化的MAC地址对应的转发表项删除。
6.根据权利要求4所述的方法,其特征在于,还包括: 若查找到与所述单播报文中携带的目的MAC地址相匹配的转发表项,则第一 PE利用该转发表项对应的VSI标签和隧道标签,对所述单播报文进行封装,并转发出去,其中,所述隧道标签为该转发表项中的隧道所对应的隧道标签。
7.根据权利要求6所述的方法,其特征在于,还包括: 第一 PE从PW上接收到MPLS报文后,剥除所述MPLS报文中的隧道封装; 第一 PE进一步剥除所述MPLS报文中的携带的VSI标签,根据该VSI标签,确定对应VSI的MAC地址转发表,并根据该MAC地址转发表对所述MPLS报文进行查表转发。
8.根据权利要求2所述的方法,其特征在于,所述MPLS网络中还部署有连接属于同一个VPLS实例的所有PE的第二 MP2MP LSP,所述第二 MP2MPLSP用于传输广播报文;所述方法还包括: 第一 PE从第一 AC上接收到广播报文之后,查找第一 AC关联的第一 VSI,通过第一 VSI所属VPLS实例所对应的第二 MP2MP LSP发送该广播报文; 第一 PE从第二 MP2MP LSP上接收到广播报文之后,查找属于该第二 MP2MP LSP对应的VPLS实例的VSI,将该广播报文向查找到的VSI内连接本地CE的所有AC进行广播。
9.一种第一服务提供商网络边缘设备PE,应用于虚拟专用局域网服务VPLS网络,其特征在于,包括: 接收模块,用于从第一接入电路AC上接收单播报文; 查找模块,用于在第一 AC关联的第一虚拟交换实例VSI所对应的MAC地址转发表中,查找与所述单播报文中携带`的目的MAC地址相匹配的转发表项; 发送模块,用于在查找模块未查找到相匹配的转发表项时,仅将接收模块接收到的单播报文向所述第一 VSI内连接本地CE的其他AC泛洪。
10.根据权利要求9所述的第一PE,其特征在于,所述VPLS网络中部署有连接所述VPLS网络中的所有PE的第一多点到多点MP2MP LSP ;不同PE上配置的属于同一 VPLS实例的VSI之间建立有PW连接;PE上的每个VSI分配有一个唯一 VSI标签,该VSI标签对应于该VSI的所有Pff ; 所述发送模块还用于在本PE从第一 AC上学习到第一 MAC地址之后,通过第一 MP2MPLSP发送携带有第一 MAC地址、第一 VSI对应的第一 VSI标签、第一 VSI所属VPLS实例的VPLS ID和第一 PE的PE ID的第一通告报文,其中所述第一 VSI是第一 AC关联的VSI,以使得其他PE根据第一通告报文携带的第一 MAC地址、第一 VSI标签和第一 PE的PE ID,在本地对应VSI的MAC地址转发表增加对应的转发表项,所述本地对应的VSI与第一 VSI属于同一个VPLS实例。
11.根据权利要求10所述的第一PE,其特征在于, 所述发送模块,还用于在第一 VSI的MAC地址转发表中的MAC地址发生老化后,通过第一MP2MP LSP发送携带有老化的MAC地址、第一 VSI所属VPLS实例的VPLS ID和第一 PE的PE ID的第一撤销报文,以使得其他PE根据第一撤销报文携带的老化的MAC地址,删除本地对应VSI的MAC地址转发表中的对应表项。
12.根据权利要求9所述的第一PE,其特征在于,还包括:判断模块、路径数据管理模块和转发数据管理模块,其中, 所述接收模块还用于从第一 MP2MP LSP上接收到第二 PE发送的第二通告报文,该第二通告报文中携带有第二 PE从第二 AC上学习到的第二 MAC地址、第二 VSI对应的第二 VSI标签、第二 VSI所属VPLS实例的VPLS ID和第二 PE的PE ID,其中所述第二 VSI是第二 VC关联的VSI ; 所述判断模块用于根据第二通告报文中携带的VPLS ID,判断本地是否存在与所述第二 VSI属于同一个VPLS实例的VSI ; 所述路径数据管理模块用于在所述判断模块判断出本地存在与所述第二 VSI属于同一个VPLS实例的VSI时,将第二 MAC地址、第二 VSI标签和所选隧道之间的对应关系添加到该VSI对应的控制平面的路径数据库中,所述所选隧道是从第一 PE到第二 PE的隧道中为第二 VSI所选择的隧道; 所述转发数据管理模块用于根据该VSI对应的路径数据库更新该VSI对应的MAC地址转发表。
13.根据权利要求12所述的第一PE,其特征在于, 所述接收模块还用于从第一 MP2MP LSP上接收到第二 PE在第二 VSI的MAC地址转发表中的MAC地址发生老化后发送的第二撤销报文,第二撤销报文中携带有老化的MAC地址、第二 VSI所属VPLS实例的VPLS ID、以及第二 PE的PE ID ; 所述判断模块还用于判断本地是否存在与所述接收模块接收到的第二撤销报文中携带的第二 VSI属于同一 VPLS实例的VSI ; 所述路径数据管理模块还用于在本地存在与第二 VSI属于同一 VPLS实例的VSI时,将第二撤销报文中携带的MAC地址所关联的对应关系,从该VSI对应的路径数据库中删除,并通知所述转发数据管理模块 根据该路径数据库更新该VSI对应的MAC地址转发表。
14.根据权利要求12所述的第一PE,其特征在于, 所述发送模块,还用于在所述查找模块查找到相匹配的转发表项时,利用该转发表项对应的VSI标签和隧道标签,对所述单播报文进行封装,并转发出去,其中,所述隧道标签为该转发表项中的隧道所对应的隧道标签。
15.根据权利要求14所述的第一PE,其特征在于,还包括隧道封装剥除模块和VSI标签剥除模块,其中, 所述接收模块还用于从PW上接收到MPLS报文; 所述隧道封装剥除模块用于从所述接收模块接收到的MPLS报文中剥除隧道封装; 所述VSI标签剥除模块用于从剥除了隧道封装的MPLS报文中剥除VSI标签; 所述发送模块还用于根据该MPLS报文中携带的VSI标签,确定对应VSI的MAC地址转发表,并根据该MAC地址转发剥除了隧道封装以及VSI标签的MPLS报文。
16.根据权利要求10所述的第一PE,其特征在于,所述MPLS网络中还部署有连接属于同一个VPLS实例的所有PE的第二 MP2MP LSP,所述第二 MP2MP LSP用于传输广播报文; 所述接收模块还用于从第一 AC上接收广播报文,以及,从第二 MP2MP LSP上接收广播报文; 所述发送模块还用于在所述接收模块从第一 AC上接收广播报文之后,查找第一 AC关联的第一 VSI,通过第一 VSI所属VPLS实例所对应的第二MP2MPLSP发送该广播报文,以及,在所述接收模块从第二 MP2MP LSP上接收广播报文之后,查找属于该第二 MP2MP LSP对应的VPLS实例的VSI,将该广播报文向查找到的VSI内连接本地CE的所有AC进行广播。
【文档编号】H04L12/741GK103685022SQ201210344345
【公开日】2014年3月26日 申请日期:2012年9月17日 优先权日:2012年9月17日
【发明者】叶金荣 申请人:杭州华三通信技术有限公司