首先明白TCP与UDP的定义:
TCP定义
TCP(Transmission Control Protocol 传输控制协议)是一种面向连接的、可靠的、基于字节流的传输层通信协议,由IETF的RFC 793定义。
UDP定义
UDP (User Datagram Protocol 用户数据报协议)是OSI(Open System Interconnection开放式系统互联) 参考模型中一种无连接的传输层协议,提供面向事务的简单不可靠信息传送服务。
TCP与UDP区别
- TCP提供的是面向连接的、可靠的数据流传输;
UDP提供的是非面向连接的、不可靠的数据流传输。
- TCP提供可靠的服务,通过TCP连接传送的数据,无差错、不丢失,不重复,按序到达;
UDP尽最大努力交付,即不保证可靠交付。
- TCP面向字节流;
UDP面向报文。
- TCP连接只能是点到点的;
UDP支持一对一、一对多、多对一和多对多的交互通信。
- TCP首部开销20字节;
UDP的首部开销小,只有8个字节。
- TCP的逻辑通信信道是全双工的可靠信道;
UDP的逻辑通信信道是不可靠信道。