摘要:互联网技术接口信息和路由表更新模块设计:本模块主要实现以下功能:移动接口的信息维护和管理;为保证移动环境下的数据的正确发送和接收的路由更新:接受路由重定向,确定默认路由;建立和删除隧道路由项。
4.3.5 接口信息和路由表更新模块设计
本模块主要实现以下功能:移动接口的信息维护和管理;为保证移动环境下的数据的正确发送和接收的路由更新:接受路由重定向,确定默认路由;建立和删除隧道路由项。
(1)移动接口维护和管理
移动接口是在MR初始化时,调用ioctl_mr_initO来实现的。将新的移动接口定义为字符设备,还定义了一些控制参数,如打开和关闭。移动接口是建立在物理接口基础上的虚拟接口,它随着MR模块的载入而建立,随着MR模块的卸载而消失。
MR到HA的隧道也属于移动接口,在MR初始化时,通过add_tnl_to_haO建立MR端隧道,并加入到devbase的表中,直到家乡注册成功,HA端也建立了隧道,双向隧道才建立。
(2)改变默认路由
利用内核中现有的功能,首先检测链路的变化,然后通过接收路由器通告RA来获得当地的地址前缀,如果RA中存路由器全球IPv6地址,就直接设为默认路由。如果没有,就将RA的源链路本地地址作为默认路由项。
(3)移动子网前缀的注册和解注册
移动子网前缀的注册和解注册主要是MR将自身携带M络的前缀通告给HA,保证移动过程中移动网络内部的路由可达性移动子网前缀信息由BU携带,到达HA时更新其路由表。实现过程如图4-20所示。
移动子网前缀的注册过程如下。
①HA收到BU。
②进行BU合法性检査,包括源地址、目的地址、加密、认证等。
③如果有移动子网前缀选项,提取移动子网前缀及长度。
④对照路出表检查移动网络前缀的合法性。
⑤保存相关信息后,将新的移动网络前缀加入到路由表中,将新的路由项(移动网络前缀)的出口接口设为MR到HA的隧道端。
⑥发送BA。
移动子网前缀的解注册过程如下。
①HA收到BU。
②进行BU合法性检査,包括源地址、目的地址、加密、认证等。
③发现生存期为0,说明娃解注册,删除HA和MR之间的隧道。
④利用以前保存的信息,找到和MR相关的移动网络前缀项并删除。
⑤发送BA。
(4)建立和删除隧道路由项
HA和MR之间的双向隧道是NEMO中数据传送的重要通道,它的实现过程和MIPv6中的基本相同,这里不再赘述。
(5)重要数据结构描述
返回目录
编辑特别推荐
通信工程师备考资料免费领取
去领取