Abstract

Transport layer is responsible for delivering data to the
appropriate application process on the host computers. The two most popular
transport layer protocols are Transmission Control Protocol (TCP) and User
Datagram Protocol (UDP). With
the passage of time the
communication scenarios rapidly changes as well as the requirements of the
protocols also changes. UDP and TCP are the transports layers protocols which
are used for communication through internet using packets.in this academic
research paper we are comparing the two prominent protocols of transports layer
which are Transmission Control Protocol and User Datagram Protocol in term of
which situation a particular protocol should be used. The features and short
comings of both TCP and UDP will be discussed.

Keywords—-OSI, Transport Layer, TCP, UDP

Best services for writing your paper according to Trustpilot

Premium Partner
From $18.00 per page
4,8 / 5
4,80
Writers Experience
4,80
Delivery
4,90
Support
4,70
Price
Recommended Service
From $13.90 per page
4,6 / 5
4,70
Writers Experience
4,70
Delivery
4,60
Support
4,60
Price
From $20.00 per page
4,5 / 5
4,80
Writers Experience
4,50
Delivery
4,40
Support
4,10
Price
* All Partners were chosen among 50+ writing services by our Customer Satisfaction Team

Introduction

Open
system interconnection model (OSI) is a conceptual framework that describe how
the process of data commutation takes place in a network.it consist of seven
layers and each layer has a specifics function to perform. OSI layer are
Physical, Data link, Network, Transport, session, application and presentation
layer.1

The following list itemizes some of the common properties that a
transport protocol can be expected to provide:

·        
guarantees message delivery

·        
delivers messages in the same order they
are sent

·        
delivers at most one copy of each
message

·        
supports arbitrarily large messages

·        
supports synchronization between the
sender and the receiver

·        
allows the receiver to apply flow
control to the sender5

·        
supports multiple application processes
on each host

Transport
layer is the 4th layer of Open System Interconnection Model (OSI).
Transport layer guarantees the following features

·        
Reliable delivery of packets

·        
Provides flow controls mechanisms

·        
Provides congestion control mechanism

·        
Provides connection oriented and connectionless
protocols

·        
Multiple connections between hosts

·        
Synchronization between sender and receiver

 

 

The
Internet has already become an essential part of almost all users across the
globe which are increasing day by day.

 

 

 

Literature Review

UDP
is used only a few person in a typical network. there are some internet
application that use UDP such as Domain Name System (DNS) 8, Simple Network Management
Protocol (SNMP) 8, Dynamic Host Configuration Protocol (DHCP) 8 and the
Routing Information Protocol (RIP) 8.many chat room based application have
been proposed like outlook, win popup, akeni but mostly all of them are
implement using TCP protocol which is considered reliable but does not provide
the speed and multicasting as such. For real time voice and video streaming
application UDP is preferred over TCP because of its higher speed. 

TCP
(Transmission Control Protocol) is the most commonly used transport protocol on
the Internet. The reason for this is because TCP offers error correction. When
the TCP protocol is used there is a “guaranteed delivery.” This is due largely
in part to a method called “flow control.” Flow control determines when data
needs to be re-sent, and stops the flow of data until previous packets are
successfully transferred. This works

Because
if a packet of data is sent, a collision may occur. When this happens, the
client re-requests the packet from the server until the whole packet is
complete and is identical to its original. UDP (User Datagram Protocol) is
another commonly used protocol on the Internet. However, UDP is never used to
send important data such as webpages, database information, etc; UDP is
commonly used for streaming audio and video. Streaming media such as Windows
Media audio files, Real Player and others use

UDP
because it offers speed. The reason UDP is faster than TCP is because there is
no form of flow control or error correction. The data sent over the Internet is
affected by collisions, and errors will be present. UDP is only concerned with
speed. This is the main reason why streaming media is not high quality.

The
simplest possible transport protocol is one that extends the host-to-host
delivery service of the underlying network into a process-to-process
communication service. There are likely to be many processes running on any
given host, so the protocol needs to add a level of demultiplexing, thereby
allowing multiple application processes on each host to share the network.
Aside from this requirement, the transport protocol adds no other functionality
to the best-effort service provided by the underlying network protocol 5

In
contrast to a simple demultiplexing protocol like UDP, a more sophisticated
transport protocol is one that offers a reliable, connection-oriented,
byte-stream service. Such a service has proven useful to a wide assortment of
applications because it frees the application from having to worry about
missing or reordered data. The Internet’s Transmission Control Protocol (TCP)
is probably the most widely used protocol of this type; it is also the most
carefully tuned The Internet’s User Datagram Protocol (UDP) is an example of
such a transport5

Transmission
Control Protocol (TCP) provides end?to?end connectivity
specifying how data should be formatted, addressed, transmitted, routed and
received at the destination. TCP is a connection?oriented protocol which means before
communication sender and receiver need to be connected by mean of some
signaling mechanism. TCP is a reliable protocol which mean it guarantees
delivery of the message in order in which they are sent, in case of duplicate
messages only one message is pass to the upper layer, and in case missing
packets receiver request the sender to retransmit that packet. TCP provides
multiple connections between the sender and receiver. arbitrary large message
can be sent, receiver and sender are synchronize.to avoid congestion at the
receiver send there is a flow control machnism.in order to control congestion
over the network there is a congestion control mechanism in TPC protocol.

User Datagram Protocol (UDP) is used as a transport layer
protocol for transfer of data across Internet Protocol based network. The
protocol uses datagrams to deliver the data. UDP is different in many ways with
TCP. As TCP is connection oriented protocol where it set up a connection first
then transfer data and the it terminate the connection, but in UDP there is no
connection establishment between sender and receiver. The messages are broken
into datagrams and send across the network. Each packet act as an individual
message and is handled separately. Since each datagram has to keep more
information than a TCP packet, the size of data it can carry is considerably
low as compared to TCP. All the datagrams can follow any path to reach to the
destination and hence the order in which they reach is not fixed. Neither the
sender sends any acknowledgement to the sender that the datagram is received.
Hence this protocol is considered as unreliable as it does not guarantee that
the whole data reached to the destination or not.

While these were some demerits with UDP yet it is used in various
applications where some data loss is tolerable like multimedia. Since in UDP
there is no acknowledgement service hence the network has lower overhead and
hence a better throughput and thus is faster than TCP which is suitable for the
applications like multi media.2

User Datagram Protocol

User
Datagram Protocol is one of the significant protocol of the internet protocol
suit which was designed by David P Reed in 1980.in user datagram protocol
computer applications can communicate messages usually called datagrams. UDP is
a connectionless oriented protocol which means sender and receiver does not
need any kind of connection before the beginning of the commutation. UDP does
not provide any type of guarantee to the upper layer protocol for message delivery.
It does not guarantee that a packet may not be duplicated or may not be
delivered out of order. Or lost during transmission therefore it is called
unreliable protocol. UDP provides checksum mechanism to ensure data integrity.
Port number are used for addressing different function at the source and
destination of datagram. UDP provides thin veneer over IP services. Multiple
connections are present in order that multiple applications on one host and
communicate with multiple application on another host. In UDP no flow control
mechanism is available so the sender may transmit data faster than the
receiving speed of receiver. If the receiver does not receive the messages at
the speed transmitted by the sender then the forwarded packet will be lost. UDP
does not provide any mechanism for congestion control due to which bandwidth of
the network will not be utilize efficiently. The end points are identified by
ports numbers. There 16 bit port space available in UDP and some port have been
reserved for specific services. Each process that want to communicate with
another process identifies by one or more ports. Ports may be well known or
ephemeral. The well-known port are controlled and assigned by the Internet
Assigned Number Authority (IANA). Well known port are assigned to standard
server while ephemeral ports are assigned to the clients. Ephemeral are not
controlled by IANA and can be used by ordinary user developed programs on most
systems. In UDP there is a checksum to validate the header of the UDP protocol
which was optional in Internet Protocol Version 4 but mandatory in the Internet
Protocol Version 6.UDP header format is

Source Port

Destination Port

Length

Checksum

Data

 

·        
The source port indicate the port of the sending
process.

·        
Destination port indicated the port of the
destination process on the destination host.

·        
Length is the length of these user datagram
including the header of the UDP.

There are various
applications that use UDP as their transport protocol, like Routing information
protocol, Simple network management protocol, Dynamic host configuration
protocol etc 3. Voice traffic and video traffic is generally transmitted over
the network by using UDP protocol. As real-time video and audio streaming
protocols are designed to handle the loss of packets, so there is only a slight
decrease in the quality of audio/video. Since, TCP and UDP, both the protocols
run simultaneously over the same network, many businesses have observed that
increasing UDP traffic from the real-time applications is affecting the
performance of applications that are using TCP protocol such as accounting,
database systems3

Transmission Control Protocol (TCP)

Transmission
control protocol provides more features for application then User Datagram
Protocol. TCP is a connection oriented protocol.it means two processes will
communicate with each other over at TCP connection which need to be established
before the communication. TCP control protocol connection is established in
three steps

·        
SYN bit from one host (client) to another host
(server)

·        
SYN+ACK bit from the host (server) to the host
(client).

·        
ACK bit from host (client) to host (server)

If
any of the steps in connection established does not occur, means that
connection is not established between client and server and there is some type
to instruction in network.

 TCP is a reliable protocol which means it guarantees
that the message will be delivered correctly, in order and without duplication.
TCP transfers a continuous stream of bytes through the network. TCP segments the
data and forward the data at its own choice. TCP ensure reliability by
assigning a sequence number to each and every byte transmitted and wait a
positive acknowledgement from the receiving TCP. the data is retransmitted when
the acknowledgement is not received with in the quantum time. On the receiving
end the TCP reassemble the segments on the basis of sequences number. This
feature eliminate duplicate segments and out of order segments.

TCP
provides a flow control mechanism so that data may not be dropped at the
receiver host. To implement the flow control mechanism the receiver send
acknowledgement back to the sender. It also tells the sender how many bytes it
can receive depending upon the space of its internal bus.

The
facility of multiplexing is also available in TCP just like UDP.

The
transmission control protocol support full duplex transmission it means both
the sender host and the receiver host can transmit data simultaneously. The TCP
segment format is

Source Port

Destination Port

Sequence Number

ACK Sequence Number

Hdrlen

0

flags

Advertised window

options

 

 

0                       8                             16                      31

Source IP Address

Destination IP Address

0

6(TCP)

TCP Length

 

·        
Source Port: this indicated the port number of the
application of the source host

·        
Destination Port: 16 bit destination port number
indicates the port number of the application on the receiver host

·        
The sequence number is the sequence number of the
bytes to be transmitted

·        
ACK No: if the AKC control bit is set than this
field contain the value of next sequence number that the receiver is expecting
to receive

·        
Flag field may be URG, ACK, PSH, RST, SYN and FIN.

The following is a list of
applications that make use of TCP 4:

· File
transfer protocol (FTP)- Providing a mechanism for transferring data files
between systems. All the FTP client-server programs and Web browsers, contain
an implementation of the TCP protocol

. · Hypertext transfer protocol (HTTP)-
Most widely used protocol over the internet to move Web pages across an
internet connection.

 · Interactive mail access protocol
(IMAP)- Allows the clients to access e-mail messages and mailboxes over the
network.

· Post
office protocol (POP)- It provide the clients to read and remove e-mails which
are residing on a remote server. It is also used in e-mail applications.

 · Remote login (Rlogin)- Allows remote
login capability of the network.

 · Simple mail transfer protocol
(SMTP)- The protocol main function is to deliver email from one system to
another.

 · Secure shell (SSH)- Allows the
remote access to computers as well as encryption of the data

 

 

Difference between TCP and UDP

·        
TCP is a connection oriented protocol while UDP is a
connectionless oriented protocol.

·        
TCP is a reliable protocol while UDP is unreliable
protocol. TCP manages message acknowledgment retransmission and time out. A
single message may be sent multiple times. In case of UDP when a message is
sent there is no concept of acknowledgement retransmission or time out.

·        
TCP ensures that the messages must be delivered to
the applications in a particular order in which they are send. If the segments
reach the destination out of order TCP reordered and delivered to the
application while UDP cannot reorder the segments if the reach the destination
out of order.

·        
TCP provides a congestion control mechanism while
UDP does not avoid congestion. The TCP congestion algorithm stops a
sender from over running the capacity of the network. TCP can adopted the
sender rate to network capacity and attempt to avoid potential congestion
situations.

·        
Being connection oriented
protocol TCP does not broad cast the packets to all device on the subnet but
UDP broad cast the packets.

 Differences in basic operation

There is a huge
difference between TCP and UDP on the basis of their basic operation. For TCP,
the connection is established via three way handshake, in which, there is a
process of initiating a connection, acknowledging the connection and
termination of connection. Once, the connection is established between the
communicating hosts, data is transmitted between them in both directions. After
the transmission is over, the connection is terminated. UDP uses a simple
transmission model and does not ensure reliable delivery as and when compared
to the TCP. And thus, the datagrams may arrive out of order, may be duplicated,
or may be lost also due to several factors. Unlike TCP, UDP supports broadcasting
and multicasting6.

 Differences in applications The common
applications that make use of TCP are Web browsing, email and file transfer
etc. TCP controls the size of the segment, it sends the data in the form of
segments, reads the user data as stream of bytes, controls the rate of data
exchange, provides flow control and avoid network congestion. TCP employs a
congestion control mechanism, which is called as window based transmission,
that allows TCP to control congestion in the network. TCP is suitable where
error correction facilities are required which means, where reliable delivery
is required . UDP is suitable for time sensitive applications. It is suitable
for applications where some loss of information is accepted, but in-time
delivery of information is expected. UDP is compatible with both broadcasting
(sending data to all on a network) and multicasting (sending data to all
subscribers). The applications such as Domain Name System (DNS), Trivial file
transfer protocol (TFTP) and online games make use of UDP protocol 6

x

Hi!
I'm Niki!

Would you like to get a custom essay? How about receiving a customized one?

Check it out