TCP和UDP区别:
1.连接
TCP是面向连接的传输层协议,传输数据前先要建立连接。
UDP是不需要连接的,即刻就可以传输数据。
2.服务对象
TCP是一对一的两点服务,也就是说一条连接只有两个端点。
UDP支持一对一,一对多,多对多的交互通信。
3.可靠性
TCP是要保证可靠交付数据的,数据无差错,不丢失,不重复,按序到达。
UDP是尽最大努力交付,不保证可靠交付数据。
4.拥塞控制,流量控制
TCP有拥塞控制和流量控制,保证了数据传输的安全性。
UDP则没有,即使网络堵塞,也不会影响UDP的发送速率。
5.首部开销
TCP 首部长度较长,会有一定的开销,首部在没有使用「选项」字段时是 20
个字节,如果使用了「选项」字段则会变长的。
UDP首部只有8个字节,并且 是固定不变的,开销较小。
6.传输方式
TCP是流式传输,没有边界,但是保证顺序和可靠
UDP是一个包一个包的发送,是有边界的,但是可能会丢包和乱序。
7.分片不同
TCP的数据大小如果大于MSS大小,则会在传输层进行分片,目标主机收到后,也会同样在传输层组装TCP数据包,如果中途丢失了一个分片的话,那么只需要传输丢失的分片即可。
UCP的数据大小如果大于MTU大小,则会在IP层进行分片,目标主机收到后,在IP层组装完数据,接着再传输给传输层。
TCP和UDP的应用场景:
由于TCP是面向连接的,能保证数据的可靠性交付,因此经常用于:
1.FTP文件传输
2.HTTP/HTTPS
由于UDP面向无连接,它可以随时发送数据,再加上UDP本身的处理既简单而又高效,因此经常用于:
1.包总量较少的通信,如DNS,SNMP
2.视频或者音频等多媒体通信
3.广播通信
标签:UDP,场景,首部,TCP,分片,传输层,连接 From: https://www.cnblogs.com/huwy-123/p/17583080.html