计算机网络(第四章,传输层(上))

计算机网络(第四章,传输层(上))

  • 传输层服务
    • 开篇
    • 传输层概述
  • 复用和分用
    • 复用和解复用
  • 无连接传输协议-UDP
    • UDP
  • 可靠数据传输的基本原理
    • 可靠数据传输概述
    • rdt2.0
    • rdt2.1
    • rdt3.0
  • 滑动窗口协议

传输层服务

开篇

  • 理解传输层服务的基本理论和基本机制

    • 复用/分用
    • 可靠数据传输机制
    • 流量控制机制
    • 拥塞控制机制
  • 掌握Internet的传输层协议

    • UDP:无连接传输服务
    • TCP:面向连接的传输服务
    • TCP拥塞控制

传输层概述

传输层协议为运行在不同Host上的进程提供了一种逻辑通信机制

  • 端系统运行传输层协议:

    • 发送方:将应用递交的消息分成一个或多个的Segment,并向下传给网络层
    • 接收方:将接收到的segment组装成消息,并向上交给应用层
  • 传输层可以为应用提供多种协议

    • Internet上的TCP
    • Internet上的UDP

传输层 vs 网络层
网络层:提供主机之间的逻辑通信机制
传输层:提供应用进程之间的逻辑通信机制(位于网络层之上;依赖于网络层服务;对网络层服务进行(可能的)增强)

Internet传输层协议

  • 可靠、按序的交付服务(TCP)

    • 拥塞控制
    • 流量控制
    • 连接建立
  • 不可靠的交付服务(UDP)

    • 基于“尽力而为(Best-effort)”的网络层,没有做(可靠行方面的)扩展
  • 两种服务均不保证

    • 延迟
    • 带宽

复用和分用

复用和解复用

接收端进行多路分用:传输层依据头部信息将收到的Segment交给正确的Socket,即不同的进程

发送端进行多路复用:从多个Socket接收数据,为每块数据封装上头部信息,生成Segment,交给网络层

分用工作方法:

  • 主机接收到IP数据报
    • 每个数据报携带源IP地址,目的IP地址
    • 每个数据报携带一个传输层的段(Segment)
    • 每个段携带源端口号和目的端口号
  • 主机收到Segment之后,传输层协议提取IP地址和端口信息,将Segment导向相应的Socket
    • TCP做更多处理

无连接分用:

  • UDP的Socket用二元组标识
    • (目的IP地址,目的端口号)
  • 主机收到UDP段后
    • 检查段中的目的端口号
    • 将UDP段导向绑定在该端口号的Socket
  • 来自不同源IP地址和/或源端口号的IP数据报被导向同一个Socket

面向连接的分用:

  • TCP的Socket用四元组标识
    • 源IP地址
    • 源端口号
    • 目的IP地址
    • 目的端口号
  • 接收端利用所有的四个值将Segment导向合适的Socket
  • 服务器可能同时支持多个TCP Socket
    • 每个Socket用自己的四元组标识
  • Web服务器为每个客户端开不同的Socket

无连接传输协议-UDP

UDP

UDP:User Datagram Protocol(RFC 768)

  • 基于Internet IP协议
    • 复用/分用
    • 简单的错误校验
  • “Best-effort”服务,UDP段可能
    • 丢失
    • 非按序到达
  • 无连接
    • UDP发送方和接收方之间不需要握手
    • 每个UDP段的处理独立于其他段

UDP存在的原因:无需建立连接(减少延迟);实现简单,无需维护连接状态;头部开销少;没有拥塞控制(应用可更好地控制发送时间和速率)

UDP校验:
计算机网络(第四章,传输层(上))_第1张图片

可靠数据传输的基本原理

可靠数据传输概述

可靠的定义:不错、不丢、不乱

rdt2.0

确认机制(ACK,Acknowledgements):接收方显示地告诉发送方分组已正确接收
NAK:接收方显示地告诉发送方分组有错误
发送方收到NAK后,重传分组
基于这种传输机制的rdt协议称为ARQ(Automatic Repeat reQuest)协议
计算机网络(第四章,传输层(上))_第2张图片

rdt2.1

计算机网络(第四章,传输层(上))_第3张图片

rdt3.0

计算机网络(第四章,传输层(上))_第4张图片

滑动窗口协议

见课件

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