您的位置:首页 > 代理IP资讯
发布时间:2020-03-24 17:29:19
手机ip地址修改、移动通信中移动IP节点技术的实现

  移动ip为移动主机在移动过程中保持原来通信不间断提供了实现方法,隧道技术是移动ip的关键技术之一。本文在深入学习移动ip的基础知识之后,给出了移动节点的一个具体的实现,具有一定实践意义。


  1移动通信中移动ip原理分析


  移动ip中的隧道技术有三种封装方式:ip的ip封装(ip in ip encapsulation),最小封装(minimal encapsulation)和通用路由封装(generic routing encapsulation)。


  在移动ip中,隧道的入口为移动节点的家乡代理,隧道的出口为移动节点的外地代理。家乡代理需要实现封装功能,封装后的数据包能到达外地代理,外地代理接到数据包后,进行解封装,然后将数据包路由给移动节点。数据包离开隧道入口后,在没有到达隧道出口前,可能出现路由环使它又回到了隧道入口处的情况,这样每次隧道都为它加封一个ip报头,而每个新的报头都有自己的生存时间域(ttl)值,这样就会出现数据包一直增大下去。为了防止这种递归封装,可采用如下机制:预封装的数据包的源地址就是隧道入口地址,此时假设递归封装出现;预封装的数据包的源地址与隧道入口处路由表指示的隧道出口地址相同,此时也假设递归封装出现。


  同时,如果家乡代理要将移动节点家乡链路上的广播包送给移动节点,必须采用多重封装,这时,里面一层隧道是从家乡代理到移动节点的家乡地址,外面一层隧道是从家乡代理到移动节点的转交地址。wwW.11665.coM因为,如果不采用多重封装的话,外地代理解封装后收到的是广播地址,它就不知道怎么办了。因此,这种现象应该作为防递归封装中的一种特殊情况处理。


  在解封装中,主要是将新ip报头去掉,使原来ip数据报恢复出来,因此相对较为简单。移动ip中,移动节点的外地代理已经保存了移动节点的注册信息,它能够将解封装后得到的数据报路由给移动节点。这样,就完成了从一个节点向移动节点发送一次数据的全过程。


  2移动ip节点在移动过程中通信的实现


  通常情况下,按照[rfc 2002]的标准,根据ipv4的移动ip方案规定,移动节点在外地链路上应该有一个外地代理位于隧道的出口,将从隧道发送过来的数据包转发给已经移动到该链路上的移动节点,但是随着ipv6即将成为事实上的下一代互联网的标准协议,地址空间问题已经彻底的解决,移动ipv6协议中取消了外地代理。在本文,为了简化问题的实现,我们规定,移动节点在外地链路上的转交地址全部都是配置转交地址,即不需要外地代理的转发,移动节点直接位于隧道的出口,接收数据包。


  2.1移动节点的工作方式


  移动节点基本工作方式有5个方面:


  代理搜索:代理搜索是移动节点能维持正常通信的前期工作,通过代理搜索移动节点首先确定自己的位置。


  注册:移动节点确定自己在外地链路的时候,循环给家乡带理发送一个udp包,通知它自己当前的ip地址,即外地链路取得的转交地址,直到收到代理服务器的应答消息。


  注销:移动节点重新回到家乡链路的时候,循环给家乡带理发送一个udp包,直到收到家乡代理的应答消息。


  接收数据包:移动节点在家乡链路接收数据包和固定节点的工作机制完全一样。


  发送数据包:如果移动节点确定自己在家乡链路上,它象固定节点一样,使用tcp/ip协议,不需要对数据包进行额外处理,直接发送;否则,移动节点会发现要发送的数据包的源地址是当前链路的转交地址,因此,它先将发送包源地址修改为家乡地址,然后再发送。


  2.2代理搜索


  移动节点利用代理搜索过程主要完成三个功能,即判定自身当前是连在家乡链路上还是外地链路上;检测自身是否已经切换了链路;如果已经处于外地链路,则取得外地链路上的转交地址。


  代理搜索由两条简单的消息构成。


  第一条消息是代理广播消息,家乡代理利用这个消息向移动节点宣布它们的功能。当一个节点在一条链路上被配置成家乡代理服务器的时候,它就在这条链路上广播或组播代理广播消息,这使得连到这条链路上的移动节点可以判定该链路上是否有代理存在。如果有,可以从代理广播消息中取得代理服务器的ip地址,并且判定代理的功能是什么。


  第二条消息是代理请求消息,当移动节点没有耐心等待下一个周期发送的代理广播消息时,它可以发送代理请求消息。这个消息的唯一目的就是让链路上的所有代理立即发送一个代理广播消息。有些时候,移动节点快速地切换链路,而代理发送广播消息的频率相比而言就太慢了,这时代理请求消息就非常有用了。由于密钥管理上的困难,移动ip不要求对这两种消息进行确认。


  2.3注册、注销机制


  移动ip的注册过程在代理搜索之后。此时,移动节点已经可以判断出自己的位置,是处于家乡链路还是处于外地链路。当移动节点发现它的网络接入点从一条链路切换到另一条链路上时,它就要进行注册。另外,由于这些注册也有一定的生存时间,所以有些时候,移动节点的位置并没有移动,它也要在现有注册过期时进行重新注册。


  移动ip的注册过程是:通知家乡代理它在外地链路取得的转交地址;使一个要过期的注册重新生效;在回到家乡链路上时要进行注销操作。


  2.4传递数据包的选路


  根据移动节点的当前位置进行数据包选路的技术,这是移动ip的最主要技术之一。我们必须考虑两种情况:移动节点连接在家乡链路上时和移动节点连接在外地链路上时。后一种情况还有两种情形:移动节点采用的是代理转交地址还是配置转交地址。由于ipv6已经成为下一代互联网事实上的标准协议,并且ipv6不存在地址空间问题,因此,在ipv6下,移动ip将没有外地代理。


  当注册工作完成之后,移动节点无论漫游到internet的任何地方,都会通过注册机制通知它的家乡代理它目前所取得的ip地址,使得家乡代理能够转发那些试图与它通信的网络节点给它发送的数据包,这里,我们不关心移动节点在外地链路是如何取得配置转交地址的,我们假定移动节点已经通过某种办法得到了一个外地链路上的配置转交地址,然后将这个地址通知给它的家乡代理。我们这里不考虑家乡代理如何将送往移动节点的数据包通过隧道路由给移动节点,这部分工作是另一位同学的毕业论文所涉及的内容,我们仅仅考虑移动节点需要做的处理。由于数据的通信是双向的,因此,处于外地链路上的移动节点涉及的工作就分为接收数据包和发送数据包两大部分。


  3总结


  移动ip为移动主机在移动过程中保持原来通信不间断提供了实现方法,隧道技术是移动ip的关键技术之一。当通信节点向移动节点发送数据报时,必须使用到隧道技术。本文介绍了移动ip中隧道技术的基本原理,以及给出了一种在linux系统下实现它的方法。对于实现途径,主要是在linux内核中加入程序模块,用以完成隧道技术的功能。随着当今电子商务的蓬勃发展,人们对于新的通信业务的要求越来越高,这是互联网及tcp/ip协议成功发展的必然结果。从而诞生出下一代的互联网协议ipv6,因此,随着移动用户和设备的飞速发展,基于ipv6的移动ip协议必然会迎来更广泛的发展前景。


上一篇 下一篇