首页> 中国专利> 通告PE设备的信息的方法和PE设备

通告PE设备的信息的方法和PE设备

摘要

本发明实施例公开了一种通告PE设备的信息的方法及相关装置,应用于BGP-based MVPN中,包括:所述MVPN中的PE设备确定所述PE设备在所述MVPN中的角色和所述角色对应的工作状态,所述角色是根节点和/或叶子节点,所述工作状态是主用或者备用;所述PE设备生成BGP update消息,所述BGP update消息携带所述PE设备的IP地址、所述MVPN的标识、第一PE设备的所述角色和所述工作状态;所述PE设备向所述PE设备在所述MVPN中的BGP邻居发送所述BGP update消息。本发明实施例提供的技术方案,可以解决现有技术中应用BGP-based MVPN时配置工作量大且容易出错的问题。

著录项

  • 公开/公告号CN104253736A

    专利类型发明专利

  • 公开/公告日2014-12-31

    原文格式PDF

  • 申请/专利权人 华为技术有限公司;

    申请/专利号CN201310270948.4

  • 发明设计人 李振斌;

    申请日2013-06-29

  • 分类号H04L12/46;H04L12/24;

  • 代理机构

  • 代理人

  • 地址 518129 广东省深圳市龙岗区坂田华为总部办公楼

  • 入库时间 2023-12-17 02:44:42

法律信息

  • 法律状态公告日

    法律状态信息

    法律状态

  • 2017-11-24

    授权

    授权

  • 2015-01-21

    实质审查的生效 IPC(主分类):H04L12/46 申请日:20130629

    实质审查的生效

  • 2014-12-31

    公开

    公开

说明书

技术领域

本发明涉及通信技术领域,具体涉及一种通告运营商边缘(Provider Edge, PE)设备的信息的方法和PE设备。

背景技术

当前边界网关协议/多协议标签交换三层虚拟专用网(Border Gateway  Protocol/Multiprotocol Label Switching Layer3Virtual Private Network, BGP/MPLS Layer3VPN)应用广泛,而对于组播业务,由于IP电视(Internet  protocol television,IPTV)等业务的快速发展,迫切需要利用现有单播网 络架构,在BGP/MPLS Layer3VPN的基础上实现组播数据转发。基于以上原因, 组播虚拟专用网(Multicast Virtual Private Network,MVPN)应运而生。

现有技术提出了一种基于边界网关协议(Border Gateway Protocol,BGP) 的MVPN,本文中称之为BGP-based MVPN。BGP-based MVPN中,将PE设备划 分为两种角色,即根节点和叶子节点。根节点指在MVPN中连接组播源,向其 他PE设备发送组播数据的PE设备。叶子节点指组播接收者所连接的PE设备。 举例来说,在一个BGP-based MVPN中,可能存在多个组播树,一个PE设备可 以在组播树1中是根节点,同时在组播树2和组播树3中是叶子节点。

在BGP-based MVPN中,当第一PE设备需要知道同一个BGP-based MVPN 中的BGP邻居的角色和工作状态时,需要在第一PE设备上配置所述BGP邻居 的角色和工作状态。然而,这种手工配置的方法导致网络配置复杂,尤其是第 一PE设备在MVPN中的BGP邻居数量多时,配置工作量很大,而且容易出错。

发明内容

本发明实施例提供一种通告PE设备的信息的方法和PE设备,用于解决现 有技术中应用BGP-based MVPN时配置工作量大且容易出错的问题。

第一方面,本发明实施例提供一种通过PE设备的信息方法,应用于 BGP-based MVPN中,包括:

所述MVPN中的第一PE设备确定所述第一PE设备在所述MVPN中的角色和所 述角色对应的工作状态,所述角色是根节点和/或叶子节点,所述工作状态是 主用或者备用;

所述第一PE设备生成边界网关协议更新(BGP update)消息,所述BGP  update消息携带所述第一PE设备的IP地址、所述MVPN的标识、所述第一PE设备 的所述角色和所述工作状态;

所述第一PE设备向所述第一PE设备在所述MVPN中的BGP邻居发送所述BGP  update消息。

在第一方面的第一种可能的实现方式中,所述BGP update消息包括网络 层可达性信息(Network Layer Reachability Information,NLRI),所述NLRI 包括路由类型字段、路由区分符(Route Distinguisher,RD)字段、发起者 IP地址字段、根角色字段、所述根角色字段对应的工作状态字段、叶子角色 字段、所述叶子角色字段对应的工作状态字段;

所述路由类型字段的内容标识所述BGP update消息携带所述第一PE设备 的所述角色和所述工作状态;

所述RD字段携带所述第一PE设备上的所述MVPN的实例的RD,所述RD 用作所述MVPN的标识;

所述发起者IP地址字段携带所述第一PE设备的IP地址;

当所述根角色字段携带第一值时,标识所述第一PE设备的所述角色为所 述根节点;

当所述根角色字段对应的工作状态字段携带第二值时,标识所述第一PE 设备的所述工作状态为所述主用;

当所述根角色字段对应的工作状态字段携带第三值时,标识所述第一PE 设备的所述工作状态为所述备用;

当所述叶子角色字段携带第四值时,标识所述第一PE设备的所述角色为 所述叶子节点;

当所述叶子角色字段对应的工作状态字段携带第五值时,标识所述第一PE 设备的所述工作状态为所述主用;

当所述叶子角色字段对应的工作状态字段携带第六值时,标识所述第一PE 设备的所述工作状态为所述备用;

其中,所述第二值和所述第三值不同,所述第五值和所述第六值不同。

结合第一方面的第一种可能的实现方式,在第一方面的第二种可能的实现 方式中,所述NLRI中还包括第一指示字段,所述第一指示字段用于指示所述 NLRI中是否携带第一地址字段,所述第一地址字段携带第二PE设备的IP地 址,所述第二PE设备为所述MVPN中所述第一PE设备所保护的主用根节点;

当所述第一PE设备确定所述第一PE设备的所述角色为所述根节点、所述第 一PE设备的所述工作状态为所述备用且所述第一指示字段指示所述NLRI中携 带所述第一地址字段时,所述NLRI中还包括所述第一地址字段;相应地,所述 方法还包括:所述第一PE设备确定所述第二PE设备的IP地址;

所述NLRI中还包括第二指示字段,所述第二指示字段用于指示所述NLRI 中是否携带第二地址字段,所述第二地址字段携带第三PE设备的IP地址,所述 第三PE设备为所述MVPN中所述第一PE设备所保护的主用叶子节点;

当所述第一PE设备确定所述第一PE设备的所述角色为所述叶子节点、所 述第一PE设备的所述工作状态为所述备用且所述第二指示字段指示所述NLRI 中携带所述第二地址字段时,所述NLRI中还包括所述第二地址字段;相应地, 所述方法还包括:所述第一PE设备确定所述第三PE设备的IP地址。

在第一方面的第三种可能的实现方式中,还包括:所述第一PE设备接收第 四PE设备发来的携带可选P组播业务接口自动发现路由(S-P-Multicast  Service Interface Tunnel auto-discovery route,S-PMSI A-D route)的 消息,所述第四PE设备是所述MVPN中的根节点;

所述BGP update消息用于回应所述携带S-PMSI A-D route的消息,所述BGP  update消息包括网络层可达性信息NLRI,所述NLRI包括路由类型字段、路由关 键字(Route Key)字段、发起者IP地址字段、第一工作状态字段;

所述路由类型字段的内容标识所述第一PE设备的角色为所述叶子节点, 且所述BGP update消息携带所述第一PE设备的所述工作状态;

所述Route Key字段携带所述S-PMSI A-D route中的NLRI;

所述发起者IP地址字段携带所述第一PE设备的IP地址;

当所述第一工作状态字段携带第一值时,标识所述第一PE设备的所述工 作状态为所述主用;

当所述第一工作状态字段携带第二值时,标识所述第一PE设备的所述工 作状态为所述备用;

其中,所述第一值和所述第二值不同。

结合第一方面的第三种可能的实现方式,在第一方面的第四种可能的实现 方式中,当所述第一PE设备确定所述第一PE设备的角色为所述叶子节点且所述 第一PE设备的所述工作状态为所述备用时,所述方法还包括:

所述第一PE设备确定第五PE设备的IP地址,所述第五PE设备为所述MVPN 中所述第一PE设备所保护的主用叶子节点;

相应地,所述NLRI还包括第三地址字段,所述第三地址字段携带所述第五 PE设备的IP地址。

结合第一方面或第一方面的第一种至第四种中的任一一种可能的实现方 式,在第一方面的第五种可能的实现方式中,所述MVPN中的第一PE设备确定所 述第一PE设备在所述MVPN中的角色和所述角色对应的工作状态,包括:

所述第一PE设备接收配置信息,所述配置信息用于指定所述第一PE设备的 所述角色以及所述角色对应的工作状态;

所述第一PE设备根据所述配置信息,确定所述第一PE设备的所述角色和所 述角色对应的工作状态。

第二方面,本发明实施例提供第一PE设备,应用于BGP-based MVPN中, 包括:

第一确定单元,用于确定所述第一PE设备在所述MVPN中的角色和所述角 色对应的工作状态,所述角色是根节点和/或叶子节点,所述工作状态是主用 或者备用;

生成消息单元,用于生成边界网关协议更新BGP update消息,所述BGP  update消息携带所述第一PE设备的IP地址、所述MVPN的标识、所述第一确定单 元确定的所述第一PE设备的所述角色和所述工作状态;

发送单元,用于向所述第一PE设备在所述MVPN中的BGP邻居发送所述生 成消息单元生成的所述BGP update消息。

在第二方面的第一种可能的实现方式中,所述BGP update消息包括网络 层可达性信息NLRI,所述NLRI包括路由类型字段、RD字段、发起者IP地址 字段、根角色字段、所述根角色字段对应的工作状态字段、叶子角色字段、所 述叶子角色字段对应的工作状态字段;

所述路由类型字段的内容标识所述BGP update消息携带所述第一PE设备 的所述角色和所述工作状态;

所述RD字段携带所述第一PE设备上的所述MVPN的实例的RD,所述RD 用作所述MVPN的标识;

所述发起者IP地址字段携带所述第一PE设备的IP地址;

当所述根角色字段携带第一值时,标识所述第一PE设备的所述角色为所 述根节点;

当所述根角色字段对应的工作状态字段携带第二值时,标识所述第一PE 设备的所述工作状态为所述主用;

当所述根角色字段对应的工作状态字段携带第三值时,标识所述第一PE 设备的所述工作状态为所述备用;

当所述叶子角色字段携带第四值时,标识所述第一PE设备的所述角色为 所述叶子节点;

当所述叶子角色字段对应的工作状态字段携带第五值时,标识所述第一PE 设备的所述工作状态为所述主用;

当所述叶子角色字段对应的工作状态字段携带第六值时,标识所述第一PE 设备的所述工作状态为所述备用;

其中,所述第二值和所述第三值不同,所述第五值和所述第六值不同。

结合第二方面的第一种可能的实现方式,在第二方面的第二种可能的实现 方式中,所述NLRI中还包括第一指示字段,所述第一指示字段用于指示所述 NLRI中是否携带第一地址字段,所述第一地址字段携带第二PE设备的IP地址, 所述第二PE设备为所述MVPN中所述第一PE设备所保护的主用根节点;

当所述第一确定单元确定所述第一PE设备的所述角色为所述根节点、所述 第一PE设备的所述工作状态为所述备用且所述第一指示字段指示所述NLRI中 携带所述第一地址字段时,所述NLRI中还包括所述第一地址字段;相应地,所 述第一PE设备还包括:第二确定单元,用于确定所述第二PE设备的IP地址;

所述NLRI中还包括第二指示字段,所述第二指示字段用于指示所述NLRI 中是否携带第二地址字段,所述第二地址字段携带第三PE设备的IP地址,所述 第三PE设备为所述MVPN中所述第一PE设备所保护的主用叶子节点;

当所述第一确定单元确定所述第一PE设备的所述角色为所述叶子节点、 所述第一PE设备的所述工作状态为所述备用且所述第二指示字段指示所述 NLRI中携带所述第二地址字段时,所述NLRI中还包括所述第二地址字段;相 应地,所述第一PE设备还包括:第三确定单元,用于确定所述第三PE设备的 IP地址。

在第二方面的第三种可能的实现方式中,还包括:接收单元,用于接收第 四PE设备发来的携带S-PMSI A-D route的消息,所述第四PE设备是所述MVPN 中的根节点;

所述BGP update消息用于回应所述携带S-PMSI A-D route的消息,所述BGP  update消息包括网络层可达性信息NLRI,所述NLRI包括路由类型字段、Route  Key字段、发起者IP地址字段、第一工作状态字段;

所述路由类型字段的内容标识所述第一PE设备的角色为所述叶子节点, 且所述BGP update消息携带所述第一PE设备的所述工作状态;

所述Route Key字段携带所述S-PMSI A-D route中的NLRI;

所述发起者IP地址字段携带所述第一PE设备的IP地址;

当所述第一工作状态字段携带第一值时,标识所述第一PE设备的所述工 作状态为所述主用;

当所述第一工作状态字段携带第二值时,标识所述第一PE设备的所述工 作状态为所述备用;

其中,所述第一值和所述第二值不同。

结合第二方面的第三种可能的实现方式,在第二方面的第四种可能的实现 方式中,还包括:第四确定单元,用于当所述第一确定单元确定所述第一PE 设备的角色为所述叶子节点且所述第一PE设备的所述工作状态为所述备用 时,确定第五PE设备的IP地址,所述第五PE设备为所述MVPN中所述第一 PE设备所保护的主用叶子节点;相应地,所述NLRI还包括第三地址字段,所 述第三地址字段携带所述第五PE设备的IP地址。

结合第二方面或第二方面的第一种至第四种中的任一一种可能的实现方 式,在第二方面的第五种可能的实现方式中,所述第一确定单元包括:

接收配置子单元,用于接收配置信息,所述配置信息用于指定所述第一 PE设备的所述角色以及所述角色对应的工作状态;

确定子单元,用于根据接收配置子单元接收的所述配置信息,确定所述第 一PE设备的所述角色和所述角色对应的工作状态。

本发明实施例提供的通告PE设备的信息的方法和PE设备,通过 BGP-based MVPN中的PE设备确定其自身在该BGP-based MVPN中的角色和该 角色对应的工作状态,生成BGP update消息并向该PE设备在该BGP-based  MVPN中的BGP邻居发送该BGP update消息,该BGP update消息中携带该PE 设备的IP地址、该MVPN的标识、该PE设备的角色和该角色对应的工作状态, 可以使得该PE设备在同一MVPN中的BGP邻居自动获得该PE设备的角色和工 作状态,从而可以减少MVPN的配置工作量,减少出错。

附图说明

图1是BGP-based MVPN的组网示意图;

图2是本发明实施例提供的一种通告PE设备的信息的方法流程图;

图3是本发明实施例提供的一种第一PE设备的示意图;

图4是本发明实施例提供的一种PE设备的示意图;

图5是本发明实施例提供的一种PE设备的示意图;

图6是本发明实施例提供的一种PE设备的示意图;

图7是本发明实施例提供的一种PE设备的示意图。

具体实施方式

下面通过附图和实施例,对本发明实施例的技术方案做进一步的详细描 述。

图1是BGP-based MVPN的组网示意图,例如图1所示的第一网络100,包 括第二网络140、第三网络101和第四网络150,其中第二网络140是组播源 所在的网络。第三网络101是标签交换网络,运行BGP-based MVPN协议。第 四网络150是组播接收者所在的网络。举例来说,第三网络101包括的MVPN 中有一个MVPN称为MVPN A。在MVPN A中要通过点对多点(point to  multi-point,P2MP)隧道建立以PE5为主用根节点的组播树1。PE6是组播树 1的备用根节点。PE1和PE3是组播树1的主用叶子节点。PE2和PE4是组播 树1的备用叶子节点。如图1所示,主用P2MP隧道用实线表示,备用P2MP 隧道用虚线表示。现有技术中,在建立如图1所示的主、备隧道前,网络管理 员需要在对各PE设备进行配置。以PE5举例,除了配置PE5为MVPN A的主用 根节点外,还需要在PE5上配置其他PE设备的角色和工作状态,例如配置PE6 为MVPN A的备用根节点,PE1和PE3为MVPN A的主用叶子节点,PE2和PE4 为MVPN A的备用叶子节点。本发明实施例提供一种自动通告PE设备的信息的 方法,可以降低对各PE设备的配置工作量,减少出错。

如图2所示,本发明实施例提供一种通告PE设备的信息的方法,应用于 BGP-based MVPN中,包括:

201、所述MVPN中的第一PE设备确定所述第一PE设备在所述MVPN中的角色 和所述角色对应的工作状态,所述角色是根节点和/或叶子节点,所述工作状 态是主用或者备用。

举例来说,第一PE设备可以通过读取配置信息来确定该第一PE设备在所述 MVPN中的角色和所述角色对应的工作状态,该配置信息可以由网络管理员通过 网络管理系统配置到该第一PE设备上。例如,结合图1,网络管理员向MVPN A 中的PE1,PE2,PE3,PE4,PE5,PE6分别下发配置命令,指定这6个PE设备在 MVPN A中的角色和与该角色对应的工作状态。网络管理员可以通过网络管理系 统下发以下配置命令:

向PE5下发配置命令,该配置命令指定PE5是MVPN A中主用根节点;

向PE6下发配置命令,该配置命令指定PE6是MVPN A中的备用根节点;

向PE1下发配置命令,该配置命令指定PE1是MVPN A中的主用叶子节点;

向PE2下发配置命令,该配置命令指定PE2是MVPN A中的备用叶子节点;

向PE3下发配置命令,该配置命令指定PE3是MVPN A中的主用叶子节点;

向PE4下发配置命令,该配置命令指定PE4是MVPN A中的备用叶子节点。

PE1~PE6分别接收到上述配置命令后,确定自身的角色和工作状态。

又举例来说,网络管理员通过配置命令配置PE1~PE6的角色,而PE1~PE6 的工作状态通过虚拟路由冗余协议(Virtual Router Redundancy Protocol, VRRP)确定。比如,MVPN A中的PE1和PE2间可以通过运行VRRP,组成一个VRRP 保护组,根据VRRP运行的结果来自动协商出主、备关系;同理,MVPN A中的PE5 和PE6间,以及PE3和PE4间,也可以分别通过VRRP的方式自动协商出主、备关 系。又例如,PE1~PE6的工作状态通过框间通信协议(Inter-Chassis  Communication Protocol,ICCP)确定。比如,可以在MVPN A中的PE1和PE2 之间,PE5和PE6之间,PE3和PE4之间运行ICCP协议来自动协商出主、备关系。

202、所述第一PE设备生成BGP update消息,所述BGP update消息携带所 述第一PE设备的IP地址、所述MVPN的标识、所述第一PE设备的所述角色和所述 工作状态。

举例来说,BGP update消息可以是第一PE设备在确定其角色和工作状态后 主动生成的,下文中称为方式1;也可以是第一PE设备在接收到MVPN A中作为 根节点的PE设备发来的携带S-PMSI A-D route的消息后,对携带S-PMSI A-D  route的消息进行处理后的生成响应消息,下文中称为方式2,在方式2中,第 一PE设备确定自身是MVPN A中的叶子节点。BGP-based MVPN协议中的BGP  update消息中包括NLRI,称为组播VPN的NLRI(MCAST-VPN NLRI),其格式如表 1所示:

表1BGP-based MVPN协议中的MCAST-VPN NLRI

下面分别详细介绍方式1和方式2。为方便描述,本文中方式1中的BGP  update消息称为BGP update消息A,方式2中的BGP update消息称为BGP update 消息B。BGP update消息A和BGP update消息B中的NLRI,分别称为NLRI A和NLRI  B。

方式1:

在方式1中,NLRI A中的路由类型(Route Type)字段可以新定义一个值, 用以区别BGP-based MVPN协议(如RFC6514)中已经存在的路由类型。该路 由类型字段的内容标识BGP update消息A携带所述第一PE设备的所述角色和 所述工作状态。

举例来说,NLRI A中的路由类型特定(Route Type specific)字段,可 以如表2所示的格式,包括RD字段、发起者IP地址字段(Originating Router's  IP Addr)、根角色字段(R)、所述根角色字段对应的工作状态字段(紧接着R 字段的S)、叶子角色字段(L)、所述叶子角色字段对应的工作状态字段(紧 接着L字段的S):

表2NLRI A中的第1种Route Type specific

其中:

RD字段携带所述第一PE设备上的MVPN的实例的RD,所述RD用作该MVPN 的标识。例如,RD用作MVPN A的标识。

发起者IP地址字段携带所述第一PE设备的IP地址。

根角色字段的值为第一值,例如为1时,标识所述第一PE设备的角色在 MVPN A中是根节点。

根角色字段对应的工作状态字段的值标识所述第一PE设备的工作状态是 主用还是备用。例如,根角色字段对应的工作状态字段的值为第二值,例如为 1时,标识主用;为第三值,例如为0时,标识备用。其中,第二值和第三值 的值不同。

叶子角色字段的值为第四值,例如为1时,标识所述第一PE设备的角色 在MVPN A中是叶子节点。

叶子角色字段对应的工作状态字段的值标识所述第一PE设备的工作状态 是主用还是备用。例如,叶子角色字段对应的工作状态字段的值为第五值,例 如为1时,标识主用;为第六值,例如为0时,标识备用。其中,第五值和第 六值的值不同。

例如,如果R、S、L、S四个字段的值分别为1、1、0、0,标识第一PE 是主用根节点;如果R、S、L、S四个字段的值分别为1、1、1、1,标识第一 PE是主用根节点和主用叶子节点;如果R、S、L、S四个字段的值分别为1、0、 1、1,标识第一PE设备是备用根节点和主用叶子节点。

在方式1中,可选地,NLRI A中还包括第一指示字段(表2中在R后的第一 个E字段)和第二指示字段(表2中在R字段后的第二个E字段),所述第一指示 字段用于指示NLRI A中是否携带第一地址字段(表2中的Protected Root's IP  Addr(Optional)字段),所述第一地址字段携带第二PE设备的IP地址,所述第 二PE设备为所述MVPN中所述第一PE设备所保护的主用根节点;所述第二指示字 段用于指示NLRI A中是否携带第二地址字段(表2中的Protected Leaf's IP  Addr(Optional)字段),所述第二地址字段携带第三PE设备的IP地址,所述第 三PE设备为所述MVPN中所述第一PE设备所保护的主用叶子节点。当所述第一PE 设备确定所述第一PE设备的所述角色为所述根节点、所述第一PE设备的所述工 作状态为所述备用且所述第一指示字段指示所述NLRI中携带所述第一地址字 段时,所述NLRI中还包括所述第一地址字段;相应地,所述方法还包括:所述 第一PE设备确定所述第二PE设备的IP地址;当所述第一PE设备确定所述第一 PE设备的所述角色为所述叶子节点、所述第一PE设备的所述工作状态为所述备 用且所述第二指示字段指示所述NLRI中携带所述第二地址字段时,所述NLRI 中还包括所述第二地址字段;相应地,所述方法还包括:所述第一PE设备确定 所述第三PE设备的IP地址。

这样,通过第一指示字段和第二指示字段,可以灵活地指定NLRI A中是否 进一步携带第一PE设备所保护的主用根节点和/或主用叶子节点,同时可以节 省NLRI A占用的空间。

例如,第一指示字段的值为1时,指示NLRI A中携带了第一地址字段;第 一指示字段的值为0时,指示NLRI A中没有携带第一地址字段。同样,第二指 示字段的值为1时,指示NLRI A中携带了第二地址字段;第二指示字段的值为0 时,指示NLRI A中没有携带第二地址字段。以上1和0仅为数值举例,不构成限 定。

为方便理解,举例来说,如果NLRI A中的R、S、E、L、S、E六个字段的值 分别为1、0、1、1、0、1时,标识第一PE是备用根节点和备用叶子节点,且NLRI  A中携带了第一PE设备所保护的主用根节点和主用叶子节点的IP地址;如果 NLRI A中的R、S、E、L、S、E六个字段的值分别为1、0、1、1、0、0时,标识 第一PE是备用根节点和备用叶子节点,且NLRI A中只携带了第一PE设备所保护 的主用根节点的IP地址;如果NLRI A中的R、S、E、L、S、E六个字段的值分别 为1、0、0、1、0、0时,标识第一PE是备用根节点和备用叶子节点,NLRI A 中没有携带第一PE设备所保护的主用根节点和主用叶子节点的IP地址。

举例来说,第一PE设备确定第二PE设备和第三PE设备的IP地址,可以通过 读取网络管理员下发的配置命令来获得。例如,图1中,以第一PE设备是PE6 举例,PE6是备用根节点,网络管理员还可以进一步向PE6下发配置命令,配置 PE6所保护的主用根节点即PE5的IP地址,PE6接收配置命令后,PE6确定PE6所 保护的主用根节点即PE5的IP地址。

在方式1中,可选地,当第一PE设备的所述工作状态是所述MVPN中的备用 时,还有一种方式可以指示NLRI A中是否携带了第一PE设备所保护的主用节 点,如表3所示。表3没有表2中的第一指示字段和第二指示字段,表3是通过第 三地址字段(Protected Root's IP Addr字段)和第四地址字段(Protected  Root's IP Addr字段)的取值来标识LRI A中是否携带了第一PE设备所保护的 主用节点。例如当表3中的第五地址字段(Protected Root's IP Addr字段) 的值为一个特定的值(该特定的值不是正常的IP地址),例如为0时,标识NLRI  A中未携带第一PE设备所保护的主用根节点;为D1(D1是一个正常的IP地址), 标识第一PE设备所保护的主用根节点的IP地址为D1。当表3中的第六地址字段 (Protected Leaf's IP Addr字段)的值为一个特定的值(该特定的值不是正 常的IP地址),例如为0时,标识NLRI A中未携带第一PE设备所保护的备用根节 点;为D2(D2是一个正常的IP地址)时,标识第一PE设备所保护的主用叶子节点 的IP地址为D2。

表3NLRI A中的第2种Route Type specific

方式2:

第一PE设备接收第四PE设备发来的携带S-PMSI A-D route的消息,所 述第四PE设备是所述MVPN中的根节点,如果第一PE设备确定自身是叶子节 点,第一PE设备可以发送BGP update B消息对S-PMSI A-D route消息进行 响应。例如,图1中,以第一PE设备是PE1,第四PE设备是PE5举例,MVPN  A中的根节点PE5可能会在MVPN A中发送携带S-PMSI A-D route的消息,其 中携带特定的组播源和组播组,如果PE1选择加入该特定的组播源和组播组 中,则PE1可生成BGP update消息B以回应。

举例来说,NLRI B中的路由类型(Route Type)字段可以新定义一个值, 用以区别BGP-based MVPN协议(如RFC6514)中已经存在的路由类型,并且 也与NLRI A中的路由类型不同,NLRI B中的路由类型字段的内容标识所述第 一PE设备的角色为叶子节点,且BGP update消息B携带所述第一PE设备的 工作状态。

其中,NLRI B中的路由类型特定(Route Type specific)字段,可以如 表4所示的格式,包括Route Key字段、发起者IP地址字段、第一工作状态 字段(S):

表4NLRI B中的Route Type specific

其中,Route Key字段携带所述S-PMSI A-D route中的NLRI。所述S-PMSI  A-D route中的NLRI,包括RD字段,其含义与表2中的RD字段的含义相同。

发起者IP地址字段携带所述第一PE设备的IP地址。

第一工作状态字段用于标识所述第一PE设备的工作状态为主用还是备用。 例如,第一工作状态字段的值为第一值,例如为1时,标识主用;为第二值, 例如为0时,标识备用。其中,第一值和第二值的值不同。

在方式2中,可选地,如果所述第一PE设备确定所述第一PE设备的角色 为所述叶子节点且所述第一PE设备的工作状态为备用,则所述第一PE设备还 确定第五PE设备的IP地址,所述第五PE设备为所述MVPN中所述第一PE设 备所保护的主用叶子节点。相应地,表4所示的报文格式中还包括第三地址字 段(Protected Leaf's IP Addr(Optional)),标识第一PE所保护的主用叶子 节点的IP地址。例如,图1中,以第一PE设备是PE2举例,PE2确定自身 是备用叶子节点后,PE2进一步确定PE2所保护的主用叶子节点即PE1的IP 地址,相应地,表4所示的第三地址字段的值是PE1的IP地址。

应理解,在具体的配置命令设计中,配置PE的角色、工作状态和其保护 的主用节点的IP地址,可以分为多个配置命令,也可以是一个配置命令的多个 参数,在此不作限定。

203、所述第一PE设备向所述第一PE设备在所述MVPN中的BGP邻居发送所述 BGP update消息。

通常,在BGP-based MVPN中,各PE设备间会建立BGP对等体,从而建立BGP 邻居。一般来说,会以全连接(full-mesh)方式在个PE设备间建立BGP对等体。

在图1中,假设图1中的各PE设备间都建立了BGP邻居,那么以PE2举例,在 PE2执行上述203后,PE1,PE3,PE4,PE5,PE6都会收到PE2发来的BGP update 消息,从而获知PE2是备用叶子节点。如果该BGP update消息中还携带了PE2 所保护的PE1的IP地址,则PE1,PE3,PE4,PE5,PE6还进一步获知PE2所保护 的主用叶子节点是PE1。

本发明实施例提供的通告PE设备的信息的方法,通过BGP-based MVPN中 的PE设备确定其自身在该BGP-based MVPN中的角色和该角色对应的工作状 态,生成BGP update消息并向该PE设备在该BGP-based MVPN的BGP邻居发 送该BGP update消息,该BGP update消息中携带该PE设备的IP地址、该 MVPN的标识、该PE设备的角色和该角色对应的工作状态,可以使得该PE设 备在同一MVPN中的BGP邻居自动获得该PE设备的角色和工作状态,从而可以 减少MVPN的配置工作量,减少出错。

进一步地,本发明实施例提供的方法,克服了现有的BGP-based MVPN协 议中PE设备无法通告自身的工作状态的缺陷,使得BGP-based MVPN协议可以 与创建具有本地保护的P2MP隧道技术相结合,因为创建具有本地保护的P2MP 隧道技术需要根节点获知各叶子节点的主用和备用状态。其中,一种创建具有 本地保护的P2MP隧道的方法,请参考专利申请公开号为US2010-0177631.

请参考图3,本发明的一个实施例提供一种第一PE设备,应用于 BGP-based MVPN中,包括:

第一确定单元301,用于确定所述第一PE设备在所述MVPN中的角色和所 述角色对应的工作状态,所述角色是根节点和/或叶子节点,所述工作状态是 主用或者备用。

生成消息单元302,用于生成BGP update消息,所述BGP update消息携带 所述第一PE设备的IP地址、所述MVPN的标识、所述第一确定单元301确定的所 述第一PE设备的所述角色和所述工作状态。

发送单元303,用于向所述第一PE设备在所述MVPN中的BGP邻居发送所 述生成消息单元302生成的所述BGP update消息。

可选地,所述第一确定单元301包括:

接收配置子单元,用于接收配置信息,所述配置信息用于指定所述第一 PE设备的所述角色以及所述角色对应的工作状态;

确定子单元,用于根据接收配置子单元接收的所述配置信息,确定所述第 一PE设备的所述角色和所述角色对应的工作状态。

举例来说,所述BGP update消息可以是第一PE设备在确定其角色和工作状 态后主动生成的,下文中称为方式1;也可以是第一PE设备在接收到MVPN A中 作为根节点的PE设备发来的携带S-PMSI A-D route的消息后,对携带S-PMSI  A-D route的消息进行处理后的生成响应消息,下文中称为方式2,在方式2中, 第一PE设备确定自身是MVPN A中的叶子节点。BGP-based MVPN协议中的BGP  update消息中包括NLRI,称为组播VPN的NLRI(MCAST-VPN NLRI),为方便描述, 本文中方式1中的BGP update消息称为BGP update消息A,方式2中的BGP update 消息称为BGP update消息B。BGP update消息A和BGP update消息B中的NLRI, 分别称为NLRI A和NLRI B。

下面分别描述方式1和方式2。

在方式1中,可选地,NLRI A包括路由类型字段、RD字段、发起者IP 地址字段、根角色字段、所述根角色字段对应的工作状态字段、叶子角色字段、 所述叶子角色字段对应的工作状态字段;NLRI A中的路由类型字段的内容标 识BGP update消息A携带所述第一PE设备的所述角色和所述工作状态;所述 RD字段携带所述第一PE设备上的所述MVPN的实例的RD,所述RD用作所述 MVPN的标识;所述发起者IP地址字段携带所述第一PE设备的IP地址;当所 述根角色字段携带第一值时,标识所述第一PE设备的所述角色为所述根节点; 当所述根角色字段对应的工作状态字段携带第二值时,标识所述第一PE设备 的所述工作状态为所述主用;当所述根角色字段对应的工作状态字段携带第三 值时,标识所述第一PE设备的所述工作状态为所述备用;当所述叶子角色字 段携带第四值时,标识所述第一PE设备的所述角色为所述叶子节点;当所述 叶子角色字段对应的工作状态字段携带第五值时,标识所述第一PE设备的所 述工作状态为所述主用;当所述叶子角色字段对应的工作状态字段携带第六值 时,标识所述第一PE设备的所述工作状态为所述备用;其中,所述第二值和 所述第三值不同,所述第五值和所述第六值不同。

在方式1中,可选地,

所述NLRI A中还包括第一指示字段,所述第一指示字段用于指示所述 NLRI A中是否携带第一地址字段,所述第一地址字段携带第二PE设备的IP 地址,所述第二PE设备为所述MVPN中所述第一PE设备所保护的主用根节点;

当所述第一确定单元301确定所述第一PE设备的所述角色为所述根节点、 所述第一PE设备的所述工作状态为所述备用且所述第一指示字段指示所述 NLRI A中携带所述第一地址字段时,所述NLRI A中还包括所述第一地址字段; 相应地,在图3的基础上,如图4所示,所述第一PE设备还包括:第二确定单元 304,用于确定所述第二PE设备的IP地址。

所述NLRI A中还包括第二指示字段,所述第二指示字段用于指示所述NLRI  A中是否携带第二地址字段,所述第二地址字段携带第三PE设备的IP地址,所 述第三PE设备为所述MVPN中所述第一PE设备所保护的主用叶子节点;

当所述第一确定单元301确定所述第一PE设备的所述角色为所述叶子节 点、所述第一PE设备的所述工作状态为所述备用且所述第二指示字段指示所 述NLRI A中携带所述第二地址字段时,所述NLRI A中还包括所述第二地址字 段;相应地,在图3的基础上,如图4所示,所述第一PE设备还包括:第三 确定单元305,用于确定所述第三PE设备的IP地址。

在方式2中,可选地,在图3的基础上,如图5所示,所述第一PE设备 还包括:

接收单元307,用于接收第四PE设备发来的携带S-PMSI A-D route的消息, 所述第四PE设备是所述MVPN中的根节点;

BGP update消息B用于回应所述携带S-PMSI A-D route的消息,BGP update 消息B包括NLRI B,NLRI B包括路由类型字段、Route Key字段、发起者IP地址 字段、第一工作状态字段;NLRI B中的路由类型字段的内容标识所述第一PE 设备的角色为所述叶子节点,且所述BGP update消息携带所述第一PE设备的所 述工作状态;所述Route Key字段携带所述S-PMSI A-D route中的NLRI;所述 发起者IP地址字段携带所述第一PE设备的IP地址;当所述第一工作状态字段携 带第一值时,标识所述第一PE设备的所述工作状态为所述主用;当所述第一工 作状态字段携带第二值时,标识所述第一PE设备的所述工作状态为所述备用; 其中,所述第一值和所述第二值不同。

在方式2中,可选地,在图5的基础上,如图6所示,所述第一PE设备 还包括:

第四确定单元308,用于当所述第一确定单元301确定所述第一PE设备 的角色为所述叶子节点且所述第一PE设备的所述工作状态为所述备用时,确 定第五PE设备的IP地址,所述第五PE设备为所述MVPN中所述第一PE设备 所保护的主用叶子节点;相应地,NLRI B还包括第三地址字段,所述第三地址 字段携带所述第五PE设备的IP地址。

上述图3至图6中所示的第一PE设备,可以执行图1中的方法。

举例来说,图3至图6中所示的单元可以合并为一个或者多个单元。

又举例来说,所述单元或子单元均可通过硬件来实现。

本发明实施例提供的技术方案,通过BGP-based MVPN中的PE设备确定其 自身在该BGP-based MVPN中的角色和该角色对应的工作状态,生成BGP update 消息并向该PE设备在该BGP-based MVPN中的BGP邻居发送该BGP update消 息,该BGP update消息中携带该PE设备的IP地址、该MVPN的标识、该PE 设备的角色和该角色对应的工作状态,可以使得该PE设备在同一MVPN中的 BGP邻居自动获得该PE设备的角色和工作状态,从而可以减少MVPN的配置工 作量,减少出错。

进一步地,本发明实施例提供的技术方案,克服了现有的BGP-based MVPN 协议中PE设备无法通告自身的工作状态的缺陷,使得BGP-based MVPN协议可以 与创建具有本地保护的P2MP隧道技术相结合,因为创建具有本地保护的P2MP 隧道技术需要根节点获知各叶子节点的主用和备用状态。其中,一种创建具有 本地保护的P2MP隧道的方法,请参考专利申请公开号为US2010-0177631。

本发明实施例还提供了一种第一PE设备,应用于BGP-based MVPN中,如图 7所示,该第一PE设备包括:总线840;以及连接到总线840的处理器810、存储 器820和接口830,该存储器820用于存储指令,该处理器810用于执行该指令执 行如下操作:

确定所述第一PE设备在BGP-based MVPN中的角色和所述角色对应的工作 状态,所述角色是根节点和/或叶子节点,所述工作状态是主用或者备用;

生成BGP update消息,所述BGP update消息携带所述第一PE设备的IP地址、 所述MVPN的标识、所述第一PE设备的所述角色和所述工作状态;

触发接口830向所述第一PE设备在所述MVPN中的BGP邻居发送所述BGP  update消息。

可选地,该处理器810执行该指令确定所述第一PE设备在BGP-based MVPN 中的角色和所述角色对应的工作状态,包括:接收配置信息,所述配置信息用 于指定所述第一PE设备的所述角色以及所述角色对应的工作状态;根据所述配 置信息,确定所述第一PE设备的所述角色和所述角色对应的工作状态。

举例来说,所述BGP update消息可以是第一PE设备在确定其角色和工作状 态后主动生成的,下文中称为方式1;也可以是第一PE设备在接收到MVPN A中 作为根节点的PE设备发来的携带S-PMSI A-D route的消息后,对携带S-PMSI  A-D route的消息进行处理后的生成响应消息,下文中称为方式2,在方式2中, 第一PE设备确定自身是MVPN A中的叶子节点。BGP-based MVPN协议中的BGP  update消息中包括NLRI,称为组播VPN的NLRI(MCAST-VPN NLRI)。为方便描述, 本文中方式1中的BGP update消息称为BGP update消息A,方式2中的BGP update 消息称为BGP update消息B。BGP update消息A和BGP update消息B中的NLRI, 分别称为NLRI A和NLRI B。

下面分别描述方式1和方式2。

在方式1中,可选地,NLRI A包括路由类型字段、RD字段、发起者IP 地址字段、根角色字段、所述根角色字段对应的工作状态字段、叶子角色字段、 所述叶子角色字段对应的工作状态字段;NLRI A中的路由类型字段的内容标 识BGP update消息A携带所述第一PE设备的所述角色和所述工作状态;所述 RD字段携带所述第一PE设备上的所述MVPN的实例的RD,所述RD用作所述 MVPN的标识;所述发起者IP地址字段携带所述第一PE设备的IP地址;当所 述根角色字段携带第一值时,标识所述第一PE设备的所述角色为所述根节点; 当所述根角色字段对应的工作状态字段携带第二值时,标识所述第一PE设备 的所述工作状态为所述主用;当所述根角色字段对应的工作状态字段携带第三 值时,标识所述第一PE设备的所述工作状态为所述备用;当所述叶子角色字 段携带第四值时,标识所述第一PE设备的所述角色为所述叶子节点;当所述 叶子角色字段对应的工作状态字段携带第五值时,标识所述第一PE设备的所 述工作状态为所述主用;当所述叶子角色字段对应的工作状态字段携带第六值 时,标识所述第一PE设备的所述工作状态为所述备用;其中,所述第二值和 所述第三值不同,所述第五值和所述第六值不同。

在方式1中,可选地,所述NLRI中还包括第一指示字段,所述第一指示字 段用于指示所述NLRI中是否携带第一地址字段,所述第一地址字段携带第二PE 设备的IP地址,所述第二PE设备为所述MVPN中所述第一PE设备所保护的主用根 节点;当该处理器810执行该指令确定所述第一PE设备的所述角色为所述根节 点、所述第一PE设备的所述工作状态为所述备用且所述第一指示字段指示所述 NLRI中携带所述第一地址字段时,所述NLRI中还包括所述第一地址字段;相应 地,该处理器810执行该指令还执行以下操作:确定所述第二PE设备的IP地址。 所述NLRI中还包括第二指示字段,所述第二指示字段用于指示所述NLRI中是否 携带第二地址字段,所述第二地址字段携带第三PE设备的IP地址,所述第三PE 设备为所述MVPN中所述第一PE设备所保护的主用叶子节点;当该处理器810执 行该指令确定所述第一PE设备的所述角色为所述叶子节点、所述第一PE设备的 所述工作状态为所述备用且所述第二指示字段指示所述NLRI中携带所述第二 地址字段时,所述NLRI中还包括所述第二地址字段;相应地,该处理器810执 行该指令还执行以下操作:确定所述第三PE设备的IP地址。

在方式2中,可选地,处理器810执行该指令还执行以下操作:通过接口830 接收第四PE设备发来的携带S-PMSI A-D route的消息,所述第四PE设备是所述 MVPN中的根节点;BGP update消息B用于回应所述携带S-PMSI A-D route的消 息,BGP update消息B包括NLRI B,NLRI B包括路由类型字段、Route Key字段、 发起者IP地址字段、第一工作状态字段;NLRI B中的路由类型字段的内容标识 所述第一PE设备的角色为所述叶子节点,且BGP update消息B携带所述第一PE  设备的所述工作状态;所述Route Key字段携带所述S-PMSI A-D route中的 NLRI;所述发起者IP地址字段携带所述第一PE设备的IP地址;当所述第一工作 状态字段携带第一值时,标识所述第一PE设备的所述工作状态为所述主用;当 所述第一工作状态字段携带第二值时,标识所述第一PE设备的所述工作状态为 所述备用;其中,所述第一值和所述第二值不同。

在方式2中,可选地,处理器810执行该指令还执行以下操作:当确定所述 第一PE设备的角色为所述叶子节点且所述第一PE设备的所述工作状态为所述 备用时,确定第五PE设备的IP地址,所述第五PE设备为所述MVPN中所述第一PE 设备所保护的主用叶子节点;相应地,NLRI B还包括第三地址字段,所述第 三地址字段携带所述第五PE设备的IP地址。

本发明实施例提供的技术方案,通过BGP-based MVPN中的PE设备确定其 自身在该BGP-based MVPN中的角色和该角色对应的工作状态,生成BGP update 消息并向该PE设备在该BGP-based MVPN中的BGP邻居发送该BGP update消 息,该BGP update消息中携带该PE设备的IP地址、该MVPN的标识、该PE 设备的角色和该角色对应的工作状态,可以使得该PE设备在同一MVPN中的 BGP邻居自动获得该PE设备的角色和工作状态,从而可以减少MVPN的配置工 作量,减少出错。

进一步地,本发明实施例提供的技术方案,克服了现有的BGP-based MVPN 协议中PE设备无法通告自身的工作状态的缺陷,使得BGP-based MVPN协议可以 与创建具有本地保护的P2MP隧道技术相结合,因为创建具有本地保护的P2MP 隧道技术需要根节点获知各叶子节点的主用和备用状态。其中,一种创建具有 本地保护的P2MP隧道的方法,请参考专利申请公开号为US2010-0177631。

本领域普通技术人员可以理解:实现上述方法实施例的全部或部分步骤可 以通过程序指令相关的硬件来完成,前述程序可以存储于一计算机可读取存储 介质中,该程序在执行时,执行包括上述方法实施例的步骤;而前述的存储介 质可以是下述介质中的至少一种:只读存储器(Read-Only Memory,ROM)、 RAM、磁碟或者光盘等各种可以存储程序代码的介质。

最后应说明的是:以上实施例仅用以示例性说明本发明的技术方案,而非 对其限制;尽管参照前述实施例对本发明及本发明带来的有益效果进行了详细 的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载 的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或 者替换,并不使相应技术方案的本质脱离本发明权利要求的范围。

去获取专利,查看全文>

相似文献

  • 专利
  • 中文文献
  • 外文文献
获取专利

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号