马李罡
(南京邮电大学 自动化学院,南京 210003)
当前,互联网已经成为人们生活中不可缺少的一部分。随着各种移动通信设备,如智能手机、平板电脑等的发展,人们希望能够在移动过程中依然对互联网保持高速接入,这对目前的移动性管理技术提出了挑战,同时也促进了移动性管理技术的发展。
MIPv6协议是IETF (International Engineering Task Force)提出的移动性管理协议,于2004年成为正式RFC3775标准,旨在使移动节点在IPv6网络中移动时依然能够保持通信的连通性[1]。每个移动节点拥有一个永久唯一的归属网络地址。当移动节点不在归属网络的时候,会由一个转交地址表明移动节点的当前位置。送往移动节点归属网络地址的IPv6数据包会在对上层“透明”的情况下路由到移动节点当前的转交地址。
MIPv6使节点在不同接入路由器间移动时,无需改变IP地址就可以保持“网络连接性”。但在切换过程中,由于链路切换和IP协议的操作,在“切换时延”内,移动节点是不能发送和接收数据包的,而“切换时延”来自标准MIPv6协议的“移动检测”,“新转交地址配置”和“绑定更新”过程,这会严重影响实时应用和数据包吞吐量敏感应用的服务质量,因此,为减少“切换时延”和“包丢失率”,多种改进的方案陆续被提出,如,FMIPv6 (Mobile IPv6 Fast Handovers)[2],HMIPv6 (Hierarchical Mobile IPv6)[3],PMIPv6 (Proxy Mobile IPv6)[4]等。这其中FMIPv6由于其对MIPv6较好的继承性和易于实现性,得到了较为广泛的应用,同时,文献[5]通过仿真证实:在绝大多数环境中,FMIPv6的切换效率要高于HMIPv6和PMIPv6。
FMIPv6通过链路层触发预测新接入路由,在链路层切换发生之前或过程中,完成标准MIPv6的“移动检测”和“新转交地址配置”过程,同时对链路层切换过程中的数据包进行缓存,从而降低了切换时延和数据包丢失率。
PB-FMIPv6是文献[6]中提出的对FMIPv6的优化协议,该协议主要针对FMIPv6的时延进行了优化,授权预测新接入路由代替MN在链路层切换之前或过程中进行MN与HA和CN的绑定更新过程,从而使标准MIPv6中发生在链路层切换之后的绑定更新过程与链路层切换并行执行,降低了切换时延。文献[7]利用OMNeT++,在802.11b模拟网络环境下对FMIPv6和PBFMIPv6进行了比较,仿真结果显示PB-FMIPv6的切换时延较FMIPv6有了显著下降。
MIPv6可以保证移动节点(MN)在不同子网间移动时,不改变移动节点的IP地址。但MIPv6切换延时较大、切换过程中丢包率大,无法使用户得到良好的数据接入服务体验。MIPv6的信令交互流程如图1所示。
图1 MIPv6信令流程
本文关注链路层触发,所以重点描述与链路层切换相关的处理过程。
“链路层切换”随链路层协议和具体硬件应用场景的不同而不同。
“移动检测”主要目的是判断是否发生L3切换,一般的方法是沿用IPv6的“邻居发现”机制,而“邻居发现”又包括“邻居不可达检测”和“路由器发现”。当通过“邻居不可达检测”判断出默认路由器双向不可达时,则发生了L3切换。
检测到L3切换后,MN会对其“链路域地址”进行“重复地址检测”过程(Duplicate Address Detection, DAD),通过“路由器发现”选择一个新的默认路由器,然后执行“前缀发现”从而形成新的转交地址[1]。
FMIPv6可以减少切换延时和包丢失率。FMIPv6协议有两种工作模式,预应式工作模式和反应式工作模式。
1.2.1 预应式工作模式
该工作模式下,移动节点在当前链路中收到FBack,这意味着MN进行链路层切换的时候,新旧接入路由器之间的隧道处在工作状态,缓存起来的数据包会在MN接入到新链路同时收到MN发送的UNA消息后,立即转发给MN。这种工作模式下,链路层切换时间段的数据包因为得到缓存而不会丢失,是理想的工作的模式。
预应式工作模式的信令流程如图2所示。
与链路层切换相关的操作和MIPv6相同,分别为移动检测、DAD和新CoA生成,下面将分别描述上述操作过程。
“移动检测”过程如下。MN通过某些链路层机制(如,WLAN中的“扫描”机制)发现可用AP或者仅当执行“路由器发现”后,MN发送RtSolPr (Router Solicitation Proxy Advertisement)消息给当前AR,以获得“AP标识”对应的子网信息。AR回送包含一个或多个[AP-ID, AR-Info]组的PrRtAdv (Proxy Router Advertisement)消息。通过这些信息MN可轻松的进行“移动检测”。
图2 FMIPv6信令流程
FMIPv6协议中说明,FMIPv6应用的场景是通过某些地址管理机制,使地址冲突概率极低,可以忽略,进而不用进行DAD过程。
MN通过PrRtAdv消息中的信息形成NCoA。
1.2.2 反应式工作模式
该工作模式下,移动节点在新链路收到FBack。这时MN不确定PAR是否成功处理FBU,所以会在发送UNA (Unsolicited Neighbor Advertisement)消息之后立即重新发送FBU。反应式工作模式下,MN在连接到新链路后才开始进行FBU等信令交互,由于在链路层切换之前新旧路由器间没有形成隧道,所以链路层切换时间段和MN收到经NAR转发的来自PAR的FBack消息之前时间段的数据包都会丢失,切换性能较预应式工作模式有所下降。
PB-FMIPv6的 思 想 是 在PrNAR (Proxy NAR)确定NCoA可用后,由NAR代替MN向HA和CN做绑定更新工作,从而使绑定更新过程能够和链路层切换并行进行,不但降低了切换时延,而且减少了缓存数据包量、减轻了新旧路由器间隧道的负担。PB-FMIPv6的信令流程如图3所示。
图3 PB-FMIPv6信令流程
限定性链路层触发算法是文献[8]提出的算法,该算法基于FMIPv6,旨在提供精确的链路层触发时间标准,使FMIPv6即能工作在预应式工作模式,又不会因过早的链路层触发而造成过多的服务时延和数据包缓存量。为更好的说明算法原理,FMIPv6预应式工作模式的时序图如图4所示。
图4 FMIPv6预应式工作模式时序图
Tprep是从L2触发到MN收到FBack的时间,这段时间包括NCoA生成过程、NCoA验证过程和PAR/NAR隧道建立过程。Twait是MN等待链路层切换的时间,这段时间由L2触发时间决定,所以这段时延又被称作“预测时延”[9]。Tlink是链路层切换时间,这一时间一般考虑为固定值,同时这段时间会依不同厂商的硬件设备而产生差别[10]。
针对802.11 WLAN网络,文献[8]提出了RLT (Remaining Life Time)的概念,这是一个即时概念,它表明了该时刻以MN此时的运动速度移出当前服务WLAN的剩余时间。tn时刻的RTL[tn]由式(1)给出:
其中,Redge为WLAN网络边缘信号强度,R[tn]为tn时刻的信号强度,ΔR[tn-1, tn]为tn时刻的信号强度变化速率,由式(2)给出:
文献[8]提出的限定性链路层触发算法的思想是使当RTL等于Tprep时产生链路层触发,这样既能保证FMIPv6工作在预应式工作模式,又使Twait为零,减少了数据包延时、减轻了PRA/ NAR隧道负担。
由移动性管理协议介绍可知,PB-FMIPv6是对MIPv6协议较为成功的优化协议,它将HA绑定更新、RRP和CN绑定更新授权给NAR来执行,使MIPv6和FMIPv6中发生在链路层切换过程之后的这一系列过程同链路层切换并行执行,从而降低了切换时延,同时减轻了PAR/NAR隧道负载。
限定性链路层触发是基于FMIPv6提出的链路层触发算法,文献[8]在Qualnet环境下仿真结果表明该算法较固定值链路层触发算法有更短的数据包时延,同时可以减轻PAR/NAR隧道负担。
由于PB-FMIPv6同FMIPv6一样,也有预应式和反应式两种模式,链路层触发的时间选择同样不但直接决定协议的工作模式,而且也会引入预测时延Twait,所以本文借鉴了限定性链路层触发算法思想,将限定性链路层触发引入到PBFMIPv6中,同时考虑到PB-FMIPv6和FMIPv6的差异,提出了优化限定性链路层触发算法,使PB-FMIPv6的优势更加明显。
由文献[11]对FMIPv6在实际802.11 WLAN中的实验结果显示,TPrep-T(预测隧道时延),也即Twait,是整个切换过程中最耗时的过程,平均占总切换时延的75.63%[11],所以可以推想引入优化限定性链路层触发算法会对PB-FMIPv6起到明显的优化效果。
以下部分是对优化限定性链路层触发算法理论分析。
因为PB-FMIPv6通过PrNAR来完成HA绑定更新、RRP和CN绑定更新过程,所以我们将同时分析MN和PrNAR的时序状况,图5是PBFMIPv6预应式工作模式的时序图。
图5 PB-FMIPv6预应式工作模式时序图
如图5所示,当PrNAR验证了HI中的新转交地址的唯一性后,便发送HACK告知PAR验证结果,同时开始绑定更新过程。Twait是MN收到FBack到旧链路断开的时间段,这段时延是由链路层触发引入的,如果将这段时延减小,那数据包时延将会缩短,同时PAR/NAR隧道负担也将减轻。限定性链路层触发算法在FMIPv6中将Twait置零,但PB-FMIPv6中PrNAR的绑定更新过程是和MN的链路层切换时同时进行的,而这两个过程所需的时间是不同的,所以本文提出的优化限定性触发算法考虑了两种情况:
(a)如果PrNAR绑定跟新时间小于等于MN链路层切换时间,则沿用限定性链路层触发算法的方法,使RLT等于Tprep时产生链路层触发。这样就能最大程度地缩短切换时延。
(b)如果PrNAR绑定更新时间大于MN链路层切换时间,则使RLT等于Tprep+TBU-Tlink时产生链路层触发。这样的触发时间选择,既合理地缩短了切换时延,又不至于发生MN切换到新链路后等待PrNAR绑定更新过程结束的尴尬情况发生。
图6 优化限定性链路层触发算法流程图
图6是优化限定性链路层触发算法的流程图。MN周期性的检测WLAN中的R[tn],当R[tn]的值小于WLAN中稳定信号最小值Rlow时便会比较TBU和Tlink,TBU和Tlink是上次切换实测值,由于MN移动范围的地理连续性,上次切换实测值较文献[8]中采用的实验平均值更能真实的反映网络的动态变化情况。如果TBU≤Tlink,则算法处理过程同限定性链路层触发算法,这里I1[tn]是比较间隔,由公式 (3)给出:
其中β是调控参数,其取值越高则比较间隔越小,判断精度也就越高。如果TBU>Tlink,则算法会判断使当RLT等于Tprep+TBU-Tlink时产生链路层触发,图中I2[tn]是比较间隔,由公式(4)给出:
同样,β也是调控参数,其取值越高则比较间隔越小,判断次数越多,判断精度也就越高。另外,算法中的α是一个权重系数,其取值为1到2,目的是防止RLT变得过小,当然α取值越靠近1,算法的时间控制越接近理论情况。
本文采用OMNeT++仿真环境,从延迟数据包数量和切换时间的角度,对采用固定门限触发算法的PB-FMIPv6协议和采用优化限定性链路层触发算法的PB-FMIPv6协议进行了比较。延迟数据包量是指链路层触发产生的时刻到MN发送UNA消息的时刻中发往MN的数据包的数量,由于这一时间段内MN停止接收数据包,所以这段时间内发往MN的数据包都将产生延迟,延迟数据包量反映一种切换方案的切换操作对实时应用的影响情况。切换时间是指数据链路层触发产生的时刻到MN发送UNA消息的时刻的时长,这段时间反映一种切换方案的切换操作所消耗的时间。
图7是本文仿真的参考网络模型,如图所示,12个无线接入子网均采用2.4 GHz 802.11 b标准,覆盖区边缘信号强度为-82 dBm,为便于说明和简单起见,相邻AP的间距相等,信号覆盖范围重叠区域面积相等。仿真开始时,MN位于归属网络,由归属网络代理路由器HA提供与对端节点CN的通信,仿真运行过程中,MN依次经过12个子网,经历11次切换。MN的首次切换是从归属网络移动到AR1提供服务的外地网络,遵循MIPv6协议,剩余的切换遵循PB-FMIPv6协议。仿真过程中,CN和MN间进行固定码率(CBR)通信,CN向MN发送间隔为10~2 s的UDP数据包,AR间的链路延迟忽略不计,MN-CN链路延迟采用25 msec,MN的移动速度分别取5,10,20,30 m/s,以代表移动设备用户的不同移动速度,优化限定性链路层触发算法中的调控参数α和β分别取1.5和2。
图7 参考仿真网络模型
图8比较了在MN-CN链路延迟为25 msec的情况下,当MN以不同速度移动时,采用-76 dBm切换门限的原始PB-FMIPv6协议和采用优化限定性链路层触发算法的PB-FMIPv6协议的延迟数据包量和切换时间。图(a)是延迟数据包量的变化情况,从图中可知,随着MN移动速度的增加,原始PB-FMIPv6的延迟数据包量有下降趋势,从MN移动速度为5 m/s的1467.6变化到MN移动速度为30 m/s时的272.6,尽管数值有所下降但依旧保持着较高的水平,比较而言,采用优化限定性链路层触发算法的PB-FMIPv6协议的延迟数据包量受MN移动速度影响不大,一直保持着146.2的平均数值。图(b)是切换时延的变化情况,从图中可知,原始PB-FMIPv6协议和采用优化限定性链路层触发算法的PB-FMIPv6协议的切换时延保持了和图(a)中延迟数据包量一样的变化趋势,原始PB-FMIPv6协议的切换时延随MN速度从1 4679.0 ms变化到2 729.0 ms,采用优化限定性链路层触发算法的PB-FMIPv6协议的切换时延保持着1 463.3 ms的平均值。由图8可知,优化限定性链路层触发算法较为明显地提高了PB-FMIPv6的切换性能。
图8 MN-CN链路延迟=25 ms、固定门限PB-FMIPv6的切换门限=-76 dBm时,延迟数据包数量、切换时间随MN移动速度的变化情况
借鉴FMIPv6中限定性链路触发算法的思想,本文提出了应用在PB-FMIPv6中的优化限定性链路层触发算法,该算法综合考虑了FMIPv6和PB-FMIPv6的共同点和差异,根据网络的动态变化情况,提供了精确的链路层触发时间,即保证PB-FMIPv6工作在预应式工作模式,又合理地缩短切换时延,避免了MN切换到新链路后等待PrNAR完成绑定更新过程的尴尬情况。仿真结果表明优化限定性链路层触发算法对PB-FMIPv6协议的延迟数据包数量和切换时间进行了优化,提高了PB-FMIPv6协议的整体切换性能。
[1] IETF, Mobility Support in IPv6, in RFC3775, D.B. Johnson, C.E. Perkins and J. Arkko, D.B. Johnson, C.E. Perkins and J. Arkko^Editors. 2004.
[2] IETF, Mobile IPv6 Fast Handovers, in RFC5568, R. Koodli, R. Koodli^Editors. 2009.
[3] IETF, Hierarchical Mobile IPv6 (HMIPv6) Mobility Management, in RFC5380, H. Soliman, et al., H. Soliman, et al.^Editors. 2008. [4] IETF, Proxy Mobile IPv6, in RFC5213, S. Gundavelli, et al., S. Gundavelli, et al.^Editors. 2008.
[5] Hu, B., S. Chen,X. Jiang.A Performance Evaluation of IP Mobility Support Protocols[C]. in 2010 Second Internatinal Conference on MultiMedia and Information Technology,2010.
[6] Yousaf, F.Z.,C. Wietfeld.Optimizing the Performance of FMIPv6 by Proactive Proxy Bindings[C].in Vehicular Technology Conference,2009.
[7] Espi, J.Proactive Route Optimization for Fast Mobile IPv6[C].in Vehicular Technology Conference,2009.
[8] Yang, M.Definitive Link Layer Triggers for Predictive Handover Optimization[C].in Vehicular Technology Conference,2008.
[9] Lu, H., et al., Performance Evaluation of Link Layer Triggers for Fast Handovers in Mobile IPv6[C].in Communications and Networking in China, 2006. ChinaCom’06. First International Conference,2006.
[10] Mishra, A.,M. Shin,W. Arbaugh.An Empirical Analysis of The IEEE 802.11 MAC Layer Handoff Process[J].ACM SIGCOMM Computer Communication Review, 2003,33.
[11] Song, Y.Handove Lantency of Predictive FMIPv6 in IEEE 802.11 WLANs: A Cross Layer Perspective[C].in Computer Communications and Networks, 2009. ICCCN 2009. The 18th International Conference. 2009.