1、10申请公布号CN104092554A43申请公布日20141008CN104092554A21申请号201410371522222申请日20140731H04L12/18200601H04L12/46200601H04L12/74120130171申请人杭州华三通信技术有限公司地址310052浙江省杭州市滨江区长河路466号72发明人江玉八王伟74专利代理机构北京德琦知识产权代理有限公司11018代理人衣淑凤宋志强54发明名称组播分发树建立方法及装置57摘要本申请提出组播分发树建立方法及装置。方法包括当L3VPN骨干网中的第一PE设备针对自身配置的组播VPN信息生成公网转发表项时,将该表项放
2、入组播VPN公网转发表中;当第一PE设备针对非组播VPN信息生成普通组播公网转发表项时,将该表项放入普通组播公网转发表;其中,组播VPN公网转发表用于所述第一PE设备转发组播VPN的组播流,普通组播公网转发表用于所述第一PE设备转发普通组播流。本申请提高了组播VPN私网流量在公网中的转发可靠性。51INTCL权利要求书5页说明书11页附图6页19中华人民共和国国家知识产权局12发明专利申请权利要求书5页说明书11页附图6页10申请公布号CN104092554ACN104092554A1/5页21一种组播分发树MDT建立方法,其特征在于,该方法包括当三层虚拟专网L3VPN骨干网中的第一服务提供商
3、边缘PE设备针对自身配置的组播VPN信息生成公网转发表项时,将该表项放入组播VPN公网转发表中;当第一PE设备针对非组播VPN信息生成普通组播公网转发表项时,将该表项放入普通组播公网转发表;其中,组播VPN公网转发表用于所述第一PE设备转发组播VPN的组播流,普通组播公网转发表用于所述第一PE设备转发普通组播流。2根据权利要求1所述的方法,其特征在于,第一PE设备采用协议无关组播PIM源指定组播SSM模式,所述第一PE设备针对自身配置的组播VPN信息生成公网转发表项包括第一PE设备接收第二PE设备发来的第二PE设备上配置的第一组播VPN信息,在L3VPN骨干网上发送PIM加入消息,并创建第一组
4、播VPN对应的第一组播隧道MT接口,第一MT接口的地址为第一PE设备上配置的第一组播VPN信息中的组播源地址;其中,PIM加入消息中携带的组播源地址S、组播组地址G分别为第二设备上配置的第一组播VPN信息中的源地址、组播组地址,且PIM加入消息中携带组播VPN标志;同时,第一PE设备生成S,G表项,表项的S、G分别为第二PE设备上配置的第一组播VPN信息中的组播源地址、组播组地址,表项的入接口为指向第二PE设备的公网PIM邻居接口,表项的出接口为第一MT接口,将该表项放入组播VPN公网转发表中。3根据权利要求1或2所述的方法,其特征在于,第一PE设备采用PIMSSM模式,所述第一PE设备针对自
5、身配置的组播VPN信息生成公网转发表项包括第一PE设备接收第二PE设备发来的PIM加入消息,则根据消息中携带的第一PE设备上配置的第一组播VPN信息中的组播源地址、组播组地址,建立S,G表项,表项的入接口为第一MT接口,表项的出接口为PIM加入消息的入接口,发现该消息携带组播VPN标志,则将该S,G表项放入组播VPN公网转发表中,其中,第一MT接口的地址为第一PE设备上配置的第一组播VPN信息中的地址。4根据权利要求1所述的方法,其特征在于,第一PE设备采用PIM密集模式DM,所述第一PE设备针对自身配置的组播VPN信息生成公网转发表项包括第一PE设备针对自身配置的第一组播VPN信息,构造用于
6、在MT接口之间建立私网PIM邻居的PIMHELLO消息,为该消息封装隧道头,隧道头的源、目的地址分别为自身配置的第一组播VPN信息中的组播源地址、组播组地址,将该隧道报文从L3VPN骨干网转发出去;同时,第一PE设备生成S,G表项,表项的S、G分别为自身配置的第一组播VPN信息中的组播源地址、组播组地址,表项的入接口为第一MT接口,表项的出接口为第一PE设备上的所有公网PIM邻居接口,将该表项放入组播VPN公网转发表中,其中,第一MT接口的地址为第一PE设备上配置的第一组播VPN信息中的地址。5根据权利要求1或4所述的方法,其特征在于,第一PE设备采用PIMDM模式,所述第一PE设备针对自身配
7、置的组播VPN信息生成公网转发表项包括第一PE设备接收第二PE设备发来的报文,发现该报文进行了隧道封装且隧道头的目的地址为自身配置的第一组播VPN信息中的组播组地址,则建立S,G表项,其中,表项的S、G分别为报文的隧道头的源、目的地址,表项的入接口为隧道报文的入接口,表项的出接权利要求书CN104092554A2/5页3口为第一MT接口,将该表项放入组播VPN公网转发表中,其中,第一MT接口的地址为第一PE设备上配置的第一组播VPN信息中的组播源地址。6根据权利要求1所述的方法,其特征在于,第一PE设备采用PIM稀疏模式SM,所述第一PE设备针对自身配置的组播VPN信息生成公网转发表项包括第一
8、PE设备向汇集点RP发起PIM加入消息,消息中携带的G为自身配置的第一组播VPN信息中的组播组地址,且消息中携带组播VPN标志;同时,第一PE设备生成,G表项,表项的G为自身配置的第一组播VPN信息中的组播组地址,表项的入接口为指向PR的公网PIM邻居接口,表项的出接口为第一MT接口,将该表项放入组播VPN公网转发表中,其中,第一MT接口的地址为第一PE设备上配置的第一组播VPN信息中的组播源地址。7根据权利要求1所述的方法,其特征在于,第一PE设备采用PIMSM模式,所述第一PE设备针对自身配置的组播VPN信息生成公网转发表项包括当第一PE设备作为RP时,第一PE设备接收第二PE设备发来的P
9、IM加入消息,根据消息中的G,建立,G表项,其中,表项的出接口为PIM加入消息的入接口,发现该消息携带组播VPN标志,则将该表项放入组播VPN公网转发表中。8根据权利要求1所述的方法,其特征在于,第一PE设备采用PIMSM模式,所述第一PE设备针对自身配置的组播VPN信息生成公网转发表项包括当第一PE设备作为源指定路由器DR时,第一PE设备向RP发起PIM注册消息,注册消息中携带的组播数据为封装了隧道头的PIMHELLO消息,注册消息中携带第一PE设备上配置的第一组播VPN信息,且该注册消息携带组播VPN标志,其中,PIMHELLO消息封装的隧道头的源、目的地址分别为第一PE设备上配置的第一组
10、播VPN信息中的组播源地址、组播组地址;同时,第一PE设备生成S,G表项,表项的S、G分别为第一PE设备上配置的第一组播VPN信息中的组播源地址、组播组地址,表项的入接口为第一MT接口,表项的出接口为指向RP的公网PIM邻居接口,将该表项放入组播VPN公网转发表中,其中,第一MT接口的地址为第一PE设备上配置的第一组播VPN信息中的组播源地址。9根据权利要求1所述的方法,其特征在于,第一PE设备采用PIMSM模式,所述第一PE设备针对自身配置的组播VPN信息生成公网转发表项包括当第一PE设备作为RP时,第一PE设备接收作为源DR的第二PE设备发来的PIM注册消息,根据该注册消息携带的组播数据中
11、的隧道头的源、目的地址,建立S,G表项,其中,表项的入接口为PIM注册消息的入接口,表项的出接口为本设备的第一MT接口,发现该消息携带组播VPN标志,则将该表项放入组播VPN公网转发表中,其中,第一MT接口的地址为第一PE设备上配置的第一组播VPN信息中的组播源地址。10根据权利要求1所述的方法,其特征在于,所述方法进一步包括第一PE设备第一次接收到本站点的第一组播VPN内的第一用户边缘CE设备的组播报文,该报文的目的地址为第二PE设备所在站点的第一组播VPN内的第二CE设备点播的组播组私网地址,根据该组播报文生成组播VPN私网转发表项,表项的源地址为组播报文的源地址,目的地址为组播报文的目的
12、地址,入接口为组播报文的入接口,出接口为第一组播VPN对应的第一MT接口;第一PE设备对该组播报文进行隧道封装,其中,隧道头的源地址权利要求书CN104092554A3/5页4为第一MT接口的地址,目的地址为第一组播VPN对应的组播组地址,将该报文从L3VPN骨干网转发出去;第一PE设备从L3VPN骨干网接收报文,发现该报文封装了隧道头且报文的目的地址为第一组播VPN对应的组播组地址,则根据隧道头的源、目的地址、报文的入接口在自身的组播VPN公网转发表中查找对应的表项,得到报文的出接口第一MT接口,然后对报文进行解封装,得到原始组播报文,根据原始组播报文的源、目的地址、第一MT接口查找私网组播
13、转发表,得到报文的出接口,将报文从该出接口转发给本站点的第一组播VPN内的CE设备。11根据权利要求2、3、6、7、8或9所述的方法,其特征在于,所述PIM加入消息或PIM注册消息携带的组播VPN标志为PIM加入消息或PIM注册消息的保留字段为非零值。12一种组播分发树MDT建立装置,位于三层虚拟专网L3VPN骨干网中的第一服务提供商边缘PE设备上,其特征在于,该装置包括组播表项建立模块当针对本PE设备配置的组播VPN信息生成公网转发表项时,将该表项放入组播VPN公网转发表存储模块中的组播VPN公网转发表中;当针对非组播VPN信息生成普通组播公网转发表项时,将该表项放入普通组播公网转发表存储模
14、块中的普通组播公网转发表中;其中,组播VPN公网转发表用于所述第一PE设备转发组播VPN的组播流,普通组播公网转发表用于所述第一PE设备转发普通组播流;组播VPN公网转发表存储模块存储组播VPN公网转发表;普通组播公网转发表存储模块存储普通组播公网转发表。13根据权利要求12所述的装置,其特征在于,第一PE设备采用协议无关组播PIM源指定组播SSM模式,所述组播表项建立模块针对本PE设备配置的组播VPN信息生成公网转发表项包括接收第二PE设备发来的第二PE设备上配置的第一组播VPN信息,在L3VPN骨干网上发送PIM加入消息,并创建第一组播VPN对应的第一组播隧道MT接口,第一MT接口的地址为
15、第一PE设备上配置的第一组播VPN信息中的组播源地址;其中,PIM加入消息中携带的组播源地址S、组播组地址G分别为第二设备上配置的第一组播VPN信息中的源地址、组播组地址,且PIM加入消息中携带组播VPN标志;同时,生成S,G表项,表项的S、G分别为第二PE设备上配置的第一组播VPN信息中的组播源地址、组播组地址,表项的入接口为指向第二PE设备的公网PIM邻居接口,表项的出接口为第一MT接口,将该表项放入组播VPN公网转发表中。14根据权利要求12所述的装置,其特征在于,第一PE设备采用PIMSSM模式,所述组播表项建立模块针对本PE设备配置的组播VPN信息生成公网转发表项包括接收第二PE设备
16、发来的PIM加入消息,则根据消息中携带的第一PE设备上配置的第一组播VPN信息中的组播源地址、组播组地址,建立S,G表项,表项的入接口为第一MT接口,表项的出接口为PIM加入消息的入接口,发现该消息携带组播VPN标志,则将该S,G表项放入组播VPN公网转发表中,其中,第一MT接口的地址为第一PE设备上配置的第一组播VPN信息中的地址。15根据权利要求12所述的装置,其特征在于,第一PE设备采用PIM密集模式DM,所述组播表项建立模块针对本PE设备配置的组播VPN信息生成公网转发表项包括权利要求书CN104092554A4/5页5针对第一PE设备配置的第一组播VPN信息,构造用于在MT接口之间建
17、立私网PIM邻居的PIMHELLO消息,为该消息封装隧道头,隧道头的源、目的地址分别为第一PE设备上配置的第一组播VPN信息中的组播源地址、组播组地址,将该隧道报文从L3VPN骨干网转发出去;同时,生成S,G表项,表项的S、G分别为第一PE设备上配置的第一组播VPN信息中的组播源地址、组播组地址,表项的入接口为第一MT接口,表项的出接口为第一PE设备上的所有公网PIM邻居接口,将该表项放入组播VPN公网转发表中,其中,第一MT接口的地址为第一PE设备上配置的第一组播VPN信息中的地址。16根据权利要求12所述的装置,其特征在于,第一PE设备采用PIMDM模式,所述组播表项建立模块针对本PE设备
18、配置的组播VPN信息生成公网转发表项包括接收第二PE设备发来的报文,发现该报文进行了隧道封装且隧道头的目的地址为第一PE设备上配置的第一组播VPN信息中的组播组地址,则建立S,G表项,其中,表项的S、G分别为报文的隧道头的源、目的地址,表项的入接口为隧道报文的入接口,表项的出接口为第一MT接口,将该表项放入组播VPN公网转发表中,其中,第一MT接口的地址为第一PE设备上配置的第一组播VPN信息中的组播源地址。17根据权利要求12所述的装置,其特征在于,第一PE设备采用PIM稀疏模式SM,所述组播表项建立模块针对本PE设备配置的组播VPN信息生成公网转发表项包括向汇集点RP发起PIM加入消息,消
19、息中携带的G为第一PE设备上配置的第一组播VPN信息中的组播组地址,且消息中携带组播VPN标志;同时,生成,G表项,表项的G为第一PE设备上配置的第一组播VPN信息中的组播组地址,表项的入接口为指向PR的公网PIM邻居接口,表项的出接口为第一MT接口,将该表项放入组播VPN公网转发表中,其中,第一MT接口的地址为第一PE设备上配置的第一组播VPN信息中的组播源地址。18根据权利要求12所述的装置,其特征在于,第一PE设备采用PIMSM模式,所述组播表项建立模块针对本PE设备配置的组播VPN信息生成公网转发表项包括当第一PE设备作为RP时,接收第二PE设备发来的PIM加入消息,根据消息中的G,建
20、立,G表项,其中,表项的出接口为PIM加入消息的入接口,发现该消息携带组播VPN标志,则将该表项放入组播VPN公网转发表中。19根据权利要求12所述的装置,其特征在于,第一PE设备采用PIMSM模式,所述组播表项建立模块针对本PE设备配置的组播VPN信息生成公网转发表项包括当第一PE设备作为源指定路由器DR时,向RP发起PIM注册消息,注册消息中携带的组播数据为封装了隧道头的PIMHELLO消息,注册消息中携带第一PE设备上配置的第一组播VPN信息,且该注册消息携带组播VPN标志,其中,PIMHELLO消息封装的隧道头的源、目的地址分别为第一PE设备上配置的第一组播VPN信息中的组播源地址、组
21、播组地址;同时,生成S,G表项,表项的S、G分别为第一PE设备上配置的第一组播VPN信息中的组播源地址、组播组地址,表项的入接口为第一MT接口,表项的出接口为指向RP的公网PIM邻居接口,将该表项放入组播VPN公网转发表中,其中,第一MT接口的地址为第一PE设备上配置的第一组播VPN信息中的组播源地址。20根据权利要求12所述的装置,其特征在于,第一PE设备采用PIMSM模式,权利要求书CN104092554A5/5页6所述组播表项建立模块针对本PE设备配置的组播VPN信息生成公网转发表项包括当第一PE设备作为RP时,接收作为源DR的第二PE设备发来的PIM注册消息,根据该注册消息携带的组播数
22、据中的隧道头的源、目的地址,建立S,G表项,其中,表项的入接口为PIM注册消息的入接口,表项的出接口为本设备的第一MT接口,发现该消息携带组播VPN标志,则将该表项放入组播VPN公网转发表中,其中,第一MT接口的地址为第一PE设备上配置的第一组播VPN信息中的组播源地址。21根据权利要求12所述的装置,其特征在于,所述装置进一步包括组播VPN转发模块,用于当第一次接收到本站点的第一组播VPN内的第一用户边缘CE设备的组播报文,该报文的目的地址为第二PE设备所在站点的第一组播VPN内的第二CE设备点播的组播组私网地址,根据该组播报文生成组播VPN私网转发表项,表项的源地址为组播报文的源地址,目的
23、地址为组播报文的目的地址,入接口为组播报文的入接口,出接口为第一组播VPN对应的第一MT接口;对该组播报文进行隧道封装,其中,隧道头的源地址为第一MT接口的地址,目的地址为第一组播VPN对应的组播组地址,将该报文从L3VPN骨干网转发出去;当从L3VPN骨干网接收到报文,发现该报文封装了隧道头且报文的目的地址为第一组播VPN对应的组播组地址,则根据隧道头的源、目的地址、报文的入接口在组播VPN公网转发表中查找对应的表项,得到报文的出接口第一MT接口,然后对报文进行解封装,得到原始组播报文,根据原始组播报文的源、目的地址、第一MT接口查找私网组播转发表,得到报文的出接口,将报文从该出接口转发给本
24、站点的第一组播VPN内的CE设备。22根据权利要求13、14、17、18、19或20所述的装置,其特征在于,所述PIM加入消息或PIM注册消息携带的组播VPN标志为PIM加入消息或PIM注册消息的保留字段为非零值。权利要求书CN104092554A1/11页7组播分发树建立方法及装置技术领域0001本申请涉及组播VPNVIRTUALPRIVATENETWORK,虚拟专网技术领域,尤其涉及组播分发树建立方法及装置。背景技术0002IPINTERNETPROTOCOL,因特网协议组播在企业网中应用十分广泛,银行、网络教育、企业通信等越来越多的行业将它作为各种应用的解决方案。而RFC4364提供了一
25、种可扩展的VPN架构MPLSBGPMULTIPROTOCOLLABELSWITCHINGBORDERGATEWAYPROTOCOL,多协议标签交换边界网关协议/VPN,它可以让SPSERVICEPROVIDER,服务提供商为企业用户提供三层VPN服务,分离VPN之间的单播路由和数据转发。但是如何让这种VPN提供组播业务的隧道传输,组播VPN技术应运而生。0003组播VPN是一项在VPN网络中实现组播传输的技术,最常见的是MDMULTICASTDOMAIN,组播域技术。MD是由一些相互之间可以发送和接收组播业务的VRFVIRTUALROUTINGANDFORWARDING,虚拟路由和转发实例组成
26、。同一MD中建立在PEPROVIDEREDGE,服务提供商边缘设备之间的隧道称之为MTMULTICASTTUNNEL,组播隧道,它用于多个VRF实例之间的组播协议报文和组播业务报文的相互传输。0004MD技术最大优点就是仅需要PE设备支持多VRF实例,而无需升级CECUSTOMEREDGE,用户边缘设备和PPROVIDER,服务提供商设备,且无需修改CE设备和P设备上原有的PIMPROTOCOLINDEPENDENTMULTICAST,协议无关组播配置,也就是说,该方案对于CE设备和P设备是透明的。0005典型的组播VPN组网如图1所示,其中,站点SITE1、SITE3、SITE5属于VPNA
27、,如果VPNA的SITE1上有一个组播源,要求在属同一VPN的SITE3和SITE5上能够接收该组播源发送的流量,这是基本的组播VPN功能。0006目前基于MD方式的组播VPN工作原理如下0007MD在逻辑上表示某一特定VPN的私网组播数据在公网中的传播范围,在实际中则标识了网络中支持该VPN实例的所有PE设备。不同的VPN实例对应不同的MD。图2给出了公网实例PIM与VPN实例MD的对应关系示意图,如图2所示,其中每个VPN实例平面的中央椭圆区域表示一个MD,该MD服务于某个特定的VPN,在该VPN中传输的所有私网组播数据都在此MD内传输。0008DEFAULTMDTDEFAULTMULTI
28、CASTDISTRIBUTIONTREE,默认组播分发树是MD方案最基本的思想。它是一棵建立在同一VPN的所有PE设备之间的组播分发树,在配置完成后自动生成,在公网中将会一直存在,而不论公网或私网中有没有实际的组播业务。0009同任何MDT一样,DEFAULTMDT需要考虑源SOURCE和组GROUP两个要素。DEFAULTMDT的组地址是预先规划好,由管理员手工在每个VRF实例上进行配置,属于相同组播VPN的所有VRF实例上配置的组地址必须相同,而同一PE设备上属于不同的组播的VRF实例上配置的组地址必须不同。说明书CN104092554A2/11页80010当DEFAULTMDT建立完成后
29、,本地PE设备将私网组播报文封装成公网组播报文通过MTIMULTICASTTUNNELINTERFACE,组播隧道接口发出,在MD内部,私网数据通过DEFAULTMDT传输到远端PE设备,而远端PE设备则从MTI接收数据,并将其解封装成私网数据发给对应的VPN,完成一次组播数据的传递。发明内容0011本申请提供MDT建立方法及装置,以提高组播VPN私网流量在公网中的转发可靠性。0012本申请的技术方案是这样实现的0013一种MDT建立方法,该方法包括0014当L3VPN骨干网中的第一PE设备针对自身配置的组播VPN信息生成公网转发表项时,将该表项放入组播VPN公网转发表中;0015当第一PE设
30、备针对非组播VPN信息生成普通组播公网转发表项时,将该表项放入普通组播公网转发表;0016其中,组播VPN公网转发表用于所述第一PE设备转发组播VPN的组播流,普通组播公网转发表用于所述第一PE设备转发普通组播流。0017一种MDT建立装置,位于L3VPN骨干网中的第一PE设备上,该装置包括0018组播表项建立模块当针对本PE设备配置的组播VPN信息生成公网转发表项时,将该表项放入组播VPN公网转发表存储模块中的组播VPN公网转发表中;当针对非组播VPN信息生成普通组播公网转发表项时,将该表项放入普通组播公网转发表存储模块中的普通组播公网转发表中;其中,组播VPN公网转发表用于所述第一PE设备
31、转发组播VPN的组播流,普通组播公网转发表用于所述第一PE设备转发普通组播流;0019组播VPN公网转发表存储模块存储组播VPN公网转发表;0020普通组播公网转发表存储模块存储普通组播公网转发表。0021可见,本申请中,PE设备针对自身配置的组播VPN信息生成公网转发表项时,将该表项放入组播VPN公网转发表中;当PE设备针对非组播VPN信息生成普通组播公网转发表项时,将该表项放入普通组播公网转发表;PE设备根据组播VPN公网转发表转发来自组播VPN的组播流,这样,针对组播VPN和普通组播的公网转发表项被分别维护,从而保证了来自组播VPN的流量只会被转发给组播VPN用户;0022另外,本申请实
32、施例中,在针对组播VPN发出的PIM加入或注册消息中添加组播VPN标志或者为用于建立私网邻居的PIMHELLO消息封装公网隧道头,保证了针对组播VPN生成的公网转发表项只会被放入组播VPN公网转发表中,从而提高了组播VPN私网流量在公网中的转发可靠性。附图说明0023图1为典型的组播VPN组网图;0024图2为公网实例PIM与VPN实例MD的对应关系示意图;0025图3为本申请一实施例提供的MDT建立方法流程图;0026图4为本申请实施例提供的MPLSL3VPN骨干网采用PIMSSM时,MDT建立方法流说明书CN104092554A3/11页9程图;0027图5为PIMJOIN消息的格式示意图
33、;0028图6为本申请实施例提供的MPLSL3VPN骨干网采用PIMDM时,MDT建立方法流程图;0029图7为本申请实施例提供的MPLSL3VPN骨干网采用PIMSM时,MDT建立方法流程图;0030图8为PIM注册消息的格式示意图;0031图9为本申请实施例提供的MDT建立装置的组成示意图。具体实施方式0032当前基于MD技术的组播VPN实现中,一个MD唯一对应一个DEFAULTGROUP,并利用公网资源创建唯一一棵DEFAULTMDT进行数据转发。当DEFAULTMDT建立完成后,在该VPN中,无论从哪个PE设备进入公网,所有的私网组播报文都被封装成公网组播数据报文经由此DEFAULTM
34、DT转发,远端PE设备收到报文后通过解封装将其还原成私网报文,发送给对应的VPN。0033如图1所示,DEFAULTMDT建立完成后,此时无论是从PE设备还是P设备收到一个IGMPINTERNETGROUPMANAGEMENTPROTOCOL,因特网组管理协议组加入或PIM加入报文,而此报文中的组地址恰好和当前设备上的DEFAULTGROUP相同无论是从蓄意和无意的角度来说,组播地址个数有限,当组播VPN组网中设备很多且有多个VPN实例时,地址相同的可能性就大大增加,此时根据组播协议的实现,组播表项会扩展出接口或添加出接口,收到报文的接口会扩展到DEFAULTMDT中,形成私网数据被不属于该V
35、PN的公网接收者接收。0034图3为本申请一实施例提供的MDT建立方法流程图,其具体步骤如下0035步骤301当L3VPN骨干网中的第一PE设备针对自身配置的组播VPN信息生成公网转发表项时,将该表项放入组播VPN公网转发表中;其中,组播VPN公网转发表用于第一PE设备转发组播VPN的组播流。0036步骤302当第一PE设备针对非组播VPN信息生成普通组播公网转发表项时,将该表项放入普通组播公网转发表;其中,普通组播公网转发表用于第一PE设备转发普通组播流。0037本申请实施例中,MPLSL3VPN骨干网中的PE设备、P设备上分别维护两张组播转发表普通组播公网转发表和组播VPN公网转发表。00
36、38组播VPN公网转发表用于维护针对组播VPN的组播公网转发表项;普通组播公网转发表用于维护针对普通组播即非组播VPN的组播公网转发表项。0039组播VPN信息包括SOURCE组播源地址和GROUP组播组地址。本实施例中,组播VPN信息中的组播组地址为DEFAULTGROUP,或者DATAGROUP。0040本申请实施例中,将组播VPN公网转发表项放入了组播VPN公网转发表中现有技术只有一张组播公网转发表,而本申请实施例中有两张普通组播公网转发表和组播VPN公网转发表。0041以下以MPLSL3VPN骨干网为例,分别针对MPLSL3VPN骨干网采用PIM说明书CN104092554A4/11页
37、10SSMSOURCESPECICMULTICAST,源指定组播、PIMDMDENSEMODE,密集模式、PIMSMSPARSEMODE,稀疏模式三种情况时,分别进行详细说明0042图4为MPLSL3VPN骨干网采用PIMSSM时,MDT建立方法流程图,其具体步骤如下0043步骤400MPLSL3VPN骨干网中的PE设备、P设备上分别维护两张组播转发表普通组播公网转发表和组播VPN公网转发表。0044以下以组播VPN为组播VPN1,支持组播VPN1的任一PE设备第一PE设备为例,说明组播VPN1对应的DEFAULTMDT的建立过程以及通过DEFAULTMDT进行组播转发的过程0045步骤401
38、第一PE设备与其它PE设备建立BGP连接,连接建立,第一PE设备向其它PE设备发送BGP消息,该消息携带第一PE设备上配置的组播VPN1信息。0046同时,配置了组播VPN1的其它PE设备也会执行步骤401。0047步骤402第一PE设备接收到MPLSL3VPN骨干网中任一其它PE设备,设为第二PE设备发来的BGP消息,该消息携带第二PE设备上配置的组播VPN1信息,第一PE设备在MPLSL3VPN骨干网上发送PIMJOIN消息以加入组播VPN1对应的DEFAULTMDT,并创建第一MT接口对应组播VPN1的MT接口,其中,PIMJOIN消息中携带的S、G分别为第二PE设备上配置的组播VPN1
39、信息中的SOURCE、DEFAULTGROUP,且PIMJOIN消息的RESERVED保留字段的值为非零值;同时,第一PE设备生成S,G表项,表项的S、G分别为第二PE设备发来的组播VPN1信息中的SOURCE、DEFAULTGROUP,表项的入接口为指向第二PE设备的公网PIM邻居接口,表项的出接口为第一MT接口,将该表项放入组播VPN公网转发表中。0048PE设备启动后,就会与MPLSL3VPN网络中的其它PE设备建立公网PIM邻居。0049对于任一组播VPN,在MPLSL3VPN网络中支持该VPN的各PE设备上配置该组播VPN信息,包括SOURCE和DEFAULTGROUP。0050组播
40、VPN与MD一一对应。不同PE设备上针对同一组播VPN的DEFAULTGROUP相同;对于每个PE设备,该PE设备上配置的组播VPN中的SOURCE为该PE设备用于与其它PE设备建立MDT连接的接口的IP地址。0051例如PE1、PE2设备都支持VPN1,0052在PE1设备上针对组播VPN1的配置如下0053SOURCE1111,DEFAULTGROUP2320010054在PE2设备上针对组播VPN1的配置如下0055SOURCE3333,DEFAULTGROUP2320010056其中,1111为PE1设备用于与其它PE设备建立MDT连接的接口IP地址,3333为PE2设备用于与其它PE
41、设备建立MDT连接的接口IP地址。0057其中,第一MT接口的地址为第一PE设备上配置的组播VPN1信息中的SOURCE。0058图5为PIMJOIN消息的格式示意图,现有的PIMJOIN消息的RESERVED字段取值为0,本实施例中,当针对组播VPN发出PIMJOIN消息时,将消息的RESERVED字段置为非零值,以表示该消息是针对组播VPN的。0059此后,PIMJOIN消息会通过MPLSL3VPN骨干网转发给所有配置了组播VPN1信息的PE设备。说明书CN104092554A105/11页110060同时,配置了组播VPN1信息的其它PE设备也会执行步骤402。0061步骤403第一PE
42、设备接收任一其它PE设备,设为第二PE设备发来的PIMJOIN消息,根据消息中携带的第一PE设备上配置的组播VPN1的SOURCE、DEFAULTGROUP,建立S,G表项,表项的入接口为第一MT接口,表项的出接口为PIMJOIN消息的入接口,该消息的RESERVED字段为非零值,则将该S,G表项放入组播VPN公网转发表中。0062对于第一、二PE设备之间的P设备,当该P设备接收到来自第二PE设备的PIMJOIN消息时,根据消息中携带的第一PE设备上配置的组播VPN1的SOURCE、DEFAULTGROUP,建立S,G表项,其中,表项的入接口为指向第一PE设备的公网PIM邻居接口,表项的出接口
43、为PIMJOIN消息的入接口,该消息的RESERVED字段为非零值,则将该表项放入组播VPN公网转发表中。0063同时,配置了组播VPN1信息的其它PE设备也会执行步骤403。0064通过上述步骤401403,配置了组播VPN1信息的所有PE、P设备上都建立了相应的S,G表项,组播VPN1对应的DEFAULTMDT建立。0065步骤404第一PE设备第一次接收到本站点VPN1内的第一CE设备的组播报文,设该报文的目的地址为第二PE设备所在站点VPN1内的第二CE设备点播的组播组私网地址,根据该报文生成组播VPN私网转发表项,表项的源地址为组播报文的源地址,目的地址为组播报文的目的地址,入接口为
44、组播报文的入接口即第一PE设备上连接第一CE设备的私网接口,出接口为组播VPN1对应的第一MT接口;第一PE设备对该组播报文进行隧道封装,其中,隧道头的源地址为第一MT接口的地址,目的地址为组播VPN1对应的DEFAULTGROUP,将该报文从MPLSL3VPN骨干网转发出去。0066由于组播报文的隧道头的目的地址为组播VPN1对应的DEFAULTGROUP,因此该报文会沿着组播VPN1对应的DEFAULTMDT转发给所有配置了组播VPN1信息的PE设备。0067步骤405第二PE设备接收到该报文,发现该报文封装了隧道头,则根据隧道头的源、目的地址、报文的入接口在自身的组播VPN公网转发表中查
45、找对应的表项,得到报文的出接口第一MT接口对应组播VPN1的MT接口,然后对报文进行解封装,得到原始组播报文,根据原始组播报文的源、目的地址、第一MT接口查找组播VPN私网转发表,得到报文的出接口第二PE设备上连接第二CE设备的私网接口,将报文从该出接口转发给第二CE设备。0068只有来自VPN的报文才会封装隧道头,因此,第二PE设备发现报文封装了隧道头,就在组播VPN公网转发表中而不是在普通组播公网转发表中查找出接口。0069本申请实施例中,对于针对普通组播即非组播VPN而发起的PIM消息流程并不作任何改动,只是,PE设备和P设备在接收到PIMJOIN消息时,若发现该消息的RESERVED字
46、段的值为零,则将根据该消息建立的S,G表项放入普通组播公网转发表中;同时,PE设备和P设备在MPLSL3VPN所在的骨干网中转发普通组播即非组播VPN报文时,在普通组播公网转发表中查找对应的S,G表项进行转发。0070当对DEFAULTMDT进行剪枝处理时,具体过程如下0071A、第一PE设备发出PIMPRUNED剪枝消息,其中,RESERVED字段为非零值,且携带第一PE设备上配置的组播VPN1对应的SOURCE、DEFAULTGROUP,将该报文从MPLSL3VPN骨干网转发出去。说明书CN104092554A116/11页120072PIMPRUNED消息会沿着组播VPN1对应的DEFA
47、ULTMDT转发给所有配置了组播VPN1信息的PE设备。0073B、任一PE设备,设为第二PE设备接收到该报文,发现RESERVED字段为非零值,则根据消息中携带的SOURCE、DEFAULTGROUP和消息的入接口在自身的组播VPN公网转发表中查找到对应的表项,将该消息的入接口从该表项的出接口列表中删除。0074同样,P设备接收到该报文,发现RESERVED字段为非零值,则根据消息中携带的SOURCE、DEFAULTGROUP和消息的入接口在自身的组播VPN公网转发表中查找到对应的表项,将该消息的入接口从该表项的出接口列表中删除。0075图6为MPLSL3VPN骨干网采用PIMDM时,MDT
48、建立方法流程图,其具体步骤如下0076步骤600MPLSL3VPN骨干网中的PE设备、P设备上分别维护两张组播转发表普通组播公网转发表和组播VPN公网转发表。0077以下以组播VPN为组播VPN1,组播VPN1的MT接口为第一MT接口,支持组播VPN1的任一PE设备第一PE设备为例,说明组播VPN1对应的DEFAULTMDT的建立过程以及通过DEFAULTMDT进行组播转发的过程0078步骤601第一PE设备构造用于在MT接口之间建立私网PIM邻居的PIMHELLO消息,为该消息封装隧道头,隧道头的源地址为第一MT接口的地址,目的地址为组播VPN1信息中的DEFAULTGROUP,将该隧道报文
49、从MPLSL3VPN骨干网转发出去;同时,第一PE设备生成S,G表项,表项的S、G分别为自身配置的组播VPN1信息中的SOURCE、DEFAULTGROUP,表项的入接口为第一MT接口,表项的出接口为第一PE设备上的所有公网PIM邻居接口,将该表项放入组播VPN公网转发表中。0079此后,隧道报文会通过MPLSL3VPN骨干网转发给所有配置了组播VPN1信息的PE设备。0080同时,配置了组播VPN1信息的其它PE设备也会执行步骤601。0081对于任一组播VPN,在MPLSL3VPN网络中支持该VPN的各PE设备上配置该组播VPN信息,包括SOURCE和DEFAULTGROUP,各PE设备生成针对该组播VPN的MT接口。0082步骤602第一PE设备接收到MPLSL3VPN骨干网中的任一其它PE设备,设为第二PE设备发来的隧道报文,发现该报文进行了隧道封装且隧道头的目的地址为自身配置的组播VPN1信息中的DEFAULTGROUP,建立S,G表项,其中,表项的S、G分别为隧道头的源、目的地址,即第二PE设备上配置的组播VPN1信息中的SOURCE、DEFAULTGROUP,表项的入接口为隧道报文的入接口,表项的出接口为第一MT接口,将该表项放入组播VPN公网转发表中。0083对于第一、二PE设备之间的P设备,当该P设备接收到来自第二PE设备的隧道报文时,发现该报文进行了隧道封装