1. 引言
Figure 1. SDN basic architecture
图1. SDN的基本架构
随着网络通信技术的不断进步,5G网络加速了从传统网络到可编程网络的演进,地面通信已经无法满足大量用户需求,因此产生了天地一体化信息网络。卫星网络的拓扑不断变化,流量分布不均,处理能力有限,传输时延远大于地面网络,使得传统路由算法无法满足天地一体化网络。
软件定义网络(Software Defined Network, SDN)和网络功能虚拟化(Network Function Virtualization, NFV)技术可以解决卫星网络的灵活配置低成本,实现网元功能的动态部署。SDN通过转控分离实现数据包转发,其基本架构如图1所示。转发平面与控制平面通过OpenFlow等南向接口协议,由支持OpenFlow的交换机和远端控制器组成,转发平面交换机基于流表发送数据,每个交换机可以有包含流条目列表的多个流表;控制平面集中控制交换机的流表,从而达到数据转发,协议整体架构如图2所示。NFV作为SDN的补充技术,常用于虚拟数据包核心、云无线接入网(cloud radio access network, C-RAN)等5G应用。 [1] SDN转控分离可以增强NFV性能,NFV为SDN控制平面提供底层基础设施,从TCP/IP五层模型上讲,SDN研究的是端到端网络架构优化,与1~3层功能一致;NFV研究网元的网络功能,与传输层、应用层相对应。因此,将SDN与NFV结合,有助于解决卫星网络的灵活配置、低成本等问题。 [2]

Figure 2. OpenFlow overall architecture
图2. OpenFlow整体架构
传统卫星系统采用静态路由方法来保证网络可控,但控制结构不灵活,将SDN的转控分离和集中控制引入其中,这种网络也要求高QoS (Quality of Service,服务质量)与负载均衡,因为卫星容量有限,引入QoS后缓解延迟阻塞,引入负载均衡将SDN控制器动态控制网络,缓解拥塞,提高带宽。
为了解决不断变化的卫星网络拓扑中较快找到下一跳,本文基于SDN原理,提出一种天地一体化卫星网络的优化最短路径算法。该算法基于Dijkstra算法,主要根据LEO转发平面的节点控制与相对位置变化,也根据GEO卫星与地面站控制器的布置,使卫星找到下一跳的链路时延有所降低。
2. 相关研究
2.1. SDN天地一体化网络控制器部署
天地一体化网络以地面为基础,以空间为延伸,基本模型如图3所示。常用的体系参考模型为分层形式,自下而上为传输、承载、服务、应用层,以及贯穿四层的管控与安全。 [3] 此外,一种面向6 G的网络架构由高中低轨卫星、地面通信组成,其中地面通信提供智能化网络管理,中低轨卫星支持接入网与核心网,高轨卫星管理控制网络自治域,使网络更为简洁敏捷。 [4] 目前卫星网络架构趋于扁平化,将SDN思想引入天地一体化网络成为卫星通信网络的发展趋势。可以实现卫星网络转发平面与控制平面的分离,由卫星控制器进行复杂的路由计算、配置与资源管理等操作,LEO、MEO等卫星节点只需要转发平面的功能,降低了卫星建设成本。同时地面基站负责数据转发,控制器管理全网卫星节点及实时数据流。按照SDN控制器部署在不同的卫星轨道,可将其分为单层控制器和多层控制器。

Figure 3. Space-ground integrated network basic architecture
图3. 天地一体化网络基本架构
2.1.1. 单层控制器
在LEO (Low Earth Orbit,低地轨道)单层通信网络架构中,组网布局分散,布置SDN控制器后可以实时观测卫星网络状态,并结合分集群管理等组管理方式,提高卫星资源分配的效率,减少卫星资源的压力。另外,单层网络控制器可以主从结合,主控制器管理全局拓扑,计算子网间路由路径;从控制器负责收集子网信息,并上传给主控制器。 [5]
2.1.2. 多层控制器
将LEO/GEO结合组网,GEO层主控制器与地面站同时同步收集网络信息,及时发现并应对网络故障。韩珍珍等 [6] 为了满足应急任务低时延的需求,提出以GEO卫星群为主控制器,在LEO卫星层上布置从控制器,在地面部署控制中心构成控制平面,并根据控制器的位置提出基于冗余度的卫星子网划分机制,从而降低网络时延。贾吾财等 [7] 指出,多控制器部署是NP难问题,采用最小化通信代价、最大化可靠、最小化时延、负载均衡等优化目标,划分网络后在小范围网络中用聚类算法、启发式算法等找可行解。一种面向6G的天地一体化网络架构 [4] 在高轨、中低轨、地面都有控制器,高轨控制配置与故障处理,低轨与地面控制路由计算、下发,地面也控制全网状态、QoS保障等。
2.2. 天地网络算法研究
在路由算法方面,李红艳等 [8] 提出基于时变图的天地一体化网络时间确定性路由算法及协议,首先构建时变连续图模型,然后提出面向业务的路由算法,最后设计具有时延保障的路由协议,保障端到端传输时延。李贺武等 [9] 提出基于位置的天地一体化路由寻址机制LA-ISTN,并给出两种选择转发接口的方式IA-ISA和RP-ISA,没有邻居信息交换开销和路由更新开销,时延略高于快照机制最短路径算法,符合理论值。
徐晖等 [4] 提出一种支持SDN/NFV的天地网络架构,控制器包括网络路由控制和网络功能控制两大功能:网络路由控制负责节点状态与网络拓扑的实时采集,实现天地网络的动态规划与负载均衡;网络功能控制在虚拟化平台实现移动通信网络。管理平面采用智能化,在天地之间,甚至不同卫星子网或节点之间分割网元功能。在实际应用方面,沈学民等 [10] 提出基于强化学习(Reinforcement Learning, RL)的空天地一体化适用于网络接入选择机制,降低计算复杂度,优化网络性能,此外,SDN/NFV技术转控平面解耦,在天地一体化网络中由连接模型转变为基于服务的模型,实现资源按需分配。
周雅等 [11] 提出基于区域分流的LEO星座负载均衡路由算法,该算法采用轨道发言人策略进行网络信息收集,用站域指数计算链路代价,利用多径搜索选出最优与备选路径,采用红绿灯策略实现多路径转发。Liu等 [12] 在SDN/NFV网络上提出增量服务器部署(Incremental Server Deployment, INSD)与VNF实例的安装,并分别用胖树拓扑和校园网络拓扑进行五组模拟,得出INSD算法KPGD显著提高NFV网络的可扩展性。鄢砚军等 [13] 用模拟退火算法计算最优天地一体化模型,并提出基于拥塞的路径选择算法(RACA),降低时延和丢包率,并比较了地面与天地一体化传输,得出拥塞时有卫星节点参与,传输吞吐量提高这一结论。Lin等 [14] 提出LEO巨型星座的DIV互联互通机制,将卫星划分为骨干卫星和接入卫星,骨干卫星用更少的卫星承载区域间流量,接入卫星承载域内流量和本地产生的域间流量。(接入减少ISL数量)
文献 [15] 的SDN集中式OpenFlow控制器位于空间信息网络(Spatial Information Network, SIN)体系中虚拟化层之上,应用服务层之下,集中控制SIN并根据SDN全局视图实现网络高效管理。在地面网络中布置此类控制器,可以与所有卫星交换机通信并修改相应的流表信息,以完成转控之间的系统配置更新。
在服务功能链(Service Function Chain, SFC)方面,Liu等 [12] 在交换机上安装SFC处理与规则,控制器配置SFC策略,并将SFC要求应用到VNF服务器上,给出INSD部署问题。Zhang等 [16] 提出一种天地一体化网络基于联邦学习(Federal Learning, FL)的SFC嵌入算法,使用集中SFC请求,从长期平均收益、SFC请求接受率和收入成本比三个方面测试算法性能。Li等 [17] 在SDN/NFV卫星地面网络中提出基于水平的多域SFC编排框架(Md-SFC),并进一步提出Md-SFC映射算法,合作方式总时延低于非合作方式。
3. 网络架构
天地一体化网络由空间骨干网、空间接入网、地面骨干网组成。 [15] 空间骨干网作为核心基础设施,直接通过卫星链路连接地面;空间接入网由LEO/MEO卫星节点构成星座,具有信息处理能力;地面骨干网将地面控制站与通信网关相连。卫星网络为多层结构,由LEO、MEO、GEO组成。GEO的覆盖范围广、较为稳定,但传输时延大,不适合直播等实时性强的业务;LEO时延小,但频繁切换、覆盖范围小,不适合稳定性强的业务;MEO卫星的性能介于GEO和LEO之间。多层卫星网络将三者结合,优势互补,实现多样化通信服务的要求。 [18] SDN卫星网络架构基于南向接口OpenFlow协议分层控制,每一层都有层控制器,控制层内网络拓扑和链路;地面有中央控制器,集中控制全局网络信息。该架构可以设计卫星网络负载均衡策略和最优路径选择算法。 [19]

Figure 4. General diagram of SDN-based space-ground network architecture
图4. 基于SDN的天地网络架构总图
在多层卫星网络中,LEO层的卫星绕地球转动角速度比GEO要大,转动时会跨另一颗GEO卫星所在的域,不可能始终在同一颗GEO卫星的控制之下,LEO卫星所在的控制卫星域会随时更换,拓扑因此而变,所以在设计算法时,还要考虑转发卫星相对于控制卫星的位置变化。
SDN天地网络架构如图4所示,将 [14] 的巨型星座模型进行精简,采用三颗GEO卫星作为控制器,在LEO层部署支持SDN转发功能的骨干与接入卫星。空间骨干网卫星作为域间链路必经的卫星,由LEO骨干和GEO控制卫星组成,通过卫星链路连接地面中心站;空间接入网为多个LEO卫星的星座,随卫星绕地球转动而改变。将 [20] 的带有节点权值的扩展Dijkstra最短路径算法应用于变化的卫星网络中,计算从骨干卫星到所在域内接入卫星的最低权值,并根据此算法测定网络链路带宽、端到端传输时延、丢包率等性能指标。
GEO卫星对地覆盖范围大,可以收集域内LEO卫星的拓扑信息,及时做出路由转发策略,可以节省下发流表的时间。三颗GEO卫星可对地球全覆盖,组成分布式集群作为控制器,多颗LEO卫星作为转发平面,划分成若干个域,并且每个域至少有一颗控制域间链路的骨干卫星,其余为控制域内的接入卫星。当有卫星链路需求时,转发卫星发送Packet_in消息包到所在域的控制器,GEO控制器分析其中LLDP数据包,然后向LEO转发卫星发送Packet_out消息包,包含可行的下一跳卫星(域间为骨干卫星,域内为所在域的接入卫星),转发卫星根据目标和自身的流表选择合适的下一跳卫星。
4. 算法与模型仿真
4.1. 算法描述
本文利用文献 [20] [21] 提出的的扩展最短路径算法,采用文献 [19] 的多层卫星结构,在GEO层布置卫星控制器,LEO层布置交换机作为卫星节点,按照DIV机制分为骨干和接入卫星,负责空间网络;地面站设置全局控制器、全局网络拓扑管理和随时监测。
在SDN网络中,采用SPF (Shortest Path First,最短路优先)进行数据传输,核心算法为Dijkstra单源最短路径算法,经典Dijkstra算法给定有向图G (V, E)和单个源节点s,V是节点集,E是边集,返回源节点s到其他节点的最短路径。然而,该算法没有考虑路径的负载情况,因此将经典Dijkstra算法进行增强,依旧从源卫星节点入手,同时考虑边缘权重和节点权重,实现多路径传输与负载均衡。
(1)
(2)
基于SDN的扩展Dijkstra算法目前尚未使用在天地卫星网络中,根据卫星链路带宽设置边缘权重,将骨干、接入卫星根据其容量设置卫星节点的权重,在跨域链路传输中以骨干卫星为支柱,减少星际链路跳数。故将这一算法在卫星网络中得到应用,命名为节点加权最短路径卫星算法(node weight shortest-path satellite algorithm, NWSPS),将带节点权值的最短路径算法应用到卫星或天地网络中,所在域的控制器根据权值选择从源接入卫星到骨干卫星或从骨干卫星到目的接入卫星的最短路径,由于卫星拓扑虚拟为无向图,故骨干接入卫星之间双向路径一致。
网络时延作为分析网络性能的重要指标之一,总时延分为处理时延、排队时延、发送时延、传播时延四部分,起始节点的处理和排队时延较小,可以忽略不计,发送计算公式如(3)所示,传播计算公式如(4)所示。
(3)
(4)
当网络利用率U增大时,网络时延随之增大,大致为一支双曲线关系。
(5)
4.2. 模型
使用SDN网络仿真开发平台Mininet,配合Ryu远程控制器来验证卫星网络性能,该模型为三层拓扑(地面、LEO、GEO),模拟主机之间通过OpenVSwitch (OVS)交换机连接,交换机之间利用流表传输数据包。控制器设计为远程集中控制,通过南向接口与OVS之间通信,实现多层控制卫星网络。主控制器位于地面站,可以在GEO层布置从控制器,采用三颗同步控制卫星来控制全球LEO网络。LEO层卫星系统如同网络协同工作,每颗卫星具有OpenFlow交换机的功能,卫星网关可以使用OpenFlow交换机作为骨干卫星,基本拓扑模型如图5所示;地面站的转发平面设置转发通信与基站,控制平面为主控制器。

Figure 5. SDN-supported LEO satellite topology model
图5. 支持SDN的LEO卫星拓扑模型
4.3. 仿真分析
OVS虚拟交换机主要用于低轨LEO卫星网络,每条链路带宽默认为10 Gbps,可以根据链路变化或者带宽等参数变化来检测网络性能。
该扩展最短路径算法适用于LEO/GEO多层卫星网络,LEO骨干卫星交换机向GEO控制器发送Packet_in包,GEO控制器会向指定的LEO交换机发送Packet_out包传送可行的目的卫星,然后骨干卫星按照给定路径发送到所在域的接入卫星。
本模型用iperf测量网络实际带宽,将扩展Dijkstra最短路径算法与等现有算法进行对比,探究天地网络性能指标随着网络频率的变化,包括端到端时延、带宽消耗、网络吞吐量。
与 [8] 的基于时变连续图(time-varying continousgraph, TCG)的时间确定性路由算法与 [9] 的LA-ISTN机制相比,扩展最短路径优化算法的仿真结果时延比较如图6所示。随着传输速率的变化,与基于TCG的算法与相比,该算法带宽消耗有所降低,还降低了网络时延,使网络传输速率进一步加快。

Figure 6. Time-delay comparison diagram of the simulation results
图6. 仿真结果时延比较图

Figure 7. Packet loss comparison diagram of the simulation results
图7. 网络丢包率比较图
网络丢包率比较如图7所示,相比之下,基于TCG的算法丢包率范围较大,扩展Dijkstra算法同时考虑了边缘权重和节点权重,将其应用于卫星网络中,流表提供低权重骨干节点的路由,故丢包率随时间变化,起初稍有偏高,之后有所降低。
5. 结语
本文根据天地一体化网络流量负载不均、时延较大等特点,改进了SDN/NFV之下适合卫星路由的扩展最短路径算法。考虑卫星路由的时延、丢包率性能指标的变化,对该算法进行了SDN流表模型仿真,并与时间确定路由算法等现有常见算法进行比较,本方法优于常用方法,降低网络时延和丢包率,提高网络端到端传输能力。
参考文献