一种虚拟专用局域网服务网络中报文处理的方法及设备的制作方法

文档序号:7701854阅读:88来源:国知局
专利名称:一种虚拟专用局域网服务网络中报文处理的方法及设备的制作方法
技术领域
本发明涉及虚拟专用局域网服务(VPLS , Virtual Private LAN Service )网 络技术领域,具体涉及一种VPLS网络中报文处理的方法及服务提供商边缘网 络设备(PE, Provider Edge )。
背景技术
VPLS也被称为透明局域网服务(TLS, Transparent LAN Service )或虛拟 专有交换网络服务(Virtual Private Switched Network Service ),它是在公用网 络中提供的一种点到多点的二层(数据链路层)虛拟专用网(VPN, Virtual Private Network)业务。在VPLS网络中,用户站点是由多点网络连接起来, 与传统VPN提供的点到点(P2P, Point to Point)的连接服务有所不同。VPLS 实际上就是将在PE上创建一系列的虚拟交换机租借给用户,虚拟交换机的组 网和传统交换才几完全相同。这样,用户就可以通过i成域网(MAN, Metropolitan Area Network)或广域网(WAN, Wide Area Network)来实现自己的局域网 (LAN, Local Area Network)。
图1所示为现有技术中一种典型的VPLS组网示意图。VPLS网络主要包 括以下几个重要的组成部分
用户网络边缘设备(CE, Customer Edge ):直接与服务提供商网络相连的 用户边缘设备,如图1中的CE1 ~ CE4。
PE:服务提供商网络上的边缘设备,与CE相连,主要负责VPN业务的 接入,包括实现报文从私网到公网隧道、从公网隧道到私网的映射与转发。如 图1中的PE1 ~PE3。
虛拟交换实例(VSI, Virtual Switch Instance ): VPLS实例在一台PE上的 一个以太网桥功能实体,根据MAC地址和虛拟局域网标签(VLANTAG)进 行二层报文转发。接入电路(AC, Attachment Circuit):用户与服务提供商之间的连接,即 连接CE与PE的链路。
虚链路(PW, Pseudo Wire ):两个PE上的VSI之间的一条双向虛拟连接。 它由一对方向相反的单向的多协议标签交换(MPLS, Multi-Protocol Label Switching)虚电路(VC, Virtual Circuit)组成。
隧道(Tunnel):用于承载PW, —条隧道上可以承载多条PW。隧道是本 地PE与对端PE之间的一条直连通道,完成PE之间的数据透明传输,可以 是MPLS或通用路由封装(GRE, Generic Routing Encapsulation )隧道等。
VPLS为用户网络模拟了一个以太网桥,基于MAC地址或者MAC地址 加VLANTAG来做出转发决策。跟一个特定的VPLS服务关联的每个PE都为 该VPLS实例建立一个VSI,每个VSI维护一张MAC地址转发表。PE在转 发报文的同时学习源MAC地址并维护该MAC地址转发表,建立MAC地址 与PE的端口或PW之间的对应关系。PE的MAC地址学习过程包含两部分
1)与用户直接相连端口的本地MAC地址学习
对于从CE侧的CE上收到的报文,需要将报文中的源MAC地址(即CE 侧的MAC地址)学习到与该CE直连的端口上,建立CE侧的MAC地址与 端口之间的对应关系。
2)与PW关联的远程MAC地址学习PW是由一对单向的VC标签交 换路径(LSP, Label Switched Path)组成。当在入方向的VC LSP上学习到一 个原来未知的源MAC地址后,PE将源MAC地址学习到收到该报文的PW(虛 拟的以太网接口 )上,也就是建立MAC地址与PW之间的对应关系。
按照现有协议,VPLS中的报文转发是通过查找VSI的MAC地址转发表 来完成的。如果PE从VSI的一个端口上收到本地CE发出的组播报文、广播 报文或目的MAC未知的单播报文(在该VSI的MAC地址转发表中未找到匹 配的MAC地址)时,PE将向该VSI内所有连接本地CE的端口 (不包括上述 组播报文、广播报文或单播报文的接收端口 )和连接远端PE的PW泛洪。如 果PE从VSI的PW上收到上述组播报文、广播报文或单播报文,则只向该 VSI内的所有连接本地CE的端口泛洪,而不再通过PW向远端PE泛洪。
上述泛洪处理方式,对于组播报文或广播报文来说是必要的,但是对于目
5的MAC地址未知的单播报文(以下简称为未知单播报文)的泛洪处理,将产 生大量冗余的单播报文,存在浪费大量网络带宽资源的缺点。例如,图1中 PE1在VSI的某个端口上接收到CEl发送的一个单播报文,假设该单播报文 的目的MAC地址是CE2所连接的第二用户的MAC地址,源MAC地址是CE1 所连接的第一用户的MAC地址。此时如果PE1维护的该VSI的MAC地址转 发表中没有该第二用户的MAC地址,则PEl将采用泛洪的方式,向该VSI 内的所有连接本地CE的端口 (不包括接收到该第一单一番报文的端口 )和连接 远端PE的PW泛洪该单播报文,从而CE4、 PE2和PE3都将收到该单播报文, 其中,发送到CE4和PE3的单播报文最终将被丢弃,这些报文浪费了宝贵的 网络带宽资源。上述缺点在VPLS組网规模庞大、PE节点较多时尤为突出。

发明内容
本发明实施例所要解决的技术问题是提供一种VPLS网络中报文处理的 方法及PE,用以减少VPLS网络中未知单播报文的泛洪流量,克服现有技术 中对未知单播流量的泛洪处理方式所造成的浪费大量网络带宽资源的问题。
为解决上述技术问题,本发明实施例提供方案如下 一种虚拟专用局域网服务网络中报文处理的方法,包括 步骤A,服务提供商边缘网络设备PE从虚拟交换实例VSI的虚链路PW 上接收到源、目的MAC地址分别为第一、第二MAC地址的第一单播报文;
步骤B, PE查找所述VSI的MAC地址转发表,判断用户网络边缘设备 CE侧的MAC地址中是否存在第二 MAC地址若是,则根据所述MAC地址 转发表单播转发所述第一单播报文,并在所述第一单播报文是来自所述PW 的、且目的MAC地址为所述第二MAC地址的首个报文时,向所述PW返回 源、目的MAC地址分别为第二、第一MAC地址的第二单播报文,所述第二 单播报文用于供所述PW对端的PE学习所述第二 MAC地址。
优选地,上述方法中,所述步骤B中,在CE侧的MAC地址中不存在所 述第二 MAC地址时,PE在所述VSI内的所有连接本地CE的端口上泛洪所述 第一单播报文。
优选地,上述方法中,所述步骤B中,所述根据所述MAC地址转发表单地址转发表,确定第二 MAC 地址对应的端口 ,并通过所述第二 MAC地址对应的端口单播转发所述第一单 播报文。
优选地,上述方法中,所述步骤B中,在所述第一单播报文不是所述首 个报文时,直接结束流程。
优选地,上述方法中,PE进一步对来自所述PW的、且目的MAC地址 为所述第二MAC地址的报文数量进行计数,并根据计数值,判断所述第一单 播报文是否为所述首个报文。
本发明实施例还提供了 一种虚拟专用局域网服务网络中的服务提供商边 缘网络设备PE,包括接收单元、判断单元和单播处理单元
所述接收单元,用于从虚拟交换实例VSI的虚链路PW上接收到源、目 的MAC地址分别为第一、第二 MAC地址的第一单播才艮文;
所述判断单元,用于查找所述VSI的MAC地址转发表,判断用户网络边 缘设备CE侧的MAC地址中是否存在第二MAC地址若是,则触发所述单 播处理单元;
所述单播处理单元,用于根据所述MAC地址转发表单播转发所述第 一单 播报文,并在所述第一单播报文是来自所述PW的、且目的MAC地址为所述 第二 MAC地址的首个报文时,向所述PW返回源、目的MAC地址分别为第 二、第一MAC地址的第二单播报文,所述第二单播报文用于供所述PW对端 的PE学习所述第二 MAC地址。
优选地,上述PE中,还包括泛洪处理单元;
所述判断单元,还用于在CE侧的MAC地址中不存在第二 MAC地址时, 触发所述泛洪处理单元;
所述泛洪处理单元,用于在所述VSI内的所有连4矣本地CE的端口上泛洪 所述第一单播报文。
优选地,上述PE中,所述单播处理单元,还用于根据所述MAC地址转 发表,确定第二 MAC地址对应的端口 ,并通过所述第二 MAC地址对应的端 口单播转发所述第 一单播报文。
优选地,上述PE中,所述单播处理单元,还用于对来自所述PW的、且目的MAC地址为所述第二 MAC地址的报文数量进行计数,并根据计数值, 判断所述第 一单播报文是否为所述首个报文。
从以上所述可以看出,本发明提供的VPLS网络中报文处理的方法及PE, PE在VSI的MAC地址转发表中维护有CE侧的第二 MAC地址时,如果侦听 到来自PW的、目的MAC地址为第二MAC地址的首个报文,则主动向PW 返回源MAC地址为第二 MAC地址的第二单播报文,使得PW对端的PE能 够快速学习到第二 MAC地址,而不必被动等待第二用户发送的报文到达自身 后才学习到第二MAC地址,从而可以在很大程度上减少VPLS网络中对单播 报文进行泛洪处理所产生的流量,节约网络带宽资源,同时降低了PE处的报 文泛洪转发压力,提高了PE的设备稳定性。并且,本实施例没有改变现有的 VPLS网络架构,与现有的VPLS的相关协议相互兼容。


图1为现有技术中一种典型的VPLS组网示意图2为本发明实施例所述VPLS网络中报文处理的方法的流程示意图3为本发明实施例所述VPLS网络中的PE的结构示意图。
具体实施例方式
本发明提出一种VPLS网络中报文处理的方法,PE在自身VSI的MAC 地址转发表中维护有CE侧的MAC地址时,如果侦听到来自PW的、目的 MAC地址为所述MAC地址的首个报文,则主动向PW返回源MAC地址为所 述MAC地址的单播报文,使得PW对端的PE能够快速学习到所述MAC地 址,而不必被动等待第二用户发送的报文到达自身后才学习到所述MAC地址, 从而变未知单播报文的泛洪为已知单播报文的单播转发,减少了 VPLS网络中 未知单播报文泛洪处理产生的流量,达到了节约网络带宽资源的目的。以下将
结合附图,通过具体实施例对本发明做进一步的说明。
仍然结合图1进行说明。现有技术中,PE1在VSI的某个端口上接收到 CE1发送的、源MAC地址是CE1所连接的第 一用户的MAC地址(以下简称 为第一 MAC地址)、目的MAC地址为CE2所连接的第二用户的MAC地址(以下简称为第二 MAC地址)的第 一单播才艮文时,如果该VSI的MAC地址 转发表中没有该第二MAC地址,则PEl将采用泛洪的方式,向该VSI内的所 有连接本地CE的端口 (不包括接收到该第一单播报文的端口 )和连接远端PE 的PW泛洪该第一单播报文。这种泛洪处理将一直持续到PE1学习到第二MAC 地址为止。现有技术中,如果PEl —直没有接收到第二用户发出的报文,则 将一直无法学习到第二MAC地址,因此上述泛洪处理将一直持续,从而严重 消耗了网络带宽资源。
从以上分析可以看出,如果PE1能够尽早学习到第二MAC地址,则可以 尽早地将泛洪处理转换为单播转发,从而可以大大减少对单播报文进行泛洪处 理所产生的流量。为此,本实施例提出一种VPLS网络中报文处理的方法,如 图2所示,具体包括以下步骤
步骤21, CE1发送一个第一单播报文,该第一单播报文的源、目的MAC 地址分别为第一、第二MAC地址。这里,假设第一MAC地址为CE1连接的 第一用户的MAC地址,第二 MAC地址为CE2连接的第二用户的MAC地址。
步骤22,上述第一单播报文经过CE1和PEl之间的AC到达PEl, PEl 从某个VSI的端口上接收到该第一单播报文。这里,假设PEl维护的该VSI 的MAC地址转发表中不存在第二 MAC地址,此时PEl将该第一单播报文向 该VSI内的所有连接本地CE的端口 (不包括接收到该第一单播报文的端口 ) 和连接远端PE的PW泛洪,从而CE4、 PE2和PE3都将收到该第一单播报文。
步骤23, CE4接收到第一单播报文后,按照现有技术的处理方式进行处 理,其处理过程与本发明无关,不再进行说明。
PE3从PW2上接收到第一单播报文后,由于与第二用户连接的CE2并没 有连接在PE3的下面,也就是说PE3查找自身维护的该VSI的MAC地址转 发表,会发现CE侧的MAC地址中不存在第二IP地址,因此PE3将向CE侧 泛洪该第一单播报文,即在本设备的该VSI内的所有连接本地CE的端口发送 第一单播报文;
PE2从PW1上接收到第一单播报文后,查找自身维护的该VSI的MAC 地址转发表,判断该MAC地址转发表的CE侧的MAC地址中是否存在第二 MAC地址如果不存在,则与PE3的处理方式相同,向自身CE侧泛洪该第一单播报 文,即在该VSI内的所有连接本地CE的端口发送该第一单播报文;
如果存在,则根据该VSI的MAC地址转发表,确定第二MAC地址对应 的端口,通过第二MAC地址对应的端口单播转发该第一单播报文,并且,进 一步判断第一单播报文是否是来自PW1的、且目的MAC地址为第二MAC地 址的首个报文(第一个报文)若是,则构造一个源、目的MAC地址分别为 第二、第一MAC地址的第二单播报文,并根据该VSI的MAC地址转发表, 将该第二单播报文转发出去;否则,不做其它处理。这里,所述第二单播报文 用于供所述PW1对端的PE (PE1 )学习第二MAC地址。PE2可以通过对来 自PW1的、且目的MAC地址为所述第二 MAC地址的报文数量进行计数,并 根据计数值,判断所述第一单播报文是否为来自PW1的、且目的MAC地址 为所述第二 MAC地址的首个报文。
在转发第二单播报文之前,PE2已经按照现有的MAC地址学习方法,从 第一单播报文的源MAC地址学习到了第一 MAC地址,并在该VSI的MAC 地址转发表中建立了第一 MAC地址和PW1之间的对应关系,因此,在转发 第二单播报文时,PE2将根据第二单播报文的目的MAC地址(第一 MAC地 址),向PW1转发第二单播报文,从而第二单播报文将由PW1到达PEl。
这里,PE2维护的MAC地址转发表中CE侧的MAC地址中是否存在第 二MAC地址,通常取决于第二用户发送的报文是否已经经过PE2,如果已经 经过PE2,则PE2将会学习到第二用户的第二MAC地址。在大多数情况下, 第二用户发送的报文很可能已经经过PE2,例如,在第二用户向与CE3连接 的第三用户发送报文时,该报文将会经过PE2,从而PE2就能够从该报文的源 MAC地址中学习到第二 MAC地址。因此本实施例在很大程度上能够使得PE1 快速学习到第二 MAC地址,从而减少未知单播报文泛洪处理产生的流量。
步骤24,第二单播报文经PW1到达PEl, PE1接收到第二单播报文后, 按照现有的MAC地址学习方法,学习到第二单播报文的源MAC地址(第二 MAC地址),从而在自身维护的该VSI的MAC地址转发表增加PW侧的第二 MAC地址以及与第二 MAC地址对应的PW1 。
步骤25,此后,PE1如果再从CE侧接收到目的MAC地址为第二 MAC地址的单播报文,就可以根据MAC地址转发表直接进行单播转发,而不用再
进行泛洪处理,从而可以减少对单播报文进行泛洪处理产生的流量。
从以上所述可以看出,本实施例PE2在VSI的MAC地址转发表中维护有 CE侧的第二 MAC地址时,如果侦听到来自PW1的、目的MAC地址为第二 MAC地址的首个才艮文,则主动向PE1返回源MAC地址为第二 MAC地址的 第二单播报文,使得PE1能够快速学习到第二MAC地址,而不必被动等待第 二用户发送的报文到达自身后才学习到第二MAC地址,从而提前结束了 PE1 处对目的MAC地址为第二 MAC地址的单播报文的泛洪处理,而替代为根据 MAC地址转发表直接单播转发。通过采用上述技术手段,本实施例可以在很 大程度上减少VPLS网络中对单播报文进行泛洪处理所产生的流量,节约网络 带宽资源,同时可以降低PE处的报文转发压力,提高PE的设备稳定性。并 且,本实施例没有改变现有的VPLS网络架构,与现有的VPLS的相关协议相 互兼容。
最后,基于上述的VPLS网络中报文处理的方法,本实施例还提供了一种 VPLS网络中的PE,如图3所示,该PE包括接收单元、判断单元和单播触发 单元。其中,
所述接收单元,用于从虚拟交换实例VSI的虚链路PW上接收到源、目 的MAC地址分别为第一、第二 MAC地址的第一单播报文;
所述判断单元,用于查找所述VSI的MAC地址转发表,判断用户网络边 缘设备CE侧的MAC地址中是否存在第二 MAC地址若是,则触发所述单 播处理单元;
所述单播处理单元,用于根据所述MAC地址转发表单播转发所述第 一单 播报文,并且在所述第一单播报文是来自所述PW的、且目的MAC地址为所 述第二MAC地址的首个报文时,向所述PW返回源、目的MAC地址分别为 第二、第一MAC地址的第二单播报文,所述第二单播报文用于供所述PW对 端的PE学习所述第二 MAC地址。
这里,优选地,上述PE还可以包括一泛洪处理单元。所述判断单元,还 可以用于在CE侧的MAC地址中不存在第二 MAC地址时,触发所述泛洪处 理单元;所述泛洪处理单元,用于在所述VSI内的所有连接本地CE的端口上泛洪所述第一单播报文。
优选地,所述单播处理单元,在单播转发第一单播报文时,可以根据所述
MAC地址转发表,确定第二 MAC地址对应的端口 ,并通过所述第二 MAC 地址对应的端口单播转发所述第一单播报文。
优选地,所述单#"处理单元,还可以用于对来自所述PW的、且目的MAC 地址为所述第二MAC地址的报文数量进行计数,并根据计数值,判断所述第 一单播报文是否为来自所述PW的、且目的MAC地址为所述第二 MAC地址 的首个报文。
综上所述,本发明实施例提供的VPLS网络中报文处理的方法及PE,能 够在很大程度上减少VPLS网络中未知单播报文的泛洪流量,克服现有技术中 对未知单播流量的泛洪处理方式造成的浪费大量网络带宽资源的问题
以上所述仅是本发明的实施方式,应当指出,对于本技术领域的普通技术 人员来说,在不脱离本发明原理的前提下,还可以作出若干改进和润饰,这些 改进和润饰也应视为本发明的保护范围。
权利要求
1.一种虚拟专用局域网服务网络中报文处理的方法,其特征在于,包括步骤A,服务提供商边缘网络设备PE从虚拟交换实例VSI的虚链路PW上接收到源、目的MAC地址分别为第一、第二MAC地址的第一单播报文;步骤B,PE查找所述VSI的MAC地址转发表,判断用户网络边缘设备CE侧的MAC地址中是否存在第二MAC地址若是,则根据所述MAC地址转发表单播转发所述第一单播报文,并在所述第一单播报文是来自所述PW的、且目的MAC地址为所述第二MAC地址的首个报文时,向所述PW返回源、目的MAC地址分别为第二、第一MAC地址的第二单播报文,所述第二单播报文用于供所述PW对端的PE学习所述第二MAC地址。
2. 如权利要求1所述的方法,其特征在于,所述步骤B中,在CE侧的 MAC地址中不存在所述第二 MAC地址时,PE在所述VSI内的所有连接本地 CE的端口上泛洪所述第一单播报文。
3. 如权利要求2所述的方法,其特征在于,所述步骤B中,所述根据所 述MAC地址转发表单播转发所述第一单播报文是PE根据所述MAC地址转 发表,确定第二 MAC地址对应的端口 ,并通过所述第二 MAC地址对应的端 口单播转发所述第 一单播报文。
4. 如权利要求2所述的方法,其特征在于,所述步骤B中,在所述第一 单播报文不是所述首个报文时,直接结束流程。
5. 如权利要求1所述的方法,其特征在于,PE进一步对来自所述PW的、 且目的MAC地址为所述第二 MAC地址的报文数量进行计数,并根据计数值, 判断所述第 一单播报文是否为所述首个报文。
6. —种虚拟专用局域网服务网络中的服务提供商边缘网络设备PE,其特 征在于,包括接收单元、判断单元和单播处理单元所述接收单元,用于从虚拟交换实例VSI的虚链路PW上接收到源、目 的MAC地址分别为第 一 、第二 MAC地址的第 一单播^^文;所述判断单元,用于查找所述VSI的MAC地址转发表,判断用户网络边 缘设备CE侧的MAC地址中是否存在第二MAC地址若是,则触发所述单播处理单元;所述单播处理单元,用于根据所述MAC地址转发表单播转发所述第 一单 播报文,并在所述第一单播报文是来自所述PW的、且目的MAC地址为所述 第二MAC地址的首个报文时,向所述PW返回源、目的MAC地址分别为第 二、第一MAC地址的第二单播"I艮文,所述第二单播报文用于供所述PW对端 的PE学习所述第二 MAC地址。
7. 如权利要求6所述的PE,其特征在于,还包括泛洪处理单元; 所述判断单元,还用于在CE侧的MAC地址中不存在第二 MAC地址时,触发所述泛洪处理单元;所述泛洪处理单元,用于在所述VSI内的所有连接本地CE的端口上泛洪 所述第一单播报文。
8. 如权利要求7所述的PE,其特征在于,所述单播处理单元,还用于根据所述MAC地址转发表,确定第二 MAC 地址对应的端口 ,并通过所述第二 MAC地址对应的端口单播转发所述第一单 播报文。
9. 如权利要求6所述的PE,其特征在于,所述单播处理单元,还用于对来自所述PW的、且目的MAC地址为所述 第二MAC地址的报文数量进行计数,并根据计数值,判断所述第一单播报文 是否为所述首个报文。
全文摘要
本发明提供了一种虚拟专用局域网服务网络中报文处理的方法及设备。所述方法中,PE在侦听到来自PW的、目的MAC地址为第二MAC地址的首个报文,则主动向PW返回源MAC地址为第二MAC地址的单播报文,使得PW对端的PE能够快速学习到第二MAC地址,从而可以在很大程度上减少VPLS网络中对单播报文进行泛洪处理所产生的流量,节约网络带宽资源。
文档编号H04L12/56GK101616082SQ20091009011
公开日2009年12月30日 申请日期2009年7月29日 优先权日2009年7月29日
发明者王茹萍, 金小艇 申请人:杭州华三通信技术有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1