一、基本介绍:
TCP:传输控制协议。tcp是一种面向连接的、可靠的、基于字节流的传输层通信协议。是专门为了在不可靠的互联网络上提供一个可靠的端对端的字节流设计的,面向字节流。
UDP:用户数据报协议。udp是一个简单的面向数据报的运输层协议。它不提供可靠性,只是把应用程序传给IP层的数据包发送出去,但是不能保证他们能到达目的地。由于UDP在传输数据报前不用在客户和服务器之间建立一个连接,且没有超时重发机制,所以传输速度很快。
二、区别:
- tcp 是面向连接的,可靠性高;(由于tcp是面向连接的通信,需要三次握手、重新确认等连接过程,会有延时,实时性差,由于协议所致,安全性较高)
udp 是面向无连接的,可靠性较低。(udp无建立连接的过程,因而实时性较强,安全性略差) - tcp 保证数据顺序,利用seq序列号对包进行排序;
udp无法保证包序,需要在应用层进行编号。 - tcp是面向字节流的;
udp是面向报文的 - tcp 有流量控制;
udp没有拥塞控制。 - 每条tcp 连接只能是点到点的;
udp支持一对一,一对多,多对一,多对多的交互通信。 - TCP 提供全双工通信;
UDP不可靠信道通信。 - 在传输相同大小的数据时,tcp头部开销20字节,usp头部开销8字节。tcp报头比udp复杂,故实际包含的用户数据较少。tcp无丢包,而udp有丢包,故