论文部分内容阅读
[摘 要] IPv6在下一代互联网中将被广泛使用,IPv6支持移动的特性能够将固定网络和无线网络紧密地结合起来。本文介绍了移动IPv6基本工作原理,并在此基础上详细介绍了移动IPv6的各种网络切换方法,并对各种切换方法的优劣进行了分析和比较,最后对移动IPv6技术做出了展望。
[关键词] 移动IPv6;平滑切换;快速切换;无缝切换
[中图分类号]F724.6;TP393.03[文献标识码]A[文章编号]1673-0194(2008)17-0101-04
1 引 言
随着移动通信和互联网行业的全面融合,可以实现在任何地方、任何地点能与任何人进行通信,在移动中享受音乐、视频和上网等服务。而实现这些服务的核心就是支持移动通信的IPv6协议。
2 移动IPv6的概述
2. 1移动IPv6的目标
IETF所提出的基于IPv6移动通信的目标在于:解决地址短缺的问题,使得所有的移动设备都能够分配到一个全球有效的IPv6地址;减小路由表的长度;简化路由协议,提高吞吐量与带宽的利用;提供比IPv4更好的安全性能;更加关注服务类型,特别是实时数据;通过指定允许范围帮助实现组播;允许主机不改变地址而实现漫游;协议未来的可扩充性;允许新旧协议共存[1]。
2. 2节点的切换
移动IPv6的特点就是能在不同的网络间进行切换而保持连接节点的通信。其中的切换主要指的是节点从一个网络移入到了另一个拥有不同网络前缀的网络中,主要包括两个层面:链路层的切换和网络层的切换。当移动节点进行网络的切换时首先是链路层的切换,包括有线网络和无线网络。涉及了底层的通信技术,主要包括无线通信中的链路层触发机制[2]。网络层的切换主要是通过网络IP层地址绑定信息的交互来建立隧道,本文所讨论的所有网络切换算法的实现都是基于IP层的。
2. 3切换过程
图1所示的是移动IPv6的工作模型,根据IETF的移动IPv6工作组对在草案[3]中提出的概念,移动节点在IPv6网络中移动的过程如下:
移动前:当移动节点(Mobile Node MN)没有移动时,处于自己的网络N1中时拥有本地IPv6地址,即移动前的地址(Previous Care of Address,PcoA)。此时当对等节点(Correspondent Node CN)向MN发送数据时,数据通过MN所在网络的接入路由( Previous Access Router,PAR)转发到MN上。当MN从网络N1移动到网络N2,此时地址PcoA将失效。
获得转交地址:当移动节点移动到网络N2后,必需在新网络注册且要获得一个能在网络N2中有效的唯一的IPv6地址,这时称为新转交地址(New Care of Address,NcoA),该地址的获取算法在文献[4]中介绍。
注册:在移动节点获得了转交地址NcoA后,就会发送绑定更新消息(Binding Update,BU)向PAR去注册这个地址, 本地代理也会返回一个(Binding Acknowledgement,BAK)确认数据包信息,表示注册成功。
拦截转发:注册成功后,本地代理即N1中的默认接入路由器将拦截发往MN的移动前的转交地址的所有报文,并把这些报文转发给MN的当前有效地址NcoA。
直接通信:当移动节点接收到本地代理转发的由CN发送的报文后,移动节点可以发送BU消息给对等节点CN,通知CN自己当前的地址。CN收到后就可以将之后的数据直接发送到MN上,从而实现了路由的优化。
3 平滑切换
3. 1问题的提出
在移动的过程中,当MN移入新的网络,还未将新地址向PAR和CN绑定时,如果此时正好有CN节点在和MN通信,则从CN发出的数据将到达MN移动前的网络的接入路由PAR,由于PAR未收到MN的新地址绑定消息而直接将数据流发往MN在PAR中的所用地址PCoA,但由于MN已经移出该网络,故将导致发出的数据丢失。如果绑定所用的时间过长则会导致丢失过多的数据报文而使通信性能下降。
3. 2切换的控制方式
节点在网络中平滑切换的控制方式有两种:移动节点控制切换网络作为辅助(Mobie Controled Network Assist,MCNA)方式和网络控制切换移动节点作为辅助(Network Controled Mobile Assistant,NCMA)方式。前者是由移动节点MN进行引导来完成整个切换过程,后者则是由网络进行引导来完成整个切换过程。
3. 3平滑切换方法
IETF工作组提出了一种为解决移动切换丢失报文问题的平滑切换方法,其思想就是在网络中的节点移出网络后且尚未完成对新网络的注册的时候或是未完成在PAR上的地址绑定时, 从CN发出的数据报文在到达网络后将存储在网络的接入路由PAR或NAR上,当MN发出了绑定注册消息后再将AR上缓存中的数据向MN发送。对于不同的切换控制方式,分别有相应的切换算法。
在切换开始的时候移动节点还在PAR网络中时会进行两步操作:一是PAR向移动节点MN发送路由通告信息RA,来告诉MN节点自己是否支持平滑切换的路由协议。二是 MN向PAR发送平滑切换的初始化消息,通知PAR进行内存的初始化分配工作。此后PAR将作为代理拦截由CN发往MN的报文,并存入缓存。
在MCNA方式下,MN利用包括像路由通告信息、链路层的一些信息等方法来判断出自己的链路的更换信息。当确定更换到了新的网络后就会向NAR发送内存初始化的消息,要求NAR根据消息进行内存的初始化工作,消息中含有缓存转发的选项设置。当NAR收到了该消息后会开辟内存空间,并将缓存转发消息发送至PAR。PAR收到后会返回一个确认消息,然后将缓存数据转发至NAR,并由NAR发送到MN的新地址。
在NCMA方式下,网络可以通过各种元素判断出MN何时在两个AR之间的交换。这样做的优点就是NAR可以通过PAR得知切换之前的MN的状态消息,由此来进行缓存的初始化,进而PAR缓存的报文将直接发送至NAR而不需要MN发送显示的请求信息。当MN移入NAR网络,注册完之后,NAR就将其缓存的数据转发给MN[5-6]。
平滑切换也存在某些不足之处,比如:高层协议的重传问题,这样会导致网络资源的浪费和性能的不稳定;报文乱序的问题;平滑切换由于没有考虑到切换的时延,从而使其不适合用于对实时性要求较高的数据通信应用中。
4 快速切换
4. 1问题的提出
IETF在移动IPv4的基础上增加了路由优化技术到移动IPv6技术中,解决了网络的三角路由问题从而降低了网络延迟,但仍然存在一些使数据延迟的因素,包括对节点的行为方向判断,以及节点在新网络中新地址的获得和对HA,CN节点的注册。过大的延时会导致数据报文的丢
失,使得TCP认为是网络的拥塞而导致重传或停止通信。对一些实时性的应用,要求数据传输的延时低,否则就会降低整个通信的质量。
4. 2快速切换方法
快速切换能降低网络切换延时,交换协议开始是从MN向当前所在网络的接入路由PAR发出代理路由请求消息RtSolPr,这是通告网络将要进行快速切换,其中包含了新网络的接入点的链路地址。作为回应,PAR将向MN发送一个代理路由通告信息PrRtAdv来告诉MN它所申请的地址是可知的、未知的或是连接PAR的另一条链路。如果是连接到同一个路由器上的不同链路那么就不需要做切换了,因为MN仍在PAR的网络中,这种情况往往发生在同一路由中的MN从无线链路转变到有线链路。
若RtSolPr消息中申请的链路地址是PAR已知的外部网络信息,MN就会在PAR中完成新网地址的生成和配置,称之为转交地址的预先配置。交换的过程将如图2所示。
这种方式下的PtRtAdv消息中包含了确认的新网络的地址前缀,MN可以通过该信息来形成在新网络的有效地址NCoA[4],这样MN就会向PAR发送快速切换的地址绑定消息FBU, 该消息使得PAR能够将MN移动前的有效地址PCoA 和NCoA 地址绑定在PAR上,以便当MN在移入新网络后PAR可以将发往MN的报文转发到MN的新地址。在PAR得到NCoA后需要进行地址验证,这时就会向NAR发送切换初始化消息HI,其中包含了NCoA。当NAR收到这个地址后将会在本网中验证这个地址是否为有效[4],然后通过HAck消息告知PAR。若地址无效,NAR将会产生一个有效的IPv6地址在HAck消息中返回。这样PAR会得到一个最终有效的地址,然后通过FBAck消息通知到MN,同时也向NAR发送一个FBack消息来对最后地址绑定的一个确认。这样就在PAR和NAR之间建立起了一条隧道,之后发向MN的PCoA地址的数据就会在PAR上通过隧道到达NAR。当MN移入新网络向NAR发送了通告消息FNA进行地址注册后,NAR就会知道MN在本网络,并把从PAR发送过来的数据转发到MN上。
如果PAR上没有请求地址信息,或者MN移动得太快,或者是FBACK消息在中途丢失等情况下,MN在移入新网络之前就收不到FBACK消息。那么切换的方式就会变成如下图3所示。
当MN完成与PAR之间的RtSolPr和PrRtAdv消息的交换后就直接移到了NAR的网络里,之后MN就将绑定消息FBU封装在FNA消息中发向NAR。NAR从FNA消息中取出FBU消息然后将其中的MN的新地址进行验证,如果新生成的地址已经被使用,则将由NAR返回一个NAACK消息,其中包含了一个由NAR生成的有效地址并且MN将使用此地址。然后NAR将向PAR发送FBU消息, 在PAR处将MN的新旧地址绑定。PAR会向NAR发送一个FBACK来确认消息。PAR就可以将发向MN的PCoA地址的数据立即发向MN的NCoA。这样就完成了MN的快速切换。
以上讨论的是在由移动节点控制的情况下的切换。如果在网络的控制下进行切换,首先是由网络判断出MN即将发生切换,然后PAR就会直接向MN发送PrRtAdv消息,其中有NAR网络的链路信息。MN通过该消息来生成新的转交地址NCoA, 并会通过FBU消息向PAR进行地址绑定。之后的操作与上述的基本相同[7]。
6 总 结
本文对移动IPv6进行切换时产生的问题进行了分析探讨,并详细介绍了解决这些问题的各种切换方法,分析了各自的优劣性,最后提出了一些在移动IPv6切换中值得研究的问题。结合IPv6的很多新特性,建议未来移动网络应首选移动IPv6协议。从目前的研究情况来看,要能够实现移动IPv6的商业化的应用,还需要一套完善的切换机制来进行支持,同时也要考虑到不同的应用类型和不同的应用环境,移动IPv6的安全问题也要得到很好的解决。
主要参考文献
[1] 李毅,等. 关于移动IPv6技术的探讨[J]. 武汉理工大学学报,2005,25(2):87-90.
[2] D Johnson,et al. Mobile Support in IPv6[S]. draft-ietf-mobileip-
ipv6-24. June,2003.
[3] S Thomson,et al. IPv6 Stateless Address Autoconfiguration[S]. RFC2462,December 1998:10-19.
[4] Rajeev Koodli,et al. A Framework for Smooth Handovers with Mobile IPv6[S]. IETF INTERNET-DRAFT,2000.
[5] Robert Hsieh.A Seamless Handoff Architecture for Mobile IP[R].INFOCOM, 2003.
[6] S Deering,et al.Internet Protocol, Version 6 (IPv6) Specification[S].RFC 2460, December,1998.
[7] J Loughney,et al. Context Transfer Protocol[S]. draft-ietf-seamoby-
ctp-05. October,2003.
[8] Rajeev Koodli. Fast Handovers for MobileIPv6[S]. draft-ietf-mipshop-fast-mipv6-01. January,2004.
[关键词] 移动IPv6;平滑切换;快速切换;无缝切换
[中图分类号]F724.6;TP393.03[文献标识码]A[文章编号]1673-0194(2008)17-0101-04
1 引 言
随着移动通信和互联网行业的全面融合,可以实现在任何地方、任何地点能与任何人进行通信,在移动中享受音乐、视频和上网等服务。而实现这些服务的核心就是支持移动通信的IPv6协议。
2 移动IPv6的概述
2. 1移动IPv6的目标
IETF所提出的基于IPv6移动通信的目标在于:解决地址短缺的问题,使得所有的移动设备都能够分配到一个全球有效的IPv6地址;减小路由表的长度;简化路由协议,提高吞吐量与带宽的利用;提供比IPv4更好的安全性能;更加关注服务类型,特别是实时数据;通过指定允许范围帮助实现组播;允许主机不改变地址而实现漫游;协议未来的可扩充性;允许新旧协议共存[1]。
2. 2节点的切换
移动IPv6的特点就是能在不同的网络间进行切换而保持连接节点的通信。其中的切换主要指的是节点从一个网络移入到了另一个拥有不同网络前缀的网络中,主要包括两个层面:链路层的切换和网络层的切换。当移动节点进行网络的切换时首先是链路层的切换,包括有线网络和无线网络。涉及了底层的通信技术,主要包括无线通信中的链路层触发机制[2]。网络层的切换主要是通过网络IP层地址绑定信息的交互来建立隧道,本文所讨论的所有网络切换算法的实现都是基于IP层的。
2. 3切换过程
图1所示的是移动IPv6的工作模型,根据IETF的移动IPv6工作组对在草案[3]中提出的概念,移动节点在IPv6网络中移动的过程如下:
移动前:当移动节点(Mobile Node MN)没有移动时,处于自己的网络N1中时拥有本地IPv6地址,即移动前的地址(Previous Care of Address,PcoA)。此时当对等节点(Correspondent Node CN)向MN发送数据时,数据通过MN所在网络的接入路由( Previous Access Router,PAR)转发到MN上。当MN从网络N1移动到网络N2,此时地址PcoA将失效。
获得转交地址:当移动节点移动到网络N2后,必需在新网络注册且要获得一个能在网络N2中有效的唯一的IPv6地址,这时称为新转交地址(New Care of Address,NcoA),该地址的获取算法在文献[4]中介绍。
注册:在移动节点获得了转交地址NcoA后,就会发送绑定更新消息(Binding Update,BU)向PAR去注册这个地址, 本地代理也会返回一个(Binding Acknowledgement,BAK)确认数据包信息,表示注册成功。
拦截转发:注册成功后,本地代理即N1中的默认接入路由器将拦截发往MN的移动前的转交地址的所有报文,并把这些报文转发给MN的当前有效地址NcoA。
直接通信:当移动节点接收到本地代理转发的由CN发送的报文后,移动节点可以发送BU消息给对等节点CN,通知CN自己当前的地址。CN收到后就可以将之后的数据直接发送到MN上,从而实现了路由的优化。
3 平滑切换
3. 1问题的提出
在移动的过程中,当MN移入新的网络,还未将新地址向PAR和CN绑定时,如果此时正好有CN节点在和MN通信,则从CN发出的数据将到达MN移动前的网络的接入路由PAR,由于PAR未收到MN的新地址绑定消息而直接将数据流发往MN在PAR中的所用地址PCoA,但由于MN已经移出该网络,故将导致发出的数据丢失。如果绑定所用的时间过长则会导致丢失过多的数据报文而使通信性能下降。
3. 2切换的控制方式
节点在网络中平滑切换的控制方式有两种:移动节点控制切换网络作为辅助(Mobie Controled Network Assist,MCNA)方式和网络控制切换移动节点作为辅助(Network Controled Mobile Assistant,NCMA)方式。前者是由移动节点MN进行引导来完成整个切换过程,后者则是由网络进行引导来完成整个切换过程。
3. 3平滑切换方法
IETF工作组提出了一种为解决移动切换丢失报文问题的平滑切换方法,其思想就是在网络中的节点移出网络后且尚未完成对新网络的注册的时候或是未完成在PAR上的地址绑定时, 从CN发出的数据报文在到达网络后将存储在网络的接入路由PAR或NAR上,当MN发出了绑定注册消息后再将AR上缓存中的数据向MN发送。对于不同的切换控制方式,分别有相应的切换算法。
在切换开始的时候移动节点还在PAR网络中时会进行两步操作:一是PAR向移动节点MN发送路由通告信息RA,来告诉MN节点自己是否支持平滑切换的路由协议。二是 MN向PAR发送平滑切换的初始化消息,通知PAR进行内存的初始化分配工作。此后PAR将作为代理拦截由CN发往MN的报文,并存入缓存。
在MCNA方式下,MN利用包括像路由通告信息、链路层的一些信息等方法来判断出自己的链路的更换信息。当确定更换到了新的网络后就会向NAR发送内存初始化的消息,要求NAR根据消息进行内存的初始化工作,消息中含有缓存转发的选项设置。当NAR收到了该消息后会开辟内存空间,并将缓存转发消息发送至PAR。PAR收到后会返回一个确认消息,然后将缓存数据转发至NAR,并由NAR发送到MN的新地址。
在NCMA方式下,网络可以通过各种元素判断出MN何时在两个AR之间的交换。这样做的优点就是NAR可以通过PAR得知切换之前的MN的状态消息,由此来进行缓存的初始化,进而PAR缓存的报文将直接发送至NAR而不需要MN发送显示的请求信息。当MN移入NAR网络,注册完之后,NAR就将其缓存的数据转发给MN[5-6]。
平滑切换也存在某些不足之处,比如:高层协议的重传问题,这样会导致网络资源的浪费和性能的不稳定;报文乱序的问题;平滑切换由于没有考虑到切换的时延,从而使其不适合用于对实时性要求较高的数据通信应用中。
4 快速切换
4. 1问题的提出
IETF在移动IPv4的基础上增加了路由优化技术到移动IPv6技术中,解决了网络的三角路由问题从而降低了网络延迟,但仍然存在一些使数据延迟的因素,包括对节点的行为方向判断,以及节点在新网络中新地址的获得和对HA,CN节点的注册。过大的延时会导致数据报文的丢
失,使得TCP认为是网络的拥塞而导致重传或停止通信。对一些实时性的应用,要求数据传输的延时低,否则就会降低整个通信的质量。
4. 2快速切换方法
快速切换能降低网络切换延时,交换协议开始是从MN向当前所在网络的接入路由PAR发出代理路由请求消息RtSolPr,这是通告网络将要进行快速切换,其中包含了新网络的接入点的链路地址。作为回应,PAR将向MN发送一个代理路由通告信息PrRtAdv来告诉MN它所申请的地址是可知的、未知的或是连接PAR的另一条链路。如果是连接到同一个路由器上的不同链路那么就不需要做切换了,因为MN仍在PAR的网络中,这种情况往往发生在同一路由中的MN从无线链路转变到有线链路。
若RtSolPr消息中申请的链路地址是PAR已知的外部网络信息,MN就会在PAR中完成新网地址的生成和配置,称之为转交地址的预先配置。交换的过程将如图2所示。
这种方式下的PtRtAdv消息中包含了确认的新网络的地址前缀,MN可以通过该信息来形成在新网络的有效地址NCoA[4],这样MN就会向PAR发送快速切换的地址绑定消息FBU, 该消息使得PAR能够将MN移动前的有效地址PCoA 和NCoA 地址绑定在PAR上,以便当MN在移入新网络后PAR可以将发往MN的报文转发到MN的新地址。在PAR得到NCoA后需要进行地址验证,这时就会向NAR发送切换初始化消息HI,其中包含了NCoA。当NAR收到这个地址后将会在本网中验证这个地址是否为有效[4],然后通过HAck消息告知PAR。若地址无效,NAR将会产生一个有效的IPv6地址在HAck消息中返回。这样PAR会得到一个最终有效的地址,然后通过FBAck消息通知到MN,同时也向NAR发送一个FBack消息来对最后地址绑定的一个确认。这样就在PAR和NAR之间建立起了一条隧道,之后发向MN的PCoA地址的数据就会在PAR上通过隧道到达NAR。当MN移入新网络向NAR发送了通告消息FNA进行地址注册后,NAR就会知道MN在本网络,并把从PAR发送过来的数据转发到MN上。
如果PAR上没有请求地址信息,或者MN移动得太快,或者是FBACK消息在中途丢失等情况下,MN在移入新网络之前就收不到FBACK消息。那么切换的方式就会变成如下图3所示。
当MN完成与PAR之间的RtSolPr和PrRtAdv消息的交换后就直接移到了NAR的网络里,之后MN就将绑定消息FBU封装在FNA消息中发向NAR。NAR从FNA消息中取出FBU消息然后将其中的MN的新地址进行验证,如果新生成的地址已经被使用,则将由NAR返回一个NAACK消息,其中包含了一个由NAR生成的有效地址并且MN将使用此地址。然后NAR将向PAR发送FBU消息, 在PAR处将MN的新旧地址绑定。PAR会向NAR发送一个FBACK来确认消息。PAR就可以将发向MN的PCoA地址的数据立即发向MN的NCoA。这样就完成了MN的快速切换。
以上讨论的是在由移动节点控制的情况下的切换。如果在网络的控制下进行切换,首先是由网络判断出MN即将发生切换,然后PAR就会直接向MN发送PrRtAdv消息,其中有NAR网络的链路信息。MN通过该消息来生成新的转交地址NCoA, 并会通过FBU消息向PAR进行地址绑定。之后的操作与上述的基本相同[7]。
6 总 结
本文对移动IPv6进行切换时产生的问题进行了分析探讨,并详细介绍了解决这些问题的各种切换方法,分析了各自的优劣性,最后提出了一些在移动IPv6切换中值得研究的问题。结合IPv6的很多新特性,建议未来移动网络应首选移动IPv6协议。从目前的研究情况来看,要能够实现移动IPv6的商业化的应用,还需要一套完善的切换机制来进行支持,同时也要考虑到不同的应用类型和不同的应用环境,移动IPv6的安全问题也要得到很好的解决。
主要参考文献
[1] 李毅,等. 关于移动IPv6技术的探讨[J]. 武汉理工大学学报,2005,25(2):87-90.
[2] D Johnson,et al. Mobile Support in IPv6[S]. draft-ietf-mobileip-
ipv6-24. June,2003.
[3] S Thomson,et al. IPv6 Stateless Address Autoconfiguration[S]. RFC2462,December 1998:10-19.
[4] Rajeev Koodli,et al. A Framework for Smooth Handovers with Mobile IPv6[S]. IETF INTERNET-DRAFT,2000.
[5] Robert Hsieh.A Seamless Handoff Architecture for Mobile IP[R].INFOCOM, 2003.
[6] S Deering,et al.Internet Protocol, Version 6 (IPv6) Specification[S].RFC 2460, December,1998.
[7] J Loughney,et al. Context Transfer Protocol[S]. draft-ietf-seamoby-
ctp-05. October,2003.
[8] Rajeev Koodli. Fast Handovers for MobileIPv6[S]. draft-ietf-mipshop-fast-mipv6-01. January,2004.