UDP协议
TCP是一个基于连接的协议,但有时也需要无连接的协议,这时可以使用UDP。UDP可与简单文件传输协议(TFTP)和远程调用过程(RPC)一起使用。无连接通信不提供可靠性,表示不通知发送设备是否已正确接收了报文。无连接协议也不提供错误恢复能力,此能力必须被忽略,或在高层或低层提供。UDP比TCP要简单得多,它可以不用很麻烦的流控制或错误恢复机制即可与IP(或其他协议)连接,只充当数据报的发送者和接收者。
UDP报文头标比TCP的头标更加简单,如图7-2所示。可以把填充加到数据报上,以保证报文为16位的倍数。
图:UDP头标
信源端口(16位) |
信宿端口(16位) |
长度(16位) |
校验和(16位) |
数据…… |
各字段内容如下:
信源端口:带有端口号的可选区。如果未指定端口号,则该字段设为0。
信宿端口:信宿计算机的端口。
长度:数据报的长度,包括头标和数据。
校验和:数据报的二进制补码和的16位二进制补码,包括一个类似于TCP头标的伪头标。
UCP校验和分段是可选的,但如果不使用,也就没有校验和作用到数据字段上,因为IP的校验和只作用于IP头标。如果未使用校验和,该字段应设为0。