• 易迪拓培训,专注于微波、射频、天线设计工程师的培养
首页 > 无线通信 > 技术文章 > 移动通信的基石----移动IP

移动通信的基石----移动IP

录入:edatop.com     点击:
移动通信的基石----移动IP

移动Internet正逐步成为现实。然而,由于Internet的互联协议、IP的地址结构和路由算法,限
制了移动主机在移动Internet中的灵活操作。IP协议中的网络地址分为两层结构:子网号,用来
确定与主机相连的网络;主机号,用来确定这个子网中的特定主机。如果一个主机改变了与
Internet的连接点,移动到了一个具有不同网络前缀的子网,那么发向它的数据包将不能正确地
到达它。另外,固定网、特别是移动通信的引入,IP地址空间也存在着极大的不足。

为了解决这些问题,IETF等组织开始了在移动IP上的研究,并在移动IPv4和移动IPv6方面取得了
一定的成绩。

移动IPv4

移动IP定义了三种功能实体移动主机,家乡代理和外地代理,家乡代理和外地代理统称为移动代
理。

基本构架

在移动IP协议中,每个移动主机在“家乡链路”上有一个唯一的“家乡地址”。与移动主机通信的
主机被称为“通信主机”,通信主机可以是移动的,也可以是静止的。通信主机与移动主机通信
时,通信主机总是把数据包发送到移动主机的家乡地址,而不考虑移动主机的当前位置情况。

在家乡链路上每个移动主机必须有一个“家乡代理”来为自己维护当前位置信息。这个位置由“转
交地址”来确定,移动主机的家乡地址与它当前转交地址的联合称为“移动绑定”,或简称为“绑
定”。每当一个移动主机得到一个新的转交地址时,它必须生成一个新的绑定来向家乡代理注册,
以使家乡代理即时了解移动主机的当前位置信息。一个家乡代理可以同时为多个移动主机提供服
务。

当一个移动主机连接到家乡链路之外的“外地链路” 时,可以通过下述两种方法来获得转交地
址。通常情况下移动主机使用“代理发现”协议在外地链路上发现一个“外地代理”,然后移动主
机向这个外地代理进行注册,并使用此外地代理的IP地址作为自己的转交地址。外地代理的主要功
能是为这个移动主机转发数据包。另外移动主机也可以通过其他方法(如DHCP)在外地链路上获
得一个临时IP地址来作为自己的转交地址,在这种情况下移动主机可以作为自己的外地代理。

当移动主机离开家乡链路时,它的家乡代理把发往移动主机的所有数据包转发到移动主机的当前位
置。家乡代理可以使用“代理ARP”或其他有效方法在家乡链路上截获发往移动主机的数据包。对
于每个截获的数据包,家乡代理使用隧道技术把它们发送到移动主机的当前转交地址。如果转交地
址是外地代理的IP地址,那么这个外地代理是隧道的终端,此时外地代理从数据包中移走隧道报
头,并把剩余部分发送到移动主机。如果移动主机使用一个临时地址作为转交地址,那么数据包将
直接通过隧道传送到移动主机。

在一个网络上,一台路由器可以同时具有家乡代理和外地代理的功能,也可以用两台或多台路由器
分别提供家乡代理和外地代理服务。

代理发现

移动IP通过扩展现有的“ICMP路由器发现”机制来实现代理发现。代理发现机制能够使移动主机
检测到自己是否从一个网络移动到了另外的网络,并且也能够检测到它是否回到了家乡链路。当移
动主机移动到一个新的外地链路时,代理发现机制也能帮助移动主机发现一个合适的外地代理。

在某些特定类型的网络上,数据链路层可以完成代理发现的功能。但为了支持在数据链路层不具有
此功能的网络,必须为代理发现制定标准协议。通过制定这个标准协议,可以为移动主机提供一种
适合所有网络类型的代理发现机制。

家乡代理和外地代理在自己所连接的网络上定期地广播“代理宣告”消息来宣告自己的存在。移动
主机时刻监听代理宣告消息,用来判断有哪些家乡代理或外地代理连接在它所在的网络上。如果一
个移动主机从自己的家乡代理接收到一个代理宣告消息,它就能够推断已经返回家乡并直接向家乡
代理进行注册。否则,移动主机将选择是保留当前的注册还是向新的外地代理进行注册。

当移动主机位于家乡链路或者已经向一个外地代理进行了注册,那么它仍然希望从它的家乡代理或
它的当前外地代理继续接收定期的宣告消息。如果移动主机在一段时间内没有接收到一定数量的宣
告消息,那么它就认为自己已经移动或者它的家乡代理或当前的外地代理发生了故障。如果移动主
机最近接收到了其他的宣告消息,它就试图向发送这个宣告消息的外地代理进行注册。否则,移动
主机将向它所在的网络上广播一条“代理请求”消息,接收到这条请求消息的每个家乡代理或外地
代理都应当用宣告消息进行应答。

代理宣告消息是ICMP路由器宣告消息的扩展,在ICMP路由器宣告消息之后是“移动代理宣告扩
展”报头,另外也可以可选地跟随一个“前缀长度扩展”报头,“一字节填充扩展”报头或者其他
将来需要定义的报头等。移动主机通过对代理宣告消息的处理,可以得到自己的位置信息和转交地
址。

注册

当移动主机发现它的网络接入点从一条链路切换到另一条链路时,它就要进行注册。另外,由于注
册信息有一定的生存时间,所以移动主机在没有发生移动时也要进行注册。移动IP的注册功能是:
移动主机通过注册可以得到外地链路上外地代理的路由服务;移动主机通过注册可以通知家乡代理
它的转交地址;可以使一个要过期的注册重新生效;移动主机在回到家乡链路时要进行反注册。

注册的另外一些功能还包括:同时注册多个转交地址,此时家乡代理将发往移动主机家乡地址的数
据包通过隧道发往移动主机的每个转交地址;可以在注销一个转交地址的同时保留其他转交地址;
在先前不知道它家乡代理的情况下,移动主机可以通过注册动态地得到家乡代理的地址。

移动IP的注册过程一般在代理发现机制完成之后进行。当移动主机发现自己返回家乡链路时,它就
向家乡代理进行注册,并开始像固定主机或路由器那样进行通信。当移动主机位于外地链路时,它
能够得到一个转交地址,并通过外地代理向家乡代理注册这个地址。移动IP包括两种注册消息:注
册请求和注册应答。

隧道技术

隧道技术在移动IP中扮演了一个非常重要的角色。移动IP中使用了三种隧道技术:IP的IP封装、
最小封装和通用路由封装GRE。

IP的IP封装是一个Internet标准,用于将IPv4包放在另一个IPv4包的净荷部分。移动IP要求家乡
代理和外地代理实现IP的IP封装,以实现从家乡代理到转交地址的隧道。IP的IP封装非常简单明
了,只需把一个IP包放在一个新IP包的净荷中。采用IP的IP封装的隧道对穿过它们的数据包来说
就像一条虚拟链路。例如,一个包到达第一台路由器,通过从第一台路由器开始的隧道到达第二台
路由器,并进一步转发到它的目的地址,这时这个包的生存时间域会被减小两次,好象隧道只是连
接这两台路由器的一条链路一样。

IP的最小封装是移动IP中的一种可选隧道方式。目的是减少实现隧道所需的额外字节数,可通过
将IP的IP封装中内层IP报头和外层IP报头的冗余部分去掉来完成。最小封装与IP的IP封装相比可
以节省一些字节(一般是8字节)但带来了一些不利之处,即当原始数据包已经过分片时,最小封
装就无能为力了。由于在隧道内的每一台路由器上,原始包的生存时间域的值都会被减小,这使得
家乡代理在采用最小封装时,移动主机不可到达的概率增大。

最小封装的包中可能不包含原始源地址域,从而不能保证隧道内的ICMP报文可以到达原始数据包
源,这样隧道入口只能仍然依靠软状态对报文进行中继,以便到达原始数据包源。由于以上原因,
移动IP实现者应集中精力保证IP原IP封装正常工作,而可以不使用最小封装。通用路由封装GRE是
移动IP采用的最后一种隧道技术。除了IP协议,GRE还支持其他网络层协议,它允许一种协议的数
据包封装在另一种协议数据包的净荷中。而前两种只要求使用IP协议。另外GRE防止递归封装的机
制在某些应用中也非常有吸引力。

移动IPv6

移动IPv6是在继承移动IPv4优点的基础上,利用了IPv6的许多新特点进行设计的。协议中定义了
三种操作实体:移动节点、通信节点和家乡代理;四种新的IPv6目的地选项:绑定更新、绑定认
可、绑定请求和家乡地址;为了实现“动态家乡代理地址发现”机制定义了两种ICMP消息类型:
家乡代理地址发现请求消息和家乡代理地址发现应答消息;定义了两种“邻居发现”选项:宣告消
息间隔和家乡代理信息选项。

基本操作

无论移动节点在家乡还是在外地,它总是通过家乡地址来被寻址。当移动节点在家乡时,可以使用
通常的路由机制来对发往移动节点的数据包进行路由。由于移动节点的子网前缀是移动节点家乡链
路的子网前缀,所以发往移动节点的数据包将被路由到它的家乡链路。

当一个移动节点连接在外地链路时,它可以通过一个或多个转交地址或它的家乡地址来被寻址。转
交地址是当移动节点访问外地链路时获得的一个IP地址,此地址的子网前缀是移动节点所访问的外
地链路的子网前缀。如果移动节点使用此转交地址连接在这个外地链路,那么发往这个转交地址的
数据包将被直接路由到在这个外地链路上的移动节点。

移动节点的家乡地址和转交地址的关联叫做移动节点的一个绑定。利用IPv6“邻居发现”协议,
移动节点可以通过有状态的或无状态的“地址自动配置”机制来获得转交地址。另外,其他获得转
交地址的方法也是允许的(如由外地链路的网络管理员事先分配一个IP地址给移动节点)。

当移动节点离开家乡链路时,它要向家乡链路上的一个路由器注册自己的一个转交地址,并要求这
个路由器作为自己的家乡代理。进行注册时,移动节点向家乡代理发送“绑定更新”消息;然后家
乡代理要为移动节点返回“绑定认可”消息。移动节点把这个“绑定更新”消息中的转交地址向家
乡代理注册,这个被注册的转交地址称为移动节点的“主转交地址”。移动节点的家乡代理在家乡
链路上,利用“代理邻居发现”来为移动节点截获发往移动节点的数据包,并且把每个数据包通过
隧道传送到移动节点的主转交地址。为了通过隧道传送截获的数据包,家乡代理利用“IPv6封
装”协议来封装数据包,IPv6封装的外部报头的目的地址是移动节点的“主转交地址”。

移动节点可以同时使用多于一个的转交地址。移动节点的“主转交地址”必须是唯一的,因为家乡
代理只为每个移动节点维护一个转交地址,并且通常都是把数据包通过隧道传送到移动节点的“主
转交地址”。这样的话,家乡代理使用隧道传送数据包时就不用采取任何策略来决定要利用哪个转
交地址作为隧道的出口,而把这项功能留给移动节点去完成。

当移动节点离开家乡时,家乡链路上的一些节点可能被重新配置,如原来作为移动节点家乡代理的
路由器可能被别的路由器所替换。在这种情况下,移动节点可能不再知道它自己家乡代理的IP地
址。为了解决这个问题,移动IPv6提供了“动态家乡代理地址发现”机制来允许移动节点动态地
在家乡链路上发现一个家乡代理的IP地址,发现之后,移动节点可以向这个家乡代理注册自己的转
交地址。

“绑定更新”、“绑定认可”和“绑定请求”这三个目的地选项用于IPv6节点与移动节点之间进
行通信,也能够使IPv6节点了解和缓存移动节点的绑定。

移动IPv6定义了一个附加的IPv6目的地选项叫“家乡地址”选项。当移动节点在外地发送数据包
时,通常它将使用当前的转交地址作为数据包报头中的源地址,并且在数据包中包含一个“家乡地
址”目的地选项,用于给出移动节点的家乡地址。许多路由器都有“入口过滤功能”,这种路由器
不允许“源地址”不正确的数据包通过。通过使用转交地址作为IPv6报头的源地址,数据包将能
正常地通过这些路由器,这些入口过滤规则也同样能够得到正确的拓扑源结构。通过在每个数据包
中包含“家乡地址”选项,移动节点可以利用包含在“家乡地址”选项中的家乡地址与通信节点进
行通信,这样就使转交地址对IP层之上是透明的。在数据包中包含“家乡地址”选项仅仅影响通信
节点对这个数据包的接收;接收这样的数据包将不在通信节点中产生任何状态或修改任何状态。

绑定管理

当一个移动节点配置了一个新的转交地址并且决定要使用这个新的地址作为它的主转交地址时,移
动节点通过发送给家乡代理一个“绑定更新”消息来注册这个新的绑定。移动节点指出这个“绑定
更新”消息是需要应答的,并且它不断的周期性地重发这个消息直到得到认可为止。家乡代理通过
向移动节点返回一个“绑定认可”消息来应答绑定更新消息。

当一个移动节点接收到一个由它的家乡代理通过隧道发送给它的数据包时,移动节点就认为发送这
个数据包的通信节点没有它的绑定缓存条目。如果有的话,通信节点就可以利用“路由报头”直接
向移动节点发送数据包,而不必经过移动节点的家乡链路。因此,移动节点向通信节点返回一个
“绑定更新”消息,允许通信节点为这个移动节点缓存一个绑定,以后通信节点就可以利用这个绑
定来发送以后的数据包。尽管移动节点可以要求这个“绑定更新”消息被应答,但这个应答不是必
须的,因为从这个通信节点发出的后续的数据包如果继续被移动节点的家乡代理所截获并且通过隧
道发送到通信节点,那么将激发移动节点向通信节点重发“绑定更新”消息。当某个绑定的生存时
间将要到期时,具有这个“绑定缓存”条目的通信节点可以更新此绑定条目。通信节点通过发送一
个“绑定请求”消息到移动节点,来要求移动节点向它发送“绑定更新”消息。例如,如果通信节
点正在与移动节点进行通信,并且正有一个打开的TCP连接,并且以后还要继续这个通信,那么在
这种情况下移动节点可以刷新这个条目。当移动节点接收到一个“绑定请求”消息时,它向发送这
个“绑定请求”消息的节点返回一个“绑定更新”消息。

移动节点同时可以有一个或多个转交地址,尽管仅仅有一个转交地址被注册为它的“主转交地
址”。移动节点使用多于一个的转交地址是非常有用的。比如,当移动节点从一个无线链路移动到
另外一个无线链路时,可以提高切换的性能。现实世界中有与Internet通过单独基站相联的无线
链路,这样的两个链路的覆盖范围有可能重叠,在这种情况下,当移动节点在重叠区域的时候可能
与两个链路同时保持连接。当移动节点移出旧链路的覆盖范围并与它断开连接之前,移动节点可以
在新的链路上获得一个新的转交地址。这样当移动节点更新家乡代理和通信节点的“绑定缓存”的
时候,它仍然可以继续使用旧的转交地址来接收数据包。

由于通信节点能够缓存绑定,所以通信节点能够直接把数据包路由到移动节点的转交地址,因此家
乡代理很少参与对移动节点数据包的传送。这对于系统的可扩展性和稳定性是非常重要的,另外也
减少了网络的负担。通过缓存移动节点的转交地址能够得到从通信节点到移动节点的数据包的优化
路径。直接把数据包路由到移动节点的转交地址也减轻了家乡代理和家乡链路的交通阻塞。另外由
于家乡链路上的节点和家乡链路参与很少的对移动节点数据包的转发,所以这些节点和家乡链路的
失败很少影响移动节点的通信。

动态家乡代理地址发现

当移动节点向家乡代理注册“主转交地址”时,它可能不知道它的家乡链路上能够具有家乡代理功
能的路由器的地址。举例说明,当移动节点离开家乡链路之后,原来的家乡代理可能被其他的路由
器所替代。

在这种情况下,移动节点可以使用“动态家乡代理地址发现”机制,在自己的家乡链路上来发现一
个合适的家乡代理的地址。为了完成这项工作,移动节点向“移动IPv6家乡代理”的“任意发
送”地址发送“ICMP家乡代理地址发现请求”消息。这个数据包不能够使用“家乡地址”选项,
而必须在数据包的IP报头的源地址字段中使用移动节点的转交地址(这个数据包通过转交地址发
送,而不使用移动IP)。在家乡链路上接收到请求消息的家乡代理将返回“家乡代理地址发现应
答”消息,在消息中给出自己的全球唯一地址,另外也给出了家乡链路上其他家乡代理的列表。家
乡链路上的每个家乡代理都维护这样一个列表。由于每个家乡代理都周期性地广播非请求“路由器
宣告”消息,而在这个消息中如果“家乡代理”位被置位,那么发送这个消息的路由器就被认为是
家乡代理,所以根据这个消息每个家乡代理都能了解自己所在链路上哪些路由器是家乡代理。

移动节点在接收到“ICMP家乡代理地址发现应答”消息之后,就向发送此消息的源地址发送“绑
定更新”以进行家乡注册;另外,由于移动节点能够从应答消息中得到家乡链路上其他家乡代理的
地址,所以移动节点也可以向其他家乡代理发送“绑定更新”消息。例如移动节点可以向所有的家
乡代理进行家乡注册,然后等待能够匹配的“绑定认可”消息,直到它的注册动作被其中一个家乡
代理所接受。移动节点在试着向每个家乡代理的地址发送“绑定更新”消息时,应当按着家乡代理
的列表顺序来发送。如果返回“家乡代理地址发现应答”消息的家乡代理没有出现在家乡代理列表
中,那么它应该首先被发送“绑定更新”消息,否则,移动节点就要按照家乡代理列表中的顺序去
发送。

如果家乡链路上的某个家乡代理上有一个合法的注册,那么移动节点在进行新的注册时,必须首先
对这个家乡代理进行注册更新。如果这个注册过程失败或者被拒绝,那么移动节点就要向家乡链路
上其他的家乡代理进行注册。如果移动节点不知道家乡链路上其他家乡代理的地址,那么它就要执
行“动态家乡代理地址发现”机制。

对所有IPv6节点的要求

移动IPv6作为IPv6不可分割的一部分,对不同的IPv6节点提出了一些特殊要求。

由于每个IPv6节点在任何时刻都可以成为一个移动节点的通信节点,所以对所有的IPv6节点来说
都必须满足以下要求:

每个IPv6节点必须能够处理包含在IPv6数据包中的“家乡地址”选项;

每个IPv6节点应能处理接收到的“绑定更新”选项,并且能返回“绑定认可”选项来作为对“绑
定更新”的应答(如果这个“绑定更新”需要应答的时候);

每个IPv6节点应能为接收到“绑定更新”维护一个“绑定缓存”条目。

所有的IPv6路由器应能满足以下要求,即使不是移动IPv6中的“家乡代理”:

每个IPv6路由器应能在它的“路由器宣告”消息中包含一个“宣告时间间隔”选项,来帮助移动
节点进行移动检测且必须是可配置的;

每个IPv6路由器应当能够以更快的速率发送非请求“路由器宣告”广播消息,这个速率的使用必
须是可配置的。

为了使移动节点离开家乡时能够正确地工作,在移动节点的家乡链路上至少应该有一个路由器作为
它的家乡代理。以下的要求应用到作为家乡代理的所有IPv6路由器上:

每一个家乡代理必须能够在它的绑定缓存中为它所服务的每一个移动节点维护一个条目。每一个绑
定缓存条目中记录了移动节点的绑定,在这个绑定中记录有移动节点的主转交地址并且这个条目被
标识为“家乡注册”的记号;

当移动节点离开家乡时,在移动节点家乡链路上的家乡代理必须能够为移动节点截获发往移动节点
的数据包;

每个家乡代理必须能够封装被截获的数据包,然后把它们通过隧道发往移动节点的“主转交地
址”;

当家乡代理接收到一个“应答位”被设置的“绑定更新”消息时,它必须能够向这个移动节点返回
一个“绑定认可”消息;

每个家乡代理必须能够为它所服务的每个链路上的所有家乡代理维护多个单独的家乡代理列表;

每个家乡代理必须能够接收发往“移动IPv6家乡代理”任意发送地址的数据包,并且它必须能够
参与到“动态家乡代理地址发现”机制中;

每个家乡代理应该支持一个可配置机制来允许系统管理员手动地设置“家乡代理信息”选项中“家
乡代理优先选择权”字段的值。

移动IPv4与

移动IPv6的比较

移动IPv6的设计汲取了移动IPv4的设计经验,并且利用了IPv6的许多新的特征,所以提供了比移
动IPv4更多的、更好的特点。移动IPv6成为了IPv6协议不可分割的一部分。本文总结一下移动
IPv6和移动IPv4的主要的不同之处:

在移动IPv4的基本协议中存在有“三角路由”问题,对此“路由优化”问题的解决是由另外的协
议完成的,是基本协议的可选扩展,并且不被移动IPv4中的所有节点所支持;在移动IPv6中,对
这个问题的解决已经成为协议的一个主要部分,并被所有的IPv6节点所支持。对这种路由优化问
题的整合允许任何通信节点和移动节点之间直接路由数据包,而不再经过移动节点的家乡网络,也
不再需要家乡代理的转发功能,因此解除了在基本的移动IPv4协议中存在的“三角路由”问题。
这种整合也允许移动IPv4中的“注册”功能和路由优化功能在单独一个协议中完成,而不是在两
个不同的协议中完成。

在移动IPv6中可以允许移动节点与具有“入口过滤”功能的路由器同时存在并有效工作而不互相
影响。在移动IPv4中,当连接在外地链路的移动节点向通信节点发送数据包时,在某些情况下为
了保证位置的透明性,移动节点对所要发送数据包的源地址必须设置成自己的家乡地址。由于家乡
地址具有与外地链路不同的子网前缀,所以当这些数据包通过具有“入口过滤”功能的路由器时,
将被路由器过滤掉。在在移动IPv6中移动节点可以使用转交地址作为它所发送数据包的IP报头中
的源地址,这样,数据包就能正常的通过具有“入口过滤”功能的路由器。移动节点的家乡地址被
携带在数据包的“家乡地址”目的地选项中,当通信节点接收到包含这样选项的数据包时,能够自
动地把数据包的源地址替换成“家乡地址”目的地选项中的家乡地址,这样就使得转交地址的使用
对IP以上各层是透明的。所有IPv6节点都必须能够正确处理数据包中的“家乡地址”选项,无论
这个节点是移动的还是静止的,是主机还是路由器。

在数据包的报头中使用“转交地址”作为源地址也简化了移动节点发送广播数据包的路由。在移动
IPv4中,移动节点不得不把广播数据包通过隧道发送到家乡代理,从而在家乡链路上利用家乡地
址作为广播数据包的源地址。在移动IPv6中,“家乡地址“目的地选项的使用允许在广播数据包
中使用“家乡地址”作为源地址,这样使得可以与依赖于数据包源地址的广播路由相兼容。

在移动IPv6中不再有“外地代理”的概念。移动节点在离开家乡链路时可以利用IPv6的增强功能
(如“邻居发现”和“地址自动配置”机制)进行独立操作,而不需要任何来自于当地路由器的特
殊支持。实质上,移动IPv6中“外地代理”与“家乡代理”具有相同的功能,所以为了实现上的
方便在外地链路上也使用“家乡代理”的概念。在移动IPv4中,一般情况下“外地代理”具有为
移动节点转发数据包的功能。其实在移动IPv6中也需要此功能,如当移动节点从外地链路A移动到
外地链路B时,如果在外地链路A上没有一个路由器具有“家乡代理”的功能,那么发往外地链路A
的数据包将丢失。在这种情况下,已经移动到外地链路B的移动节点应该向外地链路A上的某个路由
器发送“绑定更新”消息,来要求这个路由器作为自己临时的“家乡代理”,从这种意义上来说,
外地链路上也应该具有“外地代理”,只是在移动IPv6中这个“外地代理”具有与“家乡代理”
相同的功能。

在安全性方面,移动IPv6使用IPSec来满足更新绑定时的所有安全需求(发送者认证,数据完整性
保护,重传保护等),也就是说移动IPv6的安全性是建立在IPv6的安全机制之上的,这样对移动
IPv6就可以省去很多用来应付安全性的工作。在移动IPv4中必须依赖自己的安全机制,通过静态
地配置“移动安全关联”来完成这些功能,增加了负担。

当移动节点在当前位置与它的缺省路由器进行通信时,移动IPv6的“移动检测”机制为移动节点
提供了双向认证的能力(双向是指从路由器向移动节点发送数据包和从移动节点向路由器发送数据
包)。这种认证对于“黑洞”问题提供了一种检测方法,在某些链路上路由器和移动节点之间的链
路在双向上工作状况可能不一样,这种情形可能存在于某些无线环境中,如移动节点已经移出了好
的无线传输范围。如果移动节点到它当前路由器的链路工作状况不是很好,那么移动节点可以试图
发现一个新的路由器并使用一个新的转交地址。相反,在移动IPv4中仅仅“前向”(从路由器向
移动节点发送数据包)的消息传送被认可;例如,如果移动节点接收不到从路由器发送过来的数据
包,而移动节点发送到路由器的数据包即使路由器接收到,也不能对移动节点进行认可,所以这样
就允许“黑洞”现象存在,即移动节点与路由器失去了联系。

在移动IPv6中,对于发往离开家乡链路的移动节点的数据包,使用IPv6的“路由报头”进行传
送,而不使用IP封装;在移动IPv4中对于所有的数据包必须使用封装技术。使用“路由报头”需
要较少的附加报头字节,从而减少了移动IP分发数据包的负担。但是,为了防止在数据包发送的过
程中被修改,在移动IPv6中,由移动节点的家乡代理截获并通过隧道发送到移动节点的数据包必
须仍然使用封装技术。

当移动节点离开家乡时,它的家乡代理使用IPv6的“邻居发现”机制来截获发往移动节点的数据
包,而不是使用IPv4中的ARP协议。为了截取数据包,家乡代理必须代表这个移动节点在家乡链路
上广播一条“无理由”的“邻居广播”消息。家乡链路上接收到这样一个“邻居宣告”消息的任何
节点,将修改自己的“邻居缓存”,使移动节点的地址与家乡代理的链路层地址进行关联,这样将
来发向移动节点的数据包直接发送到移动节点IP地址,而不发向移动节点的家乡代理。“邻居发
现”的使用提高了协议的健壮性并且简化了移动IP的实现,因为在移动IPv6中不需要再考虑与ARP
相关的特定数据链路层的性质。

在移动IPv4中由于ICMP协议的局限性必须使用“隧道软状态”的概念,而在移动IPv6中,由于使
用了“IPv6封装”和“路由报头”,从而不再需要“隧道软状态”。根据ICMPv6的定义,无论如
何都可以把“ICMP错误消息”正确的传送到数据包的初始发送者。

在移动IPv6中,“动态家乡代理地址发现”机制使用IPv6的“任意发送”地址,并且家乡链路上
只有一个家乡代理向移动节点返回一个应答消息;由于在移动IPv4中使用直接的广播地址,所以
移动节点家乡链路上的每个家乡代理均返回一个独立的应答消息。因为仅仅只有一个数据包从家乡
链路返回到移动节点,所以移动IPv6的这种机制更加有效和可靠。

移动IPv6中在“路由器宣告”消息(相当于移动IPv4中的“代理宣告”消息)中定义了一个“宣
告时间间隔”选项,允许移动节点自己可以决定在宣布它的当前路由器不可达消息之前,可以略过
多少个“路由器宣告”消息。

由于使用了IPv6协议的“目的地选项”,所以允许移动IPv6的流量控制消息附加在任何的IPv6数
据包中,这样可以减少网络的通信量;而在移动IPv4中,对于每个控制消息都必须使用独立的UDP
数据包进行发送。

总之,移动IPv6生逢其时,刚好迎合了IP协议更新换代的时机,也满足了移动信息社会的需求。
它必将在IPv6时代,为人们带来无时无地不在的网络通信。 (阚志刚 罗军 马建 王刚)

上一篇:通用移动通信系统UMTS
下一篇:移动IP:下一代网络过渡的核心技术

手机天线设计培训教程详情>>

手机天线设计培训教程 国内最全面、系统、专业的手机天线设计培训课程,没有之一;是您学习手机天线设计的最佳选择...【More..

射频和天线工程师培训课程详情>>

  网站地图