zoukankan      html  css  js  c++  java
  • TCP拥塞控制

    慢开始和拥塞避免:

    慢开始原理:

    (1)当主机开始发送数据时,如果立即将较大的发送窗口的全部数据字节都注入网络,由于不清楚网络的状况,可能会引发网络拥塞

    (2)比较好的方式就是从小到大逐渐增大发送端的拥塞控制窗口数值

    (3)一开始发送报文段的时候就将拥塞窗口cwnd的打星设置为最大报文段的MSS。如果收到了对新报文段的确认,那就就在大家一个MSS的数值

    当rwind朱勾搭的时候,为防止拥塞端口cwind引起网络拥塞,就开始使用慢开始门限ssthresh进行控制,ssthresh的使用方法如下

    拥塞避免算法如下:

    (1)TCP连接初始化,将拥塞窗口设置为1

    (2)执行慢开始算法,cwnd按指数规律增长,知道cwind=ssthress时,开始执行拥塞避免算法,cwnd按线性规律增长

    (3)当网络发送拥塞,把ssthresh值更新为拥塞前ssthresh的一半,cwnd重新设置为1,然后再执行(2)

    快重传和快恢复

    快重传要求接收方在收到一个失序的报文段后就立即发出重复确认(为的是使发送方及早知道有报文段没有到达对方)

    而不要等到自己发送数据时捎带确认。快重传算法规定发送方只要已收到3个重复确认就应当立即崇川对方尚未收到的报文段,而不必继续等待

    设置的重传计时器时间到期

    快恢复算法:

    (1)当发送方连续收到三个重复确认时,就执行“乘法减小”算法,把sstresh门限减半。但是并执行慢开始 

    (2)考虑到如果网络出现拥塞的话就不会收到好几个重复的确认,所以发送方现在认为网络可能没有出现拥塞。所以此时不执行慢开始算法

    ,而是将cwnd设置为sstresh的打星,然后开始执行拥塞避免算法

  • 相关阅读:
    深度学习方面的学术交流平台?
    如何用简单例子讲解 Q
    强化学习之Q-learning简介
    学完了在线课程?如何开启深度学习论文的阅读模式
    Java高级特性之枚举
    uboot启动流程
    Chromium网页Layer Tree创建过程分析
    Sql控制反转小尝试
    模拟日历计算 poj1008
    安卓零碎知识集中
  • 原文地址:https://www.cnblogs.com/tijie/p/10574050.html
Copyright © 2011-2022 走看看