跨越IPv4网络转发IPv6组播报文的方法和边缘设备的制作方法

文档序号:8002150阅读:263来源:国知局
专利名称:跨越IPv4网络转发IPv6组播报文的方法和边缘设备的制作方法
技术领域
本发明实施例涉及通信技术领域,尤其涉及一种跨越IPv4网络转发IPv6组播报文的方法和边缘设备。
背景技术
因特网协议(Internet Protocol, IP)自上世纪70年代被提出以来,以其简单易用、移植性强等优势确立了自身以及以其为核心衍生出来的TCP/IP协议族在数字通信方面的核心协议地位,成为了全球网络的主流框架协议。目前通用的IP协议为IPv4,IPv4在设计之处所留下的一些不足之处也逐渐暴露出来,主要有下面几点1、地址短缺。2011年4月,全球IPv4地址宣告分配告罄,虽然有VPN、NAT等技术可以实现地址的重用,但是由于正在推广的移动网络IP化、物联网等应用,全球IP终端急剧增加,势必会消耗大量的IP地址,因此IPv4地址陷入短缺是一个不争的事实。2、IP头长度不固定,解析开销较大。为了增加其扩展性,IPv4允许IP头本身携带最多40个字节的选项字段,这样使得IP头是变长的,给报文解析带来一定的困难,增加了解析报文的开销。3、安全性方面考虑较少。IPv4协议本身对于安全性考虑是很少的,虽然后续通过 GRE、IPSEC等技术实现了对IPv4报文的加密,但是终究IPv4协议自身是不带安全认证功能的。为了解决IPv4协议的上述缺陷,特别是地址短缺问题,IPv6协议应运而生。IPv6 协议扩展地址空间到U8b,提供了几乎用之不竭的地址。IPv6协议通过固定IPv6头长度, 增加扩展头的方式,解决了报文解析和安全认证的问题。因此IPv6协议替代IPv4协议是大势所趋。在IPv6替代IPv4的过程中,出于设备成本以及业务稳定等因素的考虑,老的IPv4 网络升级为IPv6网络的过程是一个渐进的过程,并且是按照由边缘设备向核心设备、由新建网络向现存网络逐步推进的。所以可以预见在今后相当长的一段时间内,IPv4网络与 IPv6网络共存是一个常态,两者的兼容互通是一个需要解决的重大问题。在演进过程的前期,由于边缘设备和新建网络首先会采用IPv6协议,因此会存在一个IPv6孤岛穿越IPv4 网络互访的问题。目前IPv6孤岛之间的单播隧道过渡技术比较多样,主要分为IP隧道技术以及MPLS技术两大类;而目前关于IPv6组播尚无成熟的过渡技术。

发明内容
本发明实施例提供一种跨越IPv4网络转发IPv6组播报文的方法和边缘设备,用于解决IPv6孤岛中的组播报文穿越IPv4网络的问题。本发明实施例一方面提供了一种跨越IPv4网络转发IPv6组播报文的方法,包括第一边缘设备接收IPv6用户发送的IPv6组播加入请求,所述IPv6组播加入请求中携带组播信息;根据所述IPv6组播加入请求获取第二边缘设备的IPv4地址;向所述第二边缘设备发送根据所述IPv6组播加入请求生成的IPv4组播加入请求,该IPv4组播加入请求中携带所述组播信息;接收所述第二边缘设备发送的IPv4报文,对所述IPv4报文进行解封装,得到IPv6 组播报文,将所述IPv6组播报文发送给所述用户。本发明实施例另一方面提供了一种跨越IPv4网络转发IPv6组播报文的边缘设备,包括第二边缘设备接收第一边缘设备发送的IPv4组播加入请求,所述IPv4组播加入请求是所述第一边缘设备根据IPv6组播加入请求生成的,所述IPv4组播加入请求中携带
组播信息;获取所述IPv4组播加入请求中的组播信息,根据所述组播信息加入组播组,并建立组播转发表项;从组播源接收IPv6组播报文;根据所述组播转发表项复制所述IPv6组播报文,将复制得到的IPv6组播报文封装成IPv4报文,将所述IPv4报文发送给所述第一边缘设备。本发明实施例的再一方面提供了一种边缘设备,包括接收器,用于接收IPv6用户发送的IPv6组播加入请求,所述IPv6组播加入请求
中携带组播信息;获取单元,用于根据所述IPv6组播加入请求获取第二边缘设备的IPv4地址;第一处理器,用于根据所述IPv6组播加入请求生成IPv4组播加入请求,并向所述第二边缘设备发送所述IPv4组播加入请求,该IPv4组播加入请求中携带所述组播信息;第二处理器,用于接收所述第二边缘设备发送的IPv4报文,对所述IPv4报文进行解封装,得到IPv6组播报文,将所述IPv6组播报文发送给所述用户。本发明实施例的第四方面提供了一种边缘设备,包括第一接收器,用于接收第一边缘设备发送的IPv4组播加入请求,所述IPv4组播加入请求是所述第一边缘设备根据IPv6组播加入请求生成的,所述IPv4组播加入请求中携
带组播信息;第一处理器,用于获取所述IPv4报文中的组播信息,根据所述组播信息加入组播组,建立组播转发表项;第二接收器,用于从组播源接收IPv6组播报文;第二处理器,用于根据所述组播转发表项复制所述IPv6组播报文,将复制得到的 IPv6组播报文封装成IPv4报文,将所述IPv4报文发送给所述第一边缘设备。本发明实施例中,第一边缘设备收到用户发送的IPv6组播接入请求后,将该IPv6 组播接入请求封装成IPv4组播接入请求并发送给第二边缘设备,接收第二边缘设备发送的IPv4报文,对所述IPv4报文解封装得到IPv6组播报文,并将IPv6组播报文发送给用户。 通过本发明,能够实现在两个IPv6孤岛间跨越IPv4网络传输IPv6组播报文。


为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作一简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。图1为本发明实施例的应用场景图;图2为本发明实施例中一种跨越IPv4网络转发IPv6组播报文的方法流程示意图;图3为本发明实施例中IPv6自动映射组播地址的结构示意图;图4为本发明实施例中另一种跨越IPv4网络转发IPv6组播报文的方法流程示意图;图5为本发明实施例中边缘设备的结构示意6为本发明实施例中另一边缘设备的结构示意图。
具体实施例方式为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。如图1所示,为本发明实施例的应用场景图。其中,用于组播请求加入组播组的用户位于IPv6孤岛(称为用户孤岛,图中示出了用户孤岛1和用户孤岛2)中,组播源位于另一 IPv6孤岛(称为源孤岛)中,用户孤岛与源孤岛分别通过各自的边缘设备O^ovider Edge, ΡΕ)连接到IPv4骨干网络。其中,各边缘设备ΡΕ1-ΡΕ3均支持IPv6协议和IPv4协议,IPv6孤岛通过其边缘设备与另一个IPv6孤岛进行通信。当用户1需要加入组播组时, 用户1向自身所在的用户孤岛1的PEl发送IPv6组播加入请求,PEl将该IPv6组播加入请求封装成IPv4组播加入请求后发送给ΡΕ2,ΡΕ2根据该IPv4组播接入请求建立组播转发表项后,与组播源建立连接,从组播源获取IPv6组播报文,将获取到的IPv6组播报文封装成IPv4报文发送给PEl,PEl将该IPv4报文转换成IPv6组播报文发送给用户1。通过上述方式,能够实现IPv6组播报文跨越IPv4骨干网络,在IPv6孤岛间的转发。如图2所示,本发明实施例中跨越IPv4网络转发IPv6组播报文的方法具体包括202,第一边缘设备接收IPv6用户发送的IPv6组播加入请求,所述IPv6组播加入请求中携带组播信息。具体地,该第一边缘设备为用户孤岛的边缘设备,该组播信息包括组播源信息以及组播组信息。第一边缘设备接收本孤岛内的IPv6用户发送的组播加入请求。可选地,该组播加入请求的目的地址(即该用户请求加入的组播组的地址)为IPv6自动映射组播地址,该IPv6自动映射组播地址中包括源孤岛的边缘设备的IPv4地址。如图3所示,所述IPv6自动映射组播地址为一种特殊的组播地址,该地址总长为 128bit,前8bit固定为11111111,用来标识该地址为组播地址,第9bit到12bit为标志字段,目前仅有第12bit被赋予了明确定义,即该bit位被置1时,表示非保留组播组。本发明实施例中,可以用第9bit至第libit中的任意一位,如第libit来标识自动映射地址,则标志字段为0011时,表示该IPv6地址为非保留组播组的自动映射地址。范围是IPv6地址中的保留字段,共4bit,接下来的SObit用于标识组播组,最后的32bit是一个IPv4地址, 在本发明实施例中,是指源孤岛的边缘设备的IPv4地址。参考图1,本实施例中,假设组播源IPv6地址为2001: 100,组播源支持两个组播组 Gl 和 G2,G1 为 FF30:0001: :10. 0. 0. 2,G2 为 FF300002 10. 0. 0. 2。用户孤岛的 PEl 的 IPv4 地址为 20. 0. 0. 2,IPv6 地址为 2002. 20. 0. 0. 2: 1/64。源孤岛的 PE2 的 IPv4 地址为 10. 0. 0. 2,IPv6地址为2002:10. 0. 0. 2: 1/64。用户发送的IPv6组播加入请求的源地址为用户的IPv6地址,目的地址为组播组Gl :FF30:0001 ::10. 0. 0. 2,指定的组播源的地址是 2001:100。204,所述第一边缘设备根据所述IPv6组播加入请求获取第二边缘设备的IPv4地址。具体地,该第二边缘设备为源孤岛的边缘设备。用户孤岛的边缘设备接收到用户发送的IPv6组播加入请求后,获取该IPv6组播加入请求的目的地址,即IPv6自动映射组播地址,并从IPv6自动映射组播地址中获取源孤岛的边缘设备的IPv4地址,所述源孤岛的边缘设备的IPv4地址为所述IPv6自动映射组播地址的后32bit。进一步地,用户孤岛的边缘设备根据IPv6自动映射组播地址的自动映射地址标志来决定是否从IPv6自动映射组播地址中获取源孤岛的边缘设备的IPv4地址。当用户1发送的IPv6组播加入请求的目的地址为FF30:0001 10. 0. 0. 2时,该地址的自动映射地址标志位为1,因此确定需要获取源孤岛的边缘设备PE2的IPv4地址,并可以进一步确定所述PE2的IPv4地址为10. 0.0.2o206,所述第一边缘设备向所述第二边缘设备发送根据所述IPv6组播加入请求生成的IPv4组播加入请求,该IPv4组播加入请求中携带所述组播信息。所述第一边缘设备从所述IPv6组播加入请求中获取到第二边缘设备的IPv4地址后,根据所述IPv6组播加入请求生成IPv4组播加入请求,向第二边缘设备发送所述 IPv4组播加入请求,该IPv4组播加入请求可以是组播侦听发现报告(Multicast Listener Discovery, MLD, report),该 MLD report 中携带组播信息。具体地,该MLD report的源地址为20. 0. 0. 2,目的地址为10. 0. 0. 2,其中所述组播信息包括组播源2001 100,组播组FF30:0001: 10. 0. 0. 2,所述MLD report 中进一步包括PEl的IPv6地址2002. 20. 0. 0. 2: 1/64以及所述PE2的IPv6地址 2002. 10. 0. 0. 2: 1/64。其中,根据所述IPv6组播加入请求生成IPv4组播加入请求,可以是给所述IPv6 组播加入请求封装IPv4报文头。PE2收到该MLD r印ort后,根据该MLD r印ort加入组播组FF30:0001 10. 0. 0. 2, 并建立与该MLD r印ort对应的组播转发表项。PE上包括了一个组播转发表,用于存储组播转发表项。该组播转发表包括组播源,组播组,第一边缘设备的IPv4地址,IPv6地址以及第二边缘设备的IPv4地址和IPv6地址,具体到本实施例中,该组播转发表可以如表1所示。表 权利要求
1.一种跨越IPv4网络转发IPv6组播报文的方法,其特征在于,包括第一边缘设备接收IPv6用户发送的IPv6组播加入请求,所述IPv6组播加入请求中携带组播信息;根据所述IPv6组播加入请求获取第二边缘设备的IPv4地址; 向所述第二边缘设备发送根据所述IPv6组播加入请求生成的IPv4组播加入请求,该 IPv4组播加入请求中携带所述组播信息;接收所述第二边缘设备发送的IPv4报文,对所述IPv4报文进行解封装,得到IPv6组播报文,将所述IPv6组播报文发送给所述用户。
2.根据权利要求1所述的方法,其特征在于,所述第一边缘设备为所述用户所在的IPv6孤岛的边缘设备,所述第二边缘设备为组播源所在的IPv6孤岛的边缘设备。
3.根据权利要求1或2所述的方法,其特征在于,所述根据所述IPv6组播加入请求获取第二边缘设备的IPv4地址包括获取所述IPv6组播加入请求的目的地址,将所述目的地址的最后32bit作为所述第二边缘设备的IPv4地址。
4.根据权利要求1-3中任意一项所述的方法,其特征在于,所述接收IPv6用户发送的 IPv6组播加入请求后,所述方法还包括建立所述用户和所述用户请求加入的组播组之间的对应关系,所述将所述IPv6组播报文发送给所述用户具体包括 根据所述对应关系将所述IPv6组播报文发送给所述用户。
5.一种跨越IPv4网络转发IPv6组播报文的方法,其特征在于,包括第二边缘设备接收第一边缘设备发送的IPv4组播加入请求,所述IPv4组播加入请求是所述第一边缘设备根据IPv6组播加入请求生成的,所述IPv4组播加入请求中携带组播 fn息;获取所述IPv4组播加入请求中的组播信息,根据所述组播信息加入组播组,并建立组播转发表项;从组播源接收IPv6组播报文;根据所述组播转发表项复制所述IPv6组播报文,将复制得到的IPv6组播报文封装成 IPv4报文,将所述IPv4报文发送给所述第一边缘设备。
6.根据权利要求5所述的方法,其特征在于,所述第一边缘设备为所述用户所在的 IPv6孤岛的边缘设备,所述第二边缘设备为组播源所在的IPv6孤岛的边缘设备。
7.根据权利要求5或6所述的方法,其特征在于,所述组播转发表项包括组播源,组播组,第一边缘设备的IPv4地址,IPv6地址以及第二边缘设备的IPv4地址和IPv6地址。
8.—种边缘设备,其特征在于,包括接收器,用于接收IPv6用户发送的IPv6组播加入请求,所述IPv6组播加入请求中携带组播信息;获取单元,用于根据所述IPv6组播加入请求获取第二边缘设备的IPv4地址; 第一处理器,用于根据所述IPv6组播加入请求生成IPv4组播加入请求,并向所述第二边缘设备发送所述IPv4组播加入请求,该IPv4组播加入请求中携带所述组播信息;第二处理器,用于接收所述第二边缘设备发送的IPv4报文,对所述IPv4报文进行解封装,得到IPv6组播报文,将所述IPv6组播报文发送给所述用户。
9.根据权利要求8所述的边缘设备,其特征在于,所述边缘设备为所述用户所在的 IPv6孤岛的边缘设备,所述第二边缘设备为组播源所在的IPv6孤岛的边缘设备。
10.根据权利要求8或9所述的边缘设备,其特征在于,所述获取单元具体用于获取该 IPv6组播加入请求的目的地址,并将所述目的地址的最后32bit作为所述第二边缘设备的 IPv4地址。
11.根据权利要求8-10中任意一项所述的边缘设备,其特征在于,所述边缘设备还包括记录单元,用户在所述接收器接收到所述IPv6组播加入请求后,记录所述用户与所述用户请求加入的组播组的对应关系;所述第二处理器,具体用于根据所述所述记录单元记录的所述用户与所述用户请求加入的组播组的对应关系,将所述IPv6组播报文发送给所述用户。
12.一种边缘设备,其特征在于,包括第一接收器,用于接收第一边缘设备发送的IPv4组播加入请求,所述IPv4组播加入请求是所述第一边缘设备根据IPv6组播加入请求生成的,所述IPv4组播加入请求中携带组播信息;第一处理器,用于获取所述IPv4报文中的组播信息,根据所述组播信息加入组播组, 建立组播转发表项;第二接收器,用于从组播源接收IPv6组播报文;第二处理器,用于根据所述组播转发表项复制所述IPv6组播报文,将复制得到的IPv6 组播报文封装成IPv4报文,将所述IPv4报文发送给所述第一边缘设备。
13.根据权利要求12所述的边缘设备,其特征在于,所述第一边缘设备为用户所在的 IPv6孤岛的边缘设备,所述边缘设备为组播源所在的IPv6孤岛的边缘设备。
14.根据权利要求12或13所述的边缘设备,其特征在于,所述边缘设备进一步包括存储器,用于存储所述第一处理器建立的组播转发表项,所述第二处理器具体用于从该存储器获取该组播转发表项,并根据该组播转发表项复制所述IPv6组播报文。
全文摘要
本发明公开了一种跨越IPv4网络转发IPv6组播报文的方法和边缘设备,属于通信领域。第一边缘设备接收用户发送的IPv6组播接入请求后,将该IPv6组播接入请求封装成IPv4组播接入请求并发送给第二边缘设备,接收第二边缘设备发送的IPv4报文,对所述IPv4报文解封装得到IPv6组播报文,并将IPv6组播报文发送给用户。通过本发明,能够实现在两个IPv6孤岛间跨越IPv4网络传输IPv6组播报文。
文档编号H04L29/06GK102572007SQ201110400470
公开日2012年7月11日 申请日期2011年12月6日 优先权日2011年12月6日
发明者孙凡, 张冀明, 张怡, 章善惠 申请人:华为技术有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1