首页> 中国专利> 移动IPv6中为移动IPv6客户端分配家乡代理的方法

移动IPv6中为移动IPv6客户端分配家乡代理的方法

摘要

本发明提供了一种移动IPv6中为移动IPv6客户端分配家乡代理的方法,包括:A.提供服务的家乡代理获得至少一个新的家乡代理信息;B.所述提供服务的家乡代理将所述新的家乡代理信息提供给移动IPv6客户端。

著录项

  • 公开/公告号CN101102590A

    专利类型发明专利

  • 公开/公告日2008-01-09

    原文格式PDF

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

    申请/专利号CN200610101228.5

  • 发明设计人 刘继兴;林璟;

    申请日2006-07-07

  • 分类号H04Q7/38;H04L29/12;H04L12/56;H04L29/06;

  • 代理机构北京集佳知识产权代理有限公司;

  • 代理人逯长明

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

  • 入库时间 2023-12-17 19:37:05

法律信息

  • 法律状态公告日

    法律状态信息

    法律状态

  • 2010-08-11

    授权

    授权

  • 2008-04-09

    实质审查的生效

    实质审查的生效

  • 2008-01-09

    公开

    公开

说明书

技术领域

本发明涉及移动IPv6技术,尤其涉及移动IPv6中为移动IPv6客户端分配家乡代理的方法。

背景技术

随着互联网技术和无线通信技术的高速发展以及这两种技术应用规模的不断扩大,越来越多的用户希望不受时空限制、随时随地的高效灵活的接入互联网。互联网不仅要提供已有的数据业务、多媒体音视频业务,还要提供移动互联网的功能,为移动用户提供无线的互联网接入业务。

移动IP(Internet Protocol,互联网协议)技术正是适应这种需求而产生的支持移动用户和互联网互连的技术,这种技术能保证移动用户的主机在移动中与互联网的通信连续,已经成为当今研究的热点。

在移动IPv6技术中,MN(Mobile Node,移动节点)有两种地址:一种称为HoA(Home Address,家乡地址),一种称为CoA(Care-of Address,转交地址),其中,HoA是指MN在家乡网络的地址,当MN切换链路时HoA并不改变,CoA是指MN在外地网络时的相关IP地址。HoA一般会保持不变,当MN移动到外地网络时,仍旧使用HoA以保持通信的连续性和可达性。CoA是由外地网络分配给MN的,当MN得到新的CoA时,需要在HA(HomeAgent,家乡代理)上将新的CoA与HoA进行绑定,以便HA能够将其他实体发给MN的报文利用MN与HA间的隧道转发给MN,以及将MN发送给其他实体的报文转发过去。这个绑定流程所使用的消息是MN发给HA的BU(Binding Update,绑定更新)和HA回送的BA(Binding Acknowledgement,绑定确认),其中,在移动IPv6中MN用BU消息将自己的HoA和CoA在HA上进行绑定,BA消息表示HA发送的对BU消息的确认。与移动IPv4不同的是,移动IPv6中没有FA(ForeignAgent,外地代理)这个实体,因此,MN的绑定是直接与HA进行的。另外,为了保证绑定过程的安全性,移动IPv6要求MN和HA间首先建立一个IPsec(IP security,IP安全)的安全联盟,而BU和BA消息需要用这个安全联盟进行保护。通常情况下,MN需要知道HA的地址,以便和HA进行必要的通信。

当MN需要发送BU到HA注册新的CoA时,MN有时可能不知道家乡链路上可以作为HA的路由器的地址,这时,MN需要在家乡链路上寻找合适的HA。MN发送一个ICMP(Internet Control Message Protocol,互联网控制报文协议)的HA地址发现请求消息到家乡网络子网前缀的移动IPv6 HA任播地址,家乡链路上接收到这个消息的HA返回一个ICMP的HA地址发现应答消息,并给出家乡链路上HA的地址。每个HA中均保存有家乡链路上所有的HA列表,这是通过周期性广播RA(Router Advertisement,路由器公告)消息的机制完成HA列表收集的。MN接到应答后,可以发送BU到HA列表中的任何一个IP地址,IP地址也可以根据HA的优先级选取。

一般情况下,MN在家乡链路上寻找合适的HA都是在自举的过程中实施。移动IPv6自举的定义是MN获取足够的信息以便能够向一个合适的HA成功注册的过程。这些信息包括MN的HoA、HA的IPv6地址和MN与HA的安全联盟。目前,移动IPv6自举的应用场景主要分为Split(分离)和Integrated(集中)两种。自举的一个基本假设是,MN需要具有一定的最小的参数来协助完成自举,最小的参数可以为种子信息。典型的,自举发生在MN没有创建移动IPv6服务所需的全部信息时,这些情况包括MN第一次启动时没有任何的信息,MN在重启过程中没有保留任何信息。

在移动IPv6实际部署过程中,为了获得较高的可靠性,可能会采取冗余和负载分担的方式以避免单点故障,并且可能通过多个实体承担同样的功能以提高资源的利用效率。例如,在同一个网络中部署多个HA,以保证移动服务的可靠。

在存在多个HA情况时,基于以下原因,为MN提供移动IPv6服务的HA可能需要给MN提供新的HA:

(1)管理原因

对网络升级或维护时,某段时间内某个HA可能不能使用,这时,接受这个HA提供服务的MN需要迁移到其他HA,其他HA可能与这个HA同一个域,也可能属于不同的域,例如,家乡网络可以给MN动态分配在访问地的HA以优化路由;

(2)提供服务的HA可能发生拥塞

一般来说,MN会相对均匀的分配到各个HA中,所以,HA发生拥塞的可能性不大,但是,并不能完全排除存在这种情况;

(3)提供服务的HA距离MN较远

当MN移动时,通常不会改变HA。对于时延敏感的业务来说,也许更换一个地理位置上较近的HA作为提供服务的HA会更好。

在现有的移动IP技术中,MN在没有任何HA提供服务的情况下可以动态的获得HA的地址,一般是在自举的过程中实施的,但对于HA正在为MN提供移动IPv6服务的情况下,如果需要为MN提供新的HA,则移动IPv6技术中还没有相应的方法,或者说,MN在获得一个HA提供服务的同时,由于某种原因需要获得新的HA信息时,目前还无法实现。

发明内容

本发明要解决的技术问题在于提供一种IPv6中改变家乡代理的方法,以达到在HA正在为MN提供移动IPv6服务的情况下、为MN分配新的HA的目的。

为解决上述问题,本发明提供了一种移动IPv6中为移动IPv6客户端分配家乡代理的方法,包括:A、提供服务的家乡代理获得至少一个新的家乡代理信息;B、所述提供服务的家乡代理将所述新的家乡代理信息提供给移动IPv6客户端。

所述新的家乡代理信息包括所述新的家乡代理的IPv6地址或域名。

步骤A的实现方式包括:所述提供服务的家乡代理接收家乡链路上家乡代理周期性广播的路由器公告RA消息,或者从保存家乡代理信息的节点中获得新的家乡代理信息。

所述提供服务的家乡代理使用因特网控制报文协议ICMP消息向所述移动IPv6客户端提供所述新的家乡代理信息。

所述步骤B之后还包括步骤C:移动IPv6客户端在新的家乡代理上进行注册绑定。

当所述提供服务的家乡代理获得一个新的家乡代理信息时,步骤C由以下步骤实现:所述移动IPv6客户端按照所述IPv6地址或者按照将所述域名解析成的IPv6地址向所述的新的家乡代理发送绑定更新消息;所述新的家乡代理将所述移动IPv6客户端的家乡地址和转交地址绑定。

当所述提供服务的家乡代理获得一个以上的新的家乡代理信息时,步骤C由以下步骤实现:所述移动IPv6客户端按照所述IPv6地址或者按照将所述域名解析成的IPv6地址分别向所述的多个新的家乡代理发送绑定更新消息;接收到所述绑定更新消息的家乡代理将所述移动IPv6客户端的家乡地址与转交地址绑定;如果其中一个家乡代理向所述移动IPv6客户端返回注册绑定成功的消息,则所述家乡代理作为所述移动IPv6客户端新的家乡代理。

所述移动IPv6客户端按照家乡代理的优先级由高到低的顺序向所述一个以上的新的家乡代理发送绑定更新消息。

所述提供服务的家乡代理指定给所述移动IPv6客户端继续提供服务的时间。

所述移动IPv6客户端在所述时间内在所述新的家乡代理上实现注册绑定。

如果所述移动IPv6客户端在超过所述时间外向所述提供服务的家乡代理发送绑定更新消息时,所述提供服务的家乡代理拒绝进行绑定更新或不做任何响应。

所述移动IPv6客户端注销所述提供服务的家乡代理提供的服务。

步骤A之前包括:所述移动IPv6客户端向所述提供服务的家乡代理发送绑定更新消息,请求提供新的家乡代理。

所述提供服务的家乡代理主动向移动IPv6客户端提供新的家乡代理。

在步骤B之后,所述移动IPv6客户端返回给所述提供服务的家乡代理应答消息。

在步骤B之后,如果所述提供服务的家乡代理没有收到所述移动IPv6客户端发出的应答消息,则所述提供服务的家乡代理再次向移动IPv6客户端提供新的家乡代理信息。

在本发明中,提供服务的HA可以在为移动IPv6客户端提供服务的同时,将新的HA信息或所有的HA信息提供给移动IPv6客户端,移动IPv6客户端根据接收到的信息在新的HA上进行注册绑定处理,填补了移动IPv6技术中没有在移动IPv6客户端享受移动IPv6服务的同时动态改变HA的技术方案的空白。

在本发明中,提供服务的HA为移动IPv6客户端设置了继续提供服务期限,在这个期限内提供服务的HA可以继续为移动IPv6客户端提供服务。移动IPv6客户端在新的HA上进行注册绑定前,可以继续享受原服务HA的移动IPv6服务。

在本发明中,移动IPv6客户端在接收到提供服务的HA提供的信息后,可以返回一个应答消息,如果提供服务的HA没有收到移动IPv6客户端发出的应答消息,则提供服务的HA可再次向移动IPv6客户端提供相同的信息,这种做法保证了移动IPv6客户端及时、准确的收到提供服务的HA提供的信息,避免了移动IPv6客户端因没有收到提供服务的HA提供的信息而没有及时在新的HA上进行注册绑定处理、进而导致移动IPv6客户端在期限之外不能再享受移动IPv6服务的后果。

在本发明中,提供服务的HA与移动IPv6客户端之间建立了IP安全联盟,保证了提供服务的HA与移动IPv6客户端之间通信的安全性和可靠性。

在本发明中,移动IPv6客户端可以在新的HA上成功进行注册绑定处理,还可以注销提供服务的HA提供的服务,避免了移动IPv6客户端获得新的HA提供服务的同时、仍然占用提供服务的HA的资源的缺陷,可以说,这种做法避免了资源的浪费。

在本发明中,提供服务的HA可主动向移动IPv6客户端提供新的HA信息,也可以在移动IPv6客户端请求提供新的HA信息后,再向移动IPv6客户端提供新的HA信息,所以,本发明提出的改变HA的方法是灵活多样的,有助于本领域普通技术人员灵活选择合适的实施方式。

附图说明

图1为本发明第一实施例的流程图;

图2A为提供服务的HA向移动IPv6客户端提供新的HA的消息格式示意图;

图2B为图2A中的Options格式示意图;

图2C为移动IPv6客户端应答图2A所述消息的消息格式示意图;

图3为对图1中步骤S104进一步说明的流程图;

图4为对图1中步骤S105进一步说明的流程图;

图5为本发明第二实施例的流程图;

图6A为提供服务的HA发出的绑定应答消息中的消息字段的格式示意图;

图6B为第二实施例提供的移动性选项的格式示意图;

图7为本发明第三实施例的流程图;

图8A为提供服务的HA向移动IPv6客户端提供所有的HA的消息格式示意图;

图8B为图8A中的Options格式示意图;

图8C为移动IPv6客户端应答图8A所述消息的消息格式示意图;

图9为对图7中步骤S704进一步说明的流程图;

图10为对图7中步骤S705进一步说明的流程图;

图11为本发明第四实施例的流程图;

图12A为提供服务的HA发出的绑定应答消息中的消息字段的格式示意图;

图12B为第四实施例提供的移动性选项的格式示意图。

具体实施方式

下面我们将结合附图,对本发明的最佳实施方案进行详细描述。首先要指出的是,本发明中用到的术语、字词及权利要求的含义不能仅仅限于其字面和普通的含义去理解,还包括进而与本发明的技术相符的含义和概念,这是因为我们作为发明者,要适当地给出术语的定义,以便对我们的发明进行最恰当的描述。因此,本说明和附图中给出的配置,只是本发明的首选实施方案,而不是要列举本发明的所有技术特性。我们要认识到,还有各种各样的可以取代我们方案的同等方案或修改方案。

本发明的整体方案为:提供服务的HA获得新的HA信息,并将新的HA信息提供给移动IPv6客户端。其中,提供服务的HA是指正在为所述移动IPv6客户端提供移动IPv6服务的HA;移动IPv6客户端是指发起移动IPv6操作的节点,可以是MN,也可以是代替MN进行移动IPv6操作的代理节点。

现在结合附图及实施例,对本发明的方法进行详细说明。

首先请参照图1,图1是本发明第一实施例的流程图。

在步骤S100中,提供服务的HA获得新的HA的IPv6地址或域名。

提供服务的HA获得新的HA可以有两种途径:一种途径是,提供服务的HA所在区域内的所有HA会周期性广播RA(Router Advertisement,路由器公告)消息,提供服务的HA通过这些周期性广播的RA消息,可以为所述移动IPv6客户端选择合适的HA;另一种途径是,提供服务的HA可以向保存有可用HA信息的节点查询可用HA的信息,这个节点中的数据库可以是AAA服务器或者配置管理数据库,当然,节点本身也可以为一个数据库。

在步骤S101中,提供服务的HA主动向移动IPv6客户端提供新的HA的IPv6地址或域名。

提供服务的HA主动向移动IPv6客户端提供信息的原因有很多种,例如:提供服务的HA认为自身负载过重或需要升级改造等原因,则会有选择的向移动IPv6客户端分配新的HA,通过改变这些移动IPv6客户端的HA,达到减轻负载或顺利进行升级改造的目的;提供服务的HA认为移动IPv6客户端距离其较远,数据传输时间较长,而在移动IPv6客户端附近恰好存在另外一个HA,则将这个HA分配给移动IPv6客户端,以使移动IPv6客户端在享受同样的服务时,接收数据的时间缩短。

在本步骤中,提供服务的HA除向移动IPv6客户端提供新的HA的IPv6地址或域名外,还可以同时指定其继续向所述移动IPv6客户端提供服务的时间,在本发明中将这个时间称为生命期。提供服务的HA在生命期结束之前继续为所述移动IPv6客户端提供服务,但如果生命期结束后,提供服务的HA则停止向所述移动IPv6客户端提供服务。

本实施例新增一种ICMP消息用来将新的HA的信息提供给移动IPv6客户端,这种消息的格式如图2A所示,其中,Type表示ICMP消息类型,这里使用值155;Code表示代码,这里置0;Checksum表示ICMP校验和;Identifier用来区分不同HA分配消息的标识符;A表示应答位,如果置1,表示移动IPv6客户端必须发送应答消息;Reserved表示保留位,这里置0,用于将来扩展。此外,Options表示选项,本实施例定义的Options,用于表示新的HA的IPv6地址。Options的格式如图2B所示,其中,Type为8位,这里置1;Length为8位,这里值为18;Lifetime表示生命期,为16位;AssignedHA表示新的HA的IPv6地址,为128位。

完成步骤S101后,进入步骤S102,所述移动IPv6客户端判断提供服务的HA是否要求应答,如果是,进入步骤S103,否则,进入步骤S104。在实际应用中,所述移动IPv6客户端只要接收到提供服务的HA发出的信息后,即可返回应答消息,即不必判断提供服务的HA是否要求应答,当然,所述移动IPv6客户端在接收到提供服务的HA发出的信息后,也可不进行应答,所以也不必判断提供服务的HA是否要求应答,因此,这个步骤可选择实施,或者说,不是必要的步骤。

在步骤S103中,如果要求应答,则所述移动IPv6客户端向提供服务的HA返回应答消息,之后进入步骤S104。

同样,本实施例还增加了一种ICMP消息用来表示应答,其格式如图2C所示,其中,Type表示ICMP消息类型,这里使用值156;Code表示代码,这里置0;Checksum表示ICMP校验和;Identifier用来区分不同HA分配应答消息的标识符;Reserved表示保留位,这里置0,用于将来扩展。

需要说明的是,如果提供服务的HA在提供新的HA信息后,没有收到移动IPv6客户端的应答消息,则可重复步骤S101,直至收到应答消息或者定时器超时为止。提供服务的HA在没有收到应答消息的情况下,可定期重复步骤S101,也可根据实际应用选择合适的时间间隔重复步骤S101,时间间隔可不相同。

在步骤S104中,所述移动IPv6客户端在所述新的HA上实现注册绑定。

在新的HA上进行注册绑定是指第一次在新的HA上将所述移动IPv6客户端的HoA及CoA建立对应关系。

实现注册绑定的过程可以由图3所示的各个步骤实现。

如图3所示,在步骤S1041中,所述移动IPv6客户端按照所述IPv6地址或者按照将所述域名解析成的IPv6地址向所述新的HA发送绑定更新消息。

在步骤S1041中,如果提供服务的HA提供的是新的HA的域名,则移动IPv6客户端需要使用DNS服务器将域名解析为IPv6地址。

移动IPv6客户端可以选择在合适的时间在新的HA上实现注册绑定,但如果提供服务的HA指定了生命期,则移动IPv6客户端最好在生命期结束前在新的HA上实现注册绑定,这是因为,提供服务的HA在生命期结束后会停止对所述移动IPv6客户端提供服务,如果所述移动IPv6客户端在生命期结束后在新的HA上实现注册绑定,则会导致所述移动IPv6客户端在一段时间内不会得到移动IPv6服务,所以,为了保证享受移动IPv6服务的连续性,所述移动IPv6客户端应该在生命期结束前在新的HA上实现注册绑定。

新的HA在接收到绑定更新消息后,可向所述移动IPv6客户端返回应答消息。

完成步骤S1041后,进入步骤S1042,所述新的HA将所述移动IPv6客户端的HoA和CoA绑定。在这个步骤中,新的HA建立所述移动IPv6客户端的HoA与CoA的对应关系,以便实现报文的正确转发。

进入步骤S1043,所述新的HA将绑定确认消息发送给所述移动IPv6客户端。

请再参照图1,完成步骤S104后,进入步骤S105,所述移动IPv6客户端在提供服务的HA上注销提供的服务。此步骤可与步骤S104不分先后顺序执行。

注销过程可以由图4所示的各个步骤实现。

如图4所示,在步骤S1051中,所述移动IPv6客户端向提供服务的HA发送请求注销提供服务的消息。

进入步骤S1052,提供服务的HA取消对所述移动IPv6客户端提供的服务。

最后步骤S1053,提供服务的HA向所述移动IPv6客户端发送注销成功的消息。

在图1所示的实施例中,提供服务的HA与移动IPv6客户端之间、或者新的HA与移动IPv6客户端之间可建立IP安全联盟,例如,可按照RFC3775的要求,在移动IPv6客户端与提供服务的HA或新的HA之间建立IP安全联盟,所使用的消息用安全联盟进行保护,也可以使用RFC4285认证协议实现绑定更新。

另外,所述移动IPv6客户端在生命期内可以随时向提供服务的HA提出绑定更新请求,提供服务的HA会响应这种请求,并完成绑定更新过程,当然,由于某些原因,例如服务器忙或管理等原因,提供服务的HA也可以拒绝这种请求。如果所述移动IPv6客户端在生命期外向提供服务的HA提出绑定更新请求,则提供服务的HA会拒绝这种请求或者不做任何响应。

在提供服务的HA上实现绑定更新是指在提供服务的HA上将所述移动IPv6客户端的HoA与新的CoA、新的HoA与新的CoA或新的HoA与CoA之间建立对应关系,无论是注册绑定还是绑定更新,都可以使用BU消息。

在图1所示的实施例中,由于多种原因,提供服务的HA主动向移动IPv6客户端提供新的HA的信息。在实际应用中,由于某些原因,移动IPv6客户端可主动向提供服务的HA请求提供新的HA信息,提供服务的HA接到请求后,将新的HA信息提供给移动IPv6客户端,接着进行第一实施例的各个步骤。特殊情况下,如果提供服务的HA没有找到更合适的HA,则可以通知移动IPv6客户端新的HA还是正在提供服务的HA。另外,如果移动IPv6客户端认为新的HA不合适,还可以重新向提供服务的HA请求提供新的HA信息。

此外,提供服务的HA还可等到接收到移动IPv6客户端提出的绑定更新请求后,再将新的HA信息提供给移动IPv6客户端。

现在结合图5,对本发明第二实施例进行说明。

如图5所示,在步骤S501中,移动IPv6客户端向提供服务的HA发送绑定更新消息。移动IPv6客户端可以请求服务HA提供其他HA的信息,可以在绑定更新保留位中使用其中一位表示请求。

进入步骤S502,提供服务的HA向所述移动IPv6客户端发送绑定确认消息时,提供一个已获得的新的HA信息。

提供服务的HA也可以拒绝所述移动IPv6客户端的绑定更新请求,只是向所述移动IPv6客户端提供一个新的HA信息。

提供服务的HA提供新的HA信息同时,还可以指定继续提供服务的时间,即生命期。

根据移动IPv6的要求,绑定确认消息对绑定更新消息进行回复。MH(Mobility Header,移动性头)的类型为6,MH中Message Data(消息数据)字段的格式如图6A所示,其中,Status表示状态,即对绑定更新的处理结果,如为0,则表示接受绑定更新,如为129,则表示管理原因禁止,如为130,则表示资源不足;Sequence表示序列号;Lifetime表示生命期;Mobility Options表示移动性选项,这里使用的都是TLV(类型-长度-值)的格式,如果有的选项接收者不能识别则忽略。

本发明扩展Mobility Options来表示新的HA,如图6B所示的即为其中一种格式,Assigned HA表示新分配的128位HA地址。

进入步骤S503,所述移动IPv6客户端在新的HA上实现注册绑定。此步骤与图1中的步骤S104相同。

最后进入步骤S504,所述移动IPv6客户端在提供服务的HA上注销提供的服务。此步骤与图1中的步骤S105相同。

除上述第一实施例及第二实施例外,本发明还提供了另外一种方案,该方案的整体实施过程为:提供服务的HA获得所有的HA的信息后,向移动IPv6客户端提供所有的HA的信息。

现在结合图7,对本发明第三实施例进行说明。

在步骤S700中,提供服务的HA获得所有的HA的IPv6地址或域名。

提供服务的HA获得所有的HA可以有两种途径:一种途径是,提供服务的HA所在区域内的所有HA会周期性广播RA(Router Advertisement,路由器公告)消息,提供服务的HA通过这些周期性广播的RA消息,可以收集所有可用的HA;另一种途径是,提供服务的HA可以向保存有可用HA信息的节点查询可用的HA的信息,并收集所有可用的HA的信息,这个节点中的数据库可以是AAA服务器或者配置管理数据库,当然,节点本身也可以为一个数据库。

在步骤S701中,提供服务的HA主动向移动IPv6客户端提供所有的HA的IPv6地址或域名。

提供服务的HA主动向移动IPv6客户端提供信息的原因有很多种,例如:提供服务的HA认为自身负载过重或需要升级改造等原因,则会有选择的向移动IPv6客户端分配新的HA,通过改变这些移动IPv6客户端的HA,达到减轻负载或顺利进行升级改造的目的;提供服务的HA认为移动IPv6客户端距离其较远,数据传输时间较长,而在移动IPv6客户端附近恰好存在另外一个HA,则将这个HA分配给移动IPv6客户端,以使移动IPv6客户端在享受同样的服务时,接收数据的时间缩短。

提供服务的HA只需将可用的所有的HA的信息提供给移动IPv6客户端即可,至于哪个HA可作为移动IPv6客户端新的HA,提供服务的HA可不必做出决定。

另外,提供给移动IPv6客户端的所有HA的信息可按照HA的优先级由高到低的顺序排列。

在本步骤中,提供服务的HA除向移动IPv6客户端提供所有HA的IPv6地址或域名外,还可以同时指定其继续向所述移动IPv6客户端提供服务的时间,在本发明中将这个时间称为生命期。提供服务的HA在生命期结束之前继续为所述移动IPv6客户端提供服务,但如果生命期结束后,提供服务的HA则停止向所述移动IPv6客户端提供服务。

本实施例新增一种ICMP消息用来将所有HA的信息提供给移动IPv6客户端,这种消息的格式如图8A所示,其中,Type表示ICMP消息类型,这里使用值155;Code表示代码,这里置0;Checksum表示ICMP校验和;Identifier用来区分不同HA分配消息的标识符;A表示应答位,如果置1,表示移动IPv6客户端必须发送应答消息;Reserved表示保留位,这里置0,用于将来扩展。此外,Options表示选项,本实施例定义的Options,用于表示所有的HA的IPv6地址。Options的格式如图8B所示,其中,Type为8位,这里置1;Length为8位,值为16n+2,n为HA的个数;Lifetime表示生命期,为16位;Assigned HA表示所有的HA的IPv6地址,每个HA的地址为128位。

完成步骤S701后,进入步骤S702,所述移动IPv6客户端判断提供服务的HA是否要求应答,如果是,进入步骤S703,否则,进入步骤S704。在实际应用中,所述移动IPv6客户端只要接收到提供服务的HA发出的信息后,即可返回应答消息,即不必判断提供服务的HA是否要求应答,当然,所述移动IPv6客户端在接收到提供服务的HA发出的信息后,也可不进行应答,所以也不必判断提供服务的HA是否要求应答,因此,这个步骤可选择实施,或者说,不是必要的步骤。

在步骤S703中,如果要求应答,则所述移动IPv6客户端向提供服务的HA返回应答消息,之后进入步骤S704。

同样,本实施例还增加了一种ICMP消息用来表示应答,其格式如图8C所示,其中,Type表示ICMP消息类型,这里使用值156;Code表示代码,这里置0;Checksum表示ICMP校验和;Identifier用来区分不同HA分配应答消息的标识符;Reserved表示保留位,这里置0,用于将来扩展。

需要说明的是,如果提供服务的HA在提供所有的HA信息后,没有收到移动IPv6客户端的应答消息,则可重复步骤S701,直至收到应答消息或者定时器超时为止。提供服务的HA在没有收到应答消息的情况下,可定期重复步骤S701,也可根据实际应用选择合适的时间间隔重复步骤S701,时间间隔可不相同。

在步骤S704中,所述移动IPv6客户端依次在每个HA上进行注册绑定,直至成功获得一个可用的HA为止。

实现注册绑定的过程可以由图9所示的各个步骤实现。

如图9所示,在步骤S7041中,所述移动IPv6客户端按照每个IPv6地址或者按照将每个域名解析成的IPv6地址分别向每个HA发送绑定更新消息。

在步骤S7041中,如果提供服务的HA提供的是所有的HA的域名,则移动IPv6客户端需要使用DNS服务器将域名解析为IPv6地址。

移动IPv6客户端可以选择在合适的时间分别在每个HA上进行注册绑定过程,但如果提供服务的HA指定了生命期,则移动IPv6客户端最好在生命期结束前在每个HA上进行注册绑定,直至成功,这是因为,提供服务的HA在生命期结束后会停止对所述移动IPv6客户端提供服务,如果所述移动IPv6客户端在生命期结束后才开始在每个HA上进行注册绑定,则会导致所述移动IPv6客户端在一段时间内不会得到移动IPv6服务,所以,为了保证享受移动IPv6服务的连续性,所述移动IPv6客户端应该在生命期结束前在每个HA上进行注册绑定,直至成功。

每个HA在接收到绑定更新消息后,向所述移动IPv6客户端返回应答消息。

完成步骤S7041后,进入步骤S7042,接收到所述绑定更新消息的HA将所述移动IPv6客户端的HoA与CoA绑定。

在这个步骤中,接收到所述绑定更新消息的HA试图建立所述移动IPv6客户端的HoA与CoA的对应关系,以便实现报文的正确转发。

进入步骤S7043,所述进行绑定的HA向所述移动IPv6客户端返回注册绑定成功与否的消息。

在步骤S704中,如果某个HA返回注册绑定成功的消息,则将这个HA作为移动IPv6客户端新的HA,所述移动IPv6客户端可不再向其余的HA发送绑定更新消息。

在步骤S704中,如果移动IPv6客户端接收到的所有HA的信息是按照优先级由高到低的顺序排列的,则移动IPv6客户端可按照这个顺序向每个HA发送绑定更新消息,如果接收到的所有HA的信息不是按序排列的,则移动IPv6客户端可在获得所有HA的优先级后,按照优先级由高到低的顺序向每个HA发送绑定更新消息,注册绑定成功的HA即为新的HA。

请再参照图7,完成步骤S704后,进入步骤S705,所述移动IPv6客户端在提供服务的HA上注销提供的服务。此步骤可与步骤S804不分先后顺序执行。

注销过程可以由图10所示的各个步骤实现。

如图10所示,在步骤S7051中,所述移动IPv6客户端向提供服务的HA发送请求注销提供服务的消息。

进入步骤S7052,提供服务的HA取消对所述移动IPv6客户端提供的服务。

最后步骤S7053,提供服务的HA向所述移动IPv6客户端发送注销成功的消息。

在图7所示的实施例中,提供服务的HA与移动IPv6客户端之间、或者每个HA与移动IPv6客户端之间可建立IP安全联盟,例如,可按照RFC3775的要求,在移动IPv6客户端与提供服务的HA或每个HA之间建立IP安全联盟,所使用的消息用安全联盟进行保护,也可以使用RFC4285认证协议实现绑定更新。

另外,所述移动IPv6客户端在生命期内可以随时向提供服务的HA提出绑定更新请求,一般情况下,提供服务的HA都会响应这种请求,并完成绑定更新过程,当然,由于某些原因,例如服务器忙或者管理等原因,提供服务的HA也可以拒绝这种请求。如果所述移动IPv6客户端在生命期外向提供服务的HA提出绑定更新请求,则提供服务的HA会拒绝这种请求或者不做任何响应。

在图7所示的实施例中,由于多种原因,提供服务的HA主动向移动IPv6客户端提供所有的HA的信息。在实际应用中,由于某些原因,移动IPv6客户端可主动向提供服务的HA请求提供新的HA信息,提供服务的HA接到请求后,将所有的HA的信息提供给移动IPv6客户端,接着进行第一实施例的各个步骤。提供服务的HA还可等到接收到移动IPv6客户端提出的绑定更新请求后,再将所有的HA信息提供给移动IPv6客户端。

现在结合图11,对本发明第四实施例进行说明。

如图11所示,在步骤S1101中,移动IPv6客户端向提供服务的HA发送绑定更新消息。移动IPv6客户端可以请求服务HA提供其他HA的信息,可以在绑定更新保留位中使用其中一位表示请求。

进入步骤S1102,提供服务的HA获得所有可用的HA的信息后,向所述移动IPv6客户端发送绑定确认消息时,提供所有可用的HA的信息。

提供服务的HA也可以拒绝所述移动IPv6客户端的绑定更新请求,只是向所述移动IPv6客户端提供所有可用的HA的信息。

提供服务的HA提供所有可用的HA的信息同时,还可以指定继续提供服务的时间,即生命期。

根据移动IPv6的要求,绑定更新确认对绑定更新消息进行回复。MH(Mobility Header,移动性头)的类型为6,MH中Message Data(消息数据)字段的格式如图12A所示,其中,Status表示状态,即对绑定更新的处理结果,如为0,则表示接受绑定更新,如为129,则表示管理原因禁止,如为130,则表示资源不足;Sequence表示序列号;Lifetime表示生命期;Mobility Options表示移动性选项,这里使用的都是TLV(类型-长度-值)的格式,如果有的选项接收者不能识别则忽略。

本发明扩展Mobility Options来表示新的HA,如图12B所示的即为其中一种格式,Assigned HA表示所有的128位HA地址,此时,Length=16n,n为HA的个数。

进入步骤S1103,所述移动IPv6客户端在每个HA上进行注册绑定,直至成功为止。此步骤与图7中的步骤S704相同。

最后进入步骤S1104,所述移动IPv6客户端在提供服务的HA上注销提供的服务。此步骤与图7中的步骤S705相同。

以上所述仅是本发明的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以作出若干改进和润饰,这些改进和润饰也应视为本发明的保护范围。

去获取专利,查看全文>

相似文献

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

客服邮箱:kefu@zhangqiaokeyan.com

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

  • 服务号