| |
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
-> 网络协议 -> TCP的拥塞控制 -> 正文阅读 |
|
[网络协议]TCP的拥塞控制 |
?TCP的拥塞控制拥塞:在网络中对某一个资源的需求量超过了该资源所能提供的最大部分 解决拥塞的四种算法 1、相关参数说明 1.1发送方会维护一个叫拥塞窗口cwnd的状态变量,其值取决于网络的拥塞成都程度,并且动态变化。 1.2拥塞窗口的维护原则:只要网络没有出现拥塞,则拥塞窗口的值就可以在大些,反之就减小一些 1.3判断网络拥塞的依据:没有收到应当到达的确认数据报文段序号(发生了超时重传) 1.4发送方把拥塞窗口作为发送数据的窗口,即swnd==cwnd 1.5维护一个慢开始的门限变量 ssthresh: 当cwnd < ssthresh时,使用慢开始算法 当cwnd>ssthresh时,停止使用慢开始算法,改为使用拥塞避免算法 当cwnd ==ssthresh时,慢开始算法和拥塞避免算法都可以使用 慢开始算法 是指向网络中注入的数据报文段少,并不是指拥塞窗口的增长速率。 实现过程:刚开始发送方会发送一个字节的数据报文段给接收方,接收方成功接受并且给发收方发送了确认报文段,接下来拥塞窗口(=发送窗口)就行按照指数增长,并按照窗口值大小发送相应大小的数据报文段给接收方,接收方收到后发给送确认报文段给发送方,按照指数一直增长直到拥塞窗口值到达了慢开始的门限值,即ssthresh时,之后执行拥塞避免算法。 拥塞避免算法 拥塞避免算法不是指能够完全避免拥塞,而是在该阶段拥塞窗口的值按照线性增长的形式,这样使网络不容易出现拥塞。 实现过程:慢开始算法结束后执行拥塞避免算法,在该阶段拥塞窗口值按照线性增长的形式进行,当拥塞窗口的值到达一定的数值时,发送方发送的数据发生了超时重传,此时判断网络出现了拥塞,接下来下执行两步操作,第一、拥塞窗口的门限值更新为发生拥塞时的窗口值的一半。第二、把拥塞窗口值减小到1,重新执行慢开始算法。 快重传算法 让发送尽快知道丢失的数据报文段,并且尽快进行重传该数据报文段,而不是等超时计时器超时后在进行重传。 使用目的:在网络中,有时个别数据报文段会丢失,但是网络并没有发生拥塞,这就会导致发送方超时重传,而误认为网络发生了拥塞。进而进行把拥塞窗口值减小到1,重新开始了慢开始算法,这样就大大的降低了传输数据的效率,而使用快重传就会解决这个问题。 实现过程:接收方收到发送方发送的数据报文段后要立即确认 ,当接收方收到了乱序的数据报文段时,也要对丢失数据报文段的前一个数据报文段进行重复确认,在发送方一旦收到三个连续的重复确认,就会把相应的数据报文段进行重传 快恢复算法 就是在快重传结束之后,此时的门限值减半,但是并没有执行慢开始算法,而是直接进行快恢复算法,即就是把拥塞窗口改为执行快重传时拥塞窗口的一半,然后执行拥塞避免算法。 |
|
网络协议 最新文章 |
使用Easyswoole 搭建简单的Websoket服务 |
常见的数据通信方式有哪些? |
Openssl 1024bit RSA算法---公私钥获取和处 |
HTTPS协议的密钥交换流程 |
《小白WEB安全入门》03. 漏洞篇 |
HttpRunner4.x 安装与使用 |
2021-07-04 |
手写RPC学习笔记 |
K8S高可用版本部署 |
mySQL计算IP地址范围 |
|
上一篇文章 下一篇文章 查看所有文章 |
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 | -2024/11/26 7:51:36- |
|
网站联系: qq:121756557 email:121756557@qq.com IT数码 |