kaiyun官方注册
您所在的位置: 首页> 通信与网络> 业界动态> 移动IPv6路由关键技术及其优化

移动IPv6路由关键技术及其优化

2008-07-21
作者:文俊浩1, 田凤斌2, 吴中福2

摘 要:移动IP路由技术及其优化是移动IP发展过程中需要重点解决的问题。简要讨论了移动IP路由技术的发展历程,重点论述了移动IPv6的返回路由可达过程和绑定" title="绑定">绑定过程,提出了今后要解决的问题。
关键词:移动IP IPv6 路由优化


  移动IPv4“三角路由”问题的存在,不仅严重浪费了网络资源,造成了网络通信效率的极度下降,并使MN与CN的通信受到HA和家乡链路的巨大影响[1]。随着移动IPv6的提出,“三角路由”问题得到了解决,使得路由效率大大提高。然而该效率的提高是以更多的安全考虑和引入更多的移动信息" title="移动信息">移动信息为代价的。针对移动IPv6的问题,提出了一种新的思路与方法——OMIPv6,在移动IPv6的基础上对路由优化做进一步的改进。
1 移动IPv6路由优化模式
1.1现有移动IPv6路由的不足

  IPv6的引入,使得IP地址短缺现象得到了解决,因而在移动IPv6里无需FA的存在,通过引入绑定机制,当CN在自己的绑定缓存里找到了MN的位置后,便可将发往MN的数据包无需经过HA而直接到达MN。CN和MN通过二者之间的直接路径交换数据包,避开了HA,极大地节约了网络资源,并减少了因HA和家乡链路故障而造成的影响[1],比移动IPv4大大前进了一步。其路由优化如图1所示。


  然而,移动IPv6的路由优化模式需要通信双方共同计算一个共享密钥,通过该共享密钥对BU(Binding Update)和BA(Binding Acknowledge)进行认证。出于安全考虑,该共享密钥有一个生存期。在生存期快到时,通信双方需要重新计算一个新的Kbm(binding management Key)。对MN而言,每次计算一个新的Kbm时,都需要与CN交换4个移动信息(CoTI&CoT,HoTI&HoT),以便RRP(Return Routability Procedure)的正常运行。4个信息如果任意丢失一个,MN都需要与CN交换至少两个以上的额外信息。这么多的移动信息的引入,给移动IPv6 的通信带来了极大的负担。此外,从冗余度方面考虑,在移动IPv6的路由优化模式下,绑定更新认证过程使得MN与CN、MN与HA通信时分别需要1.5个和1个往返时延。这对于那些对时间敏感的应用是不可行的。最后,从安全的角度看,由于每次MN执行RR测试时,MN与CN通信时有两个信息是以明文方式进行传输,CN与HA通信时也有两个信息是以明文方式传送,这给攻击者进行攻击提供了可乘之机。综上所述,移动IPv6的路由优化模式在移动信息的数量、冗余度以及安全方面都付出了高昂的代价。
1.2 返回路由可达过程(return Routability Procedure)
  移动IPv6定义了两种不同的模式解决移动问题:双向隧道模式与路由优化模式。前者因为其自身的局限性(如根本没有进行优化)限制了应用。而后者因为对路由进行了优化而得到了极大的发展。简单来说,路由优化模式通过引入一个新的移动报头和依靠MN移动时交换的移动信令来实现。
  在路由优化模式下,移动IPv6引入了一个返回路由可达过程(RRP),通过它保证MN与CN通信时的安全,其原理是通过对MN与CN之间交换的信令进行加密来对它们之间的登记进行认证。通过RRP,CN知道是否能够使用MN通告的转交地址和家乡地址访问MN;如果RRP测试失败,CN将既不能接收MN的绑定更新,也不能直接发送分组到MN的转交地址。其测试方法是通过两个消息对(HoTI和HoT,CoTI和CoT)分别测试目的地址是家乡地址和转交地址的分组是否能够到达MN,并最后决定是否可以据此接收来自MN的绑定。
  简单说来,MN发送绑定更新BU来更新CN的绑定缓存表项(Binding Cache Entry),总共需6条信息。MN与CN在二者直接相连的路径上交换CoTI&CoT,通过MN的HA交换HoTI&HoT,在这4条信息成功交换后,MN再发送BU至CN,CN发送BA给MN对BU进行确认。前4条信息就构成了RRP。具体过程如图2所示。


  从消息发出时序看,HoTI和CoTI消息同时发送。作为响应的HoT和CoT也几乎同时返回。HoTI、CoTI、HoT以及CoT消息的源地址、目的地址、传送途径、携带参数如表1所示。


  HoTI用于把MN的家乡地址和Cookie通知CN,请求CN提供家乡密钥生成令牌" title="令牌">令牌。而CoTI主要是把MN的转交地址和Cookie通知CN,请求CN提供转交密钥生成令牌。家乡密钥生成令牌与转交密钥生成令牌的方法相似,其过程如下:
  home keygen token:=
  First(64,HMAC_SHA1(Kcn,(home address | nonce | 0)))
  CN结合自己的节点密钥,也就是Kcn,以及从MN接收到的发送给家乡地址,再结合产生的临时随机数" title="随机数">随机数Nonce,运用HMAC_SHA1算法产生一个家乡密钥生成令牌[1]。HMAC_SHA1是流行的用于创建数字签名的单向散列算法[2]。通过First函数,截取由HMAC_SHA1散列函数产生的 160位的散列值的前64位。转交密钥生成令牌的产生过程也与此大抵相同,只是将家乡地址变成了转交地址,如下所示:
  care-of keygen token :=
  First (64,HMAC_SHA1(Kcn,(care-of address | nonce | 1)))
  用该方法产生的家乡/转交密钥生成令牌用于验证随后接收到的由MN发来的BU也经过了CN的授权,只要节点密钥和Nonce是有效的,这样产生的密钥生成令牌也是有效的。
  HoT则是CN对HoTI消息的响应。HoT由于以MN的家乡地址为目的地址,需要通过HA的中转才能到达MN。此外,来自MN的家乡测试初始Cookie也在HoT消息中返还,以确保这些消息通过了家乡代理和CN的可达路径。发往MN的家乡临时随机数索引,也使CN随后可以迅速有效地找到它创建家乡Cookie所使用的临时随机数,因而是必不可少的。
  CoT消息是CN对CoTI消息的响应,CoT消息被直接发送到MN的转交地址,并且在其中包括转交测试初始Cookie,以便MN确信它们来自CN的可达路径。CoT消息中提供了转交临时随机数索引, 主要是用于标示产生转交Cookie的临时随机数。转交和家乡临时随机数索引在CoT和HoT消息中通常是相同的。
  当MN接收到COT和HOT消息后,RRP过程就全部结束了。
1.3 绑定过程
  ·RRP与绑定过程
  只有通过返回路由可达过程测试,CN才能接收来自MN的绑定更新。所以,RRP对于MN与CN之间的绑定更新和绑定确认具有非常重要的作用。在RRP过程结束之后,MN确信CN既可以通过家乡地址,也可以通过转交地址访问自己,并获得向CN发送BU所必须的数据。MN通过对家乡密钥生成令牌、转交密钥生成令牌进行SHA1散列运算可以得到一个绑定管理密钥Kbm(binding management Key),其过程如下:
  Kbm=SHA1(home keygen token|care-of keygen token)
  通过该Kbm,MN可以向CN发送一个BU,进行CN上的绑定。
  ·MN发送绑定更新信息
  携带绑定更新消息的分组,除了使用MN的转交地址作为源地址和使用CN作为目的地址外,还包括家乡地址、MAC(message authentication codes)、家乡和转交临时随机数索引、顺序号等参数。MN通过创建Kbm对消息的发送进行授权,通过临时随机数索引选项通知CN使用哪个家乡和转交密钥生成令牌进行Kbm的计算。计算MAC时使用的参数包括转交地址、CN地址以及移动报头数据,计算结果将用于产生认证者字段。顺序号字段用于匹配随后接收到的绑定确认。CN一旦验证了MAC的结果,将会为该绑定创建一个绑定缓存表项。
  ·CN响应绑定确认信息
  对于绑定确认信息,携带的参数主要是顺序号和一个MAC编码。顺序号字段来自相应的绑定更新。MAC编码的计算根据是转交地址、CN地址以及绑定确认消息的部分内容,与绑定更新消息中MAC编码的计算类似。
  因为移动节点在不断移动,所以转交地址也在不断变化,也就造成了转交密钥生成令牌的变化,最终使得Kbm不断变化。对于Kbm的更新可以与Nonce一同进行,这样一个Nonce索引可以同时标示这两个值。因此,老的Kbm也应该与老的Nonce一同保留。
  在发送BU之前,MN必须等待家乡和转交密钥生成令牌生成Kbm。然而,由于资源的限制、绑定的快速删除及节点的重新启动,当CN使用这些密钥生成令牌处理BU时,密钥生成令牌不能保证仍然是“新鲜”而且可以接受的。当它们变得太旧时,CN将在BU中使用一个错误的编码通知MN,使它重新尝试RRP。移动IPv6协议规定了临时随机数有一个最大的生存期(MAX_TOKEN_LIFETIME)。在该生存期内,临时随机数都是可用的,密钥生成令牌在该段时间内也被认为是可用的,所以,MN可以把它用于多次的RRP。一个典型的例子就是节点快速移动时,在新的位置可以重复使用最近来自于CN的家乡密钥令牌,并且仅仅获得一个转交密钥生成令牌以表示它在新位置的可达性。虽然由于转交和家乡返回路径可达测试本质上是可行的,但通过HA中转的家乡测试通常会花费更长的时间。尽管如此,这种优化在很多情况下也是有用的。对于有多个家乡地址的MN,也可以为这些地址使用相同的转交密钥生成令牌。
  通过上述情况分析,RRP不仅能够防范有权访问互联网上某一特定路径的潜在攻击者,还能有效地防止重防攻击[6],因而给MN和CN的通信提供了安全保证。
  尽管移动IPv6的RRP机制能够使MN与CN的通信基本上安全可靠。然而,RRP机制同样给二者之间的通信带来了较大的负荷,使得移动信息大大增加。要在移动IPv6路由优化的基础上再进行优化,必须在保证安全的前提下尽可能减少移动信息量。在此基础上,人们又提出了OMIPv6的概念。OMIPv6与移动IPv6路由优化模式相比,大大减少了移动信令并且使之更不易受外部的攻击,极大地提高了效率[3]
2 OMIPv6优点及原理
2.1 OMIPv6优点

  OMIPv6与移动IPv6的路由优化模式相比,至少具有以下优点[3]
  ·大大减少了恶意节点实施欺骗的可能性。通过将HoT和CoT灵活地结合在一起,将易受攻击的漏洞减少到最小。
  ·不需要对密钥的分发专门进行管理,因而减少了可扩展性问题。
  ·与传统移动IPv6相比,OMIPv6使用一个更长的共享密钥,破解更困难。
  ·OMIPv6大大减少了移动信息,使得HoTI/CoTI、HoT/CoT信息的交换较少依赖于网络切换过程。
2.2 OMIPv6原理
  从前面的分析可知,虽然移动IPv6的路由优化解决了移动IPv4的“三角路由”问题,但在移动信息的数量、冗余度以及安全方面都付出了高昂的代价。OMIPv6[5]正是在这样的前提下提出来的。它使MN与CN之间的绑定更新和绑定确认信息的交换更安全、更可靠。同时大大减少了需要交换的移动信息,并在一定程度上减少了因切换带来的冗余。
  首先,OMIPv6引入了一个更长的共享安全密钥。该共享安全密钥来源于Diffie-Hellman[4]算法交换,当MN成功地与CN的地址进行家乡和转交地址测试后,就会引发DH交换。在MH与CN之间交换的DH信息都会被最新的RR(Return Routability)测试所产生的Kbm鉴定。DH交换允许通信双方都建立一条双向的安全关联" title="安全关联">安全关联,该安全关联独立于通常的公共密钥体系,而移动IPv6的路由优化模式并没有建立安全关联。
  其次,DH信息交换的路径必须与RR测试信息交换路径相同。所以,MN首先使用Kbm对第一个DH信息进行标记,然后发送给CN。MN通过使用家乡地址选项将家乡地址随同DH信息一同发出。CN使用同样的Kbm对第一个DH信息进行标记并复制一份。CN发出的第二个DH信息首先通过直接路径发送,同时,CN将第二个DH信息复制一份,将该信息经过MN的HA发送给MN。两条信息到达MN后进行比较,如果相同,MN发送第三个DH信息给CN,CN再在相同的路径上发送第四个DH信息给MN。该方法能有效防止中间人(MiTM)的攻击。DH处理使通信双方计算一个称之为Kabm(authenticated binding anagement key)的长的共享安全秘钥。该Kabm的作用是对MN与CN之间的绑定更新/绑定确认信息进行认证。DH交换能够在通信双方会话期间随时发起,例如,在第一次RR测试后立刻发起DH交换。这样,极大地减少了通信双方需要交换的移动信息,大大提高了通信效率。
  目前,OMIPv6仍然有许多需要改进的地方,如对长的安全秘钥的验证要花费更多的时间(与传统的移动IPv6路由优化相比),尽管对网络切换的依赖没有传统的移动IPv6的路由优化强,但仍然有所依赖。


参考文献
1 D. Johnson, C. Perkins, J. Arkko. Mobility Support in IPv6 [J].RFC3775,2004;(6)
2 D. Eastlake, P. Jones.US Secure Hash Algorithm 1 (SHA1).RFC 3174,2001
3 Wassim Haddad, Francis Dupont.Optimizing Mobile IPv6 (OMIPv6). work in progress,2004;(2)
4 E.Rescorla.Diffie-Hellman Key Agreement Method.RFC2631,1999;(6)
5 W. Haddad, L. Madour, J. Arkko, F. Dupont. Applying Cryptographically Generated Addresses to Optimize MIPv6 (CGA-OMIPv6), 2005;(3)
6 Bruce Schneier著, 吴世忠译.应用密码学[M].北京:机械工业出版社,2000

本站内容除特别声明的原创文章之外,转载内容只为传递更多信息,并不代表本网站赞同其观点。转载的所有的文章、图片、音/视频文件等资料的版权归版权所有权人所有。本站采用的非本站原创文章及图片等内容无法一一联系确认版权者。如涉及作品内容、版权和其它问题,请及时通过电子邮件或电话通知我们,以便迅速采取适当措施,避免给双方造成不必要的经济损失。联系电话:010-82306118;邮箱:aet@chinaaet.com。
Baidu
map