📜  TCP与UDP-JavaPoint

📅  最后修改于: 2020-11-10 04:43:38             🧑  作者: Mango

TCP与UDP

什么是TCP?

TCP代表传输控制协议。如果我们希望两台计算机之间的通讯和通讯应该良好而可靠。例如,我们要查看网页,然后希望页面上什么都没有丢失,或者我们要下载文件,然后我们需要完整的文件,即什么都不应该丢失,它可以是文本或图像。由于TCP,这只能是可能的。它是TCP / IP网络上使用最广泛的协议之一。

TCP功能

以下是TCP的功能:

  • 数据传输TCP协议可确保正确接收数据,不丢失任何数据且井井有条。如果未使用TCP协议,则可能会接收到错误的数据或导致数据混乱。例如,如果我们尝试在不使用TCP的情况下查看网页或下载文件,则可能会丢失某些数据或图像。
  • 协议TCP是一种面向连接的协议。通过面向连接一词,我们了解到计算机首先建立连接,然后进行通信。这是通过使用三向握手完成的。在三向握手中,第一个发送方将SYN消息发送到接收方,然后接收方发回SYN ACK消息以确认已接收到该消息。接收到SYN ACK消息后,发送方将确认消息发送给接收方。这样,在计算机之间建立了连接。建立连接后,将传送数据。该协议保证了数据传递,意味着如果未接收到数据,则TCP将重新发送数据。

什么是UDP?

UDP代表用户数据报协议。它的工作方式类似于TCP,因为它也用于发送和接收消息。主要区别在于UDP是无连接协议。在这里,无连接意味着在通信之前没有建立连接。它也不保证数据包的传送。甚至不关心数据是否已在接收器端接收,因此也称为“即发即弃”协议。它也被称为“发射后遗忘”协议,因为它发送数据并且不关心是否接收到数据。 UDP比TCP更快,因为它不能保证包的传递。

TCP和UDP之间的差异

  • 协议类型TCP和UDP这两个协议都是传输层协议。 TCP是面向连接的协议,而UDP是无连接协议。这意味着TCP在通信之前需要连接,但是UDP不需要任何连接。
  • 可靠性TCP是一种可靠的协议,因为它可以确保数据的传递。它遵循确认机制。在这种机制中,发送方从接收方接收确认,并检查确认是肯定的还是否定的。如果ACK为肯定值,则表示已成功接收数据。如果ACK为负,则TCP将重新发送数据。它还遵循流和错误控制机制。 UDP是不可靠的协议,因为它不能确保数据的传递。
  • 流控制TCP遵循流控制机制,以确保不会同时将大量数据包发送到接收器,而UDP不遵循流控制机制。
  • 排序TCP使用排序和排序技术来确保以发送数据包的相同顺序接收数据包。另一方面,UDP不遵循任何排序和排序技术。即,数据可以按任何顺序发送。
  • 速度由于TCP在发送方和接收方之间建立连接,执行错误检查并保证数据包的传送,而UDP既不创建连接也不保证数据包的传送,因此UDP比TCP更快。
  • 数据流在TCP中,数据可以双向流动,这意味着它提供了全双工服务。另一方面,UDP主要适用于数据的单向流。

让我们以表格形式查看TCP和UDP之间的区别。

TCP UDP
Full form It stands for Transmission Control Protocol. It stands for User Datagram Protocol.
Type of connection It is a connection-oriented protocol, which means that the connection needs to be established before the data is transmitted over the network. It is a connectionless protocol, which means that it sends the data without checking whether the system is ready to receive or not.
Reliable TCP is a reliable protocol as it provides assurance for the delivery of data packets. UDP is an unreliable protocol as it does not take the guarantee for the delivery of packets.
Speed TCP is slower than UDP as it performs error checking, flow control, and provides assurance for the delivery of UDP is faster than TCP as it does not guarantee the delivery of data packets.
Header size The size of TCP is 20 bytes. The size of the UDP is 8 bytes.
Acknowledgment TCP uses the three-way-handshake concept. In this concept, if the sender receives the ACK, then the sender will send the data. TCP also has the ability to resend the lost data. UDP does not wait for any acknowledgment; it just sends the data.
Flow control mechanism It follows the flow control mechanism in which too many packets cannot be sent to the receiver at the same time. This protocol follows no such mechanism.
Error checking TCP performs error checking by using a checksum. When the data is corrected, then the data is retransmitted to the receiver. It does not perform any error checking, and also does not resend the lost data packets.
Applications This protocol is mainly used where a secure and reliable communication process is required, like military services, web browsing, and e-mail. This protocol is used where fast communication is required and does not care about the reliability like VoIP, game streaming, video and music streaming, etc.