天地一体化信息网络域间协议实验平台
2019-06-11杨增印李贺武吴茜吴建平1刘君
杨增印,李贺武,吴茜,吴建平1,,刘君
(1. 清华大学计算机科学与技术系,北京 100084;2. 清华大学网络科学与网络空间研究院,北京 100084;3.清华大学北京信息科学与技术国家研究中心,北京 100084)
1 引言
随着偏远地区、海洋区域、空中区域等全球范围内对互联网服务需求的增长,利用空间网络与地面网络在覆盖范围和移动接入等方面的互补性,建设覆盖全球的天地一体化信息网络,不仅成为未来互联网的发展趋势,也是我国科技创新 2030重要项目[1]。概括地说,天地一体化网络是空间卫星网络和地面网络的融合网络[2],其中,地面网络包括互联网和移动通信网络,空间卫星网络包含多个由高轨(GEO, geosynchronous orbit)卫星、中轨(MEO,mediumearth orbit)卫星、低轨(LEO, low earth orbit)卫星组成的网络系统。由于不同卫星节点具有不同的运动规律,整个空间网络拓扑表现出频繁但有规律的变化。
天地一体化信息网络本质上就是利用互联网协议,特别是互联网域间协议,实现各类空间卫星网络及天地网络融合。在天地一体化信息网络中部署现有互联网域间协议,不仅能充分发挥其网间互联优势,还能加速天地一体化信息网络建设。然而,现有域间协议设计之初缺少对空间网络独特性的考虑,若将它们直接部署至天地一体化信息网络,可能面临各类性能问题。
目前,已有一些工具来验证互联网协议在空间网络环境下的性能,如数值仿真平台、在轨运行卫星验证系统和地面实验验证系统。但这些验证工具验证场景单一或缺少真实协议部署,缺少面向天、地一体的协议验证设计。具体的原因如下:1) 数值仿真平台具有部署容易、支持网络规模大等优势,如 NS2[3]、Qualnet[4]、Omnet++[5]、Opnet[6]等,但该类工具将互联网协议的行为转化为一系列离散事件,这造成协议验证的验证损耗,且网络规模越大,网络协议的验证损耗越严重;2) 在轨卫星验证系统是最可靠的验证工具,如思科在轨验证路由器[7],然而卫星发射周期长、耗费大,支持的实验场景单一、规模小,使其难以满足系统建设前期复杂多变的实验验证;3) 地面实验验证系统是利用地面网络设备模拟空间网络环境,能充分发挥数值仿真平台和在轨卫星实验系统的优势,目前,已有一些简单场景下的实验平台[8-13],其考虑的实验场景主要针对卫星平台(如OpenSAND[8]、SATIP6[9])或卫星平台与地面站、用户间的网络接入场景(如MSET[12]、SNTB[13]),由于缺少多种卫星系统互联的考虑,这些实验平台尚不能有效模拟空间网络的高动态特性,不能有效支持天地融合场景下的实验验证,此外,受物理设备数量和管理复杂性的限制,现有实验系统难以快速部署大规模网络场景。
本文主要考虑采用运行真实互联网协议的虚拟网络设备来建立天地一体化信息网络实验平台,在保证协议验证可靠性的基础上,采用少量物理设备支持大规模实验验证。受限于空间网络高动态特性和天地网络差异性,协议验证平台设计面临诸多挑战。其中,主要难点是如何利用静态虚拟网络设备来模拟大规模动态空间网络。空间网络可能包含数十个到数百个卫星节点,且节点间的链路连接关系和链路质量不断有规律变化。然而,现有虚拟网络设备是静态的,彼此间互联关系也是静态的,如Mininet[14]、Docker[15]、KVM[16]等虚拟技术创建的虚拟网络设备。此外,伴随着天地一体化信息网络研究发展,网络规模不断增加,包含的卫星节点类型不断增多,天地融合策略不断更新,迫切需要协议实验平台具有高可扩展特性,支持各类实验场景。
针对上述挑战,本文基于Mininet虚拟化工具,设计和实现了大规模、可扩展的天地一体化信息网络实验平台,开展了互联网域间协议的性能验证。本文主要贡献如下。
1) 利用真实卫星参数建立空间网络特征仿真器。根据空间卫星运动的规律性,计算出空间网络拓扑变化的关键特征,包括动态链路连接关系、时变链路质量等。
2)采用虚拟网络技术构建天、地网络实验环境。根据实验验证需求,采用虚拟化技术在少量物理设备上创建大量虚拟网络设备。然后,将 1)中计算得到的空间网络特征映射到虚拟网络设备中,通过实时改变虚拟网络设备之间的互联关系来模拟高动态、大规模的空间网络。同时,通过天地互联系统融合空间网络和模拟地面网络。该实验平台高度模块化,具有易部署、高管控的特性,可支持各类实验场景。
3) 设计多种天地一体的实验场景,部署多种天地互联策略,验证现有域间路由协议(BGP,border gateway protocol)及其依赖网络协议[17]在实现多卫星系统融合及天地网络融合时的性能。实验发现,随着空间网络规模的增加,现有域间协议在空间网络中的开销越来越大,甚至引起地面网络的不稳定;同样,现有地面网络的大规模路由表和频繁变化的路由信息严重损耗空间网络的性能,使天、地网络间的互联效率低下。
2 研究背景
2.1 天地一体化信息网络概述
天地一体化信息网络的总体方案如图1所示[2]。其中,地面网络包括互联网和移动通信网络(如2G/3G/4G/5G)[2]。空间网络组网方式采用类似地面互联网的“主干-接入”模式,其包含一张覆盖全球的主干网以及多张接入网络。主干网由相对静止的高轨(GEO)卫星和地面站组成,为各类空间接入网提供全球范围的互联服务。接入网是由多颗中轨/低轨(MEO/LEO)卫星组成的独立卫星系统,如通信、广播、遥感、导航等卫星系统,其拥有自己的管理系统,独立地为用户提供服务。各接入网选出一个或多个卫星作为边界路由器接入主干网。
图1 天地一体化信息网络的总体架构
地面互联网经过长期快速发展,路由表规模非常庞大,存在大量异常流量,但地面网络拓扑相对稳定,路由器间链路变化频率是几小时或几天发生一次。而空间网络受卫星运动的影响,其网络拓扑频繁但有规律地变化,具体包括动态链路连接关系和时变链路质量。
1) 动态链路连接关系。链路连接关系分为接入网与主干网之间的链路切换和接入网内部链路中断/连接。① 接入网与主干网间的链路切换。受MEO/LEO卫星相对运动的影响,接入网到主干网间的链路会被地球大气层、地球表面较高物体遮挡,使空间链路衰减严重而主动中断。当旧链路中断时,接入网重新选择主干网新的边界路由器建立连接,链路发生切换。链路切换频率达秒级[18-19]。② 接入网内部链路中断/连接主要受工程设计的影响。当2个卫星之间天线夹角或天线旋转速度达到一定阈值时,为了满足工程建设需求,会强制中断对应链路。如在极地区域内,“铱星”系统的卫星轨道间的链路会因天线旋转角度过快而中断。
2) 时变链路质量。空间链路本质是无线链路,通信质量容易受空间环境的影响。空间链路质量随卫星间相对运动而变化,变化特征分为突变型和渐变型。① 突变型链路质量变化主要由链路连接关系变化导致。当链路连接关系发生变化时,旧链路断开或新链路建立都会导致链路质量发生突变。② 渐变型链路质量变化主要由卫星间相对位置缓慢变化导致。卫星相对位置的变化,使链路经过的空间环境发生缓慢变化,包括链路传播长度,链路传播的天气、大气等空间环境,最终导致链路质量发生缓慢变化。
2.2 现有域间协议在天地一体化信息网络中面临的挑战
本节主要定性分析现有互联网域间协议在天地一体化信息网络中的工作性能,为后续实验平台设计和协议验证提供基础。
BGP是现有互联网中应用最广泛的域间路由协议,用来实现各独立网络的互联。其通过 eBGP(external border gateway protocol)会话建立网络间的互联关系,同时通过路由更新方式向网络内其他路由器和其他网络共享路由信息。在天地一体化信息网络,BGP实现空间网络中的主干网与各接入网间的互联,以及空间网络与地面网络之间的互联。同时,为支持域间路由协议工作,需在网间边界路由器上部署 ARP(address resolution protocol)、ICMP(Internet control message protocol)、ND(neighbor discovery protocol)、TCP(transmission control protocol)等协议,在网内路由器上部署域内路由协议,如 OSPF(open shortest path first)[20]。
2.2.1 空间网络动态链路连接关系的影响
受空间网络动态链路连接关系的影响,BGP不断改变eBGP会话、触发路由更新。如图2所示,当接入网AS1的边界路由器与主干网边界路由器间的连接关系发生变化,B0与A0间的eBGP会话将断开,B0与A2的eBGP会话将重建;同时,A0撤销AS1的路由前缀信息,A2重新宣告AS1的路由前缀。该路由更新不仅扩散到空间网络其他接入网中,还将扩散到地面网络中。同样,当接入网内的链路连接关系发生变化时,域内路由协议会将链路变化信息分发到域间路由协议中,进而扩散到全网。
图2 现有域间协议在天地一体化信息网络中的工作状态
空间网络拓扑频繁变化,将频繁触发 BGP路由更新,甚至导致大量路由更新在其前一个路由更新没有收敛前被触发,导致空间网络和地面网络不稳定。
2.2.2 空间网络时变链路质量的影响
时变链路质量主要影响BGP控制分组的传输,包括分组传输时延、带宽、分组丢失率等。为保证协议正常工作,BGP引入了4种关键控制分组,包括 open、notification、update、keep-alive等分组[21]。open分组周期性尝试建立 eBGP会话,notification分组将本端域间协议的工作状态变化告知邻居节点,keep-alive分组周期性检测eBGP会话的通断,update分组扩散路由更新消息。在地面网上,由于网络拓扑和eBGP 会话是基本固定的,open消息不需要周期性发送。但在空间网络中,为实现 eBGP会话随链路变化自动切换,边界路由器需要利用open消息周期性尝试与所有可能互联的邻居边界路由器建立eBGP会话。
2.2.3 地面网络大规模路由表、动态路由信息的影响
地面互联网存在路由表规模庞大和大量异常路由信息等问题。若将这些网络信息直接共享到空间网络中,将使资源受限的卫星难以承受,使天、地互联效率低。
2.3 协议实验平台的研究现状
目前,针对地面互联网的协议性能分析,特别是域间协议分析,已有大量研究者开展相关研究。由于地面网络已经非常成熟且规模非常庞大,难以获得全部互联网数据,现有工作往往基于采集到的部分互联网数据,通过数学建模来分析整个互联网的协议性能。例如,Liu等[22]使用简单K-means算法分析2011年日本海啸对互联网的影响;Livadariu等[23]在全球629个自治域中部署探测服务器来获取互联网数据,分析IPv6 (Internet protocol version 6)网络的数据平面和控制平面的稳定性。互联网协议性能分析往往需要大量网络运营数据,更适合分析已建成的大规模网络,不太适合建设初期的网络。
针对空间卫星网络的协议性能分析,已有工作主要考虑搭建网络验证平台,直接进行协议性能分析。主流的网络验证平台包括:数值仿真平台、在轨运行卫星验证系统和地面实验验证系统。
1) 数值仿真平台是最容易部署的实验工具,如 NS2[3]、Qualnet[4]、Omnet++[5]、Opnet[6]等。但该类工具的协议验证往往是将网络协议的行为转化为一系列离散事件。这严重损耗协议验证的真实性,且随着网络规模增大,网络协议的验证损耗越严重。
2) 在轨卫星验证系统是最可靠的验证工具,如思科在轨验证路由器[7]。然而,卫星发射周期长、耗费大、实验场景单一,使在轨卫星验证系统难以满足系统建设前期复杂多变的实验验证,以及难以开展大规模网络场景的实验验证。
3) 地面实验验证系统是利用地面网络设备模拟空间网络环境,能充分发挥数值仿真平台和在轨卫星验证系统的优势。目前,已有一些简单场景下的实验平台。例如,Dubois等[8]针对DVB-RCS卫星系统(digital video broadcastingreturn channel via satellite)提出了OpenSAND实验平台。该平台主要模拟卫星多波束和多地面站接入,并可通过网关设备接入互联网。同样针对DVB-RCS卫星系统,Alphand等[9]提出了一种支持IPv4/IPv6协议的SATIP6 卫星模拟平台,并重点实现用户接入和QoS (quality of service)保证的功能模块。Marchese等[10]提出了一个基于数据分组交换的卫星平台,其采用中央仿真器(elaboration unit)来模拟卫星支持 IP(Internet protocol)数据分组的转发。但该卫星系统缺少路由协议部署,主要考虑的是卫星与地面网关之间静态连接场景。Guo等[11]提出一种 Inter-planet emulator,通过网卡和 Linux的IP堆栈之间的仿真层来模拟空间链路质量,其主要考虑静态链路质量的模拟,缺少空间链路的时变特性的考虑。Chertov 等[12]提出一个卫星模拟平台 MSET,模拟卫星和多终端之间的时分多址接入。美国宇航局的Etefia等[13]通过搭建地面实验床来分析一颗卫星路由器通过域间路由协议 BGP接入多个子网用户时的性能。其主要考虑多个用户子网络接入单颗卫星的情景,如船、飞机接入高轨卫星场景;另外,其实验场景中的用户移动规律是随机设置的,缺少网络真实动态性的考虑。不同于上述实验场景(卫星平台或用户子网接入场景),天地一体化信息网络域间协议研究要考虑的网络场景是各卫星系统间以及空间卫星系统与地面网络间的域间互联场景。
本文设计的实验平台与上述实验验证系统最主要区别是,本文的实验平台主要针对空间各卫星系统间互联及空间卫星系统与地面网络间互联的协议验证场景;现有地面实验验证系统主要针对卫星平台、卫星链路或者简单卫星接入场景。此外,现有实验验证系统尚未实现与地面网络有效互联,其实验场景要么将空间网络当做地面网络的用户子网,要么将空间网络当做与地面网络隔离的网络系统而不进行两者间的互联。
为验证天一体化信息网络的协议性能,特别是数据传输的性能,课题组搭建了由 30多台服务器组成的空间网络实验平台[1],并通过天地一体化互联节点实现与真实地面网络 CERNET2[24]进行主干级的互联。但构建如此规模、纯硬件设备组成的验证环境,需要的时间周期长、耗资巨大。本文设计了轻量级的域间协议验证平台,可供广大科研人员使用。相比较文献[1]的实验环境,本文优势是低成本、规模大、高管控、易部署和易移植。从技术角度,本文提出的实验平台采用具有高管控特性的虚拟网络技术,使实验平台在总体方案设计、空间网络链路特征模拟,以及天地互联系统设计等方面都具独特性。
3 天地一体化信息网络域间协议实验平台的设计与实现
为深入验证现有域间协议在大规模天地一体化信息网络中的工作性能,本文搭建了高可扩展的协议验证平台。
3.1 协议验证平台的总体方案
协议验证平台的核心设计思想是:利用卫星运动可预测性计算出空间网络拓扑的动态特征,再将空间网络动态拓扑实时映射到由虚拟化技术构建的地面静态网络中,通过自动编排后者的组网结构来模拟空间网络,并利用天地互联系统实现空间网络与地面网络之间的融合。另外,为支持多种网络场景的验证,本文对协议验证平台进行模块化,使各模块彼此间协同工作。
图3为天地一体化信息网络实验验证平台的总体方案,其中包括空间网络模拟环境、天地互联系统、地面网络及控制平面。各模块的功能如下。
1) 在控制平面中,用户可输入实验验证的场景、天地互联策略。根据用户的配置参数,实验系统编排相应的实验环境、配置天地互联策略、完成互联网协议的实验验证。
图3 协议验证平台的总体方案
2) 在空间网络模拟环境中,实验平台将根据用户输入的实验场景对空间网络的拓扑特征进行抽象建模,刻画出其动态链路连接关系和时变链路质量。通过联动机制,再将空间网络特征参数实时地配置到虚拟网络设备中,构建空间网络模拟环境。
3) 天地互联机制实现空间网络实验环境与地面网络的互联。同时进行两者的隔离,屏蔽空间动态特性对地面网络的影响,以及抑制大量地面网络路由信息频繁向空间网络宣告。
3.2 空间网络实验环境
空间网络实验环境包含网络特征仿真器、联动机制、空间网络模拟平台。
3.2.1 网络特征仿真器
空间网络特征仿真器主要进行空间拓扑特征建模,抽象出空间网络的时变特征。本文主要建立STK(satellite tool kit)等卫星工具包[25]和 Matlab联合构建仿真平台,其工作流程如图4所示,主要是根据用户输入Matlab的卫星参数(如卫星轨道高度、卫星轨道倾角、卫星升交点赤经、卫星平近点角等),利用STK等数值计算工具,采用牛顿万有引力定律计算出卫星实时位置,进而计算出动态链路连接关系和时变链路质量。
链路连接关系的计算主要包括以下2个步骤。步骤 1:计算出卫星节点间的可见性关系。可见性关系是构建空间链路的基本条件,只有2个卫星节点间具有可见性关系时,卫星间才有可能建立空间链路。卫星间可见性关系的判定条件是空间链路是否被地球或地球上的障碍物阻挡。步骤 2:计算出链路连接关系变化的动态特性。当卫星节点飞离其互联卫星节点的覆盖区域时,会断开与其互联节点间的旧链路,并与其他具有可见性关系的节点建立新链路。链路连接动态特性主要依赖何时断开旧链路和如何选择新链路的计算。
图4 空间网络特征仿真器的工作流程
时变链路质量的计算主要利用3个典型的信道模型计算,即C. Loo模型[26]、Corazza模型[27]和Lutz模型[28]。 C. Loo模型用于纯空间环境中的链路质量计算;Corazza模型和Lutz模型用以计算天气和地面环境(如村庄、城市等)对星地链路质量的影响。链路质量可由一些直接影响网络协议性能的参数来详细描述,如链路延迟,分组丢失率和链路带宽。
3.2.2 联动机制
该机制的功能包括离散化空间网络拓扑特征和分发离散后的网络拓扑。联动机制采用细粒度的时间片离散化缓慢变化的链路质量,即每隔固定时间生成一组的链路参数。同时,采用触发方式离散化突变的链路质量,即当链路质量突变时直接进行记录。此外,由于链路连接关系变化是离散的,联动机制直接记录离散的链路连接关系变化。当离散的网络拓扑所携带的时间信息到达时,联动机制通过集中控制器向各空间网络模拟平台的各节点分发拓扑信息。分发方式采用多线程并行方式,保证各空间网络模拟节点几乎同时收到信息。
3.2.3 空间网络模拟平台
空间网络模拟平台根据联动机制发送的拓扑信息自动模拟动态空间网络、部署网络协议、输出协议验证结果。空间网络模拟平台的逻辑结构如图5所示,包括实验参数输入模块、网络模拟模块和实验结果输出模块。
1) 实验参数输入模块
该模块通过建立与联动机制之间通信管道,周期性接收联动机制发送的链路连接关系和时变链路质量信息,再通过函数调用将接收的信息传递到空间网络模拟模块中。实验参数传递过程是采用进程间管道模式和系统调用方式实现的。该实现方式是非常轻量级的,信息传递通信时延几乎可以忽略。
图5 空间网络模拟平台的逻辑结构
2) 网络模拟模块
该模块利用开源虚拟化软件Mininet和开源路由软件 Quagga[29]构建虚拟网络设备。网络模拟模块由大量虚拟路由器、虚拟网卡、虚拟链路和虚拟交换机组成。每个虚拟路由器相当于物理路由器的镜像,彼此独立运行,拥有普通路由器的几乎所有功能。虚拟网卡、虚拟链路及虚拟交换机用来互联虚拟路由器。主干网和接入网络内部的虚拟路由器间采用静态虚拟链路进行互联。为便于模拟接入网络与主干网之间的链路切换,采用虚拟交换机来互联接入网与主干网之间的虚拟边界路由器。每个主干网虚拟边界路由器连接交换机的接口被分配不同网段地址,以实现虚拟边界路由器间隔离。同时,接入网虚拟边界路由器连接交换机的接口将根据其关联主干网边界路由器的接口地址进行分配,保证主干网和接入网间的2个虚拟边界路由器接口地址在同一个网段内。
系统启动时,空间网络模拟平台根据初始网络拓扑和协议配置信息调用系统命令自动创建虚拟路由器、虚拟网卡、虚拟链路及虚拟交换机,并建立虚拟路由器间互联关系和启动相应的网络协议。
系统自动运行时,每个虚拟路由器根据接收的输入参数进行不同操作。
① 当收到时变链路质量的消息时,其调用虚拟网卡的流控机制,配置相应虚拟网卡出口流量的带宽、排队时间及分组丢失率,来模拟空间网络链路的带宽、时延及分组丢失。对于主干网或接入网内部链路(图 5中实线表示),通过不断配置虚拟路由器上的虚拟网卡来实现域内链路质量模拟。对于主干网和接入网之间的链路,通过配置交换机的虚拟网卡来模拟网间链路质量;同时,保证交换机与主干网之间链路质量不受限(链路带宽为足够大,链路时延为0,分组丢失率为0),即不影响多个接入网虚拟边界路由器同时接入到同一个主干网虚拟边界路由器的链路质量。
② 当收到主干网或接入网内部链路连接关系的变化信息时,虚拟路由器通过改变虚拟接口up/down来实现链路通断的模拟。
③ 当收到主干网和接入网之间的链路切换信息时,通过改变接入网虚拟边界路由器的接口地址来实现链路切换。例如,当图5中的D0与A0断开连接并与A4建立连接时,D0将删掉对应A0的接口地址,并根据 A4的接口地址配置新接口地址和配置D0默认网关为A4,使D0和A4的2个接口在同一个网段。
④ 当收到网络协议配置的信息时,虚拟路由器通过部署在虚拟路由器上的脚本与网络协议进行交互,动态修改网络协议配置。
3) 实验结果输出模块
该模块通过在各虚拟路由器上部署自动化运行的脚本来实时获取实验结果,包括部署周期性调用Linux系统命令的脚本来获取路由表信息、路由器内存、CPU(central processing unit),以及捕获网络协议的控制分组。
3.3 天、地互联机制
天、地互联机制用于实现空间网络模拟环境与地面网络之间的互联和隔离,其工作原理如图6所示。图中虚线右侧主要为控制平面协议,左侧主要为数据平面协议,箭头表示模块间的依赖/调用关系。通过 BGP协议实现模拟地面网络和空间网络模拟平台间的互联。同时,采用路由更新抑制机制和路由表压缩机制在路由发布、路由引入、分组出入等方面进行策略管控。
图6 天地互联系统的工作原理
首先,BGP采用eBGP会话建立空间网络模拟环境与地面网络之间的互联关系。天、地网络间通过共享域间路由信息,实现彼此间网络层融合。
然后,引入路由更新抑制机制和路由表压缩机制来实现空间网络实验环境和地面网络之间的隔离。空间网络拓扑频繁变化可能频繁触发全网络路由更新,进而扩散至地面网络,影响地面网络稳定性。为抑制空间网络频繁路由更新,天地互联系统可通过配置访问控制列表(ACL, access control list)策略实现路由更新的抑制。同时,为了避免地面网络的大规模路由信息冲击空间网络模拟环境,天、地互联系统支持通过配置 ACL和路由策略将地面网络宣告的多条路由前缀聚合成一个路由前缀。路由更新抑制机制和路由表压缩机制可根据实验验证需求进行配置。
3.4 地面网络
考虑到接入真实地面网络的条件苛刻、代价高昂,实验开展受地面网络安全策略限制,许多实验难以开展。本文利用虚拟路由器来模拟地面互联网。通过脚本将地面网络核心路由器的历史路由信息[30]实时配置到虚拟路由器中,控制该虚拟路由器按照地面网络核心路由器的历史行为进行工作,实现地面网络的模拟。该模拟过程可分为以下两步。
第一步,实验开始前,将实验初始时刻的地面网络核心路由器的路由表写入虚拟路由器。虚拟路由器再将收到的地面网络路由表信息向天、地互联系统分发,进而扩散到每个空间路由器。
第二步,实验自动运行过程,虚拟路由器将根据地面网络核心路由器的历史路由信息向空间网络进行路由信息宣告或撤销。如果地面网络核心路由器的历史路由信息表明要撤销某条路由前缀,则虚拟路由器向天、地互联系统发布相应路由前缀的路由撤销分组;如果地面网络核心路由器的历史路由信息表明要宣告某条新的路由前缀,则虚拟路由器向天、地互联系统发布相应路由前缀的路由宣告分组。虚拟路由器发布的路由撤销或宣告分组将通过天、地互联系统扩散到空间网络,进而在空间网络内部扩散。
4 协议实验平台的能力分析
协议实验平台能力分析是对实验平台支持的互联网协议种类和网络规模进行评估。
在协议实验平台中,虚拟路由器不仅包含传统路由器中常用各类路由协议,还包含操作系统内核中的各层互联协议,即虚拟路由器支持从网络层到应用层各类 IPv4/IPv6互联网协议的验证,包括:网络层 ICMP、ND、ARP、BGP[21]、OSPF[20];传输层 TCP、UDP(user datagram protocol)、MPTCP(MultiPath TCP)[31];应用层 HTTP(hypertext transfer protocol)、FTP(file transfer protocol)、SSH(secure shell)。
该实验平台支持的网络规模可能受限于所使用服务器的内存和CPU。由于内存比较便宜、易扩展,内存资源可认为相对宽裕,而服务器 CPU限制着所有虚拟设备的总处理能力。对于不同网络协议的验证,服务器CPU限制表现有所不同。
1) 对应网络层协议的验证,服务器CPU资源可认为是无限制的,这主要由于网络层协议传递消息主要是控制分组,分组处理消耗的 CPU资源相对地面服务器处理能力是非常小的。
2) 对于传输层协议而言,服务器CPU可能成为网络规模的瓶颈。因为传输协议可能传递大量用户数据,这会消耗服务器 CPU资源。一般而言,要求所有虚拟路由器瞬时带宽的总和不大于服务器网卡总速率。对于域间协议依赖的TCP传输协议而言,传输域间协议的控制消息数据分组小,流量短,所消耗CPU资源有限。根据先前实验结果[18],在1 Gbit/s网络处理的计算机上,验证平台可支持232个虚拟路由器以1 Mbit/s(Iridium Next提供的最大数据服务速率[32],BGP控制分组传输速率远小于此值)转发分组。
总之,实验平台可支持现有域间协议及其所依赖的网络层各类协议以及传输层TCP等协议,满足现有域间协议在大规模场景下的实验验证。
5 天地一体化信息网络域间协议性能验证
5.1 天地一体化信息网络实验环境搭建
针对天地一体化信息网络中不同层次卫星系统(如图1所示),本文从在轨运行的Inmarsat系统中选出4颗GEO卫星,从在轨运行的Globalstar系统[33]中选出 15个地面站,构成主干网的边界路由器。考虑到天地一体化信息网络是逐步建成的,本文实验给出了5种不同网络规模的场景,保持主干网节点数量不变下,LEO类型接入网数依次为12、24、32、48、60,MEO类型接入网数依次为2、4、8、12、16、20(每个接入网选择一个卫星作为边界路由器)。
接入网与主干网边界路由器间部署域间路由协议 BGP实现系统间路由信息共享,主干网内部部署OSPF实现域内路由学习,并部署域间协议依赖的网络协议,如ARP、ICMP、TCP等。
实验部署在一台8 GB内存、1 Gbit/s转发能力的ThinkPad T450,并随机选取真实运行10 800 s的实验数据进行分析,对域间协议在空间网络中天地融合时的工作性能进行分析。
5.2 域间协议在空间网络中的性能分析
本文选取几个域间协议性能评价的关键指标,分别为协议分组开销、路由收敛时间、网络稳定性。其中,网络稳定性定义为在实验周期内所有路由器的路由信息与真实网络拓扑保持一致的时间与实验周期的比值。
1) 分组开销
协议分组是域间路由协议的控制消息。图7 显示了open、notification、update、keep-alive等控制分组数量随网络规模的变化情况。随着网络规模增加,各分组数量快速增加。其中,update分组数量变化最大,增加了80倍;open和keep-alive消息占比最大,最大值分别为1 470 501条和183 936条。控制分组数量急剧增加,意味着域间协议在实际部署时将消耗大量的卫星资源。update分组数量对应着网络拓扑变化频率;keep-alive分组和open分组都是周期性发送的消息,发送间隔影响着控制分组的数量和重建网络间互联的时延。如何结合空间链路的广播特性、拓扑变化可预测特性,在快速重建网络间互联关系的同时减少控制分组数量,成为一个关键问题。
图7 不同场景下的各类分组开销
2) 路由收敛时间和网络稳定性
图8显示,随着网络拓扑增加,路由收敛时间发生缓慢变化,但网络稳定性快速下降。这主要因为大多数路由更新的收敛时间(约40 s)大于路由更新的触发间隔(在10 800 s的实验时间内发生456次路由更新,路由更新的平均间隔为23.6 s),大量路由更新将在其前一个路由更新未收敛前被触发,使全网的路由更新长时间无法收敛。此时,大量接入网将因缺少有效路由而无法互联。
图8 不同场景下的路由收敛时间和网络稳定性
5.3 域间协议在天地互联时的性能分析
5.3.1 空间网络对地面网络的影响
图9给出了不同网络场景下空间网络对地面网络的影响。从图中可看出,随着网络规模增加,地面网络收到来自空间网络的路由更新分组数量会快速增加。同时,地面网络将启动自我防护措施,常用RFD(route flap damping)机制[34],通过抑制空间网络路由信息来拒绝相应空间接入网的互联。
图9 不同场景下空间网络对地面网络的影响
图10给出了大规模场景下(4个GEO、15个地面站、60个LEO接入网、20个MEO接入网),各空间接入网被地面网络拒绝互联的时间。从图10中可以看出,有28.7%的接入网路由信息被抑制超过0.5 h。在一些极端情况下,一些接入网路由信息被抑制超过1.5 h,约为实验时间的50%。这主要因为这些接入网频繁进行路由更新和撤销,互联网认为其是很不稳定的,进而多次延长其抑制时间。
图10 大规模场景下各接入网路由信息被抑制的时间
5.3.2 地面网络对空间网络的影响
本节重点分析地面网络路由信息变化对空间网络的影响。相比空间网络,地面网络的主要特点是路由表规模庞大、路由前缀受网络异常的影响会频繁撤销和宣告。地面网络路由前缀频繁变化不同于空间网络频繁路由更新,前者是接入网的某些路由信息因网络异常而发生的变化,后者是接入网的全部路由信息受网络拓扑变化影响而发生的变化。
实验选取位于伦敦的互联网交换节点[30]的域间路由信息来模拟地面互联网。该互联网交换节点为780个互联网服务供应商提供彼此间的互联服务,并间接互联全球网络。实验选取了卫星上存储消耗、路由更新分组数量、路由更新收敛时间这3个指标分别分析路由表规模和路由前缀变化对空间网络的影响。同时通过限制地面网络向空间网络宣告的路由前缀最大长度,来压缩地面互联网路由表规模和路由抑制路由前缀,即只允许前缀长度小于最大长度的路由信息向空间网络宣告。实验分别限制向空间网络宣告路由前缀的最大长度为8、16、20、24、32,开展多组实验。
图 11显示,随着允许向空间网络宣告的网络前缀最大长度的增加,空间网络收到的地面网络路由更新数量不断增加,最后达到811条,比地面网络收到的空间网络路由更新分组数量(685条)还多了126条。另外,路由表开销先增加后不变,最大达6.36 MB。这对资源受限卫星而言,是一个极大的存储开销。需要注意到,在路由前缀长度小于或等于16或者大于或等于24范围内时,路由更新数量和路由表开销基本不变。这是因为地面核心网络上仅有少量路由信息其前缀长度处于该范围内。
图11 不同场景下的地面网络对空间网络的影响
图 12详细显示了在不限制地面网络向空间网络宣告路由前缀(允许向空间网络宣告的路由前缀长度小于或等于32)时,每次地面网络路由更新在空间网络中的路由收敛时间处于0~60 s范围内,平均收敛时间为52.6 s。其中,少量路由更新的收敛时间为小于1 s,这类路由更新主要用以撤销地面网络路由信息,而其他路由更新是用以重新宣告地面网络路由信息。
图12 地面网络路由信息在空间网络中的收敛时间
6 结束语
域间协议是快速实现天地一体化信息网络中多种卫星系统及天、地异构网络间互联的关键。本文提出了大规模、可扩展天地一体化信息网络实验验证平台,旨在测试现有域间协议在大规模天地一体化信息网络中的性能。实验验证平台采用虚拟网络技术,利用少量物理设备高效模拟大规模、高动态空间网络,具有低成本、高管控、易部署、易移植等特色。目前,该实验验证平台可支持包含数百卫星节点的网络规模下的域间协议验证。
本文进一步开展天地一体化网络域间协议实验验证。实验发现,现有域间协议虽能快速实现空间各卫星系统间以及天、地网络间互联,但频繁变化的空间网络拓扑会触发域间协议产生大量控制消息,频繁进行路由更新,使整个空间网络无法收敛,引起地面网络不稳定,甚至导致地面网络拒绝空间网络的互联。
未来,考虑将该协议验证平台与真实地面互联网CERNET2进行互联来扩展实验范围,以及考虑引入更多硬件设备来增强验证平台中的虚拟设备转发能力,为域间协议优化提供可靠实验依据。同时,根据空间网络动态特性,开展协议优化工作,包括利用空间链路的广播特性减少控制消息数量,利用空间拓扑变化的可预测性减少不必要的路由更新,利用天、地网络特征设计天地网间的有效融合机制。