用户数据报协议 UDP


 UDP 的特点:

  • 无连接、不可靠,运行快捷
     在传输报文之前不需要建立连接,因此减少了协议开销传输延时。此外,除了对报文提供可选的校验和之外,几乎没有其他保证数据传输可靠性的措施,若 UDP 检测到差错分组,会直接将分组丢弃。

  • 面向报文的传输层协议
     对应用程序提交的报文既不合并也不拆分,而是保留原报文的长度和格式,直接添加 UDP 协议头部后提交给下层 IP协议。

 UDP 的不可靠体现在三个方面:

  • 丢失:UDP 报文可能会丢失(发送端没有差错重传机制);

  • 乱序:无法确保 UDP 报文的接收顺序(对于发送的数据报不会进行编号与重组);

  • 重复:出于底层协议栈的实现,接收端可能接受到重复的 UPD 数据报

 使用 UDP 时,应用程序必须选择合适长度的报文。若报文过短,则协议相对开销较大;若报文过长,则提交的 TPDU 可能在 IP层被分段,同样会降低效率。


一、UDP数据报格式

  • 端口号:包括源端口号与目的端口号,每个端口号的长度为16位;

  • 长度:定义了包含报头在内的用户数据包的总长度,共16位,故用户数据包的长度最大为 65535 字节,最小为8字节(只有报头);

  • 校验和:校验和为可选的,用来检验整个用户数据包在传输过程中是否出现差错。

UDP报文头的长度为8个字节。


二、UDP校验和计算

 UDP 校验和用以核验UDP数据包是否 正确传送到目的进程比特是否发生改变。UDP 校验和的计算包括3个部分:伪报头、UDP报头、应用层数据。

1.伪报头

 伪报头是为了防止出现路由选择错误的数据段。伪报头含有源地址、目的地址等信息,而UDP 数据报本身只包含目的端口号,故伪报头来自于 IP报头,在计算 UDP校验和之前,UDP必须先从IP层获取有关信息。

 之所以称为伪报头,是因为其本身不是用户数据报的真正头部,只是在计算的时候与用户数据报连接在一起。


2.伪报头结构

 其中 IP分组报头的协议号17表示 UDP,前面填充1字节的0。UDP长度为UDP数据报的长度,不包含伪报头。
3.检验和计算

 计算时,先将检验和字段置为0,然后将伪报头与用户数据报作为整体计算,以16位为单位,依次相加,并将溢出的进位回卷。

UDP的校验和计算(差错控制方式)只能对由链接引起的字节位错误,且除了对出错的数据报进行丢弃之外,并没有其他的弥补措施。


三、UDP特点

  1. UDP 支持一对一、一对多与多对多的交互式通信,这是 TCP 所不能提供的。

  2. UDP 最短报文长度只有8B,而 TCP 协议最短报文长度为20B。

  3. UDP 没有拥塞控制,网络拥塞时不会要求源主机降低报文发送速率,而是会直接丢弃个别报文。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
好的,我来为你解答这些问题。 1. 运输层协议概述: 运输层位于网络层和应用层之间,主要功能是为应用层提供数据传输服务。运输层的协议有两种:UDP和TCP。UDP是无连接的、不可靠的数据传输协议,它只提供基本的数据传输服务;TCP是面向连接的、可靠的数据传输协议,它提供了完整的数据传输服务。 2. 用户数据协议 UDPUDP是一种无连接的、不可靠的数据传输协议。它不需要建立连接,只需要将数据发送到目的地即可。UDP没有拥塞控制和流量控制的功能,因此传输效率高,但数据传输的可靠性较差。UDP主要用于实时应用,如音视频传输、实时游戏等。 3. 传输控制协议 TCP 概述: TCP是一种面向连接的、可靠的数据传输协议。在传输数据之前,需要先建立连接,然后进行数据传输,最后释放连接。TCP提供了拥塞控制、流量控制、可靠传输等功能,保证了数据传输的可靠性。TCP主要用于需要可靠传输的应用,如文件传输、电子邮件等。 4. TCP的运输连接管理: TCP的连接管理主要包括三个阶段:连接建立、数据传输和连接释放。连接建立时,需要进行三次握手,确保双方都能够正常通信。数据传输时,通过序号和确认号来保证数据的可靠传输。连接释放时,需要进行四次挥手,确保双方都能够正常结束连接。 收获:通过学习运输层协议的概述,我了解到运输层的作用和协议种类;通过学习UDP和TCP的概述,我了解了它们的特点和应用场景;通过学习TCP的运输连接管理,我了解了TCP的连接建立、数据传输和连接释放的过程。这些知识对我今后的网络编程和应用开发有很大的帮助。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值