zoukankan      html  css  js  c++  java
  • 三、数据链路层——流量控制月可靠传输机制

    流量控制

      1.为什么要有流量控制?

      发送方如果发送的太快,接收方如果来不及接收,所以需要流量控制来协调。

      2.流量控制的方式?

      停止——等待:发送方发一个,接收方回一个。

        滑动窗口协议:发送方维持一个发送窗口,接收方维持一个接收窗口。发送窗口大小表示还没收到对方确认消息的情况下还能发送多少个

      数据帧。接收方只接收窗口以内的数据。

      3.协议与窗口关系:

      停止-等待:发 = 1 接 = 1

      后退N帧: 发 = n, 接 = 1

      选择重传协议:发  > 1 ,接  > 1

    可靠传输机制

      要确认。

      确认。

      超时重传。

    单帧滑动窗口与停止-等待协议

    多帧滑动窗口与后退N帧协议(GBN)

      发送窗口可以在发送窗口足够的情况下,可以一直发送帧。

      接受方要求必须顺序接收。

      采用n比特对帧编号,发送窗口的大小是 1 <= W <= 2n - 1。

      原因:假如3个比特可以编出 01234567,8个编号。发送方发送了0~7号共8个数据帧。

        这个时候情况一:数据帧正确接收,发送端又发送了8个新的数据帧,其编号是 0~7.

        情况二:确诊帧丢失,超时重传,发送端又发了8个旧的数据帧,其编号是 0~7。

        这个时候接收端就懵逼了,它不知道这个是重传的还是新的?

    选择重传协议SR

      接收方可以发送否定帧,发送方只用重传发送错误的帧。

      W发送 = W接收 = 2n-1

  • 相关阅读:
    学生信息录入(学号 姓名 成绩),并按学号查找。
    char、signed char、unsigned char的区别
    C语言-数组
    如何选取网站主要内容(转)
    git pull和git fetch的区别(转)
    yolov3训练
    Docker容器图形界面显示(运行GUI软件)的配置方法
    切换Ubuntu默认python版本的两种方法
    多用户远程linux+内网穿透工具frp使用详解
    pycharm远程调试docker containers
  • 原文地址:https://www.cnblogs.com/juanzhi/p/12808542.html
Copyright © 2011-2022 走看看