天地一体化卫星网络拓扑场景仿真技术

2022-10-17 11:00陈新宇王晓锋
计算机工程与应用 2022年20期
关键词:网络拓扑链路延时

陈新宇,王晓锋,刘 渊

江南大学 人工智能与计算机学院,江苏 无锡 214122

随着空间基础设施的更新迭代,卫星产业应用得到飞速发展,空间信息资源逐渐成为各个国家重要的战略资源。而天地一体化信息网络凭借其在空、天、地三维空间上强大的资源整合能力能够满足国家在国防和民生建设中对全方位信息采集的需求,因此成为各国争相发展的重要战略性基础设施。天地一体化信息网络是一种异构、动态的复杂网络,主要包含天基与陆基两部分,其中高轨和中低轨道的卫星、飞机、高空平台等属于天基网,位于陆地、海面平台的各种地面站、舰船、地面广域网节点等属于陆基网[1]。

在天地一体化信息网络发展过程中,面向对空间网络通信协议的性能评估需求、对空间网络安全攻防测试的需求以及对各种新技术和系统的测试和评估需求[2],从经济、时间成本考虑,比起真实的卫星网络,搭建成本低、时间短的卫星网络仿真测试系统更具有现实价值意义[3]。

传统的基于离散事件模拟的仿真工具虽然可用于对卫星网络的仿真,但由于缺乏相关功能模块因此需要进行后续不同程度的开发,此外更无法搭载真实业务系统与流量。而虚拟化技术[4]和云计算技术[5]通过将资源逻辑化并进行整合管理因而具备更优秀的仿真能力,为卫星网络仿真方案设计提供了新的思路[6]。

但是当前众多基于虚拟化技术和云计算技术的仿真方案在实现卫星网络拓扑仿真和链路仿真过程中仍然存在一些问题:卫星网络拓扑仿真场景生成方案易用性低、卫星网络链路仿真的时效性不强以及实时动态仿真精确度低等。因此本文针对在卫星网络拓扑仿真过程中繁杂低效的解析问题,研究了卫星网络拓扑解析与生成技术;其次针对卫星网络链路实时仿真过程中存在的时效性差问题,研究了卫星网络链路快响应仿真技术;最后为实现实时动态地卫星链路仿真高逼真性能,研究了链路校正策略。通过以上三方面的研究,解决目前卫星网络拓扑场景仿真在拓扑仿真过程中存在的易用性差的问题,在链路仿真过程中存在的响应速度慢,精确度低的问题。

1 相关工作

传统的基于离散事件模拟技术的仿真工具,如商业软件OPNET[7-8]、Systems Tool Kit(STK)[9]以及开源软件NS2[10]、NS3[11-12]、OMNeT++[13]等,虽然可通过对相关模块进行后续开发进而满足卫星网络仿真需求,但数字仿真无法搭载真实业务系统与流量,因此并不是搭建卫星网络仿真平台最佳的选择方案。当前基于虚拟化、云计算的卫星网络仿真方案成为一种趋势,代表性工作主要包括两个方面,一是卫星网络拓扑仿真,二是卫星链路仿真。

在网络拓扑仿真方面,虚拟化技术由于具备优秀的资源管理能力,同时更具备对真实业务流量的加载能力,因此成为卫星网络仿真的主要实现方案。EmuStack仿真平台[14]使用轻量级虚拟化技术Docker实现对大规模拓扑的仿真;一种天地一体化信息网络仿真平台[15]采用全虚拟化技术KVM完成对卫星网络拓扑的仿真;一种基于云的仿真平台[16]和SGIN-Stack[17]融合了全虚拟化技术KVM以及轻量级虚拟化技术Docker两种虚拟化方案,完成对卫星网络拓扑的动态仿真。但以上研究成果在网络拓扑仿真过程中都存在不同程度的手动配置和解析过程,这些对网络拓扑结构的解析工作限制了仿真架构的可复用性和可扩展性。

同时在链路仿真方面,网络流量控制工具(traffic control,TC)以其强大的流量整形能力成为研究人员主要的链路性能仿真实现方案。EmuStack[14]是一种基于OpenStack的用于延迟容忍网络的大规模实时仿真平台,EmuStack集成了TC与OpenStack,能够实现对可变带宽、延迟、丢包率等链路性能的仿真,但仿真精度较低;Benet等[18]首次提出一种将OpenStack和基于软件定义网络(software defined network,SDN)的控制器结合的测试床,主要用于对虚拟机迁移策略、路由负载平衡方案的性能测试和评估,但并未针对卫星网络实现对网络链路性能的仿真;赖俊宇等[16]提出一种向用户提供网络仿真执行即服务(NEaaS)的概念,基于OpenStack以及网络功能虚拟化技术、SDN技术、TC等技术设计并实现了一种网络仿真平台,能够实现对卫星网络拓扑的静态、动态仿真以及链路性能的定制仿真,但是在实时仿真精度上有所欠缺;一种天地一体化信息网络仿真平台[15]融合OpenStack和STK构建天地一体化信息网络仿真平台,基于流表和队列管理规则动态实时地对卫星链路的间歇性、时延、误码率等性能参数进行精确仿真,但该仿真平台的实时仿真精度仍然较低;SGIN-Stack[17]是一种基于云的实验平台,该平台面向天地一体化卫星网络提出一种动态差分补偿技术和随机数生成算法以实现对卫星链路的实时精确仿真,具有较高的仿真精度,但由于架构的局限性在链路仿真过程中卫星链路的响应速度较慢,进而影响了时变卫星网络的仿真逼真度。

2 体系结构

本文提出的仿真体系架构以STK构建的模拟场景为基础实现对包括拓扑模型和链路模型在内的模型构建过程,进而在OpenStack云环境中实现卫星网络拓扑仿真和链路仿真。仿真体系采用分布式架构,可根据仿真规模和需求进行灵活部署,具有较高的灵活性和可扩展性。此外,本体系架构采用AGI公司开发的Object Model与STK进行交互,开发环境为Python3.6,其中Object Model是一种基于COM组件的STK接口函数库,包含各种接口、类和事件。

仿真体系架构如图1所示。其中操作控制端(Host)主要实现拓扑模型和链路模型的生成过程,搭载了STK环境且包含两个模块,分别是拓扑模型构建模块和链路模型构建模块。OpenStack云环境则主要完成卫星网络拓扑和链路仿真工作,其中控制节点(Controller)包含任务控制模块以及拓扑仿真模块,计算节点(Compute)包含链路仿真模块。

图1 天地一体化卫星网络拓扑场景仿真体系架构Fig.1 System architecture of topological scenario emulation of space-ground integrated satellite network

卫星网络拓扑的自动解析与仿真场景生成以拓扑模型的成功构建为前提,主要涉及拓扑模型构建模块与拓扑仿真模块。拓扑模型的构建过程采用自底向上逐步解析和封装的思想:针对STK中所包含的11种基本对象(飞机、目标、区域目标、链、星座、地面站、汽车、卫星、地点、舰船、传感器)的特征进行提取和解析以构建统一的描述模型,即对象模型,实现第一层解析和封装;基于对象模型并解析场景配置信息以构建场景模型,实现第二层解析和封装;基于场景模型并引入拓扑解析算法,通过解析场景模型中各节点之间的链接关系从而生成卫星网络的拓扑结构,最终完成拓扑模型的构建,实现第三层解析和封装。随着位于OpenStack云环境控制节点的任务控制模块发出拓扑仿真的指令,拓扑仿真模块将加载对应的拓扑模型并生成仿真网络,最终实现卫星网络仿真场景的生成。

卫星网络链路高逼真度、实时、动态仿真的实现以链路模型的成功构建为前提,主要涉及链路模型构建模块与链路仿真模块。引入链路解析算法,该算法通过解析场景模型,依据链路的时变特性将卫星网络链路分类为两类:时变链路和非时变链路。基于链路的类型选择不同的方案生成链路性能数据,最终生成链路模型。随着位于OpenStack云环境控制节点的任务控制模块发出链路仿真的指令,链路仿真将加载对应的链路模型并载入链路校正策略,最终实现卫星网络链路高逼真度、实时、动态仿真。

3 关键技术

3.1 卫星网络拓扑解析与生成技术

面对由STK生成的种类多样的天地一体化场景,通常需要针对具体场景进行繁杂的解析工作以提炼仿真网络拓扑结构进而构建不同的仿真网络自动化部署配置文件,最终生成仿真网络。

这种低效且可扩展性差的构建方案无疑给卫星网络仿真工作带来巨大的工作量,尤其对于规模较大的场景,仿真网络的构建难度将会进一步提升。为解决这一问题并提高卫星仿真网络构建可扩展性,本文提出一种卫星网络拓扑解析与生成技术。首先,通过构建场景模型将天地一体化场景对象进行分类并结构归一化;进而,基于场景模型经由拓扑解析算法进行解析以提炼卫星网络拓扑结构;最后,基于卫星网络拓扑结构生成拓扑模型并在云环境中生成卫星仿真网络。

3.1.1 场景模型构建方案

如第2章所述,场景模型的构建以对象模型的构建为前提,通过对对象模型进行第二层解析和封装完成构建工作。

对象模型以STK所提供的11种对象类型:飞行器(Aircraft)、区域目标(AreaTarget)、链(Chain)、星座(Constellation)、地面站(Facility)、地面车辆(GroundVehicle)、地点(Place)、卫星(Satellite)、船舰(Ship)、目标(Target)、传感器(Sensor)为基础构建目标,分别解析并提取不同对象的特征数据并分类为基础属性和特征属性两类属性进而完成对象模型的构建。表1列举了11种对象模型的属性构成。对于基础属性,所有对象均具备id和type两种基础属性,其中type属性标示了该对象的类型;基础属性interval标示了对象运行轨迹的开始和结束时间;基础属性subobjects标示了对象所搭载的所有子对象。对于特征属性,其中,Aircraft、GroundVehicle、Ship类型对象作为具备移动性的空、地对象,其特征属性waypoint记录了其轨迹信息;AreaTarget、Facility、Place、Target类型对象作为不具移动性的地面对象,其特征属性position记录了其位置信息;Chain和Constellation类型对象的特征属性记录了其包含的对象模型集合;Satellite类型对象的特征属性orbit记录了其轨道数据;Sensor类型对象的特征属性target记录了其目标对象及其搭载的设备信息。

表1 对象模型属性构成表Table 1 Attribute composition of object model

场景模型包含一种基础属性,以及多种特征属性。基础属性scenario记录了模拟场景基本信息,包括场景名name、场景存储路径path、场景仿真时间interval、场景包含的子对象信息subobjects,且subobjects根据对象类型进行分类存储。场景模型的特征属性则根据场景中包含的对象类型创建对应的特征属性并记录属于该类型的所有对象模型。

即对象模型的生成实现了拓扑模型构建模块第一层的解析与封装,而场景模型的生成实现了拓扑模型构建模块第二层的解析与封装。

3.1.2 拓扑解析算法

拓扑模型构建模块最后一层的解析与封装主要完成拓扑模型的构建工作,而基于场景模型解析出场景中卫星网络的拓扑结构是该层的核心内容,因此本文提出了一种拓扑解析算法拟解决这一问题。

本文提出的拓扑解析算法将卫星网络拓扑结构存储于一个二维矩阵s中。s[i][j]=1表示ID为i的节点(Ni)和ID为j的节点(Nj)之间存在从Ni到Nj的单向链路,反之s[i][j]=0则代表Ni到Nj之间不存在单向链路。

本算法以场景模型为输入,提取场景中存在的所有具有连接性的子对象及其对应的对象模型。本算法以一个STK模拟场景项目为前提,如果某对象搭载了传感器且传感器搭载了发射器,则存在从该对象到传感器目标节点的单向链路,反之不存在这样的单向链路。本算法具体伪代码描述见算法1。

算法1拓扑解析算法

该算法实际上对场景中所有具有连通性的节点(Aircraft、Facility、GroundVehicle、Place、Satellite、Ship、Target)的特征属性subobjects中所有发射器的搭载情况进行解析,因此对于具有n个节点且节点最多搭载m个发射器的模拟场景,时间复杂度为O(nm)。同时该算法由于需要一个二维矩阵result存储卫星网络拓扑结构,因此对于具有n个节点的模拟场景,空间复杂度为O(n2)。

在通过拓扑解析算法得到卫星网络拓扑结构后,拓扑模型构建模块将根据该拓扑结构自动从网络地址池中为各个节点分配端口及IP,最终完成拓扑模型的构建。进一步的,拓扑仿真模块将根据拓扑模型完成卫星仿真网络的搭建和配置。

3.2 卫星网络链路快响应仿真技术

卫星网络链路仿真的普遍方案是通过从STK中提取链路性能参数并加载至云仿真环境中进行仿真。但随着网络拓扑规模的不断扩大和复杂度的不断提升,卫星网络链路数量将不断增多,实时的链路性能参数提取时耗将随之增加。提取时耗的存在将降低卫星网络链路实时动态仿真的逼真度,即链路仿真的响应速度会进一步影响卫星链路实时动态仿真逼真度。

一种解决方案是将链路性能数据预先上传至云仿真环境中,常见的存储方式是存入云仿真环境数据库中。但这种解决方案并不能完美地解决链路仿真的响应速度问题,一方面随着卫星网络拓扑规模和复杂度的提高,链路性能数据的提取规模将随之提升,尤其是在仿真周期较长的情况下数据规模将非常庞大;另一方面,链路性能参数的配置时耗并没有得到改善,链路的配置规模将决定每一轮次链路仿真的配置时耗,即决定链路仿真的响应速度。

以海口市居民区为例,对构建的居民区生活垃圾分类投放方案评价模型进行了案例分析。海口市是国家发改委、住建部制定的《生活垃圾分类制度实施方案》规定的第1批生活垃圾分类示范城市之一。考虑国家相关文件要求及实际可操作性等因素的影响,设计了3种居民区生活垃圾分类投放方案,如表1所示。

面向这一问题,本着尽可能控制链路的配置规模的原则,本文提出一种链路划分算法,该算法能够基于链路的时变特性对卫星链路进行分类进而生成链路模型,并在链路仿真过程中基于一种链路模型预加载机制通过对不同链路采取不同的配置方案从而提高链路仿真的快响应速度,最终保证卫星网络链路仿真的逼真度。

3.2.1 链路划分算法

天地一体化卫星网络是由涵盖空、天、地、海多维空间内多种节点构成的复杂异构网络。基于节点所属的空间位置,天地一体化卫星网络中的链路可划分为星间链路(inter-satellite link)和星地链路(satellite-ground link)两种类型。同时本文基于链路的时变特性,天地一体化卫星网络中的链路可划分为时变链路和非时变链路。

为了控制链路性能数据提取规模和链路模型规模,更重要地为了保证链路仿真的高响应速度,有必要对卫星网络中的链路进行划分。对于非时变链路,在仿真周期内链路性能参数不变,因此只需提取一组链路性能数据即可生成链路模型,进而对仿真网络中对应的链路进行一次性配置。对于时变链路,在仿真周期内链路性能参数随时间变化,因此需要提取仿真周期时间内所有的链路性能数据以生成链路模型,进而对仿真网络中对应的链路进行实时动态配置。

而链路的时变特性主要是由空、天、地、海节点间的空间位置关系所决定的,且在带宽、延时和丢包率三种链路性能参数中主要影响在延时这一参数上[19]。因此确定节点间的空间位置关系即能确定链路时变特性,即节点间空间位置相对距离不变则为非时变链路,否则为时变链路。

因此本文设计了一种链路划分算法以链路的时变特性为划分原则,基于场景模型对场景中所有链路进行划分。该算法首先基于链路两端节点所在的空间位置特征划分为星间链路和星地链路。其次,对于星间链路,通过链路两端节点卫星的轨道几何形状(圆轨道、非圆轨道)以及两卫星之间的轨道位置关系(轨内、轨间)判断两卫星之间的距离变化情况,进而得到链路的时变特性。卫星轨道信息通过提取对应模型的orbit特征属性获得。轨道几何形状通过卫星偏心率进行判断,而轨道位置关系通过卫星倾角和近地点半径进行判断。同时对于星地链路,在地面节点为移动节点的情况下,则对应的星地链路一定为时变链路,其中具备移动性的地面节点类型包含Aircraft、GroundVehicle、Ship三种,其特征属性waypoint记录了其轨迹信息;在地面节点固定不动的情况下,若卫星轨道处于对地静止轨道,则对应的星地链路为非时变链路,反之为时变链路,其中不具移动性的地面节点类型包含AreaTarget、Facility、Place、Target四种。本算法具体伪代码描述见算法2。

算法2链路划分算法算法

该算法的两个子算法均能够在O(1)时间内完成对时变特性的判定,因此对于一个包含n条链路的模拟场景,时间复杂度为O(n)。同时该算法无需任何额外空间,因此空间复杂度为O(1)。

3.2.2 链路模型预加载机制

如3.2.1小节所述,基于链路划分算法构建的链路模型可进一步分类为时变链路模型和非时变链路模型。本文基于这两类模型提出一种链路模型预加载机制,如图2所示。

图2 链路模型预加载机制Fig.2 Link model preloading mechanism

在控制节点接收到开始链路仿真任务的请求后,会对请求进行解析和处理,获取仿真周期内开始时间(Tstart)和仿真步长(Tstep)并拟定各计算节点开始进行仿真任务的实际时间(Tact),最后将仿真任务下发到相关涉及的计算节点。

各计算节点接收到仿真任务请求后,首先加载非时变链路模型进行一次性并发配置,然后进入阻塞状态,在时刻Tact并发加载仿真周期内Tstart时刻的时变链路模型,完成首轮次的链路仿真。并在从Tact时刻算起,Tstep时间后进入下一轮次,并发加载仿真周期内Tstart+Tstep时刻的时变链路模型。即在第n轮次,仿真周期内时刻T1n和实际时刻T2n的对应值如公式(1)所示,在实际时刻T2n,链路仿真任务处于第n轮次,并发加载仿真周期内T1n时刻的时变链路模型。

3.3 链路校正策略

在保证卫星网络链路的快响应仿真后,如何保证卫星网络链路仿真的高精确度是实现链路高逼真度仿真的另一技术要点。针对链路的四个性能参数:连通性、带宽、延时、丢包率,主要的仿真难点在延时的精确度,这是由云环境下虚拟节点间存在的固有延时造成的误差所引起的。

OpenStack云环境下构造的虚拟节点间是在经过了多种设备后才实现了端到端的通信,这是OpenStack云环境底层网络结构所造成的。图3显示了基于Open vSwitch(OVS)虚拟交换机的OpenStack云环境下计算机点的底层网络结构。其中虚拟机通过虚拟网络设备(tap)连接到Linux网桥(qbr)上;名为qvb的设备与名为qvo的设备组成一对veth pair将qbr和br-int连接起来;名为int-br-eth1的设备与名为phy-br-eth1的设备组成一对path pair将br-int与br-eth1连接起来。

图3 OpenStack计算节点底层网络结构Fig.3 Underlying network structure of OpenStack computing nodes

而基于这样的底层网络结构,虚拟机之间在相互通信过程中,数据包将不可避免地需要经过这些虚拟网络设备和物理交换机,这些设备对数据包的处理时间构成了通信链路额外的固有延时。因此基于OpenStack云环境以及TC工具实现的卫星链路性能仿真方法在延时仿真精度上将不可避免地存在因固有延时造成的误差,即实际延时delayact是仿真理论延时delaytheo与固有延时delayerr之和,如公式(2)所示:

为了解决延时的仿真误差,在以往的研究工作中,SGIN-Stack[17]引入了一种差分补偿算法,该算法在发送端截获符合队列规则的数据包并加入时间戳再放行,在接收端再次截获数据包提取时间戳,通过这种方式获取数据包从源节点到目的节点的固有延时并进行补偿。但这种补偿方法在云环境数据流量较大的情况下,难以维持较好的性能。

本文设计的链路校正策略重点通过获取固有延时delayerr值并进行实时补偿来实现。即实际设定值delaytc的实时取值为仿真理论延时delaytheo与固有延时delayerr之差,如公式(3)所示。因此,该策略的重点在于对实时固有延时delayerr的精确提取。

而在云环境下,链路两端的虚拟节点存在两种位置关系:同宿主机和跨宿主机。同宿主机节点的链路通信过程如图3红线箭头①~⑤所示,固有延时主要是由于数据包需要经过宿主机虚拟设备、网桥所造成的,且这种固有延时较为稳定。同时,跨宿主机节点的通信过程如图3蓝线箭头①~⑩所示,数据包不仅需要经过宿主机虚拟设备、网桥,还需要通过物理通信链路经过物理交换机,因此跨宿主机链路的固有延时可能会随着网络状态的变化有较大抖动。

基于这一事实,对于同宿主机链路,则直接提取一次固有延时作为校正值;而对于跨宿主机链路,则应根据网络波动情况实时提取固有延时进行校正。因此对网络波动状态的监控与评测是实现固有延时精确提取的重点。

本策略以波动指数FI标示网络波动情况。在仿真任务开始后,立即监测两次固有延时获取delay0和delay1并进行实时校正,同时记录一次波动样本FS1,FS1为delay0和delay1的绝对差值。接着,再次获取一次固有延时delay2并进行实时校正,同时记录一次波动样本FS2,FS2为delay1和delay2的绝对差值,取波动指数FI2为FS1和FS2的加权平均以得到更加平滑的波动指数值,实验表明,当权值α为0.875时效果最好。同理,第n个波动指数FIn如公式(4)所示:

根据波动指数FIn的值,确定下次监测固有延时的时间。当FIn小于等于稳定网络状态的阈值Thstable时,下次监测时间为5 s后;当FIn大于Thstable但小于链路仿真延时精确度Thaccuracy时,下次监测时间为1 s后;当FIn大于Thaccuracy时,则应立即重新监测。经测验,网络处于稳定状态的情况下,FI值小于等于0.1 ms,即Thstable=0.1;而本系统采用的精确度为0.5 ms以内,因此Thaccuracy=0.5。即下次监测时间RTn的取值如公式(5)所示。

4 实验验证与评估

本章设计了三组实验分别对卫星网络拓扑解析和生成效能、卫星网络链路仿真响应速度和实时仿真逼真度进行测试。

4.1 实验环境

如第2章所述,该天地一体化卫星网络仿真体系主要部署在操作控制端(Host)和OpenStack云环境中。其中,操作控制端处理器为Intel®CoreTMi7-9750处理器,内存16 GB;OpenStack云环境控制节点处理器为Intel®Xeon®CPU E5-2620 v4×2,内存64 GB;计算节点1处理器为Intel®Xeon®Bronze 3104 CPU×2,内存64 GB;计算节点2处理器为Intel®Xeon®CPU E5-4607 v2×4,内存32 GB。OpenStack云环境中所有物理节点均通过以太网交换机互联,且节点系统均为CentOS7.2。

为了对本文提出的天地一体化卫星网络拓扑场景仿真技术进行性能和功能测试,设计了四组大小不同、拓扑结构不同的场景,如图4所示。如图4(a)所示,场景a包含1颗低轨卫星(LEO_A1)、1颗高轨卫星(GEO_G1)、1架飞行器(Aricraft)、1辆地面车辆(GroundVehicle)、1个地面站(Facility)、1艘船舰(Ship),其中GEO_G1和LEO_A1之间存在一条双向链路,Aircraft、GroundVehicle、Facility、Ship和LEO_A1之间均存在双向链路,即场景a共包含6个节点,10条有向链路。如图4(b)所示,场景b包含3颗处于同一轨道的高轨卫星(GEO_G1-GEO_G3)、6颗处于同一轨道的低轨卫星(LEO_A1-LEO_A6),其中同轨道相邻卫星之间存在双向链路,GEO_G1和LEO_A1之间存在双向链路,即场景b共包含9个节点,20条有向链路。如图4(c)所示,场景c包含1颗高轨卫星(GEO_G1)、12颗分布于两条轨道的低轨卫星(LEO_A1-LEO_A6,LEO_B1-LEO_B6)、1个地面站(WX_Station),同轨道相邻卫星之间存在双向链路,不同轨道卫星之间双向链路连通情况用黑线表示(共7条双向链路),同时LEO_A2和WX_Station之间存在双向链路,即场景c共包含14个节点,40条有向链路。如图4(d)所示,场景d包含6颗高轨卫星(GEO_G1-GEO_G6)、18颗分布于三条轨道的低轨卫星(LEO_A1-LEO_A6,LEO_B1-LEO_B6,LEO_C1-LEO_C6)、1个地面站卫(WX_Station)、1艘船舰(Ship1),同样地,同轨道相邻星之间存在双向链路,不同轨道卫星之间双向链路连通情况用黑线表示(共18条双向链路),同时LEO_A2、GEO_G1和WX_Station之间均存在双向链路、Ship1和GEO_G2之间存在双向链路,即场景d共包含26个节点,80条有向链路。

图4 实验场景拓扑结构Fig.4 Topology of experimental scenario

4.2 卫星网络拓扑仿真能力验证实验

为了对卫星网络拓扑解析与生成技术进行效能测试,基于4.1节提出的四组场景,分别测试卫星网络拓扑解析和仿真网络生成时间。具体地,测试卫星网络拓扑解析过程中生成场景模型所需时间,生成拓扑结构所需时间和生成拓扑模型所需时间;测试仿真网络生成过程中生成虚拟网络所需时间和生成虚拟节点所需时间,测试结果如图5所示。

由图5可以看到,随着网络拓扑规模的增大,网络拓扑解析时间依旧维持在毫秒级,具备较好的解析效率,且时间主要花费在拓扑结构解析过程,其次是场景模型生成过程,拓扑模型的生成时间最短;同时,仿真网络生成时间主要花费在虚拟网络的创建过程,这是因为相对于节点规模,较高的链路规模所需的虚拟网络也更多。

图5 网络拓扑解析与生成各阶段时间Fig.5 Time of each stage of network topology analysis and generation

本实验通过检测卫星网络拓扑仿真过程中自动解析和部署各个阶段的时间花费检测本文提出的卫星网络拓扑解析与生成技术的效能,实验结果表明该技术能有效提升仿真场景生成的易用性。

4.3 卫星网络链路仿真响应速度验证实验

为了对基于链路模型的卫星链路仿真的响应速度进行测试,依旧基于4.1节提出的规模由小到大的四组场景,测试一轮次的链路仿真时间,记录从该轮次开始时刻算起,每条有向链路成功加载链路性能时间。同时本文选取了具有较高链路仿真精度的SGIN-Stack平台做了对比验证实验。实验结果如图6所示。

由图6(a)可以看到,在基于场景a的一轮次的链路仿真过程中,SGIN-Stack的所有链路所需的加载时间在3.371~5.191 s之间;而本文提出的方法所需的加载时间在1.4~2.23 s之间,响应速度平均提高了57.85%。由图6(b)可以看到,在基于场景b的一轮次的链路仿真过程中,SGIN-Stack的所有链路所需的加载时间在9.572~17.952 s之间;而本文提出的方法所需的加载时间在0~1.39 s之间,响应速度平均提高了99.01%。由图6(c)可以看到,在基于场景c的一轮次的链路仿真过程中,SGIN-Stack的所有链路所需的加载时间在11.128~21.948 s之间;而本文提出的方法所需的加载时间在0~4.27 s之间,响应速度平均提高了92.36%。由图6(d)可以看到,在基于场景d的一轮次的链路仿真过程中,SGIN-Stack的所有链路所需的加载时间在21.482~48.432 s之间;而本文提出的方法所需的加载时间在0~8.44 s之间,响应速度平均提高了94.05%。

图6 本文方法与SGIN-Stack响应速度对比Fig.6 Comparison of response speed between suggested method and SGIN-Stack

由此可见,随着拓扑规模的不断增大,本文提出的卫星链路快响应仿真技术优势越来越明显。此外,由基于场景b的实验结果图6(b)可以看到,在非时变链路越多的场景下,本文提出的方案的优势将进一步体现。可以推断,随着网络拓扑规模和复杂度的提高,SGINStack将会因为响应速度问题而无法满足对较小仿真步长的需求,因为仿真步长的大小将会影响链路仿真逼真度。而本文提出的方案则能较好地解决这一问题,在链路响应速度上具有较好的性能表现。

4.4 卫星网络链路仿真逼真度验证实验

为了对卫星网络链路实时仿真逼真度进行测试,选取4.1节提出的规模最大的包含26个节点,80条有向链路的场景d为实验场景,测试在仿真周期内1小时时间(04:00—05:00)的跨宿主机和同宿主机链路加入链路校正策略前后的实时延时并与理论延时做比较。SGIN-Stack虽然具有较高的仿真精确度,但根据4.2节的对比实验可知,SGIN-Stack对于场景d规模的卫星网络其链路仿真响应速度较慢,这会直接降低实时仿真精度,因此不再针对链路实时仿真精确度做对比实验。本实验共选取了四条链路进行测试:跨宿主机星地链路GEO_G2-Ship1、跨宿主机星间链路LEO_A1-LEO_B1、同宿主机星间链路GEO_G1-LEO_A1和同宿主机星地链路LEO_A2-WX_Station,实验结果如图7所示。

图7 卫星网络链路实时动态仿真结果Fig.7 Satellite network link real-time dynamic emulation results

图7(a)为链路GEO-G2-Ship1一小时实时仿真过程中的延时数据,未加链路校正策略的实测值误差在0.209~0.812 ms之间,而加入链路校正策略的实测值误差在0.103~0.292 ms之间,经统计精确度相比提高了48.63%;图7(b)为链路LEO_A1-LEO_B1一小时实时仿真过程中的延时数据,未加链路校正策略的实测值误差在0.052~1.086 ms之间,而加入链路校正策略的实测值误差在0.001~0.604 ms之间,经统计精确度相比提高了43.72%;图7(c)为链路GEO_G1-LEO_A1一小时实时仿真过程中的延时数据,未加链路校正策略的实测值误差在0.032~2.31 ms之间,而加入链路校正策略的实测值误差在0.001~0.553 ms之间,经统计精确度相比提高了67.98%;图7(d)为链路LEO_A2-WX_Station一小时实时仿真过程中的延时数据,未加链路校正策略的实测值误差在0.127~0.528 ms之间,而加入链路校正策略的实测值误差在0.002~0.182 ms之间,经统计精确度相比提高了70.93%。需要说明的是,链路GEO_G1-LEO_A1两端的卫星节点在前1 560 s内不可见,即链路处于断开状态,延时数据以0 ms表示;同样地,链路LEO_A2-WX_Station两端的节点在前3 028 s内不可见。

由以上统计数据可知,本文提出的链路校正策略能够有效地提高链路仿真精确度和稳定性,同时结合3.2节提出的卫星网络链路快响应仿真技术最终实现对卫星网络链路的高逼真仿真。

5 结束语

本文提出了一种天地一体化卫星网络拓扑场景仿真技术,重点对卫星网络仿真过程中关注的网络拓扑仿真和链路仿真研究展开工作。针对网络拓扑仿真研究中存在的繁杂低效的人工拓扑解析问题,提出一种卫星网络拓扑解析与生成技术;针对链路仿真研究中的响应速度问题,提出一种卫星链路快响应仿真技术;最后为实现卫星网络链路实时、动态仿真的高逼真度,提出一种链路校正策略。实验表明,本文提出的卫星网络仿真技术具备高效的拓扑解析和生成能力,提高了仿真场景生成的易用性;能够在保证卫星链路快响应仿真的基础上,实现卫星网络的高精确度实时动态仿真。因此,能够为面向天地一体化卫星网络的相关技术评测工作提供仿真环境。接下来,将融合多尺度虚拟化技术,展开面向规模更大,拓扑结构更复杂的天地一体化卫星网络高逼真、实时、动态仿真方法的研究。

猜你喜欢
网络拓扑链路延时
一种移动感知的混合FSO/RF 下行链路方案*
基于Android设备的异构无线链路聚合软件①
课后延时服务
课后延时中如何优化不同年级学生活动效果
一种IS?IS网络中的链路异常检测方法、系统、装置、芯片
电网运行风险评估与辅助决策系统的应用
自动化控制系统设计方法探索
数据中心网络拓扑结构研究
一种FC网络管理软件的设计
一种“死时间”少和自动校准容易的Wave Union TDC