UDP 的报文结构

一.UDP的报文结构

1.UDP的简单介绍

UDP是传输层协议,它是无连接,不可靠传输,面向数据报,全双工

1.无连接:UDP是一种无连接的传输协议,通信双方不需要在发送数据之前建立连接。相比之下,TCP是面向连接的协议,在传输数据之前需要建立连接,并且在数据传输结束后要释放连接。

2.不可靠传输:UDP不提供数据传输的可靠性保证。它不会跟踪数据包的状态,也不会重传丢失的数据包。因此,如果数据包在传输过程中丢失或损坏,UDP协议不会自动处理,而是由应用程序自行处理。

3.面向数据报:UDP是面向数据报的协议,它以独立的、完整的数据报为传输单位。每个数据报都包含了源地址、目的地址、数据长度和校验和等信息,而且在网络中是独立传输的。这种独立的数据报传输方式使得UDP更加灵活,适用于实时通信等场景。

4.全双工:UDP是全双工的,这意味着它支持同时的双向数据传输。发送方和接收方可以独立地发送和接收数据报,而且两者之间的通信是完全独立的。

2.UDP报文结构

1.UDP头部:UDP头部长度为8字节,由以下四个字段组成:

源端口号(Source Port):2字节长度,可选字段,用于标识发送方的端口。如果不使用,可以设置为0。

目标端口号(Destination Port):2字节长度,表示接收方的端口,用于将数据包发送到正确的应用程序。

长度(Length):2字节长度,表示整个UDP报文的长度,包括头部和数据部分。

注意:一个UDP数据报,最长就是64KB,不能更长了

校验和(Checksum):2字节长度,可选字段,用于检测报文传输中的错误。发送方计算校验和,接收方验证校验和。

2.UDP数据:UDP数据部分包含实际要传输的应用数据,其长度可以是可变的,但总长度受MTU(最大传输单位)的限制。

相关推荐
胖咕噜的稞达鸭几秒前
网络基础:初识TCP/IP协议
网络·网络协议·tcp/ip
全栈工程师修炼指南14 分钟前
Nginx | stream content 阶段:UDP 协议四层反向代理浅析与实践
运维·网络·网络协议·nginx·udp
cur1es34 分钟前
【UDP的报文结构】
网络·网络协议·udp·md5
闲人编程1 小时前
使用FastAPI和WebSocket构建高性能实时聊天系统
websocket·网络协议·网络编程·fastapi·持久化·实时聊天·codecapsule
惊讶的猫1 小时前
OpenFeign(声明式HTTP客户端)
网络·网络协议·http·微服务·openfeign
心.c2 小时前
TCP协议深入解析
网络·网络协议·tcp/ip
摇滚侠2 小时前
HTTP 404 - No response body available
网络·网络协议·http
全栈工程师修炼指南2 小时前
Nginx | stream content 阶段:TCP 协议四层反向代理浅析与实践
运维·网络·网络协议·tcp/ip·nginx
Trouvaille ~2 小时前
【Linux】应用层协议设计实战(一):自定义协议与网络计算器
linux·运维·服务器·网络·c++·http·应用层协议
CSCN新手听安2 小时前
【linux】网络基础(三)TCP服务端网络版本计算器的优化,Json的使用,服务器守护进程化daemon,重谈OSI七层模型
linux·服务器·网络·c++·tcp/ip·json