APP下载

基于机器学习的空间站天地网络TCP 传输性能优化研究

2022-11-09任筱强秦铭晨陈云霏童锡鹏

载人航天 2022年5期
关键词:传输速率数据包空间站

万 鹏, 李 瑭, 王 锟, 谢 源, 张 献, 任筱强, 秦铭晨, 陈云霏, 童锡鹏

(1. 北京跟踪与通信技术研究所, 北京 100094; 2. 中国载人航天工程办公室,北京 100071;3. 北京航天飞行控制中心,北京 100094;4. 中国空间技术研究院总体设计部,北京 100094;5. 中国人民解放军 32039 部队,北京 102300;6. 中国航天员科研训练中心,北京 100094;7. 北京轻网科技有限公司,北京 100094)

1 引言

空间站任务中,为确保航天员保持良好的心理状态,为在轨航天员提供网页浏览、收发电子邮件、视频聊天等在轨交互式网络业务在中国航天任务及测控通信领域中尚属首次。

交互式网络业务的应用程序通常基于TCP/IP协议栈[1]开发,由于天地无线链路(通常为中继链路)具有传播延迟时延大、带宽受限、误码率高、链路容量非对称、通信易中断等特征[2]。 国内外研究结果表明,标准TCP 协议直接应用于天地网络环境传输性能将会下降(仅几十至几百kbps)[3-5],无法适应日益增长的网络交互需求,为此需要研究一种适用于空间站天地网络特性的TCP 传输性能优化方法,提升网页浏览、电子邮件、文件传输等天地网络交互支持业务信息传输性能。

本文在研究天地链路TCP 降速机理的基础上,分析了现有地面网络常用的TCP 加速技术的不足;针对天地交互式网络业务的工程现状,提出了基于机器学习的空间站天地网络TCP 传输性能优化方法,实现了在数据传输过程中动态学习网络特征、基于历史可用带宽进行窗口回退、引入数据包传输序号进行快速丢包判断等优化策略,并结合实验室模拟环境与实际空间站工程天地网络环境,对不同协议传输性能进行了测试比较,给出了测试结果。

2 技术现状

2.1 降速机理

丢包与时延对TCP 传输性能下降影响仿真结果见图1,当端到端网络数据传输通道上存在一定丢包和延时的情况下,TCP 连接的吞吐会显著下滑,常常无法有效地利用带宽,从而造成带宽的闲置和浪费,导致长距离数据传输速度变慢。

图1 丢包与时延对TCP 传输性能下降影响仿真结果Fig.1 Simulation results of the TCP degradation due to package loss and time delay

在空间站工程中,天地无线链路具有传播延迟时延大、带宽受限、误码率高、链路容量非对称、通信易中断等特征,标准TCP 协议直接应用于天地链路将导致业务传输性能下降。 标准TCP 协议的缺陷主要包括:

1) 未考虑非拥塞因素造成的丢包。 标准TCP 协议认为发生丢包的主要原因就是拥塞。超长距离空间链路条件下,高误码率引起端到端网络传输丢包,导致标准TCP 协议常常进入过于保守的传输状态。

2) 拥塞后的保守传输。 拥塞发生后,由于标准TCP 协议不清楚链路上实际可用的带宽,往往采用大幅降低传输速率的方式进行恢复,导致链路带宽的闲置。

3) 丢包重传不够及时。 标准TCP 协议通常采用2 种手段判断丢包:①接收端统计连续重复确认包(Dup-ACK)的数量,当收到3 个Dup-ACK后即判断为丢包;②ACK 超时后也判断为丢包。当有较多丢包时,往往要靠ACK 超时来判读超时并引发重传。 现代网络的丢包经常是阵发,一个连接上有多个数据包同时丢失是常有的事。 因此,标准TCP 协议经常要靠超时来重传补洞,往往导致几秒甚至上十秒的等待状态,让传输长时间停滞甚至断线。

2.2 现有加速技术及不足

2.2.1 Loss-based TCP 加速技术

Loss-based TCP 加速技术,包括New Reno[6],BIC[7],Cubic[8]沿袭了主流TCP 以丢包来判断拥塞并调整传输速率的方式,主要存在以下2 个问题:

1) 将丢包作为拥塞发生的信号很容易误判,导致传输速率下降,带宽得不到有效利用;

2) 现代网络设备通常队列比较深,当拥塞发生时队列变长,延迟显著提高,但丢包迟迟不会发生。 Loss-based TCP 加速机制将继续高速传输直到队列完全充满,往往导致大量数据包丢失。 这不但加重了路径节点拥塞,而且需要花更长时间从大量丢包中恢复过来,经常会导致传输阻滞。

2.2.2 Delay-based TCP 加速技术

Delay-based TCP 加速技术,包括Vegas[9],FastTCP[10]采用延迟的变化来判断拥塞程度并相应调整传输速度,主要存在以下问题:

1) 当TCP 连接路径上拥塞节点的队列很浅时,延迟并不提高,拥塞体现为阵发的丢包。 Delay-based TCP 加速技术感应不到这种拥塞,会导致传输速率显著降低;

2) 当网络路径本身的延迟就变化很大时,Delay-based TCP 加速技术会将非拥塞因素导致的延迟增加误判为拥塞并转入拥塞处理,从而导致没有必要的压低传输速率。

2.3 工程现状

空间站长期有人驻留飞行期间,在轨航天员可使用专用笔记本电脑或手持终端(手机、平板电脑等)接入舱载WIFI 网络,利用中继卫星提供的宽带无线链路与地面飞控中心服务器进行局域网业务交互,实现网页浏览、文件传输、电子邮件、即时通讯等功能,大大提升了天地协同效率。

目前,空间站天地网络基于IP over CCSDS AOS 协议体系设计,通过系统间大型联试开展了天地网络业务信息传输性能测试,采用中继前返向KSA 链路在地面飞控中心服务器与航天器笔记本终端之间进行了电子邮件、文件传输等TCP业务传输。 2021 年初,相关系统开展了星-星-地大回路端到端信息传输测试,结果表明,由于航天员专用笔记本采用通用操作系统,基于标准TCP协议栈,不具备加速功能,因此下行TCP 业务数据传输速率不超过200 kbps(300 Mbps 带宽),带宽利用率很低;地面飞控中心服务器麒麟操作系统启用了自带的TCP Cubic 协议扩展选项,上行TCP 业务数据传输速率未超过 4.5 Mbps(10 Mbps 带宽),带宽利用率尚有一定拓展空间。

3 基于机器学习的TCP 优化方法

3.1 优化要求

引入的TCP 优化方法应满足以下基本要求:1)具备良好的兼容性,各终端设备操作系统装配的现有TCP 协议栈可不做更动;

2)具备良好的适配性,各终端设备应用程序仍可与现有TCP 协议栈交互;

3)具有良好的数据一致性,不改变各应用程序业务数据内容及TCP 协议栈封装格式,通过优化拥塞控制算法,调整数据包传送时机及重传时机,达到协议优化加速目的;

4)具有良好的拓扑一致性,部署时应确保维持空间站各舱段及飞控中心网络拓扑及配置现状。

3.2 优化方法

针对现有地面网络TCP 协议加速技术的不足,如TCP Cubic 基于的Loss-based 技术、Fast TCP 基于的Delay-based 技术,本文提出了基于机器学习的空间站天地网络TCP 传输性能优化方法。

3.2.1 算法机制

本文提出的TCP 优化算法机制是通过一个自动学习状态机(Learning State-Machine)来实现,如图2 所示,每一个TCP 连接都对应一个自动学习状态机,记录该TCP 连接的网络路径特征并动态决定适合该连接的拥塞判断及恢复机制和丢包判断机制。 图中的数据流过滤器(Flow Profiler)主要负责直接提取网络路径外在特征并输入给自动学习状态机。 自动学习状态机积累的智能信息被图2 所示的丢包探测器、拥塞控制器、异常处理器、窗口控制器及资源管理器等模块所使用,用于调整相应TCP 连接的传输行为。 异常处理器和窗口控制器模块也会动态反馈信息给自动学习状态机用于进一步优化网络路径学习。

图2 本文TCP 优化算法机制Fig. 2 The mechanism of TCP optimization algorithm in this paper

3.2.2 算法特性

该方法采用网络路径特征自学习的动态算法,基于每一个TCP 连接实时观察、分析网络特征,根据学习到的网络特征随时调整算法来更准确的判断拥塞程度、更及时地判断丢包,从而更恰当的进行拥塞处理并更快速的进行丢包恢复。

这一设计从原理上克服了静态算法无法适应网络路径特征变化的问题,保证了在各种不同网络环境及频繁变化的网络延迟、丢包特征下加速效果的持续有效性。 算法用于在传输过程中动态学习判断每个特定连接的网络路径特征,如端到端延迟及其变化特征、接收端反馈数据包(ACK)的到达间隔及其变化、数据包逆序程度及变化特征、可能由安全设备深度数据检测引起的延迟抖动、各种因素导致的随机丢包等。 在实时跟踪这些特征的同时,随时综合分析这些特征并从中推导出在这个特定TCP 连接网络路径上反映拥塞及丢包的前兆信号,再根据这些动态智能学习的结果判断拥塞程度,决定与当前路径可用带宽相匹配的发送速度、拥塞恢复机制、并准确及时的进行丢包判断及恢复。

3.3 优化过程

本文所提TCP 传输优化方法实现了数据传输过程中动态学习网络特征、基于历史可用带宽进行窗口回退、引入数据包传输序号进行快速丢包判断等优化策略,可在不改变数据内容及封装格式情况下,通过拥塞控制算法的改进来调整数据包的传送及重传时机,从而实现数据传输加速的目标,具体过程描述如下。

3.3.1 动态学习网络特征

在TCP 数据传输过程中,本文优化方法会动态追踪某个特定TCP 连接的网络传输链路,学习判断该路径的重要特征并进行统计,主要包括:

1)发送端与接收端统计端到端传输时延及其变化情况;

2)发送端统计接收端传递的反馈数据包(ACK)的到达时间间隔及其变化情况;

3)发送端与接收端统计前期数据传输期间的最大可用带宽及其变化情况;4)接收端统计数据包逆序程度及变化情况;5)发送端与接收端收集分析可能由网络安全设备深度检测所引起的时延抖动情况。

在收发两端实时跟踪以上特征的同时,随时分析网络特征并从中推导出某特定TCP 连接的网络链路上所反映出的拥塞及丢包潜在信息,然后根据动态智能学习结果判断拥塞程度,确定与当前TCP 连接可用带宽相匹配的发送速度、拥塞恢复机制,并准确及时的进行丢包判断及恢复。

3.3.2 拥塞判断与处置

在拥塞判断与处置方面,主要功能包括:

1) 统计丢包和时延的双重变化,引入TCP链路网络特征自学习动态算法机制来提升拥塞判断的准确性和及时性,通过动态学习分析的方式推导出TCP 链路上潜在的拥塞信号,过滤掉并非由拥塞导致的丢包和时延变化,避免非拥塞丢包导致的发送窗口回退。 拥塞机制对比示意见图3所示。

当出现非拥塞导致的丢包,标准TCP 协议会误判为链路拥塞,对TCP 发送窗口盲目回退,导致传输速度大幅下降;经过TCP 优化后,可以精准判断出丢包是非拥塞因素造成,不进行TCP 发送窗口回退,保证传输速率不产生回退。

2) 基于历史可用最大可用带宽及其变化进行历史窗口回退,优化算法随时总结逼近当前TCP 链接上的实际可用带宽(使用略低的传输速率以清空路径队列,有利于网络拥塞节点的状态恢复)。 当拥塞发生时,使用当前最佳逼近结果来决定发送窗口的回退幅度,保持较高的传输速率,拥塞机制对比示意图如图4 所示。 对于标准TCP,发生丢包后,TCP 发送窗口会固定大幅回退固定的比例;经过TCP 优化后,如果丢包被判断为链路拥塞导致,会基于历史传输信息进行窗口回退,回退至上一次未发生拥塞时的TCP 发送窗口。

图4 拥塞机制对比示意图2Fig.4 Comparison diagram 2 of congestion control

3.3.3 快速丢包判断

在快速丢包判断方面,主要功能包括:

1) 引入TCP 连接路径网络特征自学习动态算法来快速预测丢包;

2) 在TCP 发送侧跟踪数据包的发送顺序,并在发送时为每个数据包分配一个order-stamp(数据包发送顺序序号记录值),根据来自接收侧的ACK 或SACK 信息记录的接收到的数据包的highest- recv-order(接收端已确认收到数据包的最大序号),以未被ACK 或SACK 且具有小于highest-recv-order 的order-stamp 值作为丢包信号,重传这些order-stamp 值的数据包。 丢包判断机制对比示意图如图5 所示。 发生丢包后,标准TCP 协议会在发送端收到3 个Dup-ACK 之后判断为丢包;经过TCP 协议优化之后,发送端在收到order-stamp 值作为的丢包信号之后立刻判断为丢包,可以缩短丢包判断的时间。

图5 快速丢包判断机制对比示意图Fig.5 Comparison of fast package loss detection

3) 发送一个字节探测数据包,从接收侧触发ACK 或SACK 以检测分组丢失,并避免超时重传。

在超长距离传输网络中,如光纤、空间无线环境,这种比标准TCP 协议更快的丢包重传机制,有利于维持更快速稳定的数据传输速率。

3.4 工作框图

TCP 协议优化引擎以TCP 代理方式工作在操作系统TCP 协议栈和网络接口驱动模块之间,对内LAN 侧与操作系统TCP 协议栈交互,对外WAN 侧将数据包送到网卡驱动。

TCP 协议优化的工作方式如图6 所示,在空间站天地一体网络化信息传输系统中,广域网由地面飞控中心、中继卫星系统、空间站构成的中继前返向KSA 链路所表征。 该工作方式对应用程序及网络拓扑全透明。 TCP 协议优化引擎不需要与上层应用有任何交互,也对具体网络接口没有任何要求,可实现全透明安装及全透明工作模式。

图6 TCP 协议优化工作框图Fig.6 Block diagram of TCP optimization

4 测试结果

4.1 实验室模拟环境

在实验室搭建模拟测试环境,服务器和客户端之间串接网络损伤仪,通过网络损伤仪调整链路时延、时延抖动、丢包率等参数,得到模拟环境TCP 优化效果试验结果如表1 所示,其中时延固定取值为600 ms、时延抖动固定取值为30 ms,加速比为优化后速率/优化前速率的比值。

表1 实验室模拟环境TCP 优化试验结果Table 1 Results of TCP throughput optimization test in lab

根据表1 测试结果,在链路丢包率从0.1%至10%区间范围内变化时,本文提出的TCP 优化方法均能有效提升TCP 业务的信息传输吞吐量,加速比不低于5.4(优于7.3 dB)。 进一步测试可知,当链路丢包率大于10%后,标准TCP 业务速率很低,TCP 优化方法的加速效果也并不明显,可见链路质量对于TCP 传输业务具有重要影响。

4.2 空间站天地网络链路

2021 年3 月,开展了空间站天地网络TCP 加速专项测试,通过前返向中继KSA 链路测试了航天器载笔记本与地面飞控中心服务器之间双向文件传输性能。 测试结果表明,本文提出的TCP 优化方法加速性能良好,在前向10 Mbps、返向300 Mbps、往返时延约550 ms 的实际中继KSA 信道条件下,可大幅提升天地网络TCP 业务信息传输性能,具体表现为:①上行文件传输平均速率由TCP Cubic 条件下的3.4 Mbps 提升至6.82 Mbps,加速比不低于2,信息传输增益优于3 dB;②下行文件传输平均速率由标准TCP 条件下的168.51 kbps提升至12.49 Mbps,加速比不低于74,信息传输增益优于18 dB。

通过分析可知,由于空间无线链路传输损耗和信道噪声信号干扰,数据传输过程中会产生一定的丢包率,本文提出的TCP 优化方法在测试中正确的识别出了这类非链路拥塞导致的丢包,避免了非拥塞丢包导致的发送窗口回退;同时在真正发生拥塞丢包时,进行更快速的丢包判断,并把发送窗口回退到逼近当前实际可用带宽(不会发生拥塞)的发送窗口值。 通过上述2 个方面优化,达到了相对于标准TCP 协议更高的相对稳定的平均传输速度。

4.3 实验室结果与空间站工程结果对比分析

在实验室模拟环境中,客户端与服务器之间通过有线链路互联互通,网络层及传输层采用标准TCP/IP 协议栈,附加TCP 优化模块,链路层为局域网协议,网络特征具有节点数目有限、网络拓扑简单、双向带宽对称性、可用带宽大、往返时延抖动较小等特点,TCP 数据传输业务流量较为平稳,测试结果可为本文所提TCP 优化方法提供可行性验证,为后续开展空间站工程测试提供了先决条件。

在空间站天地网络链路条件下,客户端与服务器之间通过空间无线链路互联互通,网络层及传输层采用标准TCP/IP 协议栈,附加TCP 优化模块,链路层为基于CCSDS AOS 的IP 封装协议,网络特征具有节点数目多、网络拓扑复杂(客户端与服务器跨接了空间站局域网、中继卫星链路、地面通信网3 个不同的子网)、带宽非对称性、上行可用带宽受限等特点,TCP 数据传输业务流量略有起伏,在数据格式定义及天地链路特性等方面均与实验室环境具有较大差异,测试结果在传输加速比、吞吐量等方面具有一定的差异性,尽管如此,二者都对本文所提TCP 优化方法进行了有效验证。

5 结论

本文提出了一种适用于空间站天地网络特性的TCP 传输性能优化方法。

1) 针对现有地面网络TCP 协议加速技术的不足,实现了传输过程中动态学习网络路径特征、基于历史可用带宽进行窗口回退、引入数据包传输序号进行快速丢包判断等优化策略。

2) 通过实验室模拟环境测试及空间站天地网络实际链路测试,TCP 优化方法可大幅提升天地网络TCP 业务信息传输性能,为后续开展天地网络交互式业务提供了高速可靠的信息传输保障条件。

猜你喜欢

传输速率数据包空间站
首个第三代空间站——“和平号”空间站
到中国空间站里上课!
自制空间站模型
二维隐蔽时间信道构建的研究*
空间站日记
民用飞机飞行模拟机数据包试飞任务优化结合方法研究
三星利用5G毫米波 实现创纪录传输速率
SmartSniff
跨山通信中频段选择与传输速率的分析
数据传输速率