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

    一、什么是窗口

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

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

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

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

    如图:每次都需要响应

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

    滑动窗口:

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

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

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

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

  • 相关阅读:
    indy tcpclient tcpServer
    Delphi生成即调用带窗体的Dll
    本地同步到网络时间
    tfield的字段名和显示名
    Delphi流的操作_文件合并
    Delphi7 流操作_压缩
    delphi内嵌汇编
    给rar文件加个自定义头
    fastreport小入门
    delphi 单例模式
  • 原文地址:https://www.cnblogs.com/alomsc/p/12740034.html
Copyright © 2011-2022 走看看