计算机网络(4)-传输层:多路复用与分用、UDP、可靠数据的传输原理、滑动窗口协议

文章目录

    • 1. 概述和传输层服务
    • 2. 多路复用与多路分用
    • 3. UDP:无连接运输
    • 4. 可靠数据的传输原理
      • 1. 构造可靠的数据传输协议
      • 2. 滑动窗口协议与流水线机制
        • 1.滑动窗口协议:GBN
        • 2. 滑动窗口协议:SR

1. 概述和传输层服务

  1. 传输层协议为运行在不同主机上的进程提供了一种逻辑通信机制
    计算机网络(4)-传输层:多路复用与分用、UDP、可靠数据的传输原理、滑动窗口协议_第1张图片
  2. 传输层与网络层的区别
    网络层提供主机之间的逻辑通信机制,传输层提供应用进程之间的逻辑通信机制。
    计算机网络(4)-传输层:多路复用与分用、UDP、可靠数据的传输原理、滑动窗口协议_第2张图片
  3. Internet 传输层协议
    可靠、按序的交付服务(TCP):拥塞控制、流量控制、连接建立
    不可靠的交付服务(UDP):基于“尽力而为(Best-effort)”的网络层,没有做(可靠性方面的)扩展
    两种服务均不保证: 延迟 带宽

2. 多路复用与多路分用

接收端的多路分用:传输层依据头部信息将收到的Segment交给正确的Socket,即不同的进程
发送端的多路复用:从多个Socket接收数据,为每块数据封装上头部信息,生成Segment,交给网络层
计算机网络(4)-传输层:多路复用与分用、UDP、可靠数据的传输原理、滑动窗口协议_第3张图片

  1. 分用工作流程
    计算机网络(4)-传输层:多路复用与分用、UDP、可靠数据的传输原理、滑动窗口协议_第4张图片
  2. 无连接分用UDP
    一个UDP套接字是由一个二元组全面标识的,该二元组包含一个目的IP地址和一个目的端口号。
    计算机网络(4)-传输层:多路复用与分用、UDP、可靠数据的传输原理、滑动窗口协议_第5张图片
    计算机网络(4)-传输层:多路复用与分用、UDP、可靠数据的传输原理、滑动窗口协议_第6张图片
  3. 面向连接的分用
    TCP的Socket用四元组标识。即使目的地址和目的端口相同,如果具有不同源地址或者源端口,TCP报文段将会定向到不同的套接字。
    计算机网络(4)-传输层:多路复用与分用、UDP、可靠数据的传输原理、滑动窗口协议_第7张图片
    计算机网络(4)-传输层:多路复用与分用、UDP、可靠数据的传输原理、滑动窗口协议_第8张图片
    多线程Web服务器:在服务器,只开有一个端口号80
    计算机网络(4)-传输层:多路复用与分用、UDP、可靠数据的传输原理、滑动窗口协议_第9张图片

3. UDP:无连接运输

UDP协议是基于IP协议的,它提供了上节的多路复用/分用,同时也增加了一些简单的错误校验。
UDP提供的服务是“Best effort”服务,UDP段可能 丢失,非按序到达。
无连接: UDP发送方和接收方之间不需要握手,每个UDP段的处理独立于其他段。

计算机网络(4)-传输层:多路复用与分用、UDP、可靠数据的传输原理、滑动窗口协议_第10张图片

  1. UDP的应用
    计算机网络(4)-传输层:多路复用与分用、UDP、可靠数据的传输原理、滑动窗口协议_第11张图片
  2. 校验和
    之所以UDP要进行差错检验,是因为不能保证源和目的之间的所有链路层都提供差错检测。
    计算机网络(4)-传输层:多路复用与分用、UDP、可靠数据的传输原理、滑动窗口协议_第12张图片
    计算机网络(4)-传输层:多路复用与分用、UDP、可靠数据的传输原理、滑动窗口协议_第13张图片

4. 可靠数据的传输原理

可靠指的是不错(0变成1)、不丢(分组丢失)、不乱(按照发送顺序进行交付)。
计算机网络(4)-传输层:多路复用与分用、UDP、可靠数据的传输原理、滑动窗口协议_第14张图片

1. 构造可靠的数据传输协议

仅考虑单向的数据传输,但是控制信息是双向流动,同时采用有限状态自动机FSM刻画传输协议。
计算机网络(4)-传输层:多路复用与分用、UDP、可靠数据的传输原理、滑动窗口协议_第15张图片

  1. 经完全可靠信道的可靠数据传输:rdt1.0
    可靠信道也就意味着底层信道是完全可靠的,即不会发生错误和丢弃分组,也是按顺序到达。
    计算机网络(4)-传输层:多路复用与分用、UDP、可靠数据的传输原理、滑动窗口协议_第16张图片
    发送端:
    计算机网络(4)-传输层:多路复用与分用、UDP、可靠数据的传输原理、滑动窗口协议_第17张图片
    接收端:
    ==19==

  1. 经具有比特差错信息的可靠数据传输:rdt2.0
    具有比特差错信息的可靠数据传输,意味着底层信道可能会反转分组中的位,但是不会产生丢包和乱序。ARQ协议
    计算机网络(4)-传输层:多路复用与分用、UDP、可靠数据的传输原理、滑动窗口协议_第18张图片
    发送端:
    计算机网络(4)-传输层:多路复用与分用、UDP、可靠数据的传输原理、滑动窗口协议_第19张图片
    计算机网络(4)-传输层:多路复用与分用、UDP、可靠数据的传输原理、滑动窗口协议_第20张图片
    接收端:
    ==23==

  1. 经具有比特差错信息的可靠数据传输:rdt2.1 和 rdt2.2
    计算机网络(4)-传输层:多路复用与分用、UDP、可靠数据的传输原理、滑动窗口协议_第21张图片
    计算机网络(4)-传输层:多路复用与分用、UDP、可靠数据的传输原理、滑动窗口协议_第22张图片

  1. 经具有比特差错信息的丢包信道的可靠数据传输:rdt3
    计算机网络(4)-传输层:多路复用与分用、UDP、可靠数据的传输原理、滑动窗口协议_第23张图片

2. 滑动窗口协议与流水线机制

  1. rdt3.0的性能分析
    假定分组长L=1000bits,信道带宽为1Gbps
    计算机网络(4)-传输层:多路复用与分用、UDP、可靠数据的传输原理、滑动窗口协议_第24张图片

  2. 流水线机制
    不用停等方式运行,允许发送方发送多个分组而无需等待确认。
    计算机网络(4)-传输层:多路复用与分用、UDP、可靠数据的传输原理、滑动窗口协议_第25张图片
    流水线机制对于可靠数据传输协议带来了几个影响:

    更大的序列号范围
    发送方和/或接收方需要更大的存储空间以缓存分组

为了实现流水线机制,需要引入滑动窗口协议。


1.滑动窗口协议:GBN

窗口的图示以及分段信息,窗口尺寸为N,也就是最多有N歌等待确认的消息,随着协议的运行,窗口在序列号空间内向前移动。:
计算机网络(4)-传输层:多路复用与分用、UDP、可靠数据的传输原理、滑动窗口协议_第26张图片
发送方:
计算机网络(4)-传输层:多路复用与分用、UDP、可靠数据的传输原理、滑动窗口协议_第27张图片
接收方:
计算机网络(4)-传输层:多路复用与分用、UDP、可靠数据的传输原理、滑动窗口协议_第28张图片
整体流程:注意,在接收方,分组2丢失,所以分组3、4、5都会被丢弃。
计算机网络(4)-传输层:多路复用与分用、UDP、可靠数据的传输原理、滑动窗口协议_第29张图片

2. 滑动窗口协议:SR

从上图可以看出,在GBN中,单个分组的差错能够引起GBN重传大量分组,许多分组没必要重传。而选择重传协议(SR)则通过让发送方仅重传那些它怀疑在接收方出错的分组而避免不必要的重传。窗口长度必须小于或等于序号空间大小的一半
计算机网络(4)-传输层:多路复用与分用、UDP、可靠数据的传输原理、滑动窗口协议_第30张图片
窗口图示:
计算机网络(4)-传输层:多路复用与分用、UDP、可靠数据的传输原理、滑动窗口协议_第31张图片
发送方:
计算机网络(4)-传输层:多路复用与分用、UDP、可靠数据的传输原理、滑动窗口协议_第32张图片
接收方:
计算机网络(4)-传输层:多路复用与分用、UDP、可靠数据的传输原理、滑动窗口协议_第33张图片
图示:
计算机网络(4)-传输层:多路复用与分用、UDP、可靠数据的传输原理、滑动窗口协议_第34张图片

你可能感兴趣的:(计算机网络)