支持QoS 的低轨卫星星座网络重路由方法*
2021-08-30董超颖罗新华张文育修卫东
董超颖,续 欣,罗新华,张文育,修卫东
(1.中国人民解放军94895 部队,福建 漳州 363000;2.陆军工程大学,江苏 南京 210000)
0 引言
互联网的飞速发展以及对带宽不断增长的需求促进了卫星通信的发展。技术的不断进步使得卫星通信的能力日益提高,同时单位带宽的成本逐步下降,这些进一步促进了卫星通信在全球通信市场份额的增加。卫星通信不仅可以用于广播/多播应用,也可以用于点到点服务。低轨卫星(Low Orbit Earth,LEO)星座具有大容量和低时延的特点[1-2],非常适合提供点对点的高质量服务。此外,在实际的网络应用场景中,往往多种业务同时存在,而他们对于服务质量的要求各有不同,有时甚至差异很大。因此,路由技术作为影响LEO 卫星星座网络传输性能的关键技术,需要充分考虑各类业务的服务需求[3-4],确保网络能够提供高质量的服务。
现有低轨卫星星座网络路由方法在提供服务质量(Quality of Service,QoS)保证方面,借鉴了地面网络的相关机制,但由于链路信息和用户需求收集开销较大,或存在多个目标而导致复杂性增加,因此仍然备受关注,尤其是链路负载较大时,实现高水平的QoS 保证依然较为困难。
基于以上考虑,本文提出一种支持QoS 的低轨卫星星座网络重路由方法。该方法针对链路负载较重或发生拥塞的情况,可仅利用本地链路信息实现简单的业务区分处理和流量的合理调节,从而尽可能保证各类业务的QoS 水平。该重路由方法简单易行,星上运行开销小,并可与多种路由方法结合使用。
1 国内外研究现状
在满足QoS 需求的低轨星座网络路由算法方面,Jiang Z 等人[5]提出了基于模糊逻辑的路由算法,通过模糊逻辑算法计算判断当前卫星节点的拥塞程度,然后针对用户需求进行QoS 路由选择。Mohoricic M 等人[6]提出了流量分类(Traffic Class Dependent,TCD)算法,按照对QoS 的不同需求对业务进行分类:A 类业务是时延敏感业务;B 类业务是带宽敏感业务;C 类业务是没有具体QoS 需求的业务,对每一类业务维护一种路由表,可以针对不同业务需求提供不同的路径选择。Nquyen H N 等人[7]提出了分布式QoS 路由算法,以链路的持续有效时间为链路代价,最小链路切换次数为目标,考虑了链路最大持续时间和最小跳数两种不同的路由策略,改善了在最大持续有效时间条件下的QoS性能。
同时,针对多种业务的不同QoS 需求,星座网络的QoS 路由方法也逐渐从单目标向多目标模型发展。例如魏德宾等人[8]提出了基于卫星网络多QoS约束的蚁群优化路由算法,对蚁群算法的启发函数提出了多个条件约束,参考链路QoS 信息作为选择下一跳的依据,将蚁群算法和多目标QoS 路由相结合,在提供多目标QoS 保障的同时,提高了收敛速度和寻优能力。周睿等人[9]提出了改进的多目标约束遗传算法,通过改进遗传算法的初始种群生成方法,使初始路径满足大部分的约束条件,显著提高了搜索效率,同时提出启发式交叉策略,加快了算法收敛速度。这些算法可以在改善网络QoS 性能的同时,加快收敛速度,增强搜索能力。
以上算法虽然都采用不同的方式提升了星座网络业务的QoS 性能,但是在网络发生链路故障或拥塞时会因为大量报文改变路径而引起流量波动,带来较重的流量开销,甚至产生级联拥塞,严重影响网络的服务质量。本文针对该问题,提出一种支持QoS 的重路由方法,通过灵活高效的分流策略应对链路故障或拥塞的发生,并确保各类业务的QoS 水平,进一步提高了网络性能。
2 QoS 指标说明
低轨卫星星座网络为用户提供服务时,需要满足业务服务质量要求。QoS 是指在通信网络系统中为特定业务提供其所需要服务的能力。QoS 的主要目标是为不同业务提供满意的服务。此外,为某些特定业务提供优先服务时,不能对其他数据流的服务质量产生影响。QoS 可通过一些典型的性能指标来衡量,如数据传输所需的端到端时延、吞吐量、丢包率等[10]。
2.1 端到端时延
端到端的时延可以表示为:
2.2 剩余带宽
剩余可用带宽属于QoS 凹性参数,路径上的剩余可用带宽应大于业务所需的带宽门限Bth。在一条通信路径中,取路径中所有星间链路(Inter-Satellite Link,ISL)中可用带宽最小数值作为该路径的剩余可用带宽参考数值BWP(Vs→Vd)。剩余带宽为:
式中,Bused(Ei, j)为星间链路已用带宽。
2.3 丢包率
为保证网络可以支持业务的正常传输,因此所选路径也应该保证数据传输的最大丢包率数值Pth为:
式中,Pvi为路径P(Vs→Vd)中节点Vi的丢包率。丢包率是丢失的数据包个数占总数据包数量的比率,属于乘性参数。
3 支持QoS 的低轨卫星星座网络重路由方法
3.1 问题描述与模型建立
LEO 卫星星座网络由有向图G=(V,E)表示,其中V为卫星节点集合,E为星间链路集合。卫星卫星间通过若干星际链路连接,当任意两个卫星节点之间传输报文时,采用一定的路由算法选择适当的路径。卫星间通过若干星际链路连接,当任意两个卫星节点之间传输报文时,采用一定的路由算法选择适当的路径。当网络中某条链路处于拥塞或者故障状态时,系统将采用重路由机制为报文重新选择路径。如图1 所示,数据包从源卫星节点S传输到目的卫星节点D,可由多条路径传输。采用最短路径算法,则其路由路径为S→I3→D。但此时若链路S→I3或I3→D处于拥塞状态,则启动重路由机制进行再次选路,选择合理的路径之后,可以使报文绕过故障或拥塞链路,保证高质量的数据传输。为了提高卫星星座网络QoS 性能,可结合业务需求,对重路由机制的路径选择进行进一步约束。
图1 卫星网络模型
3.2 算法流程
LEO 卫星星座网络中支持QoS的路由算法的目标是找出一条或者多条满足约束条件的路径,并且节点根据不同的业务类型,对转发的流量进行区分处理,赋予不同的业务以不同的优先级或数据转发比例,从而对全网业务流量进行合理分配,保证各业务QoS 需求。
在存在不同类型业务的低轨卫星星座网络中,卫星节点收到数据包之后,需要对数据包类型进行判别,并在进行流量负载均衡的过程中对不同类型的数据包进行不同的分流处理。
在进行分流处理之前,首先定义不同的业务类型。假设A 类业务为时延敏感类业务,优先级最高;B 类业务为带宽敏感类业务,优先级其次;C 类业务为尽力而为业务,优先级最低。
通常情况下,各类业务报文在卫星节点队列中的占比与该类业务输入到网络的流量占比相当时,才能保证处理的公平性;但是,当需要支持不同业务的QoS 时,则要将卫星节点的队列缓存资源优先配置给高优先级的业务。基于这一考虑,本文提出在支持QoS 的业务分流机制的基础上,根据卫星节点队列中各类业务报文的占比情况对数据包进行不同的分流处理。具体来说,当节点的队列长度变化时,需要首先保证对高优先级业务处理所需的资源,对应地,在队列中将优先保证高优先级业务的队列占比,而对较低优先级的数据流进行分流处理。根据该思路,提出以下业务分流机制。
假设进入卫星节点的A 类业务占比为a,B 类业务占比为b,C 类业务占比为c,a+b+c=1。
算法中为卫星节点进行业务分流设置绕行门限。设α为门限一,β为门限二,χ为卫星节点当前队列占用比例。其中,α=1-a,β=1-c。于是,可得业务绕行比例矩阵X为:
如图2 所示,卫星节点Vi输出队列中的数据包要发送到目的节点,其中卫星节点Vj为最佳路径的下一跳,而卫星节点Vk为次佳路径的下一跳。根据业务分流机制的具体过程如下所述。
图2 流量按比例绕行
进行重路由的卫星节点接收到来自其主路径上的链路拥塞状态消息以后,开始启动分流过程,如图3~图5 所示。如果队列占比大于α,则说明此时链路较繁忙,此时将B、C 类业务全部做分流处理,将其转移到第二备选路径上传输,而保留A 业务仍然在最短路径上传输,以确保其时延性能;如果队列占比大于β且小于α,则链路负载处于中等水平,此时将C 类业务全部做分流处理,对于B 类业务则将(χ-c)/b部分的数据做分流处理,其余的B类业务流量以及所有A 类业务仍然在最短路径上传输;当队列占比小于β时,链路处于轻量负载的状态,因此仅对C 类业务中的χ/c部分数据流进行分流处理。
图3 χ>α 时业务分流情况
图5 β ≥χ 时业务分流情况
通过以上处理,对A 类业务(即时延敏感类型业务)而言,即使在相对较高的负载状态下,由于始终保证在最短路径上的数据传输,因此依然能够保证其时延性能。具体绕行比例如表1 所示。需要说明的是,目前的互联网业务中实时类业务总体占比小于非实时业务(超过80%[11]),因此可以假设:与其他流量相比,A 类流量的占比最小,由此可以保证α>β。
图4 α ≥χ>β 业务分流情况
表1 3 种类型业务数据包绕行比例X
该方法的流程图如图6 所示。
图6 算法流程
4 仿真结果与分析
4.1 仿真场景设置
在本节中,使用网络模拟器(Network Simulator version 2,NS2)评估支持QoS 的星座网络负载均衡路由算法的性能。这里仍然以类似铱星的星座网络为模型,该星座由66 颗卫星组成,均匀分布在6个轨道上,且不考虑缝间ISL,如表2 所示。因此,假定每个卫星在任何时候都与其相邻卫星保持4 个ISL。上行链路、下行链路和ISL 的容量分别等于6 Mb/s。在所有进行的仿真中,假定均不考虑链路误码,以避免由于卫星节点的缓冲区溢出与由于卫星信道误码而导致的吞吐量下降之间的任何可能的混淆。平均数据包大小设置为1 kB。卫星节点的队列缓冲区长度等于50 个数据包。
表2 仿真星座参数
本文考虑158 个Pareto On-Off 流,平均突发时间和平均空闲时间设置为200 ms。源和目的终端分布在整个地球的6 个大陆区域,如表3 所示[13]。为使得网络处于拥塞状态,数据源以0.5 Mb/s 至1.5 Mb/s 范围内的恒定速率发送数据。
表3 基于地理位置的流量分布 (单位:%)
4.2 仿真结果与分析
本文将之前在现有文献中提出的基于扩展链路的低轨卫星网络负载均衡路由算法(Load balancing Routing algorithm based on Extended link States,LRES)作为基线算法,将不支持QoS 的LRES 算法和与支持QoS 的低轨卫星星座网络重路由方法相结合的LRES 算法进行对比。不支持QoS 的LRES 算法将星座网络中所有的流量视作同种业务,不作任何区分;而与支持QoS 的低轨卫星星座网络重路由方法相结合的LRES 算法,即支持QoS 的LRES 算法,则对网络中的不同业务进行区分,按照优先级分为A 类业务,B 类业务和C 类业务。对不同类型的业务按照不同业务比例进行绕行。取两组进行仿真实验,如表4 所示。同时,经过仿真实验,将各类型业务的时延、丢包率和吞吐量结果进行对比分析。
表4 两组不同业务比例
时延和速率之间的关系如图7 所示。对于不同业务比例实验数据来说,均有以下现象:当业务发送速率小于当业务发送速率低于700 kb/s 时,支持QoS 的路由算法的A 类业务、B 类业务和C 类业务时延都较小,其中A 类业务时延最小,仅为50 ms左右,C 类业务作为“尽力而为”业务,其时延也是3 类业务中最大的,B 类业务则居中。未对业务做任何区分处理的LRES 算法的时延则最大。这是因为LRES 算法对所有数据包统一处理,其排队时延大于区分优先级的路由算法,故平均端到端时延最大。
图7 时延和速率之间的关系
当业务发送速率不断增加,如从700 kb/s 增加到1 500 kb/s 时,3 种业务的时延大小关系基本保持不变,A 类业务依然有最好的时延特性。这是由于当网络中的数据流量逐渐增加时,区分业务优先级的路由算法始终可以保证A 类业务采用最佳路径进行数据传输,故其时延始终最短。与此同时,B类业务和C 类业务的数据包则要进行不同程度的绕行,其传输路径往往比最佳路径更长,故其传播时延大于A 类业务。此外,与不支持QoS 的LRES 算法相比,B 类业务和C 类业务的时延均较大,主要原因在于LRES 算法在链路拥塞时控制所有业务统一进行分流,一旦切换了路径,原路径可能由于负载下降而恢复正常状态。这样,算法将数据流又重新切换到原路径传输,因此数据流将可能在原路径和新路径之间不断切换,使得端到端时延比高负载下始终在新路径上传输的B 类和C 类业务流更小。
因此,从上述分析可以看出,相比不支持QoS的LRES 算法,支持QoS 的负载均衡路由算法更能够保证时延敏感类业务的时延需求。
图8 为平均吞吐量和速率之间的关系图。为能够更加直观地进行比较分析,所示吞吐量为各业务归一化后的吞吐量。从图8 中可以看出,对于2 组不同占比的业务来说,当发送速率在500~1 500 kb/s的范围内时,采用支持QoS 的负载均衡路由算法的3 种类型业务的平均吞吐量与LRES 算法的平均吞吐量数值相差不大。在高负载情况下,A 类业务吞吐量稍高,C 类业务吞吐量最低,因为路由算法在任何时刻始终保证高优先级业务的服务质量,而总是图8 最先牺牲低优先级业务。
图8 归一化吞吐量和速率之间的关系
图9 为丢包率和速率的关系图。从图9 中可以看出,在第1 组业务占比实验中,当速率小于或者等于900 kb/s 时,A 类业务、B 类业务和C 类业务的丢包率皆趋近于0。不支持QoS 的LRES 算法则从800 kb/s 开始就有少量数据包丢失。在第2 组实验中,只有C 类业务的丢包率大于不支持QoS 的LRES 算法。这是因为此时C 类业务占比较大,路径相对较易发生拥塞现象。当发送速率大于1 100 kb/s 时,2 组实验的B 类业务和C 类业务的丢包率皆高于LRES,而A 类业务的丢包率始终最低。这是由于支持QoS 的负载均衡路由算法使A 类业务始终能够沿着分流后负载减轻的当前网络中的最佳路径传输,故其性能得到较好的保证。而C 类业务始终作为首先被分流的业务,性能得不到保证,B 类业务则居中。B 类业务和C 类业务在网络负载较重时,按照绕行机制,始终不能沿最佳路径传输,只能选择更长的绕行路径,然而会导致路径负载不断加重,故其发生丢包的概率增大。LRES 算法虽然可以根据链路拥塞情况切换路径,但由于路径上的负载仍然要比在最佳路径上仅传输A 类业务时的负载高,因此丢包率大于A 类业务,但小于B 类和C 类业务。
图9 丢包率和速率之间的关系
综上所述,支持QoS 的低轨卫星网络分流机制能够使高优先级的A 类业务得到最佳的性能保证。同时,B 类业务和C 类业务的丢包率和时延性能虽然稍有损失,但吞吐量并不会牺牲太多,仍然能够保证业务的服务质量。因此,支持QoS 的低轨卫星网络重路由机制在网络处于拥塞状态时,能够通过对业务的区分处理,确保满足不同类型业务QoS。
5 结语
针对低轨卫星网络,提出了一种支持QoS 的低轨卫星网络重路由方法。通过对星座网络不同类型业务设置不同的优先级,并根据节点队列占用情况对业务进行按比例分流,从而实现对不同类型业务的不同QoS 保证,满足业务传输的QoS 需求。仿真分析表明,该方法可以实现对不同类型业务的区分处理,最大限度保证业务的QoS 水平。