计算机网络怎么实现拥塞控制?

简介: 计算机网络怎么实现拥塞控制?

拥塞控制四大特点

TCP慢启动、拥塞避免、快重传、快恢复

含义解释

慢启动

拥塞窗口(cwnd)每次增加以二倍的方式增加。

Eg:如果cwnd当前为2,下次cwnd就会变为4.

拥塞避免

拥塞窗口(cwnd)每次增加以加1的方式增加。

Eg:如果cwnd当前为2,下次cwnd就会变为3

快重传

当接收方收到的失序的报文段后,就立刻发出3次重复确认。而不要等待自己发送数据时才进行捎带确认,捎带确认是发送数据帧的同时携带确认报文。

快恢复

当发送方接收到连续的三个重复确认时,执行乘法减小方法,sshd(拥塞窗口阈值)减少为当前sshd(拥塞窗口阈值)的一半,然后cwnd变为当前的sshd(拥塞窗口阈值)的一半,并使用拥塞避免的方法进行报文传递,使拥塞窗口缓慢增大。

合并解析

初始启动

cwnd的初始值为1,为了防止数据窗口突然增大造成拥塞,刚开始的时候采用慢启动的方法,当第一次发送接收到确认之后,cwnd加倍变为2,以此类推,知道cwnd的数值大于拥塞窗口阈值sshd的时候,采用拥塞避免的方法,按照每次加1的方式进行拥塞窗口的扩大.

网络超时

无论在慢启动阶段还是在拥塞控制阶段,只要网络出现超时,sthresh置为cwnd的一半,将cwnd置为1,并开始使用慢启动的算法进行拥塞窗口扩大。

报文段失序

当出现一个失序的报文段的时候,就进行快重传,接收方连续发送3哥确认,当发送方接收到快重传的三个确认的时候,进行快恢复,发送方接收到连续的三个重复确认时,执行乘法减小方法,sshd(拥塞窗口阈值)减少为当前sshd(拥塞窗口阈值)的一半,然后cwnd变为当前的sshd(拥塞窗口阈值)的一半,并使用拥塞避免的方法进行报文传递,使拥塞窗口缓慢增大。

相关文章
|
19天前
|
缓存 网络协议 算法
【计算机网络-传输层】TCP可靠传输、TCP流量控制、拥塞控制
【计算机网络-传输层】TCP可靠传输、TCP流量控制、拥塞控制
|
缓存 网络协议 算法
计算机网络学习26:TCP/UDP对比区别、TCP流量控制、拥塞控制、超时重传时间的选择、可靠传输的实现
UDP: User Datagram Protocol 用户数据报协议 TCP: Transmission Control Protocol 传输控制协议 同时这里指的连接是指逻辑连接,而不是物理连接。
计算机网络学习26:TCP/UDP对比区别、TCP流量控制、拥塞控制、超时重传时间的选择、可靠传输的实现
|
缓存 算法 网络协议
【计算机网络】传输层 : TCP 拥塞控制 ( 慢开始 | 拥塞避免 | 快重传 | 快恢复 )
【计算机网络】传输层 : TCP 拥塞控制 ( 慢开始 | 拥塞避免 | 快重传 | 快恢复 )
296 0
【计算机网络】传输层 : TCP 拥塞控制 ( 慢开始 | 拥塞避免 | 快重传 | 快恢复 )
|
5G 网络性能优化
【计算机网络】网络层 : 网络层简介 ( 功能 | 拥塞控制 )
【计算机网络】网络层 : 网络层简介 ( 功能 | 拥塞控制 )
216 0
|
19天前
|
缓存 网络协议 网络架构
【计算机网络】第三章 数据链路层(MAC地址 IP地址 ARP协议)
【计算机网络】第三章 数据链路层(MAC地址 IP地址 ARP协议)
31 1
|
19天前
|
算法 网络协议 数据建模
【计算机网络】—— IP协议及动态路由算法(下)
【计算机网络】—— IP协议及动态路由算法(下)
|
19天前
|
算法 网络协议 数据建模
【计算机网络】—— IP协议及动态路由算法(上)
【计算机网络】—— IP协议及动态路由算法(上)
|
19天前
|
网络协议 Java 网络安全
【计算机网络】—— Socket通信编程与传输协议分析
【计算机网络】—— Socket通信编程与传输协议分析
|
19天前
|
网络协议 Linux Android开发
计算机网络:MAC地址 & IP地址 & ARP协议
计算机网络:MAC地址 & IP地址 & ARP协议
40 7
|
19天前
|
算法
计算机网络:CSMA/CA协议
计算机网络:CSMA/CA协议
28 9