TCP和UDP的优缺点
TCP:
优点:
- 全双工的可靠连接,使得发送的数据有序、不重复、无差错、不丢失,提供的是可靠的服务;
- 提供确认重传机制、流量控制和拥塞控制,保证网络的稳定可靠性;
缺点:
- 每次通信都要建立连接,占用系统资源,导致速度比UDP慢,效率低;
- 通信连接都是一对一的,不提供一对多、多对一和多对多的连接;
- 首部为20字节,较之udp的8个字节,传输的效率低;
- 把数据看成无连接的字节流,容易产生粘包问题。
UDP:
优点:
- 通信不需要建立连接,效率高,不受网络拥塞的影响;
- 首部只有8个字节,节约空间,提高数据传输的效率;
- 无状态的传输协议,速度很快,适用于多媒体视频的传输,面向报文,方便接收。
缺点:
- 无连接,不可靠,数据可靠保障需要交给应用程序来处理;
- 在网络质量不好的时候,及其容易发生丢包。