TCP协议与UDP协议的区别
2021-05-03 本文已影响0人
zhang_wq
连接
- TCP面向连接,且连接时全双工通信;传输数据前需要通过三次握手建立连接,数据传输完需要关闭连接时通过四次挥手断开连接;每条连接仅支持一对一。
- UTP无连接,传输数据时无需建立连接;支持一对一、一对多、多对一、多对多通信。
可靠性
- TCP保证可靠传输,即数据无差错、不丢失、不重复、且有序;通过校验和、包有序、ACK、超时重试、滑动窗口以及拥塞控制,来确保可靠以及传输效率。
- UDP尽最大努力交付,不确保传输可靠。
传输速度
- TCP由于有各种机制,来确保数据传输的可靠性,所以传输速度上相对低。
- UDP没有其他机制,所以传输速度上相对高。
资源占用
- TCP有连接,所以需要占用的资源相对多;每个连接大约占3K左右的内存,如果作为客户端还需要占用一个端口。
- UDP无连接,所以需要占用的资源相对少。
数据
- TCP报文段的首部占用20字节。
- UDP报文段的首部占用8字节。