【计算机网络】-传输层-UDP
简介
Internet协议集支持一个无连接的传输协议,该协议称为用户数据报协议(UDP,UserDatagram Protocol) 。UDP为应用程序提供了一-种无需建立连接就可发送封装的IP数据报的方法。
UDP的头
段:UDP传输的段( segment)由8字节的头和有效载荷字段构成。
端口号:两个端口(port) 分别用来标识源机器和目标机器内部的端点。
UDP长度:(UDP Length)字段包含8字节的头和数据两部分的总长度。最小长度是8 个字节,刚好覆盖UDP头。最大长度是65515字节,恰好低于填满16比特的最大字节数,而这是由IP数据包限制的。
校验和:一个可选的校验和(UDP Checksum)字段还提供了额外的可靠性。它校验头、数据和一个概念性的IP伪头。执行校验和计算时,校验和字段先被设置为零,如果数据字段的长度是奇数则用零填充成偶字节。校验和算法很简单,先按16位字的补码相加求和,然后再取总和的补码。因此,当接收端对整个段计算校验和时,要包括UDP校验和字段,正确的结果应该为0。如果发送端没有计算校验和,则将该字段值填为0,因为补码计算结果可能碰巧真的是0,则存储为全1.然而,关闭校验和计算不是明智之举,除非数据传输的质量并不重要(例如,数字化语音)。
远程过程调用
- RPC通过网络将应用程序与熟悉的过程调用抽象连接起来
- 将参数/结果存根打包到消息中
- 带重传的UDP是一种低延迟传输
实时传输协议
RTP(实时传输协议)支持通过UDP发送实时数据,通常作为应用程序的一部分实现