专利名称:一种在组播虚拟专用网中发送自举报文的方法及设备的制作方法
技术领域:
本发明涉及网络组播技术领域,具体涉及一种在组播虚拟专用网(VPN, Virtual Private Network)中发送自举l艮文(Bootstrap Message )的方法及设备。
背景技术:
协议无关组一番一稀疏才莫式(PIM-SM, Protocol Independent Multicast -Sparse Mode)网络中,有一种特殊的路由器,即当选自举路由器(BSR, Bootstrap Router),当选BSR有时候也简称为BSR。当选BSR是网络中的候选自举路 由器(C-BSR, Candidate-BSR)之间通过自举报文比较优先级及IP地址选举 出来的。 一旦确定了当选BSR,当选BSR就开始周期性的从自身的所有 PIM-SM接口发送以224.0.0.13为目的地址的自举报文(Bootstrap Message ), 该自举报文的生存时间(TTL, Time To Live )等于1。该自举报文被收到的路 由器逐跳转发,在整个网络中扩散,以使得全网的PIM-SM设备都知道当选 BSR的信息。网络中的候选汇集点(C-RP, Candidate-Rendezvous Point)会周 期性地单播包含有自身C-RP信息的宣告报文(Advertisement Message)到当 选BSR,当选BSR则将根据接收到的宣告报文,将相应的C-RP地址根据其 组地址、掩码等信息加入自己的RP池(RP-Set),并通过周期性发送的自举报 文将收集到的C-RP信息发布到整个PIM-SM网络中;网络中的各路由器将依 据当选BSR发送的C-RP信息,利用相同的规则,从众多C-RP中为特定组播 组选4奪出 一个C-RP作为汇集点(RP, Rendezvous Point ),该RP与该特定组 ,潘组相对应。RP是一种特殊的C-RP。
组播VPN是基于多协议标签交换(MPLS, Multi-Protocol Label Switching) 三层VPN(L3VPN)网络来实现组播传输的技术。MPLSL3VPN是一种基于 边界网关协议(BGP, Border Gateway Protocol )和MPLS扩展技术实现的VPN, 由运营商的骨干网和用户的各个VPN站点(Site)组成,同一个VPN的各个站点之间彼此相互孤立,只有借助骨干网才能实现互通。
图1所示为现有技术中一种典型的MPLS L3VPN组网示意图。图1中, 站点1 、站点3和站点5组成组播VPN 1网络,站点2、站点4和站点6组成 组播VPN2网络。图1中包括以下三种类型的i殳备
骨干网核心设备(P, Provider),如图1中的P1、 P2和P3。 P不与CE直 接相连,主要负责MPLS报文转发。
服务提供商边缘网络设备(PE, Provider Edge),如图1中的PE1、 PE2 和PE3。 PE与CE直接相连,负责VPN路由的处理,是MPLSL3VPN的主 要实现者。
用户网络边缘设备(CE, Customer Edge),如图1中的CE1 CE6。 CE可 以是路由器或交换机,也可以是一台主机,主要负责用户网络路由的发布。
在图1所示的网络中运行组播VPN时,该网络中同时承载着三个相互独 立的组播业务公网实例(instance )、 VPN实例1和VPN实例2。公共网络 边缘的PE支持VPN多实例,相当于多台独立运行的组播设备,各VPN实例 之间彼此隔离。以VPN实例1为例,组播VPN是指当VPN 1中的组播源 向某组播组发送组播数据时,在网络中所有可能的接收者中,只有属于VPNl (即图1中的站点1、站点3或站点5中)的组播组成员才能收到该组^!番源 发来的组播数据。组播数据在各站点以及公网中均以组播方式进行传输。
在组播VPN应用中,私网站点部署PIM-SM,自举报文会经过PE,穿越 公网进行交互。如图2所示,PE1/PE2/PE3所连接的私网站点均部署组播VPN 业务,CE1、 CE2和CE3配置为C-BSR, CE1和CE3配置为C-RP。假设CE1 被选举为当选BSR,那么CE1会周期性地的向外发送目的为224.0.0.13的自 举报文。PE1接收到该自举报文后,从自身组播隧道接口 ( MTI, Multicast Tunnel Interface)将该自举报文发送到组播隧道(MT, Multicast Tunnel),通过MT 扩散至PE2/PE3。 PE2/PE3从各自的MTI上接收该自举报文,再逐跳多播至 CE2和CE3。图2中虚线箭头表示CE1发出的自举报文的传输路径。
组播VPN中通常会存在较多的VPN实例,例如在实际的L3VPN应用组 网中,VPN实例的数量甚至会达到1K的数量级。每一个VPN实例都需要维 护自己的当选BSR,各个当选BSR均周期性地发送自举报文。另夕卜,组播VPN应用中,组#"隧道才妄口 ( MTI, Multicast Tunnel Interface )相当于广^番网纟^l妄 口 ,所有的PE节点在MTI上相当于同时接入一个广播网络,自举报文在MTI 口上广播到该广播网络的所有PE节点上,而实际的L3VPN应用中又经常部 署几十甚至上百个PE节点。
从以上分析可以看出,现有技术的组播VPN应用中,在公网传输的自举 报文的数量会由于VPN实例的数量和公网PE的数量的增加而迅猛增加。PE 在MTI上发送/接收自举报文时,会对自举报文进行通用路由封装(GRE, Generic Routing Encapsulation)封装/解封装处理,对大量的自举报文进行GRE 封装/解封装,必然会消耗PE大量的处理资源;并且,大量的自举报文在公网 中传输时会消耗大量的公网带宽资源。
发明内容
本发明实施例所要解决的技术问题是提供一种在组播VPN中发送自举报 文的方法及设备,减少PE在MTI上发送/接收的自举报文的数量,从而降低 自举报文对PE处理资源和公网带宽资源的消耗。
为解决上述技术问题,本发明实施例提供方案如下 一种在组播虛拟专用网VPN中发送自举^R文的方法,包括 第 一服务提供商边缘网络设备PE接收当选自举路由器BSR周期性发送的 包含有候选汇集点C-RP信息的第一自举报文,并在每接收到一个所述第一自 举报文时,判断当前连续接收到的内容相同的第 一 自举报文的次数是否低于预 定数值若是,则通过组播隧道将当前接收到的第一自举才艮文转发至组播VPN 中的其它PE;否则,不通过所述组播隧道转发当前接收到的第一自举寺艮文; 第一 PE是当选BSR所属组播VPN站点的出口 PE,所述内容包括C-RP信息; 其中,通过组播隧道发送给所述其它PE的所述第一自举报文,用于提供 给所述其它PE进行保存,以使得所述其它PE在第一预定周期内未接收到所 述第一 自举报文时,周期性地将最近一次保存的第一 自举报文通过自身的私网 协议无关组播PIM接口转发出去。 优选地,上述方法中,
第一 PE通过和所述其它PE周期性地交互PIM Hello报文,建立并维持与所述其它PE之间的PIM邻居关系;
在当前连续接收到的内容相同的第 一 自举报文的次数达到或超过所述预 定数值之后,如果第一 PE在第二预定周期内未接收到所述其它PE中的任一 PE的PIM Hello报文,则恢复通过所述组播隧道转发当前接收到的第 一 自举 报文。
优选地,上述方法中,所述第一PE如果在第三预定周期内未接收到当选 BSR发送的第一自举报文,则通过组播隧道向所述其它PE发送用于触发BSR 选举的第二自举报文,所述第二自举报文中包括有为所述当选BSR设置的第 一优先级,且所述第一优先级低于所述组播VPN中候选BSR的优先级。
优选地,上述方法中,所述内容还包括候选BSR信息和当选BSR信息。
本发明实施例还提供了另一种在组播虚拟专用网VPN中发送自對艮文的 方法,第二服务提供商边缘网络设备PE通过组播隧道与第一PE连接,所述 第一 PE是当选自举路由器BSR所属组播VPN站点的出口 PE,所述方法包括
第二 PE启动一定时器,并通过所述组播隧道接收所述第一 PE转发的第 一自举报文,所述第一自举报文是当选BSR周期性发送的包含有候选汇集点 C-RP信息的自举报文;
其中,第二PE在每接收到一个所述第一自举报文后,重置所述定时器, 保存当前接收到的第一自举报文,并通过自身的私网协议无关组播PIM接口 将当前接收到的第一自举报文转发出去;其中,如果所述定时器超时,第二 PE则周期性地将最近一次保存的第 一 自举报文通过自身的私网PIM接口转发 出去。
优选地,上述方法中,第二PE在保存当前接收到的第一自举报文之前, 进一步删除先前保存的第一 自举报文。
本发明实施例还提供了一种组播虚拟专用网VPN中的服务提供商边缘网 络设备PE,该PE是当选自举路由器BSR所属组播VPN站点的出口 PE,包 括第一接收单元和第一转发单元,其中,
所述第一接收单元,用于接收当选BSR周期性发送的包含有候选汇集点 C-RP信息的第一自举报文,并在每接收到一个所述第一自举报文时,触发所 述第一转发单元;所述第一转发单元,用于根据所述第一接收单元的触发,判断当前连续接
收到的内容相同的第一自举报文的次数是否低于预定数值若是,则通过组播 隧道将当前接收到的第一自举报文转发至组播VPN中的其它PE;否则,不通 过所述组播隧道转发当前接收到的第 一 自举冲艮文;所述内容包括C-RP信息;
其中,所述第 一转发单元通过组播隧道发送给所述其它PE的所述第 一 自 举报文,用于提供给所述其它PE进行保存,以使得所述其它PE在第一预定 周期内未接收到所述第 一 自举报文时,周期性地将最近一次保存的第 一 自举报 文通过自身的私网协议无关组播PIM接口转发出去。
优选地,上述PE中,还包括
邻居维护单元,用于通过和所述其它PE周期性3也交互PIM Hello才艮文, 建立并维持本PE与所述其它PE之间的PIM邻居关系;
所述第 一转发单元,还用于在当前连续接收到的内容相同的第 一 自举报文 的次数达到或超过所述预定数值之后,如果所述邻居维护单元在第二预定周期 内未接收到所述其它PE中的任一PE的PIMHelol艮文,则恢复通过所述组播 隧道转发当前接收到的第 一 自举报文。
优选地,上述PE中,还包括选举发起单元;
所述第一接收单元,还用于在第三预定周期内未接收到当选BSR发送的 第一自举报文时,触发所述选举发起单元;
所述选举发起单元,用于根据所述第一接收单元的触发,通过所述组播隧 道向所述其它PE发送用于触发BSR选举的第二自举报文,所述第二自举报文 中包括有为所述当选BSR设置的第一优先级,且所述第一优先级低于所述组 播VPN中候选BSR的优先级。
优选地,上述PE中,所述内容还包括候选BSR信息和当选BSR信息。
本发明实施例还提供了一种组播虛拟专用网VPN中的第二服务提供商边 缘网络设备PE,该第二PE通过组播隧道与第一PE连接,所述第一PE是当 选自举路由器BSR所属组播VPN站点的出口 PE,该第二 PE包括第二接收单 元和第二转发单元;
所述第二"^妻收单元,用于启动一定时器,并通过所述组^"隧道接收所述第 一PE转发的第一自举才艮文,并在每接收到一个所述第一自举报文后,重置所述定时器,并触发所述第二转发单元,其中,所述第一自举报文是当选BSR 周期性发送的包含有候选汇集点C-RP信息的自举报文;
所述第二转发单元,用于根据所述第二接收单元的触发,保存当前接收到 的第一自举报文,并通过本第二PE自身的私网协议无关组播PIM接口将当前 接收到的第一自科艮文转发出去;其中,如果所述第一定时器超时,则周期性 地将最近一次保存的第 一 自举报文通过本第二 PE自身的私网PIM接口转发出 去。
优选地,该第二PE中,所述第二接收单元,还用于在保存当前接收到的 第一自举报文之前,进一步删除先前保存的第一自举报文。
本发明实施例还提供了另一种组播虚拟专用网VPN中的服务提供商边缘 网络设备PE,包括角色判断单元、第一接收单元、第一转发单元、第二接收 单元和第二转发单元,其中,
所述角色判断单元,用于判断组播VPN中的当选BSR是否位于本PE所 连接的组播VPN站点内,若是,则启动所述第一接收单元;否则,启动所述 第二接收单元;
所述第一接收单元,用于接收当选BSR周期性发送的包含有候选汇集点 C-RP信息的第一自举报文,并在每接收到一个第一自举报文时,触发所述第 一转发单元;
所述第一转发单元,用于根据所述第一接收单元的触发,判断当前连续接 收到的内容相同的第一自科艮文的次数是否低于预定数值若是,则通过组播 隧道将当前接收到的第一自举报文转发至组播VPN中的其它PE;否则,不通 过所述组播隧道转发当前接收到的第 一 自举报文;所述内容包括C-RP信息;
所述第二接收单元,用于启动一定时器,并通过组播隧道接收第一PE转 发的第一自举报文,并在每接收到一个第一自举报文后,重置所述定时器,并 触发所述第二转发单元,其中,所述第一PE是当选自举路由器BSR所属组播 VPN站点的出口 PE,所述第一自举报文是当选BSR周期性发送的包含有候选 汇集点C-RP信息的自举报文;
所述第二转发单元,用于根据所述第二接收单元的触发,保存当前接收到 的第一自举报文,并通过本PE自身的私网协议无关组播PIM接口将当前接收到的第一自举报文转发出去;其中,如果所述第一定时器超时,则周期性地将 最近一次保存的第 一 自举报文通过本PE的私网PIM接口转发出去。 优选地,上述PE中,还包括
邻居维护单元,用于通过和所述其它PE周期性地交互PIM Hello报文, 建立并维持本PE与其它PE之间的PIM邻居关系;
所述第 一转发单元,还用于在当前连续接收到的内容相同的第 一 自举报文 的次数达到或超过所述预定数值之后,如果所述邻居维护单元在第二预定周期 内未接收到所述其它PE中的任一 PE的PIM Hello报文,则恢复通过所述组播 隧道转发当前接收到的第 一 自举^R文。
优选地,上述PE中,还包括选举发起单元;
所述第一接收单元,还用于在第三预定周期内未"l妻收到当选BSR发送的 第 一 自举报文时,触发所述选举发起单元;
所述选举发起单元,用于根据所述第一接收单元的触发,通过所述组播隧 道向所述其它PE发送用于触发BSR选举的第二自举报文。
优选地,上述PE中,所述内容还包括候选BSR信息和当选BSR信息。
从以上所述可以看出,本发明实施例提供的在组播VPN中发送自举报文 的方法及设备,通过第一PE对当选BSR发送的第一自举报文进行分析,在第 一自举报文内容稳定时,停止通过组播隧道发送第一自举报文,减少了第一 PE通过MT发送的第一 自举报文的数量,从而节约了第一 PE对第一 自举报文 进行GRE封装所需要的处理资源,减少了第一 自举报文对公网带宽的占用; 同时,本发明实施例还减少了第二 PE从组播隧道上接收的第一 自举报文的数 量,从而减少了第二 PE对从组播隧道上接收到的第一自举才艮文进行解GRE 封装的处理工作量,节约了第二PE的处理资源。
图1为现有技术中一种典型的MPLSL3VPN组网示意图2为现有技术中当选BSR发出的自举报文的传输示意图3为本发明实施例所述在组播VPN中发送自举报文的方法的流程图4为本发明实施例提供的一种PE的结构示意图;图5为本发明实施例提供的一种第二PE的结构示意图; 图6为本发明实施例提供的另一种PE的结构示意图。
具体实施例方式
本发明实施例提供了 一种在组播VPN中发送自举报文的方法及设备,在 组播VPN的PE上采用BSR代理机制,尽量将BSR报文的传播范围控制在私 网范围内,以减少PE在MTI上发送/接收自举报文时因GRE封装/解封装处理 所消耗的设备处理资源,同时减少自举报文对公网链路带宽的占用。以下结合 附图通过具体实施例对本发明做进一步的说明。
本发明实施例的组4番VPN中包括有第一 PE和第二 PE,其中,第一 PE 是当选BSR所属组播VPN站点的出口 PE,第二PE是通过公网中的组播隧道 与第一 PE连接的PE。由于组播VPN中网络拓朴结构具有一定的稳定性,组 播VPN中的C-RP增减并不是频繁发生,因此,当选BSR周期性发送的第一 自举报文的内容常常是相同的。在这种情况下,第一PE可以对第一自举报文 的发送进^f抑制,不再将第一自举寺艮文通过MT发送到其它PE;而第二 PE 则可以利用先前保存的第一自举报文,周期性地在本地VPN中转发。
如图3所示,本发明实施例所述在组播VPN中发送自举报文的方法,包 括以下步骤
步骤31,当选BSR周期性地发送包含有C-RP信息的第 一 自举报文;
步骤32,第一 PE接收第一 自举报文,并在每接收到一个第一 自举报文时, 判断当前连续接收到的C-RP信息相同的第一 自举报文的次数是否低于预定数 值若是,则通过组播隧道将当前接收到的第一自举报文转发至组播VPN中 的其它PE;否则,不通过所述组播隧道转发当前接收到的第一自举4良文;
步骤33,第二PE启动一定时器,通过组播隧道接收第一PE转发的第一 自举报文,并在每接收到一个第一自举报文后,重置所述定时器,保存当前接 收到的第一自举报文,并通过自身的私网PIM接口将当前接收到的第一自举 才艮文转发出去;其中,如果所述定时器超时,第二PE则周期性地将最近一次 保存的第一 自举"t艮文通过自身的私网PIM接口转发出去。
这里,步骤33中,第二 PE在保存当前接收到的第一自举报文之前,可以删除先前保存的第一自举报文,再保存当前接收到的第一自科艮文,以节约 存储空间。
上述步骤32中,第一 PE通过组播隧道发送给所述其它PE的所述第一 自 科艮文,用于提供给所述其它PE进行保存,以使得所述其它PE在第一预定 周期内未接收到所述第 一 自举报文时,周期性地将最近一次保存的第一 自科艮 文通过自身的私网PIM接口转发出去。第一预定周期和定时器的超时门限的 数值相同,具体可以设置为等于或高于当选BSR发送第一自举报文的发送周 期的一个数值。
上述步骤32中,第一 PE通过判断第一 自举报文中的C-RP信息是否相同, 在当前连续接收到的C-RP信息相同的第 一 自举报文的次数达到或超过预定数 值时,对第一自举报文的发送执行抑制处理,停止通过组播隧道发送当前接收 到的第一自举报文。本实施例还可以设置更为严格的判断方式,对第一自举报 文中包括C-RP信息、候选BSR信息和当选BSR信息在内的内容进行判断, 在当前连续接收到的上述内容都相同的第 一 自举报文的次数达到或超过预定 数值时,才执行对第一自举报文的发送执行抑制处理,停止通过组播隧道发送 当前接收到的第 一 自举报文。
本实施例中,当选BSR位于第一PE的本地VPN站点内,第一PE于是 作为BSR代理角色l,承担起对第一自举报文的抑制处理;第二PE是从MT 上接收到第一 PE转发的第 一 自举报文,从而第二 PE可以判断出当选BSR在 远端PE所连接的VPN站点内,而不在第二 PE的本地VPN站点内,因此, 第二PE作为BSR代理角色2,在第一PE抑制第一自對艮文时,承担起向本 地VPN站点发送第一自举"I艮文的工作。通过上述处理,本实施例减少了第一 PE在MTI上发送的第一 自举报文的数量,以及减少了第二 PE在MTI上接收 的第 一 自举报文的数量,从而减少了 PE在MTI发送/接收第 一 自举报文时因 GRE封装/解封装处理所消耗的设备处理资源。同时由于减少了通过MT传输 的第 一 自举报文的数量,本实施例还节约了公网链路的带宽资源。
如果组播VPN中的C-RP发生改变,当选BSR会获取这一信息,并更新 第 一 自举报文中的C-RP信息,第一 PE接收到第 一 自举"t艮文后,判断出C-RP 信息发生变化,则恢复通过组播隧道发送当前接收到的第一自举报文。此后,如果接收到的第一自举报文中的C-RP信息没有发生新的变化,则当接收到的 该第 一 自举报文的次数达到预定数值后,第一 PE又会重新对第 一 自举报文的 发送进行抑制处理。
与现有技术相同,本实施例中,第一 PE通过和组播VPN中的其它PE周 期性地交互PIM Hello报文,建立并维持与所述其它PE之间的PIM邻居关系。 在当前连续接收到的C-RP信息相同的第一 自举报文的次数达到或超过所述预 定数值之后,第一PE对第一自举报文进行抑制处理。在抑制处理的过程中, 如果第一 PE在第二预定周期内未接收到所述其它PE中的任一 PE的PIM Hello报文,则说明该任一PE可能出现故障,其所承担的BSR代理角色2的 工作也可能会受到影响,此时,第一PE停止对第一自举"t艮文的抑制处理,恢 复通过所述组播隧道转发当前接收到的第一 自举报文,以保证第一 自举报文可 以顺利扩散到各个VPN站点。这里,第二预定周期的数值可以设置为PIM Hello报文发送周期的数倍,例如,设置为3-5个PIMHello报文发送周期。
另外,考虑到当选BSR还可能发生故障,如死机或重启,本实施例进一 步增加以下的处理机制当选BSR发生故障后,停止周期性发送第一自举报 文;第一 PE如果在第三预定周期内未接收到当选BSR发送的第 一 自举报文, 则通过组播隧道向所述其它PE发送用于触发BSR选举的第二自举报文。这里, 可以在第二自举报文中将所述当选BSR的优先级设置成最低,低于组播VPN 中的候选BSR,从而触发新一轮的BSR选举,具体选举方式与现有技术相同, 此处不再赘述。如果当选BSR发生改变,第一PE不再是当选BSR所属VPN 站点的出口PE,那么第一PE将不再承担BSR代理角色1的工作。所述第三 预定周期具体可以设置为高于当选BSR发送第一自举报文的发送周期的一个 数值,例如设置成数倍于第一 自举报文的发送周期的一个数值。
以下仍以图2所示的组网结构为例,对本实施例所述方法啦文进一步的解释 说明,以帮助更好的理解本实施例。
假设图2中的PE1/PE2/PE3各自所连接的私网站点均部署组播VPN业务, 其中包括在各个私网站点部署PIM-SM。 CE1、 CE2和CE3均配置为C-BSR, CE1和CE3酉己置为C-RP。
CE1初始接入网络时,作为C-BSR,CE1会向外发送目的地址为224.0.0.13的自举报文,该自举报文中包括有CE1的C-BSR信息。PE1接收并4企测该自 举报文后,发现有新增的C-BSR (即CE1 ),因此按照现有的自科艮文发送流 程,通过MTI向组播VPN中的其他PE发送该自举报文。该自举报文在公网 中通过MT发送到PE2/PE3, PE2/PE3收到该自举才艮文后同样会发现有新增的 C-BSR,因此会按照现有的自举报文发送流程向各自的CE发送该自科艮文, 然后,按照现有技术的BSR选举流程重新选举当选BSR。假设CE1被选举为 当选BSR。
作为当选BSR, CE1将汇总网络中的C-RP信息,并周期性地通过自举报 文将收集到的C-RP信息发布到整个PIM-SM网络中。此时,PE1接收到CE1 发送的自举报文时,可以通过查自身路由表,发现到当选BSR (CE1 )的路由 的下一跳地址位于本地VPN站点,因此,PE1承担起BSR代理角色1的工作。 PE2/PE3在接收到PE1转发的自举报文后,查各自的路由表,会发现到当选 BSR ( CE1 )的路由的下一跳地址是远端PE (即通过组播隧道与本PE连接的 PE1),因此,PE2/PE3认为自己是BSR代理角色2,从而承担起BSR代理角 色2的工作。
此后,PE1接收CE1发送的自举报文,会判断当前连续接收到的C-RP信 息相同的自举报文是否达到预定数值,如果没有达到,则通过组播隧道向 PE2/PE3转发当前接收到的自举报文;PE2/PE3从组播隧道收到PE1发来的自 举报文时,保存该自举报文中的C-RP信息,同时作为BSR代理角色2, PE2/PE3 还会保存该自举报文。
在经过一段时间之后,假设PE1接收到的C-RP信息相同的自举报文(CE1 发出的自举报文)的次数达到预定数值,此时,PE1将停止通过MTI发送当 前接收到的自举报文;PE2/PE3如果在一个自举报文接收周期内(即上述步骤 33中的定时器超时)没有收到PE1发来的自举报文,则作为BSR代理角色2, 开始周期通过自身的私网PIM接口 (即绑定VPN的PIM接口 )发送最近一次 保存的自举报文。
PE1与PE2/PE3之间通过周期性交互PIM问候(PIM Hello )报文,来建 立和维持PIM邻居关系。当PE1连续M (M为一预先设定的数值)次没有收 到PE2或PE3发来的PIM Hello才艮文,则认为BSR代理角色出现问题,此时PE1立即恢复通过MTI发送当前接收的来自CE1的自举报文。
当网络中的C-RP发生改变,如PE3的本地VPN站点中的CE3出现异常, 一段时间后,由于没有收到CE3发来的C-RP消息,CE1将更新自举报文中的 C-RP信息,PE1收到来自CE1的自举报文后发现C-RP信息发生变化,此时, PE恢复通过MTI发送当前接收的来自CE1的自举报文。
如果当选BSR发生异常,如CE1死机,PE1在一段时间未接收到CE1的 自举报文后,会立刻发送新的自举报文,并在该新的自举报文中将CE1的BSR 消息的优先级设置为最低,这样能够重新触发BSR选举。
当组播VPN中的C-BSR发生增加,如CE3也部署为C-BSR,那么PE3 收到CE3发送的自举报文后,将该自举报文通过MTI转发至所有PE,以发起 BSR选取。如果CE3被选举为新的当选BSR,那么PE3则变为BSR代理角 色1, PE2变为BSR代理角色2,各自执行相应的工作。
以上详细说明了在组播VPN中发送自举报文的方法。最后,本发明实施 例还提供了用以实施上述方法的PE。本发明实施例所述的PE,包括但不限于 路由器设备、三层交换机设备。
如图4所示,本发明实施例提供了一种PE,该PE是当选自举路由器BSR 所属组播VPN站点的出口 PE,包括第一接收单元和第一转发单元,其中,
所述第一接收单元,用于接收当选BSR周期性发送的包含有候选汇集点 C-RP信息的第一自举报文,并在每接收到一个第一自举报文时,触发所述第 一转发单元;
所述第一转发单元,用于根据所述第一接收单元的触发,判断当前连续接 收到的内容相同的第一自举报文的次数是否低于预定数值若是,则通过组播 隧道将当前接收到的第 一 自举报文转发至组播VPN中的其它PE;否则,不通 过所述组播隧道转发当前接收到的第一 自举报文;所述内容包括C-RP信息;
其中,所述第一转发单元通过组播隧道发送给所述其它PE的所述第一 自 举报文,用于提供给所述其它PE进行保存,以使得所述其它PE在第一预定 周期内未接收到所述第 一 自举报文时,周期性地将最近一次保存的第一 自举才艮 文通过自身的私网协议无关组播PIM接口转发出去。
优选地,上述PE中,还可以包括邻居维护单元,用于通过和所述其它PE周期性地交互PIM Hello报文,建立并维持本PE与其它PE之间的PIM邻 居关系。所述第一转发单元,还可以用于在当前连续接收到的内容相同的第一 自举报文的次数达到或超过所述预定数值之后,如果所述邻居维护单元在第二 预定周期内未接收到所述其它PE中的任一 PE的PIM Hello报文,则恢复通过 所述组播隧道转发当前接收到的第 一 自举报文。
优选地,上述PE中,还可以包括选举发起单元;
所述第 一接收单元,还用于在第三预定周期内未接收到当选BSR发送的 第一自科艮文时,触发所述选举发起单元;
所述选举发起单元,用于根据所述第一接收单元的触发,通过所述组播隧 道向所述其它PE发送用于触发BSR选举的第二自举报文。这里,所述第二自 举报文中包括有为所述当选BSR设置的第一优先级,且所述第一优先级低于 所述组播VPN中候选BSR的优先级。
优选地,上述PE中,所述内容还可以包括候选BSR信息和当选BSR 信息。
本发明实施例还提供了 一种第二 PE,该第二 PE通过组播隧道与第一 PE 连接,所述第一PE是当选自举路由器BSR所属组播VPN站点的出口 PE。如 图5所示,该第二PE包括第二接收单元和第二转发单元,其中,
所述第二接收单元,用于启动一定时器,并通过所述组播隧道接收所述第 一PE转发的第一自举才艮文,并在每接收到一个第一自科艮文后,重置所述定 时器,并触发所述第二转发单元,其中,所述第一自举报文是当选BSR周期 性发送的包含有候选汇集点C-RP信息的自举报文;
所述第二转发单元,用于根据所述第二接收单元的触发,保存当前接收到 的第一自举报文,并通过本第二PE自身的私网协议无关组播PIM接口将当前 接收到的第一自举^J艮文转发出去;其中,如果所述第一定时器超时,则周期性 地将最近一次保存的第一 自举报文通过本第二 PE自身的私网PIM接口转发出 去。
这里,优选地,所述第二接收单元,还可以用于在保存当前接收到的第一 自举报文之前,进一步删除先前保存的第一自举报文。
本发明实施例最后还提供了另外一种PE,如图6所示,该PE包括角色判断单元、第一接收单元、第一转发单元、第二接收单元和第二转发单元,其中,
所述角色判断单元,用于判断组播VPN中的当选BSR是否位于本PE所 连接的组播VPN站点内,若是,则启动所述第一接收单元;否则,启动所述 第二接收单元;
所述第一接收单元,用于接收当选BSR周期性发送的包含有候选汇集点 C-RP信息的第一自科艮文,并在每接收到一个第一自科艮文时,触发所述第 一转发单元;
所述第一转发单元,用于根据所述第一接收单元的触发,判断当前连续接 收到的内容相同的第一自举报文的次数是否低于预定数值若是,则通过组播 隧道将当前接收到的第一自举报文转发至组播VPN中的其它PE;否则,不通 过所述组播隧道转发当前接收到的第一 自举报文;所述内容包括C-RP信息;
所述第二接收单元,用于启动一定时器,并通过组播隧道接收第一PE转 发的第一自举报文,并在每接收到一个第一自举报文后,重置所迷定时器,并 触发所述第二转发单元,其中,所述第一PE是当选自举路由器BSR所属组播 VPN站点的出口 PE,所述第 一 自举"^艮文是当选BSR周期性发送的包含有候选 汇集点C-RP信息的自举报文;
所述第二转发单元,用于根据所述第二接收单元的触发,保存当前接收到 的第一自举报文,并通过本PE自身的私网协议无关組播PIM接口将当前接收 到的第一自举报文转发出去;其中,如果所述第一定时器超时,则周期性地将 最近一次保存的第 一 自举报文通过本PE的私网PIM接口转发出去。
优选地,图6所示的PE中,还可以包括邻居维护单元,用于通过和所 述其它PE周期性地交互PIM Hello报文,建立并维持本PE与其它PE之间的 PIM邻居关系。所述第一转发单元,还用于在当前连续接收到的内容相同的第 一自举报文的次数达到或超过所述预定数值之后,如果所述邻居维护单元在第 二预定周期内未接收到所述其它PE中的任一 PE的PIM Hello报文,则恢复通 过所述组播隧道转发当前接收到的第 一 自举报文。
优选地,图6所示的PE中,还可以包括选举发起单元。所述第一接收单 元,还用于在第三预定周期内未接收到当选BSR发送的第一自举报文时,触 发所述选举发起单元;所述选举发起单元,用于根据所述第一接收单元的触发,通过所述组播隧道向所述其它PE发送用于触发BSR选举的第二自對艮文。
优选地,图6所示的PE中,所述内容还可以包括候选BSR信息和当选 BSR信息。
综上所述,本发明实施例通过不同PE节点的BSR代理机制,减少了PE 在MTI上发送/接收的自举报文数量,从而减轻了 PE因进行GRE封装/解封装 处理的资源消耗,同时降低了自举报文对公网链路转发带宽的占用。
以上所述仅是本发明的实施方式,应当指出,对于本技术领域的普通技术 人员来说,在不脱离本发明原理的前提下,还可以作出若干改进和润饰,这些 改进和润饰也应视为本发明的保护范围。
权利要求
1.一种在组播虚拟专用网VPN中发送自举报文的方法,其特征在于,包括第一服务提供商边缘网络设备PE接收当选自举路由器BSR周期性发送的包含有候选汇集点C-RP信息的第一自举报文,并在每接收到一个所述第一自举报文时,判断当前连续接收到的内容相同的第一自举报文的次数是否低于预定数值若是,则通过组播隧道将当前接收到的第一自举报文转发至组播VPN中的其它PE;否则,不通过所述组播隧道转发当前接收到的第一自举报文;第一PE是当选BSR所属组播VPN站点的出口PE,所述内容包括C-RP信息;其中,通过组播隧道发送给所述其它PE的所述第一自举报文,用于提供给所述其它PE进行保存,以使得所述其它PE在第一预定周期内未接收到所述第一自举报文时,周期性地将最近一次保存的第一自举报文通过自身的私网协议无关组播PIM接口转发出去。
2. 如权利要求1所述的方法,其特征在于,第一 PE通过和所述其它PE周期性地交互PIM Hello报文,建立并维持与 所述其它PE之间的PIM邻居关系;在当前连续接收到的内容相同的第 一 自举报文的次数达到或超过所述预 定数值之后,如果第一 PE在第二预定周期内未接收到所述其它PE中的任一 PE的PIM Hello报文,则恢复通过所述组播隧道转发当前接收到的第一自举 报文。
3. 如权利要求1或2所述的方法,其特征在于,所述第一PE如果在第三 预定周期内未接收到当选BSR发送的第一 自举报文,则通过组播隧道向所述 其它PE发送用于触发BSR选举的第二自举报文,所述第二自举报文中包括有 为所述当选BSR设置的第一优先级,且所述第一优先级低于所述组播VPN中 候选BSR的优先级。
4. 如权利要求3所述的方法,其特征在于,所述内容还包括候选BSR 信息和当选BSR信息。
5. —种在组播虛拟专用网VPN中发送自举报文的方法,第二服务提供商边缘网络设备PE通过组播隧道与第一 PE连接,所述第一 PE是当选自举路由 器BSR所属组播VPN站点的出口 PE,其特征在于,所述方法包括第二 PE启动一定时器,并通过所述組^"隧道4妄收所述第一 PE转发的第 一自举报文,所述第一 自科艮文是当选BSR周期性发送的包含有候选汇集点 C-RP信息的自举报文;其中,第二PE在每接收到一个所述第一自举报文后,重置所述定时器, 保存当前接收到的第一自科艮文,并通过自身的私网协议无关组播PIM接口 将当前接收到的第一自举报文转发出去;其中,如果所述定时器超时,第二 PE则周期性地将最近一次保存的第 一 自举报文通过自身的私网PIM接口转发 出去。
6. 如权利要求5所述的方法,其特征在于,第二PE在保存当前接收到的 第一自举报文之前,进一步删除先前保存的第一自举报文。
7. —种组播虚拟专用网VPN中的服务提供商边缘网络设备PE,该PE是当选自举路由器BSR所属组播VPN站点的出口 PE,其特征在于,该PE包括 第一接收单元和第一转发单元,其中,所述第一接收单元,用于接收当选BSR周期性发送的包含有候选汇集点 C-RP信息的第一自举报文,并在每接收到一个所述第一自举报文时,触发所 述第一转发单元;所述第一转发单元,用于根据所述第一接收单元的触发,判断当前连续接 收到的内容相同的第一自举报文的次数是否低于预定数值若是,则通过组播 隧道将当前接收到的第一自举报文转发至组播VPN中的其它PE;否则,不通 过所述组播隧道转发当前接收到的第 一 自举4艮文;所述内容包括C-RP信息;其中,所述第一转发单元通过组播隧道发送给所述其它PE的所述第一 自 举报文,用于提供给所述其它PE进行保存,以使得所述其它PE在第一预定 周期内未接收到所述第 一 自举报文时,周期性地将最近一次保存的第 一 自举报 文通过自身的私网协议无关组播PIM接口转发出去。
8. 如权利要求7所述的PE,其特征在于,还包括 邻居维护单元,用于通过和所述其它PE周期性地交互PIM Hello 4艮文,建立并维持本PE与所述其它PE之间的PIM邻居关系;所述第 一转发单元,还用于在当前连续接收到的内容相同的第 一 自举报文 的次数达到或超过所述预定数值之后,如果所述邻居维护单元在第二预定周期内未接收到所述其它PE中的任一 PE的PIMHello才艮文,则恢复通过所述组播 隧道转发当前接收到的第 一 自举报文。
9. 如权利要求7或8所述的PE,其特征在于,还包括选举发起单元; 所述第一接收单元,还用于在第三预定周期内未接收到当选BSR发送的第一自举报文时,触发所述选举发起单元;所述选举发起单元,用于根据所述第一接收单元的触发,通过所述组播隧 道向所述其它PE发送用于触发BSR选举的第二自举报文,所述第二自举报文 中包括有为所述当选BSR设置的第一优先级,且所述第一优先级低于所述组 播VPN中候选BSR的优先级。
10. 如权利要求9所述的PE,其特征在于,所述内容还包括候选BSR 信息和当选BSR信息。
11. 一种组播虚拟专用网VPN中的第二服务提供商边缘网络设备PE,该 第二 PE通过组播隧道与第一 PE连接,所述第一 PE是当选自举路由器BSR 所属组播VPN站点的出口 PE,其特征在于,该第二PE包括第二接收单元和 第二转发单元;所述第二接收单元,用于启动一定时器,并通过所述组播隧道接收所述第 一PE转发的第一自举报文,并在每接收到一个所述第一自举报文后,重置所 述定时器,并触发所述第二转发单元,其中,所述第一自举报文是当选BSR 周期性发送的包含有候选汇集点C-RP信息的自举报文;所述第二转发单元,用于根据所述第二接收单元的触发,保存当前接收到 的第一自举报文,并通过本第二PE自身的私网协议无关组播PIM接口将当前 接收到的第一自举报文转发出去;其中,如果所述第一定时器超时,则周期性 地将最近一次保存的第一 自举报文通过本第二PE自身的私网PIM接口转发出 去。
12. 如权利要求11所述的第二PE,其特征在于,所述第二接收单元,还用于在保存当前接收到的第一自举报文之前,进一 步删除先前保存的第一 自举报文。
13. —种组播虚拟专用网VPN中的服务提供商边缘网络设备PE,其特征 在于,包括角色判断单元、第一接收单元、第一转发单元、第二接收单元和第 二转发单元,其中,所述角色判断单元,用于判断组播VPN中的当选BSR是否位于本PE所 连接的组播VPN站点内,若是,则启动所述第一接收单元;否则,启动所述 第二接收单元;所述第一接收单元,用于接收当选BSR周期性发送的包含有候选汇集点 C-RP信息的第一自举报文,并在每接收到一个第一自举报文时,触发所述第 一转发单元;所述第一转发单元,用于根据所述第一接收单元的触发,判断当前连续接 收到的内容相同的第一自举报文的次数是否低于预定数值若是,则通过组播 隧道将当前接收到的第一自举报文转发至组播VPN中的其它PE;否则,不通 过所述组播隧道转发当前接收到的第 一 自举报文;所述内容包括C-RP信息;所述第二接收单元,用于启动一定时器,并通过组播隧道接收第一PE转 发的第一自举报文,并在每接收到一个第一自举报文后,重置所述定时器,并 触发所述第二转发单元,其中,所述第一PE是当选自举路由器BSR所属组播 VPN站点的出口 PE,所述第 一 自對艮文是当选BSR周期性发送的包含有候选 汇集点C-RP信息的自举报文;所述第二转发单元,用于根据所述第二接收单元的触发,保存当前接收到 的第一自举报文,并通过本PE自身的私网协议无关组播PIM接口将当前接收 到的第一自举^t艮文转发出去;其中,如果所述第一定时器超时,则周期性地将 最近一次保存的第一自举报文通过本PE的私网PIM接口转发出去。
14. 如权利要求13所述的PE,其特征在于,还包括 邻居维护单元,用于通过和所述其它PE周期性地交互PIM Hello报文,建立并维持本PE与其它PE之间的PIM邻居关系;所述第 一转发单元,还用于在当前连续接收到的内容相同的第 一 自举报文 的次数达到或超过所述预定数值之后,如果所述邻居维护单元在第二预定周期 内未接收到所述其它PE中的任一 PE的PIM Hello报文,则恢复通过所述组播 隧道转发当前接收到的第 一 自举报文。
15.如权利要求13所述的PE,其特征在于,还包括选举发起单元;所述第一接收单元,还用于在第三预定周期内未接收到当选BSR发送的 第 一 自举报文时,触发所述选举发起单元;所述选举发起单元,用于根据所述第一接收单元的触发,通过所述组播隧 道向所述其它PE发送用于触发BSR选举的第二自举报文。
16.如权利要求13所述的PE,其特征在于,所述内容还包括候选BSR 信息和当选BSR信息。
全文摘要
本发明提供了一种在组播虚拟专用网中发送自举报文的方法及设备。本发明通过采用BSR代理角色,代理处理BSR自举报文的发送,从而减少了PE在MTI上发送/接收的自举报文的数量,降低了自举报文对PE处理资源和公网带宽资源的消耗。
文档编号H04L12/56GK101567847SQ20091008581
公开日2009年10月28日 申请日期2009年6月1日 优先权日2009年6月1日
发明者张宇弟 申请人:杭州华三通信技术有限公司