一种改进的快速代理移动ipv6切换方案分析

一种改进的快速代理移动ipv6切换方案分析

ID:20627193

大小:3.51 MB

页数:51页

时间:2018-10-14

上传者:U-10915
一种改进的快速代理移动ipv6切换方案分析_第1页
一种改进的快速代理移动ipv6切换方案分析_第2页
一种改进的快速代理移动ipv6切换方案分析_第3页
一种改进的快速代理移动ipv6切换方案分析_第4页
一种改进的快速代理移动ipv6切换方案分析_第5页
资源描述:

《一种改进的快速代理移动ipv6切换方案分析》由会员上传分享,免费在线阅读,更多相关内容在学术论文-天天文库

目录5.4.3仿真结果分析⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯..485.5本章小结⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯..496总结与展望⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯..506.1总结⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯506.2展望⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯..5l参考文献⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯.52致谢⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯..55个人简历、在校期间发表的学术论文与研究成果⋯⋯⋯⋯⋯⋯⋯..56VI 图和表清单图2.1图2.2图2.3图2.4图3.1图3.2图3.3图3.4图3.5图3.6图3.7图3.8图3.9图3.10图4.1图4.2图4.3图4.4图5.1图5.2图5.3表4.1表5.1表5.2图表清单预测式快速切换流程⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯.12层次移动IPv6网络拓扑⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯..14快速切换乘1层次切换的简单组合⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯16快速.层次移动IPv6数据流程⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯.17PBU消息格式⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯.20PBA消息格式⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯.20HLO选项格式⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯.2lⅢPO选项格式⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯..2lATTO选项格式⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯。2lLUD选项格式⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯..22MNLLIO选项格式⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯22TO消息格式⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯22移动节点接入代理移动IPv6域⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯.23移动节点在代理移动IPv6域内切换⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯.24预测式快速代理移动IPv6切换流程⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯.27切换发起错误的FPMIPv6切换流程⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯29改进的FPMIPv6切换流程⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯.3lPMIPv6、FPMIPv6和E-FPMIPv6切换总开销的比较⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯..36仿真拓扑图⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯一43不同CBR下的时间延迟比较⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯48不同CBR下的丢包率比较⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯.49参数设置⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯.35实体和类的对应关系⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯40消息和方法的对应关系⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯40Ⅵ1 1绪论l绪论1.1研究背景和意义在移动通信得以飞速发展的今天,能够随时随地利用手机、平板电脑等移动设备从互联网上获取海量网络资讯已经成为越来越多的移动用户的需求,而如何实现将这些移动设备更加灵活的接入互联网,是其中的关键技术。由此产生的移动IP技术【lJ随着无线设备的不断更新换代也愈加成为热点问题,两者相互推动促进对方技术革新,是当今Internet领域炙手可热的研究课题。静态IP技术研究固定节点之间的相互通信情况,这些节点的位置一般不会发生变化,子网形态固定不变,因此每个节点拥有固定的IP地址,以此进行正常的数据发送和接收。一旦某个节点位置发生了改变,进入另一个子网内时,要想继续正常通行,必须再次获得一个与该子网网络前缀相同的IP地址,或者在路由器上添加主机路由f2】,系统的可扩展性和灵活性大大降低。针对这种主机在发牛移动之后通信中断的情况,移动IP技术致力于解决移动丰机在不同子网内来回移动的问题,使用户在位置变换过程中也能够接受到不问断的网络服务,是一种支持用户和网络非断开式连接的互联技术,即移动切换技术。移动IPv4[3J是IPv4协议的扩展部分,其中定义了移动节点、家乡代理、外地代理、对端节点等功能实体和家乡地址、转交地址两种地址,能够让移动节点一边发生物理上的位置移动,一边保持与互联网的连接,始终正常接收和发送数据包。移动IPv4中将移动节点移动到外地网络后的通信过程分为以下步骤:(1)发现外地代理。移动节点通过接收到的代理通告消息获知外地链路信息;(2)注册转交地址。移动节点在该外地链路内获取一个IP地址(或者是外地代理的地址)并将其作为转交地址发送给家乡代理,家乡代理将该转交地址与之前的家乡地址进行绑定并定期维护:(3)正常通信过程。家乡代理负责接收发往移动节点家乡地址的数据包,并通过缓存的转交地址将它们转发至移动节点当前的转交地址,移动节点收到这些数据包后再自行与相应的通信对端进行会话。有了这样的移动IP技术,移动设备便实现了一方面随意在不同网络间漫游.另一方面从通信对端来看并未更改IP地址,具有了一定的灵活性和扩展性。然而由于移 l绪论动IPv4存在的一些诸如三角路由、部署、入口过滤、认证和授权等问题,使得其在进一步发展的道路上蜗步难移【41。随着IPv4协议不断暴露出的地址资源枯竭、路由瓶颈及QoS缺乏保证等弊端l别,IETF及其他相关组织研究开发了下一代互联网协议——IPv6协谢6。。它拥有巨大的地址空间、灵活的协议首部、地址自动分配功能、支持资源分配以及强大的路由功能,更重要的是,相比较于IPv4协议中对移动的支持是可选部分,纵观现今互联网中用户对移动性的依赖,在IPv6协议中,已经将节点的移动性扩展至必备功能,即在IPv6网络中的所有节点都支持主机的移动。IPv6协议所具有的庞大的地址空间,也能够很好的满足日渐壮大的移动用户的需求。移动IPv6继承了移动IPv4协议中移动节点、家乡代理、家乡地址和转交地址的概念,最大的特点是废除了外地代理相关的概念,解决了三角路由问题。移动节点移动过程中的重要环节是从之前所在的子网进入到另一个新的子网,实现一次“切换’’。这个过程中,移动节点要能够检测到所在的网络发生了变化,并及时获取新的子网及其代理的信息,一方面断开与旧网的连接,一方面与新网建立连接。这样一个承前启后的过程,是移动IP技术中的关键所在,切换中断的时间长短、数据包是否丢失等都会影响到用户的通信业务。因而,研究切换技术,降低切换时问延迟,减少切换过程中数据包丢失,进而提升切换效率,降低网络及移动设备的能量损耗,对于提升移动性服务的质量,为用户提供更好的移动体验,具有十分重要的意义。从提升切换效率入手,着重于降低切换时间延迟的技术被称为快速切换技术,着重于减少数据包丢失的技术被称为平滑切换技术I_丌。无缝切换是二者的结合。是人们期望切换技术能够达到的理想状态,即来往数据包接受完整无丢失,通信正常进行无延迟,从用户角度察觉不到切换的发生,“透明"切换。为了实现这样的目标,切换方案的设计至关重要。对于移动IPv6,人们提出了各种切换方案,已经制定为标准文档的有移动IPv6标准切换方烈引、移动IPv6快速切换方案【91、移动IPv6层次切换方案【101,以及网络草案移动IPv6快速.层次方案ll¨。’另外,从服务提供者的角度来看,移动设备一旦介入无线网络,为了保证设备与通信对端保持不间断的连接,该网络必须跟踪并记录移动设备的位置信息,为其提供必要的移动性服务。因此移动性管理对于为用户提供高质量的网2 l绪论络移动服务具有重要意义。移动性管理的定义为:它通过一些管理措施,使得无线网络能够随时跟踪记录移动节点的实时位置信息,移动节点无论是在本地子网内移动,或是漫游到新的外地子网,始终能享受到不间断的网络服务,不会影响正在进行的各种数据交换业务。移动性管理,按照管理的内容划分为切换管理和位置管理。切换管理控制移动节点从一个接入点转到另一个接入点的过程,保证移动节点在这个过程中保持正常的网络连接和持续的网络通信,确保通信数据的连续性f121。位置管理,顾名思义,是采取措施记录移动节点的位置信息。从管理范围方面可将移动性管理划分为全局移动性管理和区域移动性管理。前者管辖范围较大,可以设计到整个拓扑域,后者是指仅处理较小范围或邻近子网间的移动问题。第三种划分方式是按照参与移动管理的实体,将其分为基于终端和基于网络的移动性管理。基于终端,即是移动管理中涉及的操作都由移动节点单独完成;基于网络,指由移动节点所在网络中的其他实体代为处理移动管理事务,以减轻移动节点的负担。目前已有的如HMIPv6、蜂窝IP、HAWAII等协议都是基于终端的全局移动性管理协议,终端在移动的过程中,不仅要进行数据通信,还要消耗资源管理自身的移动性事务,相比之下,基于网络的区域移动性管理协议,在某个小范围的域内,将移动节点从复杂的移动性管理中解脱出来,只负责通信事务,由特定的网络实体代替终端进行移动性管理。代理移动IPv6协议(ProxyMobileIPv6Protocol,PMIPv6)就是这样一种基于网络的区域移动性管理协议。本文主要对代理移动IPv6的切换方案进行研究,从实际情况出发,提出一种改进的方案,旨在优化切换,降低切换时间延迟,减少数据包丢失,为用户提供更好的通信服务。1.2国内外研究现状IETF中的NETEX(Network—BasedMobilityExtensions)I作组负责研究制定代理移动IPv6的相关草案和协议。目前PMIPv6的研究重点主要集中在四个方面。第一,PMIPv6协议相对于3 l绪论之前的移动管理方案的性能优势,例如文献【13】在自行构建的试验床上比较了MIPv6和PMIPv6的性能,文献【14】则比较了FMIPv6和PMIPv6在不同的无线接入技术之下的切换中断时间。第二,PMIPv6的域内切换研究。这一方面研究的重点在于,在同一个代理移动IPv6域内,将移动IPv6协议中“快速切换’’的思想引入到PMIPv6协议中【l51,并对其进行性能优化,以减少移动终端在移动时由于较大切换时延而造成的切换性能下降,例如文献【16】提出的MHA缓存区方案。第三,PMIPv6的域问切换研究。这方面的研究是一个难点,文献【17】提出了一种较为复杂的方案。第四,PMIPv6的路由优化方案研究。针对RFC协议中标准的PMIPv6流程存在的复杂的路由寻址情况提出改进方案,使得PMIPv6具有更加优化的性能,如文献[18】。NETEX最新的研究成果有(截至2013年3月):dmit—ietf-netext-pd—pmip一061191:PrefixDelegationforProxyMobileIPv6,对标准PMIPv6协议的补充,支持在移动性管理中,为路由器指定基于DHCPv6的前缀。draft—ietf-netext-pmip6一qos一02L20J:QualityofServiceOptionforProxyMobileIPv6,该草案定义了一个新的移动选项,能够使代理移动IPv6域内的移动实体互换QoS参数。通过该QoS选项,本地移动锚点和移动接入网关可以相互交换彼此的QoS属性以及其他相关值。draR-ietf-netext.pmipv6.flowmob.06f2l】.ProxyMobileIPv6ExtensiomtoSupportFlowMobility,对代理移动IPv6的流移动性做出了一些扩展,对相|_J域内多个物理接口的情况做了详细的规定和说明。dmtt-ietf-netext-pmipv6.s够t0.option-12122】:IPv41h硒cOftloadSelectorOptionforProxyMobileIPv6,该草案为代理移动IPv6协议补允定义了一个新的移动选项。在一次移动会话中,本地移动锚点和移动接入网关协商解决接入网络中的IPv4流量控制问题,而不再是简单的将信息流通过隧道再返回给家乡网络中的本地移动锚点。RFC67571231:AccessNetworkIdentifier(ANI)OptionforProxyMobileIPV6,为移动接入网关和本地移动锚点之间传递接入网络标识和接入操作认证信息等操作,定义了一个新的机制,通过增加一个相关的移动选项来交换标识信息。由于和通信技术息息相关,来自各个通信技术公司的大量研究人员也参与4 l绪论到了PMIPv6的研究,可以看到,几乎所有相关RFC和Dratt的制定者中都不乏来自Cisco、Nokia、Siemens、Huawei、ZTE等公司的技术人员。我国北京交通大学、北京邮电大学、电子科技大学等学校的相关实验室早在代理移动IPv6诞生初期的2008、2009年便开始了研究,并在认证协议、域间切换等方面取得了一些成就。1.3论文研究内容本文主要研究基于网络的区域性移动协议一代理移动IPv6协议的切换技术。在移动性服务中,切换技术至关重要,切换方案的好坏,直接影响着通信服务的质量,尤其在实时性要求较高的业务中,过长的时间延迟和较大的数据包丢失率是不能容忍的。移动IPv6协议的研究过程中,继标准切换方案之后,IETF又制定了快速切换、层次切换和快速.层次切换等改进方案。类似的,代理移动IPv6标准切换方案提出后,IETF又发布了PMIPv6的快速切换方梨241,该方案引用移动IPv6快速切换方案中“预先切换”的思想,将该技术与PMIPv6的移动终端无关性相结合,在时间延迟和数据包丢失率方面有效的提高了PMIPv6切换方案的效率。本文在深入研究快速代理移动IPv6切换方案的基础上,结合该方案在实际应用时可能发生的接入点预判错误的情况,提出了一种改进方案以提高切换性能。主要工作如下:1.深入研究移动IP技术,分析移动IPv6协议、快速移动IPv6协议、层次移动IPv6协议以及快速.层次移动IPv6协议的切换原理、消息格式和具体切换流程。2.分析和研究基于网络的区域移动性管理技术,与基于终端的全局移动性管理技术加以对比,分析后者存在的一些弊端,详解代理移动IPv6协议的工作机制和流程。3.研究快速移动代理IPv6协议,结合实际情况,针对其存在的问题,提出一种改进的快速代理移动IPv6切换方案,在快速代理移动IPv6协议的基础上,采用“提前进行代理绑定更新"和“缓存和转发同时进行”的思想降低切换时5 l绪论问延迟和数据包丢失率。4.对改进的快速代理移动IPv6切换方案和快速代理移动IPv6协议的切换性能进行理论分析,比较包括切换时间延迟、数据包丢失、数据包传送开销等在内的切换总开销,从理论上证明改进方案在性能上优于原方案。5.在NS.2网络仿真环境中对改进的快速代理移动IPv6切换方案和快速代理移动lPv6协议进行模拟。实验结果表明,改进的快速代理移动1P、)6切换方案与快速代理移动IPv6协议相比,具有较短的切换时间延迟和较低的数据包丢失率。1.4论文组织结构全文组织安排如下:第l章,绪论。对本文的研究背景和研究意义做以说明,介绍本课题最新的国内外研究现状,介绍文章的主要研究内容及论文结构安排。第2章,移动IPv6切换方案。本章从移动IPv6标准切换方案开始,对它及其后来的改进方案如快速移动IPv6协议、层次移动IPV6协议和快速.层次移动IPv6协议做出详细的介绍和分析,评价每种方案的优势和劣势。第3章,基于网络的区域移动性管理方案。重点介绍代理移动IPV6协议。分析该协议提出的背景及其优势所在,详述协议流程。第4章,改进的快速代理移动IPv6方案E.-FPMIPv6。深入探讨快速代理移动IPv6协议,结合实际中可能出现的状况,分析该协议存在的问题,提出一种改进的快速代理移动lPV6方案。详细介绍改进方案的基本思想和切换流程,并从理论上对两种方案的切换性能做出详细分析和比较。第5章,仿真和分析。介绍网络仿真器NS.2的功能和仿真原理,描述对协议进行仿真的方法,分析协议的性能。为了完成对改进方案的仿真,修改和扩展了NS.2的相应功能模块。构建仿真环境,对快速代理移动IPv6协议和提出的改进方案进行模拟,并就切换时间延迟和丢包率两个性能指标对两种方案进行比较,详细分析实验数据。第6章,总结和展望。总结全文所做工作,并指出下一步的研究重点。6 2移动IPv6切换方案概述2移动IPv6切换方案移动IP技术最终的目的,是实现移动终端在跨越不同子网的时候,能够随时连接到新的子网而不用中断正在进行的通信活动,希望能够实现在切换接入点的过程中对外不改变IP地址、不修改寻址路由表,在通信对端和其他子网看来,实现“透明"切换。各种切换技术,在努力实现上述目标的同时,也希望能够不断降低切换中断时延、减少数据包丢失,不断提高通信服务质量。由于IPv6协议同IPv4协议相比的巨大优越性,移动IPv6切换技术的研究也成为热点。目前已有标准切换、快速切换、层次切换、快速层次切换等多个方案。2.1基本概念移动IPv6是由移动IPv4发展而来,延续了如家乡地址、家乡代理、转交地址等一些基本概念,并新增添了绑定、注册、绑定更新等概念1251。(1)移动节点(MobileNode,MN)即现实中的移动终端(主机或者路由器等),相对于固定节点,可以自由改变物理位置,在不同子网间漫游。(2)家乡网络(HomeNetwork,HN)移动节点最初所处的子网,形象化的表示移动节点的“家乡”。(3)家乡代理(Ho雠Agent,HA)指代移动终端家乡网络中的某个代理路由器,始终位于家乡网络,无论移动节点位于家乡网络中还是漫游到其他子网,都为其转发来往的数据包,并记录移动节点最新的位置信息。(4)外地网络(ForeignNetwork,FN)相对于家乡网络而言,指移动节点漫游到的其他子网。(5)外地代理(ForeignAgent,FA)相对于家乡代理,指的是位于外地网络中的某个代理路由器,在移动节点漫游到它所在的子网后,和移动节点建立连接,发挥着类似“家乡代理’’的功7 2移动IPv6切换方案概述能,为移动节点转发数据包。通常和家乡代理建立起一条双向隧道,二者分别位于隧道的两端,通过隧道来传递与移动节点相关的数据分组。(6)通信对端(CorrespondentNode,CN)任意一个和移动节点发生通信事务的节点,可以是固定节点也可以是移动节点。(7)家乡地址(HomeAddress,HoA)移动节点最初的IP地址,即在家乡网络中时所对应的地址,移动节点利用这个地址和通信对端通信,在发生了移动之后,无论到那个子网,都仍然以该地址进行通信,由家乡代理负责转交发往该地址的数据分组。(8)转交地址(Care.ofAddress,CoA)移动节点在家乡网络中的IP地址为家乡地址,那么在外地网络中的IP地址就叫做转交地址。移动节点漫游到其他子网中,和外地代理建立连接后,会拥有一个该网络内的IP地址,以此标识其位置所在。家乡代理用该地址和家乡地址建立绑定关系,即可明确移动节点的实时位置信息。(9)注册(Registration)移动节点漫游到外地网络,在外地代理的协助下获取一个当地IP地址,将该地址报告给家乡代理,该过程称为“注册"。(1O)绑定(Binding)由家乡代理执行的一项基本操作,如果移动节点发生了跨网络的漫游并发回了一个外地地址(即转交地址),家乡代理会将之前保存的移动节点的家乡地址和该转交地址对应起来形成一个条目,作为移动节点的位置标识,建立该对应条目的过程即称为“绑定”。(11)绑定更新(BindingUpdate)移动节点在移动到了一个外地子网后,由于其他原因再次发生跨网络的漫游。这时会再次获得一个转交地址,它将该地址发送给家乡代理进行重新绑定的过程称为绑定更新。也可能是网络中设置的计时器到时了需要再次发送转交地址。2.2移动lPv6工作机制8 2移动lPV6切换方案概述1.移动监测移动IPv6中最开始是利用邻节点发现机制,后来引入代理发现机制,来让移动节点对目前所处的网络位置作出判断。移动节点根据接收到的通告报文中所包含的当前网络前缀信息,比较是否和家乡网络前缀一致,如一致,说明仍旧在家乡网络内,反之则说明它已经进入外地网络。一旦已经处于外地网络,首先要进行的操作就是尽快获取外地代理的信息,完成转交地址的配置。外地代理,即该网络中的代理路由器,所以可以通过路由发现机制获取其信息。移动节点可以通过路由请求报文(RouterSolicitationMessage,RtSolMsg)矛1]路由器通告报文(RouterAdvertisement,RtAdv)。移动节点在收到这两类报文之后,都可以从中获取该网络中的网络和路由器情况信息。如果移动节点发现已有的默认路由器不可达,且获取到了另一个新的默认路由器的信息,那么便可作出判断确定自己已经漫游到了新的子网。2.配置转交地址转交地址标识着发生移动之后的移动节点的实时位置信息。由于移动节点可能发生多次移动跨越多个网络,拥有的转交地址可能不止一个,在这些地址之中只能指定一个作为主转交地址,并通过该地址进行绑定更新。家乡代理通过转交地址掌握移动节点的位置情况,以便正确的为其转发来往数据包。转交地址的获取有两种方式:有状态地址自动配置和无状态地址自动配置。这两种方式的选取,通过RtAdv消息中的M标识位来确定,0和1分别代表有状态地址自动配置和无状态地址自动配置。3.重复地址检测只有经无状态地址配置得到的IP地址才需要进行重复地址检测过程,因为移动节点只是根据自己掌握的信息配置出这样一个地址,不能确定该网络中没有其他主机使用这个地址。有状态地址自动配置过程形成的时候DHCP服务器已经进行了检测,所以可以保证地址的唯一性。多数情况下,重复地址检测过程是整个切换过程的瓶颈所在,是时间延迟过长的主要来源。4.注册并绑定移动节点需要向家乡代理注册最新的转交地址,家乡代理需要将该转交地址和移动节点的家乡地址进行绑定。在进行完重复地址检测之后,移动节点确定配置出的IP地址可以作为转交9 2移动IPv6切换方案概述地址来使用。之后便向家乡代理和通信对端发送绑定更新消息BU。家乡代理和通信对端接受到BU消息后,通过更新本地绑定更新条目来完成移动节点转交地址和家乡地址的绑定更新操作,然后向移动节点发送绑定更新确认消息,以完成一次绑定更新操作。家乡代理通过绑定更新可以随时掌握移动节点的位置信息,才能通过隧道,将与移动节点有关的上下行数据包准确无误的交付给移动节点。而通信对端通过该操作,也可获取移动节点的实时位置信息,再次进行通信时,便可直接发往转交地址,而免去了通过家乡代理进行隧道转发的操作。5.分组数据的转发家乡代理获取移动节点转交地址的目的是为了正确的做好数据分组的转发工作。在进行了绑定更新操作之后,记录移动节点位置信息,那么当再有以移动节点家乡地址作为目的地址的数据包被转发到家乡代理路由器时,家乡代理便对这些分组进行IPv6封装,将所记录的移动节点的转交地址作为外层目的地址,通过隧道转发给移动节点。6.移动节点和通信对端的通信在IPv6中,由于移动节点可以在进行绑定更新时将转交地址也发送给通信对端,所以,移动节点和通信对端的通信模式有两种:双向隧道模式和路由优化模式l删。2.3移动IPv6协议流程移动IPv6协议中的通信流程如下【25】:1.移动节点通过路由请求报文或路由通告报文,获取当前网络信息,以此判断是否发生了网络间的漫游。2.如果没有发生跨网络的情况,移动节点仍然处于家乡网络,那么可以保持正常的通信不需要进行任何操作。3.移动节点通过移动检测,发现自己处于外地网络,接下来首先通过有状态地址配置或无状态地址配置方式,获取一个可用的转交地址,并将该地址通过绑定更新消息报告给家乡代理。移动节点也可以同时将转交地址发送给一个或多个通信对端。4.家乡代理或通信对端收到移动节点发来的BU消息后,更新自身的绑定10 2移动IPv6切换方案概述更新条目表,建立起该移动节点最新的家乡代理.转交代理对应条目。完成该过程后向移动节点发送绑定更新应答消息。5.没有获得移动节点转交地址的通信对端,并不知道其已经发生了位置移动,仍旧将它的家乡地址作为目的地址来进行通信。这些数据包按照正常的路由寻址过程被发送到移动节点的家乡代理。家乡代理寻找到这些数据包目的地址对应的转交地址后,对数据包进行封装,外层目的地址即为转交地址,之后通过双向隧道,发往移动节点的转交地址。6.获得移动节点转交地址的通信对端,可以直接以转交地址作为数据包的目的地址,不通过家乡代理和移动节点进行会话。7.移动节点收到数据包,在之后的会话中,直接发送源地址为转交地址的数据包到通信对端,优化路由。2.4移动IPv6切换方案的扩展研究人员通过不懈的努力,希望能尽量减少移动IPv6切换的时间延迟、数据包丢失等不利影响,提出了快速移动IPv612刀、层次移动IPv6[28J以及快速.层次移动IPv6[291等切换方案。2.4.1快速移动IPv6~般将移动IPv6整个切换流程分为三大部分:移动检测、获取转交地址和绑定更新。这三部分在实际执行中都存在有时间延迟较大的情况,对移动终端进行的通信业务造成了一定的影响,使得网络的服务质量下降。为了减少切换过程中的中断时间,降低切换时间延迟,IETF在移动IPv6标准切换的基础上提出了一种快速方案FMIPv6(FastHandoverforMobileIPv6),并发布RFC4068文档,希望通过一些改进措施提高移动IPv6的切换服务质量。快速移动IPv6切换方案从“预先切换"的角度,采用L2层预测机制,将移动监测、获取CoA和DAD过程提前到移动节点切换到新的子网之前,希望通过链路层预先切换来缩短绑定更新过程的时间延迟,从而达到提升整个切换过程切换效率的目的。快速移动IPv6切换协议可分为预测式快速切换(PredictiveFastHandover)和反应式快速切换(ReactiveFastHandover)[271。这里主要讨论预测式快速切换方案。 2移动IPv6切换方案概述其切换流程如图2.I所示。÷⋯⋯⋯⋯⋯⋯—一{lNA-⋯⋯⋯⋯⋯⋯一一乓==:=:====::=:::=:=::二=::::=:===::::=:=:::;::::=:=:::::::::抟爨救擐鸟=二=::==::};图2.I预测式快速切换流程对该流程描述如下:(1)移动节点在检测到某个新接入点的信息之后向旧接入路由器发送路由器请求代理消息,该条消息中包含新接入点的标识信息。旧接入路由器收到这条消息后,解析出新接入点和新接入路由器的地址信息,并向移动节点回复代理路由器通告消息。(2)移动节点收到代理路由器通告消息后,根据其中包括的新接入路由器的网络信息,配置生成新转交地址,之后将包含有旧转交地址和新转交地址的快速绑定更新消息发送给旧接入路由器。(3)旧接入路由器收到快速绑定更新消息,取出移动节点的新旧转交地址信息,及时更新已经存储的绑定缓存条目,确保以后截获到目的地址为移动节点旧转交地址的数据分组后能够正确转发。在这之后,向新接入路由器发送切换发起消息。(4)新接入路由器收到旧接入路由器发来的切换发起消息,从该消息中解析出移动节点配置的新转交地址,进行重复地址检测之后将该地址是否可用的消息通过切换确认消息回复给旧接入路由器。(5)旧接入路由器收到切换确认消息后,如果移动节点的新转交地址可用,便分别向移动节点和新接入路由器回复快速绑定更新确认消息,同时开始建立12 2移动IPv6切换方案概述与移动节点的新转交地址之间的双向隧道。(6)移动节点漫游到新的子网后,发送快速邻节点通告消息,新接入路由器收到这样的消息后便获知移动节点已经到来。移动节点这端也会建立起和旧接入路由器之间的双向隧道。在这之后,移动节点和通信对端进行会话,通信数据包的源地址虽然仍然是旧转交地址,但是在这之后会在外层多增加一个源地址为新转交地址目的地址为旧转交地址的外层封装,这样的数据包经隧道被发送给旧接入路由器之后,旧接入路由器首先解封装,之后再发送给通信对端。(7)新接入路由器收到移动节点发送的快速邻节点通告消息后,记录其新转交地址的信息,也开始转发目的地址为移动节点新转交地址的数据包。(8)移动节点也和通信对端之间进行绑定更新过程,在该过程之后,两者之间可以使用移动节点的新转交地址直接通信,而不用再经旧接入路由器通过隧道转发数据包。快速移动IPv6切换其主要设计思想为:移动节点在断开和旧接入路由器的连接之前就提前配置好一个新转交地址,这样在完成和新接入路由器的网络层切换之前,可以继续由旧接入路由器代为转发数据分组,没有了移动IPv6标准切换方案中所涉及的移动检测、获取转交地址和DAD延迟。2.4.2层次移动IPv6层次移动IPv6是从“减少位置更新开销"的角度对标准切换方案进行了改进扩展。由于移动节点的位置不固定,可能发生多次移动多次切换,所以如果按照标准切换方案执行,移动节点每次切换都需要和家乡代理和其他通信对端进行绑定更新注册过程。家乡代理和通信对端与移动节点的物理位置可能较远,也可能中间间隔了多个网络,那样这样频繁的注册过程,一方面造成了网络中增加了大量的数据分组造成网络拥塞,另~方面给家乡代理带来了较大的处理负担,造成其效率下降数据处理能力降低。另外较远的传输距离也会带来更大的数据包丢失率,有可能引起移动节点通信质量的严重下降。因此,从分层次分区域以提高通信效率的角度出发,IETF提出了区别对待“微移动"和“宏移动"的层次移动IPv6切换方案HMIPv6(HiemrchicalMobileIPv6)12s】,拓扑图如图2.2所示。13 2移动IPv6切换方案概述堞◇⋯⋯婴!通信对端CN图2.2层次移动IPv6网络拓扑层次移动IPv6定义了几个新的功能实体:移动锚点MAP(MobilityAnchorPoin0:本质是网络中一类特殊的路由器,为移动节点提供类似于家乡代理的服务,同一个网络中可以指定多个路由器作为移动锚点。区域转交地址RCoA(RegionaiCare.ofAddress)-移动锚点将自己的网络前缀信息发送给移动节点,移动节点利用该网络前缀自动配置出有效的转交地址,如其他转交地址那样,发送给家乡代理和通信对端进行绑定更新注册,标识自己的位置信息。链路转交地址LCoA(On-LinkCoA):移动节点在所处网络中,通过路由通告消息或路由器请求消息所携带的网络信息配置出相应的转交地址,这样的转交地址和移动IPv6协议中的转交地址功能用途是一样的。链路转交地址仅需报告给移动锚点,不需要发送给家乡代理和通信对端。本地绑定更新LBU(LocalBindingUpdate):移动节点通过向移动锚点发送本地绑定更新消息,使移动锚点能够及时建立或更新该移动节点对应的区域转交地址和链路转交地址关联信息。层次移动IPv6协议切换过程【28】:层次移动IPv6将移动节点的切换活动划分为微移动和宏移动两类:微移动是指移动节点在同一个移动锚点管辖的不同接入路由器之间发生漫游,宏移动14景酱+.◇ 2移动IPV6切换方案概述则是移动节点的漫游范围跨越了多个移动锚点。(1)发生微移动时的切换过程描述如下:①移动节点在当前网络接收到路由器通告消息,从中获取的接入路由器网络前缀信息和已保存的接入路由器网络信息不一致,那么可以判断发生了微移动。移动节点根据获取到的新接入路由器的网络信息,配置出新的链路转交地址,经过重复地址检测确认该地址有效后,将该地址封装到本地绑定报文中,发送给已连接到的移动锚点进行绑定更新操作。②移动锚点接收到移动节点发来的注册消息,建立或更新本地存储的相关区域转交地址及其相对应的链路转交地址关联条目,以此标识其最新位置信息,完成之后向移动节点发送注册确认消息。③移动节点和移动锚点完成各自的上述操作后即完成了一次微移动切换过程,该过程中移动节点只需要向移动锚点报告链路转交地址即可,无需向家乡代理注册,不仅减少了移动节点自身的通信量,也减少了网络中的报文量、减轻了家乡代理和通信对端的负担,使得该移动过程在家乡代理和通信对端看来是“透明"的。(2)发送宏移动时的切换过程描述如下:①前面已经说过,在同一个网络域内,可能存在多个移动锚点。移动节点在这样的网络内,收到的路由器通告消息中就可能包含了多个移动锚点选项,但是只能从中选出一个接受其服务。从选中的移动锚点选项中,根据64位网络前缀信息配置出新的区域转交地址,并根据新接入路由器的子网前缀信息配置出新的链路转交地址,对区域转交地址进行重复地址检测确认该地址是否可用。②移动节点将可用的区域转交地址和链路转交地址,通过本地绑定更新消息,一并发送给移动锚点进行绑定更新注册。③移动锚点接收到移动节点发来的本地绑定更新消息后,取出新的链路转交地址进行DAD,建立该移动节点新区域转交地址和新链路转交地址的对应关系条目,执行完这些操作之后,向移动节点发送本地绑定更新确认消息。④移动节点收到移动锚点回复的本地绑定更新确认消息后,将区域转交地址通过绑定更新消息发送给家乡代理,在家乡代理一端建立起移动节点的家乡地址和新区域转交地址之间的绑定关系,也可以同时将绑定更新消息发送给通信对端。这一操作与移动IPV6中的注册过程类似。15 2移动IPv6切换方案概述⑤家乡代理收到绑定更新消息后,更新或建立本地缓存条目中关于该移动节点家乡地址和新区域转交地址之间的对应关系,并向移动节点回复一个绑定确认消息。之后的操作就类似于移动IPv6中的通信过程了。可以看到,引入微移动和宏移动这样的层次结构之后,移动节点的切换效率能够明显提升。但是由于宏移动时,移动节点仍旧需要和移动锚点、家乡代理甚至通信对端进行绑定更新操作,这样的情况就和移动IPv6切换一样了,所以,大量的宏移动也会造成网络通信负担加重、家乡代理负担加剧以及切换时间延迟的增大。层次移动IPv6仍然有较大的改进空间。2.4.3快速一层次移动IPv6前面两小节分别介绍了快速移动IPv6和层次移动IPv6,横向对比可以发现,快速移动IPv6能够从切换的时间延迟方面较大的提升切换效率,而层次移动IPv6则能够在位置更新操作方面提高切换性能,那么,如果能将二者的优点结合起来,就能在移动切换技术的性能提升方面更上一次层楼。快速.层次移动IPv6(FastHandoverforHierarchicalMIPv6)[29】就是结合了快速切换和层次切换优点的一种改进的移动切换方案。快速.层次移动IPv6并不是简单的将快速切换和层次切换的流程简单合并到一起,分析也表明,二者的简单组合反而会带来三角路由问题,如图2.3所示。删PAR姒PM恹叫图2.3快速切换和层次切换的简单组合发往移动节点的数据分组首先到达移动锚点,移动锚点将这些数据分组转发给l刚妾入路由器,由旧接入路由器将这些数据分组最终转发给新接入路由器。在层次网络结构中,旧接入路由器将数据分组发送给新接入路南器的过程中,仍旧要通过移动锚点进行中转,这样就形成了三角路由。16叶¨雕一~I.~眦~I晰幡一m||~ 2移动IPv6切换方案概述实际情况是,快速.层次移动IPv6中为了实现数据传输的优化,用移动锚点代替旧接入器执行数据转发功能,如图2.4所示,通信对端发出的数据分组,在移动锚点处进行代理处理,之后,无需再经过旧接入路由器中转,直接交付给新接入路由器,这样的优化流程解决了三角路由问题。PAR姒PI删图2.4快速·层次移动IPv6数据流程1.快速.层次移动IPv6协议中增加了两个概念:(1)旧链路转交地址PLCoA(PreviousOn-LinkCare.ofAddress):表示移动节点位于旧接入路由器链路上时配置得到的链路转交地址,相当于快速移动IPv6协议中的旧转交地址。(2)新链路转交地址NLCoA(NewOn-LinkCare.ofAddress):表示移动节点位于新接入路由器链路上时配置得到的链路转交地址,相当于快速移动IPv6协议中的新转交地址。2.同时,对层次切换和快速切换中的消息做出了如下修改:(1)快速-层次移动IPv6在层次移动IPv6协议中的移动锚点选项中新增加一个F标志位,表明进行了快速切换操作。(2)没有改变快速移动IPv6的消息格式,但是对各个消息的发送方和接收方做出了修改。3。快速.层次移动IPv6的切换流程如下:(1)移动节点执行移动检测过程,如果能够由链路层检测机制检测到新的接入点,就发送一条包含该新接入点身份标识的路由器代理请求消息给移动锚点,希望获取更多的相关信息。(2)移动锚点收到移动节点发送的路由器代理请求消息,取出新接入点的标识信息,找到对应的接入路由器(即新接入路由器),之后将新接入路由器的相关1711咖II~.●B~lIci¨...........¨.......I 2移动IPv6切换方案概述网络信息通过代理路由器通告消息回复给移动节点。移动节点利用该消息中返回的网络前缀信息配置新链路转交地址。(3)重复地址检测确认新链路转交地址可用后,将旧链路转交地址和新链路转交地址通过快速绑定更新消息一并发送给移动锚点。(4)移动锚点收到快速绑定更新消息,发送切换初始化消息给新接入路由器。接入路由器收到这样的切换发起消息后,回复切换应答消息给移动锚点,并且在收到移动节点的快速邻节点通告消息之前,缓存来自移动锚点的发往移动节点的数据分组。(5)移动锚点在收到新接入路由器返回的切换发起应答消息后,也向移动节点返回一条快速绑定应答消息。之后,移动锚点开始截获目的节点为该移动节点的数据分组,并将这些分组通过隧道发往新接入路由器。(6)移动节点完成链路层的切换,到达新接入路由器的链路上,开始向新接入路由器发送快速邻节点通告消息。新接入路由器收到通告消息后,便可以将缓存的发往移动节点的数据分组交付给移动节点的新链路转交地址。(7)移动节点转入层次移动IPv6操作,发起与移动锚点的本地绑定更新消息,该消息中包含自己的新链路转交地址。移动锚点收到本地绑定更新消息,撤销与新接入路由器之间的数据转发隧道。(8)移动锚点返回一条本地绑定应答消息给移动节点,之后的操作便与层次移动IPv6协议中的一致了,分别选择进行宏移动或微移动切换操作。·快速-层次移动IPv6将快速切换协议和层次切换协议的优点有机的结合了起来,通过改进措施,既避免了简单合并所带来的三角路由问题,也能够降低切换时间延迟、数据包丢失和减少位置更新开销,但是还是给移动锚点带来了较大的负担。2.5本章小结移动IPv6切换技术方而的研究创新层出不穷,至今已有多种协议和方案。本章从移动IPv6标准切换方案开始,对它及其后来的改进方案如快速移动IPv6协议、层次移动IPv6协议和快速.层次移动IPv6协议进行了详细介绍和分析,评价每种方案的优势和劣势。18 3基于网络的区域移动性管理方案3基于网络的区域移动性管理方案上一章介绍的MIPV6协议以及对其扩展的FMIPv6、HMIPv6和F.HMIPv6协议都是基于终端的全局移动性管理技术(Terminal/Host-basedGlobalMobilityMamgement,TERGMM)130J,即在整个移动切换过程中,由移动终端管理所有移动相关事务,做出决策并发送各种切换控制消息,这样无疑加重了正在通信的移动终端的负担。因此,有必要研究出一种由网络中其他功能实体代替移动终端执行移动管理,从而将终端从繁琐的移动检测、配置转交地址、发送绑定更新消息等任务中解脱。基于网络的区域移动性移动管理技术(Network.basedLocalizedMobilityManagement,NETLMM)[31J就是基于这种思想的一种方案。3.1代理移动IPv6协议概述代理移动IPv6协议PMIPv6132】是由I酊下的NETLMM工作组提出并制定为标准的,它正是一种基于网络的区域移动性管理协议。PMIPv6协议和MIPv6一样,都是为了解决IP移动性问题,并且是由MIPv6协议扩展而来,采用了移动节点和家乡代理或移动终端直接执行切换管理的一些交互消息,其实质,就是将以往需要移动节点自己执行的与家乡代理或通信对端之间的信息交互过程,交给网络中其他功能实体来完成,由网络代为管理移动节点的移动管理事务。关于代理移动IPv6具体如何实现,在RFC5213中做出了详细说明。代理移动IPv6协议中,一方面体现了“基于网络”的思想,一方面体现了“区域管理”的思想。关于“基于网络”。代理移动IPv6中,为了减轻移动节点从事移动管理事务的繁重负担,新增了两类网络实体,以实现对移动IPv6中家乡链路属性的模拟,保证移动节点通信不受影响,且在通信对端甚至移动节点自身来看,跨网络的漫游是“透明的”,因为新的功能实体也实现了对移动节点移动过程中路由信息、转交地址信息的管理,移动节点已经不需要参与任何与移动切换有关的事务,只需要与通信对端进行正常的会话。关于“区域管理”。全局性和区域性,是对协议所能够管辖的移动节点移动19 3基于网络的区域移动性管理方案范围的界定。全局移动性协议中,允许移动节点漫游范围扩展至整个地理位置(aP整个拓扑域),在此过程始终为节点提供移动性支持;区域移动性协议,相对于全局范围,仅针对移动节点在相邻子网间漫游的情况,将整个拓扑域划分为多个PMIPv6域,每个域内有各自的网络功能实体执行协议功能。3.2代理移动lPv6的消息和实体代理移动IPv6中,新增加了两个功能实体,并对移动IPV6中的部分消息做了扩展,下面将分别进行介绍【331。3.2.1消息扩展1.代理绑定更新消息PBU(ProxyBindingUpdateMessage)代理绑定更新消息是在移动IPv6中绑定更新消息的基础上进行的扩展,它的源节点和目的节点分别是移动节点接入链路上的移动接入网关和移动节点连接到的本地移动锚点,该消息用于建立移动节点家乡网络地址前缀信息和其当前获取的转交地址之间的绑定关系,格式如图3.1所示。SequenceAHLKMRPReservedLifetimeMobilityOptions图3.IPBU消息格式消息中增加了一个P标志位,用于指示本地移动锚点。如果移动节点发送的自己直接注册的绑定更新消息,该位设置为O,如果发送的是代理绑定更新消息,则设置为O。2.代理绑定更新应答消息PBA(ProxyBindingAcknowledgementMessage)s。atu。lKRPReservedSequenceLifetimeMobilityOptions图3.2PBA消息格式 3基于网络的区域移动性管理方案PBA消息的源节点和目的节点分别是本地移动锚点和移动接入网关,作为本地移动锚点对代理绑定更新消息的回应。格式如图3.2所示。代理绑定更新应答消息也新增了一个P标志位,和PBU消息一样,标记本地移动锚点。该消息中P位的值为O或l,是由代理绑定更新消息中P标志位的值所决定的,二者保持一致。3.切换指示选项HLO(HandoverIndicatorOption)移动接入网关向本地移动锚点发送代理绑定更新消息,本地移动锚点回复一条代理绑定更新应答消息,这样的交互过程中要用到切换指示选项来标识切换相关信息。其格式如图3.3所示。lTypelLengthlReservedlHII图3.3HLO选项格式4.家乡网络前缀选项HNPO(HomeNetworkPrefixOption)在移动接入网关向本地移动锚点发送代理绑定更新消息,同时本地移动锚点回复一条代理绑定更新应答消息的过程中,家乡网络前缀选项标识了移动节点家乡网络的前缀信息。格式如图3.4所示。TypeLengthReservedPrefixLengthHomeNetworkPrefix图3.4HNPO选项格式5.接入类型选项ATI'O(AccessTechnologyTypeOption)该选项同样是用于移动接入网关向本地移动锚点发送代理绑定更新消息,同时本地移动锚点回复一条代理绑定更新应答消息这个过程,它标识了当前移动节点连接到的MAG的接入技术类型,格式如图3.5所示。图3.5ATTO选项格式6.本地链路地址选项LLAO(Link.10calAddressOption)在移动接入网关和本地移动锚点进行PBU.PBA交互的过程中,该选项记录了MAG的本地链路地址,格式如图3.6所示。21 3基于网络的区域移动性管理方案TypeLengthILinl(-10calAddress图3.6LLAO选项格式7.移动节点链路层标记选项MNLLIO(MobileNodeLink.1ayerIdentifierOption)在移动接入网关和本地移动锚点进行PBU.PBA交互的过程中,该选项记录了移动节点的链路层标识信息。格式如图3.7所示。TypeLengthReservedLink-layerIdentifier图3.7MNLLIO选项格式8.时间戳选项TO(T'tmestampOption)时间戳选项同样是用在移动接入网关和本地移动锚点进行PBU-PBA交互的过程中,格式如图3.8所示。TypeLengthlThe。。绷p图3.8TO消息格式3.2.2网络实体代理移动IPv6协议中新引入了两个实体,本地移动锚点(LocalMobilityAmhor,LMA)(或称作区域性移动锚点)和移动接入网关(MobileAccessGateway,MAG)132l。1.本地移动锚点LMALMA类似于移动IPv6中家乡代理的功能,是对其的扩展,它连接着区域内的11个MAG,保存着移动节点MN的实时位置信息和路由寻址信息。除了具有这样的功能外,添加了对代理移动IPv6协议的支持,是一类特殊的路由器。LMA记录移动节点的接入状态和移动节点的家乡网络前缀信息,以此来维护移动节点家乡地址和网络的连接。 3基于网络的区域移动性管理方案2.移动接入网关啪移动接入网关也是一类特殊的接入路由器,它位于移动节点所接入的链路上,负责管理该链路上所有接入的移动节点及其移动相关信息。MAG是介于LMA和MN之间的一个“中介",它收集MN的路由信息并汇报给LMA,来往于LMA和MN的上下行数据包都要通过MAG进行转发,MN切换过程也是交由MAG代为处理。代理移动IPv6实质上就是将由MAG代替移动节点执行移动性管理。3.3代理移动IPv6切换流程1.移动节点接入代理移动IPv6域下面结合图3.9描述一下移动节点接入代理移动IPv6域时的切换流程。图3.9移动节点接入代理移动IPv6域(1)移动节点在漫游过程中,进入某个代理移动IPv6域内,建立链路层连接后,该链路上的某个移动接入网关对移动节点进行识别认证,获得其身份信息,验证该移动节点是否有权限在该域内接受网络移动性服务。(2)认证可以为该移动节点提供移动管理服务,之后,移动接入网关继续获取移动节点的链路层地址及其本地移动锚点的地址信息,接着代替移动节点向本地移动锚点发送代理绑定更新消息,告知其移动节点最新的位置信息。(3)本地移动锚点收到代理绑定更新消息后,将包含有移动节点家乡地址网络前缀的代理绑定更新应答消息回复给移动接入网关。另一方面,本地移动锚 3基于网络的区域移动性管理方案点在本地建立或者更新移动节点对应的绑定缓存条目,将该移动接入网关的地址登记为移动节点的代理转交地址,并着手建立和移动接入网关之间的双向隧’j-厶遭o(4)移动接入网关收到本地移动锚点发送的代理绑定更新应答消息,也开始建立和本地移动锚点之间的双向隧道,即隧道的两端分别为移动接入网关的地址和本地移动锚点的地址。移动接入网关向移动节点发送路由器通告消息,消息中携带移动节点家乡地址的网络前缀信息。(5)移动节点收到移动接入网关发送的路由器通告消息后,根据其中的家乡网络前缀,选择有状态地址配置或者无状态地址自动配置模式来获取接口地址。(6)在之后的通信中,如果本地移动锚点收到目的地址为移动节点家乡地址的数据分组时,会对数据包进行封装,外层目的地址为移动节点当前的代理转交地址(HP移动接入网关的地址),通过双向隧道将数据包传输给移动接入网关。隧道的另一端,移动接入网关收到这些数据分组,首先解封装,然后将原来的数据分组发往连接在同一链路上的移动节点。(7)另一个方向,移动节点发送给通信对端的数据分组也是经过移动接入网关进行封装,通过隧道发送给本地移动锚点,由本地移动锚点将数据分组转发给通信对端。2.移动节点在代理移动IPv6域内切换llNpMAGUIA图3.10移动节点在代理移动IPv6域内切换24 3基于网络的区域移动性管理方案移动节点在代理移动IPV6域内切换过程如图3.10所示。(1)移动节点处于某一代理移动IPv6域内,在获取足够的地址配置信息后开始从前移动接入网关(PreviousMAG,pMAG)切换到新移动接入网关(NewMAG,nMAG)的过程。前移动接入网关随即向本地移动锚点发送解除当前代理绑定更新的消息DeRegPBU(DereguhtionProxyBindingUpdate),请求解除前移动接入网关中保存的代理转交地址ProxyCoA与移动节点家乡地址的绑定。本地移动锚点更新内部的绑定缓存条目信息,向前接入路由器回复一条代理绑定更新应答消息,一般是过一段时间再删除这个条目。(2)新移动接入网关向本地移动锚点发送代理绑定更新请求消息,请求建立移动节点在新链路上的代理转交地址与移动节点家乡地址的绑定关系。本地移动锚点建立一条新的绑定缓存条目并向新移动接入网关回复一条代理绑定更新应答消息。(3)移动节点在新移动接入网关链路范围内发送路由器请求消息或被动的接收路由器通告消息,由于新移动接入网关发送的路由器通告消息包含了移动节点的家乡网络前缀,所以移动节点会使用家乡地址进行正常的通信会话。3.4本章小结本章介绍了基于网络的区域移动性移动管理技术和基于终端的全局移动性管理技术,两者最主要的区别还是在于执行移动管理的实体不同。代理移动IPv6协议为移动节点提供了不需要其亲自参与的IP移动服务,该协议引入了两个实体,即区域性移动锚点LMA和移动接入网关MAG。LMA的作用类似于移动IPv6中的家乡代理,是对家乡代理的功能扩展;MAG是介于LMA和MN之间的一个“中介”,转发来往于LMA和MN的上下行数据包,并代替移动节点执行移动性管理。下一章将会介绍对代理移动IPv6协议的扩展方案。 4改进的快速代理移动IPv6方案BFPMIPv64改进的快速代理移动IPv6方案E.FPMIPv6代理移动IPv6经历着和当初移动IPv6类似的发展历程,在IETF发布了PMIPv6标准切换协议后,研究人员又提出了“快速”切换的思想,以期提高标准PMIPv6切换协议的性能,因此有了快速代理移动IPV6协议ffastHandoverforProxyMobileIPV6,FPMIPv6)134J。通过对FPMIPv6的研究学习,结合实际应用,本文提出了一种改进的快速代理移动IPv6方案(EnhancedFPMIPv6,BFPMIPV6)。4.1问题描述快速代理移动IPv6协议的提出,是在代理MlPv6的基础上借鉴了快速移动IPv6中关于“预先切换”的思想。第2章中介绍过,快速移动IPv6分为“预测式"和“反应式”两种切换方式,快速代理移动IPv6同样也对应有这两种方式。代理移动IPv6的预测式快速切换流程【”】如图4.1所示,具体描述为以下四个步骤。(1)移动节点检测到切换即将发生时,将移动节点标识符(MN.Identifier,MN.ID)和最有可能要连接的网络接入点AP(AccessPoint)的标识信息(AP.Identifier,AP.ID)报告给前移动接入网关pMAG。之后,前移动接入网关发送切换发起消,g(HandoverInitiateMessage,HI)给新移动接入网关nMAG。切换发起消息报文必须包括移动节点标识符,选择性地包括移动节点的家乡网络前缀(HomeNetworkPrefix,HNP)、接口标识符(InterfaceIdentifier,liD)和本地移动锚点的地址(LMAAddress.LMaA)。(2)新移动接入网关回复一个切换发起应答消.g(HandoverAcknowledgeMessage,Hack)给前移动接入网关,随后,两者之问建立双向隧道,这样发往移动节点的数据分组就可以经前移动接入网关转发到新移动接入网关,再由新移动接入网关对它们解封装之后暂时缓存起来。(3)从移动节点发出的上行数据包被发送到新移动接入网关,新移动接入网关将这些数据包转发给前移动接入网关,再经前移动接入网关转发到本地移动 4改进的快速代理移动IPv6方案E-FPMIPv6锚点。(4)移动节点注册所必需的信息已经由切换发起报文发送给新移动接入网关,新移动接入网关发送代理绑定更新消,g(ProxyBindingUpdateMessage,PBLD给本地移动锚点进行代理绑定更新注册。E甲p-dN3曰I田}⋯⋯⋯⋯Rep。rt⋯⋯⋯,.{}=DLd矗ta===========>=#PBO.··-.PBA...图4.1预测式快速代理移动IPv6切换流程类似于快速移动IPv6,快速代理移动IPv6在前移动接入网关和新移动接入网关之间建立了一条双向隧道,发往移动节点的数据包能够通过前移动接入网关经隧道传输转发到新移动接入网关。解封装后,这些数据包暂时缓存在新移动接入网关中,直到移动节点连接到新移动接入网关所在的链路。代理快速移动IPv6减少了数据包丢失,但是由于它新增了许多报文,切换时延有时反而比代理移动lPV6长136l。快使代理移动IPv6执行切换发起是为了防止移动节点在切换时发生数据包丢失,因此协议设定在前接入路由器和新接入路由器之间建立双向隧道暂时缓27一■一...!一.●.一0~~砂~:一~一..一.一.,.....一~i;;文:_L~一~~}一:卜}: 4改进的快速代理移动IPv6方案F_,-FPMIPv6存部分数据包,并且给移动节点发送网络环境信息。如果移动节点在服务接入网络处的接收信号强度(ReceivedSignalStrength,RSS)小于预定义的阈值Sth,移动节点的切换发起过程就被触发,接下来就会执行切换过程【371。标准切换方案中,PMIPv6得以按流程顺利完成本地.夕b地切换的前提是,MN的移动总是有规律、方向确定的。然而现实中,移动节点(例如移动电话、车辆等)几乎不存在始终朝一个固定方向匀速移动的情况,有可能进入某个MAG覆盖范围后再向另外一个MAG移动,或者在两个MAG之间做往返运动,类似于无线切换中经典的“乒乓移动”模型。将这个现实问题用模型语言描述为:在前移动接入网关和新移动接入网关发起了一个代理快速移动IPv6切换之后,如果下列情况之一发生,那么这个切换发起就出错了【38】:(1)移动节点移动过程中发生返回前移动接入网关覆盖区域的情况,这时移动节点发送一个报告,通知此处的接收信号强度强于阈值;(2)前移动接入网关处的接收信号强度弱于阈值,移动节点发出的报文表明另一个MAG的接收信号强度强于移动接入网关处的接收信号强度,这可能是由于移动节点正向不同于移动接入网关的另外一个移动接入网关方向移动。如果上述两种情况中的任一事件发生了,那么此时的“新"移动接入网关并不是移动节点真正将要接入的,将它称作错误移动接入网关wMAG(WrongMAG),而将真正要切换到的移动接入网关称作正确移动接入网关cMAG(CorrectMAG)。4.2E-FPMIPv6方案的基本思想在代理快速移动IPv6协议中发生切换发起错误情况时,移动节点将不得不再次重启一个新的切换过程,发送一个错误通知给前移动接入网关,其中包含自己的身份标识信息和正确移动接入网关的地址身份信息。然后,前移动接入网关分别发送一个错误切换发起消息报文给错误移动接入网关和一个正确切换发起消息报文给正确移动接入网关。错误切换发起消息报文通知错误移动接入网关当前切换失效,正确切换发起消息报文告知正确移动接入刚关一个新的切换过程的开始。具体流程图如图4.2所示。这一过程存在的问题有: 4改进的快速代理移动IPv6方案E-FPMIPv6(1)尽管和PMIPv6相比,FPMIPv6切换时延减少了不少,但是它在切换过程中仍然存在数据包丢失和认证过程效率较低等问题,这是由于FPMIPv6在切换过程中将认证和注册过程分开执行。因此,可以考虑一种方案,将nMAG对MN的认证过程和nMAG向LMA注册的过程并行执行,来保证较低的切换时延。(2)如果切换过程发生如上所述的切换发起错误的情况即wMAG预测错误,那么pMAG就要撤销和它之间的双向隧道,重新和正确的MAG连接,这样必然导致切换中断时问增大,并且缓存在这个wMAG中的所有数据包都将丢失。可以考虑在pMAG上同样建立一个转发数据包的缓存区,pMAG在将和MN有关的上下行数据包转交给nMAG的时候,暂时保存数据包副本,这样在出错的时候能够尽快恢复,尽量减少数据包丢失。pMA6-IilA6CM^Gleport●⋯lJrY■●llack●⋯⋯.HI/瞰ck⋯⋯·-臣习O),⋯,则第r层的六边形数目为6r。由此得到一个有R层的模型内其六边形单元的总个数为:—&N(R户乏:6r+l=3R(R+1)+1(4.2)百采用被广泛用来评估移动协议性能的流体移动模型(Fluid.flowModel)来描述移动节点的移动特御删。其中,假设MN以速度y匀速运动,移动的方向均匀分布在【O,2万】,R和局分别表示单元穿越率(CellCrossRate)和整.个域的穿越率(OormmCrossRate),有如下计算式:Rc-pvLc.万Rd::.p..v.—L.—(.R.—)—霭(4.3)(4.4)其中,L。是一个单元的周长,L(R)是整个PMIPv6域的岗长,夕和V分别为MN的分布密度和其移动速度。4.4.1位置更新开销分析MAG发送多条代理绑定消息来实现MN的位置信息注册更新,在这里将每 4改进的快速代理移动IPv6方案E-FPMIPv6种移动管理协议的更新开销作为其信令开销进行分析。,:Avg刎(月)=∥(尺)尝厶2(4渤这里的彳Vg删(R)表示域内移动节点的平均数量。等t2是六边形细胞模型的每个单元的面积。用q.y表示x和Y之间的跳数,f和K分别是有线和无线链路传输的单位开销。因此,分别可以得到PMIPv6、FPMIPv6和E-FPMIPv6三种移动管理协议的位置更新开销:tCpMiPv6--坐≮岩尹进(4.6)LC卯MIi%6坐坠型些篙筠业丛垫坦(4.7)AV2.。IKILcE,,M,P,。=!:!』21:!!!!!!!垒!!::!!垒!!:!:!!兰!!垒!!:;::ii!j:I}{{;÷!!垒兰!:兰!苎!!:!必(4.8)4.4.2数据包传送开销分析本文中所讨论的数据包传送开销包括:传输开销,数据包丢失开销,时间延迟以及LMA和MAG处的路由数据包处理开销。每个过程的开销由以下式子所表示【4l】:用Z和6分别为数据包平均到达速率和一个单元中MN的平均数量,口表示绑定更新表的权值因素,∥为查找路由信息表的开销,刀表示一个域中MN的数量。得到LMA和MAG处理数据包的开销:置棚2以免(砌+∥109”)(4.9.)‰G=n2(c若8)(4.10)采用文献[42】中的切换时间延迟(HandoVerLatem”分析模型,tx-y表示x和J,之间信令传递的时间延迟,得到三种协议的时间延迟分别为:HLPMIPv6=5‘删一MA6恻MAG一正MA(4.11)33 4改进的快速代理移动IPv6方案E-FPMIPv6HLFP脚~622f^Ⅳ^粥+62f^Ⅳ一胸G+4f删G-£删肌鲫帆6=2‰一嬲+2‰G一嬲+2max{2,删一脚,2%G以删>(4。12)(4.13)另外用啦,哆和鳓分别代表PMIPv6、FPMIPv6、EFPMIPv6三个协议的丢包率,那么,三种协议的数据包传送开销分别可以表示如下:Pc哪6=Rd‘q·HLP胁6·{‰+‰+九[K+下(D。啪一眦+D。眦一龇)卫(4.14)PCFPMIPv62Rd·∞2·HLFPⅦPv6·{PLMA+PMA6+ⅡK+t(D,啪一w悯+D。眦-LMA+D,眦叶眦+D,眦一帆)])(4.15)PC唧M脚s=R。·HLEFPMIPv6·{PLMA+PM腼+九[K+t(D,M^G一。M加+D,MAG一。MAG)])(4.16)4。4。3切换总开销分析由前两小节分别得到的LC和PC的表达式,可以得到PMIPv6、和E-FPMIPv6三种协议的切换总开销陀删钾。,分别为:Tc⋯:型k半岩安坐出+Rd-QIi‰皿岫儿一一———丽i两广一肌一6·{PL№+‰+九[K+T(D。ⅢG一帆+D。脚一呲)]}TC阡Mp两:兰Q:!旦!竺!:!竺竺二里竺竺!二!坐±!:!里坐±!!坚竺±里!竺竺二坐苎!:垦!AVg删(R)FPMIPv6(4.17)+Rd·吐·HLFP心。6·{Pk+‰G+牝K+T(DpMAG-一+D。~一叭+DpMAG._cMAG+D,帆“叭)])(4.18)%一2坐坠型些舞Avlg焉坐出型监-。.IKI+R。吁HL聊一6·{‰+‰+,L[K+z(D岬一一+D岬一)])(4.19)公式中的各参数设置14311441145】如表4.1所示。 4改进的快速代理移动IPv6方案E-FPMIPv6表4.1参数设置参数值DMAG.MAo/DMAo.LMAl/16Lc120mV28.9m/sP0.o002M[Ns/m2R3nlOT/K/tat)/6、f272f3九/n/p0.I/0.3/O.70tnm/tmm/tml12ms/lOms/lOOms∞l/t02/t030.3/0.3/0.05图4.4描述了参数设置不同时PMIPv6、FPMIPv6和E-FPMIPv6的切换总开销的比较。图4.4a和图4.4b为R=I时分别以r和聍作为参数的三种协议切换总开销的对比图,图4.4c和图4.4d为R=3时分别以g-和r/作为参数的三种协议切换总开销的对比图。图4.4a35 4改进的快速代理移动IPv6方案E-FPMIPv6雪图4.4b图4.4c图4.4d图4.4PMIPv6、FPMlPv6和E.FPMIPv6切换总开销的比较可以看}{{,当无线链路延迟盯增大的时候,PMIPv6、FPMIPv6和E-FPMIPV6的切换开销都随之增大,PMIPv6协议增大的幅度较后两者更大,但是E-PMIPv636 4改进的快速代理移动IPv6方案F_,-FPMIPv6方案的总开销明显小于前两者的切换开销。类似于参数r的影响,当移动节点的数量胛增大的时候,PMIPv6、FPMIPv6和E-FPMIPv6的切换开销也随之增大,但是相比之下,E-PMIPv6增大的幅度最小,且总体水平小于前两种协议。4.5本章小结鉴于基于终端的全局移动性管理协议如移动IPv6协议等切换信令开销较大、更新时延较大和位置保密性问题突出等相关问题,IETF提出了基于网络的区域移动性管理协议——代理移动IPV6协议。快速代理移动IPv6是代理移动IPv6标准协议的扩展,旨在减少切换时间延迟,然而在实际应用中MN并非每次都能对新接入点预测正确,这种情况会带来更长的时间延迟和大量数据包的丢失。本章在考虑到MN切换发起错误的情况提出了一种改进的快速代理移动IPv6方案,希望通过采用“切换发起和代理绑定更新同时执行”和“缓存与转发并行"的思想降低切换时延和数据包丢失率从而降低切换过程总开销,理论分析结果表明,相比代理移动IPv6和快速代理移动IPv6,改进方案在切换时问延迟和数据包丢失率方面都有性能的提升。 5仿真和分析为了验证网络协议的正确性以及评估分析其性能,通过虚拟环境对方案、协议进行仿真模拟是必需的。在网络仿真方面,常用的仿真工具有OPNET、NS.2、Matlab、PacketTracer、CASSAP等。基于NS.2所具有的免费、开源、可编程性、可移植性较好等优点,本文在NS.2环境中完成对改进协议的仿真和分析。5.1仿真环境介绍5.1.1NS一2简介NS一2I制是NetworkSimulatorVersion2的简称,意为网络模拟器的第二个版本,是一款面向对象的网络环境离散事件模拟器。它起源于1989年,在1995年得到Xerox公司的支持后,有了长足的发展,目前已经成为流行的网络仿真软件之一,不仅被研究人员用来进行各种方案、协议的模拟,也被越来越多的教研人员用于辅助教学,应用广泛。NS-2的最大特点是面向对象,它内部定义了一个庞大的C++类库,用于实现当先大多数的网络协议,建立相应的链路层模型,需要模拟时根据需要创建相应已定义类的实例,构建需要的网络模型,同时还有用代码呈现的协议详细的实现细节。与另一款流行的仿真软件OPNET相比,NS.2完全免费,能够在Linux、Unix和Windows等多种操作系统平台上运行,最重要的它源代码开放,研究人员对于已有的协议有什么改进时,能够在NS一2中找到对应的代码部分,自行加以修改,并且可以和所有人共享,更加便于对网络进行研究和扩展。NS.2的内部使用了C++和OTcl两种编程语言1471。这两种语言分别对应NS-2所实现的两大功能。首先,NS.2需要对网络协议进行仿真,而网络协议中定义了大最的报文格式,因此NS.2一方面要能有合适的语言描述这些报头、选项、字节、比特网等的具体情况,另一方面还要实现对这些网络结构的高效率处理以便达到使用人员所需要的模拟效果。所以对程序内部模块的运行速度要求较高。因此C++语言非常合适。其次,一个网络协议的成功模拟,往往需要对其38 5仿真和分析中各种网络组建及网络参数进行大量设置和修改,在实际模拟中要求做到研究人员在NS.2内部提供的各种构件的基础上,能够像搭积木一样快速构建出需要的网络环境,在模拟过程中只需修改几个普通的参数就能够达到对协议进行控制的目的。OTcl是Object--orientedToolConumndLanguage的简称,意为面向对象的工具命令语言。OTcl脚本语言是能够解释执行的脚本语言,能在多个平台上运行,该语言简单易懂,语法简单,修改方便,在NS-2中用来快速构建所需的网络环境,通过简单的语句实现参数修改,在处理仿真场景、配置网络协议以及控制协议流程等方面十分具有优势。5.1.2快速代理移动IPv6扩展模块经过研究人员的不断探索,NS.2已经能很好的模拟移动IPV6,并已经有FMIPv6、HMIPv6等多种扩展包供实验人员选用。代理移动IPv6的仿真方面,近两年也有不少学者参与研究。本文采用NS.2的FPMIPv6扩展模块进行仿真实验。该模块是在m-allinone.2.29版本下进行的扩展。FPMIPv6扩展包中做出的修改主要有:1.新定义了一个分组首部hdrpmipv6及其C++类PacketHeaderClass,以Pmipv6RegType来区分是PBU消息还是PBACK消息:2.修改了绑定缓存更新条目BULE类classBULEntry,定义在协议中条目中应该保存的信息有:移动节点身份标识mnid,移动节点家乡地址lllnprefix,移动节点的代理转交地址,条目生存时间,本地移动锚点.proxy地址,缓存数据包队首指针.coa,重传和刷新l时ife间timelmaa*pktPBUr,以及当.BULTnne前状态信息state。3.新定义一个从Agem基类派生出的MAGAgent类,类中定义了发送代理绑定更新消息的sendpbuO方法、发送切换发起消息的sendhi()方法、切换应答消息sendhack()方法、接收绑定更新应答消息的process定更新列表条目的findbule0方法、创建绑定更新列表条目的cmambule0方法在盘岢o4.新定义一个从Agent基类派生出的LMAAgent类,类中定义了查找移动节点家乡地址的fmdmnprefixO方法、将移动节点家乡地址添加到本地的add_mn_prefixO方法、发送代理绑定更新应答消息的send_.pback0方法、查找绑39 5仿真和分析定缓存条目的findbceO方法、创建绑定缓存条目的cmambceO方法等。5.新定义绑定缓存条目BCE类classBCacheEntry,定义在协议中条目中应该保存的信息有:移动节点身份标识mnid,移动节点家乡地址mnpreftx,移动节点的代理转交地址,条目生存时间,定义的方法有.proxy:插入新条目的removeentryO方法等。6.从地址分类器基类AddressClassifter派生出的源地址分类器classPMIPv6Src和目的地址分类器classPMIPv6Dest。FPMIPv6协议中的实体和NS.2中定义的实体类对应关系如表5.1所示,而协议中主要的几个消息和代码中方法的对应关系如表5.2所示。表5.1实体和类的对应关系FPMIPv6中的实体代码中的实体类名称MAGclassMAGAgentAgent/PMlPv6/MAGLMAclassLMAAgentAgent/PMIPv6/LMA表5.2消息和方法的对应关系FPMIPv6协议中消息对应的方法HIMAGAgent::send—hi()HAckMAGAgent:send—.hack()PBUMAGAgent::send_pbu()PBALMAAgent::send_pbackO5.2E-FPMIPv6在NS_2中的功能模块扩展由于E-FPMIPv6方案是在FPMIPv6协议的基础上改进而来的,所以要想在NS.2中实现E-FPMIPv6,需要对FPMIPv6扩展模块加以修改和扩展。其中最主要的,是对MAG功能的扩展,改进后方案中,MAG不仅要发送和处理HI消息和W-HI消息,还增加了数据包的缓存的功能,在切换完成后完成对这些数据包柏 5仿真和分析的转交。另一方面,移动节点发送的Report消息也需要修改,因为通过该消息,MAG要做出判断,是Report消息还是W-Report消息,以便实施不同的操作。所以,对FPMIPv6模块的主要扩展做如下介绍。l。预先切换方面。改进方案的关键部分是在预先切换中pMAG发送给cMAG的Ⅷ报文中增加MN.ID和认证信息,使得cMAG可以通过提前获得MN身份信息而马上进行PBU注册。实际上,在FPMIPv6模块中,MAGAgent类中发送瑚消息的函数sendhi()已经携带有MN的信息了,只是该字段未利用,所以不需要额外添加字段来标识MN身份。2.关于消息。FPMIPv6模块中,移动节点向pMAG发送的report消息,是作为一个Message类来实现的,即classPt_MNMsg类。改进方案中,希望移动节点发送的report消息,在MAG处能够区别是正常切换的报告还是预判错误的切换报告,所以在该类中添加W字段,该字段值为1时表示该消息是预.report判错误的切换报告。移动节点在执行发送report功能时,根据检测到的当前MAG的ID进行判断,如果MAGID和pMA0不相同且和也不相同时,认为是在.IDnMAGID上一次切换没有完成的情况下再次检测到了nMAG,则再次发送report时将w_report置l(正常状态下pMAGID不为空,nMAG—ID为空,切换中二者均不为空)。判断逻辑为:如果(MAQID!=pMAQID)Jt(nMAQI删ULL)w正常的切换如果.report=O;//report(MAGID!=pMAQID)g(MAQIDI=nMAQID)W;切换发起错误的3.关于.report=l。需//要修改的功能主要re有po两rtMAGMAG方面,一是实现数据包的缓存功能,二是在接收到MN发来的wrongreport消息后能够做出正确的判断并执行相应的操作。首先,新建一个缓存数据包的类classCaPacketQueue,使用队列数据结构。classCaPacketQueue.:publicConnector{public:virtualvoidenque(Packet·);virtualPacket·deque0;41 5仿真和分析protected:Queue();hatqlim;intblocked;,其次,在MAGAgent类中,修改数据包处理函数process__packetO,对收到的数据包增加一项判断,检查w_report位的值,执行如下操作:process_packet(MN的report消息);如果wrepor产O发送姐消息;反之{发送W-HI消息;新建CaPacketQU91.19对象;∥接收到发往MN的数据包后即入队)5.3E-FPMIPv6在NS一2中的实现5.3.1仿真环境的配置NS.2最初是在Unix系统下开发的,所以,可以在Solaris、SunOS等UNIX和类UNIX系统中直接使用,而如果想在windows操作系统下使用,需借助于在该操作系统下运行的一个UNIX模拟环境—℃yg、Ⅳifl。因此,在windowsXP操作系统中,整个仿真环境的配置,就包括了按照Cygwin、安装NS.2和安装FPMIPv6扩展包三个部分。1.Cygwin的安装这~过程需要注意的是:一,最好将Cygwm安装在C盘根目录,这样可以避免一些不必要的安装错误问题:二,在组件选择的环节,除默认勾选的安装包外,要想完成实验,还需选择其他如gawk,gnuplot,make,gcc,gcc-旷等42 5仿真和分析组件。2.NS.2.29和扩展包的安装NS.2.29是类型为.tar.gz的压缩文件,解压缩之后才能安装,这个过程要注意的是不能用windows自带的WinRAR软件进行解压缩,而是进入Cygwin,用命令提示符进入相应目录完成解压和安装。FPMIPv6模块的安装,是在对NS.2.29解压缩之后,用扩展包替换解压之后的m-2.29文件夹,然后执行./install命令。需要注意的是安装过程可能耗时较长。测试是否安装正确,可以进入Cygwin,运行一个.钯l实例程序,看它是否能够正确执行。5.3.2仿真拓扑的构建分别对FPMIPv6方案和E-FPMPv6方案进行仿真比较。我们所使用的仿真拓扑结构如图5.1所示。网、‘—?+,—-‘’lL一—.一一图5.1仿真拓扑图仿真环境中一共6个网络实体:一个移动节点MN,一个通信对端CN,一个本地移动锚点LMA,三个移动接入网关MAG,除MN为无线节点外,其余均为有线节点。实验中MAC层协议采用802.11,队列算法采用DropTail,路由协议采用DSDV,数据源采用UDP类型。设置链路延迟为1璐,LMA和CN之间的传输延迟为10rns。实验开始时MN在pMAG无线信号范围之内,1.Os时开始向wMAG和cMAG方向移动,在移动的过程中发生切换。整个模拟时问设定为20s。43岔备甜/I, 5仿真和分析构建网络环境中主要部分的介绍如下。1.设置层次化的路由$nsnode-config—addressTypehierarchical2.无线设置setopt(chan)ChanneVWirelessChannel;群channeltypesetopt(prop)Propagation/TwoRayGround;拌radio-propagationmodelsetopt(neti0Phy/WirelessPhy;拌networkinterfacetypesetopt(mac)Mac/802—11;群MACtypesetopt(响)Queue/DropTail/PriQueue;撑interfacequeuetypesetopt(11)LL;撑linklayertypesetopt(ant)Antenna/OmniAntenna;撑antennamodelsetopt(ifqlen)50;撑maxpacket讷ifqsetopt(adhocRouting)DSDV;撑routingprotocol3.拓扑域设置settopo【newTopography】$topoload——flatgrid$opt(x)$opt(y)4.记录文件设置(FPMIPv6扩展包尚不具备nam功能)Settf【opentrac己outW】$nstrace-all$tfsetbf[openthroughput.outW】5.LMA设置setlma【Snsnode1.0.0】$hnasetX-350.0$1masetY—100.0$1masetZ——0.0撑特别注意的是创建LMA节点之后,一定要在链路设置之前将其激活setIma_pm【$1mainstall·lma】群设置链路Snsduplex-linkShna$cnlOOMb$opt(dfLinkDelay)DropTail6.MAG设置(以一个为例) 5仿真和分析setmagl【$nsnode3.0.0】$maglsetX-100.0$maglset【200.0$maglsetz-0.0#MAG节点设置好之后,也必须在链路设置之前将其激活setmagl__pm【$maglinstall-mag】setlmaa【$1manode—addr】撑设置链路Snsduplex-link$magi$1ma100Mb$opt(dfLinkDelay)DropTail7.接入点设置$nsnode-config—adhocRouting$opt(adhocRouting)\一Irrype$opt(H)、一macType$opt(mac)|-酗Type$0瞰ifq)、一ifqLen$opt(ifqlen)|一antType$opt(anO|·propType$op《prop)|一phyType$opt(netiO|-channel【new$opt(chan)】、-topolnstance$topo|-wiredRoutingON、-agentTraceON|-routerTraceOFFt—reacTraceON|·movemen仃race0FF8.创建移动节点setmn【Snsnode1.0.1】$mnrandom.motion0Smnbase-station【AddrParamsaddr2id【$maginod争addr]】 5仿真和分析SmnsetX—100.0Smnset【500.0SmnsetZ..0.0撑在LMA处登记移动节点的家乡地址$1ma_pmregister·mn—addr【$mn_macid】【AddrParamsaddr2id[$mnnode-addr]】9.CBR设置setopt(cbdnterval)0.001setopt(cbrPaeketSize)1000$trafficsetpacketSize_$opt(cbrPaeketSize).$trafficsetinterval_$opt(cbrInterval)5.4仿真结果分析5.4.1性能评价指标评价移动切换的效率,两个主要的指标是切换的时间延迟和切换过程数据包的丢失率,而如何在这两项指标上有所突破,也是研究人员改进各种移动切换协议的着手点。丢包率:是一个比率,表示在单位时间内未收到的数据分组数与发送的数据分组数的比率,由于信号衰减、网络质量等诸多凶素的影响,可能产生数据分组的丢失。时延:是由各种因素引起的,包括打包和解包时延,以及网络传送时延,主要讨论网络传输时延。本文提出的BFPMIPv6方案,也正是希望能在这两方面比FPMIPv6方案表现更优。上一章从理论上分析前者性能更好,本章进行了NS.2仿真后,也再次从时间延迟和数据包丢失率这两方面对两种方案进行比较。5.4.2仿真数据处理NS一2仿真过后,生成trace文件,截取如下的记录(部分):(一)r0.10338630pbu68⋯一-03.0.0.2501.0.0.250·lI46 5仿真和分析+0.10338601pbu68⋯一.03.0.0,2501.o.0.250.11.0.10338601pbu68⋯一.03.0.0.2501.0.o.250.11r0.10439201pbu68⋯一.03.0.0.2501.0.0.250.1l+0.10439210pba68一—.01.0.0.2503.0.0.250.I2-0.10439210pba68⋯一.01.0.0.2503.0.0.250.12r0.10539710pba68⋯一.01.0.0.2503.0.0.250.12+0.10539703pba68一.一01.0.0.2503.0.0.250.12(二)+0.52lcbr1000⋯一.220.o.01.0.1.O04.O.52lcbr1000⋯一220.0.01.0.1.004s0.500083958—3一MAC-一0BCN64【20affffffff00】r0.500596958—5一MAC⋯0BC'N64[20a缁阳苜00】+0.50l2lcbr1000⋯一.220.0.01.0.1.0l5-0.5012lcbr1000f⋯-22.0.0.01.0.1.015+0.5022lcbr1000⋯一一220.O.01.o-1.026.0.5022lcbr1000一~220.0.O1.0.I.O26Trace记录的各个字段意义如下:SI℃dstseqpkteVenttimef-nodet-nodetypeSlZeflagsfidaddnUmidevent:分组进入链路队列(+)、分组离开链路队列(-)、节点接收分组(r)、丢弃分组(d)。time:事件发生的时间;fromnode:分组的源节点。tonode:分组的目的节点;type:分组类型。size..分组的大小;flags:标志位。耐:专为IPV6定义的流标识符。SICaddr:分组的源地址:dstaddr:分组的目的地址。seqhum:分组的序列号;pktid:分组唯一的标识号码。用gawk工具提取记录信息并作出统计,其中,统计数据包丢失的代码主要部分如下: 5仿真和分析if(fromNode=;l&&toNode一2&&event==”+’.){totalNum++;timeArr[日=time;lossrate[1i】2(float)(dropNum/totaINum);件+;)珉f-d==2&&event=--’.d’.)dropNum++:5.4.3仿真结果分析在NS-2环境中分别对FPMIPv6方案和E-FPMPv6方案进行仿真并保存trace文件。由于CBR(ComtantBitRate)对切换性能有较明显的影响,所以分别设置CBR流量从100kb/s到1000kb/s十个值,每种方案得到10个trace记录文件,利用上--d,节提到的方法提取数据,从时间延迟和数据包丢失率两方面比较。HandoverLatency图5.2不同CBR下的时间延迟比较图5.2所示为不同CBR下,FPMIPv6和E-FPMIPv6的切换延迟时间比较。FPMIPv6方案的延迟时间随着CBR流量的增大而递增,且变化幅度较大;E-FPMIPv6方案的延迟时间没有太大的变化,总体较平稳,延迟时间低于FPMPv6。^*一R。§.1J.吝pu-H 5仿真和分析8薹皇耋PacketLoEsRate图5.3不同CBR下的丢包率比较图5.3描述了不同的CBR情况下,FPMIPv6和E-FPMIPv6整个切换过程中的数据包丢失率情况。随着CBR流量的增大,FPMIPv6方案的数据包丢失率几乎呈现线性递增的状态,变化幅度较大;而E-FPMIPv6方案由于增加了缓存队列,数据包丢失情况有了较明显的改善,总体保持平稳较低水平。5.5本章小结在众多的网络仿真软件中,NS.2以其免费、开源、移植性好等优点,成为众多科研人员的首选模拟工具。本章首先介绍了NS.2的基本知识,详细的描述了在NS.2上对快速代理移动IPv6的扩展技术。构建和配置了本文提出的改进方案的仿真环境,并分别对FPMIPv6和E-FPMIPv6进行仿真。仿真结果表明,改进方案在时间延迟、数据包丢失率方面具有更优的性能。453525l5O¨蜩钆啦儿¨钆州

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。
关闭