UDP是一种比较简单的协议,基本上是基于ip协议没有做太多的扩展,属于传输层协议。
基于ip协议做了哪些事情呢?
1、多路复用和多路分用在传输层是一种必要的技术。
2、增加了一个校验和,在发送方会计算校验和,接收方重新计算校验和并比对,从而判断这个报文段在发送过程中是否发生错误。
UDP提供的服务是“尽最大努力服务”,UDP是无连接的协议,UDP传输的报文段可能“丢失”,“非按序到达”。
UDP头部8字节,TCP头部20字节,UDP报文段开销小。
使用UDP协议,要实现可靠传输,需要程序员在应用层通过代码实现,(编号机制,确认机制,超时重传)。
UDP报文结构如下:
checksum为校验和,错误校验遵循端到端的原则。
校验和计算示例: