Image result for tcp vs udp
There are two types of Internet Protocol (IP) traffic. They are TCP or Transmission Control Protocol and UDP or User Datagram Protocol. TCP is connection oriented – once a connection is established, data can be sent bidirectional. UDP is a simpler, connectionless Internet protocol. Multiple messages are sent as packets in chunks using UDP.



Acronym for  
             TCP 

Transmission Control Protocol
 UDP

User Datagram Protocol or 
Universal Datagram Protocol
Connection  
TCP is a connection-oriented
 protocol.
UDP is a connectionless 
protocol.


Function
As a message makes its way across
the internet from one computer to 
another. This is connection based.
UDP is also a protocol used
 in message transport or 
transfer. This is not a connection
based which means that one
the program can send a load of
packets to another and that
would be the end of the 
relationship.


Usage
TCP is suited for applications that 
require high reliability, and 
transmission time is relatively
less critical.
UDP is suitable for applications
that need fast, efficient
transmission, such as games.
UDP’s stateless nature is also
useful for servers that answer
small queries from huge
numbers of clients.
Use by other protocols
HTTP, HTTPs, FTP, SMTP, Telnet
DNS, DHCP, TFTP, SNMP,
RIP, VOIP.

The ordering of data packets
TCP rearranges data packets in the
order specified.
UDP has no inherent order as
all packets are independent
of each other. If ordering is
required, it has to be managed
by the application layer.

Speed of transfer
The speed for TCP is slower than
UDP.
UDP is faster because error
recovery is not attempted.
It is a “best effort” protocol.


Reliability
There is an absolute guarantee 
that the data transferred remains 
intact and arrives in the same 
order in which it was sent.
There is no guarantee that
the messages or packets
sent would reach at all.
Header Size
TCP header size is 20 bytes
UDP Header size is 8 bytes.
Common Header Fields
Source port, Destination port, 
Check Sum
Source port, Destination port,
Check Sum


Streaming of data
Data is read as a byte stream, 
no distinguishing indications 
are transmitted to signal 
message (segment) boundaries.
Packets are sent individually
and are checked for integrity only if they arrive. Packets have definite boundaries which are honored
upon receipt, meaning a read operation at the receiver socket will yield an entire message as it was originally sent.


Weight
TCP is heavy-weight. TCP requires
three packets to set up a socket connection before any user data
can be sent. TCP handles reliability
and congestion control.
UDP is lightweight.
There is no ordering of messages, no tracking connections, etc. It is a small transport layer designed on top of IP.


Data Flow Control
TCP does Flow Control. TCP
requires three packets to set
up a socket connection before
any user data can be sent. TCP
handles reliability and congestion
control.
UDP does not have an option for flow control


Error Checking
TCP does error checking and 
error recovery. Erroneous packets
are retransmitted from the source
to the destination.
UDP does error
checking but simply discards erroneous packets. Error recovery is not attempted.


Fields
1.Sequence Number, 2.AcK
number, 3. Data offset 4. Reserved, 5.Control bit, 6.Window,7.Urgent Pointer 
8.Options, 9.Padding, 10.CheckSum, 11.Source port, 12.Destination port
1. Length, 2. Source port, 3. Destination
port, 4. CheckSum
Acknowledgment
Acknowledgment segments
No Acknowledgment
Handshake
SYN, SYN-ACK, ACK
No handshake (connectionless protocol)

LEAVE A REPLY

Please enter your comment!
Please enter your name here