在网络通信中,每一条数据都必须带有一些关键信息,如:源IP地址、目的端IP地址、源端端口、目的端端口、协议,我们将这五个信息称为五元组。
1.UDP协议:
用户数据报协议,用于传输层的协议。
- UDP的协议端格式:
- 16位UDP长度:用于指定整个UDP数据报的长度(包含头部)
2.UDP协议特性:
- 无连接、不可靠:通信时不需要建立连接,知道对端地址就可以进行数据传输,但是不关心对方是否收到数据、收到的数据是否有序等。
- 面向数据报:数据只能一整条一整条的向应用层交付。
3.16位数据报长度决定的特性:
- 一个UDP协议的数据报长度不能大于64k-8(UDP头部为8个字节),否则发送失败;
若是数据过长,需要用户在应用层进行数据分包;
UDP不保证数据有序传输,所以用户在应用层进行分包之后还需要进行包序管理。 - 面向数据报:数据只能一整条一整条的交付
用户每次进行发送数据的时候,UDP协议会为这条数据封装UDP头部信息,直接发送出去。
为了防止用户接受半条数据,导致剩下的数据无法根据16位数据报长度而确定数据长度,UDP规定数据只能一整条一整条的支付。
4.基于UDP协议实现的应用层协议:
- DNS:域名解析协议
- DHCP:动态主机配置协议
- NFS:网络文件系统
- TFTP:简单文件传输协议