首页 > 代码库 > 对TCP/IP协议的一些看法(12):UDP协议

对TCP/IP协议的一些看法(12):UDP协议

UDP协议相比于TCP来说,也是不可靠的传输协议。那么什么场合下采用UDP协议呢:

1.高效可靠的环境下

2.由于UDP开销小(1)不用三次握手2)传输过程中不用确认3)不用四次握手),故适合在轻权的环境下通信,例如TFTP、SNMP、DNS和DHCP协议

3.对实时性要求高,例如打电话,你可以听不清几个字,但想必你受不了重复听到很多字吧

4.多播信息或大多是为简短信息的情况下

5.应用场景中心重性能胜于重完整性和安全性

UDP数据包的格式封装包括首部和数据部分,其中首部的字段如下:

源端口号目标端口号总长度校验和

其中端口号表示该数据包到达最终发送到哪一个应用程序,或者是由哪个应用程序传下来交付给下一层的,总长度指的是整个UDP数据包的长度,而不是UDP首部的长度,UDP首部长度一般为8个字节。校验和对于UDP协议来说是一个可选选项,一般不用填写。

总的来说,UDP协议具有以下特点:

1.无连接,即传输数据之前不用建立连接

2.尽最大可能交付,即不保证可靠传输

3.面向报文传输,传输的是UDP数据包

4.没有拥塞控制

5.支持一对一、一对多、多对一和多对多传输

6.UDP首部开销小,只有8个字节

7.基于UDP的应用层协议包括SNMP,TFTP,DNS和DHCP等

 

对TCP/IP协议的一些看法(12):UDP协议