您好,欢迎来到微智科技网。
搜索
您的当前位置:首页Linux(二十六)TCP的高效性体现

Linux(二十六)TCP的高效性体现

来源:微智科技网

TCP提高高效性的方法

*滑动窗口
*快重传
*延迟应答
*捎带应答

滑动窗口

上一篇我们说了确认应答机制,对每一个发送的数据段,都要给一个ACK确认应答,收到ACK后再发送下一个数据段,这样做有一个比较大的缺点就是性能较差,尤其是数据往返的时间较长的时候
既然这样一收一发的方式性能较低,那么我们一次发送多条数据,就可以大大的提高性能(其实是将多个段等待时间重叠在一起了)。

*窗口大小指的是无需等待确认应答而可以继续发送数据的最大值。
*发送窗口大小数据的时候,不需要等待任何ACK,直接发送;
*收到一个ACK后,滑动窗口向后移动继续发送下一个段的数据,以此类推
*操作系统内核为了维护这个滑动窗口,需要开辟发送缓冲区来记录当前还有那些数据没有应答;只有确认应答过的数据才能从缓冲区中删除;
*窗口越大,网络的吞吐量就越高

在这里我们假设滑动窗口的大小是4000,那么我们把数据1001-2001从主机A发送给主句B,在收到主机B的确认应答后,滑动窗口就会往后移动

快重传

那么问题来了
如果出现了丢包的问题,数据怎么进行重传呢?
这里有两种情况

1:数据包已经抵达,但是ACK被丢了
2ÿ

因篇幅问题不能全部显示,请点此查看更多更全内容

Copyright © 2019- 7swz.com 版权所有 赣ICP备2024042798号-8

违法及侵权请联系:TEL:199 18 7713 E-MAIL:2724546146@qq.com

本站由北京市万商天勤律师事务所王兴未律师提供法律服务