-
定义:UDP 是User Datagram Protocol的简称, 中文名是用户数据报协议,是OSI(Open System Interconnection,开放式系统互联) 参考模型中一种无连接的传输层协议,提供面向事务的简单不可靠信息传送服务。
-
功能:UDP的功能相对简单,只在IP基础之上增加了端口功能和差错检测功能,它提供无连接的、不可靠的、无确认的端对端数据传送服务。
-
特点
- 无连接。使用UDP传输数据时不需要建立和释放连接,从而减少了数据传输的开销和时延。
- 无确认和拥塞控制功能。不能保证数据传输的正确性和可靠性。
- 传输效率高。UDP数据单元由首部和数据两部分组成,其首部仅有8个字节,短小精悍,所以传输数据的效率比较高。
- UDP是面向报文的。UDP不具有报文的分段和重组功能,当它发送的报文太长时,向下交给IP层后,IP层在传送时可能需要进行分片处理。
- UDP支持一对一、一对多、多对一和多对多的交互通信。
-
定义:TCP(Transmission Control Protocol 传输控制协议)是一种面向连接(连接导向)的、可靠的、基于IP的传输层协议。
-
功能:TCP协议主要用于在主机间建立一个虚拟连接,以实现高可靠性的数据包交换。在该协议传输模式中在将数据包成功发送给目标计算机后,TCP会要求发送一个确认,如果在某个时限内没有收到确认,那么TCP将重新发送数据包。另外,在传输的过程中,如果接收到无序、丢失以及被破坏的数据包,TCP还可以负责恢复。
-
特点
- TCP是面向连接的运输层协议。
- 每一条TCP连接只能有两个端点(endpoint),点对点。
- TCP提供可靠交付的服务,无差错、不丢失、不重复,并且按序到达。
- TCP提供全双工通信(双向通信)。
- TCP面向字节流。面向字节流的含义是:虽然应用程序和TCP的交互是一次一个的数据块,但TCP把应用程序交下来的数据仅仅看成是一连串的无结构的字节流。TCP并不知道所传送的字节流的含义。