zoukankan      html  css  js  c++  java
  • TCP滑动窗口协议

    一、什么是窗口

     窗口就是规定数据传输大小和接收大小的一个容器,比如:

    数据:010100011000111  数据在传输的时候有一个固定的大小

    0101 (四位)==叫做数据帧,每一次能够从网络里传输的大小,这个是由系统MTC来规定的

    eg:现在一次性传了100个数据,但是每次传输的大小只能是四位,每传一次都要等待一次响应,这样会造成网络的拥堵从而造成网络延迟。

    如图:每次都需要响应

    现在规定一个窗口有3个数据帧,0000 0000 0000 第一个数据帧传完不需要响应就可以继续传下一个数据帧,直到这个窗口为止。

    滑动窗口:

    规定一个窗口有5个数据帧 0000,其中 序号为0的数据帧发送成功,窗口即往右移动一位,也可以同时发送5个数据帧。

    另外窗口的大小也不是一定是固定的,会根据网络带宽进行加宽和缩小。

    重发:其中数据帧有一个固定时间,数据包发送后就开始等待,如果等待时间超过这个固定时间还没有接收到响应,该数据帧就会重新发送一次。

     注:如果序号为2的数据包传输失败,窗口虽然右移了,但是56789数据包是不会进行发送的,直到数据包2传输成功

  • 相关阅读:
    spark集群安装部署
    CentOS7 下安装GUI图形界面GNOME
    Wininet请求包装类简稿
    Wininet下载类初稿
    MAC 编制计划任务
    弹出式窗口管理单元备忘
    rc资源文件的中英文应用备忘
    自备工具库
    界面方面的备忘
    多屏开发的备忘
  • 原文地址:https://www.cnblogs.com/alomsc/p/12740034.html
Copyright © 2011-2022 走看看