CN104581861A - 一种基于卫星网络的路由方法和装置 - Google Patents
一种基于卫星网络的路由方法和装置 Download PDFInfo
- Publication number
- CN104581861A CN104581861A CN201410801948.7A CN201410801948A CN104581861A CN 104581861 A CN104581861 A CN 104581861A CN 201410801948 A CN201410801948 A CN 201410801948A CN 104581861 A CN104581861 A CN 104581861A
- Authority
- CN
- China
- Prior art keywords
- node
- hop
- present node
- described present
- hop node
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W40/00—Communication routing or communication path finding
- H04W40/02—Communication route or path selection, e.g. power-based or shortest path routing
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D30/00—Reducing energy consumption in communication networks
- Y02D30/70—Reducing energy consumption in communication networks in wireless communication networks
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Mobile Radio Communication Systems (AREA)
Abstract
本发明实施例公开了一种基于卫星网络的路由方法和装置,该方法包括:当前节点根据自身与目的节点的逻辑地址关系确定当前节点与目的节点之间的主方向;当前节点根据该主方向以及预设的检测策略,确定当前节点在数据包传输路径上的下一跳节点,并向该下一跳节点发送数据包。
Description
技术领域
本发明涉及卫星通信网络技术,尤其涉及一种基于卫星网络的路由方法和装置。
背景技术
目前,卫星通信网络的路由算法广泛使用数据报路由算法(DRA,DatagramRouting Algorithm)。DRA路由算法将卫星通信网络模拟为由虚拟节点组成的网络,每个虚拟节点对应固定的地理坐标,且根据该坐标与真实卫星的物理位置的距离关系,与真实卫星相映射。DRA路由算法在虚拟节点组成的逻辑平面内为收到的数据包计算路径。
DRA路由算法包括方向预测阶段和方向增强阶段。在方向预测阶段,DRA路由算法首先根据当前节点与目的节点的逻辑地址关系计算出当前节点与目的节点之间的最少跳数,再根据最少跳数确定出当前节点与目的节点之间至少一条跳数最少的传输路径,及当前节点对应至少一条跳数最少的传输路径的下一跳方向。在方向增强阶段,当前节点根据自身到极地地区的方位,在至少一条跳数最少的传输路径中确定一条当前节点与目的节点之间的最短路径,并确定该最短路径对应的下一跳方向为当前节点与目的节点之间的主方向。可以理解地,若当前节点与目的节点处于同一条直线上的时候,当前节点与目的节点之间仅存在一条跳数最少的传输路径;若当前节点与目的节点不处于同一直线上的时候,当前节点与目的节点之间存在两个跳数最少的传输路径,当其中的一个确定为最短路径后,那么当前节点与目的节点之间另一个跳数最少的传输路径对应的下一跳方向为备选方向。
由于卫星节点或星间链路失效等问题的存在,当前节点与目的节点之间的主方向和备选方向的下一跳节点如果都失效,就有可能造成数据包的传输环路,当数据包超过生存周期时,就会导致丢包,使得数据包无法正常转发。
发明内容
为解决上述技术问题,本发明实施例期望提供一种基于卫星网络的路由方法和装置,能够降低丢包概率,保证数据包的正常转发。
本发明的技术方案是这样实现的:
第一方面,本发明实施例提供一种基于卫星网络的路由方法,包括:当前节点根据自身与目的节点的逻辑地址关系确定所述当前节点与所述目的节点之间的主方向;所述当前节点根据所述主方向以及预设的检测策略,确定所述当前节点在数据包传输路径上的下一跳节点,并向所述下一跳节点发送数据包。
进一步地,所述当前节点与所述目的节点之间的主方向为垂直方向时,所述当前节点根据所述主方向以及预设的检测策略,确定所述当前节点在数据包传输路径上的下一跳节点,具体包括:所述当前节点当识别出自身不在极地地区且不在距离极地地区节点最近的横向环上时,则依次从待定的下一跳节点中确定所述当前节点在数据包传输路径上的下一跳节点,其中,所述待定的下一跳节点依次包括:所述当前节点与所述目的节点之间的主方向的下一跳节点,备选方向的下一跳节点,次方向的下一跳节点及所述主方向相反方向的下一跳节点。
进一步地,所述当前节点当识别出自身不在极地地区且不在距离极地地区节点最近的横向环上时,则依次从待定的下一跳节点中确定所述当前节点在数据包传输路径上的下一跳节点,包括:
A、所述当前节点当识别出自身在极地地区,且数据包是从另一个极地地区的节点回发过来时,则所述当前节点可以将自身与目的节点之间的主方向的相反方向上的下一跳节点确定为自身在数据包传输路径的下一跳节点,并向所述下一跳节点发送数据包;所述当前节点当识别出自身不在极地地区和/或数据包不是从另一个极地地区的节点回发过来时,则转向步骤B;
B、所述当前节点当识别出自身在距离极地地区节点最近的横向环上,且数据包是从所述极地地区节点回发过来时,则所述当前节点将自身的任意一个次方向确定为待定的下一跳节点方向,并转向步骤C;所述当前节点当识别出自身不在距离极地地区节点最近的横向环上和/或数据包不是从所述极地地区节点回发过来时,则所述当前节点将自身与目的节点之间的主方向确定为待定的下一跳节点方向,并转向步骤C;
C、所述当前节点根据环路检测算法对所述待定的下一跳节点方向进行检测,当检测出所述待定的下一跳节点方向可用时,所述当前节点将所述待定的下一跳节点确定为所述当前节点在数据包传输路径上的下一跳节点,并向所述下一跳节点发送数据包;当检测出所述待定的下一跳节点方向不可用时,则转向步骤D;
D、所述当前节点当识别出自身在极地地区时,则所述当前节点将自身与所述目的节点之间的主方向相反方向上的下一跳节点确定为所述当前节点在数据包传输路径上的下一跳节点,并向所述下一跳节点发送数据包;所述当前节点当识别出自身不在极地地区时,则转向步骤E;
E、所述当前节点当识别出有备选方向且根据所述环路检测算法检测出所述备选方向可用时,则所述当前节点将所述备选方向上的下一跳节点确定为所述当前节点在数据包传输路径上的下一跳节点,并向所述下一跳节点发送数据包;所述当前节点当识别出没有备选方向和/或根据所述环路检测算法检测出所述备选方向不可用时,则转向步骤F;
F、所述当前节点当根据所述环路检测算法检测出自身任意一个次方向可用时,所述当前节点将所述次方向上的下一跳节点确定为所述当前节点在数据包传输路径上的下一跳节点,并向所述下一跳节点发送数据包;所述当前节点当根据所述环路检测算法检测出自身任意一个次方向不可用时,则转向步骤G;
G、所述当前节点当根据环路检测算法检测出自身的另一个次方向可用时,所述当前节点将所述次方向上的下一跳节点确定为所述当前节点在数据包传输路径上的下一跳节点,并向所述下一跳节点发送数据包;所述当前节点当根据所述环路检测算法检测出所述另一个次方向不可用时,则转向步骤H;
H、所述当前节点当根据所述环路检测算法检测出自身与目的节点之间的主方向相反方向可用时,所述当前节点将所述自身与目的节点之间的主方向相反方向上的下一跳节点确定为所述当前节点在数据包传输路径上的下一跳节点,并向所述下一跳节点发送数据包;所述当前节点当根据所述环路检测算法检测出所述自身与目的节点之间的主方向相反方向不可用时,则转向步骤I;
I、所述当前节点丢弃数据包。
进一步地,所述当前节点与所述目的节点之间的主方向为水平方向时,所述当前节点根据所述主方向以及预设的检测策略,确定所述当前节点在数据包传输路径上的下一跳节点,具体包括:所述当前节点当识别出自身在距离极地地区节点最近的横向环上且数据包是从极地地区节点回发给所述当前节点的上一节点时,则依次从待定的下一跳节点中确定所述当前节点在数据包传输路径上的下一跳节点,其中,所述待定的下一跳节点依次包括:备选方向的下一跳节点,所述当前节点与所述目的节点之间的主方向的下一跳节点,所述主方向相反方向的下一跳节点及备选方向相反方向的下一跳节点;所述当前节点当识别出自身不在距离极地地区节点最近的横向环上和/或数据包不是从极地地区节点回发给所述当前节点的上一节点时,则依次从待定的下一跳节点中确定所述当前节点在数据包传输路径上的下一跳节点,其中,所述待定的下一跳节点依次包括:所述当前节点与所述目的节点之间的主方向的下一跳节点,备选方向的下一跳节点,次方向的下一跳节点及所述主方向相反方向的下一跳节点。
进一步地,所述当前节点当识别出自身在距离极地地区节点最近的横向环上且数据包是从极地地区节点回发给所述当前节点的上一节点时,则依次从待定的下一跳节点中确定所述当前节点在数据包传输路径上的下一跳节点;所述当前节点当识别出自身不在距离极地地区节点最近的横向环上和/或数据包不是从极地地区节点回发给所述当前节点的上一节点时,则依次从待定的下一跳节点中确定所述当前节点在数据包传输路径上的下一跳节点,具体包括:
J、所述当前节点当识别出自身在距离极地地区节点最近的横向环上且数据包是从所述极地地区节点回发给所述当前节点的上一节点时,则转向步骤K;所述当前节点当识别出自身不在距离所述极地地区节点最近的横向环上和/或数据包不是从所述极地地区节点回发给所述当前节点的上一节点时,则转向步骤O;
K、所述当前节点当根据所述环路检测算法检测所述备选方向可用时,所述当前节点将所述备选方向上的下一跳节点确定为所述当前节点在数据包传输路径上的下一跳节点,并向所述下一跳节点发送数据包;当所述当前节点根据所述环路检测算法检测出所述备选方向不可用时,则转向步骤L;
L、所述当前节点当根据所述环路检测算法检测自身与目的节点之间的主方向可用时,所述当前节点将自身与所述目的节点之间的主方向上的下一跳节点确定为所述当前节点在数据包传输路径上的下一跳节点,并向所述下一跳节点发送数据包;当所述当前节点根据所述环路检测算法检测出自身与所述目的节点之间的主方向不可用时,则转向步骤M;
M、所述当前节点当根据所述环路检测算法检测出自身与所述目的节点之间的主方向相反方向可用时,所述当前节点将所述自身与目的节点之间的主方向相反方向上的下一跳节点确定为所述当前节点在数据包传输路径上的下一跳节点,并向所述下一跳节点发送数据包;当所述当前节点根据所述环路检测算法检测出所述当前节点与所述目的节点之间的主方向相反方向不可用时,则转向步骤N;
N、所述当前节点当根据所述环路检测算法检测所述备选方向相反方向可用时,所述当前节点将所述备选方向相反方向上的下一跳节点确定为所述当前节点在数据包传输路径上的下一跳节点,并向所述下一跳节点发送数据包;当所述当前节点根据所述环路检测算法检测出所述备选方向相反方向不可用时,则转向步骤X;
O、所述当前节点当根据所述环路检测算法检测自身与目的节点之间的主方向可用时,所述当前节点将所述自身与目的节点之间的主方向上的下一跳节点确定为所述当前节点在数据包传输路径上的下一跳节点,并向所述下一跳节点发送数据包;当所述当前节点根据所述环路检测算法检测出所述自身与目的节点之间的主方向不可用时,则转向步骤P;
P、所述当前节点当识别出自身有备选方向且根据所述环路检测算法检测出所述备选方向可用时,所述当前节点将所述备选方向上的下一跳节点确定为所述当前节点在数据包传输路径上的下一跳节点,并向所述下一跳节点发送数据包;当所述当前节点识别出自身没有所述备选方向和/或根据所述环路检测算法检测出所述备选方向不可用时,则转向步骤Q;
Q、所述当前节点当根据所述环路检测算法检测出自身的任意一个次方向可用时,所述当前节点将所述次方向上的下一跳节点确定为所述当前节点在数据包传输路径上的下一跳节点,并向所述下一跳节点发送数据包;当所述当前节点根据所述环路检测算法检测出所述次方向不可用时,则转向步骤R;
R、所述当前节点当根据所述环路检测算法检测出自身的另一个次方向可用时,所述当前节点将所述次方向的下一跳节点确定为所述当前节点在数据包传输路径上的下一跳节点,并向所述下一跳节点发送数据包;当所述当前节点根据所述环路检测算法检测出所述次方向不可用时,则转向步骤S;
S、所述当前节点当根据所述环路检测算法检测出自身与目的节点之间的主方向相反方向可用时,所述当前节点将所述自身与目的节点之间的主方向相反方向上的下一跳节点确定为所述当前节点在数据包传输路径上的下一跳节点,并向所述下一跳节点发送数据包;当所述当前节点根据所述环路检测算法检测出所述当前节点与所述目的节点之间的主方向相反方向不可用时,则转向步骤X;
X、所述当前节点丢弃数据包。
第二方面,本发明实施例提供一种基于卫星网络的路由装置,所述装置包括第一确定模块、第二确定模块及发送模块,其中:所述第一确定模块,用于根据当前节点与目的节点的逻辑地址关系确定所述当前节点与所述目的节点之间的主方向;所述第二确定模块,用于根据所述主方向以及预设的检测策略,确定所述当前节点在数据包传输路径上的下一跳节点;所述发送模块,用于向所述下一跳节点发送数据包。
进一步地,所述第一确定模块确定出所述当前节点与所述目的节点之间的主方向为垂直方向时,所述第二确定模块,还用于当识别出所述当前节点不在极地地区且不在距离极地地区节点最近的横向环上时,则依次从待定的下一跳节点中确定所述当前节点在数据包传输路径上的下一跳节点,其中,所述待定的下一跳节点依次包括:所述当前节点与所述目的节点之间的主方向的下一跳节点,备选方向的下一跳节点,次方向的下一跳节点及所述主方向相反方向的下一跳节点。
进一步地,所述第二确定模块,具体用于,
A、当识别出所述当前节点在极地地区,且数据包是从另一个极地地区的节点回发过来时,则可以将所述当前节点与目的节点之间的主方向的相反方向上的下一跳节点确定为所述当前节点在数据包传输路径的下一跳节点,并触发所述发送模块;当识别出所述当前节点不在极地地区和/或数据包不是从另一个极地地区的节点回发过来时,则转向步骤B;
B、当识别出所述当前节点在距离极地地区节点最近的横向环上,且数据包是从所述极地地区节点回发过来时,则将所述当前节点的任意一个次方向确定为待定的下一跳节点方向,并转向步骤C;当识别出所述当前节点不在距离极地地区节点最近的横向环上和/或数据包不是从所述极地地区节点回发过来时,则将所述当前节点与目的节点之间的主方向确定为待定的下一跳节点方向,并转向步骤C;
C、根据环路检测算法对所述待定的下一跳节点方向进行检测,当检测出所述待定的下一跳节点方向可用时,将所述待定的下一跳节点确定为所述当前节点在数据包传输路径上的下一跳节点,并触发所述发送模块;当检测出所述待定的下一跳节点方向不可用时,则转向步骤D;
D、当识别出所述当前节点在极地地区时,则将所述当前节点与所述目的节点之间的主方向相反方向上的下一跳节点确定为所述当前节点在数据包传输路径上的下一跳节点,并触发所述发送模块;当识别出所述当前节点不在极地地区时,则转向步骤E;
E、当识别出所述当前节点有备选方向且根据所述环路检测算法检测出所述备选方向可用时,则将所述备选方向上的下一跳节点确定为所述当前节点在数据包传输路径上的下一跳节点,并触发所述发送模块;当识别出所述当前节点没有备选方向和/或根据所述环路检测算法检测出所述备选方向不可用时,则转向步骤F;
F、当根据所述环路检测算法检测出所述当前节点任意一个次方向可用时,将所述次方向上的下一跳节点确定为所述当前节点在数据包传输路径上的下一跳节点,并触发所述发送模块;当根据所述环路检测算法检测出所述当前节点任意一个次方向不可用时,则转向步骤G;
G、当根据环路检测算法检测出所述当前节点的另一个次方向可用时,将所述次方向上的下一跳节点确定为所述当前节点在数据包传输路径上的下一跳节点,并触发所述发送模块;当检测出所述当前节点的另一个次方向不可用时,则转向步骤H;
H、当根据所述环路检测算法检测出所述当前节点与目的节点之间的主方向相反方向可用时,将所述当前节点与目的节点之间的主方向相反方向上的下一跳节点确定为所述当前节点在数据包传输路径上的下一跳节点,并触发所述发送模块;当根据所述环路检测算法检测出所述当前节点与目的节点之间的主方向相反方向不可用时,则转向步骤I;
I、丢弃数据包。
进一步地,所述第一确定模块确定出所述当前节点与所述目的节点之间的主方向为水平方向时,所述第二确定模块,还用于当识别出所述当前节点在距离极地地区节点最近的横向环上且数据包是从极地地区节点回发给所述当前节点的上一节点时,则依次从待定的下一跳节点中确定所述当前节点在数据包传输路径上的下一跳节点,其中,所述待定的下一跳节点依次包括:备选方向的下一跳节点,所述当前节点与所述目的节点之间的主方向的下一跳节点,所述主方向相反方向的下一跳节点及备选方向相反方向的下一跳节点;当识别出所述当前节点不在距离极地地区节点最近的横向环上和/或数据包不是从极地地区节点回发给所述当前节点的上一节点时,则依次从待定的下一跳节点中确定所述当前节点在数据包传输路径上的下一跳节点,其中,所述待定的下一跳节点依次包括:所述当前节点与所述目的节点之间的主方向的下一跳节点,备选方向的下一跳节点,次方向的下一跳节点及所述主方向相反方向的下一跳节点。
进一步地,所述第二确定模块,具体用于,
J、当识别出所述当前节点在距离极地地区节点最近的横向环上且数据包是从所述极地地区节点回发给所述当前节点的上一节点时,则转向步骤K;当识别出所述当前节点不在距离所述极地地区节点最近的横向环上和/或数据包不是从所述极地地区节点回发给所述当前节点的上一节点时,则转向步骤O;
K、当根据所述环路检测算法检测所述备选方向可用时,将所述备选方向上的下一跳节点确定为所述当前节点在数据包传输路径上的下一跳节点,并触发所述发送模块;当根据所述环路检测算法检测出所述备选方向不可用时,则转向步骤L;
L、当根据所述环路检测算法检测所述当前节点与目的节点之间的主方向可用时,将所述当前节点与所述目的节点之间的主方向上的下一跳节点确定为所述当前节点在数据包传输路径上的下一跳节点,并触发所述发送模块;当根据所述环路检测算法检测出所述当前节点与所述目的节点之间的主方向不可用时,则转向步骤M;
M、当根据所述环路检测算法检测出所述当前节点与所述目的节点之间的主方向相反方向可用时,将所述当前节点与目的节点之间的主方向相反方向上的下一跳节点确定为所述当前节点在数据包传输路径上的下一跳节点,并触发所述发送模块;当根据所述环路检测算法检测出所述当前节点与所述目的节点之间的主方向相反方向不可用时,则转向步骤N;
N、当根据所述环路检测算法检测出所述备选方向相反方向可用时,将所述备选方向相反方向上的下一跳节点确定为所述当前节点在数据包传输路径上的下一跳节点,并触发所述发送模块;当根据所述环路检测算法检测出所述备选方向相反方向不可用时,则转向步骤X;
O、当根据所述环路检测算法检测所述当前节点与目的节点之间的主方向可用时,将所述当前节点与目的节点之间的主方向上的下一跳节点确定为所述当前节点在数据包传输路径上的下一跳节点,并触发所述发送模块;当根据所述环路检测算法检测出所述当前节点与目的节点之间的主方向不可用时,则转向步骤P;
P、当识别出所述当前节点有备选方向且根据所述环路检测算法检测出所述备选方向可用时,将所述备选方向上的下一跳节点确定为所述当前节点在数据包传输路径上的下一跳节点,并触发所述发送模块;当识别出所述当前节点没有所述备选方向和/或根据所述环路检测算法检测出所述备选方向不可用时,则转向步骤Q;
Q、当根据所述环路检测算法检测出所述当前节点的任意一个次方向可用时,将所述次方向上的下一跳节点确定为所述当前节点在数据包传输路径上的下一跳节点,并触发所述发送模块;当根据所述环路检测算法检测出所述次方向不可用时,则转向步骤R;
R、当根据所述环路检测算法检测出所述当前节点的另一个次方向可用时,将所述次方向的下一跳节点确定为所述当前节点在数据包传输路径上的下一跳节点,并触发所述发送模块;当根据所述环路检测算法检测出所述次方向不可用时,则转向步骤S;
S、当根据所述环路检测算法检测出所述当前节点与目的节点之间的主方向相反方向可用时,将所述当前节点与目的节点之间的主方向相反方向上的下一跳节点确定为所述当前节点在数据包传输路径上的下一跳节点,并触发所述发送模块;当根据所述环路检测算法检测出所述当前节点与所述目的节点之间的主方向相反方向不可用时,则转向步骤X;
X、丢弃数据包。
本发明实施例提出的一种基于卫星网络的路由方法和装置,当前节点在确定出自身与目的节点之间的主方向后,根据该主方向以及预设的检测策略,检测出当前节点到待定的下一跳节点的链路连通,并且根据其记录的当前节点之前的数据包传输路径信息,检测出待定的下一跳节点与当前节点及当前节点之前的数据包传输路径不产生环路,此时,确定该待定的下一跳节点为当前节点在数据包传输路径上的下一跳节点,并向该下一跳节点发送数据包,如此,避免了数据包的环路传输,降低丢包概率,保证了数据包的正常转发。
附图说明
图1为本发明实施例中的路由方法的流程图;
图2为本发明实施例中的节点分布示意图;
图3为本发明实施例中的当前节点与目的节点之间的主方向为垂直的路由方法的流程图;
图4为本发明实施例中的当前节点与目的节点之间的主方向为水平的路由方法的流程图;
图5为本发明实施例中的节点进行路由方法的路径示意图;
图6为本发明实施例中的路由装置的结构图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述。
图1为本发明实施例中基于卫星网络的路由方法的流程图,参考图1所示,该方法包括:
S101:当前节点根据自身与目的节点的逻辑地址关系确定当前节点与目的节点之间的主方向;
具体地,当前节点首先根据自身与目的节点的逻辑地址关系确定当前节点与目的节点之间的最短路径,再将该最短路径中当前节点到下一跳节点的方向确定为当前节点与目的节点之间的主方向。以图2所示的节点分布示意图为例,当前节点S向目的节点D发送数据包的最少跳数为四跳,其中跳数最少的路径有两条,包括通过S节点->G节点->A节点->B节点->D节点的第一路径,及通过S节点->E节点->F节点->H节点->D节点的第二路径。由于目的节点D所在的横向环更接近极地地区,所以A节点->B节点->D节点的轨道间链路的长度要小于节点S节点->E节点->F节点的链路长度,而竖直方向链路S节点->G节点,G节点->A节点,F节点->H节点,H节点->D节点的长度都一样。所以,第一路径为最短路径。
因此,当前节点为S时,最短路径中S节点的下一跳节点为G节点,因此,S节点到G节点的方向为S节点与D节点之间的主方向,图2中以dv标识;那么第二路径中S节点的下一跳节点为E节点,因此,S节点到E节点的方向为S节点与D节点之间的备选方向,图2中以dh标识;也就是说,当第一路径为最短路径时,S节点与D节点之间的主方向为竖直向上,备选方向为水平向右。
相应地,以最短路径G节点->A节点->B节点->D节点为例,当前节点G与D节点之间的主方向为竖直向上,备选方向为水平向右。而A节点和B节点均与D节点处于同一直线上,因此,A节点与D节点之间只有水平向右的主方向,而没有备选方向。同样地,B节点与D节点之间也只有水平向右的主方向,没有备选方向。
为了方便后续对本发明实施例技术方案的描述,当前节点在没有备选方向的情况下,定义与当前节点与目的节点之间的主方向垂直的方向为当前节点的次方向。也就是说,当前节点与目的节点之间的主方向为水平方向且没有备选方向时,当前节点的次方向为竖直方向;当前节点与目的节点之间的主方向为竖直方向且没有备选方向时,当前节点的次方向为水平方向。可以理解的,当前节点具有两个次方向。例如,继续参考图2,若当前节点为A节点,目的节点为D节点时,A节点的最短路径为A节点->B节点->D节点,此时,A节点有水平向右的主方向和竖直方向的两个次方向;若当前节点为H节点,目的节点为D节点时,H节点的最短路径为H节点->D节点,此时,H节点有竖直向上的主方向和水平方向的两个次方向。
在实际应用中,极地地区的卫星只有竖直向上或竖直向下的两条链路,因此若当前节点位于极地地区,当前节点与目的节点之间的主方向一定是垂直方向的。
S102:当前节点根据自身与目的节点之间的主方向以及预设的检测策略,确定当前节点在数据包传输路径上的下一跳节点,并向该下一跳节点发送数据包。
需要说明的是,当前节点通过步骤S101所确定出的自身与目的节点之间的主方向上的下一跳节点会有产生环路的可能,因此,当前节点与目的节点之间的主方向上的下一跳节点不一定为本发明实施例中所描述的当前节点在数据包传输路径上的下一跳节点。
具体地,当前节点根据自身与目的节点之间的主方向以及预设的检测策略,检测卫星网络的链路状态,当检测出当前节点到待定的下一跳节点的链路连通,并且根据其记录的当前节点之前的数据包传输路径信息,检测出待定的下一跳节点与当前节点及当前节点之前的数据包传输路径不产生环路,当前节点就可以确定该待定的下一跳节点为数据包传输路径上的下一跳节点,并将数据包传输给该下一跳节点。如此,当前节点经过预设的检测策略,避免了当前节点的数据包再次回传给了自己或者当前节点之前的数据包传输路径上的其他节点,即避免了数据包的环路传输。
需要说明的是,在本发明实施例中,当前节点检测出自身到待定的下一跳节点的链路连通,并且根据其记录的当前节点之前的数据包传输路径信息,检测出待定的下一跳节点与当前节点的链路及当前节点之前的数据包传输路径不产生环路的时候,当前节点定义该待定的下一跳节点方向可用;反之,当前节点定义该待定的下一跳节点方向不可用。当前节点在检测出待定的下一跳节点方向可用时,确定该待定的下一跳节点为当前节点在数据包传输路径上的下一跳节点。
需要补充的是,当前节点检测待定的下一跳节点与当前节点的链路及当前节点之前的数据包传输路径是否产生环路可以通过现有技术中的环路检测算法来实现,本发明对此不做限制。
在实际应用中,若当前节点位于极地地区,当前节点待定的下一跳节点方向只可能是竖直向上或者竖直向下,因此不根据预设的检测策略检测处于极地地区节点的待定的下一跳节点方向是否可用。
下面,分别在当前节点与目的节点之间的主方向为垂直方向和水平方向的情况下,对步骤S102进行详细说明。
第一种情况,当前节点与目的节点之间的主方向为垂直方向时,参见图3,其示出了本发明实施例提供的当前节点与目的节点之间的主方向为垂直的路由方法,包括步骤S301至步骤S318:
S301:当前节点识别自身是否在极地地区,且数据包是从另一个极地地区的节点回发过来的;若当前节点识别自身在极地地区且数据包是从另一个极地地区的节点回发过来的,那么,S302:当前节点可以将自身与目的节点之间的主方向的相反方向上的下一跳节点确定为自身在数据包传输路径的下一跳节点,并向该下一跳节点发送数据包;若当前节点识别出自身不在极地地区和/或数据包不是从另一个极地地区的节点回发过来的,则转向步骤S303;
需要说明的是,如果当前节点识别出自身在极地地区,且数据包是从另一个极地地区的节点回发过来的,说明当前节点到该另一个极地地区的节点的方向为当前节点与目的节点之间的主方向;而且通过该数据包的回发可以表示当前节点与目的节点之间的主方向是不可用的,结合当前节点处于极地地区只有竖直向上或竖直向下的上下两条链路,因此,当前节点只能把数据包发给自身与目的节点之间的主方向的相反方向的下一跳节点。
S303:当前节点识别自身是否在距离极地地区节点最近的横向环上,且数据包是从该极地地区节点回发过来的;若当前节点识别自身在距离极地地区节点最近的横向环上且数据包是从该极地地区节点回发过来的,那么,S304:当前节点将自身的任意一个次方向确定为待定的下一跳节点方向,并转向步骤S306;若当前节点识别自身不在距离极地地区节点最近的横向环上和/或数据包不是从该极地地区节点回发过来的,那么,S305:当前节点将将自身与目的节点之间的主方向确定为待定的下一跳节点方向,并转向步骤S306;
需要说明的是,如果当前节点在距离极地地区节点最近的横向环上且数据包是从极地地区节点回发过来的,那么说明极地地区有链路中断的节点,因此可以通过横向转发,来绕过极地地区发生链路中断的节点。具体地,当前节点的任意一个次方向为水平方向,所以,待定的下一跳节点方向可以是水平向左,也可以是水平向右,本发明不做限制。
S306:当前节点根据环路检测算法检测待定的下一跳节点方向是否可用;若当前节点检测出待定的下一跳节点方向可用,那么,S307:当前节点将该待定的下一跳节点确定为当前节点在数据包传输路径上的下一跳节点,并向该下一跳节点发送数据包;若当前节点检测出待定的下一跳节点方向不可用,则转向步骤S308;
S308:当前节点识别自身是否在极地地区;若当前节点识别自身在极地地区,那么,S309:当前节点可以将自身与目的节点之间的主方向相反方向上的下一跳节点确定为当前节点在数据包传输路径上的下一跳节点,并向该下一跳节点发送数据包;若当前节点识别出自身不在极地地区,则转向步骤S310;
需要说明的是,因为步骤S306中判断下一跳链路断了或是产生环路,才会进入这一步,而极地地区的节点有只有上下两条链路,因此只能往回传数据包。
S310:当前节点识别自身是否有备选方向,且根据环路检测算法检测备选方向可用;若当前节点识别出自身有备选方向且备选方向可用,那么,S311:当前节点将备选方向上的下一跳节点确定为当前节点在数据包传输路径上的下一跳节点,并向该下一跳节点发送数据包;若当前节点识别出自身没有备选方向和/或备选方向不可用,则转向步骤S312;
需要说明的是,在当前节点与目的节点之间的主方向为垂直方向时,当前节点如果有备选方向,则备选方向为水平的;如果没有备选方向,则当前节点具有方向为水平的次方向。当前节点可以通过对水平方向设置数值来表示是否具有备选方向。具体来说,水平方向的数值可以设置为1、-1或0,其中,水平方向为1说明当前节点的备选方向为水平向右;水平方向为-1说明当前节点备选方向为水平向左;水平方向为0说明当前节点没有备选方向。如此,当前节点计算出其水平方向的值为1或者-1,说明当前节点具有水平向右或是水平向左的备选方向,那么优先考虑待定的下一跳节点方向为备选方向。
S312:当前节点根据环路检测算法检测自身任意一个次方向是否可用;若当前节点检测出该次方向可用,那么,S313:当前节点将该次方向上的下一跳节点确定为当前节点在数据包传输路径上的下一跳节点,并向该下一跳节点发送数据包;若当前节点检测出该次方向不可用,则转向步骤S314;
需要说明的是,当前节点检测出没有备选方向和/或备选方向不可用,当前节点根据环路检测算法对次方向,即水平向左和水平向右方向上的下一跳节点进行检测,确定任意一个次方向可用后,则当前节点将该次方向上的下一跳节点确定为当前节点在数据包传输路径上的下一跳节点。这里,可以先对水平向左方向进行检测,也可以先对水平向右方向进行检测,本发明实施例对此不做限制。
S314:当前节点根据环路检测算法检测自身的另一个次方向是否可用;若当前节点检测出该次方向可用,那么,S315:当前节点将该次方向上的下一跳节点确定为当前节点在数据包传输路径上的下一跳节点,并向该下一跳节点发送数据包;若当前节点检测出该次方向不可用,则转向步骤S316;
S316:当前节点根据环路检测算法检测自身与目的节点之间的主方向相反方向是否可用;若当前节点检测出自身与目的节点之间的主方向相反方向可用,那么,S317:当前节点将自身与目的节点之间的主方向相反方向上的下一跳节点确定为当前节点在数据包传输路径上的下一跳节点,并向该下一跳节点发送数据包;若当前节点检测出自身与目的节点之间的主方向相反方向不可用,则转向步骤S318;
综合步骤S301~步骤S317,可以发现,当前节点当识别出自身不在极地地区且不在距离极地地区节点最近的横向环上时,则依次从待定的下一跳节点中确定当前节点在数据包传输路径上的下一跳节点,其中,待定的下一跳节点依次包括:当前节点与目的节点之间的主方向的下一跳节点,备选方向的下一跳节点,次方向的下一跳节点及该主方向相反方向的下一跳节点。
S318:当前节点丢弃数据包。
此时,当前节点对各个方向都试探完,仍然没有发现可用的下一跳节点的方向,即当前节点的各个方向上的下一跳节点链路不是链路中断,就是产生环路,导致无法正常发送到目的节点,因此该数据包只能丢弃。
第二种情况,当前节点与目的节点之间的主方向为水平方向时,参见图4,其示出了本发明实施例提供的当前节点与目的节点之间的主方向为水平的路由方法,包括步骤S401至步骤S411:
S401:当前节点识别自身是否在距离极地地区节点最近的横向环上且数据包是从极地地区节点回发给当前节点的上一节点;若当前节点识别自身在距离极地地区节点最近的横向环上且数据包是从极地地区节点回发给当前节点的上一节点的,则转向步骤S402;若当前节点识别出自身不在距离极地地区节点最近的横向环上和/或数据包不是从极地地区节点回发给当前节点的上一节点,则转向步骤S410;
需要说明的是,当前节点在距离极地地区节点最近的横向环上且数据包是从极地地区节点回发给当前节点的上一跳节点,表明当前节点的上一跳节点经路由计算所选择的路径需要穿越极地地区节点,并且路径上处于极地地区节点的下一跳节点发生了链路中断或者卫星失效,为了避免环路的产生,当前节点的上一跳节点进行横向转发以绕开失效链路的节点,接着,当前节点优先考虑垂直到极地方向即备选方向的链路,而不是当前节点与目的节点之间的主方向上的下一跳。
S402:当前节点根据环路检测算法检测备选方向是否可用;若当前节点检测出备选方向可用,那么,S403:当前节点将备选方向上的下一跳节点确定为当前节点在数据包传输路径上的下一跳节点,并向该下一跳节点发送数据包;若当前节点检测出备选方向不可用,则转向步骤S404;
S404:当前节点根据环路检测算法检测自身与目的节点之间的主方向是否可用;若当前节点检测出自身与目的节点之间的主方向可用,那么,S405:当前节点将自身与目的节点之间的主方向上的下一跳节点确定为当前节点在数据包传输路径上的下一跳节点,并向该下一跳节点发送数据包;若当前节点检测出自身与目的节点之间的主方向不可用,则转向步骤S406;
S406:当前节点根据环路检测算法检测自身与目的节点之间的主方向相反方向是否可用;若当前节点检测出自身与目的节点之间的主方向相反方向可用,那么,S407:当前节点将自身与目的节点之间的主方向相反方向上的下一跳节点确定为当前节点在数据包传输路径上的下一跳节点,并向该下一跳节点发送数据包;若当前节点检测出当前节点与目的节点之间的主方向相反方向不可用,则转向步骤S408;
S408:当前节点根据环路检测算法检测备选方向相反方向是否可用;若当前节点检测出备选方向相反方向可用,那么,S409:当前节点将备选方向相反方向上的下一跳节点确定为当前节点在数据包传输路径上的下一跳节点,并向该下一跳节点发送数据包;若当前节点检测出备选方向相反方向不可用,则转向步骤S420;
综合S401~S409可以发现,当前节点当识别出自身在距离极地地区节点最近的横向环上且数据包是从极地地区节点回发给当前节点的上一节点时,则依次从待定的下一跳节点中确定当前节点在数据包传输路径上的下一跳节点,其中,待定的下一跳节点依次包括:备选方向的下一跳节点,当前节点与目的节点之间的主方向的下一跳节点,主方向相反方向的下一跳节点及备选方向相反方向的下一跳节点。
S410:当前节点根据环路检测算法检测自身与目的节点之间的主方向是否可用;若当前节点检测出自身与目的节点之间的主方向可用,那么,S411:当前节点将自身与目的节点之间的主方向上的下一跳节点确定为当前节点在数据包传输路径上的下一跳节点,并向该下一跳节点发送数据包;若当前节点检测出自身与目的节点之间的主方向不可用,则转向步骤S412;
S412:当前节点识别自身是否有备选方向,且根据环路检测算法检测备选方向可用;若当前节点识别出自身有备选方向且备选方向可用,那么,S413:当前节点将备选方向上的下一跳节点确定为当前节点在数据包传输路径上的下一跳节点,并向该下一跳节点发送数据包;若当前节点识别出自身没有备选方向和/或备选方向不可用,则转向步骤S414;
需要补充的是,在当前节点与目的节点之间的主方向为水平方向时,当前节点如果有备选方向,则备选方向为竖直的;如果没有备选方向,则具有方向为竖直的次方向。当前节点可以通过对垂直方向设置数值来表示是否具有备选方向。具体来说,垂直方向的数值可以设置为1、-1或0,其中,垂直方向为1说明备选方向为垂直向上;垂直方向为-1说明备选方向为垂直向下;垂直方向为0说明没有备选方向。如此,当前节点计算出其垂直方向的值为1或者-1,说明当前节点具有垂直向上或是垂直向下的备选方向,那么优先考虑的待定的下一跳方向为备选方向。
S414:当前节点根据环路检测算法检测自身的任意一个次方向是否可用;若当前节点检测出该次方向可用,那么,S415:当前节点将该次方向上的下一跳节点确定为当前节点在数据包传输路径上的下一跳节点,并向该下一跳节点发送数据包;若当前节点检测出该次方向不可用,则转向步骤S416;
具体地,当前节点识别出没有备选方向和/或备选方向不可用时,当前节点根据环路检测算法对次方向,即竖直向上和竖直向下方向上的下一跳节点进行检测,确定任意一个次方向可用后,则确定该次方向上的下一跳节点为当前节点在数据包传输路径上的下一跳节点。这里,可以先对垂直向上方向进行检测,也可以先对垂直向下方向上的下一跳节点进行检测,本发明实施例对此不做限制。
S416:当前节点根据环路检测算法检测自身的另一个次方向是否可用;若当前节点检测出该次方向可用,那么,S417:当前节点将该次方向的下一跳节点确定为当前节点在数据包传输路径上的下一跳节点,并向该下一跳节点发送数据包;若当前节点检测出该次方向不可用,则转向步骤S418;
S418:当前节点根据环路检测算法检测自身与目的节点之间的主方向相反方向是否可用;若当前节点检测出当前节点与目的节点之间的主方向相反方向可用,那么,S419:当前节点将自身与目的节点之间的主方向相反方向上的下一跳节点确定为当前节点在数据包传输路径上的下一跳节点,并向该下一跳节点发送数据包;若当前节点检测出当前节点与目的节点之间的主方向相反方向不可用,则转向步骤S420;
综合S410~S419可以发现,当前节点当识别出自身不在距离极地地区节点最近的横向环上和/或数据包不是从极地地区节点回发给当前节点的上一节点时,则依次从待定的下一跳节点中确定所述当前节点在数据包传输路径上的下一跳节点,其中,所述待定的下一跳节点依次包括:所述当前节点与所述目的节点之间的主方向的下一跳节点,备选方向的下一跳节点,次方向的下一跳节点及所述主方向相反方向的下一跳节点。
S420:当前节点丢弃数据包。
此时,当前节点对各个方向都试探完,仍然没有发现可用的下一跳节点的方向,即当前节点的各个方向上的链路不是链路不通,就是产生环路,导致无法正常发送到目的节点,因此该数据包只能丢弃。
需要说明的是,当前节点通过步骤S102已经确定出当前节点在数据包传输路径上的下一跳节点并向该下一跳节点发送数据包,接着,该下一跳节点成为新的当前节点,该新的当前节点根据本发明实施例提供的路由方法计算该新的当前节点的下一跳节点,并向该新的当前节点的下一跳节点发送数据包,直到把数据包成功发送到目的节点,则结束对该数据包的路径计算。
以上分别对当前节点与目的节点之间的主方向为垂直方向和水平方向的两种情况进行了介绍,接下来,结合前述实施例提出的路由方法,参考图5所示,以当前节点B向目的D节点发送数据包为例,对本发明实施例提出的路由方法进行详细说明。
按照现有技术的DRA算法,当前节点B向目的节点D发送数据包,所走路径为B节点->S节点->A节点->D节点。由于S节点在极地地区,且S节点的下一跳A节点失效,即链路发生断链,导致S节点无法向A节点发送数据包,所以S节点只能选择将数据包往回发送给B节点。当B节点再次计算下一跳时,还是按照原来的方式得到相同的路径结果,即B节点->S节点->A节点->D节点,因此造成数据包在S节点和B节点之间环路传输,最终数据包由于超过生存时间而被丢弃,造成丢包。
而采用本发明实施例提供的路由方法,可以避免环路传输,并将数据包成功发送到目的节点,具体方法步骤如下:
S501:B节点根据上述本发明实施例提出的路由方法的步骤S101将竖直向上确定为B节点与D节点之间的主方向,根据步骤S305将竖直向上方向确定为待定的下一跳节点方向,根据步骤S306检测出竖直向上方向可用,根据步骤S307,B节点将竖直向上方向的下一跳节点即S节点确定为数据包传输路径上的下一跳节点,并向S节点发送数据包;
S502:S节点根据步骤S101将竖直向上确定为S节点与D节点之间的主方向,根据步骤S305将竖直向上方向确定为待定的下一跳节点方向,根据步骤S306检测出竖直向上方向不可用,根据步骤S308识别出自身在极地地区,S节点将自身与D节点之间的主方向相反方向上的下一跳节点即B节点确定为数据包传输路径上的下一跳节点,并发送数据包给B节点;
S503:B节点根据步骤S101将竖直向上确定为B节点与D节点之间的主方向;根据步骤S303识别出自身在距离极地地区S节点最近的横向环上且数据包是从极地地区S节点回发过来的,根据步骤S304将水平向右方向的下一跳节点即C节点确定为待定的下一跳节点,根据步骤S306检测出C节点方向可用,根据步骤S307B节点将C节点确定为数据包传输路径上的下一跳节点,并向C节点发送数据包;
S504:C节点根据步骤S101将水平向左确定为C节点与D节点之间的主方向;根据步骤S401识别出自身在距离极地地区节点最近的横向环上且数据包是从极地地区节点回发给当前节点的上一节点即B节点;根据步骤S402C节点检测备选方向可用,根据步骤S403将备选方向上的下一跳节点即E节点确定为待定的下一跳节点,并向E节点发送数据包;
S505:E节点根据步骤S101将竖直向上确定为E节点与D节点之间的主方向;根据步骤S303识别出自身不在距离极地地区节点最近的横向环上和/或数据包不是从该极地地区节点回发过来的,根据步骤S305将竖直向上方向确定为待定的下一跳节点方向;根据步骤S306检测出竖直向上方向可用,根据步骤S307将竖直向上的下一跳节点即F节点确定为数据包传输路径上的下一跳节点,并向F节点发送数据包;
S506:F节点根据步骤S101将水平向左确定为F节点与D节点之间的主方向;根据步骤S401识别出自身不在距离极地地区节点最近的横向环上和/或数据包不是从极地地区节点回发给当前节点的上一节点;根据步骤S410检测水平向左方向不可用;根据步骤S412识别出有备选方向即竖直向上方向,且备选方向可用,根据步骤S413将竖直向上方向的下一跳节点即G节点确定为为数据包传输路径上的下一跳节点,并向G节点发送数据包;
S507:G节点根据步骤S101将水平向左确定为G节点与D节点之间的主方向;根据步骤S401识别出自身不在距离极地地区节点最近的横向环上和/或数据包不是从极地地区节点回发给当前节点的上一节点,根据步骤S410检测水平向左可用;根据步骤S411将D节点确定为数据包传输路径上的下一跳节点,并向D节点发送数据包。
可以看出,采用本发明实施例提出的路由方法,可以形成B节点->C节点->E节点->F节点->G节点->D节点的传输路径,将数据包成功发送到了目的节点D。
本发明实施例提出的基于卫星网络的路由方法,在当前节点确定出自身与目的节点之间的主方向后,根据当前节点与目的节点之间的主方向以及预设的检测策略,检测出当前节点到待定的下一跳节点的链路连通,并且根据其记录的当前节点之前的数据包传输路径信息,检测出待定的下一跳节点与当前节点及当前节点之前的数据包传输路径不产生环路,此时,确定当前节点在数据包传输路径上的下一跳节点,并向该下一跳节点发送数据包,如此,避免了数据包的环路传输,降低丢包概率,保证了数据包的正常转发。
本发明实施例还提供一种基于卫星网络的路由装置,该装置可以实现上述基于卫星网络的路由方法。
图6为本发明实施例中的路由装置的结构图,参考图6所示,该装置包括:第一确定模块601、第二确定模块602及发送模块603,其中:
第一确定模块601,用于根据当前节点与目的节点的逻辑地址关系确定当前节点与目的节点之间的主方向;
第二确定模块602,用于根据主方向以及预设的检测策略,确定当前节点在数据包传输路径上的下一跳节点;
发送模块603,用于向下一跳节点发送数据包。
进一步地,第一确定模块601确定出当前节点与目的节点之间的主方向为垂直方向时,第二确定模块602还用于当识别出当前节点不在极地地区且不在距离极地地区节点最近的横向环上时,则依次从待定的下一跳节点中确定当前节点在数据包传输路径上的下一跳节点,其中,待定的下一跳节点依次包括:当前节点与目的节点之间的主方向的下一跳节点,备选方向的下一跳节点,次方向的下一跳节点及主方向相反方向的下一跳节点。
进一步地,第二确定模块602,具体用于:
A、当识别出当前节点在极地地区,且数据包是从另一个极地地区的节点回发过来时,则可以将当前节点与目的节点之间的主方向的相反方向上的下一跳节点确定为当前节点在数据包传输路径的下一跳节点,并触发发送模块603;当识别出当前节点不在极地地区和/或数据包不是从另一个极地地区的节点回发过来时,则转向步骤B;
B、当识别出当前节点在距离极地地区节点最近的横向环上,且数据包是从极地地区节点回发过来时,则将当前节点的任意一个次方向确定为待定的下一跳节点方向,并转向步骤C;当识别出当前节点不在距离极地地区节点最近的横向环上和/或数据包不是从极地地区节点回发过来时,则将当前节点与目的节点之间的主方向确定为待定的下一跳节点方向,并转向步骤C;
C、根据环路检测算法对待定的下一跳节点方向进行检测,当检测出待定的下一跳节点方向可用时,将待定的下一跳节点确定为当前节点在数据包传输路径上的下一跳节点,并触发发送模块603;当检测出待定的下一跳节点方向不可用时,则转向步骤D;
D、当识别出当前节点在极地地区时,则将当前节点与目的节点之间的主方向相反方向上的下一跳节点确定为当前节点在数据包传输路径上的下一跳节点,并触发发送模块603;当识别出当前节点不在极地地区时,则转向步骤E;
E、当识别出当前节点有备选方向且根据环路检测算法检测出备选方向可用时,则将备选方向上的下一跳节点确定为当前节点在数据包传输路径上的下一跳节点,并触发发送模块603;当识别出当前节点没有备选方向和/或根据环路检测算法检测出备选方向不可用时,则转向步骤F;
F、当根据环路检测算法检测出当前节点任意一个次方向可用时,将次方向上的下一跳节点确定为当前节点在数据包传输路径上的下一跳节点,并触发发送模块603;当根据环路检测算法检测出当前节点任意一个次方向不可用时,则转向步骤G;
G、当根据环路检测算法检测出当前节点的另一个次方向可用时,将次方向上的下一跳节点确定为当前节点在数据包传输路径上的下一跳节点,并触发发送模块603;当检测出当前节点的另一个次方向不可用时,则转向步骤H;
H、当根据环路检测算法检测出当前节点与目的节点之间的主方向相反方向可用时,将当前节点与目的节点之间的主方向相反方向上的下一跳节点确定为当前节点在数据包传输路径上的下一跳节点,并触发发送模块603;当根据环路检测算法检测出当前节点与目的节点之间的主方向相反方向不可用时,则转向步骤I;
I、丢弃数据包。
进一步地,第一确定模块601确定出当前节点与目的节点之间的主方向为水平方向时,第二确定模块602还用于当识别出当前节点在距离极地地区节点最近的横向环上且数据包是从极地地区节点回发给当前节点的上一节点时,则依次从待定的下一跳节点中确定当前节点在数据包传输路径上的下一跳节点,其中,待定的下一跳节点依次包括:备选方向的下一跳节点,当前节点与目的节点之间的主方向的下一跳节点,主方向相反方向的下一跳节点及备选方向相反方向的下一跳节点;当识别出当前节点不在距离极地地区节点最近的横向环上和/或数据包不是从极地地区节点回发给当前节点的上一节点时,则依次从待定的下一跳节点中确定当前节点在数据包传输路径上的下一跳节点,其中,待定的下一跳节点依次包括:当前节点与目的节点之间的主方向的下一跳节点,备选方向的下一跳节点,次方向的下一跳节点及主方向相反方向的下一跳节点。
进一步地,第二确定模块602,具体用于:
J、当识别出当前节点在距离极地地区节点最近的横向环上且数据包是从极地地区节点回发给当前节点的上一节点时,则转向步骤K;当识别出当前节点不在距离极地地区节点最近的横向环上和/或数据包不是从极地地区节点回发给当前节点的上一节点时,则转向步骤O;
K、当根据环路检测算法检测备选方向可用时,将备选方向上的下一跳节点确定为当前节点在数据包传输路径上的下一跳节点,并触发发送模块603;当根据环路检测算法检测出备选方向不可用时,则转向步骤L;
L、当根据环路检测算法检测当前节点与目的节点之间的主方向可用时,将当前节点与目的节点之间的主方向上的下一跳节点确定为当前节点在数据包传输路径上的下一跳节点,并触发发送模块603;当根据环路检测算法检测出当前节点与目的节点之间的主方向不可用时,则转向步骤M;
M、当根据环路检测算法检测出当前节点与目的节点之间的主方向相反方向可用时,将当前节点与目的节点之间的主方向相反方向上的下一跳节点确定为当前节点在数据包传输路径上的下一跳节点,并触发发送模块603;当根据环路检测算法检测出当前节点与目的节点之间的主方向相反方向不可用时,则转向步骤N;
N、当根据环路检测算法检测出备选方向相反方向可用时,将备选方向相反方向上的下一跳节点确定为当前节点在数据包传输路径上的下一跳节点,并触发发送模块603;当根据环路检测算法检测出备选方向相反方向不可用时,则转向步骤X;
O、当根据环路检测算法检测当前节点与目的节点之间的主方向可用时,将当前节点与目的节点之间的主方向上的下一跳节点确定为当前节点在数据包传输路径上的下一跳节点,并触发发送模块603;当根据环路检测算法检测出当前节点与目的节点之间的主方向不可用时,则转向步骤P;
P、当识别出当前节点有备选方向且根据环路检测算法检测出备选方向可用时,将备选方向上的下一跳节点确定为当前节点在数据包传输路径上的下一跳节点,并触发发送模块603;当识别出当前节点没有备选方向和/或根据环路检测算法检测出备选方向不可用时,则转向步骤Q;
Q、当根据环路检测算法检测出当前节点的任意一个次方向可用时,将次方向上的下一跳节点确定为当前节点在数据包传输路径上的下一跳节点,并触发发送模块603;当根据环路检测算法检测出次方向不可用时,则转向步骤R;
R、当根据环路检测算法检测出当前节点的另一个次方向可用时,将次方向的下一跳节点确定为当前节点在数据包传输路径上的下一跳节点,并触发发送模块603;当根据环路检测算法检测出次方向不可用时,则转向步骤S;
S、当根据环路检测算法检测出当前节点与目的节点之间的主方向相反方向可用时,将当前节点与目的节点之间的主方向相反方向上的下一跳节点确定为当前节点在数据包传输路径上的下一跳节点,并触发发送模块603;当根据环路检测算法检测出当前节点与目的节点之间的主方向相反方向不可用时,则转向步骤X;
X、丢弃数据包。
本领域内的技术人员应明白,本发明的实施例可提供为方法、系统、或计算机程序产品。因此,本发明可采用硬件实施例、软件实施例、或结合软件和硬件方面的实施例的形式。而且,本发明可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器和光学存储器等)上实施的计算机程序产品的形式。
本发明是参照根据本发明实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
以上所述,仅为本发明的较佳实施例而已,并非用于限定本发明的保护范围。
Claims (10)
1.一种基于卫星网络的路由方法,其特征在于,包括:
当前节点根据自身与目的节点的逻辑地址关系确定所述当前节点与所述目的节点之间的主方向;
所述当前节点根据所述主方向以及预设的检测策略,确定所述当前节点在数据包传输路径上的下一跳节点,并向所述下一跳节点发送数据包。
2.根据权利要求1所述的路由方法,其特征在于,所述当前节点与所述目的节点之间的主方向为垂直方向时,所述当前节点根据所述主方向以及预设的检测策略,确定所述当前节点在数据包传输路径上的下一跳节点,具体包括:
所述当前节点当识别出自身不在极地地区且不在距离极地地区节点最近的横向环上时,则依次从待定的下一跳节点中确定所述当前节点在数据包传输路径上的下一跳节点,其中,所述待定的下一跳节点依次包括:所述当前节点与所述目的节点之间的主方向的下一跳节点,备选方向的下一跳节点,次方向的下一跳节点及所述主方向相反方向的下一跳节点。
3.根据权利要求2所述的路由方法,其特征在于,所述当前节点当识别出自身不在极地地区且不在距离极地地区节点最近的横向环上时,则依次从待定的下一跳节点中确定所述当前节点在数据包传输路径上的下一跳节点,包括:
A、所述当前节点当识别出自身在极地地区,且数据包是从另一个极地地区的节点回发过来时,则所述当前节点可以将自身与目的节点之间的主方向的相反方向上的下一跳节点确定为自身在数据包传输路径的下一跳节点,并向所述下一跳节点发送数据包;所述当前节点当识别出自身不在极地地区和/或数据包不是从另一个极地地区的节点回发过来时,则转向步骤B;
B、所述当前节点当识别出自身在距离极地地区节点最近的横向环上,且数据包是从所述极地地区节点回发过来时,则所述当前节点将自身的任意一个次方向确定为待定的下一跳节点方向,并转向步骤C;所述当前节点当识别出自身不在距离极地地区节点最近的横向环上和/或数据包不是从所述极地地区节点回发过来时,则所述当前节点将自身与目的节点之间的主方向确定为待定的下一跳节点方向,并转向步骤C;
C、所述当前节点根据环路检测算法对所述待定的下一跳节点方向进行检测,当检测出所述待定的下一跳节点方向可用时,所述当前节点将所述待定的下一跳节点确定为所述当前节点在数据包传输路径上的下一跳节点,并向所述下一跳节点发送数据包;当检测出所述待定的下一跳节点方向不可用时,则转向步骤D;
D、所述当前节点当识别出自身在极地地区时,则所述当前节点将自身与所述目的节点之间的主方向相反方向上的下一跳节点确定为所述当前节点在数据包传输路径上的下一跳节点,并向所述下一跳节点发送数据包;所述当前节点当识别出自身不在极地地区时,则转向步骤E;
E、所述当前节点当识别出有备选方向且根据所述环路检测算法检测出所述备选方向可用时,则所述当前节点将所述备选方向上的下一跳节点确定为所述当前节点在数据包传输路径上的下一跳节点,并向所述下一跳节点发送数据包;所述当前节点当识别出没有备选方向和/或根据所述环路检测算法检测出所述备选方向不可用时,则转向步骤F;
F、所述当前节点当根据所述环路检测算法检测出自身任意一个次方向可用时,所述当前节点将所述次方向上的下一跳节点确定为所述当前节点在数据包传输路径上的下一跳节点,并向所述下一跳节点发送数据包;所述当前节点当根据所述环路检测算法检测出自身任意一个次方向不可用时,则转向步骤G;
G、所述当前节点当根据环路检测算法检测出自身的另一个次方向可用时,所述当前节点将所述次方向上的下一跳节点确定为所述当前节点在数据包传输路径上的下一跳节点,并向所述下一跳节点发送数据包;所述当前节点当根据所述环路检测算法检测出所述另一个次方向不可用时,则转向步骤H;
H、所述当前节点当根据所述环路检测算法检测出自身与目的节点之间的主方向相反方向可用时,所述当前节点将所述自身与目的节点之间的主方向相反方向上的下一跳节点确定为所述当前节点在数据包传输路径上的下一跳节点,并向所述下一跳节点发送数据包;所述当前节点当根据所述环路检测算法检测出所述自身与目的节点之间的主方向相反方向不可用时,则转向步骤I;
I、所述当前节点丢弃数据包。
4.根据权利要求1所述的路由方法,其特征在于,所述当前节点与所述目的节点之间的主方向为水平方向时,所述当前节点根据所述主方向以及预设的检测策略,确定所述当前节点在数据包传输路径上的下一跳节点,具体包括:
所述当前节点当识别出自身在距离极地地区节点最近的横向环上且数据包是从极地地区节点回发给所述当前节点的上一节点时,则依次从待定的下一跳节点中确定所述当前节点在数据包传输路径上的下一跳节点,其中,所述待定的下一跳节点依次包括:备选方向的下一跳节点,所述当前节点与所述目的节点之间的主方向的下一跳节点,所述主方向相反方向的下一跳节点及备选方向相反方向的下一跳节点;
所述当前节点当识别出自身不在距离极地地区节点最近的横向环上和/或数据包不是从极地地区节点回发给所述当前节点的上一节点时,则依次从待定的下一跳节点中确定所述当前节点在数据包传输路径上的下一跳节点,其中,所述待定的下一跳节点依次包括:所述当前节点与所述目的节点之间的主方向的下一跳节点,备选方向的下一跳节点,次方向的下一跳节点及所述主方向相反方向的下一跳节点。
5.根据权利要求4所述的路由方法,其特征在于,所述当前节点当识别出自身在距离极地地区节点最近的横向环上且数据包是从极地地区节点回发给所述当前节点的上一节点时,则依次从待定的下一跳节点中确定所述当前节点在数据包传输路径上的下一跳节点;所述当前节点当识别出自身不在距离极地地区节点最近的横向环上和/或数据包不是从极地地区节点回发给所述当前节点的上一节点时,则依次从待定的下一跳节点中确定所述当前节点在数据包传输路径上的下一跳节点,具体包括:
J、所述当前节点当识别出自身在距离极地地区节点最近的横向环上且数据包是从所述极地地区节点回发给所述当前节点的上一节点时,则转向步骤K;所述当前节点当识别出自身不在距离所述极地地区节点最近的横向环上和/或数据包不是从所述极地地区节点回发给所述当前节点的上一节点时,则转向步骤O;
K、所述当前节点当根据所述环路检测算法检测所述备选方向可用时,所述当前节点将所述备选方向上的下一跳节点确定为所述当前节点在数据包传输路径上的下一跳节点,并向所述下一跳节点发送数据包;当所述当前节点根据所述环路检测算法检测出所述备选方向不可用时,则转向步骤L;
L、所述当前节点当根据所述环路检测算法检测自身与目的节点之间的主方向可用时,所述当前节点将自身与所述目的节点之间的主方向上的下一跳节点确定为所述当前节点在数据包传输路径上的下一跳节点,并向所述下一跳节点发送数据包;当所述当前节点根据所述环路检测算法检测出自身与所述目的节点之间的主方向不可用时,则转向步骤M;
M、所述当前节点当根据所述环路检测算法检测出自身与所述目的节点之间的主方向相反方向可用时,所述当前节点将所述自身与目的节点之间的主方向相反方向上的下一跳节点确定为所述当前节点在数据包传输路径上的下一跳节点,并向所述下一跳节点发送数据包;当所述当前节点根据所述环路检测算法检测出所述当前节点与所述目的节点之间的主方向相反方向不可用时,则转向步骤N;
N、所述当前节点当根据所述环路检测算法检测所述备选方向相反方向可用时,所述当前节点将所述备选方向相反方向上的下一跳节点确定为所述当前节点在数据包传输路径上的下一跳节点,并向所述下一跳节点发送数据包;当所述当前节点根据所述环路检测算法检测出所述备选方向相反方向不可用时,则转向步骤X;
O、所述当前节点当根据所述环路检测算法检测自身与目的节点之间的主方向可用时,所述当前节点将所述自身与目的节点之间的主方向上的下一跳节点确定为所述当前节点在数据包传输路径上的下一跳节点,并向所述下一跳节点发送数据包;当所述当前节点根据所述环路检测算法检测出所述自身与目的节点之间的主方向不可用时,则转向步骤P;
P、所述当前节点当识别出自身有备选方向且根据所述环路检测算法检测出所述备选方向可用时,所述当前节点将所述备选方向上的下一跳节点确定为所述当前节点在数据包传输路径上的下一跳节点,并向所述下一跳节点发送数据包;当所述当前节点识别出自身没有所述备选方向和/或根据所述环路检测算法检测出所述备选方向不可用时,则转向步骤Q;
Q、所述当前节点当根据所述环路检测算法检测出自身的任意一个次方向可用时,所述当前节点将所述次方向上的下一跳节点确定为所述当前节点在数据包传输路径上的下一跳节点,并向所述下一跳节点发送数据包;当所述当前节点根据所述环路检测算法检测出所述次方向不可用时,则转向步骤R;
R、所述当前节点当根据所述环路检测算法检测出自身的另一个次方向可用时,所述当前节点将所述次方向的下一跳节点确定为所述当前节点在数据包传输路径上的下一跳节点,并向所述下一跳节点发送数据包;当所述当前节点根据所述环路检测算法检测出所述次方向不可用时,则转向步骤S;
S、所述当前节点当根据所述环路检测算法检测出自身与目的节点之间的主方向相反方向可用时,所述当前节点将所述自身与目的节点之间的主方向相反方向上的下一跳节点确定为所述当前节点在数据包传输路径上的下一跳节点,并向所述下一跳节点发送数据包;当所述当前节点根据所述环路检测算法检测出所述当前节点与所述目的节点之间的主方向相反方向不可用时,则转向步骤X;
X、所述当前节点丢弃数据包。
6.一种基于卫星网络的路由装置,其特征在于,所述装置包括第一确定模块、第二确定模块及发送模块,其中:
所述第一确定模块,用于根据当前节点与目的节点的逻辑地址关系确定所述当前节点与所述目的节点之间的主方向;
所述第二确定模块,用于根据所述主方向以及预设的检测策略,确定所述当前节点在数据包传输路径上的下一跳节点;
所述发送模块,用于向所述下一跳节点发送数据包。
7.根据权利要求6所述的路由装置,其特征在于,所述第一确定模块确定出所述当前节点与所述目的节点之间的主方向为垂直方向时,所述第二确定模块,还用于当识别出所述当前节点不在极地地区且不在距离极地地区节点最近的横向环上时,则依次从待定的下一跳节点中确定所述当前节点在数据包传输路径上的下一跳节点,其中,所述待定的下一跳节点依次包括:所述当前节点与所述目的节点之间的主方向的下一跳节点,备选方向的下一跳节点,次方向的下一跳节点及所述主方向相反方向的下一跳节点。
8.根据权利要求7所述的路由装置,其特征在于,所述第二确定模块,具体用于,
A、当识别出所述当前节点在极地地区,且数据包是从另一个极地地区的节点回发过来时,则可以将所述当前节点与目的节点之间的主方向的相反方向上的下一跳节点确定为所述当前节点在数据包传输路径的下一跳节点,并触发所述发送模块;当识别出所述当前节点不在极地地区和/或数据包不是从另一个极地地区的节点回发过来时,则转向步骤B;
B、当识别出所述当前节点在距离极地地区节点最近的横向环上,且数据包是从所述极地地区节点回发过来时,则将所述当前节点的任意一个次方向确定为待定的下一跳节点方向,并转向步骤C;当识别出所述当前节点不在距离极地地区节点最近的横向环上和/或数据包不是从所述极地地区节点回发过来时,则将所述当前节点与目的节点之间的主方向确定为待定的下一跳节点方向,并转向步骤C;
C、根据环路检测算法对所述待定的下一跳节点方向进行检测,当检测出所述待定的下一跳节点方向可用时,将所述待定的下一跳节点确定为所述当前节点在数据包传输路径上的下一跳节点,并触发所述发送模块;当检测出所述待定的下一跳节点方向不可用时,则转向步骤D;
D、当识别出所述当前节点在极地地区时,则将所述当前节点与所述目的节点之间的主方向相反方向上的下一跳节点确定为所述当前节点在数据包传输路径上的下一跳节点,并触发所述发送模块;当识别出所述当前节点不在极地地区时,则转向步骤E;
E、当识别出所述当前节点有备选方向且根据所述环路检测算法检测出所述备选方向可用时,则将所述备选方向上的下一跳节点确定为所述当前节点在数据包传输路径上的下一跳节点,并触发所述发送模块;当识别出所述当前节点没有备选方向和/或根据所述环路检测算法检测出所述备选方向不可用时,则转向步骤F;
F、当根据所述环路检测算法检测出所述当前节点任意一个次方向可用时,将所述次方向上的下一跳节点确定为所述当前节点在数据包传输路径上的下一跳节点,并触发所述发送模块;当根据所述环路检测算法检测出所述当前节点任意一个次方向不可用时,则转向步骤G;
G、当根据环路检测算法检测出所述当前节点的另一个次方向可用时,将所述次方向上的下一跳节点确定为所述当前节点在数据包传输路径上的下一跳节点,并触发所述发送模块;当检测出所述当前节点的另一个次方向不可用时,则转向步骤H;
H、当根据所述环路检测算法检测出所述当前节点与目的节点之间的主方向相反方向可用时,将所述当前节点与目的节点之间的主方向相反方向上的下一跳节点确定为所述当前节点在数据包传输路径上的下一跳节点,并触发所述发送模块;当根据所述环路检测算法检测出所述当前节点与目的节点之间的主方向相反方向不可用时,则转向步骤I;
I、丢弃数据包。
9.根据权利要求6所述的路由装置,其特征在于,所述第一确定模块确定出所述当前节点与所述目的节点之间的主方向为水平方向时,所述第二确定模块,还用于当识别出所述当前节点在距离极地地区节点最近的横向环上且数据包是从极地地区节点回发给所述当前节点的上一节点时,则依次从待定的下一跳节点中确定所述当前节点在数据包传输路径上的下一跳节点,其中,所述待定的下一跳节点依次包括:备选方向的下一跳节点,所述当前节点与所述目的节点之间的主方向的下一跳节点,所述主方向相反方向的下一跳节点及备选方向相反方向的下一跳节点;当识别出所述当前节点不在距离极地地区节点最近的横向环上和/或数据包不是从极地地区节点回发给所述当前节点的上一节点时,则依次从待定的下一跳节点中确定所述当前节点在数据包传输路径上的下一跳节点,其中,所述待定的下一跳节点依次包括:所述当前节点与所述目的节点之间的主方向的下一跳节点,备选方向的下一跳节点,次方向的下一跳节点及所述主方向相反方向的下一跳节点。
10.根据权利要求9所述的路由装置,其特征在于,所述第二确定模块,具体用于,
J、当识别出所述当前节点在距离极地地区节点最近的横向环上且数据包是从所述极地地区节点回发给所述当前节点的上一节点时,则转向步骤K;当识别出所述当前节点不在距离所述极地地区节点最近的横向环上和/或数据包不是从所述极地地区节点回发给所述当前节点的上一节点时,则转向步骤O;
K、当根据所述环路检测算法检测所述备选方向可用时,将所述备选方向上的下一跳节点确定为所述当前节点在数据包传输路径上的下一跳节点,并触发所述发送模块;当根据所述环路检测算法检测出所述备选方向不可用时,则转向步骤L;
L、当根据所述环路检测算法检测所述当前节点与目的节点之间的主方向可用时,将所述当前节点与所述目的节点之间的主方向上的下一跳节点确定为所述当前节点在数据包传输路径上的下一跳节点,并触发所述发送模块;当根据所述环路检测算法检测出所述当前节点与所述目的节点之间的主方向不可用时,则转向步骤M;
M、当根据所述环路检测算法检测出所述当前节点与所述目的节点之间的主方向相反方向可用时,将所述当前节点与目的节点之间的主方向相反方向上的下一跳节点确定为所述当前节点在数据包传输路径上的下一跳节点,并触发所述发送模块;当根据所述环路检测算法检测出所述当前节点与所述目的节点之间的主方向相反方向不可用时,则转向步骤N;
N、当根据所述环路检测算法检测出所述备选方向相反方向可用时,将所述备选方向相反方向上的下一跳节点确定为所述当前节点在数据包传输路径上的下一跳节点,并触发所述发送模块;当根据所述环路检测算法检测出所述备选方向相反方向不可用时,则转向步骤X;
O、当根据所述环路检测算法检测所述当前节点与目的节点之间的主方向可用时,将所述当前节点与目的节点之间的主方向上的下一跳节点确定为所述当前节点在数据包传输路径上的下一跳节点,并触发所述发送模块;当根据所述环路检测算法检测出所述当前节点与目的节点之间的主方向不可用时,则转向步骤P;
P、当识别出所述当前节点有备选方向且根据所述环路检测算法检测出所述备选方向可用时,将所述备选方向上的下一跳节点确定为所述当前节点在数据包传输路径上的下一跳节点,并触发所述发送模块;当识别出所述当前节点没有所述备选方向和/或根据所述环路检测算法检测出所述备选方向不可用时,则转向步骤Q;
Q、当根据所述环路检测算法检测出所述当前节点的任意一个次方向可用时,将所述次方向上的下一跳节点确定为所述当前节点在数据包传输路径上的下一跳节点,并触发所述发送模块;当根据所述环路检测算法检测出所述次方向不可用时,则转向步骤R;
R、当根据所述环路检测算法检测出所述当前节点的另一个次方向可用时,将所述次方向的下一跳节点确定为所述当前节点在数据包传输路径上的下一跳节点,并触发所述发送模块;当根据所述环路检测算法检测出所述次方向不可用时,则转向步骤S;
S、当根据所述环路检测算法检测出所述当前节点与目的节点之间的主方向相反方向可用时,将所述当前节点与目的节点之间的主方向相反方向上的下一跳节点确定为所述当前节点在数据包传输路径上的下一跳节点,并触发所述发送模块;当根据所述环路检测算法检测出所述当前节点与所述目的节点之间的主方向相反方向不可用时,则转向步骤X;
X、丢弃数据包。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410801948.7A CN104581861A (zh) | 2014-12-18 | 2014-12-18 | 一种基于卫星网络的路由方法和装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410801948.7A CN104581861A (zh) | 2014-12-18 | 2014-12-18 | 一种基于卫星网络的路由方法和装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN104581861A true CN104581861A (zh) | 2015-04-29 |
Family
ID=53096824
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201410801948.7A Pending CN104581861A (zh) | 2014-12-18 | 2014-12-18 | 一种基于卫星网络的路由方法和装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN104581861A (zh) |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106100720A (zh) * | 2016-06-08 | 2016-11-09 | 大连大学 | Leo/meo卫星网络的路由快速收敛优化方法 |
CN106341328A (zh) * | 2016-08-24 | 2017-01-18 | 东南大学 | 一种网格结构量子通信网络的路由方法 |
CN107959630A (zh) * | 2017-12-12 | 2018-04-24 | 中国联合网络通信集团有限公司 | 路由方法和路由系统 |
CN112865852A (zh) * | 2019-11-28 | 2021-05-28 | 清华大学 | 一种基于空间位置信息进行网络层寻址的路由方法 |
-
2014
- 2014-12-18 CN CN201410801948.7A patent/CN104581861A/zh active Pending
Cited By (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106100720A (zh) * | 2016-06-08 | 2016-11-09 | 大连大学 | Leo/meo卫星网络的路由快速收敛优化方法 |
CN106100720B (zh) * | 2016-06-08 | 2019-01-25 | 大连大学 | Leo/meo卫星网络的路由快速收敛优化方法 |
CN106341328A (zh) * | 2016-08-24 | 2017-01-18 | 东南大学 | 一种网格结构量子通信网络的路由方法 |
CN106341328B (zh) * | 2016-08-24 | 2019-06-25 | 东南大学 | 一种网格结构量子通信网络的路由方法 |
CN107959630A (zh) * | 2017-12-12 | 2018-04-24 | 中国联合网络通信集团有限公司 | 路由方法和路由系统 |
CN112865852A (zh) * | 2019-11-28 | 2021-05-28 | 清华大学 | 一种基于空间位置信息进行网络层寻址的路由方法 |
CN112865852B (zh) * | 2019-11-28 | 2022-04-01 | 清华大学 | 基于空间位置信息进行网络层寻址的路由方法和路由设备 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US9282030B2 (en) | Transport control server that calculates routing information | |
CN107735986B (zh) | 评估软件定义网络中的流量流的系统和方法 | |
CN107347032B (zh) | 报文转发方法及装置 | |
JP6457064B2 (ja) | サービスパケット転送方法及び装置 | |
CN103703727B (zh) | 用于分体式架构系统中控制业务的弹性路由的方法和设备 | |
CN104581861A (zh) | 一种基于卫星网络的路由方法和装置 | |
KR101697372B1 (ko) | 다중보호그룹의 보호절체를 수행하는 보호절체 장치 및 방법 | |
CN102006188B (zh) | 一种传送网中的路径回切方法及装置 | |
CN104521192A (zh) | 用于网络拓扑结构中的链路状态协议的洪泛优化的技术 | |
US8825986B2 (en) | Switches and a network of switches | |
JP6681465B2 (ja) | 経路切替 | |
CN109361596A (zh) | 路由计算方法、装置及电子设备 | |
CN104821916B (zh) | 通过使用旁路隧道减少IPv6路由表的大小 | |
KR20130087535A (ko) | 라우팅 정보의 룩헤드 계산 | |
CN102301662A (zh) | 媒体访问控制mac地址保护方法和交换机 | |
CN106936795A (zh) | 建立互联网协议安全性隧道的方法和网关设备 | |
CN106464511B (zh) | 一种业务保护方法及装置 | |
CN105471736A (zh) | 一种隧道信号劣化通知及切换方法、装置 | |
CN109873766A (zh) | 报文传输方法和装置 | |
CN106603401B (zh) | 快速重路由方法和装置 | |
CN103259720A (zh) | 一种基于mtr的数据传输方法和设备 | |
CN106230720A (zh) | 一种设备故障后的路由恢复方法及装置 | |
CN108965122A (zh) | 路由选路方法、设备及计算机可读存储介质 | |
CN105991427A (zh) | 备份路径确定及切换的方法和装置 | |
CN109587061A (zh) | 一种路由处理的方法、装置及设备 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
WD01 | Invention patent application deemed withdrawn after publication |
Application publication date: 20150429 |
|
WD01 | Invention patent application deemed withdrawn after publication |