初识UDP协议


UDP是在传输层上工作的协议
传输层协议:是在主机已经可以和主机建立链接的前提下,实现进程和进程间的通信。

UDP格式

UDP协议:
在这里插入图片描述
16位UDP长度,表示整个数据报(UDP首部+UDP数据)的最大长度
如果校验和出错,就会直接被丢弃

校验和:CRC算法 ——>Hash算法
可以判断出数据是否被修改

UDP协议首部有一个16位的最大长度,也就是说,一个UDP能传输的最大长度是64K(包含UDP首部)
如果需要传输的数据大于64k,那么就需要在应用层手动分包,多次发送,并且在接收端手动拼装。

UDP特点

UDP的特点是相对于TCP协议来说的:
不可靠、无连接、面向数据报、性能相对高、可以广播

不可靠

基于网络环境中的一些因素——不可靠
1、任何数据在经过网络传输的过程中都可能丢包;UDP也会进行丢包(不会通知应用层)——UDP不可靠
2、IP包会走不同的路,所以无法保证先发的包一定先到达 (无序)——UDP不可靠

无连接

应用层让发送就立即发送,不用管对方准没准备好接收 —— 无连接

可以广播

UDP可以进行广播——类比为群发邮件

面向数据报

应用层发送的多大的数据,这份数据会完整的装到UDP中发送,不会分包 —— 面向数据报

性能相对高

相对而言,UDP相对性能高

UDP的缓冲区

UDP没有真正意义上的发送缓冲区,当调用send的时候,会直接交给内核,然后发送。
UDP有接收缓冲区,但是不能保证收到的UDP数据报的顺序和发送UDP的顺序一致,如果缓冲区满了,再到达的UDP数据就会被丢弃。

  • 2
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 1
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

打赏作者

无赖H4

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

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

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

打赏作者

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

抵扣说明:

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

余额充值