计算机网络——传输层-UDP

计算机网络系列博文——目录

UDP(User Datagram Protocol)

UDP 提供多路复用/分解功能和低限度的差错检测功能,此外几乎没有对IP协议增加其它。

参加 [RFC 768]

要在UDP上实现可靠数据传输需在应用层实现可靠性机制。

优点

  1. 控制精确 UDP会立即将进程交付的数据打包,交付网络层,而不做其它工作
  2. 无需连接建立 无需握手,没有连接建立的时延
  3. 无连接状态 无需维护连接状态,资源消耗少
  4. 分组首部开销小 UDP报文首部仅8byte

常见UDP应用

  • DNS域名转换
  • RIP路由选择表更新
  • SNMP网络数据管理
  • 某些多媒体应用

UDP差错检测

  • UDP只提供差错检测,不提供差错恢复。某些实现丢弃受损的报文段,某些实现交付受损的报文段并给出警告。
  • 许多链路层协议提供了差错检验,但端到端路径上任可能有未提供差错检验的链路。此外,存储于交换机内存时,bit差错也可能被引入分组。故UDP提供端到端的差错检验。
  • 端到端原则 某功能必须基于端到端实现:与在较高层级提供该功能的代价相比,在较低层级上设置的功能可能是冗余的或几乎没有价值的。

发送方

  1. 将段的内容视为16-bit整数
  2. 校验和计算:计算所有整数的和,进位加在和的后面,将得到的值按位求反,得到校验和
  3. 发送方将校验和放入校验和字段

接收方

  1. 计算所收到段的校验和
  2. 将其与校验和字段进行对比
    • 不相等:检测出错误
    • 相等:没有检测出错误(但可能有错误)

UDP报文段

计算机网络——传输层-UDP_第1张图片
UDP报文段

首部字段
4个首部字段,每个2byte。

  1. 源端口号
  2. 目的端口号
  3. 长度
  4. 检验和

数据字段
应用数据

你可能感兴趣的:(计算机网络——传输层-UDP)