一种面向卫星网络的分层多路径路由方法与流程

文档序号:13141769阅读:279来源:国知局
一种面向卫星网络的分层多路径路由方法与流程

本发明属于卫星网络通信技术领域,尤其涉及一种面向卫星网络的分层多路径路由方法。



背景技术:

随着通信技术的日新月异,多类型网络联合通信成为通信技术发展的趋势,空间卫星网络因其覆盖能力广、不受地理环境的约束等特点受到广泛的关注。在卫星通信技术的发展中,单层卫星网络越来越难以满足实际的通信需求,由于不同层的卫星节点具有的特点不同,充分利用不同层次的卫星网络进行联合通信成为未来卫星网络通信的发展趋势,卫星网络路由技术的研究成为当前的热点领域。基于负载均衡的低复杂度路由算法(lcra)采用低轨(lowearthorbitsatellite,leo)卫星网络的网状拓扑结构,考虑源节点和目的节点位于不同位置时,网络中进行数据传输的路由选择,提高了leo层卫星网络的整体性能,降低了时间复杂度,同时在避免拥塞、降低丢包率方面有很好的表现。基于优先级的分布式动态多路径路由算法(ddmr),则基于传输数据包的优先级设置和网络的拥塞情况,利用动态概率优先级调度算法实现了对数据包传输节点的选择,降低了数据包的丢包概率。在同样网络负载情况下,数据包的端到端传输时延更小。为解决卫星网络中拓扑结构和路由频繁变换的问题,提出了等长时隙快照和星上分布式路由算法。针对多层卫星网络在传输过程中的路由选择问题,提出了一种流量自适应的混合路由算法(tahr)。基于geo(地球同步轨道,geostationaryorbit)/leo双层卫星网络通过分簇的方式来降低卫星网络节点管理的复杂度和成本。主要研究了在geo/leo组成的多层卫星网络降低节点负载的路由方法。现有的卫星网络路由研究主要集中于单层多路径、以及多层分流,很少有关注于多层和单层多路径联合通信;由于原有卫星的功能性较为单一,未考虑多层卫星中层间互连问题,以及现有的多层分流技术能在一定程度上满足通信要求,因此对多层和单层多路径联合通信方式关注较少。但随着空间通信需求的增加,对卫星网络路由通信技术有更高的要求。

综上所述,现有技术存在的问题是:当前的卫星网络路由技术在网络中出现大量数据时,拥塞情况加重,数据正确交付率下降较多,信息的转发时延过大,无法满足系统对数据传输的准确性和实时性需求。



技术实现要素:

针对现有技术存在的问题,本发明提供了一种面向卫星网络的分层多路径路由方法。

本发明是这样实现的,一种面向卫星网络的分层多路径路由方法,所述面向卫星网络的分层多路径路由方法中采用静态拓扑,将运行周期进行了划分,在每一个时间片内实现了网络路由的实时更新;在leo层卫星中采用双路径路由算法,在geo层的卫星节点则维持到其他节点的最小跳数路由,使用拥塞控制机制与数据分流方法;网络中传输的数据包通过leo层进行传输,当网络发生拥塞时,则将对时延要求较高的数据包通过geo层卫星节点进行传输。

进一步,所述面向卫星网络的分层多路径路由方法在每个时间片开始阶段,在地面控制节点计算每个节点到达同层其他节点路由信息;将相应的路由信息发送到各个leo节点,leo卫星节点建立自身的路由表,路由表存储到同层所有节点的信息,有:当前leo卫星id、目的节点接入卫星id、下一跳地址;geo卫星获取到其他所有节点的可见性,构建到其他卫星节点的最小跳数路由表,并根据可见性来决定数据通过geo层节点传输的下一跳地址;在路由开始阶段优先选择leo层卫星节点进行数据传输;当传输过程中的节点发生拥塞时,基于时延要求进行相应的传输路径选择。

进一步,所述leo层中采用双路径路由算法,卫星结构采用π星座模型,leo层卫星节点同轨道中节点之间的距离保持不变,在每个时间片开始时,对网络进行路由更新,地面控制节点获取各个卫星节点的位置信息,得到卫星节点与周围可见卫星节点的距离,通过在leo层卫星网络中使用dijkstra算法来计算leo层卫星之间时延最短的路径和备用路径。

进一步,所述geo层中的最少跳数路由算法中当geo卫星无法通过一跳到达leo节点,则检测是否可以通过一跳到达目的节点;中继发送到目的接入leo卫星节点,若无法到达,则通过其他的geo卫星节点进行数据的中继;当接收到来自leo的数据包后,判断是否能够到达目的节点接入卫星,能够直达,将数据包直接发送到目的节点;不能直达,则将数据包传输到其他geo节点卫星。

进一步,所述面向卫星网络的分层多路径拥塞控制路由方法包括以下步骤:

步骤一,数据包传输到当前节点;

步骤二,判断当前节点的缓存队列大小是否大于设置的阈值;当缓存队列大小大于阈值时,判断是否向周围邻居节点发送过拥塞控制信息,若未发送,向周围端口进行发送拥塞信息,当前数据包依然在本队列中进行缓存;当缓存队列大小小于阈值时,向周围邻居节点发送拥塞解除信息,通知其他节点继续通过本节点进行数据转发;

步骤三,当邻居节点收到拥塞控制信息,判断是拥塞信息,则经过当前节点发送的数据包,放弃最优路径,选用备用路径;判断是拥塞解除信息,则相应的路径标记为畅通,当前时间片内仍进行分流传输;下一个时间片开始时,查看最优路径是否通畅,若通畅则通过最优路径进行传输,否则,继续分流传输;

步骤四,重复步骤一-步骤三直到数据发送结束或传输路径不再经过当前节点。

本发明的另一目的在于提供一种使用所述面向卫星网络的分层多路径路由方法的卫星网络通信系统。

本发明的优点及积极效果为:通过结合geo和leo卫星网络的优点,geo层中采用最小跳数路由算法,leo层中采用双路径路由算法,即保持两条路径进行数据传输,一条最优路径与次优路径,优先选择最优路径进行传输,将次优路径作为备用路径,同时备用路径中避免使用最优路径中的节点进行传输。当leo卫星节点发生网络拥塞时,周围节点通过该节点的数据包则通过备用路径进行传输,降低leo卫星网络的负载,并将对网络中传输时延要求较高的业务数据通过geo进行传输。拥塞的发生表明当前最优路径是一条繁忙链路,在一段时间内维持网络中分流状态,并在拓扑变化时,及时地更新链路,获取链路状况来决定管是继续进行分流或选取最优路径传输。仿真结果表明,分层多路径路由算法在网络拥塞时,可以实现更高的数据交付率,能够降低数据传输的平均时延。

在本发明中为解决卫星网络中的路由传输问题,提出了一种基于多层卫星网络的分层多路径路由技术。在路由机制中充分考虑了卫星网络的动态变化的特点,采用静态拓扑的方式,将运行周期进行了划分,在每一个时间片内实现了网络路由的实时更新。在leo层卫星中采用双路径策略,在geo层的卫星节点则维持到其他节点的最小跳数路由,设计了合理的拥塞控制机制与数据分流方法。网络中传输的数据包在leo层通畅的情况下,通过leo层进行传输,当网络发生拥塞时,则将对时延要求较高的数据包通过geo层卫星节点进行传输。随着网络中收发用户的增减,提出的路由算法在数据包交付率等方面比单路径路由算法和单层双路径算法表现更好,传输时延等方面也有较大的提升。同时对提出的算法在部分节点故障情况下的表现进行了仿真,结果表明,提出的算法在交付率方面性能下降较小,但数据包的传输时延方面有一定的增加。

附图说明

图1是本发明实施例提供的面向卫星网络的分层多路径路由方法流程图。

图2是本发明实施例提供的网络拓扑结构的基本模型示意图。

图3是本发明实施例提供的leo层卫星节点的可见性分析示意图。

图4是本发明实施例提供的时间片合并示意图。

图5是本发明实施例提供的数据传输的过程示意图。

图6是本发明实施例提供的节点失效情况下的路由选择示意图。

图7是本发明实施例提供的数据包交付率随节点对数增加的变化趋势示意图。

图8是本发明实施例提供的不同类型的数据包传输时延随节点对数增加的变化趋势示意图。

图9是本发明实施例提供的采用单路径路由算法在有故障情况下数据包接收量的变化示意图。

图10是本发明实施例提供的采用改进的多路径路由算法数据包接收量的变化趋势示意图。

具体实施方式

为了使本发明的目的、技术方案及优点更加清楚明白,以下结合实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。

下面结合附图对本发明的应用原理作详细的描述。

如图1所示,本发明实施例提供的面向卫星网络的分层多路径路由方法包括以下步骤:

s101:在每个时间片开始阶段,在地面控制节点计算leo中每个节点到达同层其他节点路由信息。将相应的路由信息发送到各个leo节点,leo卫星节点建立自身的路由表,路由表存储到同层所有节点的信息,有:temp_id(当前leo卫星id)、dest_id(目的节点接入卫星id)、next_id(下一跳地址);

s102:geo卫星获取到其他所有节点的可见性,构建到其他卫星节点的最小跳数路由表,并根据可见性来决定数据通过geo层节点传输的下一跳地址;

s103:在路由开始阶段优先选择leo层卫星节点进行数据传输。当传输过程中的节点发生拥塞时,基于时延要求进行相应的传输路径选择;对时延要求较高的数据通过geo层进行传输,时延要求低的数据则通过leo层进行传输。

下面结合附图对本发明的应用原理作进一步的描述。

1网络模型

1.1网络的异构性

在本发明中采用的网络模型由geo/leo双层卫星网络与地面层节点层组成。不同的卫星网络层间采用弱连接的方式,即地面节点与leo节点、地面节点与geo节点、leo节点与geo节点都是单连接的方式。卫星节点同层间的连接采用多连接的方式,即每个节点同周围多个节点进行连接。多层网络的连接结构如图2所示。

卫星网络中的星座参数如表1所示。

表1卫星网络中的星座参数

leo层卫星网络由66颗卫星组成,有6条轨道,每条轨道中有11颗卫星。对leo层中的卫星于相邻节点的可见性分析,结果如图3所示,图中节点2_1只能与区域范围内的节点可见,即每一个leo卫星节点与周围相邻的8个节点都是可见。在leo层卫星网络中,leo卫星网络与周围8节点都是连通的。每个leo卫星有三种类型的链路:同层数据链路(sdl,用于同层leo卫星进行连接)、向上数据链路(udl,用于与geo进行连接)、向下数据链路(ddl,用于与地面节点进行连接)。

geo层卫星网络由3颗卫星节点组成,每个geo卫星有三种类型的链路:同层数据链路(sdl,用于同层geo卫星进行连接)、向下对地数据链路(ddl,用于与地面节点进行连接)、向下leo卫星数据链路(dll,用于与地面节点进行连接)。geo中的卫星节点之间相互连接。

地面节点层有数据传输节点、数据接收节点和地面控制节点三种类型,数据传输节点负责向其他节点发送数据;数据接收节点则主要用于接收其他节点发送的数据包;地面控制节点的功能则是路由计算和更新,在时间片开始时计算每个节点到其他节点的最短距离与相应的路径,并将各节点的路径信息发送到相应的leo节点。

1.2业务类型的多样性

在本发明的网络模型中采用多种数据类型来模拟真实情况下的数据传输,将数据业务类型分为两种类型,即a、b两种类型。a类业务为普通业务,对时延要求很低,只需要完整的传输即可;b类业务对时延要求较高,需在尽可能短的时间内进行传输。

2路由方法

在本发明中采用虚拟拓扑的路由策,将整个卫星网络的运行周期划分为不同时间片。在每个时间片内,网络的拓扑结构稳定,星间链路不发生变化。在本网络模型中leo卫星网络层中卫星之间的逻辑位置较为固定,geo卫星对地位置不发生变化。由于leo卫星的高速移动性,导致leo卫星与geo卫星节点的接入变化极为频繁,以geo对leo层卫星节点的覆盖变化作为网络中时间片的划分标准。图4为一个时间片划分模型,网络中链路的建立与中断时网络的拓扑结构发生变化,(t2-t1)、(t7-t6)时间段较小,(t2-t1)为链路建立时刻的时间片过小,则将t1进行删除,li+2的建立时间改为t2时刻。(t7-t6)为链路断开的时间片过小,因此将t7时刻删除,li+2链路在t6时刻就断开。在本发明中判断时间片大小的阈值为δt=15。

2.1网络路由机制

2.1.1leo层中的双路径路由算法

在本发明中网络由于leo卫星网络采用π星座模型。在卫星轨道接缝区域,不同轨道的卫星相向运行,星间的相对速度较快,星间链路的建立具有较短的时间。因此在最短路由算法建立的过程中,卫星轨道的边界区域不能进行通信。

在leo层中采用双路径路由算法。leo层卫星网络采用π星座模型,leo层卫星节点同轨道中节点之间的距离保持不变,但随着网络的仿真运行,leo层卫星不同轨道间卫星间距离在低纬地区和高纬地区不同。在每个时间片开始时,对网络进行路由进行更新,地面控制节点获取各个卫星节点的位置信息,并得到卫星节点与周围可见卫星节点的距离,通过在leo层卫星网络中使用dijkstra算法来计算leo层卫星之间时延最短的路径和备用路径。在本发明中,leo层卫星节点的连通性较强,因此为减少原有路径对第二条路径选择的影响,次优路径的选择过程中,避开最优路径上的相关节点。

2.1.2geo层中的最少跳数路由算法

在geo卫星节点中维持到其他卫星节点的最少跳数路径。当geo卫星无法通过一跳到达leo节点,则检测是否可以通过一跳到达目的节点。中继发送到目的接入leo卫星节点,若无法到达,则通过其他的geo卫星节点进行数据的中继。根据geo卫星节点对中低纬度的广域覆盖性,能够保证geo卫星能够维持一个到目的节点的最少跳数路由方法。当geo节点接收到来自leo的数据包后,判断是否能够到达目的节点接入卫星,如果能够直达,则将数据包直接发送到目的节点,若不能直达,则将数据包传输到其他geo节点卫星。

2.1.3路由过程

在每个时间片开始阶段,在地面控制节点计算每个节点到达同层其他节点路由信息。将相应的路由信息发送到各个leo节点,leo卫星节点建立自身的路由表,路由表存储到同层所有节点的信息,有:temp_id(当前leo卫星id)、dest_id(目的节点接入卫星id)、next_id(下一跳地址)。geo卫星获取到其他所有节点的可见性,构建到其他卫星节点的最小跳数路由表,并根据可见性来决定数据通过geo层节点传输的下一跳地址。

在路由开始阶段优先选择leo层卫星节点进行数据传输。当传输过程中的节点发生拥塞时,基于时延要求进行相应的传输路径选择。在仿真中,网络中传输的业务对时延有不同的要求。对时延要求较高的数据通过geo层进行传输,时延要求低的数据则通过leo层进行传输。数据在卫星网络的传输过程如图5所示。

在当前网络中,若多条传输路径共用同一传输节点,则将会在该节点处造成网络拥塞,进而使整个网络中的性能有所下降,网络中在拥塞情况控制过程如下:

step1:数据包传输到节点b;

step2:判断节点b的缓存队列大小是否大于设置的阈值τ1,若大于τ1,则判断节点b是否已经向周围节点发送过拥塞信息。如果未发送,则向周围端口进行发送拥塞信息,若已发送,则不再进行发送,当前数据包依然在本队列中进行缓存;当缓存队列大小小于阈值τ2(τ2<τ1)时,则向周围节点发送拥塞解除信息,通知其他节点可以继续通过本节点进行数据转发。

step3:当节点a收到节点b的拥塞控制信息。若是拥塞信息,则经过节点a发送到节点b的数据包,放弃最优路径,通过备选路径进行相应的数据传输,同时拥塞的发生也说明最优路径较为繁忙,因此在当前时间片内,通过geo层将数据进行分流,下一时间片再决定是否通过最优路径进行传输;若是拥塞解除信息,则相应的路径标记为畅通,但当前时间片内的数据包仍然按数据分流的方法进行传输。下一个时间片开始时,查看最优路径是否通畅,若通畅则通过最优路径进行传输,否则,继续分流传输。

step4:重复上述过程直到数据发送结束或传输路径不再经过节点b;

在空间环境下,网络中的卫星节点极易受到影响,进而失效。当网络中的节点发生失效时,网络中依赖于该节点的业务可能完全丢失,因此对该网络进行抗毁性研究具有重要的意义。在本发明中,通过对网络的固定节点故障进行仿真来模拟现实环境下的节点故障。

失效节点避免机制的设计原则为当仿真开始时,leo层节点则向周围其他节点发送到目的节点的相关自身相关数据包,当周围节点接受到邻居节点的相应信息数据后,则将数据进行存储到可达节点表中。当有数据包传输到本节点,将选定利用分布式动态路由选定下一跳,再判断下一跳是否可达,若可达,则进行数据传输;若不可达,则选用备用路径进行数据传输。节点失效过程如图6所示。

下面结合仿真对本发明的应用效果作详细的描述。

1仿真与性能分析

1.1性能分析参数

在仿真中拟采用的用来衡量网络性能的参数有以下几个:

1)平均传输时延,为源节点到目的节点端到端时延的均值。即数据包从在源节点产生到在目的节点接收到。仿真中统计的时延则是每个数据收集点收到的数据是在过去一段时间内收到数据包单向时延的均值。

2)数据交付率,在使用的网络模型中,数据包交付率主要用来衡量卫星网络传输的可靠性。网络数据包交付率则为网络总接收量与网络发送量的比值,即σ=out/in。其中out为网络接收量,是单位时间内到达目的节点的数据包数,单位为packet/s(包/秒)。网络发送量是单位时间内源节点发送数据包的总和in,单位packet/s。网络传输过程中的数据交付率越高,表明使用的网络路由算法越可靠。

1.2实验仿真

在仿真模型设计时,使用stk仿真软件生成卫星网络的相关轨道参数,并将相关的轨道模型导入到opnet中,利用opnet进行整体的仿真设计。进行路由算法仿真时的参数设计如表2所示。

表2仿真参数设计

为减小仿真规模,leo卫星节点队列的处理速率相对较低,极易达到拥塞阈值。在本发明中采用增加收发节点的方式来模拟真实的用户变化,一个收发节点对即为一个通信连接。为验证提出的算法在网络节点与链路较差的情况下的性能,因此节点对的选取较为集中,易于产生链路共用。

为验证改进的多路径路由算法(imra)性能,将提出的算法与单路径路由算法(spra)、双路径路由算法(dpra)进行对比。数据包交付率随节点对数增加的变化趋势如图7所示。

如图7所示,在开始发送与接收节点对数目在1和2时,数据包传输过程中路径没有共用情况,三种路由传输算法在数据交付率方面差别不大,随着传输节点对的增多,网络中不同链路共用的节点增多,节点出现拥塞情况,通过卫星网络传输的数据包交付率呈现减少趋势。在同样数目的节点对情况下,与单路径路由算法和双路径路由算法相比,改进的传输路由算法在数据包交付率方面表现较好。不同类型数据包的平均传输时延随网络中用户增加的变化趋势,如图8所示,在网络中用户较少的情况下,通过leo层传输的数据传输时延较小,三种路由策略下传输的数据包时延相差不大。当卫星网络中的用户大量增加时,网络中节点的出现拥塞,通过leo层卫星节点传输的数据包平均传输时延有了较为明显的增加,改进的多路径路由算法能够有效的利用geo层卫星节点进行相应的数据分流,缓解网络的拥塞情况,改进的多路径路由算法传输数据包的时延比单层卫星网络时延降低很多。通过geo层传输的b类型数据包在拥塞情况下,平均传输时延比通过leo层卫星节点传输a类型数据包的时延更小。

当卫星网络中有节点失效,则将影响通过该节点的数据包。在有故障节点与无故障节点的条件下,分别采用单路径算法与改进的多路径传输算法来对网络模型进行仿真。其中图2中节点2_2故障,地面有八对收发节点,网络中接收数据量随时间变化的趋势如图9、图10所示。

如图9、图10所示,采用单路径路由算法在有故障的情况下,数据包接收量有了较大的下降,采用改进的多路径路由算法数据包接收量变动不大,能够很好的规避故障节点,降低故障节点对网络传输性能的影响。不同类型的数据包平均传输时延变化如表3所示。

表3节点故障时对网络数据传输的影响

算法中由于故障节点的存在导致数据包丢失,使得a、b两种类型的数据包平均传输时延降低。采用改进的多路径路由算法,当遇到故障节点时,选优备用路径进行传输,传输时延上有所增大,但在数据包交付率上减少相对较小。

以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内所作的任何修改、等同替换和改进等,均应包含在本发明的保护范围之内。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1