移动IP路由器技术的基本原理与工作过程( 二 )


移动IP的工作过程
移动主机在不同子网间漫游,其数据包的通信过程如下:
(1)本地代理和外地代理不停地向网上发送代理广告(AgentAdvertise?ment)消息,以声明自己的存在 。
(2)移动主机收到这些消息,确定自己是在本地网还是在外地网 。
(3)假如移动主机发现自己仍在本地网,即收到的是本地代理发来的消息,则不启动移动功能 。假如是从外地网络重新返回的,则向本地代理发出取消注册的消息,声明自己回到了本地网 。
(4)当移动主机检测到它移动到外地网时,则获得接管地址(CoA) 。
(5)然后移动主机向本地代理登记,表明自己已离开本地网,把所获得的接管地址通知本地代理 。
(6)登记完毕后,所有发给移动主机的数据包被本地代理截获,经本地代理封装后,通过隧道发到外地网络的外地代理FA(第一种CoA地址)或移动主机自身(第二种CoA地址) 。第一种情况下,外地代理再把数据包转发给移动主机 。此时,数据包在不同子网间传送成功 。
(7)移动主机发送数据到一般的IP主机时,按正常的IP寻址方法发送,不必通过本地代理 。出现的问题
在上述工作过程中,有效地解决了移动主机在子网间漫游通信的问题 。但是,却在路由上存在着问题 。当移动主机发送数据时,不管它是在本地网络还是在外地网络,它始终保留了它的本地网络地址,当它发送数据包时,可以用通常的IP协议发送 。反之,当一般IP主机给移动主机发送数据包时,首先到达移动主机的本地代理(HA),HA再根据收到的移动主机当前的接管地址CoA(假定为第一种地址),将数据包发往外地网络,由外地代理最终将数据包发给移动主机,这就出现了路由的“三角问题” 。最差的情况是当发送数据包的一般IP主机靠近移动主机所在的外地网络或移动主机已经漫游到发送主机所在的网络时,发送的数据包却仍要先到达移动主机的本地代理,再由本地代理发到外地代理,最后到达移动主机,这不仅增大了传输延迟,同时对一些延迟敏感的业务如音频、视频等造成极大的损害 。其次,数据包在网络中运行时间过长,浪费了网络资源,增加了网络负担 。优化路由
为了减小传输延迟、减轻网络负担,必须对路由进行优化 。一种最具代表意义的思想是隧道技术 。隧道技术本身是指移动主机登记后,发送主机发送数据包到本地网络,本地代理截获数据包后,将它作为净负荷封装在转发的数据包中,生成一个新的数据包,该数据包数据部分是净负荷,报头中,以本地代理的IP地址作为源地址,以接管地址CoA作为目的地址,完成封装,然后按常规的IP路由方式,通过隧道转发到处于隧道终点的接管地址处,解除隧道封装后,取出原始数据包,再发送至移动主机 。当接管地址是临时分配的驻留地址时,移动主机自己是隧道终点,它自身解除隧道封装,取出原始的数据包 。
在路由优化中假如将隧道技术应用到发送数据包的一般IP主机上,执行各种工作,那么就会省去本地代理的转发,解决了“三角形”问题 。也就是说当本地代理收到IP主机发往移动主机的数据后,向IP主机发出绑定请求,通知IP主机关于移动主机的捆绑信息(包括本地代理地址、CoA和注册生存时间),随后,IP主机对数据包进行封装,并建立与CoA处的隧道,数据包在隧道中透明传输,到达隧道终点后,解除封装,传给移动主机 。假如移动主机又移动了,新的CoA实体会把更新的捆绑信息传给老的CoA实体,而且本地代理也随后得到更新的捆绑信息,它再通知IP主机新的捆绑信息,之后传送的数据包直接由IP主机发往新的CoA处 。这样保证了数据包的网间通信,同时,减少了转发环节,消除了路由三角形,实现了路由的优化 。

推荐阅读