基础
network
network
  • TCP/IP 网络模型
    • 应用层
      • 域名系统 DNS
      • 超文本传输协议 HTTP
    • 传输层
      • 用户数据报协议 UDP
      • 传输控制协议 TCP
        • TCP 报文段
        • 建立连接(三报文握手)
        • 连接释放(四报文握手)
    • 网络层
      • IPv4 地址
        • 分类的 IP 地址
        • 划分子网
        • 无分类编址 CIDR(构造超网)
      • IP 数据报的格式
      • 地址解析协议 ARP
      • IPv6 地址
    • 网络接口层
      • 数据链路层
        • 点对点协议 PPP
        • CSMA/CD 协议
          • MAC 帧的格式
          • 交换式集线器 (switching hub)
      • 物理层
  • Session 与 Cookie
  • 键入网址到网页显示,期间发生了什么?
  • Linux 系统是如何收发网络包的?
  • HTTP
    • HTTP 常见的状态码
    • HTTP 缓存技术
    • HTTP 常见字段
    • HTTPS
  • Group 1
    • 局域网
    • 网卡
    • 专用地址
    • 端口号
    • 网络安全
      • 数据加密模型
      • 数字签名
      • 鉴别(authentication)
        • 报文鉴别
        • 实体鉴别
      • 密钥分配
Powered by GitBook
On this page
  1. TCP/IP 网络模型
  2. 传输层

用户数据报协议 UDP

用户数据报协议 UDP 只在 IP 的数据报服务之上增加了很少一点的功能,这就是复用和分用的功能以及差错检测的功能。

UDP 的主要特点是:

  • UDP 是无连接的,即发送数据之前不需要建立连接,因此减少了开销和发送数据之前的时延。

  • UDP 使用尽最大努力交付,即不保证可靠交付。

  • UDP 是面向报文的。

    • 发送方的 UDP 对应用程序交下来的报文,在添加首部后就向下交付 IP 层。

    • UDP 对应用层交下来的报文,既不合并,也不拆分,而是保留这些报文的边界 。这就是说,应用层交给 UDP 多长的报文,UDP 就照样发送,即一次发送一个报文。

  • UDP 没有拥塞控制,因此网络出现的拥塞不会使源主机的发送速率降低,这对某些实时应用是很重要的。

    很多的实时应用(如 IP 电话、实时视频会议等)要求源主机以恒定的速率发送数据,并且允许在网络发生拥塞时丢失一些数据,但却不允许数据有太大的时延。UDP 正好适合这种要求。

  • UDP 支持一对一、一对多、多对一和多对多的交互通信。

  • UDP 的首部开销小,只有 8 个字节,比 TCP 的 20 个字节的首部要短。

UDP 的首部格式

UDP 的首部字段很简单,只有 8 个字节,由四个字段组成,每个字段的长度都是两个字节。

各字段意义如下:

  • 源端口号:在需要对方回信时选用,不需要时可用全 0。

  • 目的端口号:这在终点交付报文时必须使用。

  • 长度:UDP 用户数据报的长度。

  • 检验和:检测 UDP 用户数据报在传输中是否有错。

UDP 计算检验和的方法和计算 IP 数据报首部检验和的方法相似。

但不同的是:IP 数据报的检验和只检验 IP 数据报的首部,但 UDP 的检验和是把首部和数据部分一起都检验。

Previous传输层Next传输控制协议 TCP

Last updated 9 months ago