发明内容
本发明的目的是提供一种移动节点自适应选择最优路径的通信方法,解决移动节点漫游到扩展网络域后,如何以自适应方式选择最优路径进行通信的问题。
解决上述问题的技术方案是:所提供的移动节点自适应选择最优路径的通信方法如下:
移动节点主动向基本域管理实体进行询问,获取需要信息,判断其数据通信是经过隧道封装后送往基本域管理实体,还是通过扩展网络域的网关直接访问,即:
1)移动节点从基本域管理实体获取需要从基本网络域发起访问的因特网服务器列表,同时获取当前访问的基本网络域主机是否为另一个正在漫游的移动节点;
1.1)对于基本域管理实体指定需要移动节点以基本网络域IP身份访问的因特网地址,移动节点通过路由操作控制发送的数据经过隧道封装后,发送到基本域管理实体上,基本域管理实体解除封装并把数据发送到相应的目的地址;
因此,因特网服务器将收到从基本网络域发起的访问,访问被允许;应答消息也将发送到基本网络域并转发给扩展网络域的移动节点;
1.2)其他不需要基本网络域IP身份的访问由移动节点利用扩展网络域直接访问;
2)对基本网络域主机的访问是:移动节点先利用基本网络域中转数据,同时询问该主机的身份,如果该主机为另一个正在漫游的移动节点,发起访问者尝试能否直接实现点对点通信,如果是基本网络域主机或者无法直接通信,移动节点仍然通过基本域管理实体实现通信。
本发明从机制上是以最优的路径策略访问基本网络域的主机、其他扩展网络域的漫游用户、因特网上的服务器,使移动节点无论漫游到任何地方,都能享受与在基本网络域时的同等访问权限,满足了柔性IP网络技术体系中用户的各种应用要求,使柔性IP网络技术体系应用范围更加扩大,同时也显著提高了柔性IP网络技术体系的整体效率。
具体实施方式
1、移动节点在漫游到扩展网络域后正常注册以验证身份,同时建立与基本网络域通信的隧道通路,此时移动节点就能实现传统柔性IP网络技术体系的数据传送功能了;
2、移动节点利用终端上的网络设备或其他装置,设置或自动获取扩展网络域的IP地址身份,成功后,移动节点就建立了利用扩展网络域网关直接访问因特网的能力;
3、移动节点主动向基本域管理实体发送询问消息,查询基本域管理实体上设置的必须经过基本域管理实体访问的因特网IP地址,基本域管理实体收到询问消息后,发送相应的需要基本网络域IP身份访问的因特网地址列表,如果基本域管理实体要求所有对因特网的访问都经过基本网络域访问,基本域管理实体发送响应消息把这一要求通知移动节点;
4、移动节点通过操作系统路由,使得数据的传送能利用系统内核的路由功能直接分流数据。即:针对每个需要经基本网络域访问的地址,移动节点建立一条主机路由,将路由指向移动节点的基本网络域地址接口;如果有一个网段需要经过基本网络域访问,移动节点建立相应的子网路由指向基本网络域地址接口;对于要求全部回基本网络域访问数据的情况,移动节点修改相应的路由项使得基本网络域主机地址成为默认网关地址对应的接口,同时,添加目标地址为接入管理实体的特定主机路由,其中下一跳和端口为移动节点在扩展网络域获得的IP地址;
5、要使基本网络域主机地址成为默认网关地址对应的接口,需要判断路由表的每一条缺省路由条目,即:如果路由表中只有一条缺省路由,记录此缺省路由的位置,以备调整;如果有多条缺省路由,记录度量值最小的一项的位置;具体的路由调整方法如下:
方法1:
删除或修改路由表中需要调整的缺省路由;使移动节点产生一条新的缺省路由,这条新加缺省路由的下一跳和端口均为移动节点在基本网络域原有的IP地址。
方法2:
修改路由表中需要调整的缺省路由的度量值为合法的值A;添加新的缺省路由,这条新加缺省路由的下一跳和端口均为移动节点在基本网络域原有的IP地址,度量值为合法的值B,使新添加的缺省路由的优先级高于原来缺省路由的优先级;
6、移动节点结束漫游状态时,移动节点将路由表恢复正常,其方法仍然是操作系统路由表的指针,查找判断路由表的每一条缺省路由,找到下一跳和端口均为移动节点在基本网络域原有的IP地址的缺省路由,可以按以下方法恢复路由表:
方法1:删除调整路由表时添加的缺省路由;恢复原来的缺省路由,这条缺省路由的下一跳和端口均为移动节点在扩展网络域获得的IP地址。
方法2:删除路由表中度量值为B的缺省路由;恢复路由表中度量值为A的缺省路由的度量值为修改以前的值。(此步骤可选,也可以不恢复)
然后删除目的地址为接入管理实体的特定主机路由;
7、移动节点访问基本网络域主机时,将发送消息询问该被访问的基本网络域地址是否为另一个正在漫游的移动节点,如果不是移动节点,移动节点的数据请求直接传送回基本网络域,并通过基本域管理实体的代理功能把数据发送给相应的主机;
8、如果移动节点正在访问的主机是另一个正在漫游的移动节点,基本域管理实体会通过消息通知移动节点,移动节点将判断是否能通过点对点方式直接通信,减少基本域管理实体的负担,提高整个柔性IP网络技术体系的性能。
在上述过程中,启用柔性IP网络技术体系时移动节点对路由表的调整如图1所示:
得到路由表指针→匹配需要调整的缺省路由(如果只有一条缺省路由,找到即可;如果有多条缺省路由,需要匹配度量值最小的)→修改缺省路由→增加特定主机路由→正常进行柔性IP网络技术体系的其他工作。
关闭柔性IP网络技术体系时移动节点对路由表的恢复如图2所示:
得到路由表指针→匹配需要恢复的缺省路由(匹配端口为移动节点在基本网络域原有的IP地址的一条缺省路由)→恢复缺省路由→删除特定主机路由→正常进行柔性IP网络技术体系的其他退出工作。
本方法的核心是移动节点动态判断当时访问的最优路径,同时针对各种访问情况,进行相应的处理:即,通过基本网络域访问因特网主机时,前述的路由表操作控制是指动态对路由表进行调整,使移动节点的相应数据都进入隧道,经隧道封装后送到基本域管理实体,基本域管理实体再进行转发。在移动节点的通信对端看来,它始终在与移动节点的在基本网络域配置的固定IP地址进行通信;对于所有的基于移动节点的基本网络域地址进行身份认证或权限认证的应用,并不会由于移动节点的移动而失效;在调整路由表的路由同时,为了保证注册过程顺利进行,需要增加一条到接入管理实体的主机路由。
对于移动节点访问基本网络域主机的问题,本方法主要通过在两个同时漫游的外地移动节点间建立点对点直接通信,减少了柔性IP网络技术体系的数据传送载荷,相应提高整个系统的处理能力。
本发明所涉及的相关技术术语如下:
1、基本域管理实体:有一个端口与移动节点所在的基本网络域相连的网络设备,为发生漫游的移动节点提供权限认证以及身份代理。
2、扩展域管理实体:在移动节点的扩展网络域上的网络设备,为移动节点转发域权限认证消息以及数据包。
3、接入管理实体:具有可在因特网路由IP地址的网络设备,它位于基本域管理实体与扩展域管理实体之间,进行域权限认证消息以及数据包转发的中继设备
4、移动节点:可以将接入因特网的位置从一条链路切换到另一条链路上,而仍然以基本网络域配置的IP地址身份保持所有正在进行的通信的设备。
5、基本网络域:移动节点漫游前所在的网络.
6、扩展网络域:移动节点漫游后所到达的网络.
7、通信对端:移动节点移动到扩展网络域以后,与其建立通信的主机或服务器。
8、隧道:一种把IP数据报的报头和数据当作新的荷载,重新封装新的报头而进行数据传输的方法。
9、路由表:路由表是操作系统路由选择的依据,路由表由一个或多个路由条目组成,路由条目一般包括:目的地址、掩码、网关地址(下一跳地址)、本地端口和度量值。
10、缺省路由:路由表中目的地址和掩码全为0.0.0.0的路由。通常情况下,移动节点访问公网时会匹配到此项路由。
11、特定主机路由:掩码为255.255.255.255的路由;