TCP vs UDP: What's the Difference?

What is TCP?

TCP/IP helps you to determine how a specific computer should be connected to the internet and how you can transmit data between them. It helps you to create a virtual network when multiple computer networks are connected.

TCP/IP stands for Transmission Control Protocol/ Internet Protocol. It is specifically designed as a model to offer highly reliable and end-to-end byte stream over an unreliable internetwork.

In this tutorial, you will learn:

What is UDP?

UDP is a Datagram oriented protocol. It is used for broadcast and multicast type of network transmission. The full form of UDP is User Datagram Protocol (A datagram is a transfer unit associated with a packet-switched network.) The UDP protocol works almost similar to TCP, but it throws all the error-checking stuff out, all the back-and-forth communication and deliverability.

KEY DIFFERENCES:

  • TCP is a connection-oriented protocol, whereas UDP is a connectionless protocol.
  • The speed for TCP is slower while the speed of UDP is faster
  • TCP uses handshake protocol like SYN, SYN-ACK, ACK while UDP uses no handshake protocols
  • TCP does error checking and also makes error recovery, on the other hand, UDP performs error checking, but it discards erroneous packets.
  • TCP has acknowledgment segments, but UDP does not have any acknowledgment segment.
  • TCP is heavy-weight, and UDP is lightweight.

How TCP work?

A TCP connection is established with the help of three-way handshake. It is a process of initiating and acknowledging a connection. Once the connection is established, data transfer begins, and when the transmission process is finished, the connection is terminated by the closing of an established virtual circuit.

How UDP work?

UDP uses a simple transmission method without implied hand-shaking dialogues for ordering, reliability, or data integrity. UDP also assumes that error checking and correction is not important or performed in the application, to avoid the overhead of such processing at the network interface level. It is also compatible with packet broadcasts and multicasting.

Features of TCP

Here, are some important features of TCP

Here, are some important feature of UDP:

Difference between TCP and UDP

Here, are the differences between TCP and UDP

TCP UDP
It is a connection-oriented protocol. It is a connectionless protocol.
TCP reads data as streams of bytes, and the message is transmitted to segment boundaries. UDP messages contain packets that were sent one by one. It also checks for integrity at the arrival time.
TCP messages make their way across the internet from one computer to another. It is not connection-based, so one program can send lots of packets to another.
TCP rearranges data packets in the specific order. UDP protocol has no fixed order because all packets are independent of each other.
The speed for TCP is slower. UDP is faster as error recovery is not attempted.
Header size is 20 bytes Header size is 8 bytes.
TCP is heavy-weight. TCP needs three packets to set up a socket connection before any user data can be sent. UDP is lightweight. There are no tracking connections, ordering of messages, etc.
TCP does error checking and also makes error recovery. UDP performs error checking, but it discards erroneous packets.
Acknowledgment segments No Acknowledgment segments
Using handshake protocol like SYN, SYN-ACK, ACK No handshake (so connectionless protocol)
TCP is reliable as it guarantees delivery of data to the destination router. The delivery of data to the destination can't be guaranteed in UDP.
TCP offers extensive error checking mechanisms because it provides flow control and acknowledgment of data. UDP has just a single error checking mechanism which is used for checksums.

Application of TCP

Here, are pros/benefits of using the TCP/IP model:

Application of UDP

Advantage of TCP

Here, are pros/benefits of TCP:

Advantage of UDP

Here are the pros/benefits of UDP:

Disadvantages of TCP

Here, are disadvantage of using TCP:

Disadvantages of UDP

Here, are important cons/drawback of UDP:

When to use UDP and TCP?

 

YOU MIGHT LIKE: