tcp 滑动窗口简单理解
来源:互联网 发布:雍正篡位还是继位 知乎 编辑:程序博客网 时间:2024/05/17 03:14
主要是根据接收端的接收情况,动态去调整Window Size,然后来控制发送端的数据流量
1. 客户端不断快速发送数据,服务器接收相对较慢,看下实验的结果
a. 包175,发送ACK携带WIN = 384,告知客户端,现在只能接收384个字节
b. 包176,客户端果真只发送了384个字节,Wireshark也比较智能,也宣告TCP Window Full
c. 包177,服务器回复一个ACK,并通告窗口为0,说明接收方已经收到所有数据,并保存到缓冲区,但是这个时候应用程序并没有接收这些数据,导致缓冲区没有更多的空间,故通告窗口为0, 这也就是所谓的零窗口,零窗口期间,发送方停止发送数据
d. 客户端察觉到窗口为0,则不再发送数据给接收方
e. 包178,接收方发送一个窗口通告,告知发送方已经有接收数据的能力了,可以发送数据包了
f. 包179,收到窗口通告之后,就发送缓冲区内的数据了.
总结一点,就是接收端可以根据自己的状况通告窗口大小,从而控制发送端的接收,进行流量控制
阅读全文
0 0
- tcp 滑动窗口简单理解
- 窗口滑动协议的简单理解
- TCP滑动窗口
- TCP滑动窗口机制
- TCP滑动窗口
- TCP滑动窗口
- TCP滑动窗口
- TCP滑动窗口机制
- TCP滑动窗口
- TCP 滑动窗口协议
- TCP滑动窗口协议
- TCP/IP滑动窗口
- TCP 滑动窗口协议
- TCP滑动窗口
- TCP中的滑动窗口
- TCP 滑动窗口协议
- TCP 滑动窗口协议
- TCP/IP滑动窗口
- [Android自定义控件] Android自定义控件
- Python学习心得(二) 字典Dictionary
- 从华为辞职的三个月
- 2015弱校联盟(1)
- 【笔记】JSP结构
- tcp 滑动窗口简单理解
- 定点与浮点
- 观察者模式
- Spring五个事务隔离级别和七个事务传播行为
- 两个栈模拟队列,两个队列模拟栈
- hadoop2.7.3源码解析之datanode注册和心跳机制
- 怎样让 表中的数据 <a href='aa'>Game</a> 原本的显示在网页中
- Linux"和$()的区别以及调研 eval命令
- 近十年量化交易领域最重要的十本参考书推荐!重要!