KEMBAR78
Services Provided by The Transport Layer | PDF | Transmission Control Protocol | Internet Protocols
0% found this document useful (0 votes)
162 views16 pages

Services Provided by The Transport Layer

The transport layer provides logical communication between application processes running on different hosts. It implements protocols like TCP and UDP that provide services like multiplexing, reliable data transfer, and flow control. The transport layer controls lower layers and ensures end-to-end delivery of data between applications across networks.

Uploaded by

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

Services Provided by The Transport Layer

The transport layer provides logical communication between application processes running on different hosts. It implements protocols like TCP and UDP that provide services like multiplexing, reliable data transfer, and flow control. The transport layer controls lower layers and ensures end-to-end delivery of data between applications across networks.

Uploaded by

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

Transport Layer

o The transport layer is a 4th layer from the top.


o The main role of the transport layer is to provide the communication services directly to the
application processes running on different hosts.
o The transport layer provides a logical communication between application processes running on
different hosts. Although the application processes on different hosts are not physically
connected, application processes use the logical communication provided by the transport layer
to send the messages to each other.
o The transport layer protocols are implemented in the end systems but not in the network
routers.
o A computer network provides more than one protocol to the network applications. For example,
TCP and UDP are two transport layer protocols that provide a different set of services to the
network layer.
o All transport layer protocols provide multiplexing/demultiplexing service. It also provides other
services such as reliable data transfer, bandwidth guarantees, and delay guarantees.
o Each of the applications in the application layer has the ability to send a message by using TCP or
UDP. The application communicates by using either of these two protocols. Both TCP and UDP
will then communicate with the internet protocol in the internet layer. The applications can read
and write to the transport layer. Therefore, we can say that communication is a two-way
process.

Services provided by the Transport Layer


The services provided by the transport layer are similar to those of the data link layer. The data link layer
provides the services within a single network while the transport layer provides the services across an
internetwork made up of many networks. The data link layer controls the physical layer while the
transport layer controls all the lower layers.

The services provided by the transport layer protocols can be divided into five categories:

o End-to-end delivery
o Addressing
o Reliable delivery
o Flow control
o Multiplexing

End-to-end delivery:- The transport layer transmits the entire message to the destination.
Therefore, it ensures the end-to-end delivery of an entire message from a source to the destination.

Reliable delivery:- The transport layer provides reliability services by retransmitting the lost and
damaged packets.

The reliable delivery has four aspects:

o Error control
o Sequence control
o Loss control
o Duplication control

Error Control
o The primary role of reliability is Error Control. In reality, no transmission will be 100 percent
error-free delivery. Therefore, transport layer protocols are designed to provide error-free
transmission.
o The data link layer also provides the error handling mechanism, but it ensures only node-to-
node error-free delivery. However, node-to-node reliability does not ensure the end-to-end
reliability.
o The data link layer checks for the error between each network. If an error is introduced inside
one of the routers, then this error will not be caught by the data link layer. It only detects those
errors that have been introduced between the beginning and end of the link. Therefore, the
transport layer performs the checking for the errors end-to-end to ensure that the packet has
arrived correctly.

Sequence Control

o The second aspect of the reliability is sequence control which is implemented at the transport
layer.
o On the sending end, the transport layer is responsible for ensuring that the packets received
from the upper layers can be used by the lower layers. On the receiving end, it ensures that the
various segments of a transmission can be correctly reassembled.

Loss Control:- Loss Control is a third aspect of reliability. The transport layer ensures that all the
fragments of a transmission arrive at the destination, not some of them. On the sending end, all the
fragments of transmission are given sequence numbers by a transport layer. These sequence numbers
allow the receiver?s transport layer to identify the missing segment.

Duplication Control:- Duplication Control is the fourth aspect of reliability. The transport layer
guarantees that no duplicate data arrive at the destination. Sequence numbers are used to identify the
lost packets; similarly, it allows the receiver to identify and discard duplicate segments.
Flow Control:- Flow control is used to prevent the sender from overwhelming the receiver. If the
receiver is overloaded with too much data, then the receiver discards the packets and asking for the
retransmission of packets. This increases network congestion and thus, reducing the system
performance. The transport layer is responsible for flow control. It uses the sliding window protocol that
makes the data transmission more efficient as well as it controls the flow of data so that the receiver
does not become overwhelmed. Sliding window protocol is byte oriented rather than frame oriented.

Multiplexing:-The transport layer uses the multiplexing to improve transmission efficiency.


Multiplexing can occur in two ways:

o Upward multiplexing: Upward multiplexing means multiple transport layer connections use the
same network connection. To make more cost-effective, the transport layer sends several
transmissions bound for the same destination along the same path; this is achieved through
upward multiplexing.

o Downward multiplexing: Downward multiplexing means one transport layer connection uses


the multiple network connections. Downward multiplexing allows the transport layer to split a
connection among several paths to improve the throughput. This type of multiplexing is used
when networks have a low or slow capacity.
Addressing

o According to the layered model, the transport layer interacts with the functions of the session
layer. Many protocols combine session, presentation, and application layer protocols into a
single layer known as the application layer. In these cases, delivery to the session layer means
the delivery to the application layer. Data generated by an application on one machine must be
transmitted to the correct application on another machine. In this case, addressing is provided
by the transport layer.
o The transport layer provides the user address which is specified as a station or port. The port
variable represents a particular TS user of a specified station known as a Transport Service
access point (TSAP). Each station has only one transport entity.
o The transport layer protocols need to know which upper-layer protocols are communicating.

Multiplexing and Demultiplexing in Transport Layer


Multiplexing and Demultiplexing services are provided in almost every protocol
architecture ever designed. UDP and TCP perform the demultiplexing and multiplexing
jobs by including two special fields in the segment headers: the source port number
field and the destination port number field.
Multiplexing –
Gathering data from multiple application processes of sender, enveloping that data
with header and sending them as a whole to the intended receiver is called as
multiplexing.
Demultiplexing –
Delivering received segments at receiver side to the correct app layer processes is
called as demultiplexing.

Figure – Abstract view of multiplexing and demultiplexing

Multiplexing and demultiplexing are the services facilitated by the transport layer of
OSI model.

Figure – Transport layer- junction for multiplexing and demultiplexing


There are two types of multiplexing and Demultiplexing :
1. Connectionless Multiplexing and Demultiplexing
2. Connection-Oriented Multiplexing and Demultiplexing
How Multiplexing and Demultiplexing is done –
For sending data from an application at sender side to an application at the
destination side, sender must know the IP address of destination and port number of
the application (at the destination side) to which he want to transfer the data. Block
diagram is shown below :

Figure – Transfer of packet between applications of sender and receiver


Let us consider two messaging apps that are widely used now a days viz. Hike and
whatsapp. Suppose A is the sender and B is the receiver. Both sender and receiver
have these applications installed in their system (say smartphone). Suppose A want to
send messages to B in whatsapp and hike both. In order to do so, A must mention the
IP address of B and destination port number of the whatsapp while sending the
message through whatsapp application. Similarly, for the later case, A must mention
the IP address of B and destination port number of the hike while sending the
message.
Now the messages from both the apps will be wrapped up along with appropriate
headers(viz. source IP address, destination IP address, source port no,destination port
number) and sent as a single message to the receiver. This process is called
multiplexing. At the destination, received message is unwrapped and constituent
messages (viz messages from hike and whatsapp application) are sent to appropriate
application by looking to the destination the port number. This process is called
demultiplexing. Similarly, B can also transfer the messages to A.
UDP Protocol:- In computer networking, the UDP stands for User Datagram Protocol. The
David P. Reed developed the UDP protocol in 1980. It is defined in RFC 768, and it is a part of
the TCP/IP protocol, so it is a standard protocol over the internet. The UDP protocol allows the computer
applications to send the messages in the form of datagrams from one machine to another machine over
the Internet Protocol (IP) network. The UDP is an alternative communication protocol to the TCP protocol
(transmission control protocol). Like TCP, UDP provides a set of rules that governs how the data should be
exchanged over the internet. The UDP works by encapsulating the data into the packet and providing its own
header information to the packet. Then, this UDP packet is encapsulated to the IP packet and sent off to its
destination. Both the TCP and UDP protocols send the data over the internet protocol network, so it is also
known as TCP/IP and UDP/IP. There are many differences between these two protocols. UDP enables the
process to process communication, whereas the TCP provides host to host communication. Since UDP sends
the messages in the form of datagrams, it is considered the best-effort mode of communication. TCP sends
the individual packets, so it is a reliable transport medium. Another difference is that the TCP is a connection-
oriented protocol whereas, the UDP is a connectionless protocol as it does not require any virtual circuit to
transfer the data.

UDP also provides a different port number to distinguish different user requests and also provides the
checksum capability to verify whether the complete data has arrived or not; the IP layer does not provide
these two services.

Features of UDP protocol


The following are the features of the UDP protocol:
o Transport layer protocol

UDP is the simplest transport layer communication protocol. It contains a minimum amount of


communication mechanisms. It is considered an unreliable protocol, and it is based on best-effort delivery
services. UDP provides no acknowledgment mechanism, which means that the receiver does not send the
acknowledgment for the received packet, and the sender also does not wait for the acknowledgment for the
packet that it has sent.

o Connectionless

The UDP is a connectionless protocol as it does not create a virtual path to transfer the data. It does not use
the virtual path, so packets are sent in different paths between the sender and the receiver, which leads to
the loss of packets or received out of order.

Ordered delivery of data is not guaranteed.

In the case of UDP, the datagrams are sent in some order will be received in the same order is not
guaranteed as the datagrams are not numbered.

o Ports

The UDP protocol uses different port numbers so that the data can be sent to the correct destination. The
port numbers are defined between 0 and 1023.

o Faster transmission

UDP enables faster transmission as it is a connectionless protocol, i.e., no virtual path is required to transfer
the data. But there is a chance that the individual packet is lost, which affects the transmission quality. On
the other hand, if the packet is lost in TCP connection, that packet will be resent, so it guarantees the delivery
of the data packets.

o Acknowledgment mechanism

The UDP does have any acknowledgment mechanism, i.e., there is no handshaking between the UDP sender
and UDP receiver. If the message is sent in TCP, then the receiver acknowledges that I am ready, then the
sender sends the data. In the case of TCP, the handshaking occurs between the sender and the receiver,
whereas in UDP, there is no handshaking between the sender and the receiver.

o Segments are handled independently.

Each UDP segment is handled individually of others as each segment takes different path to reach the
destination. The UDP segments can be lost or delivered out of order to reach the destination as there is no
connection setup between the sender and the receiver.

o Stateless

It is a stateless protocol that means that the sender does not get the acknowledgement for the packet which
has been sent.
Why do we require the UDP protocol?
As we know that the UDP is an unreliable protocol, but we still require a UDP protocol in some cases. The
UDP is deployed where the packets require a large amount of bandwidth along with the actual data. For
example, in video streaming, acknowledging thousands of packets is troublesome and wastes a lot of
bandwidth. In the case of video streaming, the loss of some packets couldn't create a problem, and it can also
be ignored.

UDP Header Format

In UDP, the header size is 8 bytes, and the packet size is upto 65,535 bytes. But this packet size is not possible
as the data needs to be encapsulated in the IP datagram, and an IP packet, the header size can be 20 bytes;
therefore, the maximum of UDP would be 65,535 minus 20. The size of the data that the UDP packet can
carry would be 65,535 minus 28 as 8 bytes for the header of the UDP packet and 20 bytes for IP header.

The UDP header contains four fields:

o Source port number: It is 16-bit information that identifies which port is going t send the packet.

o Destination port number: It identifies which port is going to accept the information. It is 16-bit
information which is used to identify application-level service on the destination machine.

o Length: It is 16-bit field that specifies the entire length of the UDP packet that includes the header
also. The minimum value would be 8-byte as the size of the header is 8 bytes.

o Checksum: It is a 16-bits field, and it is an optional field. This checksum field checks whether the
information is accurate or not as there is the possibility that the information can be corrupted while
transmission. It is an optional field, which means that it depends upon the application, whether it
wants to write the checksum or not. If it does not want to write the checksum, then all the 16 bits
are zero; otherwise, it writes the checksum. In UDP, the checksum field is applied to the entire
packet, i.e., header as well as data part whereas, in IP, the checksum field is applied to only the
header field.
Concept of Queuing in UDP protocol

In UDP protocol, numbers are used to distinguish the different processes on a server and client. We know
that UDP provides a process to process communication. The client generates the processes that need
services while the server generates the processes that provide services. The queues are available for both the
processes, i.e., two queues for each process. The first queue is the incoming queue that receives the
messages, and the second one is the outgoing queue that sends the messages. The queue functions when the
process is running. If the process is terminated then the queue will also get destroyed.

UDP handles the sending and receiving of the UDP packets with the help of the following components:

o Input queue: The UDP packets uses a set of queues for each process.

o Input module: This module takes the user datagram from the IP, and then it finds the information
from the control block table of the same port. If it finds the entry in the control block table with the
same port as the user datagram, it enqueues the data.

o Control Block Module: It manages the control block table.

o Control Block Table: The control block table contains the entry of open ports.

o Output module: The output module creates and sends the user datagram.

Several processes want to use the services of UDP. The UDP multiplexes and demultiplexes the processes so
that the multiple processes can run on a single host.

Limitations
o It provides an unreliable connection delivery service. It does not provide any services of IP except
that it provides process-to-process communication.

o The UDP message can be lost, delayed, duplicated, or can be out of order.

o It does not provide a reliable transport delivery service. It does not provide any acknowledgment or
flow control mechanism. However, it does provide error control to some extent.
Advantages
o It produces a minimal number of overheads.

Principle Of Reliable Data Transfer Protocol:-


Transport Layer Protocols are central piece of layered architectures, these provides the
logical communication between application processes. These processes uses the logical
communication to transfer data from transport layer to network layer and this transfer
of data should be reliable and secure. The data is transferred in the form of packets but
the problem occurs in reliable transfer of data.
The problem of transferring the data occurs not only at the transport layer, but also at
the application layer as well as in the link layer. This problem occur when a reliable
service runs on an unreliable service, For example, TCP (Transmission Control Protocol)
is a reliable data transfer protocol that is implemented on top of an unreliable layer, i.e.,
Internet Protocol (IP) is an end to end network layer protocol.

Figure: Study of Reliable Data Transfer

In this model, we have design the sender and receiver sides of a protocol over a reliable
channel. In the reliable transfer of data the layer receives the data from the above layer
breaks the message in the form of segment and put the header on each segment and
transfer. Below layer receives the segments and remove the header from each segment
and make it a packet by adding to header.
The data which is transferred from the above has no transferred data bits corrupted or
lost, and all are delivered in the same sequence in which they were sent to the below
layer this is reliable data transfer protocol. This service model is offered by TCP to the
Internet applications that invoke this transfer of data.

Difference Between Go-Back-N and Selective Repeat Protocol:-


Both Go-Back-N Protocol and Selective Repeat Protocol are the types of sliding window
protocols.The main difference between these two protocols is that after finding the
suspect or damage in sent frames go-back-n protocol re-transmits all the frames
whereas selective repeat protocol re-transmits only that frame which is damaged.
Now, we shall see the difference between them:
S.NOGo-Back-N Protocol Selective Repeat Protocol
In Go-Back-N Protocol, if the sent
frame are find suspected then all the
frames are re-transmitted from the In selective Repeat protocol, only those
lost packet to the last packet frames are re-transmitted which are
1. transmitted. found suspected.

Sender window size of Go-Back-N Sender window size of selective Repeat


2. Protocol is N. protocol is also N.

Receiver window size of Go-Back-N Receiver window size of selective


3. Protocol is 1. Repeat protocol is N.

Selective Repeat protocol is more


4. Go-Back-N Protocol is less complex. complex.

In Go-Back-N Protocol, neither In selective Repeat protocol, receiver


5. sender nor at receiver need sorting. side needs sorting to sort the frames.

In Go-Back-N Protocol, type of In selective Repeat protocol, type of


6. Acknowledgement is cumulative. Acknowledgement is individual.

In Go-Back-N Protocol, Out-of-Order


packets are NOT Accepted
(discarded) and the entire window is In selective Repeat protocol, Out-of-
7. re-transmitted. Order packets are Accepted.

In selective Repeat protocol, if Receives


receives a corrupt packet, it
In Go-Back-N Protocol, if Receives immediately sends a negative
receives a corrupt packet, then also, acknowledgement and hence only the
8. the entire window is re-transmitted. selective packet is retransmitted.

Efficiency of selective Repeat protocol is


Efficiency of Go-Back-N Protocol is also
N/(1+2*a) N/(1+2*a)
9.
What is Integrated Services
Integrated services refer to an architecture that ensures the Quality of Service (QoS) on a
network. Moreover, these services allow the receiver to watch and listen to video and sound
without any interruption. Each router in the network implements integrated services.
Furthermore, every application requires some kind of guarantee to make an individual
reservation.

Furthermore, it is possible to implement the integrated service structure through signalling


protocol and admission control routine, classifier and packet scheduler. Moreover, these
services require an explicit signalling mechanism to convey information to routers so that they
can provide the requested resources.

Differentiated Services:- Differentiated services refer to a multiple service model


that can satisfy many requirements. In other words, it supports multiple mission-critical
applications. Moreover, these services help to minimize the burden of the network devices and
also support the scaling of the network. Some major differentiated services are as follows.

Traffic conditioning – Ensures that the traffic entering the DiffServ domain.

Packet classification – Categorizes the packet within a specific group using the traffic descriptor.

Packet marking – Classify a packet based on a specific traffic descriptor.

Congestion Management – Achieve queuing and traffic scheduling.

Congestion avoidance – Monitor traffic loads to minimize congestion. In involves packet


dropping.
Quality of Service and Multimedia:-
Quality-of-Service (QoS) refers to traffic control mechanisms that seek to either
differentiate performance based on application or network-operator requirements or
provide predictable or guaranteed performance to applications, sessions or traffic
aggregates. Basic phenomenon for QoS means in terms of packet delay and losses of
various kinds.
Need for QoS –
 Video and audio conferencing require bounded delay and loss rate.
 Video and audio streaming requires bounded packet loss rate, it may not be so
sensitive to delay.
 Time-critical applications (real-time control) in which bounded delay is considered to
be an important factor.
 Valuable applications should be provided better services than less valuable
applications.
QoS Specification –
QoS requirements can be specified as:
1. Delay
2. Delay Variation(Jitter)
3. Throughput
4. Error Rate
There are two types of QoS Solutions:
1. Stateless Solutions –
Routers maintain no fine grained state about traffic, one positive factor of it is that it
is scalable and robust. But it has weak services as there is no guarantee about kind of
delay or performance in a particular application which we have to encounter.

2. Stateful Solutions –
Routers maintain per flow state as flow is very important in providing the Quality-of-
Service i.e. providing powerful services such as guaranteed services and high
resource utilization, provides protection and is much less scalable and robust.
Integrated Services(IntServ) –
1. An architecture for providing QoS guarantees in IP networks for individual
application sessions.
2. Relies on resource reservation, and routers need to maintain state information of
allocated resources and respond to new call setup requests.
3. Network decides whether to admit or deny a new call setup request.
IntServ QoS Components –
 Resource reservation: call setup signaling, traffic, QoS declaration, per-element
admission control.
 QoS-sensitive scheduling e.g WFQ queue discipline.
 QoS-sensitive routing algorithm(QSPF)
 QoS-sensitive packet discard strategy.
RSVP-Internet Signaling –
It creates and maintains distributed reservation state, initiated by the receiver and
scales for multicast, needs to be refreshed otherwise reservation times out as it is in soft
state. Latest paths discovered through “PATH” messages (forward direction) and used
by RESV messages (reserve direction).
Call Admission –
 Session must first declare it’s QoS requirement and characterize the traffic it will
send through the network.
 R-specification: defines the QoS being requested, i.e. what kind of bound we want
on the delay, what kind of packet loss is acceptable, etc.
 T-specification: defines the traffic characteristics like bustiness in the traffic.
 A signaling protocol is needed to carry the R-spec and T-spec to the routers where
reservation is required.
 Routers will admit calls based on their R-spec, T-spec and based on the current
resource allocated at the routers to other calls.
Diff-Serv –
Differentiated Service is a stateful solution in which each flow doesn’t means a different
state. It provides reduced state services i.e. maintain state only for larger granular flows
rather than end-to-end flows tries to achieve best of both worlds.
Intended to address the following difficulties with IntServ and RSVP:
1. Flexible Service Models:
IntServ has only two classes, want to provide more qualitative service classes: want
to provide ‘relative’ service distinction.
2. Simpler signaling:
Many applications and users may only want to specify a more qualitative notion of
service.
Streaming Live Multimedia –
 Examples: Internet radio talk show, Live sporting event.
 Streaming: playback buffer, playback buffer can lag tens of seconds after and still
have timing constraint.
 Interactivity: fast forward is impossible, but rewind and pause is possible.

You might also like