一种基于卫星网络的路由方法和装置制造方法及图纸

技术编号:11383285 阅读:105 留言:0更新日期:2015-05-01 07:56
本发明专利技术实施例公开了一种基于卫星网络的路由方法和装置,该方法包括:当前节点根据自身与目的节点的逻辑地址关系确定当前节点与目的节点之间的主方向;当前节点根据该主方向以及预设的检测策略,确定当前节点在数据包传输路径上的下一跳节点,并向该下一跳节点发送数据包。

【技术实现步骤摘要】

本专利技术涉及卫星通信网络技术,尤其涉及一种基于卫星网络的路由方法和装置
技术介绍
目前,卫星通信网络的路由算法广泛使用数据报路由算法(DRA,Datagram Routing Algorithm)。DRA路由算法将卫星通信网络模拟为由虚拟节点组成的网络,每个虚拟节点对应固定的地理坐标,且根据该坐标与真实卫星的物理位置的距离关系,与真实卫星相映射。DRA路由算法在虚拟节点组成的逻辑平面内为收到的数据包计算路径。DRA路由算法包括方向预测阶段和方向增强阶段。在方向预测阶段,DRA路由算法首先根据当前节点与目的节点的逻辑地址关系计算出当前节点与目的节点之间的最少跳数,再根据最少跳数确定出当前节点与目的节点之间至少一条跳数最少的传输路径,及当前节点对应至少一条跳数最少的传输路径的下一跳方向。在方向增强阶段,当前节点根据自身到极地地区的方位,在至少一条跳数最少的传输路径中确定一条当前节点与目的节点之间的最短路径,并确定该最短路径对应的下一跳方向为当前节点与目的节点之间的主方向。可以理解地,若当前节点与目的节点处于同一条直线上的时候,当前节点与目的节点之间仅存在一条跳数最少的传输路径;若当前节点与目的节点不处于同一直线上的时候,当前节点与目的节点之间存在两个跳数最少的传输路径,当其中的一个确定为最短路径后,那么当前节点与目的节点之间另一个跳数最少的传输路径对应的下一跳方向为备选方向。由于卫星节点或星间链路失效等问题的存在,当前节点与目的节点之间的主方向和备选方向的下一跳节点如果都失效,就有可能造成数据包的传输环路,当数据包超过生存周期时,就会导致丢包,使得数据包无法正常转发。
技术实现思路
为解决上述技术问题,本专利技术实施例期望提供一种基于卫星网络的路由方法和装置,能够降低丢包概率,保证数据包的正常转发。本专利技术的技术方案是这样实现的:第一方面,本专利技术实施例提供一种基于卫星网络的路由方法,包括:当前节点根据自身与目的节点的逻辑地址关系确定所述当前节点与所述目的节点之间的主方向;所述当前节点根据所述主方向以及预设的检测策略,确定所述当前节点在数据包传输路径上的下一跳节点,并向所述下一跳节点发送数据包。进一步地,所述当前节点与所述目的节点之间的主方向为垂直方向时,所述当前节点根据所述主方向以及预设的检测策略,确定所述当前节点在数据包传输路径上的下一跳节点,具体包括:所述当前节点当识别出自身不在极地地区且不在距离极地地区节点最近的横向环上时,则依次从待定的下一跳节点中确定所述当前节点在数据包传输路径上的下一跳节点,其中,所述待定的下一跳节点依次包括:所述当前节点与所述目的节点之间的主方向的下一跳节点,备选方向的下一跳节点,次方向的下一跳节点及所述主方向相反方向的下一跳节点。进一步地,所述当前节点当识别出自身不在极地地区且不在距离极地地区节点最近的横向环上时,则依次从待定的下一跳节点中确定所述当前节点在数据包传输路径上的下一跳节点,包括:A、所述当前节点当识别出自身在极地地区,且数据包是从另一个极地地区的节点回发过来时,则所述当前节点可以将自身与目的节点之间的主方向的相反方向上的下一跳节点确定为自身在数据包传输路径的下一跳节点,并向所述下一跳节点发送数据包;所述当前节点当识别出自身不在极地地区和/或数据包不是从另一个极地地区的节点回发过来时,则转向步骤B;B、所述当前节点当识别出自身在距离极地地区节点最近的横向环上,且数据包是从所述极地地区节点回发过来时,则所述当前节点将自身的任意一个次方向确定为待定的下一跳节点方向,并转向步骤C;所述当前节点当识别出自身不在距离极地地区节点最近的横向环上和/或数据包不是从所述极地地区节点回发过来时,则所述当前节点将自身与目的节点之间的主方向确定为待定的下一跳节点方向,并转向步骤C;C、所述当前节点根据环路检测算法对所述待定的下一跳节点方向进行检测,当检测出所述待定的下一跳节点方向可用时,所述当前节点将所述待定的下一跳节点确定为所述当前节点在数据包传输路径上的下一跳节点,并向所述下一跳节点发送数据包;当检测出所述待定的下一跳节点方向不可用时,则转向步骤D;D、所述当前节点当识别出自身在极地地区时,则所述当前节点将自身与所述目的节点之间的主方向相反方向上的下一跳节点确定为所述当前节点在数据包传输路径上的下一跳节点,并向所述下一跳节点发送数据包;所述当前节点当识别出自身不在极地地区时,则转向步骤E;E、所述当前节点当识别出有备选方向且根据所述环路检测算法检测出所述备选方向可用时,则所述当前节点将所述备选方向上的下一跳节点确定为所述当前节点在数据包传输路径上的下一跳节点,并向所述下一跳节点发送数据包;所述当前节点当识别出没有备选方向和/或根据所述环路检测算法检测出所述备选方向不可用时,则转向步骤F;F、所述当前节点当根据所述环路检测算法检测出自身任意一个次方向可用时,所述当前节点将所述次方向上的下一跳节点确定为所述当前节点在数据包传输路径上的下一跳节点,并向所述下一跳节点发送数据包;所述当前节点当根据所述环路检测算法检测出自身任意一个次方向不可用时,则转向步骤G;G、所述当前节点当根据环路检测算法检测出自身的另一个次方向可用时,所述当前节点将所述次方向上的下一跳节点确定为所述当前节点在数据包传输路径上的下一跳节点,并向所述下一跳节点发送数据包;所述当前节点当根据所述环路检测算法检测出所述另一个次方向不可用时,则转向步骤H;H、所述当前节点当根据所述环路检测算法检测出自身与目的节点之间的主方向相反方向可用时,所述当前节点将所述自身与目的节点之间的主方向相反方向上的下一跳节点确定为所述当前节点在数据包传输路径上的下一跳节点,并向所述下一跳节点发送数据包;所述当前节点当根据所述环路检测算法检测出所述自身与目的节点之间的主方向相反方向不可用时,则转向步骤I;I、所述当前节点丢弃数据包。进一步地,所述当前节点与所述目的节点之间的主方向为水平方向时,所述当前节点根据所述主方向以及预设的检测策略,确定所述当前节点在数据包传输路径上的下一跳节点,具体包括:所述当前节点当识别出自身在距离极地地区节点最近的横向环上且数据包是从极地地区节点回发给所述当前节点的上一节点时,则依次从待定的下一跳节点中确定所述当前节点在数据包传输路径上的下一跳节点,其中,所述待定的下一跳节点依次包括:备选方向的下一跳本文档来自技高网
...

【技术保护点】
一种基于卫星网络的路由方法,其特征在于,包括:当前节点根据自身与目的节点的逻辑地址关系确定所述当前节点与所述目的节点之间的主方向;所述当前节点根据所述主方向以及预设的检测策略,确定所述当前节点在数据包传输路径上的下一跳节点,并向所述下一跳节点发送数据包。

【技术特征摘要】
1.一种基于卫星网络的路由方法,其特征在于,包括:
当前节点根据自身与目的节点的逻辑地址关系确定所述当前节点与所述目
的节点之间的主方向;
所述当前节点根据所述主方向以及预设的检测策略,确定所述当前节点在
数据包传输路径上的下一跳节点,并向所述下一跳节点发送数据包。
2.根据权利要求1所述的路由方法,其特征在于,所述当前节点与所述目
的节点之间的主方向为垂直方向时,所述当前节点根据所述主方向以及预设的
检测策略,确定所述当前节点在数据包传输路径上的下一跳节点,具体包括:
所述当前节点当识别出自身不在极地地区且不在距离极地地区节点最近的
横向环上时,则依次从待定的下一跳节点中确定所述当前节点在数据包传输路
径上的下一跳节点,其中,所述待定的下一跳节点依次包括:所述当前节点与
所述目的节点之间的主方向的下一跳节点,备选方向的下一跳节点,次方向的
下一跳节点及所述主方向相反方向的下一跳节点。
3.根据权利要求2所述的路由方法,其特征在于,所述当前节点当识别出
自身不在极地地区且不在距离极地地区节点最近的横向环上时,则依次从待定
的下一跳节点中确定所述当前节点在数据包传输路径上的下一跳节点,包括:
A、所述当前节点当识别出自身在极地地区,且数据包是从另一个极地地
区的节点回发过来时,则所述当前节点可以将自身与目的节点之间的主方向的
相反方向上的下一跳节点确定为自身在数据包传输路径的下一跳节点,并向所
述下一跳节点发送数据包;所述当前节点当识别出自身不在极地地区和/或数据
包不是从另一个极地地区的节点回发过来时,则转向步骤B;
B、所述当前节点当识别出自身在距离极地地区节点最近的横向环上,且
数据包是从所述极地地区节点回发过来时,则所述当前节点将自身的任意一个
次方向确定为待定的下一跳节点方向,并转向步骤C;所述当前节点当识别出
自身不在距离极地地区节点最近的横向环上和/或数据包不是从所述极地地区

\t节点回发过来时,则所述当前节点将自身与目的节点之间的主方向确定为待定
的下一跳节点方向,并转向步骤C;
C、所述当前节点根据环路检测算法对所述待定的下一跳节点方向进行检
测,当检测出所述待定的下一跳节点方向可用时,所述当前节点将所述待定的
下一跳节点确定为所述当前节点在数据包传输路径上的下一跳节点,并向所述
下一跳节点发送数据包;当检测出所述待定的下一跳节点方向不可用时,则转
向步骤D;
D、所述当前节点当识别出自身在极地地区时,则所述当前节点将自身与
所述目的节点之间的主方向相反方向上的下一跳节点确定为所述当前节点在数
据包传输路径上的下一跳节点,并向所述下一跳节点发送数据包;所述当前节
点当识别出自身不在极地地区时,则转向步骤E;
E、所述当前节点当识别出有备选方向且根据所述环路检测算法检测出所
述备选方向可用时,则所述当前节点将所述备选方向上的下一跳节点确定为所
述当前节点在数据包传输路径上的下一跳节点,并向所述下一跳节点发送数据
包;所述当前节点当识别出没有备选方向和/或根据所述环路检测算法检测出所
述备选方向不可用时,则转向步骤F;
F、所述当前节点当根据所述环路检测算法检测出自身任意一个次方向可用
时,所述当前节点将所述次方向上的下一跳节点确定为所述当前节点在数据包
传输路径上的下一跳节点,并向所述下一跳节点发送数据包;所述当前节点当
根据所述环路检测算法检测出自身任意一个次方向不可用时,则转向步骤G;
G、所述当前节点当根据环路检测算法检测出自身的另一个次方向可用时,
所述当前节点将所述次方向上的下一跳节点确定为所述当前节点在数据包传输
路径上的下一跳节点,并向所述下一跳节点发送数据包;所述当前节点当根据
所述环路检测算法检测出所述另一个次方向不可用时,则转向步骤H;
H、所述当前节点当根据所述环路检测算法检测出自身与目的节点之间的
主方向相反方向可用时,所述当前节点将所述自身与目的节点之间的主方向相
反方向上的下一跳节点确定为所述当前节点在数据包传输路径上的下一跳节

\t点,并向所述下一跳节点发送数据包;所述当前节点当根据所述环路检测算法
检测出所述自身与目的节点之间的主方向相反方向不可用时,则转向步骤I;
I、所述当前节点丢弃数据包。
4.根据权利要求1所述的路由方法,其特征在于,所述当前节点与所述目
的节点之间的主方向为水平方向时,所述当前节点根据所述主方向以及预设的
检测策略,确定所述当前节点在数据包传输路径上的下一跳节点,具体包括:
所述当前节点当识别出自身在距离极地地区节点最近的横向环上且数据包
是从极地地区节点回发给所述当前节点的上一节点时,则依次从待定的下一跳
节点中确定所述当前节点在数据包传输路径上的下一跳节点,其中,所述待定
的下一跳节点依次包括:备选方向的下一跳节点,所述当前节点与所述目的节
点之间的主方向的下一跳节点,所述主方向相反方向的下一跳节点及备选方向
相反方向的下一跳节点;
所述当前节点当识别出自身不在距离极地地区节点最近的横向环上和/或
数据包不是从极地地区节点回发给所述当前节点的上一节点时,则依次从待定
的下一跳节点中确定所述当前节点在数据包传输路径上的下一跳节点,其中,
所述待定的下一跳节点依次包括:所述当前节点与所述目的节点之间的主方向
的下一跳节点,备选方向的下一跳节点,次方向的下一跳节点及所述主方向相
反方向的下一跳节点。
5.根据权利要求4所述的路由方法,其特征在于,所述当前节点当识别出
自身在距离极地地区节点最近的横向环上且数据包是从极地地区节点回发给所
述当前节点的上一节点时,则依次从待定的下一跳节点中确定所述当前节点在
数据包传输路径上的下一跳节点;所述当前节点当识别出自身不在距离极地地
区节点最近的横向环上和/或数据包不是从极地地区节点回发给所述当前节点
的上一节点时,则依次从待定的下一跳节点中确定所述当前节点在数据包传输
路径上的下一跳节点,具体包括:
J、所述当前节点当识别出自身在距离极地地区节点最近的横向环上且数据
包是从所述极地地区节点回发给所述当前节点的上一节点时,则转向步骤K;

\t所述当前节点当识别出自身不在距离所述极地地区节点最近的横向环上和/或
数据包不是从所述极地地区节点回发给所述当前节点的上一节点时,则转向步
骤O;
K、所述当前节点当根据所述环路检测算法检测所述备选方向可用时,所
述当前节点将所述备选方向上的下一跳节点确定为所述当前节点在数据包传输
路径上的下一跳节点,并向所述下一跳节点发送数据包;当所述当前节点根据
所述环路检测算法检测出所述备选方向不可用时,则转向步骤L;
L、所述当前节点当根据所述环路检测算法检测自身与目的节点之间的主
方向可用时,所述当前节点将自身与所述目的节点之间的主方向上的下一跳节
点确定为所述当前节点在数据包传输路径上的下一跳节点,并向所述下一跳节
点发送数据包;当所述当前节点根据所述环路检测算法检测出自身与所述目的
节点之间的主方向不可用时,则转向步骤M;
M、所述当前节点当根据所述环路检测算法检测出自身与所述目的节点之
间的主方向相反方向可用时,所述当前节点将所述自身与目的节点之间的主方
向相反方向上的下一跳节点确定为所述当前节点在数据包传输路径上的下一跳
节点,并向所述下一跳节点发送数据包;当所述当前节点根据所述环路检测算
法检测出所述当前节点与所述目的节点之间的主方向相反方向不可用时,则转
向步骤N;
N、所述当前节点当根据所述环路检测算法检测所述备选方向相反方向可
用时,所述当前节点将所述备选方向相反方向上的下一跳节点确定为所述当前
节点在数据包传输路径上的下一跳节点,并向所述下一跳节点发送数据包;当
所述当前节点根据所述环路检测算法检测出所述备选方向相反方向不可用时,
则转向步骤X;
O、所述当前节点当根据所述环路检测算法检测自身与目的节点之间的主
方向可用时,所述当前节点将所述自身与目的节点之间的主方向上的下一跳节
点确定为所述当前节点在数据包传输路径上的下一跳节点,并向所述下一跳节
点发送数据包;当所述当前节点根据所述环路检测算法检测出所述自身与目的

\t节点之间的主方向不可用时,则转向步骤P;
P、所述当前节点当识别出自身有备选方向且根据所述环路检测算法检测出
所述备选方向可用时,所述当前节点将所述备选方向上的下一跳节点确定为所
述当前节点在数据包传输路径上的下一跳节点,并向所述下一跳节点发送数据
包;当所述当前节点识别出自身没有所述备选方向和/或根据所述环路检测算法
检测出所述备选方向不可用时,则转向步骤Q;
Q、所述当前节点当根据所述环路检测算法检测出自身的任意一个次方向
可用时,所述当前节点将所述次方向上的下一跳节点确定为所述当前节点在数
据包传输路径上的下一跳节点,并向所述下一跳节点发送数据包;当所述当前
节点根据所述环路检测算法检测出所述次方向不可用时,则转向步骤R;
R、所述当前节点当根据所述环路检测算法检测出自身的另一个次方向可
用时,所述当前节点将所述次方向的下一跳节点...

【专利技术属性】
技术研发人员:李昕韩江雪齐维孔李明衣龙腾陈山枝刘子鸾金晶王莹汪伟师玉龙肖佳李可李春秀张宏王寅庆涂小刚靳赫
申请(专利权)人:北京邮电大学
类型:发明
国别省市:北京;11

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1