论文部分内容阅读
摘要:“下一代互联网中日IPv6合作项目”(IPv6-CJ)成果报告会2009年3月18日在清华大学成功的举行,促进了我国下一代互联网的发展。就此该文分析了传统IP技术对Internet移动通信制约,介绍了下一代下一代Internet转移时考虑更多的将是安全,介绍了IPv6通信注册过程,介绍了双向隧道,介绍了路由优化功能及IPv6对通信节点和路由器的要求,并结合IPv6移动通信结构,研究了IPv6移动通信机制。
关键词:IP技术;IPv6;移动;通信;Internet;通信注册;路由优化;安全
中图分类号:TN929.5 文献标识码:A 文章编号:1009-3044(2009)15-3903-03
IPv6-based Mobile Communication Mechanism
HONG Xi-jiong, ZHU Xiao-hua
(CHINA TELECOM Corporation Limited Zhuhai Branch,Zhuhai 519002,China)
Abstract: The "Next Generation Internet IPv6 cooperation projects in China and Japan" (IPv6-CJ) report the results of March 18, 2009 was held in Tsinghua University’s success, and promoted the development of next-generation Internet in China. The analysis of this tradition of IP technology on the Internet mobile communication constraints, introduced the next generation to take into account the transfer of the next generation Internet will be more security, IPv6, introduced the registration process communication on a two-way tunnels, introduced a route optimization function and IPv6 nodes and routers on the communication requirements of mobile communications combined with the structure of IPv6 to study the mechanism of IPv6 mobile communications.
Key words: IP technology;IPv6; mobile;communications;Internet;communication registered;routing optimization;security
1 前言
盡管 Internet协议——IPv4在其31年的发展历程中是非常成功的,但是它仍不可避免被新一代技术IPv6取代的命运。IP网络在当初设计时并没有想像到今天会有那么多的Internet用户。Internet之父当初也没有预想到,今天大量的Wi-Fi网上冲浪者在咖啡厅、机场、宾馆等场合在接入Internet时对安全传输也有基本的要求。
2 向IPv6转移更是为了安全
在IPv4的发展中,很多安全防范技术被忽略了。从那时开始,Internet应用的开发者不得不面对许多安全方面的挑战。IPsec安全协议就是事后发展的一种协议,而NAT(网络地址转换,Network Address Translation)使真正的端到端的安全应用难以实现。 NAT允许一个机构专用Intranet中的主机透明地连接到公共域中的主机,内部主机无需拥有注册的Internet地址,它解决了IP地址短缺的问题,但是却增加了安全风险。
而IPv6全面支持 IPsec,而且允许接入设备之间可以安全地鉴别远程节点和进行加密的通信。另外,IPv6中限制使用NAT,允许所有的节点使用其全球惟一的地址进行通信。原因是IPv6可以提供几乎用之不竭的地址空间,完全不需要NAT,让Internet完全回到端到端的自然连接状态空间。另外,IPv6增强了安全性,包括自动配置、QoS和移动性,这些安全特征创建了一个新的商业模式—— 一个安全的、几乎是所有设备之间的端到端通信的互连环境,不管这些设备是固定的还是移动的。 与之形成鲜明对比的是IPv4,NAT使一个LAN中所有的用户由一个IP地址向外传输数据,其数据在LAN之外是加密的,而在内部是不加密和不安全的。
3 传统IP技术对移动主机通信的制约
采用传统IP技术的主机在移动到另外一个网段或子网时候,由于不同的网段对应于不同的IP地址,用户不能使用原有IP地址进行通信,必须修改主机IP地址为所在子网的IP地址,而且由于各种网络设置,用户一般不能继续访问原有网络的资源,其它用户也无法通过该用户原有的IP地址访问该用户。
我们可以考虑对移动主机不使用固定IP地址,而通过动态主机配置协议(DHCP)动态地赋予其IP地址,实现随主机移动变动其IP地址,进而实现移动主机在新的网段或子网中的网络通信。但这种方法看似可行,事实上是完全行不通的。这是因为:
1) 因不知道新的IP地址,其它节点不易连接到移动节点。
2) 每次移动计算机获得一个新的IP地址,Internet客户服务软件应用程序必须重新启动。
3) 当今的Internet正是以IP地址为基础,通过IP地址把一个用户节点从数以亿计的计算机节点中标识出来,也就是每一个IP地址标识一个特定的终端系统。如果动态分配IP地址,整个域名系统(DNS)将不时需要刷新,而DNS系统正是现有网络的心脏,不时刷新将导致网络崩溃。
4) 现有的路由选择机制是基于固定IP地址的。
5) 动态分配的临时地址不允许移动计算机在IP子网之间漫游。
IPv6的基本理论中就有许多是为解决移动问题而提出的,能够更好地解决移动性问题。移动IPv6技术的目的是将数据包路由到那些可能一直在快速地改变位置的移动节点上。
4 IPv6移动通信结构
所谓移动IP技术,是移动用户在基于TCP/IP协议的网络中跨网络随意移动中,网络层提供一种使移动节点可以以一个永久的IP地址连接到任何链路上的路由机制。移动IPv6通信结构通常由以下几个部分组成[2]:
1) 移动节点 (mobile node) 。可更改链路(从而进一步更改地址)并可使用其居家地址 (home address) 保持可连接性的 IPv6 节点。移动节点是一个IP主机或路由器等,它在改变其Internet接入点时仍然能够保持通信,而不改变它的IP地址。
2) 居家地址 (home address)。 分配给连接到居家链路的移动节点的地址,而且通过该地址始终可以访问相应的移动节点,无论其在 IPv6 网络上位于何处。由于居家地址总是分配给移动节点,因此移动节点在逻辑上总是连接到居家链路。
3) 居家代理 (home agent) 居家链路上的一台路由器,保存离开居家地址的移动节点的注册信息及其当前地址。虽然上图中的居家代理充当将居家链路连接到 IPv6 网络的路由器,但是居家代理不是必须提供这项功能。居家代理也可以是居家链路(当移动节点连接到居家链路时不执行任何转发操作)上的一个节点。
5 IPv6移动通信机制
在IPv6移动通信系统中,节点(包括路由器)开始的时候置居家地址。把节点接口标识符和已知的居家链路前缀连接就生成了居家地址[3]。当移动节点连接到它的居家链路上时,路由器发现机制能帮助主机识别本地路由器,它与通信节点之间按照传统的路由技术进行通信,不需要移动IPv6的介入。
5.1 移动主机位置判定与获得转交地址
5.1.1 首先判定移动主机当前的位置
IPv6协议中一个重要特性就是邻居发现机制[4]。移动节点通过邻居发现机制检测自己是否已漫游至外地链路上。发现机制中定义了两条报文:路由器请求和路由器广播。在路由器广播报文中包括IPv6报头、ICMPv6路由器广播(固定部分)和前缀信息可选项三大部分,从可选项的网络前缀域可以判定移动主机当前位置和进行移动检测。移动主机检查接收到的广播消息中的网络前缀,假如与移动主机居家地址前缀相同,则移动主机连接在居家网络,此时应通知居家代理已返回居家链路;假如没有一个网络前缀与移动主机的居家网络相同,则移动主机就一定连在外地链路上,此时移动主机从最近接收的广播消息中的网络前缀与先前收到的对比,来决定移动主机位置是否移动。
5.1.2 获得转交地址
若移动节点发现自己已经移动到外地链路上时,移动节点的居家地址保持不变,同时它将在收到的路由器宣告信息的基础上,通过地址自动配置过程获得一个外地链路上的临时IP地址,即转交地址。
移动主机可以通过两种方法获得转交地址:被动地址自动配置和主动地址自动配置。通过ICMPv6路由器广播报文中定义的M比特的取值来选择采用哪种方法:
M=0时,采用被动地址自动配置,通过DHCPv6和PPP的IPv6配置协议由服务器向移动主机提供转交地址;
M=1时,采用主动地址自动配置,从ICMPv6路由器广播报文中得到外地链路的网络前缀,再加上移动主机与外地链路的接口标记(48bit的物理地址或MAC地址)相连,形成自己的转交地址。
移动主机可以同时拥有一个或多个转交地址,但仅有一个转交地址被注册为“主转交地址”。
5.2 绑定治理
移动主机的居家地址和转交地址之间的关联称作移动主机的一个绑定(Binding)。在移动IPv6绑定治理机制中定义了三种消息:“绑定更新”、“绑定认可”和“绑定请求”,都放在目的地可选报头(IPv6的一个扩展报头)中。这三种消息用于移动主机和居家代理或通信节点之间进行通信,也能使通信节点及时了解和缓存与移动主机转交地址之间的绑定。
通信节点可以主动发送一个“绑定请求”消息到移动主机,要求移动主机向它发送“绑定更新”消息,以得到移動主机的当前转交地址和缓存最新绑定。以后通信节点就可以利用移动主机的主转交地址直接向移动主机发送数据包,而不必经过居家代理转发。
5.3 动态居家代理地址发现[5]
当移动主机向居家代理注册“主转交地址”时,它可能不知道居家链路上能够具有居家代理功能的路由器的地址。或者当移动主机离开居家链路之后,原来的居家代理出现故障或路由器出现重新配置。为此,移动主机向居家网络发送“ICMP居家代理地址发现请求”消息,该数据包IP报头的源地址字段中使用移动主机的转交地址。在居家链路上接收到请求消息的居家代理将返回“居家代理地址发现应答”消息,在消息中给出自己的IP地址,另外也给出了居家链路上其他居家代理IP地址的列表。当一个移动主机配置了一个新的转交地址并决定要使用该地址作为它的主转交地址时,移动主机通过发送给居家代理一个“绑定更新”消息来注册这个新的绑定。移动主机周期性地重发“绑定更新”消息,直到居家代理发回应答消息。
移动主机在接收到“ICMP居家代理地址发现应答”消息之后,就向发送此消息的居家代理源地址发送“绑定更新”以进行注册;另外,由于移动主机能够从应答消息中得到居家链路上其他居家代理的地址,所以移动主机将按着居家代理的列表顺序来发送“绑定更新”消息。
假如居家链路上的某个居家代理上有一个合法的注册,那么移动主机在进行新的注册时,必须首先对这个居家代理进行注册更新。假如这个注册过程失败或被拒绝,那么移动主机就要向居家链路上其他的居家代理进行注册。假如移动主机不知道居家链路上其他居家代理的地址,那么它将执行“动态居家代理地址发现”机制。
5.4 通信注册过程
通信注册过程由以下几个部分组成:
5.4.1 迂回路由过程 (Return Routability procedure)
为了证明通过移动节点的居家地址和转交地址均可对其进行访问,移动节点和通信节点将执行迂回路由过程。需要通过该证明来防范各种连接劫持和拒绝服务攻击。在执行迂回路由过程时,移动节点会向通信节点发送两个不同的测试数据包。其中一个通过居家代理进行发送,而另一个则直接发送给通信节点。通信节点将响应发送给测试数据包,而且每个响应都包含一个加密令牌。
5.4.2 交换绑定更新 (Binding Update) 和绑定应答 (Binding Acknowledgement) 消息
完成迂回路由过程之后,移动节点将向通信节点发送一条移动 IPv6 绑定更新消息。绑定更新消息包含使用通信节点在迂回路由过程中所发送的加密令牌计算的身份验证数据。由通信节点验证身份验证数据。这一验证并属于强加密身份验证,但足以防范大多数攻击类型。如果此身份验证数据有效,那么通信节点将在其绑定缓存中为移动节点添加一个条目,并发送一条绑定应答消息。
5.4.3 收到绑定应答消息时,移动节点将在其绑定更新列表中为通信节点添加一个条目
5.5 双向隧道与路由优化
被封装的数据包在公共互联网络上传递时所经过的逻辑路径称为隧道。被封装的数据包在隧道的两个端点之间通过公共互联网络进行路由,一旦到达网络终点,数据将被解包并转发到最终目的地。
在移动 IPv6通信系统中,通过居家代理在通信节点和移动节点间建立的数据包隧道称为双向隧道[6]。双向隧道确保了当移动节点不在居家链路上时,总是可供访问,即便通信节点不支持移动 IPv6。然而,双向隧道会导致严重的传输延迟。
在移动节点和支持移动 IPv6 的通信节点间直接发送数据包的过程称为路由优化。路由优化消除了与双向隧道相关联的传输延迟,并需要通过它来为具有时间要求的流量(比如:Voice over IP,VoIP)提供充足的性能。
5.6 IPv6移动数据传送
完成了通信注册过程之后,通信节点中缓存有移动节点转交地址的绑定时,就可以利用IPv6选路报头中目的可选项直接将数据包发往移动节点。此时采用的是从源通信节点到移动节点的一条优化路径,即移动节点和通信节点使用路由优化功能来交换数据包。
如果通信节点不支持移动IPv6,或者还未完成通信注册,不知道移动节点的转交地址时,那么通信节点将数据包发往移动节点的居家地址,居家代理拦截数据包,并使用 IPv6-over-IPv6 隧道将其发送到移动节点。即移动节点和通信节点使用双向隧道功能来交换数据包。
如果通信节点支持移动 IPv6,并且已经完成了通信注册,那么移动节点的数据包将直接被发送到通信节点。这些数据包包含一个新的居家地址選项。该选项位于含有该移动节点居家地址的目标选项 (Destination Options) 报头中。
6 移动IPv6对IPv6通信节点和路由器的要求
作为IPv6协议栈的一部分,移动IPv6路由技术的实现对IPv6的通信节点和路由器提出了一些非凡的要求[7]:
6.1 对IPv6通信节点的要求
每个IPv6节点在任何时刻都可能成为一个移动节点的通信节点;每个IPv6节点必须能够处理包含在IPv6数据包中目的地可选项即“居家地址”选项;每个IPv6节点应能处理接收到的“绑定更新”选项,并能返回“绑定应答”选项;每个IPv6节点应能进行绑定治理。
6.2 对IPv6路由器的要求
每个IPv6路由器都支持邻节点搜索功能,支持ICMPv6路由器发现机制;每个IPv6路由器应能够以更快的速率发送“路由器广播消息”;在移动节点的居家链路上至少应该有一个路由器作为它的居家代理。
所有的IPv6路由器都具有ICMPv6路由器发现功能。当移动节点位于外地链路时,可以从路由器广播消息中任选一台作为默认路由器,配置相应的路由表,所发出的数据包均通过该路由器选路。
网络中许多路由器都具有入口过滤规则的限制:不答应源地址不正确的数据包通过。当移动节点在外地发送数据包时,通常它将使用当前的转交地址作为数据包报头中的源地址,按照传统规则这些数据包将会被丢弃。而在移动IPv6定义了一个附加的IPv6目的地选项即“居家地址”选项,使采用转交地址作为IPv6报头的源地址的数据包将正常通过。
7 结束语
当移动节点漫游至外地链路上时,要经过移动节点位置的判定,移动节点获取转交地址,发现居家代理地址,通过绑定治理,进行通信注册等一系列的关联过程,最后IPv6移动节点和通信节点使用双向隧道和路由优化功能就能实现数据包的传送。
参考文献:
[1] 周逊.IPv6下一代互联网的核心[M].北京:电子工业出版社,2003.
[2] Narten T, Nordmark E, Simpson W. RFC 2461 Neighbor Discovery for IP Version 6(IPv6). Dec. 1998.
[3] RFC2463 Internet Control Message Protocol(ICMPv6) for the IPv6 Specification.
[4] 张玉军.可信的移动IPv6网络及协议[M].北京:科学出版社,2008.3.
[5] 姜悌.移动IPv6技术[J].航空电子技术,2005,9(36):44-46.
关键词:IP技术;IPv6;移动;通信;Internet;通信注册;路由优化;安全
中图分类号:TN929.5 文献标识码:A 文章编号:1009-3044(2009)15-3903-03
IPv6-based Mobile Communication Mechanism
HONG Xi-jiong, ZHU Xiao-hua
(CHINA TELECOM Corporation Limited Zhuhai Branch,Zhuhai 519002,China)
Abstract: The "Next Generation Internet IPv6 cooperation projects in China and Japan" (IPv6-CJ) report the results of March 18, 2009 was held in Tsinghua University’s success, and promoted the development of next-generation Internet in China. The analysis of this tradition of IP technology on the Internet mobile communication constraints, introduced the next generation to take into account the transfer of the next generation Internet will be more security, IPv6, introduced the registration process communication on a two-way tunnels, introduced a route optimization function and IPv6 nodes and routers on the communication requirements of mobile communications combined with the structure of IPv6 to study the mechanism of IPv6 mobile communications.
Key words: IP technology;IPv6; mobile;communications;Internet;communication registered;routing optimization;security
1 前言
盡管 Internet协议——IPv4在其31年的发展历程中是非常成功的,但是它仍不可避免被新一代技术IPv6取代的命运。IP网络在当初设计时并没有想像到今天会有那么多的Internet用户。Internet之父当初也没有预想到,今天大量的Wi-Fi网上冲浪者在咖啡厅、机场、宾馆等场合在接入Internet时对安全传输也有基本的要求。
2 向IPv6转移更是为了安全
在IPv4的发展中,很多安全防范技术被忽略了。从那时开始,Internet应用的开发者不得不面对许多安全方面的挑战。IPsec安全协议就是事后发展的一种协议,而NAT(网络地址转换,Network Address Translation)使真正的端到端的安全应用难以实现。 NAT允许一个机构专用Intranet中的主机透明地连接到公共域中的主机,内部主机无需拥有注册的Internet地址,它解决了IP地址短缺的问题,但是却增加了安全风险。
而IPv6全面支持 IPsec,而且允许接入设备之间可以安全地鉴别远程节点和进行加密的通信。另外,IPv6中限制使用NAT,允许所有的节点使用其全球惟一的地址进行通信。原因是IPv6可以提供几乎用之不竭的地址空间,完全不需要NAT,让Internet完全回到端到端的自然连接状态空间。另外,IPv6增强了安全性,包括自动配置、QoS和移动性,这些安全特征创建了一个新的商业模式—— 一个安全的、几乎是所有设备之间的端到端通信的互连环境,不管这些设备是固定的还是移动的。 与之形成鲜明对比的是IPv4,NAT使一个LAN中所有的用户由一个IP地址向外传输数据,其数据在LAN之外是加密的,而在内部是不加密和不安全的。
3 传统IP技术对移动主机通信的制约
采用传统IP技术的主机在移动到另外一个网段或子网时候,由于不同的网段对应于不同的IP地址,用户不能使用原有IP地址进行通信,必须修改主机IP地址为所在子网的IP地址,而且由于各种网络设置,用户一般不能继续访问原有网络的资源,其它用户也无法通过该用户原有的IP地址访问该用户。
我们可以考虑对移动主机不使用固定IP地址,而通过动态主机配置协议(DHCP)动态地赋予其IP地址,实现随主机移动变动其IP地址,进而实现移动主机在新的网段或子网中的网络通信。但这种方法看似可行,事实上是完全行不通的。这是因为:
1) 因不知道新的IP地址,其它节点不易连接到移动节点。
2) 每次移动计算机获得一个新的IP地址,Internet客户服务软件应用程序必须重新启动。
3) 当今的Internet正是以IP地址为基础,通过IP地址把一个用户节点从数以亿计的计算机节点中标识出来,也就是每一个IP地址标识一个特定的终端系统。如果动态分配IP地址,整个域名系统(DNS)将不时需要刷新,而DNS系统正是现有网络的心脏,不时刷新将导致网络崩溃。
4) 现有的路由选择机制是基于固定IP地址的。
5) 动态分配的临时地址不允许移动计算机在IP子网之间漫游。
IPv6的基本理论中就有许多是为解决移动问题而提出的,能够更好地解决移动性问题。移动IPv6技术的目的是将数据包路由到那些可能一直在快速地改变位置的移动节点上。
4 IPv6移动通信结构
所谓移动IP技术,是移动用户在基于TCP/IP协议的网络中跨网络随意移动中,网络层提供一种使移动节点可以以一个永久的IP地址连接到任何链路上的路由机制。移动IPv6通信结构通常由以下几个部分组成[2]:
1) 移动节点 (mobile node) 。可更改链路(从而进一步更改地址)并可使用其居家地址 (home address) 保持可连接性的 IPv6 节点。移动节点是一个IP主机或路由器等,它在改变其Internet接入点时仍然能够保持通信,而不改变它的IP地址。
2) 居家地址 (home address)。 分配给连接到居家链路的移动节点的地址,而且通过该地址始终可以访问相应的移动节点,无论其在 IPv6 网络上位于何处。由于居家地址总是分配给移动节点,因此移动节点在逻辑上总是连接到居家链路。
3) 居家代理 (home agent) 居家链路上的一台路由器,保存离开居家地址的移动节点的注册信息及其当前地址。虽然上图中的居家代理充当将居家链路连接到 IPv6 网络的路由器,但是居家代理不是必须提供这项功能。居家代理也可以是居家链路(当移动节点连接到居家链路时不执行任何转发操作)上的一个节点。
5 IPv6移动通信机制
在IPv6移动通信系统中,节点(包括路由器)开始的时候置居家地址。把节点接口标识符和已知的居家链路前缀连接就生成了居家地址[3]。当移动节点连接到它的居家链路上时,路由器发现机制能帮助主机识别本地路由器,它与通信节点之间按照传统的路由技术进行通信,不需要移动IPv6的介入。
5.1 移动主机位置判定与获得转交地址
5.1.1 首先判定移动主机当前的位置
IPv6协议中一个重要特性就是邻居发现机制[4]。移动节点通过邻居发现机制检测自己是否已漫游至外地链路上。发现机制中定义了两条报文:路由器请求和路由器广播。在路由器广播报文中包括IPv6报头、ICMPv6路由器广播(固定部分)和前缀信息可选项三大部分,从可选项的网络前缀域可以判定移动主机当前位置和进行移动检测。移动主机检查接收到的广播消息中的网络前缀,假如与移动主机居家地址前缀相同,则移动主机连接在居家网络,此时应通知居家代理已返回居家链路;假如没有一个网络前缀与移动主机的居家网络相同,则移动主机就一定连在外地链路上,此时移动主机从最近接收的广播消息中的网络前缀与先前收到的对比,来决定移动主机位置是否移动。
5.1.2 获得转交地址
若移动节点发现自己已经移动到外地链路上时,移动节点的居家地址保持不变,同时它将在收到的路由器宣告信息的基础上,通过地址自动配置过程获得一个外地链路上的临时IP地址,即转交地址。
移动主机可以通过两种方法获得转交地址:被动地址自动配置和主动地址自动配置。通过ICMPv6路由器广播报文中定义的M比特的取值来选择采用哪种方法:
M=0时,采用被动地址自动配置,通过DHCPv6和PPP的IPv6配置协议由服务器向移动主机提供转交地址;
M=1时,采用主动地址自动配置,从ICMPv6路由器广播报文中得到外地链路的网络前缀,再加上移动主机与外地链路的接口标记(48bit的物理地址或MAC地址)相连,形成自己的转交地址。
移动主机可以同时拥有一个或多个转交地址,但仅有一个转交地址被注册为“主转交地址”。
5.2 绑定治理
移动主机的居家地址和转交地址之间的关联称作移动主机的一个绑定(Binding)。在移动IPv6绑定治理机制中定义了三种消息:“绑定更新”、“绑定认可”和“绑定请求”,都放在目的地可选报头(IPv6的一个扩展报头)中。这三种消息用于移动主机和居家代理或通信节点之间进行通信,也能使通信节点及时了解和缓存与移动主机转交地址之间的绑定。
通信节点可以主动发送一个“绑定请求”消息到移动主机,要求移动主机向它发送“绑定更新”消息,以得到移動主机的当前转交地址和缓存最新绑定。以后通信节点就可以利用移动主机的主转交地址直接向移动主机发送数据包,而不必经过居家代理转发。
5.3 动态居家代理地址发现[5]
当移动主机向居家代理注册“主转交地址”时,它可能不知道居家链路上能够具有居家代理功能的路由器的地址。或者当移动主机离开居家链路之后,原来的居家代理出现故障或路由器出现重新配置。为此,移动主机向居家网络发送“ICMP居家代理地址发现请求”消息,该数据包IP报头的源地址字段中使用移动主机的转交地址。在居家链路上接收到请求消息的居家代理将返回“居家代理地址发现应答”消息,在消息中给出自己的IP地址,另外也给出了居家链路上其他居家代理IP地址的列表。当一个移动主机配置了一个新的转交地址并决定要使用该地址作为它的主转交地址时,移动主机通过发送给居家代理一个“绑定更新”消息来注册这个新的绑定。移动主机周期性地重发“绑定更新”消息,直到居家代理发回应答消息。
移动主机在接收到“ICMP居家代理地址发现应答”消息之后,就向发送此消息的居家代理源地址发送“绑定更新”以进行注册;另外,由于移动主机能够从应答消息中得到居家链路上其他居家代理的地址,所以移动主机将按着居家代理的列表顺序来发送“绑定更新”消息。
假如居家链路上的某个居家代理上有一个合法的注册,那么移动主机在进行新的注册时,必须首先对这个居家代理进行注册更新。假如这个注册过程失败或被拒绝,那么移动主机就要向居家链路上其他的居家代理进行注册。假如移动主机不知道居家链路上其他居家代理的地址,那么它将执行“动态居家代理地址发现”机制。
5.4 通信注册过程
通信注册过程由以下几个部分组成:
5.4.1 迂回路由过程 (Return Routability procedure)
为了证明通过移动节点的居家地址和转交地址均可对其进行访问,移动节点和通信节点将执行迂回路由过程。需要通过该证明来防范各种连接劫持和拒绝服务攻击。在执行迂回路由过程时,移动节点会向通信节点发送两个不同的测试数据包。其中一个通过居家代理进行发送,而另一个则直接发送给通信节点。通信节点将响应发送给测试数据包,而且每个响应都包含一个加密令牌。
5.4.2 交换绑定更新 (Binding Update) 和绑定应答 (Binding Acknowledgement) 消息
完成迂回路由过程之后,移动节点将向通信节点发送一条移动 IPv6 绑定更新消息。绑定更新消息包含使用通信节点在迂回路由过程中所发送的加密令牌计算的身份验证数据。由通信节点验证身份验证数据。这一验证并属于强加密身份验证,但足以防范大多数攻击类型。如果此身份验证数据有效,那么通信节点将在其绑定缓存中为移动节点添加一个条目,并发送一条绑定应答消息。
5.4.3 收到绑定应答消息时,移动节点将在其绑定更新列表中为通信节点添加一个条目
5.5 双向隧道与路由优化
被封装的数据包在公共互联网络上传递时所经过的逻辑路径称为隧道。被封装的数据包在隧道的两个端点之间通过公共互联网络进行路由,一旦到达网络终点,数据将被解包并转发到最终目的地。
在移动 IPv6通信系统中,通过居家代理在通信节点和移动节点间建立的数据包隧道称为双向隧道[6]。双向隧道确保了当移动节点不在居家链路上时,总是可供访问,即便通信节点不支持移动 IPv6。然而,双向隧道会导致严重的传输延迟。
在移动节点和支持移动 IPv6 的通信节点间直接发送数据包的过程称为路由优化。路由优化消除了与双向隧道相关联的传输延迟,并需要通过它来为具有时间要求的流量(比如:Voice over IP,VoIP)提供充足的性能。
5.6 IPv6移动数据传送
完成了通信注册过程之后,通信节点中缓存有移动节点转交地址的绑定时,就可以利用IPv6选路报头中目的可选项直接将数据包发往移动节点。此时采用的是从源通信节点到移动节点的一条优化路径,即移动节点和通信节点使用路由优化功能来交换数据包。
如果通信节点不支持移动IPv6,或者还未完成通信注册,不知道移动节点的转交地址时,那么通信节点将数据包发往移动节点的居家地址,居家代理拦截数据包,并使用 IPv6-over-IPv6 隧道将其发送到移动节点。即移动节点和通信节点使用双向隧道功能来交换数据包。
如果通信节点支持移动 IPv6,并且已经完成了通信注册,那么移动节点的数据包将直接被发送到通信节点。这些数据包包含一个新的居家地址選项。该选项位于含有该移动节点居家地址的目标选项 (Destination Options) 报头中。
6 移动IPv6对IPv6通信节点和路由器的要求
作为IPv6协议栈的一部分,移动IPv6路由技术的实现对IPv6的通信节点和路由器提出了一些非凡的要求[7]:
6.1 对IPv6通信节点的要求
每个IPv6节点在任何时刻都可能成为一个移动节点的通信节点;每个IPv6节点必须能够处理包含在IPv6数据包中目的地可选项即“居家地址”选项;每个IPv6节点应能处理接收到的“绑定更新”选项,并能返回“绑定应答”选项;每个IPv6节点应能进行绑定治理。
6.2 对IPv6路由器的要求
每个IPv6路由器都支持邻节点搜索功能,支持ICMPv6路由器发现机制;每个IPv6路由器应能够以更快的速率发送“路由器广播消息”;在移动节点的居家链路上至少应该有一个路由器作为它的居家代理。
所有的IPv6路由器都具有ICMPv6路由器发现功能。当移动节点位于外地链路时,可以从路由器广播消息中任选一台作为默认路由器,配置相应的路由表,所发出的数据包均通过该路由器选路。
网络中许多路由器都具有入口过滤规则的限制:不答应源地址不正确的数据包通过。当移动节点在外地发送数据包时,通常它将使用当前的转交地址作为数据包报头中的源地址,按照传统规则这些数据包将会被丢弃。而在移动IPv6定义了一个附加的IPv6目的地选项即“居家地址”选项,使采用转交地址作为IPv6报头的源地址的数据包将正常通过。
7 结束语
当移动节点漫游至外地链路上时,要经过移动节点位置的判定,移动节点获取转交地址,发现居家代理地址,通过绑定治理,进行通信注册等一系列的关联过程,最后IPv6移动节点和通信节点使用双向隧道和路由优化功能就能实现数据包的传送。
参考文献:
[1] 周逊.IPv6下一代互联网的核心[M].北京:电子工业出版社,2003.
[2] Narten T, Nordmark E, Simpson W. RFC 2461 Neighbor Discovery for IP Version 6(IPv6). Dec. 1998.
[3] RFC2463 Internet Control Message Protocol(ICMPv6) for the IPv6 Specification.
[4] 张玉军.可信的移动IPv6网络及协议[M].北京:科学出版社,2008.3.
[5] 姜悌.移动IPv6技术[J].航空电子技术,2005,9(36):44-46.