udp一对多_最简单的 UDP 协议

76b7aa3d8648a8e8f1648136bc979044.png

九月份的最后一天,国庆节的前一天,帅天今天给大家聊聊 UDP 协议。

为什么叫最简单的 UDP 协议,因为相比 TCP 协议,UDP 协议的工作原理简直无脑了太多。

UDP 全称 User Datagram Protocol,即用户数据报协议。

UDP 和 TCP 经常被拿来比较两者之前的区别。

TCP 是面向连接的,UDP 是面向无连接的,大部分在面试的时候都会这么答。

那么请问,什么是建立连接?所谓建立连接,是为了在客户端和服务端维护连接,而建立一定的数据结构来维护双方交互的状态,用这样的数据结构来保证所谓的面向连接的特性。

例如,TCP 是提供可靠交付。通过 TCP 连接传输的数据,无差错、不丢失、不重复、并且按序到达。但是 UDP 继承了 IP 包的特性,不保证不丢失,不保证按顺序到达。

再如,TCP是面向字节流的。发送的时候发的是一个流,没头没尾。IP 包可不是一个流,而是一个个的 IP 包。之所以变成了流,这也是 TCP 自己的状态维护做的事情。而 UDP 继承了 IP 的特性,基于数据报的,一个一个地发,一个一个地收。

TCP 是可以有拥塞控制的。它意识到包丢弃了或者网络的环境不好了,就会根据情况调整自己的行为,看看是不是发快了,要不要发慢点。UDP 就不会,应用让我发,我就发,其他我烦不了。

为什么 UDP 这么无脑呢?来看看 UDP 包头是啥样的。

0df8b2ffc65047a198861990bf478dd0.png

当我们看到 UDP 包头的时候,发现的确有端口号,有源端口号和目标端口号。同时 UDP 除了端口号,再没有其他的了。就是这么简单。

所以 UDP 有以下几大使用场景:

第一,需要资源少,在网络情况比较好的内网,或者对于丢包不敏感的应用。

第二,不需要一对一沟通,建立连接,而是可以广播的应用,比如 DHCP 协议就是基于 UDP 协议的。

第三,需要处理速度快,时延低,可以容忍少数丢包,但是要求即便网络拥塞,也毫不退缩,一往无前的时候。比如现在很火的网红直播带货。

UDP 的介绍就到这里,下面一章会重点介绍 TCP 协议。

祝大家双节快乐!

如果喜欢这篇文章,请点个关注,你的关注是我最大的动力。

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值