IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> 网络协议 -> UDP协议 -> 正文阅读

[网络协议]UDP协议

一、UDP 协议端报文结构

??UDP 报文分为 UDP 报头和 UDP 数据(UDP载荷)两部分。报头由4个16位长字段组成,分别是源端口、目的端口、UDP长度和校验和。

  1. UDP 报文结构示意图:
    UDP协议报文
    字段含义:
  • 源端口:占据 UDP 报文的前16 位,包含发送数据报应用程序的 UDP 端口号。接收端的应用程序把这个字段包含的值作为回馈响应的地址。由于字段是可选的,故可以设置为0,这样的接收端就不会回馈给发送端响应。
  • 目的端口:接收端应用程序的 UDP 端口,占据16位。
  • UDP长度:16位UDP数据报的长度,表示整个数据报(UDP报头+UDP数据)的最大长度。UDP 报头长度是8个字节,所以这个值最小是6个字节。
  • 检验和:检验和主要是为了检验数据在传输过程中是否发生损坏。
  • UDP数据:发送端要发送的数据。
  1. UDP报文注意事项
    1. UDP 报文拼装的过程,其实就是所谓的“封装”。
    2. 16位UDP数据报的长度,表示整个数据报(UDP报头+UDP数据)的最大长度。
    3. UDP 数据报的最大长度是64KB。
    4. 使用 UDP 来传输数据,一定要警惕大的报文,如果报文超过64KB,此时可能会丢失一部分数据。
    5. 检验和的主要作用其实就是“证伪”,一旦校验和出错,数据就会直接丢弃。

二、UDP协议的特点

  1. 无连接
    ??只需知道对端的IP和端口号就直接进行传输,不需要建立连接。

  2. 不可靠
    ??没有任何安全机制,发送端发送数据报以后,如果因为网络故障该段无法发到对方,UDP协议层也不会给应用层返回任何错误信息。

  3. 面向数据报
    ?? 应用层交给UDP多长的报文,UDP原样发送,既不会拆分,也不会合并。
    ?? 例如:如果发送端一次发送100个字节,那么接收端也必须一次接收100个字节;而不能循环接收10次,每次接收10个字节

  4. 半双工
    ?? UDP 只有接收缓冲区,没有发送缓冲区。

        UDP 没有真正意义上的发送缓冲区,发送的数据会直接交给内核,由内核将数据传给网络协议进行后续的传输。
        UDP 具有接收缓冲区,但是接收缓冲区不能保证接收的UDP数据报的顺序和发送的数据报顺序一致;如果缓冲区
    已满,后续到达的数据就会被丢弃。
    
  5. 大小受限
    ?? UDP协议首部中有一个16位的最大长度。也就是说一个UDP能传输的数据最大长度是64K(包含UDP首部)。

三、基于UDP的应用层协议

  1. NFS :网络文件系统
  2. TFTP :简单的文件传输协议
  3. DHCP :动态主机配置协议
  4. BOOTP : 启动协议(用于无盘设备启动)
  5. DNS :域名解析协议
  网络协议 最新文章
使用Easyswoole 搭建简单的Websoket服务
常见的数据通信方式有哪些?
Openssl 1024bit RSA算法---公私钥获取和处
HTTPS协议的密钥交换流程
《小白WEB安全入门》03. 漏洞篇
HttpRunner4.x 安装与使用
2021-07-04
手写RPC学习笔记
K8S高可用版本部署
mySQL计算IP地址范围
上一篇文章      下一篇文章      查看所有文章
加:2021-12-13 13:13:40  更:2021-12-13 13:16:11 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 -2024/11/26 10:30:36-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码