UDP的全称是User Datagram Protocol,既用户数据报协议。UDP与TCP不一样,UDP不提供可靠的传输模式,因为它不是面向连接的机制,在UDP的传输过程中,接收端在接收到数据包之后,不会回复响应数据包(ACK)给发送端,所以数据包并没有像TCP数据包有较为严密的检查机制。
TCP数据包确实是比较可靠的,因为通过三次握手。不过正由于这个原因,TCP数据包的传输速度会比较慢。而UDP数据包由于不需要确认对方是否正确的收到数据(打个比方,老师讲课,一直在讲。学生有没有在听老师讲的啥老师也不知道),故报头数据较少,所以这样一来UDP可以在Data处填入更多的数据。
UDP比较适合需要实时反应的一些数据流,如影像实时传输软件等,就可以使用这类的数据包传送。UDP传输协议并不考虑连接的要求,连接终止与流量控制等特性。还有比如我们用cacti作一个机柜的流量监控图时也会用到UDP端口。
查询主机名的DNS服务就同时提供了UDP/TCP协议,由于UDP较快,所以Client端可以先使用UDP来与服务连接,如果无法取得正确的数据时,就转换为TCP传输协议。快速与稳定都可兼得!