用户数据报有两个字段,数据字段和首部字段。首部字段,由四个字段组成,每个字段的长度都是两个字节。
1.源端口
2.目的端口
3.长度 UDP用户数据报的长度,其最小值是8
4.校验和 检测UDP用户数据报在传输中是否有错。有错就丢弃
对于TCP/IP是分四层的,分别是应用层,传输层,网络层,网络接口层。
IP数据报由首部和数据两部分组成。首部的前一部分是固定长度,共20字节,是所有IP数据报必须具有的。在首部的固定部分的后面是一些可选字段,其长度是可变的。
UDP是面向报文的,发送方的UDP对应用程序交下来的报文,在添加首部后就向下交付给IP层。
我的理解是
应用层报文传输到运输层,使用UDP的话会加上UDP首部,到了IP层会加上IP首部。
UDP数据包包含(8字节UDP报文头、我们要发送的实际数据)
UDP报头包含(源端口、目的端口、数据包长度、校验) 每个部分都是2个字节。
IP数据报包含(20个字节的IP数据报头 、UDP数据包)
数据帧包含(帧头、IP数据包、帧尾)
UDP对应用层交下来的东西,既不合并,也不拆分,而是保留这些报文的边界。应用层交给UDP多长的报文,UDP就照样发送,即一次发送一个报文。在接受方的UDP,对IP层交上来的UDP用户数据报,在去除首部后就原封不动的交付给上层的应用进程。
UDP的优点:
UDP是无连接的,即发送数据之前不需要建立连接,(当然,发送数据结束时也没有连接可释放),因此减少了开销和发送数据之前的时延。
没有拥塞控制,传输速度快
UDP的首部开销为8字节,TCP首部开销为20字节。
缺点:不可靠传输。
基于UDP的协议
使用UDP协议端口常见的有:
1.DNS:用于域名解析服务,将域名地址转换为IP地址。DNS用的是53号端口。
2.SNMP:简单网络管理协议,是用来管理网络设备的,用于网络设备很多,无连接的服务就体现其优势。
3.TFTP(trival file transfer protocal),简单文本传输协议。