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

喝酒易醉,品茶养心,人生如梦,品茶悟道,何以解忧?唯有杜康!
-- 愿君每日到此一游!
推荐文章
创建与配置laravel项目
2019-03-26
Linux限制某些用户或IP登录SSH、允许特定IP登录SSH
2019-03-26
搭建私有代码管理平台(Gitlab)和自动化部署平台(Jenkins)
2019-03-26
PHP 支付PC端扫码支付、APP接口调起支付宝支付、微信公众号接入支付宝支付
2019-03-26
PHP的API接口的apiSign生成规则【请求签名参数生成规则】
2019-03-26
MySQL数据库优化的八种方式
2019-03-26
mysql 使用cmd命令操作数据库
2019-03-26
linux下安装nginx+php+mysql环境详细讲解
2019-03-26
vue.js 三种方式安装
2019-03-26
十五个常用的 Laravel 集合(Collection)
2019-03-26
PHP 操作 Redis 的基本方法
2019-03-26
将本地项目上传到码云
2019-03-26
blah数集
2019-03-26
括号匹配问题,栈的使用练习
2019-03-26
Arduino 寻找设备的I2C地址(转载)
2019-03-26
通过控制Arduino数字引脚的HIGH,LOW控制外部电路的开关---继电器学习
2019-03-26
c/c++中的位运算,看下三张图片就会了!
2019-03-26
dedecms 列表页标题重复出现的解决方法
2019-03-26
python编程从入门到实践学习记录---第一章和第二章内容梳理
2019-03-26
python编程从入门到实践学习记录---第三章 列表相关内容初步知识梳理
2019-03-26