zoukankan      html  css  js  c++  java
  • tcp流量控制、拥塞控制

    大纲:

    1. 流量控制
    2. 拥塞控制

    一、流量控制

    流量控制是解决发送和接受流量不匹配

    tcp报头中右16位的窗口大小,这个值表示tcp流量控制所用的滑动窗口的值。

    tcp是一个全双工通讯连接,双方都维护了对方的接收窗口大小,下图是A为发送方B为接收方的一个发送过程,seq是发送数据的偏移量,每个报文大小100,初始B的窗口为400,A接收到B的ACK报文后将窗口移动至ack指针后(只有被确认的数据才能移出窗口201-300还在窗口内),并调整窗口大小为300,后面过程重复。

    二、拥塞控制

    拥塞控制是解决由于网络拥堵,发送方防止网络更加 拥堵采用了限流

     

    拥塞控制每次传输的数据包数量称为拥塞窗口,拥塞控制算法包括4种:

    1. 慢开始:一开始将拥塞窗口设置为一个很小的值,然后这个值以指数增长至预先设定的一个阈值
    2. 拥塞避免:达到阈值后,窗口以线性方式增长,直到出现丢包
    3. 快重传:快速重传算法主要用于丢包检测,以便能更快重传数据包,当接收方接收到失序的包时,立刻回复ack确认失序前的位置,发送方连续收到3次固定ack则证明丢包,发送方不等超时计时器超时就需要重传丢失的报包
    4. 快恢复:出现丢包则窗口减半,重新拥塞避免,不再重回慢开始阶段。若没有快重传,而是超时计时器到期则证明发生了网络拥塞,这时要重新慢开始,阈值设为当前窗口大小的一半。
  • 相关阅读:
    一句话开启XP_CMDSHELL
    CF14B Young Photographer 题解
    sql 存储过程与函数区别
    sql索引
    分区表中毒,重装系统
    面试
    XML范例的应用(转载)
    数据结构题目
    网页加载速度的方法和技巧
    设计模式分类
  • 原文地址:https://www.cnblogs.com/liuboyuan/p/14873477.html
Copyright © 2011-2022 走看看