您现在的位置是:首页 >技术教程 >【新星计划·2023】TCP协议与UDP协议讲解网站首页技术教程

【新星计划·2023】TCP协议与UDP协议讲解

Insist-- 2024-06-28 18:01:02
简介【新星计划·2023】TCP协议与UDP协议讲解

前言

对于TCP协议与UDP协议,大家应该都有所耳闻。我们常用的网络通讯,比如浏览网页,软件聊天,都是通过这两种协议来进行数据传输的,下面我就来给大家讲解一下这两个协议。

一、什么是TCP、UDP

TCP(Transmission Control Protocol传输控制协议):  是一种面向连接的、可靠的、基于字节流的传输层通信协议,使用三次握手协议建立连接、四次挥手断开连接。面向连接意味着两个使用TCP的应用(通常是一个客户端和一个服务器)在彼此交换数据包之前必须先建立一个TCP连接。在TCP连接中,仅能两方进行彼此通信,广播和多播不能用TCP。

TCP协议的作用:保证数据通信的完整性和可靠性,防止丢包。

UDP(User Datagram Protocol用户数据报协议): 是OSI(Open System Interconnection开放式系统互联)参考模型中一种无连接的传输层协议,提供面向事务的简单不可靠信息传送服务。

UDP协议的主要作用:将网络数据流量压缩成数据包的形式。

二、TCP与UDP的区别

8791f3039d2b4047b26f9e22f53fed64.jpg

1、连接方面

TCP是面向连接的,而UDP是无连接的协议。

2、安全方面

TCP对于传输有用的数据非常可靠,因为它需要确认发送的信息。此外,重新发送丢失的数据包(如果有)。而在UDP的情况下,如果数据包丢失,它不会请求重新传输,目标计算机会收到损坏的数据。因此,UDP 是一种不可靠的协议。

3、速度方面

与UDP相比,TCP速度较慢,因为TCP在传输数据之前建立连接,并确保数据包的正确传递。另一方面,UDP不承认是否接收了传输的数据。

4、大小方面

UDP的标头大小为8个字节,TCP的标头大小是两倍多。TCP 标头大小为20字节,TCP 标头包含选项、填充、校验和、标志、数据偏移量、确认号、序列号、源端口和目标端口等。

5、纠错方面

TCP 和 UDP 都可以检查错误,但只有 TCP 可以纠正错误,因为它同时具有拥塞和流量控制。

总结

TCP:安全、可靠、标头大,面向连接,可纠正错误,但是传输速度慢。

UDP:不安全、不可靠、标头小,不面向连接,不可纠正错误,但是传输速度快。

TCP和UDP对于数据传输都是必不可少的。

三、TCP 与 UDP 的应用场景

从区别上我们已经知道,TCP 是可靠的但传输速度慢 ,UDP 是不可靠的但传输速度快。因此在选用具体协议通信时,应该根据通信数据的要求而决定。

若通信数据完整性需让位与通信实时性,则应该选用 TCP 协议(如文件传输、重要状态的更新等);反之,则使用 UDP 协议(如视频传输、实时通信等)。

1、什么时候应该使用TCP

对网络通讯质量有要求的时候,比如:你要将整个数据要准确无误的传递给对方,这往往用于一些要求可靠的应用,比如HTTP、HTTPS、FTP等传输文件的协议,POP、SMTP等邮件传输的协议。

2、什么时候应该使用UDP

当对网络通讯质量要求不高的时候,要求网络通讯速度能尽量的快,这时就可以使用UDP。

风语者!平时喜欢研究各种技术,目前在从事后端开发工作,热爱生活、热爱工作。