APP下载

基于虚拟拓扑的低轨卫星路由切换算法仿真

2021-11-17童文婷黄圣春

计算机仿真 2021年9期
关键词:路由链路重构

童文婷,黄圣春,王 玲

(1.湖南大学电气与信息工程学院,湖南 长沙 420082;2.国防科技大学电子科学学院,湖南 长沙 410073)

1 引言

随着通信技术的日益发展,传统的地面通信技术已经无法满足人们日益增长的通信需求,各种新的移动通信技术层出不穷,卫星网络成为现代通信技术的主要方式之一,在民用、商用、军用等领域具有广泛的应用前景。其中,低轨(Low Earth Orbit,LEO)卫星凭借其研制周期短、制造成本低以及技术更新快等优点成为未来面向服务的应用型通信卫星的发展方向。

路由问题是LEO卫星系统网络中的基本问题,也是当前该领域的研究热点之一,对提高数据传输的时效性和可靠性有着重要的意义。由于LEO卫星网络和地面网络之间的差异(如拓扑动态),LEO卫星网络难以在地面网络中采用成熟的路由技术[1]。同时,由于卫星相对地面的快速移动,容易导致星地链路的不断切换,造成频繁的路由重构。目前,国内外众多研究人员针对LEO卫星网络路由协议已经进行了一系列的研究,各种针对LEO卫星系统的路由算法已经被相继提出。

文献[2,3]通过在报文中携带评价链路优劣的权重信息,在变化的拓扑中能快速的找到最优路径。但是这类算法完全忽略了卫星网络的运行规律,不能体现卫星网络相对于其它自组织网络的优势。文献[4]提出一种等长时间段快照序列路由改进算法,在每个时间段形成的拓扑快照中,删除在这个时间段即将关闭的链路。这个算法优化了快照路由算法对链路反应不及时的问题,但是仅涉及到了星上路由的处理,没有提及星地切换带来的影响。文献[5]同样是基于虚拟拓扑快照路由,通过对卫星链路质量变化的监测,实时地更新事先存储好的拓扑图标,解决了基于虚拟拓扑算法鲁棒性和适应性差的问题。但是该算法对全局系统同步的要求特别高,需要不断地修正时间和轨道的信息,增加开销。同时,该算法也没有涉及星地链路的路由分析。文献[6]提出的算法同时给出了星间链路和星地链路的路由策略,但对星地链路仅仅提到地面节点选择距离最短的卫星作为连接卫星,没有分析星地切换的影响以及解决办法。

上述算法中对卫星组网中上下行链路,即卫星节点与地面节点的部分均没有做详细的分析与研究,或者直接将星地切换与星间切换作同一种类型处理。但是基于低轨卫星组网的特殊性,整个网络中有两种节点——地面节点和卫星节点,卫星间的相对位置基本没有改变,卫星连接的卫星节点也是固定不变的,地面与卫星发生切换之后能够采用更简单、更高效以及更节省开销的路由策略来应对切换带来的路由的变化。

为了充分利用卫星星座拓扑基本固定的特点,提高星地路由切换的效率,基于虚拟拓扑快照路由策略,提出一个普适性的星地路由切换模型,该协议能够应用于所有的虚拟拓扑路由协议,简化星地路由切换过程,并对卫星星座的端到端时延、路由重构时间以及丢包率等性能做出改善。

2 LEO网络模型

LEO卫星网络可以被看作是一个由多个节点组成的自组织网络,包括地面节点和卫星节点。卫星节点总数为M×N,其中N是卫星的轨道数,M为每条轨道上的卫星个数。

卫星网络中存在两种类型的双工链路:星间链路和星地链路,如图1所示。图中Sat表示卫星节点,UE表示地面节点。

图1 LEO卫星网络示意图

星间链路 (Inter-Satellite Link,ISL) 是卫星之间的通信链路,又分为轨道间ISL和轨道内ISL。前者连接相邻轨道中的两颗卫星,后者连接同一轨道内前后两颗卫星。每颗卫星只能和4颗相邻的卫星建立ISL。由于卫星间位置的相对固定 ,卫星间的连接关系基本不发生变化。

星地链路也就是用户数据链路 (User Data Link,UDL) 是卫星节点与覆盖范围内的地面终端的通信链路。随着卫星节点的高速运动,UDL也会频繁断裂与生成。

3 低轨卫星路由切换算法

根据以上两种通信链路的特性,本文提出一种基于虚拟拓扑的低轨卫星路由切换算法。该算法主要分为三个部分,一是构建一个虚拟拓扑作为算法的基础;二是设置一个过滤器,针对卫星网络的连通特性,保证星上路由的顺利进行;三是设计一个星地路由切换策略,实现减少路由重构时间、降低丢包率,优化端到端时延的目的。

在虚拟拓扑的环境中,每颗卫星都能通过自己的虚拟地址计算出当前卫星所在的轨道号以及在所在轨道的相位号,数据包来到星上后,采用最短路径(Dijkstra)算法来计算星上路由,此外数据包每到达一个卫星节点,均要先通过一个过滤器来避免不能联通的链路,过滤器的具体设置会在后文给出。在卫星运动过程中,地面节点与卫星节点的连接发生断裂,这时采用星地路由切换策略简单、快速地重构一条新的链路,减少丢包率与端到端延迟。

3.1 虚拟拓扑的构建

由于卫星网络的相对位置基本固定,卫星最多能够通信的节点也只有同轨道面的前后两颗卫星和相邻轨道面处于同一纬度的两颗卫星。基于这种特性,能够将星上路由与ATM虚连接的概念结合起来,构建虚拟拓扑[7]。

卫星网络星上部分如图2所示。在系统开始之前,为每个卫星节点设定一个虚拟地址。虚拟地址的设置不是随意的,要有一定的规则,使得每颗卫星能够通过虚拟地址计算出当前卫星所在的轨道编号以及在所在轨道的相位。例如虚拟地址为4的卫星节点承担传输数据包的责任,计算出自己所在的位置为轨道1第4位,目的节点的虚拟地址为13,也就是在轨道4第1位。又因为每颗卫星均知道自己前后左右的卫星的虚拟地址,能够将动态变化的卫星网络路由方案转化为静态的路由策略。

图2 卫星节点组网

为了防止卫星节点由于拥塞、故障等原因造成ISL失效,每个卫星节点还应该维护一个故障链路表,及时更新链路信息,修正每个时刻的拓扑快照。

3.2 过滤器的设置

卫星节点除了会随着特定的轨迹周期性的运转之外,还会因卫星网络的连通特性产生一些“不可能”的连接,因此要设置节点过滤器来删除这些“不可能”的连接。下面将详细介绍卫网络的连通特性以及由此设置的三种节点过滤器。

1)相邻卫星过滤器:卫星节点严格按照设定只与相邻四颗卫星通信,但在某些高纬度地区,由于轨道距离变小,原先不在通信范围的卫星也可能能够连接,因此要设置相邻卫星过滤器仅允许在严格距离标准下与相邻卫星的ISL存在。

2)反相缝过滤器:卫星星座组网存在一条存在于两个轨道之间的反相缝,反相缝两边的轨道一条轨道上的卫星由南向北运行,另一条轨道上的卫星由北向南运行。这两条轨道之间的星间链路由于相对运动速度过快而不能连接。反相缝过滤器消除了ISL穿过反相缝的麻烦。例如,作为铱星系统,轨道1和6是反向旋转的[8]。

3)纬度过滤器:在两极地区,跨轨星间链路两端的卫星之间的相对角速度会显著增大,而卫星天线无法在过快变化的角速度下继续维持跨轨星间链路通信,纬度过滤器可以维持指定的北纬和南纬之间的ISL,使高纬度的ISL关闭。

3.3 星地路由切换策略

随着卫星节点不停地绕地球高速运转,其覆盖范围也在不断地变化。图3是星地切换的示意图。t时刻卫星S覆盖地面节点,随着卫星的移动,t′时刻卫星S的覆盖范围发生了转移,不再覆盖地面节点A,断开了与地面节点A的连接。而此时卫星S′覆盖地面节点A,与地面节点A建立连接。这样,就发生了一次星地切换。星地切换会导致原有路由失效,需要建立新的有效路径,以保证业务的传输。

图3 星地切换示意图

根据地面节点在卫星系统中行使的功能的不同,将星地切换分为两种:一种是地面源节点发生星地切换;另一种是地面目的节点发生星地切换。

3.3.1 地面源节点发生星地切换

地面源节点发生卫星切换的过程如图4所示。UE1为源节点,在t时刻连接Sat2,UE2为目的节点,连接Sat3。在t′时刻UE1与Sat2的连接断开,然后与Sat1建立连接。此时,数据包的传输路径由UE1-> Sat2-> Sat3-> UE2变成了UE1-> Sat1-> Sat2-> Sat3-> UE2。

图4 源节点发生星地切换示意图

源节点发送数据包时,数据包中除了携带有源节点地址Src和目的节点地址Dest之外,还携带有与目的节点相连的卫星节点的地址Dest_Sat。数据包来到星上后,按照星上路由的处理的方式来传输数据分组,而星上路由的目的节点即为Dest_Sat。

地面源节点发生星地切换时,因Dest_Sat并未发生改变,因此无需其它路由开销,只需继续将数据分组传输到与之相连的卫星上即可。

3.3.2 地面目的节点发生星地切换

地面目的节点发生星地切换的过程如图5所示。UE1为源节点,在t时刻连接Sat1,UE2为目的节点,连接Sat2。在t′时刻UE2与Sat2的连接断开,然后与Sat3建立连接。若不能及时把切换的信息传达到源节点,源节点会继续将数据分组发往Sat2,然后由Sat2向地面传输,由于目的节点已经切换到Sat3,则这个数据分组将会被丢失。

图5 目的节点发生星地切换示意图

为了能及时反馈链路的断裂的信息,当UE2发生星地切换时,立马向UE1发送一个RREP包。包中除了要携带当前目的节点连接的卫星地址Dest_Sat外,还需要携带源节点连接的卫星地址Dest_Sat作为RREP包的目的地址。

UE1收到RREP包后,将数据包中Dest_Sat的值修改为当前目的节点连接的卫星地址,路由重构完成,源和目的重新恢复通信。

4 仿真与结果分析

4.1 卫星系统建模

为了验证协议的性能,基于OPNET对卫星网络进行建模分析。网络拓扑搭建参考铱星星座系统,其中星上网络包含66颗低轨卫星,均匀分布在6个轨道面上,每个轨道面11颗卫星。在STK软件中生成轨道文件,并将轨道文件导入到OPNET,卫星就能按照星下点轨迹进行运动,如图6。

图5 卫星网络拓扑示意图

继续在其中添加地面节点,就构成了整个卫星网络通信系统。

4.2 端到端延迟

为了能够更加清晰、直观的感受动静结合的双层混合路由协议对端到端延迟的优化,设置一对源和目的节点进行仿真验证,并将该算法与AODV算法进行对比。源节点初始经纬度为(E101,S1.88),目的节点初始经纬度为(E13.6,N19.8),均使用随机移动模型。仿真运行时间为1800s,仿真结果如图6所示。

图6 端到端时延

在没有发生路由切换时,AODV和切换算法的端到端时延均在0.2s左右。但是一旦发生星地路由切换,AODV协议的端到端时延就会有显著的增加,而动静结合的双层混合路由协议基本没有变化。这是因为动静结合的双层混合路由协议避免了发生星地路由切换时重新进行路由寻找的过程,提高了通信的稳定性。

4.3 路由重构时间

算法的路由重构次数和路由重构时间如图7所示。基于虚拟拓扑的低轨卫星切换算法的平均路由重构时间在0.22s左右,是AODV的平均路由重构时间的一半。而且从仿真结果上可以看出,基于虚拟拓扑的低轨卫星切换算法的路由重构次数也远小于AODV,大大提升了系统的性能。这是因为AODV在路由重构时,要重新发起路由寻找,而DSDLH仅需要目的端返回一个错误信息给源节点,且源节点切换时不造成路由重构,有效减少了路由重构次数与路由重构时间。

图7 路由重构时间

4.4 分组投递率

图8为随仿真时间变化而变化的实时分组投递率。可以看出基于虚拟拓扑的卫星路由切换算法一直有着非常稳定的分组投递率,且随着时间的增加,性能的优势更加明显,表明了该算法在提升通信的稳定性方面有了显著的改善。这是因为基于虚拟拓扑的卫星路由切换算法减少了不必要的路由重构,且发生切换时不用再次进行路由发现,有效减少了路由重构时间,提升了分组投递率。

图8 分组投递率

5 结论

本文基于虚拟拓扑的概念,提出了一种具有普适性的卫星路由切换算法。所做的贡献主要有如下三点:

1)提出的算法兼顾了ISL和UDL,在星地切换方面又具有一定的独立性,能够对后续基于虚拟拓扑的协议研究提供思路与指导。

2)将星地切换协议放到了一个完整的卫星系统之中来验证,确保了协议的可行性,并为实际的卫星系统搭建提供思路。

3)通过OPNET仿真,验证了基于虚拟拓扑的卫星路由切换协议对低轨卫星通信系统性能的提升:平均路由重构时间下降50%;路由重构次数减少66.7%;分组投递率上升10%;端到端时延受星地切换的影响也大大减小。

本文虽然设计了一套完整的卫星路由的运行方案,但是研究的重点还是在卫星星地切换协议上,整一套卫星路由协议还需要继续完善。下一步将继续研究卫星组网的星上路由过程,争取和当前的路由切换协议一起,组成一个更完善的卫星路由体系。

猜你喜欢

路由链路重构
一种移动感知的混合FSO/RF 下行链路方案*
“双减”能否重构教育生态?
长城叙事的重构
基于干扰重构和盲源分离的混合极化抗SMSP干扰
天空地一体化网络多中继链路自适应调度技术
数据通信中路由策略的匹配模式
一种用于6LoWPAN的多路径路由协议
OSPF外部路由引起的环路问题
用四维的理念重构当代诗歌
一种IS?IS网络中的链路异常检测方法、系统、装置、芯片