一种层次型移动IPv6的MAP选择机制的研究
2016-12-26孙文胜王宇飞
孙文胜 王宇飞
(杭州电子科技大学通信工程学院 浙江 杭州 310018)
一种层次型移动IPv6的MAP选择机制的研究
孙文胜 王宇飞
(杭州电子科技大学通信工程学院 浙江 杭州 310018)
在MIPv6(Mobile IPv6,移动IPv6)的基础上,学者们提出了HMIPv6 (Hierarchical MIPv6,层次移动IPv6)。但是HMIPv6的移动锚点MAP(Mobile Anchor Point)选择机制存在MAP负载过于集中、MAP中路径过长等问题。在HMIPv6的基础上,提出一种基于位置区域的MAP选择机制,使MN(Mobile Node)主动选择最适合自己的MAP。仿真结果显示,负载不再集中在某一MAP上,MN选择了最适合的MAP,缩短了MAP到MN的路径。
HMIPv6 MAP 负载均衡
0 引 言
随着IPv6的普及和移动互联网的迅速发展,互联网工程共建组织IETF(Internet Engineering Task Force)在MIPv4和IPv6[3]的基础上提出了MIPv6,满足人们对于移动上网的需求。但是由于MIPv6还是存在着切换时延高、协议复杂等缺点,学者们相继提出了FMIPv6快速移动IPv6(Fast-handover MIPv6)HMIPv6[10]等。FMIPv6的基本思想是在二层切换时提前配置转交地址,因为提早进行检测因此缩短了重复地址检测DAD(Duplicate Address Detection)的时间,达到了减小切换延时的目的。同时在原先的接入路由器PAR(Previous Access Router)和新的接入路由器NAR(New Access Router)之间建立隧道传输切换过程中缓存的数据分组,降低了丢包率[5]。HMIPv6的基本思想是引入MAP对MN的移动进行管理,对于MN在MAP域内的移动能够减少网络中信令的传输,达到减小切换时延的目的。现在移动IP切换的研究热点主要集中在DAD检测时延的缩小[1]和MAP选择机制的改进[2,7],都是为了达到MN在切换过程中减少延时和减少丢包率的目的。
1 HMIPv6的工作原理
在MIPv6的基础上,HMIPv6引入了MAP进行域的管理。
MAP的作用就是帮助MN向HA(Home Agent,归属代理)进行注册,并充当HA的角色进行数据的转发,每个域中都有一个MAP或者多个MAP,每个MAP都有自己的管理域范围。在HMIPv6中每个MN都有两个转交地址,即区域转交地址RCoA(Regional Care-of Address,)和链路转交地址LCoA(Link Care-of Address)。MN的LCoA是MAP内部的转交地址,是MN根据AR的子网前缀进行计算出来的,而RCoA是MN向HA和通信对端CN(Correspondent Node)注册的地址。LCoA和RCoA的绑定关系存储在MN所选择的MAP的缓存中,MAP根据绑定关系转发数据分组到相应的MN。
HMIPv6对于MIPv6的改进主要体现在减少了绑定更新的报文,缩短了域内切换的时间。当MN在同一MAP管理域内的不同接入路由器AR(Access Router)之间进行微移动时,MN只需要重新配置LCoA就可以了。由于MN还在同一个MAP管理域内,因此MN的RCoA值不变,只需要更新相应MAP缓存中的绑定就可以,不需要向HA或者CN进行相应的绑定更新,减少了网络中的信令负载。特别是当MN处于离HA或者CN的位置特别远的情况时,能够极大地缩短切换所需的时间[9]。
当MN接入到新的AR时,MN能够接收到AR发出的路由通告RA(Router Advertisement)消息。RA消息包含了MAP的分层列表和各层MAP的信息。MN选择不同的MAP,对于MAP的负载影响巨大,甚至能够进一步影响到MN的通信延时和丢包率,因此MAP选择机制的选择是一项非常重要的课题。学者们也对MAP选择机制进行了研究,现阶段的MAP选择机制主要有基于距离的MAP选择机制、基于速度的MAP选择机制和基于拓扑的MAP选择机制。其中HMIPv6草案中规定的MAP选择是基于距离的选择机制,为了减少MAP域间切换的次数,选择了距离MN最远的MAP[6]。但是这样就导致了最高级MAP的负载过于集中,同时MN到MAP之间的距离过长,增加了MN的延时。
2 基于位置区域的MAP自适应选择算法
2.1 改进的RA消息
根据HMIPv6标准,当MN进入AR的范围内时,能够接收到AR发送的RA消息[8]。AR的RA消息包含了该AR所属的MAP分层列表。
由于MAP大多数是固定的,所以MAP的相关信息,比如MAP的所在位置、该MAP所管理域的大小基本是固定不变。基于位置区域的自适应选择算法就是将MAP的这些相关消息存储在AR中,利用RA消息发送到MN。MN可以接收到该AR所属各层级的MAP的管理区域大小,应用于MAP的初选择。
但是网络的覆盖有时也会进行优化,所以MAP的覆盖区域可能会变化,这就需要MAP对AR中存储的管理域范围进行更新。但是这种变化不会是经常性的,当网络的覆盖变化时,MAP可以根据最新的覆盖广播报文,将AR中的MAP覆盖区域进行更新,使得MN能够获得更准确的MAP覆盖区域的信息。
2.2 基于速度的MAP初选择
(1) MN当前速度、方向的获取
(2) MN运动模式的判断
当下一个时刻来临的时候,我们可以根据实测地点和预测地点之间的距离,判断MN是否属于运动方向和速度大致不变。如果实测和预测地点之间距离大于预测半径R,则判断MN的运动是随机的,否则判断MN的运动方向、速度大致不变。
图1 MN运动模式判断
(3) MAP的初选择模式
当MN的运动模式是随机时,由于不能很好地预测MN下一时刻的移动方向和移动速度,该MN的MAP的选择根据HMIPv6规定的,基于距离最远的选择模式,选择最高层级的MAP。这意味着MAP的管理域能够尽可能覆盖大的范围,对于随机运动的MN来说是非常好的选择,能够尽可能减少MAP管理域间的域间切换,缩短了延时和丢包。
当MN的运动模式是移动方向和速度大致不变时,根据GPS测算出的MN的速度和运动方向,结合MN从RA消息中得到各层级MAP管理的域的范围,能够算出MN以当前速度、当前方向在各层级MAP的管理域中停留多少时间。综合n级MAP停留时间,MN选择停留时间大于Tthreshold-min的最小的那一级MAP,Tthreshold-min表示停留时间最小阈值,即MN能够停留MAP的最短时间,停留时间过短会导致第二次MAP域间切换,多次切换会带来严重的丢包和时延。
2.3 MN停留时间更新
MN能够接收到AR发出RA消息,因此能够通过RA消息知道当前各级MAP的具体情况。此时,MN会将各个层级的MAP相关信息保存下来,记录的主要是用途是计算MN在该MAP的停留时间。
当MN进入一个新的AR时,能够对收到的各层级MAP的消息和本地保存的上一个AR的各层级MAP消息进行对比。MN先保存新收到的MAP信息,将MAP的停留时间清零,然后遍历上一个停留的AR记录,如果和当前新接入的AR有相同的MAP,就在新的表更新这个MAP的停留时间,继续在上一个AR的记录基础上统计停留时间。更新完MAP的停留时间,就可以丢弃上一个AR的MAP的相关消息,此时停留时间更新完成。如图2所示。
图2 MAP停留时间更新流程图
2.4 根据MN停留时间的MAP再选择
MN的MAP初选择只是单纯根据MN当时时刻的移动速度和移动方向进行判断,根据当前数据估算在MAP内的停留时间。特别是当MN的移动速度或者方向随机的时候,MN的MAP选择只是单纯的选择最高层级的MAP,因此,MAP的初选择是比较粗糙的选择,单纯从减少MAP域间切换的次数出发,选择尽可能层级高的MAP,并没有很好的从适合该MN或者MAP负载均衡方面进行考虑。
当MN在MAP域内停留一定时间后,MN就需要对MAP进行再次的选择。这主要的根据是MN在各层级MAP域内的停留时间,因为MN内部保存着在当前MAP域内停留的具体时间。
MN根据RA消息更新当前MAP的停留时间,如果存在比当前层级MAP低层级的MAP的停留时间大于Tthreshold-max,即表示MN可以切换到更低层级的MAP。Tthreshold-max表示MN在某一层级MAP中停留的最大时间阈值,停留时间大于Tthreshold-max即可认为MN比较稳定。MN切换到更低层次的MAP的有利于缓解高层级的负载,同时使MN到MAP的距离变短,使MN选择更适合自己的MAP。
2.5 MAP再选择的切换优化
MAP的再选择,由于是在不同的MAP进行注册,属于MAP域间的宏移动,而HMIPv6对于MAP间的宏移动相对于MIPv6,并没有改进多少,甚至拥有比MIPv6更多的切换时延[4]。HMIPv6的宏移动的切换过程的延时主要在LCoA和RCoA的DAD检测。要缩短MAP域间切换的延时和丢包,关键是要减少DAD检测的时间。
虽然MAP再选择的过程是属于MAP的域间切换,但是MAP再选择的切换过程和HMIPv6的切换过程不同。MAP再选择过程由于不涉及二层切换,只是三层的切换,故可以省略二层切换的过程。本文改进的方案就是将DAD检测提前到切换之前,使DAD检测不再成为延时的主要原因。
当MN经过计算在各层MAP的停留时间,发现底层MAP的停留时间满足Tthreshold-max的界限时,MN就决定进行MAP的再选择过程。MN根据RA消息预先配置自己的LCoA和RCoA,并将结果发送给MAP进行DAD检测,并等待返回检测结果。如果检测地址结果不冲突,即按照HMIPv6进行MAP切换,切换到低层级MAP,切换完成。
3 性能分析
3.1 MAP选择方式的分析
基于HMIPv6标准的MAP选择方式是简单选择最高层级的MAP管理域,这带来的好处是能够尽可能减少MN在MAP管理域内的切换次数,但是带来的不足也是显而易见的,高层级MAP的负载会越来越大,最后甚至可能高层级MAP会成为整个网络的瓶颈。
基于区域的MAP初选择过程中,利用MN自带的GPS功能,进行初步的MAP选择。当MN移动的速度、方向基本保持不变的时候,我们可以根据MN当前的速度、方向进行预测,基于停留时间选择最适合的MAP;但是还是存在着MN的速度、方向不稳定的情况,这时我们还是基于标准HMIPv6,选择距离最远的MAP,达到减少MAP域间切换的目的。
MAP再选择中,利用MAP的停留时间更新,能够计算出在各MAP管理域中停留的时间,当MN趋于稳定后,MN进行MAP的再选择,能够选择更低层级的MAP进行通信。这样能够缓解高层级MAP的负载,同时又能够缩短MAP到MN之间的距离。
3.2 MAP切换方式的分析
HMIPv6的切换延时主要由以下几个方面组成:
Tdelay=TL2+TMD+TDAD+TLBU+TBU
(1)
其中,TL2表示二层切换的时间,TMD表示移动检测的时间,TDAD表示DAD检测的时间,TLBU本地绑定更新的时间,TBU是MN向HA或者CN绑定更新的时间。
在MAP再选择切换的过程中,由于只需要三层切换,二层的连接并没有断开,所以二层切换时间和移动检测时间可以不计算在内。因此,可以用以下的公式表示:
Tdelay=TDAD+TLBU+TBU
(2)
其中,DAD检测所造成的延时最大,能够达到1000 ms。因此本文提出了一种提前进行DAD检测的方法,当MN检测到在某个MAP域内停留时间大于阈值后,随即进行DAD检测,如果检测结果显示没有冲突,然后进行MN的三层切换,因此切换时延主要由以下组成:
Tdelay=TLBU+TBU
(3)
因为DAD检测是造成切换延时的主要原因,在提前检测完后,切换的时候就不需要再进行DAD检测,达到减小切换时延的目的。
3.3 仿真结果
本文使用NS2对提出的方案进行仿真,图3为仿真拓扑图。最高层级MAP为MAP0,第二层级MAP为MAP1、MAP3,最低层级MAP为MAP2。相邻AR之间的距离为80米,AR的覆盖范围为45米,无线链路的带宽为2 Mbps。
图3 仿真拓扑图
在MAP选择机制仿真中,一共50个MN,在AR覆盖范围内进行随机运动(即最远不超出MAP0的管理域),MN不收发数据,只进行移动性管理的注册和更新。图4和图5是HMIPv6标准和本文提出的改进方案的MAP选择机制的比较。仿真结果显示,HMIPv6标准的MAP选择方案缺乏灵活性,高层级的MAP负载太重,并且不能自动调整,在经过一段时间后MN还是集中在最高层级的MAP上,缺乏灵活性。本文提出的方案在MN刚接入MAP域的时候虽然大部分选择了高层级的MAP,但是在MN逐渐稳定下来以后,MN能够选择适合自己的较低层级的MAP,分担了高层级MAP的负载,使得网络更加健地运行。
图4 HMIPv6的MAP选择机制的MAP负载情况
图5 改进的MAP选择机制的MAP负载随时间变化
在MAP再选择的切换优化的仿真中,CN以不同的速率持续发送大小为512字节的UDP包到MN。为了创造MAP再选择的条件,使MN移动速度突然降至0,观察MN再选择过程中收包的时延情况。图6是MAP再选择的时候MAP切换机制的对比,可以看出本文提出的提前进行DAD检测能够有效减少切换过程中的时延。
图6 MAP再选择切换优化
4 结 语
本文提出了一种新的MAP选择机制,通过MN的运动速度、方向进行MAP的初步选择,通过MN记录的MAP停留时间,判断MN是否处于稳定阶段,然后进行MAP的再选择。达到均衡MAP负载的目的。在MAP的再选择中,提出了一种新的切换方案,将MN的DAD检测时延提前,达到减小切换延时的目的。
[1] Manoj K R,Swarup M,Bhaskar S.Applications and Innovations in Mobile Computing:AIMoC 2015:Optimized HMIPv6 (O-HMIPv6):Reducing Handoff Latency in HMIPv6 Networks,Kolkata,Feb 12-14,2015[C].India:Kolkata,2015.
[2] 范祚至,张曦煌.基于动态负载均衡的层次性移动IPv6路由优化方案[J].计算机软件与应用,2014:31(4):128-132.
[3] Joseph Davies.深入解析IPv6[M].汪海霖,译.北京:人民邮电出版社,2014.
[4] 孙文胜,黄吉.基于一种新的移动锚点选择算法的分层移动IPv6策略[J].计算机应用,2013,33(1):112-114,119.
[5] 李渊.基于Ad Hoc网络的跨层移动IPv6切换技术的研究[D].杭州:杭州电子科技大学,2013.
[6] 白鑫茹.一种分级移动IPv6的MAP选择机制[D].广州:华南理工大学,2013.
[7] 陶铭.移动IPv6网络智能切换管理技术研究[D].广州:华南理工大学,2012.
[8] 黄吉.移动IPv6快速切换策略的研究[D].杭州:杭州电子科技大学,2012.
[9] 肖长水,姒茂新,沈萍萍,移动IPv6切换技术综述[J].计算机软件与应用,2010:27(4):158-161.
[10] Soliman H,Castelluccia C,El Malki K,et al. RFC4140 Hierarchical Mobile IPv6 Mobility Management (HMIPv6)[S],2005.
RESEARCH ON AN MAP SELECTION MECHANISM IN HIERARCHICAL MOBILE IPv6
Sun Wensheng Wang Yufei
(SchoolofCommunicationEngineering,HangzhouDianziUniversity,Hangzhou310018,Zhejiang,China)
On the basis of MIPv6 (Mobile IPv6) the scholars proposed HMIPv6 (Hierarchical MIPv6).But the selection mechanism of MAP (mobile anchor point) in HMIPv6 has some weakness,such as the load of MAP is too concentrated,and the path of MAP is too long,etc.Based on HMIPv6 we propose a location region-based MAP selection mechanism,it makes the MN (mobile node) actively select the MAP suitable for itself the most.Simulation result shows that the loads are no longer to concentrate on a certain MAP,the MN selects the most suitable MAP and shortens the path between the MAP and MN.
HMIPv6 MAP Load-balancing
2015-09-20。孙文胜,副教授,主研领域:网络通信。王宇飞,硕士生。
TP393
A
10.3969/j.issn.1000-386x.2016.11.024