倪少杰 岳 洋 左 勇 刘文祥 肖 伟 叶小舟
(国防科技大学电子科学学院 长沙 410073)
基于卫星星座的卫星互联网正日益成为重要的信息基础设施。由上千甚至是上万颗低轨(Low Earth Orbit, LEO)、中轨(Middle Earth Orbit, MEO)和包含地球静止轨道(GEostationary Orbit, GEO)及倾斜地球同步轨道(Inclined GeoSynchronous Orbit, IGSO)在内的地球同步轨道卫星构成的庞大卫星网络,能够突破地面网络需要在世界各地建设地面站的局限,实现全球不间断信号覆盖,为全球用户提供大宽带、低延时、无死角连接入网的网络服务。大规模、多层次的卫星网络是天地一体化网络的重要组成部分,也是世界各国争相研究的重点[1]。
路由作为网络通信的关键技术,直接影响着数据流的传输效率和网络的服务质量。目前针对地面网络的路由技术已经相当成熟,但是无法直接用于卫星网络,主要原因是卫星网络具有网络拓扑变化剧烈、路由表更新频繁、单星载荷受限、节点流量不均衡、卫星损坏概率大等问题,卫星网络的这些特点给卫星路由协议和算法设计带来巨大挑战。
目前学术界针对卫星路由技术开展了大量研究工作,国内外许多学者对其进行了总结。国内的卢勇等人[2]将卫星路由技术分为单层卫星网络(例如LEO卫星网络)路由和多层卫星网络(例如LEO-MEOGEO 3层卫星网络),并且对单层卫星网络的路由和多层卫星网络的路由进行了更为详细地划分;朱立东等人[3]对针对卫星网络不同关键性能的路由技术进行了总结。国外有学者将卫星路由技术分类为负载均衡路由、基于流量的路由以及组播路由[4],并且对负载均衡路由进行进一步划分。随着卫星路由技术的发展,卫星路由算法已经不局限于实现单一路由性能指标的提升,而是着重解决在特定网络场景约束条件下实现网络整体性能例如时延、丢包率、吞吐量等指标的优化;除此之外,目前已有的综述文献很少关注卫星通信的网络层路由协议以及适用于卫星网络的仿真平台,而卫星路由协议是卫星路由算法得以实现的基础,并且卫星路由算法的性能优劣需要通过仿真平台进行分析评估。针对以上问题,本文首先介绍各类网络架构的卫星路由协议,并且考虑到光通信已经成为目前及未来卫星网络重点考虑的通信技术,本文还简要介绍了卫星光通信网络的路由问题;然后提出了新的卫星路由技术的分类方法,按照路由表是全局管理还是分布式决策对卫星路由技术进行分类并且总结了各卫星路由算法的优化目标和适用场景;之后展望了卫星路由技术的未来发展趋势并在附录处介绍了世界上卫星网络仿真平台现状。
卫星通信网络架构与地面通信网络架构相比具有显著差异,针对地面网络的路由协议不能直接应用于卫星,必须采用拓扑控制策略屏蔽卫星网络的动态性才能将地面路由协议用于卫星网络中。本节首先展示了卫星通信网络架构,并且介绍了针对卫星网络的路由协议现状。
传统的卫星通信系统架构如图1所示。
图1 卫星通信系统架构
卫星通信网络包含空间段、地面段以及用户段。空间段由GEO/IGEO, MEO和LEO卫星组成,作为空间段的核心,各个卫星节点具有星上信号与数据处理能力,同轨道卫星和非同轨道卫星之间均通过建立星间链路(Inter-Satellite Link,ISL)进行数据交换。地面段包括地面网关、网络控制中心(Networks Control Center, NCC)以及各类地面观测站,主要完成向卫星发送控制信号和从卫星接收回馈信号的功能,同时提供到达地面网络与用户终端的接口。用户段主要包括各类用户终端以及相应的用户接口设施。
卫星网络需要依靠路由协议才能完成路由和数据转发。路由协议负责创建路由表,描述网络拓扑结构,执行路由选择和数据包转发功能,因此卫星路由协议对于卫星网络通信起到至关重要的作用。
当前,IP协议是卫星网络接入全球互联网的主流入网方案。IP路由协议主要包括路由信息协议(Routing Information Protocol, RIP)、开放最短路径优先协议(Open Shortest Path First, OSPF)、中间系统到中间系统协议(Intermediate System to Intermediate System, IS-IS)、内部网关路由协议(Interior Gateway Routing Protocol, IGRP)以及增强型内部网关路由协议(Enhanced Interior Gateway Routing Protocol, EIGRP)等[5]。外部网关协议主要包括边界网关协议(Border Gateway Protocol,BGP)。卫星网络可以通过在地面终端配置上述内部/外部网关协议进行动态IP路由,或者使卫星成为路由节点,即采用星上路由的方法在星座网络中实现IP路由功能,实现卫星网络接入全球互联网[6]。
卫星通信系统除了基于IP的协议体系,还包括国际空间数据系统咨询委员会(Consultative Committee for Space Data Systems, CCSDS)协议体系和延迟/中断容忍网络(Delay/Disruption Tolerant Networks, DTN)协议体系。CCSDS在TCP/IP协议的基础上进行机制修改和扩充,制定了空间通信协议规范(Space Communication Protocol Standards, SCPS),并且定义了两个网络层协议:空间分组协议(Space Packet Protocol, SPP)和空间通信协议规范-网络协议(Space Communications Protocol Specification—Network Protocol, SCPSNP)。DTN体系架构主要用于断续网络连接和高时延的通信场景,因此非常适合于卫星通信。在DTN体系架构中,节点间传输的数据包称为消息,根据消息在网络中副本数量,DTN路由协议可分为单副本路由和多副本路由。单副本路由协议有“直接传输”协议(direct transmission)[7]和“搜寻和聚焦”协议(seek and focus)[7]等;多副本路由协议有蔓延路由协议(epidemic)[8]、使用历史记录的概率路由协议(Probabilistic Routing Protocol using History of Encounters and Transitivity, PRoPHET)[9]、考虑最大数据传播概率(max propagation)的路由协议(MaxProp)[10]、“扩散和等待”协议(spray and wait)[11]等基于复制的路由,以及考虑社会网络的社会相似度(social similarity)和中间中心度(betweenness centrality)的路由(routing based on Similarity and Betweenness centrality, Sim-Bet)[12]等基于社会行为的路由策略。
针对新型网络架构在卫星网络中的探索与应用,新型网络路由协议也应运而生。命名数据网络(Named Data Networking, NDN)是一种以数据内容为中心的网络体系架构[13],NDN能够直接响应用户的数据请求而无需通过IP地址与服务器通信[14],因此相比TCP/IP网络架构,NDN能够更好适应移动互联网时代以多媒体流量内容为中心的数据分发模式。目前NDN中主要有3种路由协议[15]:针对命名数据网络的开放最短路径优先协议(OSPF for Named data networking, OSPFN)、针对命名数据网络的双层路由协议(Two-layer Routing Protocol for NDN, TRPN)和命名数据链路状态路由协议(Named-data Link State Routing protocol, NLSR)。而着眼于目前的5G、未来的6G+天地一体化网络通信时代,未来的通信网络将实现全球无死角全覆盖,非地面网络(Non-Terrestrial Network, NTN)的出现将很好地解决例如偏远地区、高速移动的交通工具(例如飞机)、应急通信等特殊场景的通信需求,针对NTN的卫星路由协议标准也正在制定[16]。
现有卫星网络路由协议总结如表1所示。
表1 卫星网络路由协议
由于微波通信频谱资源的限制以及接入卫星互联网的用户数量不断增加,传统的微波通信带宽已经接近理论瓶颈值。而激光通信因频段高、波长短、波束狭窄等特点因而相对传统微波通信而言具有更大的通信带宽,且安全保密性高,信号收发天线尺寸小,便于卫星携带[17]。基于上述原因,卫星光通信网络已成为下一代卫星通信技术的研究热点。学术界针对卫星光通信网络路由问题开展了大量研究[18–27],由于激光星间链路波长资源有限,因此一般认为卫星光网络路由问题属于考虑多优化目标的路由与波长分配问题[17](Routing and Wavelength Assignment,RWA)。但目前激光通信技术还不够成熟,基于卫星光通信网络的路由协议与算法仍处于理论研究与仿真实验阶段。
卫星路由算法根据路由决策主体的差异可分为集中式路由、分布式路由和混合式路由。集中式路由在中央节点计算路由表然后将路由表分发给网络中各卫星节点;分布式路由中各卫星节点成为路由决策主体,各节点独立计算最优的下一跳节点并转发数据包;混合式路由则结合了集中式路由集中计算和分布式路由独立决策的特点。
集中式卫星路由方法是在中央节点中计算并维护路由表,并将路由表分发给卫星节点,卫星节点在转发数据包时查找路由表并选择下一跳,当网络拓扑发生改变时,中央节点收集全局网络链路信息,并进行路由表的更新。中央节点可以是接入卫星或地面控制中心。
早期卫星网络均采用基于连接的集中式路由算法。Chang等人[28]提出有限状态机(Finite State Automata, FSA)路由算法,其采用离散拓扑控制策略,将卫星网络的动态拓扑结构离散化并建模为一个有限状态机,在不同状态中为不同的网络拓扑结构分配不同的路由表。FSA属于静态路由方法,即将网络拓扑建模成静态拓扑,从而屏蔽卫星网络的高动态性。具有代表性的静态路由算法还有流偏差算法(Flow Deviation, FD)[29]和自适应路径路由策略(Adaptive Path Routing Scheme , APRS)[30]等。FD算法在预先指定的中央节点运行,旨在寻找端到端时延最小的路径;APRS其利用LEO卫星周期性和可预测的特点降低ISL切换频率,并且通过提高链路切换请求和新连接请求的接受率来缓解星间链路的流量拥塞。
静态路由算法将网络拓扑进行离散化建模然后进行路由决策,随着卫星星座规模的增大,静态路由很难及时感知链路状态信息[31]。因此,采用能够感知链路状态信息的动态路由方法能够及时更新路由表,提高卫星网络服务质量。Rao等人[32]提出在源节点集中计算的多路径QoS路由算法(Multi-Path QoS Routing, MPQR)和基于移动代理的QoS路由协议(Quality of Service Routing Protocol based on Mobile Agent, QoSRP- MA)[33],在MPQR中源节点使用遗传算法和模拟退火算法寻找满足服务质量(Quality of Service, QoS)约束条件的最优路径并将路由表转发给路径节点;QoSRP-MA派遣移动代理(mobile agent)沿着星间链路在整个卫星网络中迁移并探测满足QoS约束的路径。移动代理到达目的卫星后,按原路返回并向源节点通报路由信息,由源节点决策路由转发路径。Hui等人[34]提出了分布式QoS算法(Distributed QoS-based Algorithm, DQA),DQA中,源节点周期性地向目的节点发送多只智能蚂蚁分组,寻找满足QoS要求的全局最优路径。Bai等人[35]提出显式紧凑多路径路由算法(Compact Explicit Multi-path Routing,CEMR)。在CEMR中,中央卫星节点称为“轨道发言人”,轨道发言人通过星间信息交换机制获取各卫星传输过来的链路状态信息,计算并向各卫星分配路由表。
集中式路由算法从全网络角度出发,网络状态信息和路由计算均具有全局视野,能够实现较好的流量分配和负载均衡。但是,随着卫星网络规模的增大以及巨型卫星互联网的出现,受到单星星上处理与计算能力较小的限制,以卫星节点作为中央节点的集中式路由面临路由计算复杂度高与信令开销大的问题[36]。即便是以计算资源丰富的地面站作为中央计算节点,当卫星节点或者链路出现异常或者故障时,地面站很难及时感知节点与链路状态变化并及时更新路由表,使得网络性能下降的风险大大提高。
与集中式路由不同,在分布式路由策略中每个卫星节点作为独立的路由决策者,根据链路状态信息独立计算并选择下一跳节点进行数据包转发,无需中央节点进行全局路由计算。
早期的分布式路由算法(Datagram Routing Algorithm, DRA)[37]基于最短路径路由的思想,无法解决链路拥塞和负载不均衡的问题。鉴于此学术界提出了一系列负载均衡路由算法例如显示负载均衡算法(Explicit Load Balancing, ELB)[38]、基于移动代理的负载均衡路由协议(Load Balancing Routing Protocol based on Mobile Agent, LBRP-MA)[39]、面向延时的自适应路由算法(Delay-Oriented Adaptive Routing algorithm, DOAR)[40]、考虑能耗的QoS路由算法(QoS Energy Routing, QER)[41]、基于优先级的自适应路由算法(Priority-based Adaptive Routing, PAR)[42]等。ELB和DOAR均是通过向邻居节点发送反馈信号使邻居节点减少向拥塞节点转发数据;LBRP-MA通过各节点在全网洪泛移动代理进行链路状态搜集,各节点根据搜集的信息选择最佳下一跳。QER根据节点缓存队列大小和剩余能量调整下一跳转发节点,控制链路流量。这些分布式负载均衡算法均依赖当前网络的流量信息,往往会造成网络中存在较多的状态信息,可能反而会加重网络负担,使传输性能恶化。与上述被动式负载均衡算法不同,PAR选择历史利用率较小的链路进行数据转发,可以主动避免链路拥塞,但是该方法没有考虑用户流量的地理分布差异,对于全局负载均衡效果不佳。LIU等人[43]提出基于分段路由的负载均衡路由算法(Load Balancing Routing Algorithm based on Segment Routing, LBRA-SR)。该算法考虑了全球流量的地理分布不均匀性,动态划分轻、重流量负载区域,数据包在两类区域分别采用不同的路由转发策略;但是该算法仍然只考虑网络的即时信息,没有利用网络历史信息。近年来,基于流量和拥塞预测的分布式路由算法逐渐成为研究热点。Na等人[44]提出基于极限学习机的分布式路由算法(Extreme Learning Machine based Distributed Routing, ELMDR),考虑地球表面流量分布密度,所提出的极限学习机机器学习算法对卫星节点的流量负荷进行提前预测,节点基于流量预测结果进行路由决策。Liu等人[45]提出了基于混合流量绕行的负载均衡路由算法(Hybrid-traffic-detour based Load Balancing Routing, HLBR),通过先验地理信息和实时网络状态预测网络中容易发生级联拥塞的区域,然后计算最佳绕行路径使得业务流量绕开拥塞区域,实现负载均衡。
卫星路由除了考虑如何避免拥塞,还要考虑例如时延、带宽、丢包率等关键性能指标,满足用户的服务质量需求。多服务按需路由(Multiservice On-demand Routing, MOR)[46]是典型的分布式QoS路由算法,其将卫星网络的流量类型分为时延敏感型、“尽力而为”型以及带宽敏感型;网络中每颗卫星负责维护一个路由表,每个路由表都包含了流量业务类别以及对应流量类别的下一跳节点。Dai等人[47]提出基于马尔可夫空时图的面向服务路由(Service-Oriented Routing with Markov Spacetime Graph, SOR-MSG),首先通过卫星节点之间的连接时长和连接概率构建马尔可夫空时图(MSG)模型,链路中的卫星基于建立的MSG,调整基于QoS要求的状态转移规则和信息素更新规则,自主选择下一跳节点,最终确定最优路径。以上算法考虑了网络性能和服务质量,但是没有考虑卫星网络的稳健性和可靠性。卫星节点和链路出现失效和故障会导致网络拓扑出现变化、路径切换以及重路由事件,从而影响网络服务质量。鉴于此,Qi等人[48]提出一种适用于倾斜轨道巨型星座的分布式生存路由算法(Distributed Survivable Routing Algorithm for Mega-Constellations with Inclined Orbits,DSRA-MCIO),其利用网络拓扑的规律性,以最小计算开销确定数据包每个目的地的多条主、次路径。然后,根据受限洪泛机制和预绕行机制组成的故障恢复机制,降低链路故障时的端到端时延和信令开销。
分布式路由算法的优势是减小了卫星节点的计算负担,且对网络流量的变化具有较好的敏感性,当网络状态发生变化时能够及时进行路由更新。但是分布式路由也存在缺陷。由于卫星节点独立地选择下一跳,分布式路由算法的路由决策缺乏全局流量信息,所选择的路径不一定是全局最优,并且路由决策依赖于卫星节点与链路状态、控制信息的交互,这将导致在卫星网络拓扑变化的早期数据包可能被转发至非最优的路径中,并且产生较大的信令开销。
混合式卫星路由结合了集中式路由和分布式路由各自的特点,其中一种思路是采用半分布式的路由策略,即转发路径中既有能够自主决定下一跳节点的节点又有仅负责透明转发的节点。Guo等人[49]提出一种加权半分布式路由算法(Weighted Semi-Distributed Routing Algorithm, WSDRA)。WSDRA将卫星节点分为路由卫星(Routing Satellite,RS)和信使卫星(Message Satellite, MS)。在一条完整的传输路径中,RS和MS成对出现,RS负责路由计算,将数据包传输给下一跳MS, MS只负责路由转发。经过仿真测试,与DRA相比,由于信使卫星MS不计算下一跳,WSDRA减少至少50%的计算开销,同时维持了较好的整体性能。混合式路由的另一种思路是以全局集中式路径计算为主,各节点根据链路状态进行局部路由调整。Zhang等人[50]提出生成与更新路由算法(Generation and Update Routing Algorithm, GURA)算法,以地面生成的全局路由表为主,卫星节点生成的局域路由表为辅;局域路由表由局部网络信息进行更新,全局路由表根据本地路由表进行更新,从而降低节点计算负担。Liu等人[51]提出全局局部混合负载均衡路由策略(Hybrid Global-local Load Balancing Routing Scheme, HGLBRS),将星间流量需求分解为可预测的长期基线和不可预测的短期波动。首先采用全局策略进行基于长期基线的全局流量分配,然后采用局部策略进行基于短程波动的路线调整。通过全局规划和局部实时调整相结合,最终实现网络流量的最优分配。Jiang等人[52]提出基于操作响应空间卫星网络的软件定义网络快速恢复路由算法(Fastrecovery Routing Algorithm for Software Defined Network based Operationally Responsive Space satellite networks, FRA-SDNORS)算法,基于软件定义网络的集中式路由作为基本路由模式,在节点故障或拥塞发生时启动分布式机会重路由,主动调整流量分配缓解卫星网络热点区域的拥塞。
混合式路由结合了集中式路由和分布式路由算法的特点,虽然很好地改善集中式和分布式路由各自的缺陷,但是算法复杂度较高,且对星-地链路的稳健性和星上处理能力有着较高的要求。由于混合式路由具有较好的综合网络性能,已成为当前卫星路由技术的研究热点。
不同的路由算法在设计时都会考虑如何实现不同的性能指标的优化,这些指标决定着卫星网络服务性能好坏。路由的性能指标主要包括端到端时延、丢包率、网络吞吐量和ISL利用率等。
本节总结了本文所提卫星路由算法的优化目标、着重考虑的性能指标以及适用场景,如表2所示。
由表2可知,不论是采用哪种路由策略或者优化目标,几乎所有的路由算法都考虑了端到端时延。这也侧面反映了端到端时延是路由性能指标中非常重要的部分,在设计路由算法时需要对其进行重点考虑。
表2 本文所提路由算法的优化目标、性能考虑以及适用场景总结
早期的路由算法主要基于最短路径的思想,在数据接入卫星处为数据包选择一条具有最小节点转发跳数的路径将其转发至目的节点,但是随着接入网络的用户数量增多,位于最短路径上的卫星节点将承载大量的业务流量,从而导致时延和丢包率的提高,网络传输环境逐渐恶化;并且考虑到地球人口分布不均匀,覆盖人口密度高地区的卫星节点将承担更多的流量传输任务而覆盖人口稀少地区的卫星将出现链路与带宽资源受到闲置与浪费;另外,地面站无法做到全球均匀分布也容易导致数据传输路径末端出现链路拥塞的情况。针对以上场景,应该采用负载均衡算法或者多路径路由算法,即时绕开拥塞路径,充分利用闲置卫星,提高网络整体性能。
而对于包含多种业务类型的数据流量,例如语音、通话和视频会议等时延敏感性流量,其主要的QoS需求是最小化端到端时延,此时采用基于最短路径的路由算法能更好地满足时延敏感业务的QoS需求;而以文件传输为代表的带宽敏感型流量主要的QoS需求是最大限度地利用卫星节点的传输带宽,此时采用考虑卫星节点剩余带宽的路由算法能更好地满足带宽敏感业务的QoS需求;此外不同业务类型流量还具有不同的传输优先级。因此,针对多业务类型的通信场景,卫星网络需要针对不同QoS需求以及优先级的不同采用合适的路由算法。
随着以低轨卫星为核心的超大卫星互联网的出现,卫星网络规模和拓扑复杂度都在不断提升。并且在后5G时代乃至未来6G时代中,让卫星网络在空天地一体化信息网络中承担更重要的角色已经成为专家学者们的共识。如何设计针对大规模复杂卫星网络的路由技术成为十分具有挑战性的问题,卫星路由技术未来的发展注定是挑战与机遇并存。本节就卫星路由技术未来的发展趋势与挑战进行讨论。
传统的卫星路由方法基于人为建立的网络流量与链路状态模型,难以适应日趋复杂臃肿的网络拓扑结构、实时变化的网络流量特性以及节点或链路受干扰甚至失效的复杂网络环境,传统路由算法计算复杂度不可避免会随着卫星数量而快速增大。以机器学习/深度神经网络为代表的人工智能技术可以自动提取复杂网络的流量与状态特征,输出符合路由约束的最优路径,使用户能够获得更好的服务质量。由于具有良好的数据建模特性,人工智能技术在应对未来复杂卫星网络的路由问题上具有巨大的应用潜力[53]。目前学术界已经尝试在卫星路由研究中运用机器学习/深度学习以及(深度)强化学习技术。机器学习/深度学习由于其优异的数据非线性拟合能力被应用于卫星网络的流量预测问题[44,54–55]。而强化学习和结合了深度学习的深度强化学习技术由于其无需事先提供训练样本数据以及可以通过与外部环境的互动不断优化自身决策模型的特点与网络路由决策过程相似,有不少研究者将(深度)强化学习引入卫星网络路由算法的设计中并且通过仿真实验证明(深度)强化学习的强大决策能力适用于解决卫星网络的路由决策问题[56–59]。
未来的卫星互联网将是LEO,MEO和GEO/IGEO卫星构成的3层复合网络。对于多层卫星网络的路由策略,目前常见的思路是采用分组策略,高层卫星作为区域中心节点搜集组内低层卫星的网络拓扑信息,为低层卫星计算路由表,低层卫星只负责数据转发。目前基于分组管理思路的多层卫星路由技术已经有较多的研究成果,国内外研究人员已提出例如多层卫星路由算法(Multi-Layered Satellite Routing, MLSR)[60]、卫星分组路由协议(Satellite Grouping and Routing Protocol, SGRP)[61]、QoS自适应路由协议(Adaptive Routing Protocol for Quality of Service, ARPQ)[62]、可预测卫星网络路由协议(Predictable Satellite Network Routing Protocol, PSNRP)[63]、基于时隙划分的QoS路由协议(Time-slot Division QoS Routing Protocol,TDRP)[64]、多层卫星分布式QoS路由协议(Hierarchical and Distributed QoS Routing Protocol,HDRP)[65]等基于多层卫星网络的路由算法/协议。这种路由策略有助于发挥低层卫星网络的通信传输能力,提高系统吞吐量。但是分组管理的路由策略并不能保证数据传输的可靠性。一是该策略没有考虑高层卫星很难保证对低层卫星网络拓扑的实时精确捕获,从而使得路由表时效性不强;二是层间星间链路不稳定,无法保证高层卫星能够及时获取底层卫星的链路状态并进行路由更新,路由策略的稳健性差;三是分组管理策略容易造成更多的时隙划分,过小的时隙长度不利于路由计算的收敛并且还会增大节点的计算负担。因此,设计可靠稳健的多层网络卫星路由算法是未来卫星路由技术的一大挑战和重要发展方向。
卫星通信网络已从相对封闭、架构固定的独立网络发展为未来空天地一体化互联网架构的关键基础设施。软件定义网络(Software-Defined Networking, SDN)是下一代移动和固定通信的范式之一,核心特点是将路由决策等控制功能从路由/转发设备中分离,由集中式的控制器进行统一控制,从而实现网络控制平面与数据转发平面的解耦[66],其具有IP网络不具备的灵活性,可编程性、虚拟化和资源管理集中化等特点,能显著改善用户服务质量,提高网络资源利用率,减小网络管理开销。目前针对基于SDN的卫星网络路由研究主要集中在网络架构层面,特别是SDN控制器部署方案层面,当前主流的SDN控制器部署方案有以下几种:地面控制中心作为控制器[67]、GEO卫星作为控制器[68]、地面控制中心作为主控制器+GEO卫星作为次级控制器[69]等,针对不同的SDN控制器部署方案可以设计多种高效灵活、自适应的卫星路由算法以最大限度满足用户的QoS需求。考虑到基于SDN架构的卫星网络与传统卫星网络相比存在的巨大优势,未来卫星路由策略研究与SDN网络架构的结合将成为大势所趋。
随着空天地一体化信息网络的建设,在未来卫星通信网络作为非地面网络的重要组成部分将成为与地面网络同等重要的通信基础设施。卫星互联网的出现使得全球用户接入互联网不再受到地理条件的限制,将有效填补数字鸿沟并极大地促进信息服务在全球各地的流通。卫星路由作为卫星互联网的关键技术,决定着数字信息能否有效并及时地通过卫星网络传输到用户终端设备,关系到卫星互联网的服务能力与服务质量。本文首先介绍了卫星网络已有的路由协议,重点围绕卫星路由的计算特点对卫星路由技术进行了综述,并介绍了各类路由算法的优化目标和适用场景,并且展望了卫星路由技术未来的发展趋势。
卫星网络仿真平台主要应用于卫星网络的性能评估、网络吞吐量规划、新协议的开发以及网络快速部署设计等领域[70],功能强大的卫星网络仿真平台对卫星网络相关技术研究起到事半功倍的效果。
当前有许多可用于卫星网络仿真的开源平台,NS-2是一种基于C++和 Otcl的面向对象的离散事件仿真器,是目前学术界使用最广泛的网络仿真软件,但已停止更新。NS-3是网络仿真领域的新贵,其核心代码和功能模块完全基于C++,大多数模块都提供Python编程接口,极大地降低了用户的上手难度。OMNeT++和GTNets均为基于C++的网络仿真平台,OMNeT++的主要特点是可跨平台仿真,而GTNets具有强大的分布式并行处理能力,主要面向大型网络仿真。J-SIM和JiST/SWANS均基于Java开发,共同点是扩展性较好且可以跨平台运行,其中JiST/SWANS基于虚拟机运行,执行速度快、内存消耗小是它的优势,但上手难度大,对初学者不够友好。SSFNet是一种模型自配置的互联网协议和网络仿真平台,主要针对IP层以上的网络模型仿真。Mininet基于Linux,是目前主流的基于SDN架构的虚拟网络仿真平台。
除了开源仿真平台,商业级卫星网络仿真软件也应用广泛。STK是目前常用的卫星网络分析工具,可用于生成卫星星座、获取星座运行参数等。QualNet是由美国GloMoSim公司开发的基于C++的仿真系统,它的最大优势是仿真速度快。OPNET最早由麻省理工学院于1986年推出,现在已经成为一个使用广泛的商业离散事件仿真器。EstiNet是一种针对SDN架构的商用OpenFlow网络仿真器,相对于开源的Mininet, EstiNet能够适应更大规模网络的仿真,并且仿真结果能够复现。
目前主流的可用于卫星网络的仿真软件特性总结如表3所示。
除了开源和商业卫星网络仿真软件,一些研究团队也独立开发了专门针对卫星网络的仿真架构或平台。有国外学者提出了新的网络仿真架构Hypatia[71]。Hypatia是一个带有仿真和可视化模块的分析框架,可以用于实现和评估卫星轨道设计、卫星网络拓扑、路由以及拥塞控制的新方法,仿真可视化是其相对其他卫星网络仿真平台的一大优势。在国内,西安电子科技大学、北京邮电大学等机构均有研究团队研发了各自的卫星网络仿真平台[56–57]。这些平台的出现很好的支持了卫星网络路由技术的研究。