计算机网络:UDP协议
背景和介绍
- 背景
- 1980年由科学家David P. Reed提出
- 协议简单,搭建在IP协议之上
- 尽可能的减少通信机制,速度非常快
- 该协议的RFC只有两页
- 介绍
- 全称: User Datagram Protocol,用户数据报协议
- 定义:在传输层提供直接发送报文(Datagram)的能力。Datagram是数据传输的最小单位。
- 目标:发送报文,无法拆分数据
- 思考:为什么不直接调用IP协议?
- IP协议只能把数据从一个网络接口发送到另一个网络接口,无法寻址到应用
封包格式
设计目标:允许用户直接发送报文的情况下最大限度的简化应用的设计
报文格式:
- Source Port:源端口号
- Destination Port:目标端口号。
- Length:消息体长度
- Checksum:检查封包是否出错
- Data octets:一个字节一个字节的数据。Octet是8位。
与TCP的区别
UDP | TCP | |
---|---|---|
本质 | 提供报文交换,简化协议 | 提供可靠的网络传输 |
可靠性 | 不可靠 | 可靠 |
顺序 | 无序 | 有序 |
负载 | 负载小 | 负载大 |
广播场景 | 合适 | 不合适,代价大 |
场景分析
- 聊天室是否适合UDP?
不合适,聊天室并发高但流量不大,依赖可靠性
- HTTP协议适不适合UDP?
合适,HTTP3.0就是建立在UDP上的