当前位置: 首页 > news >正文

TCP与UDP协议详解!!!

TCP/IP运输层中的两个重要协议

TCP的报文结构

TCP的流量控制

流量控制:让发送方发送速率不要太快,TCP协议使用滑动窗口实现流量控制。

利用滑动窗口机制可以很方便地在TCP连接上实现对发送方的流量控制。

  • TCP接收方利用自己的接收窗口的大小来限制发送方发送窗口的大小。
  • TCP发送方收到接收方的零窗口通知后,应启动持续计时器。持续计时器超时后,向接收方发送零窗口探测报文

  

TCP的拥塞控制

拥塞控制与流量控制的区别:流量控制考虑点对点的通信量的控制,而拥塞控制考虑整个网络,是全局性的考虑。拥塞控制的方法:慢开始算法+拥塞避免算法

慢开始和拥塞避免:

  1. 慢开始】拥塞窗口从1指数增长;
  2. 到达阈值时进入【拥塞避免】,变成+1增长;
  3. 【超时】,阈值变为当前cwnd的一半(不能<2);
  4. 再从【慢开始】,拥塞窗口从1指数增长

快重传和快恢复:

  1. 发送方连续收到3个冗余ACK,执行【快重传】,不必等计时器超时;
  2. 执行【快恢复】,阈值变为当前cwnd的一半(不能<2),并从此新的ssthresh点进入【拥塞避免】
  TCP超时重传时间的选择
TCP可靠传输的实现

基于连续ARQ协议,在某些情况下,重传的效率并不高,会重复传输部分已经成功接收的字节。  

TCP的选择确认
TCP的运输连接管理

http://www.lryc.cn/news/177128.html

相关文章:

  • 《C++ primer》练习6.36-6.38:书写返回数组引用的函数声明
  • Spring Cloud Gateway快速入门(三)——过滤器
  • vue3相比vue2的优点
  • gitee-快速设置
  • 将切分的图片筛选出有缺陷的
  • el-tooltip内容换行显示
  • linux 下用posix semaphore 解决资源竞争问题实例
  • RocketMQ —消费者负载均衡
  • Python自动化小技巧23——PDF文件拆分为单独页面(PyMuPDF)
  • CISSP学习笔记:通过原则和策略的安全治理
  • 【Java 进阶篇】数据定义语言(DDL)详解
  • MySQL详细案例 1:MySQL主从复制与读写分离
  • Kafka 常见问题
  • 如何去开展软件测试工作
  • 详解如何在python中实现简单的app自动化框架
  • 【TCP】三次握手 与 四次挥手 详解
  • 正则表达式新解
  • MissionPlanner编译过程
  • SpringBoot 员工管理---通用模板 ---苍穹外卖day2
  • 可信执行环境(Tee)入门综述
  • Java浮点运算为什么不精确
  • linux使用操作[1]
  • 权限提升Linux篇
  • 影刀自动化采集底层逻辑
  • swiper使用
  • 基于遗传算法解决的多仓库多旅行推销员问题(Matlab代码实现)
  • 微信小程序 工具使用(HBuilderX)
  • 设计模式:观察者模式(C++实现)
  • 【前端打怪升级日志之微前端框架篇】微前端qiankun框架子应用间跳转方法
  • C语言中的typedef struct用法