区别
1、是否基于连接
tcp是面向连接的协议,而udp是无连接的协议,即tcp是需要连接的,udp是不需要连接的,发送数据不需要连接
2、可靠性和有序性的区别
TCP 提供交付保证(Tcp通过校验和,重传控制,序号标识,滑动窗口、确认应答实现可靠传输),无差错,不丢失,不重复,且按序到达,也保证了消息的 有序性。该消息将以从服务器端发出的同样的顺序发送到客户端,尽管这些消息到网络的另一端时可能是无序的。TCP协议将会为你排好序。
UDP不提供任何有序性或序列性的保证。UDP尽最大努力交付,数据包将以任何可能的顺序到达。
TCP的逻辑通信信道是全双工的可靠信道,UDP则是不可靠信道
3、实时性
UDP具有较好的实时性,工作效率比TCP高,适用于对高速传输和实时性有较高的通信或广播通信。
4、协议首部大小
TCP首部开销20字节; UDP的首部开销小,只有8个字节
5、资源占用
TCP对系统资源要求较多,UDP对系统资源要求较少。
TCP被认为是重量级的协议,而与之相比,UDP协议则是一个轻量级的协议。因为UDP传输的信息中不承担任何间接创造连接,保证交货或秩序的的信 息。这也反映在用于承载元数据的头的大小
优缺点
udp优点
用户数据报协议,是一种无连接的传输层协议,相对于tcp传输不可靠
特点:报文简单,传输速度快,效率快,占用资源少
缺点::不可靠,不稳定
tcp优点
是一种面向连接,可靠的,基于字节流的传输层通信协议
特点:安全,有序
缺点:慢,效率低,占用系统资源高,易被攻击