扫一扫
分享文章到微信
扫一扫
关注官方公众号
至顶头条
无线网络技术的发展已经改变了人们语音通信的方式,随着无线数据协议的发展,数据通信也正发生着与语音通信一样的变革。人们开始寻求移动的数据业务,研究移动IP技术成为业界研究的重点,而且在IMT2000中已明确规定,第三代移动通信系统必须支持移动IP分组业务。 目前IETF正在开发一套用于移动IP的技术规范,这主要是RFC2002、 RFC2003、RFC2004、RFC2290。其中:
RFC2002:IP移动性支持;
RFC2003:IP内的IP封装;
RFC2004:IP内的最小封装;
RFC2290:用于PPPIPCP的移动IPv4配置选项。
与传统IP的区别
传统IP技术的主机使用固定的IP地址和TCP端口号进行相互通信。在通信期间,它们的IP地址和TCP端口号必须保持不变,否则IP主机之间的通信将无法继续。
移动IP主机在通信期间可能需要在网路上移动,它的IP地址也许会经常发生变化。若采用传统方式,IP地址的变化会导致通信中断。为解决这一问题,移动IP技术引用了处理蜂窝移动电话呼叫的原理,使移动节点采用固定不变的IP地址,一次登录即可实现在任意位置上保持与IP主机的单一链路层连接,使通信持续进行。
重要概念
移动代理(MobilityAgent)
移动代理分归属代理(HomeAgent)和外区代理(ForeignAgent)两类,它们是移动的IP服务器或路由器,能知道移动节点实际连接在何处。
其中,归属代理是归属网上的移动IP代理,它至少有一个接口在归属网上。其责任是当移动节点离开归属网,连至某一外区网时,截收发往移动节点的数据包,并使用隧道技术将这些数据包转发到移动节点的转交节点。归属代理还负责维护移动节点的当前位置信息。
外区网代理位于移动节点当前连接的外区网络上,它向已登记的移动节点提供选路服务。当使用外区代理转交地址时,外区代理负责解除原始数据包的隧道封装,取出原始数据包,并将其转发到该移动节点。对于那些由移动节点发出的数据包而言,外区代理可作为已登记的移动节点的缺省路由器使用。
移动IP地址
移动IP节点拥有两个IP地址。
第一个地址称为归属地址(HomeAddress),这是用来识别端到端连接的静态地址,也是移动节点与归属网连接时使用的地址。不管移动节点连至网络何处,其归属地址保持不变。
第二个地址是转交地址(CareofAddress)。转交地址就是隧道终点地址。它可能是外区代理转交地址,也可能是驻留本地的转交地址。
外区代理转交地址是外区代理的一个地址,移动节点利用它进行登记。在这种地址模式中,外区代理就是隧道的终点,它接收隧道数据包,解除数据包的隧道封装,然后将原始数据包转发到移动节点。由于这种地址模式可使很多移动节点共享同一个转交地址,而且不对有限的IPv4地址空间提出不必要的要求,所以这种地址模式被优先使用。
转交地址是一个临时分配给移动节点的地址。它由外部获得(如通过DHCP),移动节点将其与自身的一个网络接口相关联。当使用这种地址模式时,移动节点自身就是隧道的终点,执行解除隧道功能,取出原始数据包。一个驻留本地的转交地址仅能被一个移动节点使用。转交地址是仅供数据包选路使用的动态地址,也是移动节点与外区网连接时使用的临时地址。每当移动节点接入到一个新的网络,转交地址就发生变化。
位置登记(Registration)
移动节点必须将其位置信息向其归属代理进行登记,以便被找到。在移动IP技术中,依不同的网络连接方式,有两种不同的登记规程。
一种是通过外区代理,即移动节点向外区代理发送登记请求报文,外区代理接收并处理登记请求报文,然后将报文中继到移动节点的归属代理;归属代理处理完登记请求报文后向外区代理发送登记答复报文(接受或拒绝登记请求),外区代理处理登记答复报文,并将其转发到移动节点。
另一种是直接向归属代理进行登记,即移动节点向其归属代理发送登记请求报文,归属代理处理后向移动节点发送登记答复报文(接受或拒绝登记请求)。登记请求和登记答复报文使用用户数据报协议(UDP)进行传送。
当移动节点收到来自其归属代理的代理通告报文时,它可判断其已返回到归属网络。此时,移动节点应向归属代理撤销登记。在撤销登记之前,移动节点应配置适用于其归属网络的路由表。
代理发现(AgentDiscovery)
为了随时随地与其他节点进行通信,移动节点必须首先找到一个移动代理。移动IP定义了两种发现移动代理的方法:一是被动发现,即移动节点等待本地移动代理周期性地广播代理通告报文;二是主动发现,即移动节点广播一条请求代理的报文。移动IP使用扩展的“ICMPRouterDiscovery”机制作为代理发现的主要机制。
使用以上任何一种方法都可使移动节点识别出移动代理并获得转交地址,从而获悉移动代理可提供的任何服务,并确定其连至归属网还是某一外区网上。使用代理发现可使移动节点检测到它何时从一个IP网络(或子网)漫游(或切换)到另一个IP网络(或子网)。
所有移动代理(不管其能否被链路层协议所发现)都应具备代理通告功能,并对代理请求作出响应。所有移动节点必须具备代理请求功能。但是,移动节点只有在没有收到移动代理的代理通告,并且无法通过链路层协议或其他方法获得转交地址的情况下,方可发送代理请求报文。
隧道技术(Tunneling)
当移动节点在外区网上时,归属代理需要将原始数据包转发给已登记的外区代理。这时,归属代理使用IP隧道技术,将原始IP数据包(作为净负荷)封装在转发的IP数据包中,从而使原始IP数据包原封不动地转发到处于隧道终点的转交地址处。在转交地址处解除隧道,取出原始数据包,并将原始数据包发送到移动节点。当转交地址为驻留本地的转交地址时,移动节点本身就是隧道的终点,它自身进行解除隧道,取出原始数据包的工作。IETFRFC2003和RFC2004各自定义了一种利用隧道封装数据包的技术。
在RFC2003中规定,为了实现在IP数据包中封装作为净负荷的原始IP数据包,需要在原始数据包的现有头标前插入一个外层IP头标。外层头标中的源地址和目的地址分别标识隧道的两个边界节点。内层IP头标(即原始IP头标)中的源地址和目的地址则分别标识原始数据包的发送节点和接收节点。除了减少TTL值之外,封装节点不改变内层的IP头标。内存IP头标在被传送到隧道出口节点期间保持不变。从而使原始IP数据包原封不动地转发到处于隧道终点的转交地址。
使用RFC2004定义的IP内最小封装有一个前提条件,就是当原始数据包被分片时,不能使用这种封装技术。也就是说,数据包在封装之前不能被分片。因此,对移动IP技术来讲,最小封装技术是可选的。为了使用最小封装技术来封装数据包,移动IP技术需要在原始数据包经修改的IP头标和未修改的净负荷之间插入最小转发头标。显然,这种最小封装技术比RFC2003定义的封装技术节省开销。
当拆装数据包时,隧道的出口节点将最小转发头标的字段保存到IP头标中,然后移走这个转发头标。
工作原理
移动IP协议的工作原理大致如下:
移动代理(即外区代理和归属代理)通过代理通告报文广播其存在。移动节点通过代理请求报文,可有选择地向本地移动代理请求代理通告报文。
移动节点收悉这些代理通告后,分辨其在归属网上,还是在某一外区网上。
当移动节点检测到自己位于归属网上时,那么它不需要移动服务就可工作。假如移动节点从登记的其他外区网返回归属网时,通过交换其随带的登记请求和登记答复报文,移动节点需要向其归属代理撤消其外区网登记信息。
当移动节点检测到自己已漫游到某一外区网时,它获得该外区网上的一个转交地址。这个转交地址可能通过外区代理的通告获得,也可能通过外部分配机制获得,如DHCP(一个驻留本地的转交地址)。
离开归属网的移动节点通过交换其随带的登记请求和登记答复报文,向归属代理登记其新的转交地址,另外它也可能借助于外区代理向归属代理进行登记。
发往移动节点归属地址的数据包被其归属代理截收,归属代理利用隧道技术封装该数据包,并将封装后的数据包发送到移动节点的转交地址,由隧道终点(外区代理或移动节点本身)接收,解除封装,并最终传送到移动节点。
在相反方向,使用标准的IP选路机制,移动节点发出的数据包被传送到目的地,无需通过归属代理转发。
无论移动节点在归属网内还是在外区网中,IP主机与移动节点之间的所有数据包都使用移动节点的归属地址,转交地址仅用于与移动代理的联系,而不被IP主机所觉察。
说明了移动节点在外区网上时,移动IP的工作过程。
不足之处
移动IP是一种新颖技术,它自然存在一些不足之处,这就是:
移动节点连至Internet的链路通常是无线链路,这种链路与传统的有线网络相比,其带宽明显低得多,误码率高得多; 由于采用IP隧道封装技术,使得封装后的数据包大于源路由数据包; 必须事先知道隧道的出口节点能解除封装,取出原始数据包,否则IP隧道封装技术无法使用;
每个移动IP节点的成本明显高于有线IP网的节点成本; [Page]
移动节点可能是电池供电,如何减小功耗是一个急需解决的问题; 某些防火墙可能会阻断IP隧道,因为它们检验每个数据包的源地址域,而移动节点的数据包归属地址与外区网的网络地址不一样,从而导致防火墙阻截IP隧道数据包;目前Internet上的大多数设备和ISP不支持移动IP业务。
如果您非常迫切的想了解IT领域最新产品与技术信息,那么订阅至顶网技术邮件将是您的最佳途径之一。