UDP的报文结构

简介: UDP的报文结构

UDP 报文结构


95bf0162e03040fb82c4509cc2a04df9.png

基本上所有的教科书上都是这样画的图, 但实际上 UDP 报文结构不是这样的, 这样显示应该是容易排版.

正确应该如下图 :


bfc4f616fe54418ca8e7935ca20e74e9.png


1.端口号 :

每个端口号在 UDP 报文里占两个字节, 取值范围就是: 0 ~ 65535

源 ip 和源端口描述了数据从哪里来, 目的 ip 和目的端口描述了数据去哪里.

补充 : 小于 1024 的端口称为 “知名端口”, 是给一些名气比较大的服务器预留的端口, 这部分端口在我们写代码时, 不应该使用. (如果某个知名端口没有被使用, 那么使用这个端口也没关系)


2.报文长度 :

就是整个报文(报头加载荷)多大, 两字节也就是 64kb 大小, 也就是说一个 UDP 报文最大长度就是 64kb.

那如果要传输一个比较大的数据咋办呢?


  1. 可以对大的数据进行拆分, 使用多个数据报来传输. (涉及到数据的拆分,比较复杂)
  2. 不用 UDP 了, 直接用 TCP, TCP 没有限制.


总结 : 使用 UDP 编程的时候, 要注意 UDP 的数据报不能太长, 否则会出问题.


3.校验和 :

网络传输其实并非是很稳定的, 经常会出错的. 在数据传输过程中, UDP 报头和载荷都可能出错. 校验和就是用来检查当前传输的载荷是否出错的.


校验和其实就是用载荷内容进行某种算术运算后得到的数据, 在 UDP 报文发出前计算一次校验和, 然后接收方收到后也根据载荷内容计算一次, 根据是否相同来判断数据是否出错了.


如果校验和不对, 那么数据一定出错了; 如果校验和对了, 数据也是有一定的概率出错的.

为了让校验和能够识别率高一点, 计算的时候通常会以数据的内容作为参数进行计算, 数据内容发生变化, 校验和也就发生变化.


相关文章
|
5月前
|
网络协议 程序员 网络架构
UDP报文结构详解:一篇文章带你搞懂
**UDP报文格式简述:**包含源端口、目的端口、长度和检验和4个字段,用于传输层无连接通信。IP报文格式关键点:版本、首部长度、服务类型、总长度、标识、TTL和首部检验和,确保数据在网络中的路由与可靠性。了解这些基础对于网络协议学习至关重要。
330 2
|
自然语言处理 网络协议 算法
UDP协议和报文格式,校验和,CRC的含义
UDP协议和报文格式,校验和,CRC的含义
|
网络协议
TCP UDP报文段的详细解释
TCP UDP报文段的详细解释
235 0
|
7月前
|
网络协议 算法 安全
UDP报文格式详解
UDP报文格式详解
390 0
|
算法
UDP的报文结构及注意事项
UDP的报文结构及注意事项
134 0
|
网络协议 网络性能优化 网络安全
网络协议报文理解刨析篇二(再谈Http和Https), 加上TCP/UDP/IP协议分析(理解着学习), 面试官都惊讶你对网络的见解(2)
网络协议报文理解刨析篇二(再谈Http和Https), 加上TCP/UDP/IP协议分析(理解着学习), 面试官都惊讶你对网络的见解(2)
网络协议报文理解刨析篇二(再谈Http和Https), 加上TCP/UDP/IP协议分析(理解着学习), 面试官都惊讶你对网络的见解(2)
|
域名解析 网络协议 安全
网络协议报文理解刨析篇二(再谈Http和Https), 加上TCP/UDP/IP协议分析(理解着学习), 面试官都惊讶你对网络的见解(1)
网络协议报文理解刨析篇二(再谈Http和Https), 加上TCP/UDP/IP协议分析(理解着学习), 面试官都惊讶你对网络的见解(1)
网络协议报文理解刨析篇二(再谈Http和Https), 加上TCP/UDP/IP协议分析(理解着学习), 面试官都惊讶你对网络的见解(1)
|
1月前
|
网络协议 算法 网络性能优化
|
28天前
|
网络协议 SEO
TCP连接管理与UDP协议IP协议与ethernet协议
TCP、UDP、IP和Ethernet协议是网络通信的基石,各自负责不同的功能和层次。TCP通过三次握手和四次挥手实现可靠的连接管理,适用于需要数据完整性的场景;UDP提供不可靠的传输服务,适用于低延迟要求的实时通信;IP协议负责数据包的寻址和路由,是网络层的重要协议;Ethernet协议定义了局域网的数据帧传输方式,广泛应用于局域网设备之间的通信。理解这些协议的工作原理和应用场景,有助于设计和维护高效可靠的网络系统。
33 4