TCP和UDP协议是传输层非常重要的两个协议,这两个协议在数据传输中起着非常重要的作用,前面两篇文章讲解了这两个协议各自的特点,本文来讲解一下这两个协议有什么区别。
1 TCP和UDP对比
1.1 从各自的特点来看
(1)TCP是面向连接的,而UDP是无连接的;
TCP发送数据前先要建立连接,而UDP发送数据前不需要建立连接。
(2)TCP保证可靠性,UDP不保证可靠性;
TCP具有很多的可靠性保证机制(TCP的连接管理、超时重传、序号和确认序号、流量控制和拥塞控制都能保证TCP数据包能够无差错、不丢失、按序到达),但是UDP没有这些可靠性保证机制,因此UDP就无法保证可靠性。
(3)TCP面向字节流,UDP面向数据报;
TCP接收和发送数据就像流水一样,可以一次接收多个,或者一次接收少半部分但是可以接收多次;但是UDP发送多少就要接收多少,如果接收的数据少于发送的数据,那么少的那部分数据永远也接收不到了。