APP下载

TCP 拥塞控制策略及改进算法研究

2020-08-05黎国华

数字通信世界 2020年7期
关键词:重传控制算法数据包

黎国华

(梧州学院继续教育学院,梧州 543002)

1 TCP 拥塞控制主要参数

TCP 拥塞控制的方法很多,其中可以通过改进一些参数来解决,改进的主要参数有:拥塞窗口、通告窗口、发送窗口、慢启动阈值、时间回路响应、计数器超时重新传输、阈值快速重传[1]。

2 TCP 拥塞控制算法

TCP 传输方在遇到拥塞时,通过改变其传输速率而所采用的计算方法称为TCP 拥塞控制计算算法[2]。其主要有四个算法:快速重新传输、避免拥塞、慢启动、快速数据恢复[3]。

在实际的网络运行过程中,如果发现容易丢失的分组数据后,TCP 将会减少为一个发送窗口,重复检查网络带宽,使网络产生严重拥堵。为此,通过运行改进了的避免拥塞算法,提高网络运行综合性能。

以下是TCP 拥塞控制的算法:

初始化:

拥塞控制窗口在4个阶段不同时间节点的变化情况如图1、图2。

图1

图2

3 TCP 拥塞控制算法存在的问题

TCP 拥塞控制方法存在的主要问题如下:

(1)ACK 连接现象:由于ACK 数据包的发送传输速度被TCP 数据端占用,导致传输端需根据传输的ACK 触发新的传输数据的传输。为此,发送方的速度也受到ACK 的传输行为的影响。

(2)慢启动计算方法中也存在不少问题。如由于发送端占用瓶颈链路带宽,导致每个回路响应时间内增加一倍传输窗口;传输端窗口变大,会使数据包会丢等。

4 TCP 拥塞控制算法的改进

(1)超时重传的改进TCP 拥塞控制计算很多算法由于无法准确判断网络拥塞情况,且会因路由器输出队列较长产生时间延迟;另外,由于无法准确估计RTO 和RTT的函数值,采用改进重传定时器的算法效果也不好。最简洁的方法是将新旧RTT 采样值加权取和,具体方法如下:

其中β 为加权因子,满足0≤β <1。计算数据包发送到ACK 返回发送端的时间。但由于TCP 通过累计乘积ACK的值来确然数据接收,很难准确估计RTT的值。

(2)快速重传的改进

随着传输端拥塞窗口不断减小,但实际传输过程中并没有造成分组数据包丢失的情况;如果发生TCP 流窗口减半的情况,表明整个数据流的传输的速度较慢。

如果一两个同样的ACK 被执行后,则传输端就会重新发送一个新的数据分组包,这样就可能造成分组数据包丢失。这样,便能对错乱的数据传输状况具有良好的修复作用。在实际应用中,可以通过减小窗口的TCP连接时间来恢复窗口丢失的数据。

虽然各种改进的TCP 的拥塞控制算法在实际应用中取得了一定的效果,但也存在着一些问题,如同时需进行改进的SACK 类的收发端问题、TCP New-Reno 出现的传输分组数据包的丢失情况等。这些存在的问题和不足,将是今后我们需重点研究改进的地方。

猜你喜欢

重传控制算法数据包
基于模型预测控制算法的智能密度控制系统在选煤厂的应用
适应于WSN 的具有差错重传的轮询服务性能研究
二维隐蔽时间信道构建的研究*
基于TDMA的wireless HART网络多路径重传算法
基于Backstepping的非线性无人船航向控制算法
民用飞机飞行模拟机数据包试飞任务优化结合方法研究
卫星网络中的TCP 跨层技术研究
C#串口高效可靠的接收方案设计
面向异构网络的多路径数据重传研究∗
高精度位置跟踪自适应增益调度滑模控制算法