【计算机网络】UDP 协议特点解析

简介: 【1月更文挑战第27天】【计算机网络】UDP 协议特点解析

用户数据报协议UDP只在IP的数据报服务上增加了很少一点功能,主要是复用和分用的功能以及差错检测的功能,这里所说的复用和分用,就是使用端口标识不同的应用层协议。UDP主要特点如下:

无连接:

UDP无连接的,即发送数据之前不需要建立连接,结束时也没有连接的断开。因此,UDP相对于TCP来说减少了开销和发送数据前的时延。

尽最大努力交付:

UDP使用尽最大努力交付,即不保证可靠交付,因此主机不需要维持复杂的连接状态表(这里保存了很多参数)。通信两端不用保持连接,因此节约系统资源。

面向报文:

UDP是面向报文的,发送方的UDP对应用程序交付下来的报文,在添加首部后就向下交付给网络层。UDP对应用层交付下来的报文,既不合并,也不拆分,而是保留这些报文的边界。这就是说,应用层交给UDP多长的报文,UDP就原样发送,即一次发送一个报文。

在接收方的UDP,对IP层交上来的UDP用户数据报,在去除首部后就原封不动地交付给上层的应用进程。也就说,UDP一次交付一个完整的报文。因此,应用程序必须选择合适大小的报文。若报文太长,UDP交给网络层后,网络层在传送时就可能要进行分片,这会降低网络层效率。反之,若报文太短,UDP把它交给网络层后,会使得IP数据报的首部的相对长度太大,降低了网络层效率。

无拥塞控制:

UDP没有拥塞控制,因此网络出现的拥塞不会使源主机的发送速率降低。这对某些实时应用来说十分重要。

多播通信:

UDP支持一对一、一对多、多对多的交互通信。

UDP的首部开销小,只有8个字节,比TCP的首部的20个字节短。

相关文章
|
6天前
|
网络协议 Java API
深度剖析:Java网络编程中的TCP/IP与HTTP协议实践
【4月更文挑战第17天】Java网络编程重在TCP/IP和HTTP协议的应用。TCP提供可靠数据传输,通过Socket和ServerSocket实现;HTTP用于Web服务,常借助HttpURLConnection或Apache HttpClient。两者结合,构成网络服务基础。Java有多种高级API和框架(如Netty、Spring Boot)简化开发,助力高效、高并发的网络通信。
|
7天前
|
存储 网络协议 安全
15.网络协议-Radius协议
15.网络协议-Radius协议
|
7天前
|
存储 网络协议 网络安全
14.网络协议-邮件协议
14.网络协议-邮件协议
|
11天前
|
存储 JSON 前端开发
网络原理(4)HTTP协议(下)
网络原理(4)HTTP协议
25 0
|
12天前
|
存储 安全 测试技术
网络奇谭:虚拟机中的共享、桥接与Host-Only模式解析
网络奇谭:虚拟机中的共享、桥接与Host-Only模式解析
18 0
|
14天前
|
存储 网络协议 Linux
|
14天前
|
安全 SDN 数据中心
|
15天前
|
网络协议 安全 网络性能优化
|
15天前
|
Python
Python网络编程基础(Socket编程)UDP服务器编程
【4月更文挑战第8天】Python UDP服务器编程使用socket库创建UDP套接字,绑定到特定地址(如localhost:8000),通过`recvfrom`接收客户端数据报,显示数据长度、地址和内容。无连接的UDP协议使得服务器无法主动发送数据,通常需应用层实现请求-响应机制。当完成时,用`close`关闭套接字。
|
2月前
|
算法 网络协议 网络架构
计算机网络-网络层:IP协议
【2月更文挑战第1天】
46 0

热门文章

最新文章

推荐镜像

更多