计算机网络——18无连接传输UDP

无连接传输UDP

UDP

  • “尽力而为的”服务,报文段可能
    • 丢失
    • 送到应用进程的报文段乱序
  • 无连接
    • UDP发送端和接收端之间没有握手
    • 每个UDP报文段都被独立的处理
  • UDP被用于
    • 流媒体
    • DNS
    • SNMP
  • 在UDP上实现可靠传输
    • 在应用层增加可靠性
    • 应用特定的差错格式

UDP:用户数据报协议

为什么要有UDP

  • 不建立连接(会增加延时)
  • 简单:在发送端和接收端没有连接状态
  • 报文段的头部很小(开销小)
  • 无拥塞控制和流量控制:UDP可以尽可能快的发送报文段
    • 应用 -> 传输的速率 = 主机 -> 网格的速率

计算机网络——18无连接传输UDP_第1张图片

UDP校验和

目标:检测在被传输报文段中的差错(如比特反转)

发送方

  • 将报文段的内容视为16比特的整数
  • 校验和:报文段的加法和(1的补运算)
  • 发送方将校验和放在UDP的校验和字段

接收方

  • 计算接收到的报文段的校验和
  • 检查计算出的校验和与校验和字段的内容是否相等
    • 不相等——检测到差错
    • 相等:没有检测到差错 ,但也许还是有差错 (残存错误,未检测出来)

Internet校验和的例子

  • 注意:当数字相加时,在最高位的进位要回卷(加到最低位上),再加到结果上

计算机网络——18无连接传输UDP_第2张图片

  • 目标端:校验范围+校验和=1111111111111111 通过校验
    • 否则没有通过校验
  • 注:求和时,必须将进位回卷到结果上(进位回滚)

你可能感兴趣的:(计算机网络,计算机网络,udp,网络协议)