User Datagram Protocol(UDP)详解

UDP协议
    UDP是User Datagram Protocol(用户数据报协议)的英文缩写。 UDP只提供一种基本的、低延迟的被称为数据报的通讯。所谓数据报,就是一种 自带寻址信息,从发送端走到接收端 的数据包。UDP协议经常用于路由表数据交换转发和系统信息、网络监控数据等的交换。UDP协没有TCP那样的三次握手并且基于数据报,因此UDP 不基于连接 ,也没有TCP那样丰富的头信息以实现诸多功能。

    UDP数据报的头只包含了类似于TCP中包含的UDP源端口、UDP目的端口号、两个字节的校验和域、两个字节的信息长度域(用来告诉接收端信息的大小,让接收端判断信息是否有效)。

    由于UDP协议是如此简单,所以 不要指望UDP连接会像TCP连接那样可靠,它一点都不可靠 ,UDP只负责尽力的转发数据包,但是却 不会把错误的数据报重新发送 它会丢弃掉所有被破坏或者损坏的数据报,并且继续后面的传送,至于被丢弃的部分,发送端不知道,也不会被接收端要求重新发送; 除此之外,UDP不具备把乱序到达的数据报重新排列的功能(因为没有TCP头中包含的TCP序列号),这样一来,UDP便是完全不可靠的,因为你根本就无法保证你收到的数据是完整的。但是,UDP协议的不可靠并不代表UDP是毫无用处的,恰恰相反,没有了和TCP一样的复杂头信息,各种设备处理UDP数据报的时间将会大大缩短,效率比TCP要高得多,你可以想象,你看13页书比看4页书需要用的时间谁会更多。由于UDP处理的这种高效性,UDP往往被用于那些数据报不断出现的应用,比如IP电话或者实时视频会议,也被用于在路由器之间传输路由表更新信息、传送网络管理和监控数据等,DNS也是使用UDP协议进行域名转换。

你可能感兴趣的:(User Datagram Protocol(UDP)详解)