首页> 中国专利> 通过双栈移动IPv6节点支持移动IPv4的方法

通过双栈移动IPv6节点支持移动IPv4的方法

摘要

本发明涉及一种通过双栈移动IPv6节点支持移动IPv4的方法,其核心是:首先IPv6家乡代理获取IPv4家乡地址和IPv4家乡代理地址信息,以及IPv6家乡地址和IPv6转交地址信息;然后基于所述获取的地址信息配合IPv4家乡代理实现IPv6移动节点与IPv4通信伙伴通信。通过本发明,能够使移动节点只采用Mobile IPv6技术,借助网络中已部署的IPv6家乡代理和IPv4家乡代理,同时解决IPv6和IPv4的移动性,从而大大简化移动节点实现的复杂度,并且不依赖于特殊网关设备,移动接入网可以不必是双栈或者IPv6和IPv4网络重叠,这些都使得同时支持IPv6和IPv4移动性的应用更易于开展和部署。

著录项

  • 公开/公告号CN1870633A

    专利类型发明专利

  • 公开/公告日2006-11-29

    原文格式PDF

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

    申请/专利号CN200510105557.2

  • 发明设计人 梁铷;

    申请日2005-09-27

  • 分类号H04L29/06(20060101);

  • 代理机构11260 北京凯特来知识产权代理有限公司;

  • 代理人郑立明

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

  • 入库时间 2023-12-17 17:55:29

法律信息

  • 法律状态公告日

    法律状态信息

    法律状态

  • 2018-09-14

    未缴年费专利权终止 IPC(主分类):H04L29/06 授权公告日:20100602 终止日期:20170927 申请日:20050927

    专利权的终止

  • 2010-06-02

    授权

    授权

  • 2007-01-24

    实质审查的生效

    实质审查的生效

  • 2006-11-29

    公开

    公开

说明书

技术领域

本发明涉及通信领域,尤其涉及一种通过双栈移动IPv6节点支持移动IPv4的方法。

背景技术

随着网络技术的发展,以及大量移动终端的出现,如笔记本电脑、PDA、手机、车载设备等等,掀起了移动计算的热潮,越来越多的用户希望通过各种各样的终端,在任意地点通过公用移动无线网连接到Internet,实现移动业务。

为解决移动业务的需求,在网络层面上引入了Mobile IP技术。Mobile IP技术的基本原理是使移动节点在移动过程中始终可以用初始的IP地址(称为家乡地址)进行IP通信,从而保证IP网络层承载的上层应用保持移动中的不中断和可接续性。

针对不同的IP网络,Mobile IP技术包括Mobile IPv4协议和Mobile IPv6协议。两种协议的基本原理类似,但分别在IPv4和IPv6网络上应用,并且针对IPv4和IPv6协议的特点,有相当一部分细节实现不同。

Mobile IPv4技术的基本原理如图1所示,移动节点拥有初始的IP地址属于家乡网络的家乡地址。

步骤1、移动代理(包括家乡代理和外地代理)通过代理公告消息通告自己的存在;移动节点也可以发送代理请求消息,请求移动代理发送代理公告消息;

步骤2、当移动节点收到代理公告消息时,可以根据所述代理公告消息判断所在网络是外地网络还是家乡网络;

步骤3、当移动节点确认所处为家乡网络时,不需要使用移动IP地址。当移动节点确认所处为外地网络时,首先需要获得一个转交地址。这个转交地址可以通过外地代理公告消息(外地代理转交地址)得到,也可以通过DHCP Server(DHCP服务器)得到(称为co-located转交地址)。

步骤4、移动节点需要通过注册请求消息将家乡地址和转交地址等信息,注册给家乡代理。方法有两种:1)如果转交地址是通过外地代理获得,移动节点必须通过外地代理中继注册消息给家乡代理;2)如果转交地址是co-located转交地址,且外地代理不做要求,移动节点可以直接向家乡代理注册。

家乡代理收到注册请求消息后,记录家乡地址和转交地址等信息,并向移动节点回应注册应答消息。

移动节点收到注册应答消息后注册过程结束。

步骤5、移动节点直接发送数据包给通信伙伴,或通过反向隧道传送到家乡代理,再由家乡代理转交给通信伙伴。

步骤6、通信伙伴发送给移动节点的数据包(目的地为家乡地址),被家乡代理截获,经过隧道封装传送到移动节点的转交地址。

步骤7、在外地代理或移动节点处,则对隧道报文解封装,将数据包递交给移动节点。

随着网络规模的扩大,IPv6技术以其庞大的地址空间等优势逐渐取代目前的IPv4技术。基于IPv6的Mobile IP,即Mobile IPv6技术,借助IPv6自身的技术优势和对Mobile IPv4技术的改进,越来越被逐步广泛的应用起来。

Mobile IPv6的基本原理如图2所示:

步骤11、当移动节点连接到它的家乡网络上时,它采取与其它的固定节点一样的方式工作。

步骤12、移动节点通过IPv6的邻居发现机制检测自己是否已漫游至外地网络上。IPv6的外地网关会周期的发送路由器宣告消息,其中包含该外地网络的前缀,移动节点收到外地网关的路由器宣告消息后,检查其中的外地网络的前缀与家乡网络的前缀不同,则认为已漫游至外地网络。

步骤13、当移动节点发现自己已经移动到外地网络上时,则在收到的路由器宣告信息的基础上通过有状态或者无状态的地址自动配置过程获得外地网络上的转交地址。此时移动节点同时拥有家乡地址和转交地址。

步骤14、移动节点将自己的转交地址通过“绑定更新”消息注册到家乡代理上。家乡代理根据消息内容,维护家乡地址和转交地址等信息,以便代理移动节点收发报文。

步骤15、移动节点将此转交地址通过“绑定更新”消息注册通知给它的通信伙伴。以实现“路由优化”方式。

步骤16、移动节点的通信伙伴如果不知道其转交地址,就将按照移动节点的家乡地址将数据包发送到移动节点的家乡网络上,然后其家乡代理将截取到这些数据包,再根据移动节点当前的转交地址,利用隧道机制将这些数据包转发给移动节点。相反方向上,移动节点发给通信伙伴的报文,先通过反向隧道发给家乡代理,再由家乡代理转交给通信伙伴。

若通信伙伴通过“绑定更新”知道移动节点的转交地址,它就会直接将数据包发给外地网络中的移动节点,而不需要经过家乡代理中转。相反方向上,移动节点也直接发给通信伙伴的数据包。即实现“路由优化”方式。

为了解决支持Mobile IPv6的移动节点和IPv4通信伙伴通信的问题,与本发明相关的现有技术一的技术方案为:

要求移动节点既支持Mobile IPv6技术,也支持Mobile IPv4技术,同时分别针对Mobile IPv6技术和Mobile IPv4技术设置两套移动代理(包括家乡代理或外地代理)。当移动节点访问IPv6通信伙伴时,使用Mobile IPv6技术,而当访问IPv4通信伙伴时,使用Mobile IPv4技术。

由上述现有技术一的技术方案可以看出,现有技术一虽然彻底解决了移动节点同时访问IPv6和IPv4通信伙伴的问题,但要求移动节点同时支持Mobile IPv6和Mobile IPv4,一方面加重了移动节点的实现复杂度,不利于轻量级的移动终端实现,同时也造成了移动IP处理的重复和冗余。另外,现有技术一要求移动接入网必须是双栈的或者IPv6和IPv4网络重叠,以便同时支持移动节点的Mobile IPv6和Mobile IPv4处理,这些都增加了部署的难度。

为了解决支持Mobile IPv6的移动节点和IPv4通信伙伴通信的问题,提出了本发明相关的现有技术二,其通过Mobile IPv6+NAT-PT的方式实现Mobile IPv6的移动节点和IPv4通信伙伴通信,具体实施过程如图3所示,包括:

步骤21、当移动IPv6节点移动到外地网络时,获得IPv6转交地址后,首先通过“绑定更新”消息向家乡代理注册。

步骤22、移动IPv6节点发给IPv4通信伙伴的数据包前,先获得IPv4通信伙伴的对应IPv6地址(具体方法同普通NAT-PT应用)作为数据包的目的地址,源地址为移动IPv6节点的家乡地址,然后通过反向隧道先发送到家乡代理,再由家乡代理转交,将该数据包发向IPv4通信伙伴。

步骤23、由于数据包目的地址是IPv4通信伙伴对应的IPv6地址,该数据包会被发送到NAT-PT网关,在NAT-PT网关处,根据NAT-PT协议要求,将IPv6数据包转换为IPv4数据包,其中数据包的目的地址转换为IPv4通信伙伴的IPv4地址,IPv6源地址(即家乡地址)被转换为从NAT-PT网关IPv4地址池中分配的一个IPv4地址(设为tranSourceIPv4)。

步骤24、转换后的IPv4数据包从NAT-PT网关发往IPv4通信伙伴。从IPv4通信伙伴返回给移动IPv6节点的数据包,目的地址为tranSourceIPv4。

步骤25、IPv4通信伙伴的返回数据包到达NAT-PT网关,NAT-PT网关将数据包转换为IPv6数据包。转换后的目的地址为移动IPv6节点的家乡地址。

步骤26、转换后的数据包先由家乡代理截获,然后按照移动节点的转交地址,通过隧道将数据包发给移动IPv6节点。

步骤27、移动IPv6节点从隧道中接收到通信伙伴返回的IPv6数据包,完成处理。

由上述现有技术二的技术方案可以看出,现有技术二实际上是通过Mobile IPv6的“三角路由”方式+NAT-PT来解决移动IPv6节点和IPv4通信的问题,所有的通信数据包都要通过NAT-PT网关转换,使得NAT-PT网关容易成为瓶颈,降低网络效率。另外,NAT-PT网关存在对部分应用层转换问题,扩展性不好。

发明内容

本发明的目的是提供一种通过双栈移动IPv6节点支持移动IPv4的方法,通过本发明,能够使移动节点只采用Mobile IPv6技术,借助网络中已部署的IPv6家乡代理和IPv4家乡代理,同时解决IPv6和IPv4的移动性,大大简化了移动节点实现的复杂度;另外本发明不依赖于特殊网关设备,而且移动接入网可以不必是双栈或者IPv6和IPv4网络重叠,因而使得同时支持IPv6和IPv4移动性的应用更易于开展和部署。

本发明的目的是通过以下技术方案实现的:

本发明提供的一种通过双栈移动IPv6节点支持移动IPv4的方法,包括:

A、IPv6家乡代理获取IPv4家乡地址和IPv4家乡代理地址信息,以及IPv6家乡地址和IPv6转交地址信息;

B、基于所述获取的地址信息配合IPv4家乡代理实现IPv6移动节点与IPv4通信伙伴通信。

其中,所述IPv6移动节点为支持双栈的IPv6移动节点,其拥有IPv6家乡地址和IPv4家乡地址,以及获取到的IPv6家乡代理地址和IPv4家乡代理地址。

其中,所述步骤A具体包括:

A1、IPv6移动节点构造绑定更新消息,在所述绑定更新消息中指明IPv4家乡地址和IPv4家乡代理地址信息;

A2、当IPv6移动节点移动到外地网络时,获得IPv6转交地址后,通过所述构造后的绑定更新消息向IPv6家乡代理注册;

A3、所述IPv6家乡代理接收所述绑定更新消息后,根据所述绑定更新消息内容,获取到IPv6家乡地址和IPv6转交地址信息,以及IPv4家乡地址和IPv4家乡代理地址信息。

其中,所述步骤A1具体包括:

A11、IPv6移动节点在IPv6标准规定的绑定更新消息后增加IPv4注册移动选项;

A12、在所述IPv4注册移动选项中指明IPv4家乡地址和IPv4家乡代理地址信息。

其中,在IPv6移动节点与IPv4通信伙伴通信前,所述步骤B具体包括:

B1、所述IPv6家乡代理根据所述得到的IPv6家乡地址和IPv6转交地址信息,向IPv6移动节点回应IPv6“绑定确认”消息;并根据所述得到的IPv4家乡地址和IPv4家乡代理地址信息,检查自己是否已经代理过所述得到的IPv4家乡地址,若确认已经代理过,则不发起向IPv4家乡代理注册的过程;若确认未曾代理过,则执行步骤B2;

B2、代替IPv6移动节点向IPv4家乡代理进行IPv4移动注册。

其中,所述步骤B2具体包括:

B21、所述IPv6家乡代理以IPv4家乡代理地址作为注册请求消息的目的地址,并以IPv6家乡代理的IPv4地址作为注册请求消息的源地址,构造IPv4注册请求消息;

B22、代替IPv6移动节点将构造后的IPv4注册请求消息发送给IPv4家乡代理,并在缓存中暂时记录IPv4家乡地址和IPv4家乡代理地址,以及对应的IPv6家乡地址和IPv6转交地址信息;

B23、所述IPv4家乡代理接收所述注册请求消息,得到IPv4家乡地址和IPv6家乡代理的IPv4地址,并将其记录到IPv4家乡代理的缓存中,然后回应注册应答消息给IPv6家乡代理;

B24、所述IPv6家乡代理接收来自IPv4家乡代理的注册应答消息,当确认所述注册应答消息有效后,则使为相关移动节点的IPv4家乡地址的代理功能生效,并使所述缓存中暂时记录的信息生效,然后结束代理IPv6移动节点的IPv4移动注册过程。

其中,步骤B22中,所述代替IPv6移动节点将构造后的IPv4注册请求消息发送给IPv4家乡代理的过程,具体包括:

当IPv6家乡代理支持双栈,并拥有至少一个IPv4地址,且具有IPv4网络连接时,则直接代替IPv6移动节点向IPv4家乡代理发送构造后的IPv4注册请求消息;或,

当IPv6家乡代理支持双栈,并拥有至少一个IPv4地址,且不具有IPv4网络连接时,则通过IPv4 Over IPv6隧道或GRE隧道代替IPv6移动节点向IPv4家乡代理发送构造后的IPv4注册请求消息;或,

当IPv6家乡代理确认没有IPv4地址使用时,则通过NAT-PT方式代替IPv6移动节点向IPv4家乡代理发送构造后的IPv4注册请求消息。

其中,在所述步骤B还包括:

B3、IPv6移动节点设置IPv4家乡代理地址作为IPv4网关,并设置所述IPv4网关的出接口为移动节点上的IPv6反向隧道。

其中,当IPv6移动节点与IPv4通信伙伴通信时,所述步骤B包括:

IPv6家乡代理根据IPv6移动节点发送给IPv4通信伙伴的IPv4数据包携带IPv4家乡地址查找对应的IPv4家乡代理地址,并根据所述IPv4家乡代理地址将所述IPv4数据包发送给IPv4家乡代理,并通过IPv4家乡代理发送给IPv4通信伙伴;和/或,

IPv4家乡代理截获IPv4通信伙伴发送给IPv6移动节点的IPv4数据包,根据数据中携带的IPv4家乡地址发送给对应的IPv6家乡代理,当IPv6家乡代理根据IPv4数据包携带的IPv4家乡地址确认所述IPv4家乡地址对应的移动节点被代理过时,则将所述IPv4数据包发送给IPv6移动节点。

其中,当IPv6移动节点与IPv4通信伙伴通信时,所述步骤B包括:

B4、IPv6移动节点将发送给IPv4通信伙伴的IPv4数据包,通过所述IPv6反向隧道封装为IPv6数据包后,传送给IPv6家乡代理;IPv4数据包的目的地址是IPv4通信伙伴,源地址是移动节点的IPv4家乡地址;通过反向隧道封装后的IPv6数据包的目的地址是IPv6家乡代理,源地址是IPv6移动节点的IPv6转交地址。

B5、所述IPv6家乡代理对所述IPv6数据包进行解封装后,还原出发给IPv4通信伙伴的IPv4数据包;

B6、IPv6家乡代理在代替IPv6移动节点向IPv4家乡代理注册的过程记录的信息查找是否有所述IPv4数据包携带的源地址为IPv4家乡地址的信息,当确认有时,则认为所述IPv4家乡地址被代理过,则代理所述IPv6移动节点将所述IPv4数据包发送给IPv4通信伙伴。

其中,步骤B6中,所述代理所述IPv6移动节点将所述IPv4数据包发送给IPv4通信伙伴的过程,具体包括:

B61、IPv6家乡代理根据所述IPv4数据包携带的为IPv4家乡地址的源地址信息,在代替IPv6移动节点向IPv4家乡代理注册的过程记录的信息查找并获得所述IPv4家乡地址对应的IPv4家乡代理地址;

B62、检查是否存在所述IPv4家乡代理地址对应的IPv4家乡代理的IPv4反向隧道,若存在,则直接执行步骤B63;若不存在,则建立目的地址为IPv4家乡代理,源地址为IPv6家乡代理的IPv4地址的IPv4反向隧道,然后执行步骤B63;

B63、通过所述IPv4反向隧道将所述IPv4数据包进行封装后,发送给对应的IPv4家乡代理;

B64、所述对应的IPv4家乡代理接收所述封装后的IPv4数据包后,对所述数据包进行解封装处理,还原出IPv4数据包,并根据所述还原出的IPv4数据包携带的为IPv4家乡地址的源地址信息,在向通信伙伴注册过程中记录的注册信息中查找是否存在相应的信息,当确认存在相应的信息时,则将所述IPv4数据包发送给对应的IPv4通信伙伴。

其中,所述步骤B63具体包括:

当IPv6家乡代理支持双栈,并拥有至少一个IPv4地址,且具有IPv4网络连接时,则通过所述IPv4反向隧道将所述IPv4数据包进行封装后,发送给对应的IPv4家乡代理;或,

当IPv6家乡代理支持双栈,并拥有至少一个IPv4地址,且不具有IPv4网络连接时,则通过所述IPv4反向隧道将所述IPv4数据包进行封装后,通过IPv4Over IPv6隧道或GRE隧道发送给对应的IPv4家乡代理;

其中,当IPv6移动节点与IPv4通信伙伴通信时,所述步骤B还包括:

B7、IPv4通信伙伴接收到所述IPv4数据包后,得到所述数据包的源地址是IPv6移动节点的IPv4家乡地址;

B8、根据所述IPv6移动节点的IPv4家乡地址发送IPv4数据包给IPv6移动节点;

B9、IPv4家乡代理截获从IPv4通信伙伴发给IPv6移动节点的IPv4数据包,将所述IPv4数据包经隧道封装成对应的IPv4数据包后,发送给所述IPv4家乡地址对应的IPv4转交地址的IPv6家乡代理;

B10、IPv6家乡代理对接收到的IPv4数据包解隧道封装后,还原出发给IPv6移动节点的IPv4数据包,并根据所述还原出的IPv4数据包的为IPv4家乡地址的目的地址,将所述IPv4数据包发送给IPv6移动节点。

其中,所述步骤B10具体包括:

B101、IPv6家乡代理对接收到的IPv4数据包解隧道封装后,还原出发给IPv6移动节点的IPv4数据包;

B102、根据所述还原出的IPv4数据包携带的为IPv4家乡地址的目的地址,在代替IPv6移动节点向IPv4家乡代理注册的过程记录的信息中查找并得到该IPv4家乡地址对应的IPv6转交地址;

B103、根据所述得到的IPv6转交地址,将所述IPv4数据包发送给IPv6移动节点。

其中,所述步骤B103具体包括:

B1031、检查是否已有到该IPv6转交地址的IPv6隧道,若已有,则直接执行步骤B1032;否则,建立到IPv6转交地址的IPv6隧道,然后执行步骤B1032;

B1032、通过所述IPv6隧道将所述IPv4数据包封装成IPv6数据包,并将其发送给IPv6移动节点。

其中,当IPv6移动节点与IPv4通信伙伴通信时,所述步骤B还包括:

所述移动节点接收所述IPv6数据包,对所述IPv6数据包进行解封装处理后,还原出IPv4数据包,并将其上传给应用层进行接收处理。

由上述本发明提供的技术方案可以看出,本发明的IPv6家乡代理获取IPv4家乡地址和IPv4家乡代理地址信息,以及IPv6家乡地址和IPv6转交地址信息;基于所述获取的地址信息配合IPv4家乡代理实现IPv6移动节点与IPv4通信伙伴通信。通过本发明,能够使移动节点只采用Mobile IPv6技术,借助网络中已部署的IPv6家乡代理和IPv4家乡代理,同时解决IPv6和IPv4的移动性,从而大大简化移动节点实现的复杂度,并且不依赖于特殊网关设备,移动接入网可以不必是双栈或者IPv6和IPv4网络重叠,这些都使得同时支持IPv6和IPv4移动性的应用更易于开展和部署。

附图说明

图1为Mobile IPv4技术的基本原理示意图;

图2为Mobile IPv6技术的基本原理示意图;

图3为现有技术中通过Mobile IPv6+NAT-PT的方式实现Mobile IPv6的移动节点和IPv4通信伙伴通信的原理示意图;

图4为本发明提供的实施例的流程图。

具体实施方式

本发明提供了一种通过双栈移动IPv6节点支持移动IPv4的方法,其核心是:IPv6家乡代理获取IPv4家乡地址和IPv4家乡代理地址信息,以及IPv6家乡地址和IPv6转交地址信息;基于所述获取的地址信息配合IPv4家乡代理实现IPv6移动节点与IPv4通信伙伴通信。

本发明提供的实施例通过Mobile IPv6移动节点处理来实现移动节点的IPv4的移动性,并使用IPv6家乡代理作为二级代理来配合IPv4家乡代理,实现移动节点的IPv4移动能力。具体包括:

步骤100,IPv6移动节点构造绑定更新消息,在所述绑定更新消息中指明IPv4家乡地址和IPv4家乡代理地址信息。具体包括:

首先,IPv6移动节点在IPv6标准规定的绑定更新消息后增加IPv4注册移动选项,然后,在所述IPv4注册移动选项中指明IPv4家乡地址和IPv4家乡代理地址信息。

Mobile IPv6标准规定的移动选项格式为:

0                   1                   2                   3

0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1

+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

|  Option Type  | Option Length |   Option Data...

+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

本发明中构造的绑定更新消息,是基于上述Mobile IPv6标准规定的移动选项格式,增加新的移动选项,即IPv4注册移动选项,其格式如下所示:

 0                   1                   2                   3

 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1

                                +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

                                |   Type=10     |  Length=8   |

+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

|                      IPv4 Home Address                         |

+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

|                      IPv4 Home Agent                           |

+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

其中Type值根据实际标准组织申请的值而定,IPv4 Home Address为IPv4家乡地址,IPv4 Home Agent为IPv4家乡代理地址。

步骤200,IPv6移动节点基于所述构造的绑定更新消息中的IPv4家乡地址和IPv4家乡代理地址信息,通过IPv6家乡代理与IPv4通信伙伴交互信息。其实现流程如图4所示,包括:

步骤1、支持双栈的移动节点同时拥有IPv6家乡地址和IPv4家乡地址,并获悉IPv6的家乡代理地址和IPv4家乡代理地址。

其中IPv4的家乡地址和IPv4家乡代理地址的获得方式,可以是静态配置或其他动态方式。

步骤2、当移动节点移动到外地网络时,获得IPv6转交地址后,通过构造的“绑定更新”消息向IPv6家乡代理进行移动注册。

本发明中,移动节点移动到外地网络不需要获得IPv4转交地址,移动节点始终用IPv4家乡地址和外界通信。

本发明构造的绑定更新消息中携带IPv4家乡地址和IPv4家乡代理地址等信息。

步骤3、IPv6家乡代理接收“绑定更新”消息后,IPv6家乡代理根据消息内容携带的IPv4家乡地址和IPv4家乡代理地址等信息,代替移动节点向IPv4家乡代理发送IPv4的注册请求消息。具体包括:

步骤一、所述IPv6家乡代理接收所述绑定更新消息后,根据所述绑定更新消息内容,得到IPv6家乡地址和IPv6转交地址信息,以及IPv4家乡地址和IPv4家乡代理地址信息。

步骤二、根据所述得到的IPv6家乡地址和IPv6转交地址信息,向IPv6移动节点回应IPv6“绑定确认”消息;并根据所述得到的IPv4家乡地址和IPv4家乡代理地址信息,检查自己是否已经代理过所述得到的IPv4家乡地址,若确认已经代理过,则结束向IPv4家乡代理注册的过程;若确认未曾代理过,则执行步骤三。

步骤三、所述IPv6家乡代理以IPv4家乡代理地址作为注册请求消息的目的地址,并以IPv6家乡代理的IPv4地址作为注册请求消息的源地址,构造IPv4注册请求消息。

本发明中,根据步骤2,“绑定更新”消息中携带了IPv4家乡地址和IPv4家乡代理地址等信息,IPv6家乡代理如果发现上述IPv4信息,并确认本家乡代理未曾代理过这个IPv4家乡地址,将代替移动节点向IPv4家乡代理发送IPv4的注册请求消息,具体方法是:

首先,以IPv4家乡代理地址作为注册请求消息的目的地址;以IPv6家乡代理的IPv4地址作为注册请求消息的源地址。相当于以IPv6家乡代理的IPv4地址作为移动节点的IPv4 Co-Located转交地址。

接着,按如下格式构造IPv4注册请求消息:(可以通过socket发送)

IPv4域:

源地址=IPv6家乡代理的IPv4地址

目的地址=IPv4家乡代理地址

TTL=64

UDP域:

Source Port=<any>(系统自定义)

Destination Port=434

注册请求域:

按Mobile IPv4协议规定

0                   1                   2                   3

0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1

+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

|     Type      |S|B|D|M|G|r|T|x|          Lifetime             |

+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

|                         Home Address                          |

+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

|                         Home Agent                            |

+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

|                        Care-of Address                        |

+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

|                                                               |

+                        Identification                         +

|                                                               |

+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

| Extensions ...

+-+-+-+-+-+-+-+-

其中Type=1;

S=0,B=0,D=1,M=1或0(可选),G=1或0(可选);

Lifetime=1800(seconds)(可自定义);

Home Address=移动节点的IPv4家乡地址;

Home Agent=IPv4家乡代理地址;

Care-of Address=IPv6家乡代理的IPv4地址;

Identification=(按Mobile IPv4移动节点的标准处理);

Extensions:(可选)。

步骤四、代替IPv6移动节点将构造后的IPv4注册请求消息发送给IPv4家乡代理,并在缓存中暂时记录IPv4家乡地址和IPv4家乡代理地址,以及对应的IPv6家乡地址和IPv6转交地址信息;

将上述消息发送给IPv4家乡代理时,如果IPv6家乡代理有IPv4网络连接,可以直接将报文路由给IPv4家乡代理,否则可以通过隧道方式,将IPv4注册请求消息发给IPv4家乡代理,例如通过IPv4 over IPv6隧道,或GRE隧道等。具体包括:

当IPv6家乡代理支持双栈,并拥有至少一个IPv4地址,且具有IPv4网络连接时,则直接代替IPv6移动节点向IPv4家乡代理发送构造后的IPv4注册请求消息;

当IPv6家乡代理支持双栈,并拥有至少一个IPv4地址,且不具有IPv4网络连接时,则通过IPv4 Over IPv6隧道或GRE隧道代替IPv6移动节点向IPv4家乡代理发送构造后的IPv4注册请求消息;

当IPv6家乡代理确认没有IPv4地址使用时,则通过NAT-PT方式代替IPv6移动节点向IPv4家乡代理发送构造后的IPv4注册请求消息。

步骤4、所述IPv4家乡代理接收所述注册请求消息,得到IPv4家乡地址和IPv4转交地址(IPv6家乡代理的IPv4地址),并将其记录到IPv4家乡代理的缓存中,然后回应注册应答消息给IPv6家乡代理;

所述IPv6家乡代理接收来自IPv4家乡代理的注册应答消息,当确认所述注册应答消息有效后,则使为相关移动节点的IPv4家乡地址的代理功能生效,并使所述缓存中暂时记录的信息生效,然后结束代理IPv6移动节点的IPv4移动注册过程。

本发明中,IPv4家乡代理接收注册请求消息,并记录IPv4家乡地址和IPv4转交地址等信息,根据步骤3获悉此时IPv4转交地址是IPv6家乡代理的IPv4地址,于是回应注册应答消息给IPv6家乡代理。IPv6家乡代理接收到来自IPv4家乡代理的注册应答消息后,一旦确认注册应答消息有效,则使为相关移动节点IPv4家乡地址的代理功能即刻生效,并使步骤3中暂时记录的IPv4家乡地址和IPv4家乡代理地址,以及对应的IPv6家乡地址和转交地址等信息正式生效。此时,IPv6家乡代理相当于已经代替移动节点完成了移动IPv4的注册过程。

经过上述步骤后,IPv6移动节点能够与所述IPv4通信伙伴交互信息,具体实现过程包括:

步骤5、IPv6移动节点设置IPv4家乡代理地址作为IPv4网关,并设置所述IPv4网关的出接口为移动节点上的IPv6反向隧道。

在与IPv4通信伙伴通信前,移动节点可以设置IPv4家乡代理地址作为IPv4缺省网关,并设置移动节点上的Mobile IPv6反向隧道(IPv6移动节点进行Mobile IPv6报文处理过程中,在移动节点和IPv6家乡代理之间建立)作为IPv4的缺省网关出接口,即所有发往外部的IPv4数据包都通过Mobile IPv6反向隧道发送。

步骤6、IPv6移动节点将发送给IPv4通信伙伴的IPv4数据包,通过所述IPv6反向隧道封装为IPv6数据包后,传送给IPv6家乡代理;IPv4数据包的目的地址是IPv4通信伙伴,源地址是IPv6移动节点的IPv4家乡地址;通过反向隧道封装后的IPv6数据包的目的地址是IPv6家乡代理,源地址是IPv6移动节点的IPv6转交地址。

步骤7、所述IPv6家乡代理对所述IPv6数据包进行解封装后,还原出发给IPv4通信伙伴的IPv4数据包,并在代替IPv6移动节点向IPv4家乡代理注册的过程记录的信息中查找是否有所述IPv4数据包携带的源地址为IPv4家乡地址的信息,当确认有时,则认为所述IPv4家乡地址对应的移动节点被代理过,则代理所述IPv6移动节点将所述IPv4数据包发送给IPv4通信伙伴。

步骤6的数据包经反向隧道到达IPv6家乡代理后,首先进行解封装,还原出发给IPv4通信伙伴的IPv4数据包;然后IPv6家乡代理根据步骤4的结果,一旦确认该IPv4数据包的源地址,即IPv4家乡地址,是被代理的,将负责代替移动节点将该IPv4数据包发送给IPv4通信伙伴,具体方法是:

步骤一、IPv6家乡代理根据所述IPv4数据包携带的为IPv4家乡地址的源地址信息,在代替IPv6移动节点向IPv4家乡代理注册的过程(步骤4)记录的信息中查找并获得所述IPv4家乡地址对应的IPv4家乡代理地址。

步骤二、检查是否存在所述IPv4家乡代理地址对应的IPv4家乡代理的IPv4反向隧道,若存在,则直接执行步骤三;若不存在,则建立目的地址为IPv4家乡代理,源地址为IPv6家乡代理的IPv4地址的IPv4反向隧道,然后执行步骤三。

步骤三、通过所述IPv4反向隧道将所述IPv4数据包进行封装后,发送给对应的IPv4家乡代理;隧道封装后的数据包的目的地址是IPv4家乡代理,源地址是IPv6家乡代理的IPv4地址。具体包括如下几种情况:

当IPv6家乡代理支持双栈,并拥有至少一个IPv4地址,且具有IPv4网络连接时,则通过所述IPv4反向隧道将所述IPv4数据包进行封装后,发送给对应的IPv4家乡代理;或,

当IPv6家乡代理支持双栈,并拥有至少一个IPv4地址,且不具有IPv4网络连接时,则通过所述IPv4反向隧道将所述IPv4数据包进行封装后,再通过隧道方式发送给对应的IPv4家乡代理,如IPv4 Over IPv6隧道或GRE隧道等;或,

当IPv6家乡代理确认没有IPv4地址使用时,则通过所述IPv4反向隧道将所述IPv4数据包进行封装后,再通过NAT-PT方式发送给对应的IPv4家乡代理。

步骤8、所述对应的IPv4家乡代理接收所述封装后的IPv4数据包后,对所述数据包进行解封装处理,还原出IPv4数据包,并根据所述还原出的IPv4数据包携带的为IPv4家乡地址的源地址信息,查找是否存在相应的Mobile IPv4注册信息,当确认存在相应的信息时,则将所述IPv4数据包发送给对应的IPv4通信伙伴。

IPv4家乡代理接收到步骤7经隧道发来的数据包,按照标准Mobile IPv4处理解封装,还原出IPv4数据包,并根据步骤4中记录的Mobile IPv4注册信息,将IPv4数据包发给IPv4通信伙伴。

步骤9、IPv4通信伙伴根据接收到的数据包携带的地址信息发送IPv4数据包给IPv6移动节点,IPv4家乡代理截获所述数据包,检查所述数据包的目的地址为IPv4家乡地址,将通过隧道将所述IPv4数据包发给IPv4家乡地址对应的IPv4转交地址对应的IPv6家乡代理。

由于从IPv4通信伙伴发送给IPv6移动节点的IPv4数据包的目的地址为IPv4家乡地址,所以首先会被IPv4家乡代理截获,此时IPv4家乡代理检查得到所述数据包的目的地址是IPv4家乡地址,于是通过隧道将IPv4数据包发给IPv4家乡地址对应的IPv4转交地址。根据步骤4已经得知IPv4转交地址是IPv6家乡代理的IPv4地址,所以该IPv4数据包实际上会经隧道发给IPv6家乡代理。

步骤9的过程具体包括:

步骤一、IPv4通信伙伴接收到所述IPv4数据包后,得到所述数据包的源地址是IPv6移动节点的IPv4家乡地址。

步骤二、根据所述IPv6移动节点的IPv4家乡地址发送IPv4数据包给IPv6移动节点;所述数据包的目的地址是IPv4家乡地址。

步骤三、IPv4家乡代理截获从IPv4通信伙伴发给IPv6移动节点的IPv4数据包,将所述IPv4数据包经Mobile IPv4隧道封装成对应的IPv4数据包后,发送给所述IPv4家乡地址对应的IPv4转交地址的IPv6家乡代理。

步骤10、IPv6家乡代理对接收到的IPv4数据包解隧道封装后,还原出发给IPv6移动节点的IPv4数据包,并根据所述还原出的IPv4数据包的为IPv4家乡地址的目的地址,将所述IPv4数据包发送给IPv6移动节点。

IPv6家乡代理解隧道封装后,还原出发给移动节点的IPv4数据包。IPv6家乡代理根据步骤4的结果,确认该IPv4数据包的目的地址,即IPv4家乡地址对应的移动节点,被代理过,则通过IPv6家乡代理到移动节点的Mobile IPv6隧道将该IPv4数据包发送给IPv6移动节点,

具体包括:

步骤一、IPv6家乡代理对接收到的IPv4数据包解隧道封装后,还原出发给IPv6移动节点的IPv4数据包。

步骤二、根据所述还原出的IPv4数据包携带的为IPv4家乡地址的目的地址,在代替IPv6移动节点向IPv4家乡代理注册的过程记录的信息中查找并得到该IPv4家乡地址对应的IPv6转交地址。

步骤三、根据所述得到的IPv6转交地址,将所述IPv4数据包发送给IPv6移动节点。

IPv6家乡代理根据步骤4,能够得到该IPv4家乡地址对应的IPv6转交地址,其检查是否已有到该IPv6转交地址的Mobile IPv6隧道,若已有,则直接通过所述IPv6隧道将所述IPv4数据包封装成IPv6数据包后,发送给IPv6移动节点;否则,建立到IPv6转交地址的IPv6隧道,然后通过所述IPv6隧道将所述IPv4数据包封装成IPv6数据包后,发送给IPv6移动节点。

步骤11、所述移动节点接收所述IPv6数据包,对所述IPv6数据包进行解封装处理后,还原出IPv4数据包,并将其上传给应用层进行接收处理。

由上述本发明的技术方案可以看出,本发明中,对于IPv6移动节点要求,只需要支持双栈和Mobile IPv6协议,以及少量Mobile IPv6协议扩展(在Mobile IPv6“绑定消息”中携带IPv4注册移动选项),不需要支持MobileIPv4协议,从而大大简化移动节点的实现复杂度;另外对于IPv4家乡代理没有任何要求,不需要做扩展,可以应用标准的IPv4家乡代理,并且不依赖于特殊网关设备,移动接入网可以不必是双栈或者IPv6和IPv4网络重叠,这些都使得同时支持IPv6和IPv4移动性的应用更易于开展和部署。

以上所述,仅为本发明较佳的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到的变化或替换,如,仿照本发明的思想实现通过IPv4移动节点支持移动节点的IPv6移动性,或IPv6移动节点在“路由优化”方式下,仿照本发明的思想实现向通信伙伴注册的过程,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应该以权利要求的保护范围为准。

去获取专利,查看全文>

相似文献

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

客服邮箱:kefu@zhangqiaokeyan.com

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

  • 服务号