一种设置组播ip报文优先级的方法和设备的制作方法

文档序号:7706610阅读:158来源:国知局
专利名称:一种设置组播ip报文优先级的方法和设备的制作方法
技术领域
本发明涉及通信技术领域,特别是涉及一种设置组播IP报文优先级的方法和设备。

背景技术
目前IP组播应用越来越广,很多行业将组播技术作为应用的解决方案,同时VPN(Virtual Private Network,虚拟专用网)技术在企业网中的应用也越来越普及,BGP(Border Gateway Protocol,边界网关协议)/MPLS(MultiprotocolLabel Switching,多协议标签交换)VPN被广泛应用,在VPN环境中应用组播技术,成为需要解决的重要问题。
为了解决在BGP/MPLS VPN中运营组播业务所面临的挑战,提供了三种解决方案,MD(Multicast Domain,组播域)组播VPN方案、VPN-IP PIM(Protocol Independent Multicast,协议无关组播)组播VPN方案和基于NBMA技术MD组播VPN方案。其中,MD组播VPN方案脱颖而出,成为当前的主流解决方案,该MD组播VPN的优点包括对现有网络的升级简单,仅需升级PE(Provider Edge,服务提供商边缘)设备,无需升级CE(Customer Edge,用户网络边缘)和P(Provider,服务提供商)设备,并且无需修改CE和P上的配置,也就是说MD方案对于CE和P是透明的,使骨干网不必知道特定VPN内有多少个组播组的业务,于是骨干网的稳定性得到了保证;私网组播数据包在公网进行组播转发,将私网组播数据包在PE设备上封装成公网组播数据包,然后利用公网固有的IP组播转发功能实现私网组播数据包在公网内的组播转发;为服务提供商提供控制手段,方便骨干网络的规划和控制。
在MD组播VPN中,运营商构建的公共网络支持组播功能,从而节约带宽。PE设备同时支持公网实例和多个VPN实例,且分别运行相互独立的PIM。PE设备与CE设备之间通过VPN实例进行私网组播通信;PE设备与P设备之间则通过公网实例进行公网组播通信。该MD在逻辑上表示某一特定VPN的私网组播数据在公网中的传播范围,在客观上标识了网络中支持该VPN实例的所有PE设备,其中,不同的VPN实例对应不同的MD(一个MD对应一个VPN实例)。
在MD内部,私网组播数据通过MT(Multicast Tunnel,组播隧道)进行传输,通过使用MT进行传输具体为本地PE设备将私网组播数据包封装成公网组播数据包,并在公网内进行组播转发,远端PE设备收到该公网组播数据包后通过解封装将其还原成私网组播数据包,并发送给相应的接收者。
现有技术中,PE设备将私网组播数据包封装成公网组播数据包的过程具体为在CE设备向其他CE设备发送业务流(私网组播数据包)时,可以根据目的CE设备(其他CE设备)对应的路由信息查找该路由信息对应的IP优先级,并将该IP优先级信息携带在私网组播数据包的IP报头中,携带了IP优先级信息的私网组播数据包发送给与该CE设备直接连接的PE设备。在该PE设备的入口处(与CE设备直接连接的端口处),预先针对各个CE设备配置了QoS策略(IP优先级的配置策略),根据该预先配置的QoS策略确定是否对该私网组播数据包的IP报文头中携带的IP优先级信息进行更改;需要说明的是,该确定是否对IP优先级信息进行更改是为了防止用户在CE设备上对IP优先级进行私自更改(当用户在CE设备上对IP优先级进行私自更改时,可以根据预先配置的QoS策略将IP优先级修改回正确的IP优先级)。如果PE设备在入口处确定需要更改优先级,则根据该PE设备的QoS策略对IP报文头中携带的IP优先级进行更改,更改完成或确定不需要更改后,在PE设备的出口处(即与其他PE设备或P设备连接的端口处)将IP报文头中的IP优先级映射到公网组播数据包的报文头中,并将该公网组播数据包在骨干网中进行转发。骨干网中的路由设备或P路由器接收到该公网组播数据包时,按照该公网组播数据包中携带的IP优先级信息进行转发,直至发送到与目的CE设备相连的PE设备。
基于上面的分析,目前在设置组播IP报文优先级时存在如下缺点 在设置公网组播IP报文优先级时,需要分别在各个CE设备和与各个CE设备直接连接的PE设备的入口处针对各个用户进行QoS策略的配置,由于在VPN的组网中存在大量的CE设备和大量的用户,因此,在CE设备和PE设备入口处进行QoS配置的工作十分繁琐和复杂。并且,大量CE设备的存在带来了极大的维护压力,例如,当用户的需求发生变更(CE设备的需求发生变更)从而导致公网组播数据包的IP优先级信息发生变更时,需要调整大量的CE设备和PE设备直接的入口处的QoS策略,从而导致控制传输优先级的方法存在配置和维护的工作复杂,配置和维护成本较高。


发明内容
本发明提供一种设置组播IP报文优先级的方法和设备,以自动设置IP报文的优先级,减少配置和维护工作。
为了达到上述目的,本发明提出了一种设置组播IP报文优先级的方法,应用于组播VPN网络中,所述组播VPN网络包括源CE设备和至少两个PE设备,其特征在于,所述方法包括以下步骤 PE设备接收来自所述源CE设备的私网组播数据包; 所述PE设备根据所述私网组播数据包中携带的组播组地址信息查找路由对应关系,获取公网组播IP报文优先级信息; 所述PE设备将所述公网组播IP报文优先级信息添加到公网组播数据包中,并将所述公网组播数据包发送给其他PE设备。
优选的,所述PE设备接收来自所述源CE设备的私网组播数据包之前,还包括 所述PE设备在MP-BGP消息中设置包含优先级信息的团体属性信息; 所述PE设备将所述团体属性信息映射成所述公网组播IP报文优先级信息; 所述PE设备根据组播组地址信息将所述公网组播IP报文优先级信息和所述团体属性信息添加到所述路由对应关系中。
优选的,所述PE设备在MP-BGP消息中设置所述团体属性信息之后,还包括 所述其他PE设备接收来自所述PE设备的MP-BGP消息,获取所述MP-BGP消息中携带的包含优先级信息的团体属性信息; 所述其他PE设备将所述团体属性信息映射成所述公网组播IP报文优先级信息; 所述其他PE设备根据组播组地址信息将所述公网组播IP报文优先级信息和所述团体属性信息添加到自身路由对应关系中。
优选的,所述将团体属性信息映射成所述公网组播IP报文优先级信息包括 根据所述团体属性信息获取优先级信息; 根据所述优先级信息与所述公网组播IP报文优先级信息的第一对应关系,将所述优先级信息映射成所述公网组播IP报文优先级信息; 所述第一对应关系具体为 Pri=Weight0*Pri0,其中,所述Pri为所述公网组播IP报文优先级信息,所述Pri0为所述优先级信息,所述Weight0为预设的第一数值。
优选的,所述获取公网组播IP报文优先级信息包括 当所述公网组播数据包的优先级信息与所述私网组播数据包的优先级信息不相关时,从所述路由对应关系中获取所述公网组播IP报文优先级信息; 当所述公网组播数据包的优先级信息与所述私网组播数据包的优先级信息相关时,从所述路由对应关系中获取所述团体属性信息,根据所述团体属性信息获取公网组播IP报文优先级信息。
优选的,所述根据所述团体属性信息获取公网组播IP报文优先级信息包括 根据所述团体属性信息获取优先级信息; 根据所述优先级信息与所述公网组播IP报文优先级信息的第二对应关系,将所述优先级信息映射成所述公网组播IP报文优先级信息; 所述第二对应关系具体为 Pri=Weight1*Pri1+Weight2*Pri2,其中,所述Pri为所述公网组播IP报文优先级信息,所述Pri1为所述私网组播数据包中携带的优先级信息,所述Pri2为所述优先级信息,所述Weight1为预设的第二数值,所述Weight2为预设的第三数值。
本发明提出了一种设置组播IP报文优先级的设备,应用于组播VPN网络中,所述组播VPN网络包括源CE设备和至少两个PE设备,所述设置组播IP报文优先级的设备作为所述至少两个PE设备中的一个PE设备,其特征在于,所述PE设备包括 接收模块,用于接收来自所述源CE设备的私网组播数据包; 获取模块,与所述接收模块电性连接,用于根据所述接收模块接收的私网组播数据包中携带的组播组地址信息查找路由对应关系,获取公网组播IP报文优先级信息; 封装模块,与所述获取模块电性连接,用于将所述获取模块获取的公网组播IP报文优先级信息添加到公网组播数据包中,并将所述公网组播数据包发送给所述其他PE设备。
优选的,所述设备还包括 设置模块,用于在MP-BGP消息中设置包含优先级信息的团体属性信息; 映射模块,与所述设置模块电性连接,用于将所述设置模块设置的团体属性信息映射成所述公网组播IP报文优先级信息; 添加模块,与所述映射模块、获取模块和设置模块分别电性连接,用于根据组播组地址信息将所述映射模块映射的公网组播IP报文优先级信息和所述设置模块设置的团体属性信息添加到所述路由对应关系中,由所述获取模块根据所述路由对应关系获取公网组播IP报文优先级信息。
优选的,所述设备还包括 发送模块,与所述设置模块电性连接,用于通过所述MP-BGP消息将所述设置模块设置的团体属性信息发送给所述其他PE设备,由所述其他PE设备获取所述MP-BGP消息中携带的包含优先级信息的团体属性信息,将所述团体属性信息映射成所述公网组播IP报文优先级信息,并根据组播组地址信息将所述公网组播IP报文优先级信息和所述团体属性信息添加到自身路由对应关系中。
优选的,所述映射模块具体用于 根据所述设置模块设置的团体属性信息获取优先级信息;并根据所述优先级信息与所述公网组播IP报文优先级信息的第一对应关系,将所述优先级信息映射成所述公网组播IP报文优先级信息; 所述第一对应关系具体为 Pri=Weight0*Pri0,其中,所述Pri为所述公网组播IP报文优先级信息,所述Pri0为所述优先级信息,所述Weight0为预设的第一数值。
优选的,所述获取模块具体用于 当所述公网组播数据包的优先级信息与所述私网组播数据包的优先级信息不相关时,从所述路由对应关系中获取所述公网组播IP报文优先级信息; 当所述公网组播数据包的优先级信息与所述私网组播数据包的优先级信息相关时,从所述路由对应关系中获取所述团体属性信息,根据所述团体属性信息获取公网组播IP报文优先级信息。
优选的,所述映射模块还用于 根据所述团体属性信息获取优先级信息;并根据所述优先级信息与所述公网组播IP报文优先级信息的第二对应关系,将所述优先级信息映射成所述公网组播IP报文优先级信息; 所述第二对应关系具体为 Pri=Weight1*Pri1+Weight2*Pri2,其中,所述Pri为所述公网组播IP报文优先级信息,所述Pri1为所述私网组播数据包中携带的优先级信息,所述Pri2为所述优先级信息,所述Weight1为预设的第二数值,所述Weight2为预设的第三数值。
与现有技术相比,本发明具有以下优点PE设备通过在BGP更新报文中设置团体属性信息,并将该团体属性信息直接映射成需要向骨干网中发送的组播IP报文的优先级信息,不需要重复配置IP优先级信息,配置IP优先级信息时简单、容易,并且减轻了维护的压力。



为了更清楚地说明本发明或现有技术中的技术方案,下面将对本发明或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些附图,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1为本发明提出的一种设置组播IP报文优先级的方法流程图; 图2为本发明另一应用场景下的组网结构图; 图3为本发明另一应用场景下提出的一种设置组播IP报文优先级的方法流程图; 图4为本发明另一应用场景下Update消息的消息格式示意图; 图5为本发明提出的一种设置组播IP报文优先级的设备结构图。

具体实施例方式 下面将结合本发明中的附图,对本发明中的技术方案进行清楚、完整地描述,显然,所描述的仅仅是本发明一部分,而不是全部的。基于本发明,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他发明,都属于本发明保护的范围。
本发明的核心思想是根据BGP扩展协议中携带的团体属性信息,将来自CE设备的私网组播数据包直接封装成的公网组播数据包,并将根据团体属性信息映射成的公网组播IP报文优先级信息添加到该公网组播数据包的报头中,并向骨干网中发送该公网组播数据包,从而减少了配置和维护的过程。本发明中,通过将映射关系的参数向骨干网中的其他PE设备发送,使骨干网中的PE设备拥有相同的映射关系,即PE设备可以根据相同的优先级设置参数设置优先级,骨干网中的路由设备根据上述的优先级信息将来自不同PE设备的公网组播数据包向对应的路由器发送。
本发明提出的一种设置组播IP报文优先级的方法,应用于组播VPN网络中,所述组播VPN网络包括源CE设备和至少两个PE设备,如图1所示,所述方法包括以下步骤 步骤S101,PE设备接收来自所述源CE设备的私网组播数据包。
步骤S102,所述PE设备根据所述私网组播数据包中携带的组播组地址信息查找路由对应关系,获取公网组播IP报文优先级信息。
步骤S103,所述PE设备将所述公网组播IP报文优先级信息添加到公网组播数据包中,并将所述公网组播数据包发送给其他PE设备。
本发明提出的一种应用场景中设置组播IP报文优先级的方法,该方法适用于基于组播VPN的组网中,如图2所示,该VPN模型由三部分组成,CE设备、PE设备和P设备,其中,CE设备有接口直接与PE设备相连,该CE设备可以是路由器或交换机,也可以是一台终端,该CE设备不知道VPN的存在;PE设备可以为PE路由器或三层交换机,本发明中以PE路由器为例进行说明,该PE路由器与用户的CE设备直接相连,对VPN的所有处理均发生在PE路由器上,P设备为P路由器,是服务提供商网络中的骨干路由器,不与CE直接相连,P路由器只需要具备基本转发能力。其中,上述的设置组播IP报文优先级的方法如图3所示,包括以下步骤 步骤S301,PE路由器在扩展BGP的更新报文中设置组播VPN的团体属性值。
其中,在组播VPN网络中,包含多个对等的PE路由器(PE路由器1、PE路由器2和PE路由器3),对于一个组播VPN来说,需要为该组播VPN设置同一个团体属性值,该设置团体属性值为根据实际的需要在组播VPN网络中任意选取一个PE路由器,在该PE路由器上为该组播VPN设置团体属性值。本发明中,以选取在PE路由器1上设置团体属性值为例进行说明。
其中,BGP(Border Gateway Protocol,边界网关协议)是一种动态路由协议,早期发布的三个版本分别是BGP-1、BGP-2和BGP-3,当前使用的版本为BGP-4。BGP-4是Internet外部路由协议标准,被广泛应用于ISP(InternetService Provider,因特网服务提供商)之间。
其中,BGP-4可以很好的适应基于IPV4协议的Internet,并通过扩展BGP-4协议来适应非IPV4协议(例如IPX协议,IPV6协议),以实现Internet中的各种协议的传播和控制的要求。其中,扩展的BGP-4协议为MBGP(Multi-protocol BGP,多协议BGP),或称为MP-BGP。
具体的,在MP-BGP协议中,包含的消息类型可以为Open(开始)消息、Update(更新)消息、Notification(通知)消息、Keepalive(指令)消息和Route-refresh(路由恢复)消息等,该MP-BGP协议的Update消息用于路由信息的交换,通过使用该Update消息可以发布可达路由信息,也可以撤销不可达路由信息。该Update消息的消息格式如图4所示。其中,各个字段的含义为Unfeasible routes length,不可达路由字段的长度,以字节为单位,当该字段为0时,则说明没有不可达路由,即没有Withdrawn Routes字段;Withdrawn routes,不可达路由的列表;Total path attribute length,路径属性字段的长度,以字节为单位,当该字段为0时,则说明没有Path Attributes字段;Path atributes,与NLRI相关的所有路径属性列表,每个路径属性由一个TLV(Type-Length-Value)三元组构成,MP-BGP根据路径属性值避免环路,进行选路,协议扩展;NLRI(Network Layer Reachable Information,网络层可达信息),可达路由的前缀和前缀长度的二元组。其中,一条Update消息可以通告一类具有相同路径属性的可达路由,上述可达路由的信息放在NLRI字段中,Path Attributes字段中携带上述可达路由的属性,BGP根据可达路由的属性进行路由的选择,Update报文还可以携带多条不可达路由,被撤销的路由放在Withdrawn Routes字段中。其中,在MP-BGP协议中,还引入了两个新的路径属性,MP_REACH_NLRI(Multiprotocol Reachable NLRI,多协议可达NLRI),用于发布可达路由及下一跳信息;MP_UNREACH_NLRI(Multiprotocol Unreachable NLRI,多协议不可达NLRI),用于撤销不可达路由。其中,在MP-BGP协议Update消息中的Path Attributes字段携带了团体属性的信息。
该团体属性包括一系列4个字节(32bit)的数值,类型编码是8,其中,可以将团体属性值范围从0x00000000到0x0000FFFF和从0xFFFF0000到0xFFFFFFFF作为保留,其余的团体属性值可以由用户进行设置,例如,NO_EXPORT(0xFFFFFF01)和NO_ADVERTISE(0xFFFFFF02)为公知的团体属性值,NO_EXPORT表示所有接收到的团体属性中包含该值时,必须不广播出BGP边界,NO_ADVERTISE表示所有接收到的团体属性中包含该值时,必须不被广播到BGP对端。
本发明中,通过NLRI字段携带可达路由的信息,并通过使用PathAttributes字段携带上述可达路由信息的属性,即将4个字节的团体属性数值写入到Path Attributes字段,通过扩展MP-BGP协议的NLRI字段,将组播VPN的组播组地址写入到该NLRI字段。
其中,对于团体属性数值相同的组播组地址,使用同一个的Update消息携带,对于团体属性数值不同的组播组地址,使用不同的Update消息携带,例如,如表1所示。
表1 从表1中可知,组播组A的团体属性数值为100,当组播组A的PE路由器接收到该Update消息时,可以获知团体属性数值为100,对于团体属性数值不同的组播组地址,需要分别发送Update消息(Path Attributes字段只能写入一个团体属性数值)。
步骤S302,PE路由器1将上述设置的团体属性值映射成公网组播IP报文的优先级信息。
其中,在PE路由器1上预先设置了团体属性值和公网组播IP报文的优先级信息之间的对应关系;该对应关系是在网络规划的时候,存储在组播VPN网络中的PE路由器上的。
本发明中,PE路由器可以选择32bit团体属性数值中的前3bit作为公网组播IP报文的优先级信息,当然,该PE路由器还可以用更多的比特数表示公网组播IP报文的优先级信息,本发明中,以团体属性数值的前3bit表示公网组播IP报文优先级信息为例进行说明,即PE路由器1可以只根据团体属性数值中的前3bit获取公网组播IP报文优先级信息,当然,PE路由器1也可以根据团体属性数值中的其他位置中的信息获取公网组播IP报文优先级信息,或根据团体属性数值中的所有bit获取公网组播IP报文优先级信息。
其中,该预先设置团体属性值与公网组播IP报文优先级信息的对应关系可以用公式1表示。
Pri=Weight1*Pri1公式(1) 该Pri为公网组播IP报文优先级(该公网组播IP报文优先级为在骨干网中传输的公网组播数据包的优先级信息),该Pri1为根据团体属性数值获取的优先级信息,该Weight1是权重,该Weight1是根据实际需要任意选取的数值。例如,当团体属性数值为0x40000000(01000000000000000000000000000000)时,可知,团体属性数值中的前3bit为010,根据数值010获取公网组播IP报文优先级信息,该获取公网组播IP报文优先级信息的方式包括但不限于直接将3位数映射成Pri1(此时,优先级信息为10),或将3位数加100后映射成Pri1(此时,优先级信息为110),当然,本发明获取公网组播IP报文优先级信息的方式并不局限于此,所有可以根据一个数值生成另一个数值的方法均适用于本发明。当预设的Weight1为2时,可知,最终的组播IP报文优先级为20(或220)。
当PE路由器1根据实际的需要将公网组播IP报文优先级信息与来自CE设备的私网组播数据包中携带的优先级信息进行关联时,还可以将该团体属性值与公网组播IP报文优先级信息的对应关系预先设置为公式2所示的对应关系。
Pri=Weight0*Pri0+Weight1*Pri1公式(2) 其中,Weight1和Pri1的获取过程与上面描述的相同,在此不再赘述,该Weight0也时预先设置的数值,是根据实际需要任意选取的数值。该Pri0为PE路由器1所在私有网络的优先级信息,该私有网络的优先级信息为来自CE设备的私网组播数据包中携带的优先级信息。
步骤S303,PE路由器1在路由表中添加该公网组播IP报文的优先级信息和团体属性值信息。
其中,该添加到路由表中的公网组播IP报文的优先级信息是根据上述的公式1进行映射的结果,与上述的公式并没有关系。
其中,PE路由器1在获取到公网组播IP报文的优先级信息之后,需要将该公网组播IP报文的优先级信息存储到路由表中的相应位置处,例如,将公网组播IP报文的优先级信息添加到目的地址为该组播VPN的组播组地址所在的路由表项中,当接收到来自CE设备1的私网组播数据包时,根据该路由表项中记录的公网组播IP报文的优先级信息在骨干网中发送该公网组播数据包,并最终发送到组播组地址(目的地址)处。
步骤S304,PE路由器1通过MP-BGP协议将团体属性值发送给对等的PE路由器。
本发明中,与PE路由器1对等的PE路由器为PE路由器2和PE路由器3,PE路由器1通过MP-BGP协议将团体属性值PE路由器2和PE路由器3。其中,PE路由器1可以设置本地参数有效,不将公式1和公式2对应关系中的参数(公式1中的Weight1和公式2中的Weight0、Weight1)发送给PE路由器2和PE路由器3,各个PE路由器根据实际的需要选取对应关系中的参数,当然,PE路由器1还可以根据实际需要将上述公式1和公式2对应关系中的参数通过MP-BGP协议发送给PE路由器2和PE路由器3,本发明中,该参数可以通过MP-BGP协议的Update消息携带,也可以通过MP-BGP协议的其他消息进行携带,在此不再赘述。
步骤S305,对等PE路由器将团体属性值映射成公网组播IP报文的优先级信息。
PE路由器2(和/或PE路由器3)在接收到Update消息时,从该Update消息中获知该Update消息为该PE路由器2所属组播VPN的Update消息(即NLRI字段中携带了该PE路由器2所在的组播组地址),PE路由器2从Path Attributes字段获取到团体属性值之后,可以根据上述的公式1(上述步骤S304中通过MP-BGP协议中携带的公式1对应关系中的参数获得上述的公式1)获取公网组播IP报文的优先级信息;当各个PE路由器设置本地参数有效时,PE路由器2还可以根据预先存储在PE路由器2中的对应关系获取公网组播IP报文的优先级信息,该预先存储在PE路由器2中的对应关系可以与PE路由器1中预先存储的对应关系相同(对应关系的参数相同),也可以不相同(对应关系的参数不同),其中,该预先存储在PE路由器2中对应关系的参数为PE路由器2根据实际需要选取的数值。当然,当PE路由器2需要根据上述的公式2获取公网组播IP报文的优先级信息时(需要将公网组播IP报文优先级信息与来自CE设备的私网组播数据包中携带的优先级信息进行关联),还需要使用公式2所对应的参数,在此不再赘述。
步骤S306,对等PE路由器在路由表中添加公网组播IP报文的优先级信息和团体属性值信息。
其中,该添加到路由表中的公网组播IP报文的优先级信息也是根据上述的公式1进行映射的结果,与上述的公式2没有关系。
其中,对等PE路由器需要将公网组播IP报文的优先级信息添加到目的地址为该组播VPN的组播组地址所在的路由表项中,在组播VPN中,所有对等PE路由器的组播组地址为同一个地址。
本发明中,上述的步骤S301-步骤S306均是在组播VPN网络规划的时候进行的操作。上述的步骤S301-步骤S306并没有严格的先后顺序关系,例如,在步骤S301设置团体属性值之后,直接进行步骤S304中发送的过程。
步骤S307,PE路由器将来自CE设备的私网组播数据包封装在公网组播数据包中,将公网组播IP报文的优先级信息封装在公网组播数据包的IP报头中。
组播VPN网络规划完成后,当PE路由器(PE路由器1、PE路由器2、PE路由器3)接收到来自CE设备的私网组播数据包之后,根据该私网组播数据包中的目的地址(组播组地址),查询路由表中路由,从而获得路由表中的公网组播IP报文的优先级信息或团体属性信息。
其中,当公网组播数据包的优先级信息与私网组播数据包的优先级信息不相关时,PE路由器直接将在路由表中的公网组播IP报文的优先级信息封装在公网组播数据包的IP报头中;或 当公网组播数据包的优先级信息与私网组播数据包的优先级信息相关时,PE路由器从路由表获取到团体属性信息,并根据团体属性信息获取公网组播IP报文优先级信息,将该公网组播IP报文优先级信息装在公网组播数据包的IP报头中。
具体的,根据团体属性信息获取公网组播IP报文优先级信息是根据上述的公式2进行获取的,该获取过程不再赘述。
具体的,该来自CE设备的私网组播数据包(C-packet)可以包括协议报文数据包(C-control-packet)、数据业务数据包(C-data-packet)。CE设备与直接相连的PE路由器建立邻接关系后,可以通过BGP协议将该CE设备的私网组播数据包发送给与该CE设备直接相连的PE路由器。PE路由器在接收到该私网组播数据包后,将该私网组播数据包和公网组播IP报文优先级信息一起封装到公网组播数据包中,其中,将该私网组播数据包和公网组播IP报文优先级信息一起封装到公网组播数据包中的方式可以为使用GRE(GenericRouting Encapsulation,通用路由封装)方式封装,当然,也可以使用其他的封装格式进行封装,在此不再赘述。
步骤S308,PE路由器通过组播隧道将封装后的公网组播数据包发送到组播域中的其他PE路由器上。
本发明中,以该PE路由器为PE路由器1,该其他PE路由器为PE路由器2和PE路由器3为例进行说明。
在网络规划的过程中,PE路由器1的公网实例向公网RP(RendezvousPoint,汇集点)发起加入(Join)报文,以Share-Group地址为组播组地址,在公网中沿途的各设备上分别创建(*,G)表项。PE路由器2和PE路由器3的加入过程与PE路由器1相同,在此不再赘述,最终在MD中形成一棵以公网RP为根,PE路由器1、PE路由器2和PE路由器3为叶的RPT(RendezvousPoint Tree,共享树)。PE路由器1的公网实例向公网RP发起注册(Register),以IBGP(内部BGP协议)接口地址为组播源地址、Share-Group地址为组播组地址,在公网中沿途的各设备上分别创建(S,G)表项。PE路由器2和PE路由器3的注册过程与PE路由器1相同,在此不再赘述,最终在MD中形成三棵相互独立的连接PE路由器与RP的SPT(Shortest Path Tree,最短路径树)。
其中,PE路由器1通过组播隧道、上述的RPT以及上述的SPT将封装后的公网组播数据包发送到组播VPN中的PE路由器2和/或PE路由器3上。
步骤S309,其他PE路由器解封装公网组播数据包,并将解封后的私网组播数据包发送至对应的接收者。
其中,当PE路由器2或PE路由器3上连接着对应的接收者时,将公网组播数据包还原成对应的CE设备1的私网组播数据包,并将该私网组播数据包发送至对应的接收者上,当PE路由器2或PE路由器3上没有对应的收者时,将公网组播数据包丢弃。
其中,本发明方法可以根据实际需要对各个步骤顺序进行调整。
本发明还提出了一种设置组播IP报文优先级的设备,应用于组播VPN网络中,所述组播VPN网络包括源CE设备和至少两个PE设备,所述设置组播IP报文优先级的设备作为所述至少两个PE设备中的一个PE设备,如图5所示,该设备为PE设备,包括但不限于路由器,其中,该PE设备具体包括 设置模块51,用于在MP-BGP消息中设置包含优先级信息的团体属性信息。
映射模块52,与所述设置模块51电性连接,用于将所述设置模块51设置的团体属性信息映射成所述公网组播IP报文优先级信息。
其中,所述映射模块具体用于 根据所述设置模块设置的团体属性信息获取优先级信息;并根据所述优先级信息与所述公网组播IP报文优先级信息的第一对应关系,将所述优先级信息映射成所述公网组播IP报文优先级信息; 该第一对应关系具体为 Pri=Weight0*Pri0,其中,所述Pri为所述公网组播IP报文优先级信息,所述Pri0为所述优先级信息,所述Weight0为预设的第一数值。
所述映射模块52还用于 当所述公网组播数据包的优先级信息与所述私网组播数据包的优先级信息相关时,根据所述团体属性信息获取优先级信息;并根据所述优先级信息与所述公网组播IP报文优先级信息的第二对应关系,将所述优先级信息映射成所述公网组播IP报文优先级信息; 所述第二对应关系具体为 Pri=Weight1*Pri1+Weight2*Pri2,其中,所述Pri为所述公网组播IP报文优先级信息,所述Pri1为所述私网组播数据包中携带的优先级信息,所述Pri2为所述优先级信息,所述Weight1为预设的第二数值,所述Weight2为预设的第三数值。
添加模块53,与所述映射模块52、获取模块55和设置模块51分别电性连接,用于根据组播组地址信息将所述映射模块52映射的公网组播IP报文优先级信息和所述设置模块51设置的团体属性信息添加到所述路由对应关系中,由所述获取模块55根据所述路由对应关系获取公网组播IP报文优先级信息。
接收模块54,用于接收来自所述源CE设备的私网组播数据包。
获取模块55,与所述接收模块54电性连接,用于根据所述接收模块54接收的私网组播数据包中携带的组播组地址信息查找路由对应关系,获取公网组播IP报文优先级信息。
其中,所述获取模块55具体用于 当所述公网组播数据包的优先级信息与所述私网组播数据包的优先级信息不相关时,从所述路由对应关系中获取所述公网组播IP报文优先级信息; 当所述公网组播数据包的优先级信息与所述私网组播数据包的优先级信息相关时,从所述路由对应关系中获取所述团体属性信息,根据所述团体属性信息获取公网组播IP报文优先级信息。
封装模块56,与所述获取模块55电性连接,用于将所述获取模块55获取的公网组播IP报文优先级信息添加到公网组播数据包中,并将所述公网组播数据包发送给其他PE设备。
发送模块57,与所述设置模块51电性连接,用于通过所述MP-BGP消息将所述设置模块51设置的团体属性信息发送给所述其他PE设备,由所述其他PE设备获取所述MP-BGP消息中携带的包含优先级信息的团体属性信息,将所述团体属性信息映射成所述公网组播IP报文优先级信息,并根据组播组地址信息将所述公网组播IP报文优先级信息和所述团体属性信息添加到自身路由对应关系中。
其中,本发明装置的各个模块可以集成于一体,也可以分离部署。上述模块可以合并为一个模块,也可以进一步拆分成多个子模块。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到本发明可以通过硬件实现,也可以可借助软件加必要的通用硬件平台的方式来实现。基于这样的理解,本发明的技术方案可以以软件产品的形式体现出来,该软件产品可以存储在一个非易失性存储介质(可以是CD-ROM,U盘,移动硬盘等)中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明所述的方法。
以上所述仅是本发明的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也应视本发明的保护范围。
本领域技术人员可以理解实施例中的装置中的模块可以按照实施例描述进行分布于实施例的装置中,也可以进行相应变化位于不同于本实施例的一个或多个装置中。上述实施例的模块可以合并为一个模块,也可以进一步拆分成多个子模块。
上述本发明序号仅仅为了描述,不代表实施例的优劣。
以上公开的仅为本发明的几个具体实施例,但是,本发明并非局限于此,任何本领域的技术人员能思之的变化都应落入本发明的保护范围。
权利要求
1、一种设置组播IP报文优先级的方法,应用于组播VPN网络中,所述组播VPN网络包括源CE设备和至少两个PE设备,其特征在于,所述方法包括以下步骤
PE设备接收来自所述源CE设备的私网组播数据包;
所述PE设备根据所述私网组播数据包中携带的组播组地址信息查找路由对应关系,获取公网组播IP报文优先级信息;
所述PE设备将所述公网组播IP报文优先级信息添加到公网组播数据包中,并将所述公网组播数据包发送给其他PE设备。
2、如权利要求1所述的方法,其特征在于,所述PE设备接收来自所述源CE设备的私网组播数据包之前,还包括
所述PE设备在MP-BGP消息中设置包含优先级信息的团体属性信息;
所述PE设备将所述团体属性信息映射成所述公网组播IP报文优先级信息;
所述PE设备根据组播组地址信息将所述公网组播IP报文优先级信息和所述团体属性信息添加到所述路由对应关系中。
3、如权利要求2所述的方法,其特征在于,所述PE设备在MP-BGP消息中设置所述团体属性信息之后,还包括
所述其他PE设备接收来自所述PE设备的MP-BGP消息,获取所述MP-BGP消息中携带的包含优先级信息的团体属性信息;
所述其他PE设备将所述团体属性信息映射成所述公网组播IP报文优先级信息;
所述其他PE设备根据组播组地址信息将所述公网组播IP报文优先级信息和所述团体属性信息添加到自身路由对应关系中。
4、如权利要求2或3所述的方法,其特征在于,所述将团体属性信息映射成所述公网组播IP报文优先级信息包括
根据所述团体属性信息获取优先级信息;
根据所述优先级信息与所述公网组播IP报文优先级信息的第一对应关系,将所述优先级信息映射成所述公网组播IP报文优先级信息;
所述第一对应关系具体为
Pri=Weight0*Pri0,其中,所述Pri为所述公网组播IP报文优先级信息,所述Pri0为所述优先级信息,所述Weight0为预设的第一数值。
5、如权利要求2或3所述的方法,其特征在于,所述获取公网组播IP报文优先级信息包括
当所述公网组播数据包的优先级信息与所述私网组播数据包的优先级信息不相关时,从所述路由对应关系中获取所述公网组播IP报文优先级信息;
当所述公网组播数据包的优先级信息与所述私网组播数据包的优先级信息相关时,从所述路由对应关系中获取所述团体属性信息,根据所述团体属性信息获取公网组播IP报文优先级信息。
6、如权利要求5所述的方法,其特征在于,所述根据所述团体属性信息获取公网组播IP报文优先级信息包括
根据所述团体属性信息获取优先级信息;
根据所述优先级信息与所述公网组播IP报文优先级信息的第二对应关系,将所述优先级信息映射成所述公网组播IP报文优先级信息;
所述第二对应关系具体为
Pri=Weight1*Pri1+Weight2*Pri2,其中,所述Pri为所述公网组播IP报文优先级信息,所述Pri1为所述私网组播数据包中携带的优先级信息,所述Pri2为所述优先级信息,所述Weight1为预设的第二数值,所述Weight2为预设的第三数值。
7、一种设置组播IP报文优先级的设备,应用于组播VPN网络中,所述组播VPN网络包括源CE设备和至少两个PE设备,所述设置组播IP报文优先级的设备作为所述至少两个PE设备中的一个PE设备,其特征在于,所述PE设备包括
接收模块,用于接收来自所述源CE设备的私网组播数据包;
获取模块,与所述接收模块电性连接,用于根据所述接收模块接收的私网组播数据包中携带的组播组地址信息查找路由对应关系,获取公网组播IP报文优先级信息;
封装模块,与所述获取模块电性连接,用于将所述获取模块获取的公网组播IP报文优先级信息添加到公网组播数据包中,并将所述公网组播数据包发送给其他PE设备。
8、如权利要求7所述的设备,其特征在于,还包括
设置模块,用于在MP-BGP消息中设置包含优先级信息的团体属性信息;
映射模块,与所述设置模块电性连接,用于将所述设置模块设置的团体属性信息映射成所述公网组播IP报文优先级信息;
添加模块,与所述映射模块、获取模块和设置模块分别电性连接,用于根据组播组地址信息将所述映射模块映射的公网组播IP报文优先级信息和所述设置模块设置的团体属性信息添加到所述路由对应关系中,由所述获取模块根据所述路由对应关系获取公网组播IP报文优先级信息。
9、如权利要求8所述的设备,其特征在于,还包括
发送模块,与所述设置模块电性连接,用于通过所述MP-BGP消息将所述设置模块设置的团体属性信息发送给所述其他PE设备,由所述其他PE设备获取所述MP-BGP消息中携带的包含优先级信息的团体属性信息,将所述团体属性信息映射成所述公网组播IP报文优先级信息,并根据组播组地址信息将所述公网组播IP报文优先级信息和所述团体属性信息添加到自身路由对应关系中。
10、如权利要求8或9所述的设备,其特征在于,所述映射模块具体用于
根据所述设置模块设置的团体属性信息获取优先级信息;并根据所述优先级信息与所述公网组播IP报文优先级信息的第一对应关系,将所述优先级信息映射成所述公网组播IP报文优先级信息;
所述第一对应关系具体为
Pri=Weight0*Pri0,其中,所述Pri为所述公网组播IP报文优先级信息,所述Pri0为所述优先级信息,所述Weight0为预设的第一数值。
11、如权利要求8或9所述的设备,其特征在于,所述获取模块具体用于
当所述公网组播数据包的优先级信息与所述私网组播数据包的优先级信息不相关时,从所述路由对应关系中获取所述公网组播IP报文优先级信息;
当所述公网组播数据包的优先级信息与所述私网组播数据包的优先级信息相关时,从所述路由对应关系中获取所述团体属性信息,根据所述团体属性信息获取公网组播IP报文优先级信息。
12、如权利要求11所述的设备,其特征在于,所述映射模块还用于
根据所述团体属性信息获取优先级信息;并根据所述优先级信息与所述公网组播IP报文优先级信息的第二对应关系,将所述优先级信息映射成所述公网组播IP报文优先级信息;
所述第二对应关系具体为
Pri=Weight1*Pri1+Weight2*Pri2,其中,所述Pri为所述公网组播IP报文优先级信息,所述Pri1为所述私网组播数据包中携带的优先级信息,所述Pri2为所述优先级信息,所述Weight1为预设的第二数值,所述Weight2为预设的第三数值。
全文摘要
本发明公开了一种设置组播IP报文优先级的方法和设备,所述方法包括以下步骤PE设备接收来自所述源CE设备的私网组播数据包;所述PE设备根据所述私网组播数据包中携带的组播组地址信息查找路由对应关系,获取公网组播IP报文优先级信息;所述PE设备将所述公网组播IP报文优先级信息添加到公网组播数据包中,并将所述公网组播数据包发送给其他PE设备。本发明中,根据BGP更新报文中携带的团体属性信息,直接生成公网组播IP报文优先级,不需要重复配置IP优先级信息,从而减少了网络的维护和配置过程。
文档编号H04L29/08GK101534210SQ200910131099
公开日2009年9月16日 申请日期2009年4月22日 优先权日2009年4月22日
发明者田洪艳 申请人:杭州华三通信技术有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1