文章目录
- 一、特性
- (1)优点
- (2)带来的问题
- 二、应用场景
$ nslookup
> baidu.com
Server: 127.0.0.53
Address: 127.0.0.53#53
Non-authoritative answer:
Name: baidu.com
Address: 220.181.38.148
Name: baidu.com
Address: 39.156.69.79
wirshark
如图:

一、特性
UDP
设计简单。
在协议头中,只有端口号、包长度和校验码等少量信息,总共 8个字节。
如图:
(1)优点
-
携带的净数据较多。由于UDP
协议头长度还不到UDP
头的一般。TCP
- 省去了建立连接的负担。由于
没有UDP
号和Seq
号等概念,无法维持一个连接。Ack
(2)带来的问题
- 不在乎双发方
的大小MTU
它拿到应用层的数据之后,直接打上
UDP
头就交给下一层了。
若超过
MTU
怎么办?
发送方的网络层负责分片,接收方收到分片后再组装起来,这个过程会消耗资源。
-
没有重传机制UDP
丢包需要由应用层来处理
- 分片机制存在弱点,会成为黑客的攻击目标
接收方根据每个包里的 的
More fragments
flag
,把分片组装起来。
表示后续还有分片,
1
0
表示这是最后一个分片(可以组装了)
若黑客持续快速地发送
为
flag
的
1
包,接收方一直无法把这些包组装起来,就有可能耗尽内存。
UDP
二、应用场景
(1) 网页或者APP的访问
例如:
QUIC
(Quick UDP Internet Connections,快速 UDP 互联网连接)
QUIC:是一种基于
UDP
改进的通信协议,其目的是降低网络通信的延迟,提供更好的用户互动体验
QUIC 在应用层上,自己实现了:快速连接建立、减少重传时延、自适应拥塞控制
(2)流媒体的协议
直播,讲究实时,过时的包丢了就丢了。
(3)实时游戏
游戏对实时要求较为严格的情况下,采用自定义的可靠 UDP 协议,自定义重传策略,能够把丢包产生的延迟降到最低,尽量减少网络问题对游戏性造成的影响。
(4)
IoT
物联网
物联网领域终端资源少,很可能只是个内存非常小的嵌入式系统,维护
TCP
协议代价过大。