
计网协议 | TCP(2-流量控制)
发布日期:2022-02-21 17:40:27
浏览次数:11
分类:技术文章
本文共 544 字,大约阅读时间需要 1 分钟。
1 何为流量控制
让发送方慢点发,让接收方来得及接收。
TCP的流量控制是通过滑动窗口来实现的
滑动窗口:
在通信过程中,接收方根据自己接收缓存的大小,动态地调整发送方的发送窗口大小,即接收窗口rwnd(接收方设置确认报文段的窗口字段来将rwnd通知给发送方),发送方的发送窗口取接收窗口rwnd和拥塞窗口cwnd的最小值。
2 举个栗子
A向B发送数据,连接建立时,B告诉A:“我的rwnd=400((字节)”,设每一个报文段100B,报文段序号初始值为1。
补充:
当rwnd=0的时候,发送方停止发送数据,如需继续发送数据,发送方必须等待接收方提供一个不为0的滑动窗口值,在rwnd=0这段时间,接收方需要处理处于缓存中的这些数据。
3 可能会出现的问题
聪明的你肯定又发现了:rwnd=0的时候,接收方服务器挂了咋整,这不是出现死锁了吗?还是那句话,设计TCP的大佬也考虑到了这一点,所以引出了一个概念:持续计时器。
持续计时器:
- TCP为每一个连接设有一个持续计时器,只要TCP连接的一方收到对方的零窗口通知,就启动持续计时器。
- 若持续计时器设置的时间到期,就发送一个零窗口探测报文段。
- 接收方收到探测报文段时给出现在的窗口值。
若窗口仍然是0,那么发送方就重新设置持续计时器。
转载地址:https://blog.csdn.net/weixin_40597409/article/details/122760839 如侵犯您的版权,请留言回复原文章的地址,我们会给您删除此文章,给您带来不便请您谅解!
发表评论
最新留言
关注你微信了!
[***.191.171.33]2022年12月07日 06时10分34秒
关于作者

喝酒易醉,品茶养心,人生如梦,品茶悟道,何以解忧?唯有杜康!
-- 愿君每日到此一游!
最新文章
MQTT协议三种QOS学习
2019-07-31 22:59:02
基于python的Modbus/MQTT/S7/OPCUA库总结
2019-07-31 22:59:02
基于Nginx+nginx-rtmp-module实现 RTMP web流媒体方案
2019-07-31 22:59:02
mosquitto通配符订阅topic和桥接模式详解
2019-07-31 22:59:01
mosquitto查看系统状态信息
2019-07-31 22:59:01
mosquitto启动参数详解
2019-07-31 22:59:01
Mosquitto安装配置和使用指南
2019-07-31 22:59:00
mosquitto 配置详解(3): bridge的配置
2019-07-31 22:59:00
mosquitto 配置详解(2):listener的通用配置项和SSL/TLS的支持
2019-07-31 22:59:00
mosquitto 配置详解(1):认证鉴权和通用配置项
2019-07-31 22:58:59
mosquitto_passwd 用法中文说明
2019-07-31 22:58:59
随机变量的定义分类和各种主要概率密度分布介绍
2019-07-31 22:58:59
条件概率,全概率和贝叶斯公式
2019-07-31 22:58:58
随机事件和概率及概率的性质
2019-07-31 22:58:58
linux录屏和截图软件
2019-07-31 22:58:57
virtualbox 虚拟机和windows宿主机互通配置
2019-07-31 22:58:57
定积分的概念与性质
2019-07-31 22:58:57
不定积分的概念与性质
2019-07-31 22:58:57
位姿估计Robot_pose_efk的配置和使用
2019-07-31 22:58:56
ROS使用yocs_smoother_velocity做速度平滑处理
2019-07-31 22:58:56