TCP和UDP的区别主要分为以下几点,理解下面的几点建立在有基本的计算机基础:
1、基于连接&无连接
TCP是面向连接的(我们熟悉的三次握手和四次挥手),UDP不是面向连接的。
2、重量级&轻量级
TCP是一个重量级的协议,而UDP是一个轻量级的协议。因为TCP的头部至少有20个字节,而UDP的头部只有8个字节。
3、可靠性
TCP交付保证:如果消息在传输中丢失,那么它将重发;UDP没有交付保证,一个数据包在运输过程中可能丢失。
4、有序性
消息到达网络的另一端可能是无序的,tcp协议可以将报文进行排序,而UDP没有提供任何有序性的保证。
5、速度
TCP传速速度慢,适合传输大量数据,UDP传输快,适合传输少量数据。
6、流量控制和拥塞控制
TCP具有流量控制和拥塞控制,而UDP没有。
7、面向对象
TCP面向字节流,而UDP面向报文。
8、传播方式
TCP只能单播,不能发送广播和组播,UDP可以广播和组播。