基于学习的TCP加速技术应用于网络文件传输的机制与效率
2016-03-28刘丹
刘丹
(重庆电子工程职业学院,重庆401331)
基于学习的TCP加速技术应用于网络文件传输的机制与效率
刘丹
(重庆电子工程职业学院,重庆401331)
虽然TCP协议还存在问题,但是TCP加速技术更符合网络数据传输的要求。基于学习的TCP加速技术的核心是信息重传机制和拥塞处理机制,它能准确识别网络时延、丢包、拥塞的规律,及时重传信息和控制传输速率,避免拥塞和浪费带宽资源。基于学习的TCP加速技术不仅能够提高数据传输速度,而且能保证大数据文件远距离传输的效率。
数据传输;效率;加速;准确;机制
随着网络技术应用范围不断扩大和用户数量逐渐增加,网络应用环境越来越复杂,网络传输的数据出现时延、丢包等现象越来越普遍,不仅降低了TCP的传输效率,而且也降低了带宽资源的利用率。网络状况判断不准确、调整机制不合理是制约TCP加速的两个重要因素。基于学习的TCP加速技术借助智能学习手段,能准确判断网络状况,合理解决丢包、重传与拥塞等问题,能提升TCP传输效率和带宽利用率。
1 TCP协议存在的问题
虽然TCP作为一种可靠的传输协议,得到广泛运用,但是由于TCP是为局域网开发的技术,没有充分考虑广域网的应用环境,导致TCP越来越不适应当前的网络应用环境[1]。具体表现在两个方面:一是判断和重传机制不合理。传统的TCP协议采取机械的判断和重传机制,在传输过程中,容易造成丢包、判断延迟、误判等问题。判断机制以丢包为依据,不仅容易加剧拥塞,而且拥塞恢复正常的时间较长;二是控制机制不合理。控制机制不合理,降低了网络带宽的有效利用率。以丢包作为判断拥塞的依据、以及大窗口回退调整处理方式,导致TCP的吞吐量急速下滑,浪费宽带资源,降低远程数据传输效率,甚至使网络无法使用。
2 TCP 加速技术发展现状
针对TCP协议存在的问题,已经发展了一系列TCP数据传输加速技术。根据加速方式的难易程度,把TCP数据传输加速技术划分为三个技术[2]:一是并行传输技术。通过建立多个TCP连接,以并行的方式传输数据,扩大初始拥塞窗口,提升数据传输量。虽然这种加速技术可以减少带宽浪费,提高传输效率,但是要受到网络环境的影响,没有从根本上解决TCP固有的问题;二是协议替换技术。在广域网传输信道上,采用私有协议替换TCP协议,以克服网络环境对私有协议传输的影响。虽然目前在主流加速技术中,普遍采用协议替换技术,但是该技术存在私有协议信息容易被拦截的缺陷;三是协议优化技术。通过开启TCP扩展功能,调节TCP传输窗口,改进拥塞控制算法,既能克服TCP协议的固有缺陷,又能不改变TCP协议的交互过程。协议优化技术使网络适应能力更强,已经成为TCP加速技术的发展趋势。拥塞控制算法是TCP协议优化的核心。协议优化技术是依据时延变化判断拥塞状况,更符合网络数据传输的要求。
3 基于学习的TCP加速技术的信息重传机制和拥塞处理机制
基于学习的TCP加速技术,是通过构建网络状态学习机制,记录与TCP连接网络的路径特征,实时分析网络变化情况,以发现丢包或拥塞的先兆,准确判断当前的网络状态,以确定合理的传输速率[4]。基于学习的TCP加速技术包含基于丢包判断的重传机制、以及基于拥塞判断的处理机制。
在重复ACK+超时和判断丢包的基础上,采用TCP传输历史智能学习算法,以丢包历史信息特征作为参考,估计发出但尚未被确认接收的数据包丢失概率。当丢失概率值超过设定的阈值时,传输的数据包信息丢失。这种方法能降低误判TCP丢包的概率,能提高判断丢包的准确性,并在重传机制的作用下,使数据传输恢复到正常状态,减少带宽资源浪费。
把网络丢包和时延变化作为判断链路拥塞的依据,并通过智能传输历史学习算法,对与TCP连接传输的历史信息进行统计分析,准确识别丢包的原因,是因为拥塞丢包,还是因为非拥塞产生的随机性丢包。在发生随机性丢包时,TCP发送窗口大小固定不变,以防止发送速率急剧下降,避免链路拥塞问题。在拥塞判断的条件下,利用传输历史智能学习算法,准确判断传输路径的最大可用带宽,以调整TCP的最大传输速率。在发生链路拥塞时,结合发送窗口的历史信息,选择合适的回退窗口值。
4 基于学习的TCP加速技术在网络文件传输中的应用
目前,一方面,基于TCP协议的文件传输非常普遍;另一方面,跨网的大数据文件传输容易受到网络环境影响,传输效率低。因此,虽然未来仍然要使用TCP协议传输数据,但必须解决数据传输效率问题。首先,提高文件吞吐量、带宽利用率、文件传输加速比。文件传输吞吐量是指单位时间内成功传输的数据量,是衡量传输速率的指标;带宽利用率是指文件传输吞吐量与物理带宽的比值,用于衡量带宽利用程度的指标;文件传输加速比是指在使用TCP加速技术前后两个文件传输吞吐量的比值,用于衡量加速效果。利用基于学习的TCP加速器,能极大地提高传输速度,提高文件吞吐量、带宽利用率、文件传输加速比等。其次,提高远距离、大数据文件的传输效率[3]。一般来说,远距离大数据文件传输的时延为21—200ms,丢包率为5‰,全程物理带宽瓶颈为100Mbps。使用基于学习的TCP加速技术,能够大大地提高传输吞吐量和带宽利用率和传输加速比。例如,5GB的文件数据传输时间能够从50分钟减少到5分钟,40GB的文件数据传输时间从7个多小时减少到45分钟。
[1]谢希仁.计算机网络(第五版)[M].北京:电子工业出版社,2008.
[2]彭娜.并行TCP在广域网加速系统中的研究与实现[D].长沙:中南大学,2009.
[3]张亚生,彭华,谷聚娟.卫星TCP加速技术研究[J].无线电通信技术,2010(5).
[4]文宏,向德生等.Fast TCP协议研究及性能分析[J].计算机工程与应用,2006(11).
责任编辑 仇大勇
TP393
A
1674-5787(2016)06-0150-02
10.13887/j.cnki.jccee.2016(6).44
2016-09-25
刘丹(1982—),女,四川西充人,硕士,讲师,研究方向:计算机科学与技术、软件工程。