详细介绍TCP和UDP之间的区别
作者:admin 时间:2022-7-28 11:10:53 浏览:TCP(传输控制协议)和UDP(用户数据报协议)是用于数据传输的互联网协议,它们有许多相似之处和不同之处。在本文中,我们将深入地理解TCP和UDP之间的区别。
什么是 TCP?
TCP代表传输控制协议,它是一种通信标准或协议,用于在两个设备之间建立连接以通过网络交换消息。它旨在通过 Internet 以包的形式发送消息。TCP 的常见示例是点对点共享方法,如 FTP(文件传输协议)、telnet 等。
TCP 是如何工作的?
TCP 允许数据双向发送,即应用程序和 Internet 协议(通常缩写为 TCP/IP)之间的通信,因此可以同时发送和接收数据。TCP 协议使用数据包来传输数据。应用程序不需要在传输媒体或其他技术上进行数据包分段。
TCP 跟踪分段,这些分段是数据传输的各个单元,消息被分隔成有效的网络路由,而 IP 负责实际的数据传递。操作系统网络协议栈中的 TCP 软件负责建立和终止端到端连接以及数据传输。
让我们看看 TCP/IP 从头到尾的工作原理。
第 1 步 - 建立连接
- 当两台计算机想通过 TCP 相互发送数据时,它们首先需要使用三次握手建立连接。
- 在这里,第一台计算机发送一个数据包,其中SYN位设置为111111(SYN = "synchronize?") 到第二台机器。
- 第二台计算机回复,ACK位设置为111111(ACK = "acknowledge!") 并且SYN位设置为111111在一个数据包中。使用ACK,第一台计算机做出响应。
第 2 步 - 发送数据包
- 当数据包通过 TCP 传输时,接收方必须始终确认收到数据。
- 第一台计算机发送带有序列号的数据包。
- 通过设置ACK位并将确认号增加接收数据的长度,第二台计算机对其进行确认。
第 3 步 - 关闭连接
- 当他们不再想发送或接收数据时,任何一台计算机都可以关闭连接。
- 计算机通过发送一个将FIN位设置为11(FIN = 完成)。
- 另一台计算机回复一个ACK 和另一个FIN。在来自发起计算机的另一个 ACK 之后,连接被关闭。
TCP的应用
- 简单邮件传输协议- 用于将电子邮件消息从一台机器传输到另一台机器的 TCP/IP 标准协议是简单邮件传输协议。
- TELNET - TELNET 是 TCP/IP 协议系列中包含的简单远程桌面协议。TELNET 允许一个站点的用户通过 TCP 连接连接到另一个站点的登录服务器。
- Rlogin - 支持可信主机的远程登录服务 rlogin 包含在从BSD UNIX派生的操作系统中。它使系统管理员能够选择一组共享登录名和文件访问保护的机器,并在用户登录之间建立等效性。
- 文件传输协议- 文件传输是最常用的 TCP/IP 应用程序之一,占网络流量的很大一部分。
- 普通文件传输协议- TCP/IP 套件包括第二个文件传输协议,可提供低成本、简单的服务。普通文件传输协议 (TFTP) 专为不需要客户端和服务器之间复杂交互的应用程序而设计。
什么是UDP?
UDP(用户数据报协议)是一种类似于 TCP(传输控制协议)的通信协议。
然而,它是一种无连接协议,与 TCP 不同。因为在数据交付之前永远不会形成 UDP 连接,所以可以快速交换数据。*,与TCP不同,UDP不保证数据包的成功传递,数据包在传输过程中可能会丢失,存在安全隐患。
UDP 的示例包括域网络系统 (DNS)、玩 valorant 或 Minecraft 等在线游戏、在线观看视频等。
那么,什么是无连接协议?简单来说,无连接协议是一种标准,它允许数据从一台计算机发送到另一台计算机,而无需确定接收机器是否在线或是否能够接收数据。
UDP 是如何工作的?
UDP 使用 IP 将数据报从一台计算机传输到另一台计算机。在 UDP 数据包中,UDP 获取数据并附加其标头信息。该数据包括源端口和目标端口、数据包的长度和校验和。封装在 IP 数据包中后,UDP 数据包被发送到它们的目的地。
与 TCP 不同,UDP 不保证数据包到达他们想要的目的地。这意味着,与 TCP 不同,UDP 不直接连接到接收计算机。相反,它会将数据发送出去,并依靠发送和接收计算机之间的设备来获取需要发送的数据。
UDP的应用
- UDP 可用于需要无损数据传输的场景。
- 对于感知延迟至关重要的应用程序,如游戏、语音和视频通信,UDP 是一个很好的网络协议。这些示例可以在保持感知质量的同时承受一些数据丢失。
- UDP 也可用于依赖可靠信息交换的应用程序,但这些程序应具有响应数据包的技术。
- 因为它提供分组交换,UDP 也可以用于多播。UDP 也用于一些路由更新协议,例如路由信息协议。
- UDP 可用于速度比可靠性更重要的应用程序。
TCP与UDP之间的区别
结论
在本文中,我们了解了 TCP 和 UDP 及其应用和区别。
TCP和UDP都是用于发送数据位的协议 - 称为数据包,它们都建立在 Internet 协议之上。
- 站长推荐