TCP/IP卷一:56---UDP之(UDP-Lite协议)

一、UDP-Lite概述

  • 有些应用程序可以容忍在发送和接收的数据里引人的比特差错。通常,为了避免建立连接的开销或者为了使用广播或组播地址,这类应用程序会选择使用UDP
  • 但是UDP使用的校验和要么覆盖整个负载,要么就一点也没有(比如,发送方不计算校验和。一个称为UDP-Lite或UDPLite的协议通过修改传统的UDP协议,提供了部分校验和来 决这个问题
  • UDP校验和参阅文章:https://blog.csdn.net/qq_41453285/article/details/103984794

二、UDP-Lite原理

  • 这些校验和只覆盖每个UDP数据报里的一部分负载
  • UDP-Lite有它自己的IPv4协议和IPv6下一个头部字段值(136),因此它实际上算是一种独立的传输协议。UDPLite用一个校验和覆盖范围字段取代了(冗余的)长度字段来修改UDP头部(见下图)

图示

  • 校验和覆盖范围字段是被校验和覆盖的字节数(从UDP-Lite头部的第1个字节开始)。除了特殊的值0以外,最小值是8,因为UDP-Lite头部自身总是要求被校验和覆盖的。值0表示整个负载都被校验和覆盖,这就和传统UDP一样了
  • 这里存在一个关于IPv6超长数据报的问题,因为用于存放校验和覆盖范围字段的空间有限。对于这类数据报,被覆盖数最多可以是64kB或整个数据报(即校验和覆盖范围字段的值为0)

三、套接字选项

  • 使用一些特殊的套接字API选项为应用程序指明使用UDP-Lite(IPPROTO_UDPLITE)和要求的校验和覆盖范围的数量(使用setsockopt的SOL_UDPLITE、 UDPLITE_SEND_CSCOV和UDPLITE RECV_CSCOV选项)
  • setsockopt系统调用参阅文章:https://blog.csdn.net/qq_41453285/article/details/89532613
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

董哥的黑板报

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值