0% found this document useful (0 votes)
36 views3 pages

Transport Layer Responsibilities

The transport layer is responsible for end-to-end delivery of messages between hosts using protocols like TCP and UDP. It provides process-to-process delivery using port numbers, establishes connections between hosts, multiplexes data from multiple applications, provides congestion control, ensures data integrity, and performs flow control. The main flow control protocols are stop-and-wait, go-back-N, and selective repeat, which differ in sender window size, acknowledgement approach, retransmissions, and supported packet order.

Uploaded by

Rafia Shoukat
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
36 views3 pages

Transport Layer Responsibilities

The transport layer is responsible for end-to-end delivery of messages between hosts using protocols like TCP and UDP. It provides process-to-process delivery using port numbers, establishes connections between hosts, multiplexes data from multiple applications, provides congestion control, ensures data integrity, and performs flow control. The main flow control protocols are stop-and-wait, go-back-N, and selective repeat, which differ in sender window size, acknowledgement approach, retransmissions, and supported packet order.

Uploaded by

Rafia Shoukat
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 3

Computer Network | Transport Layer responsibilities

Prerequisite – Layers of OSI Model


Transport Layer is the second layer of TCP/IP model. It is an end-to-end layer used to
deliver messages to a host. It is termed as end-to-end layer because it provides a point-
to-point connection rather than hop-to- hop, between the source host and destination
host to deliver the services reliably. The unit of data encapsulation in Transport Layer is
a segment.
The standard protocols used by Transport Layer to enhance it’s functionalities are :
TCP(Transmission Control Protocol), UDP( User Datagram Protocol), DCCP( Datagram
Congestion Control Protocol) etc.
Various responsibilities of a Transport Layer –
• Process to process delivery –
While Data Link Layer requires the MAC address (48 bits address contained inside
the Network Interface Card of every host machine) of source- destination hosts to
correctly deliver a frame and Network layer requires the IP address for appropriate
routing of packets , in a similar way Transport Layer requires a Port number to
correctly deliver the segments of data to the correct process amongst the multiple
processes running on a particular host. A port number is a 16 bit address used to
identify any client-server program uniquely.
• End-to-end Connection between hosts –
Transport layer is also responsible for creating the end-to-end Connection between
hosts for which it mainly uses TCP and UDP. TCP is a secure, connection-
orientated protocol which uses a handshake protocol to establish a robust
connection between two end- hosts. TCP ensures reliable delivery of messages
and is used in various applications. UDP on the other hand is a stateless and
unreliable protocol which ensures best-effort delivery. It is suitable for the
applications which have little concern with flow or error control and requires to
send bulk of data like video conferencing. It is a often used in multicasting
protocols.
• Multiplexing and Demultiplexing –
Multiplexing allows simultaneous use of different applications over a network which
are running on a host. Transport layer provides this mechanism which enables us
to send packet streams from various applications simultaneously over a network.
Transport layer accepts these packets from different processes differentiated by
their port numbers and passes them to network layer after adding proper headers.
Similarly Demultiplexing is required at the receiver side to obtain the data coming
from various processes. Transport receives the segments of data from network
layer and delivers it to the appropriate process running on the receiver’s machine.
• Congestion Control –
Congestion is a situation in which too many sources over a network attempt to
send data and the router buffers start overflowing due to which loss of packets
occur. As a result retransmission of packets from the sources increase the
congestion further. In this situation Transport layer provides Congestion Control in
different ways. It uses open loop congestion control to prevent the congestion
and closed loop congestion control to remove the congestion in a network once it
occurred. TCP provides AIMD- additive increase multiplicative decrease , leaky
bucket technique for congestion control.
• Data integrity and Error correction –
Transport layer checks for errors in the messages coming from application layer by
using error detection codes, computing checksums, it checks whether the received
data is not corrupted and uses the ACK and NACK services to inform the sender if
the data is arrived or not and checks for the integrity of data.
• Flow control –
Transport layer provides a flow control mechanism between the adjacent layers of
the TCP/IP model. TCP also prevents the data loss due to a fast sender and slow
receiver by imposing some flow control techniques. It uses the method of sliding
window protocol which is accomplished by receiver by sending a window back to
the sender informing the size of data it can receive.

Difference between Stop and Wait, GoBackN and


Selective Repeat
Reliable data transfers is one of the primary concerns in computer networking. This
service department lies in the hands of TCP. There major flow control protocols – Stop
and Wait, Go Back N, and Selective Repeat.
1. Stop and Wait –
The sender sends the packet and waits for the ACK (acknowledgement) of the
packet. Once the ACK reaches the sender, it transmits the next packet in row. If
the ACK is not received, it re-transmits the previous packet again.
2. Go Back N –
The sender sends N packets which is equal to the window size. Once the entire
window is sent, the sender then waits for a cumulative ACK to send more packets.
On the receiver end, it receives only in-order packets and discards out-of-order
packets. As in case of packet loss, the entire window would be re-transmitted.
3. Selective Repeat –
The sender sends packet of window size N and the receiver acknowledges all
packet whether they were received in order or not. In this case, the receiver
maintains a buffer to contain out-of-order packets and sorts them.The sender
selectively re-transmits the lost packet and moves the window forward.
Differences:
STOP AND

PROPERTIES WAIT GO BACK N SELECTIVE REPEAT

Sender window size 1 N N

Receiver Window size 1 1 N

Minimum Sequence number 2 N+1 2N

Efficiency 1/(1+2*a) N/(1+2*a) N/(1+2*a)

Type of Acknowledgement Individual Cumulative Individual

Supported order at Receiving In-order Out-of-order

end – delivery only delivery as well

Number of retransmissions in

case of packet drop 1 N 1

Where,
• a = Ratio of Propagation delay and Transmission delay,
• At N=1, Go Back N is effectively reduced to Stop and Wait,/li>
• As Go Back N acknowledges the packed cumulatively, it rejects out-of-order
packets,
• As Selective Repeat supports receiving out-of-order packets (it sorts the window
after receiving the packets), it uses Independent Acknowledgement to
acknowledge the packets.

You might also like