粥里有勺糖

vuePress-theme-reco 粥里有勺糖    2018 - 2023
粥里有勺糖 粥里有勺糖

Choose mode

  • dark
  • auto
  • light
关于我
备战春秋
  • 心得总结
  • 校招考点汇总
  • 面经汇总
  • 复习自查
技术笔记
  • 技术教程
  • 模板工程
  • 源码学习
  • 技术概念
  • 个人作品
  • 学习笔记
计算机基础
  • 算法与数据结构
  • 操作系统
  • 计算机网络
  • 设计模式
  • 剑指offer
大前端
  • javascript
  • vue
  • html
  • css
  • 🌏浏览器专题
  • Web性能优化
  • regexp
  • node
面试
  • 问解
  • javascript
  • css
  • 手撕代码
  • 性能优化
  • 综合问题
  • 面经汇总
  • 小程序
手撕代码
  • 数据结构与算法
  • javascript
  • css
个人站点
  • GitHub (opens new window)
  • 博客园 (opens new window)
  • 掘金 (opens new window)
线上作品
  • 轻取(文件收集) (opens new window)
  • 个人图床 (opens new window)
  • 考勤小程序 (opens new window)
  • 时光恋人 (opens new window)
  • 在线简历生成 (opens new window)
留言板
Github (opens new window)
author-avatar

粥里有勺糖

285

文章

40

标签

关于我
备战春秋
  • 心得总结
  • 校招考点汇总
  • 面经汇总
  • 复习自查
技术笔记
  • 技术教程
  • 模板工程
  • 源码学习
  • 技术概念
  • 个人作品
  • 学习笔记
计算机基础
  • 算法与数据结构
  • 操作系统
  • 计算机网络
  • 设计模式
  • 剑指offer
大前端
  • javascript
  • vue
  • html
  • css
  • 🌏浏览器专题
  • Web性能优化
  • regexp
  • node
面试
  • 问解
  • javascript
  • css
  • 手撕代码
  • 性能优化
  • 综合问题
  • 面经汇总
  • 小程序
手撕代码
  • 数据结构与算法
  • javascript
  • css
个人站点
  • GitHub (opens new window)
  • 博客园 (opens new window)
  • 掘金 (opens new window)
线上作品
  • 轻取(文件收集) (opens new window)
  • 个人图床 (opens new window)
  • 考勤小程序 (opens new window)
  • 时光恋人 (opens new window)
  • 在线简历生成 (opens new window)
留言板
Github (opens new window)
  • Internet

    • 计算机网络
    • UDP协议
    • TCP协议
    • TCP与UDP的区别
    • HTTP协议
    • Content-Length

UDP协议

vuePress-theme-reco 粥里有勺糖    2018 - 2023

UDP协议

粥里有勺糖 2020-04-14 计算机基础计算机网络

# UDP协议

  • 面向无连接:不需要在正式传递数据之前先连接起双方
  • 数据报文的搬运工:不保证有序且不丢失的传递到对端
  • 没有任何控制流量的算法

# 面向无连接

  • UDP 是不需要和 TCP 一样在发送数据前进行三次握手建立连接,想发数据就可以开始发送了
  • 只是数据报文的搬运工,不会对数据报文进行任何拆分和拼接操作
    • 发送端,应用层将数据传递给传输层的 UDP 协议,UDP 只会给数据增加一个 UDP 头,表示用的是 UDP 协议,然后就传递给网络层了
    • 接收端,网络层将数据传递给传输层,UDP 只去除 IP 报文头就传递给应用层,不会任何拼接操作

# 不可靠性

  • 不可靠性体现在无连接上:通信不需要建立连接,想发就发
  • 收到什么数据就发生什么数据,不对数据进行校验与备份
  • 不关心发送端是否收到了数据
  • UDP没有拥堵控制会以恒定的速度发送数据:在网络条件不好的情况下会导致丢包

# 高效

UDP 的头部开销小,只有八字节,相比 TCP 的至少二十字节要少得多,在传输数据报文时是高效的。

图片

UDP 头部包含了:

  • 两个十六位的端口号
    • 源端口(可选字段)
    • 目标端口
  • 整个数据报文的长度
  • 整个数据报文的检验和(IPv4 可选 字段),该字段用于发现头部信息和数据中的错误

# 传输方式

  • 一对一:单播
  • 一对多:多播(组播)
  • 一对所有:广播

# 适合场景

对当前网络通讯质量要求不高的时候,实时性要求高的地方都可以看到 UDP 的身影,要求网络通讯速度尽量的快,这时就使用UDP

  • 网游
  • 直播
  • 语音,视频

# 总结

  • UDP 相比 TCP 简单的多,不需要建立连接,不需要验证数据报文,不需要流量控制,只会把想发的数据报文直接发送给对端
  • 虽然 UDP 并没有 TCP 传输来的准确,但是也能在很多实时性要求高的地方有所作为

参考

网络-UDP (opens new window)

Edit this page (opens new window)
Last Updated: 2022/5/15 12:46:34