0% found this document useful (0 votes)
24 views

CN Unit-4

The document discusses the transport layer of the OSI model. It provides details on the functions and protocols of the transport layer, including TCP and UDP. The transport layer is responsible for process-to-process delivery across networks and ensuring reliable and accurate data transmission.

Uploaded by

Sai
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)
24 views

CN Unit-4

The document discusses the transport layer of the OSI model. It provides details on the functions and protocols of the transport layer, including TCP and UDP. The transport layer is responsible for process-to-process delivery across networks and ensuring reliable and accurate data transmission.

Uploaded by

Sai
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/ 30

Computer Networks – IV Unit -Transport Layer

 The Transport layer is the layer-4 of the OSI reference model. The transport layer
is mainly responsible for the process-to-process delivery of the entire message. A
process is basically an application program that is running on the host. The basic
function of the Transport layer is to accept data from the upper layer and split it up
into smaller units, pass these data units to the Network layer, and ensure that all
the pieces arrive correctly at the other end.
 Network layer is responsible for the end to end delivery of individual packets from
a machine to another machine in different network, but does not see any
relationship between those packets. It treats each as an independent entity. Further,
the packet needs to be delivered to the last participating entity, i.e. a process
engaged in data exchanged. But the transport layer makes sure that the entire
message (not a single packets receives) is delivered to a process. So it provides
process-to-process or end-to-end delivery of an entire message.
 The Transport layer also determines what type of service to provide to the Session
layer, and, ultimately, to the users of the network.
 The transport layer also identifies errors like damaged packets, lost packets, and
duplication of packets, and provides sufficient techniques for error correction.
 This layer mainly provides the transparent transfer of data between end-users, also
provides the reliable transfer of data to the upper layers.

Figure: Transport Layer


Functions of Transport Layer

1. Service Point Addressing: Transport Layer header includes service point address

which is the port address. This layer gets the message to the correct process on
the computer unlike Network Layer, which gets each packet to the correct

computer.

2. Segmentation and Reassembling: A message is divided into segments(that are


transmittable); each segment contains a sequence number, which enables this
layer in reassembling the message. The message is reassembled correctly upon
arrival at the destination and replaces packets that were lost in transmission.

3. Connection Control: It includes 2 types:

o Connectionless Transport Layer: Each segment is considered as an


independent packet and delivered to the transport layer at the destination
machine in different routes.

o Connection-Oriented Transport Layer: Before delivering packets, the


connection is made with the transport layer and all the packets transfer

through the same route to reach the destination machine.


4. Flow Control: In this layer, flow control is performed end to end rather than
across a single link. 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.
5. Error Control: Error Control is performed end to end in this layer to ensure that
the complete message arrives at the receiving transport layer without any error.
Error Correction is done through retransmission. Error Detection and Error
Correction can be done at Transport Layer.

Illustration of Process-to-Process Delivery


Thus the Transport layer is mainly responsible for the delivery of messages from
one process to another.

Transport Service Primitives


To allow the users to access the transport service, the transport layer must provide
some operations to application programs. These are the service primitives.

1. The server executes a “LISTEN” primitive by calling a library procedure that


makes a System call to block the server until a client turns up.
2. When a client wants to talk to the server, it executes a “CONNECT” primitive,
with “CONNECTION REQUEST” TPDU sent to the server.
3. When it arrives, the unblocks the server and sends a “CONNECTION
ACCEPTED” TPDU back to the client.
4. When it arrives, the client is unblocked and the connection is established. Data
can now be exchanged using “SEND” and “RECEIVE” primitives.
5. When a connection is no longer needed, it must be released to free up table
space within the 2 transport entries, which is done with “DISCONNECT”
primitive by sending “DISCONNECTION REQUEST”
TPDU: message sent from transport entity to transport entity

Transport Layer protocols


o The transport layer is represented by two protocols: TCP and UDP.

UDP
o UDP stands for User Datagram Protocol.
o UDP is a simple protocol and it provides non sequenced transport functionality.
o UDP is a connectionless protocol.
o This type of protocol is used when reliability and security are less important than
speed and size.
o UDP is an end-to-end transport level protocol that adds transport-level addresses,
checksum error control, and length information to the data from the upper layer.
o The packet produced by the UDP protocol is known as a user datagram.

User Datagram Format


The user datagram has a 16-byte header which is shown below:

Where,

o Source port address: It defines the address of the application process that has
delivered a message. The source port address is of 16 bits address.
o Destination port address: It defines the address of the application process that
will receive the message. The destination port address is of a 16-bit address.
o Total length: It defines the total length of the user datagram in bytes. It is a 16-bit
field.
o Checksum: The checksum is a 16-bit field which is used in error detection.

Disadvantages of UDP protocol


o UDP provides basic functions needed for the end-to-end delivery of a transmission.
o It does not provide any sequencing or reordering functions and does not specify the
damaged packet when reporting an error.
o UDP can discover that an error has occurred, but it does not specify which packet has
been lost as it does not contain an ID or sequencing number of a particular data segment.

TCP
o TCP stands for Transmission Control Protocol.
o It provides full transport layer services to applications.
o It is a connection-oriented protocol means the connection established between
both the ends of the transmission. For creating the connection, TCP generates a
virtual circuit between sender and receiver for the duration of a transmission.

Features Of TCP protocol

o Stream data transfer: TCP protocol transfers the data in the form of contiguous
stream of bytes. TCP group the bytes in the form of TCP segments and then
passed it to the IP layer for transmission to the destination. TCP itself segments
the data and forward to the IP.
o Reliability: TCP assigns a sequence number to each byte transmitted and expects
a positive acknowledgement from the receiving TCP. If ACK is not received within a
timeout interval, then the data is retransmitted to the destination.
The receiving TCP uses the sequence number to reassemble the segments if they
arrive out of order or to eliminate the duplicate segments.
o Flow Control: When receiving TCP sends an acknowledgement back to the sender
indicating the number the bytes it can receive without overflowing its internal
buffer. The number of bytes is sent in ACK in the form of the highest sequence
number that it can receive without any problem. This mechanism is also referred
to as a window mechanism.
o Multiplexing: Multiplexing is a process of accepting the data from different
applications and forwarding to the different applications on different computers.
At the receiving end, the data is forwarded to the correct application. This process
is known as demultiplexing. TCP transmits the packet to the correct application by
using the logical channels known as ports.
o Logical Connections: The combination of sockets, sequence numbers, and
window sizes, is called a logical connection. Each connection is identified by the
pair of sockets used by sending and receiving processes.
o Full Duplex: TCP provides Full Duplex service, i.e., the data flow in both the
directions at the same time. To achieve Full Duplex service, each TCP should have
sending and receiving buffers so that the segments can flow in both the directions.
TCP is a connection-oriented protocol. Suppose the process A wants to send and
receive the data from process B. The following steps occur:
o Establish a connection between two TCPs.
o Data is exchanged in both the directions.
o The Connection is terminated.

TCP Segment Format


o
o Source port address: It is used to define the address of the application program in a
source computer. It is a 16-bit field.
o Destination port address: It is used to define the address of the application program in a
destination computer. It is a 16-bit field.
o Sequence number: A stream of data is divided into two or more TCP segments. The 32-
bit sequence number field represents the position of the data in an original data stream.
o Acknowledgment number: When the ACK flag is set, then this contains the next
sequence number of the data byte and works as an acknowledgment for the
previous data received. For example, if the receiver receives the segment number
'x', then it responds 'x+1' as an acknowledgment number.
o HLEN: It specifies the length of the header indicated by the 4-byte words in the
header. The size of the header lies between 20 and 60 bytes. Therefore, the value
of this field would lie between 5 and 15.
o Reserved: It is a 4-bit field reserved for future use, and by default, all are set to
zero.
o Flags
There are six control bits or flags:
1. URG: It represents an urgent pointer. If it is set, then the data is processed
urgently.
2. ACK: If the ACK is set to 0, then it means that the data packet does not
contain an acknowledgment.
3. PSH: If this field is set, then it requests the receiving device to push the
data to the receiving application without buffering it.
4. RST: If it is set, then it requests to restart a connection.
5. SYN: It is used to establish a connection between the hosts.
6. FIN: It is used to release a connection, and no further data exchange will
happen.

o Window size
It is a 16-bit field. It contains the size of data that the receiver can accept. This field
is used for the flow control between the sender and receiver and also determines
the amount of buffer allocated by the receiver for a segment. The value of this
field is determined by the receiver.
o Checksum
It is a 16-bit field. This field is optional in UDP, but in the case of TCP/IP, this field
is mandatory.
o Urgent pointer
It is a pointer that points to the urgent data byte if the URG flag is set to 1. It
defines a value that will be added to the sequence number to get the sequence
number of the last urgent byte.
o Options
It provides additional options. The optional field is represented in 32-bits. If this
field contains the data less than 32-bit, then padding is required to obtain the
remaining bits.

Advantages of TCP
o It provides a connection-oriented reliable service, which means that it
guarantees the delivery of data packets. If the data packet is lost across the
network, then the TCP will resend the lost packets.
o It provides a flow control mechanism using a sliding window protocol.
o It provides error detection by using checksum and error control by using Go
Back or ARP protocol.
o It eliminates the congestion by using a network congestion avoidance
algorithm that includes various schemes such as additive
increase/multiplicative decrease (AIMD), slow start, and congestion window.
Disadvantage of TCP

 It increases a large amount of overhead as each segment gets its own TCP
header, so fragmentation by the router increases the overhead.

Working of the TCP Protocol

TCP serves as an intermediary between two applications that need to exchange data.
When an application wants to transmit data, TCP ensures that:

 Data arrives in order


 Data has minimal errors
 Duplicate data gets discarded
 Lost or discarded packets get resent

For all these activities TCP performs the following operations.

The three phases of TCP operations

1. Connection establishment.
2. Data transfer.
3. Connection termination.

1. Connection establishment.

In TCP, the connection is established by using three-way handshaking.

 The client sends the segment with its sequence number with SYN Primitive.
 The server, in return, sends its segment with its own sequence number as well
as the acknowledgement sequence, which is one more than the client
sequence number.
 When the client receives the acknowledgment of its segment, then it sends the
acknowledgment to the server. In this way, the connection is established
between the client and the server.
TCP Connection Establishment

 To make the transport services reliable, TCP hosts must establish a connection-
oriented session with one another.
 Connection establishment is performed by using the three-way handshake
mechanism. A three-way handshake synchronizes both ends of a network by
enabling both sides to agree upon original sequence numbers. This mechanism
also provides that both sides are ready to transmit data and learn that the other
side is available to communicate.
 This is essential so that packets are not shared or retransmitted during session
establishment or after session termination. Each host randomly selects a sequence
number used to track bytes within the stream it is sending and receiving.
The three-way handshake proceeds in the manner shown in the figure below
 The requesting end (Host A) sends an SYN segment determining the server's port
number that the client needs to connect to and its initial sequence number (x).
 The server (Host B) acknowledges its own SYN segment, including the servers
initial sequence number (y). The server also responds to the client SYN by
accepting the sender's SYN plus one (X + 1).
 An SYN consumes one sequence number. The client should acknowledge this
SYN from the server by accepting the server's SEQ plus one (SEQ = x + 1, ACK
= y + 1). This is how a TCP connection is settled.

Data Transfer in TCP

Connection Termination Protocol (Connection Release)

 While it creates three segments to establish a connection, it takes four segments


to terminate a connection. During a TCP connection is full-duplex (that is, data
flows in each direction independently of the other direction), each direction
should be shut down alone.
 The termination procedure for each host is shown in the figure. The rule is that
either end can share a FIN when it has finished sending data.
 When a TCP receives a FIN, it should notify the application that the other end
has terminated that data flow direction. The sending of a FIN is usually the
result of the application issuing a close.
 The receipt of a FIN only means that there will be no more data flowing in that
direction. A TCP can send data after receiving a FIN. The end that first issues
the close (example, send the first FIN) executes the active close. The other end
(that receives this FIN) manages the passive close.

THE TCP SERVICE MODEL:


 TCP service is obtained by both the sender and receiver creating end points, called
sockets. A socket may be used for multiple connections at the same time.
 In TCP service, the sender and receiver needs to create endpoints called sockets.
Each socket has an address which is made up of two parts.

 An IP address of the host.


 A port number that is 16 bit local to host (source or destination)

 Both are collectively called socket addresses. A port is the TCP name for TSAP
(Transport Service Access Point). It is essential to create a link between the
sockets of the sender & receiver.
 Connections are used as identifiers at both ends. It can use the same socket for
greater than one connection at a time.
 We explain some of the sockets call with their respectful meaning in the
following table. It also should know that TCP does not support multicasting &
broadcasting.
 Different Socket Calls and their use at TCP service model are

Socket Calls Meaning

Socket It creates a new socket call connection.

Bind It gives a local location to a socket.

In response to making a new connection and it shows


Listen
a willingness to accept new connections.

It can block the caller unit when a connection


Accept
attempt arrives.

Send It can send data over the connection.


Receive It can receive data over the connection.

Connect It can attempt to make a connection.

Close It can release the connection.


 Another feature of the TCP service is URGENT DATA. When the urgent data are
received at the destination. The receiving application is interrupted so it can stop
whatever it was doing and read the data stream to find the urgent data. The start of the
urgent data is not marked while the end is marked so the application knows when it is
over.
 PUSH Flag also plays a vital role in TCP Service.

The message boundaries are not maintained end to end. When an application
reaches information to TCP, and an application needs that data to be shared directly,
it sets the PUSH Flag, forcing the TCP to send information without any
interruption.

 Buffering is very essential in TCP

But when TCP doesn't send the data received from the above application
layer, it is collected for some time before sending. That is called Buffering.
Error Control in TCP
TCP is a reliable transport layer protocol. This means with the help of TCP an
application program delivers a stream of data to the application program on the
other end in order, without error, and without any part lost (Damage) or duplicated.
TCP provides reliability using error control.
Error control includes mechanisms for

 Detecting corrupted segments,


 Lost segments,
 Out-of-order segments and duplicated segments.

Error control also includes a mechanism for correcting errors after they are
detected. Error detection and correction in TCP is achieved through the use of three
simple tools:
1. Checksum,

2. Acknowledgment,
3. Time-out.

Checksum – Every segment contains a checksum field which is used to find


corrupted segments. If the segment is corrupted, then that segment is discarded by
the destination TCP and is considered lost.
1. Acknowledgement – TCP has another mechanism called acknowledgement to
affirm that the data segments have been delivered. Control segments that contain
no data but have sequence numbers will be acknowledged as well but ACK
segments are not acknowledged.
2. Retransmission – The retransmission means resending the packets over the
network that has been either lost or damaged. Here, retransmission is a
mechanism used by protocols such as TCP to provide reliable communication.
The network which uses a combination of acknowledgment and retransmission of
damaged or lost packets offers reliability.
Retransmission Conditions:
A. Retransmission after RTO (Retransmission Time Out): TCP always
preserves one retransmission time-out (RTO) timer for all sent but not
acknowledged segments. When the timer runs out of time, the earliest
segment is retransmitted. Here no timer is set for acknowledgement. In TCP,
the RTO value is dynamic in nature and it is updated using the round trip
time (RTT) of segments. RTT is the time duration needed for a segment to
reach the receiver and an acknowledgement to be received by the sender.

Following are the various scenarios of retransmission

Scenario 1: When the data packet is lost or erroneous.


In this scenario, the packet is sent but not received by the receiver. Hence no
acknowledgment is received within that timeout period. When the timeout period
expires, then the packet is resent again.
Scenario 2: When the packet is received but the acknowledgment is lost.

In this scenario, the packet is received on the other side, but the acknowledgment is
lost, i.e., the ACK is not received on the sender side. Once the timeout period
expires, the packet is resent.
Scenario 3: When the Time out occurs.
In this scenario, the packet is sent, but due to the delay in acknowledgment or
timeout has occurred before the actual timeout, and then the packet is retransmitted
B. Retransmission after Three duplicate ACK segments: RTO method
works well when the value of RTO is small. If it is large, more time is
needed to get confirmation about whether a segment has been delivered or
not. Sometimes one segment is lost and the receiver receives so many out-
of-order segments that they cannot be saved. In order to solve this situation,
three duplicate acknowledgement methods are used. In this and missing
segment is retransmitted immediately instead of retransmitting already
delivered segment.

 Consider sender receives three duplicate acknowledgements for a TCP


segment sent by it.
 Then, sender assumes that the corresponding segment is lost.
 So, sender retransmits the same segment without waiting for its time out
timer to expire.
 This is known as Early retransmission or Fast retransmission.
Flow Control in TCP

TCP Flow Control is a protocol designed to manage the data flow between the user
and the server. It ensures that there is a specific bandwidth for sending and receiving
data so the data can be processed without facing any major issues. In order to achieve
this, the TCP protocol uses a mechanism called the sliding window protocol

 For the slow sender and fast receiver, no flow control is required. Whereas
for the fast sender and slow receiver, flow control is important

The above diagram shows a slow receiver and a fast sender. Let’s understand how
the messages will be overflown after a certain period.
 The sender is sending messages at the rate of 10 messages per second, while
the receiver is receiving at the rate of 5 messages per second.
 When a sender sends a message, the network enqueues messages in the
receiver queue.
 Once the user application reads a message, the message is clear from the line,
and one buffer space adds to the free space.
 Finally, after specific amount of time , there will be no space remaining for
incoming messages, and messages will start dropping.
To overcome this

 With the flow control, the TCP receiver keeps sending the available space
capacity for the incoming messages to the sender during the communication.
The sender updates the space information and reduces the outgoing message
rate. The space is known as the receiver window size. For implementing flow
control, the sender should know how much free space is available on the
receiver before sending further messages.
 For this both ends add their own window size in the header in each TCP
segment. During connection setup, the window size is the maximum capacity
available. During packet transfer, the window size keeps updating. The
window size value is zero when a TCP end cannot accept further messages.
When the sender receives a window size of zero, it stops sending any further
messages till it gets again a message with a window size of more than zero.

For This TCP uses Sliding Window Protocol Method.

The sliding window protocol

In the sliding window protocol method, when we are establishing a connection


between sender and receiver two buffers created one at the sender side and another
at the receiver side. These two are called the sending window, and the receiving
window.
When the sender sends data to the receiver, the receiving window sends back the
remaining receiving buffer space. As a result, the sender cannot send more data than
the available receiving buffer space.
 In this, the sending window sends data to the receiving window. The
receiving window sends the acknowledgment after receiving the data and
then the sending window sends another data segment.
 Whenever the receiver window is full, the receiver along with the received
acknowledgment also sends another message saying that the available
memory is full.
 Then the sending window pauses the transmission of data until it gets the
acknowledgment of the receiving window that space has been released and it
can continue the transmission process.

TCP Congestion -

 Congestion refers to the state of a network where the message traffic becomes so
heavy that the network response time slows down leading to the failure of the
packet. It leads to packet loss. Due to this, it is necessary to control the congestion
in the network; however, it cannot be avoided.
 TCP congestion control refers to the mechanism that prevents congestion from
happening or removes it after congestion takes place. When congestion takes place
in the network, TCP handles it by reducing the size of the sender’s window.

The window size of the sender is determined by the following two factors:

 Receiver window size


 Congestion window size

Receiver Window Size : It shows how much data a receiver can receive in bytes
without giving any acknowledgment.

 The sender should not send data greater than that of the size of receiver
window. Hence sender should always send data that is less than or equal to
the size of the receiver’s window.
 TCP header is used for sending the window size of the receiver to the sender.

Congestion Window
It is the state of TCP that limits the amount of data to be sent by the sender into the
network even before receiving the acknowledgment.

 To calculate the size of the congestion window, different variants of TCP and
methods are used.
 Only the sender knows the congestion window and its size and it is not sent
over the link or network.
 The sender's window size is determined not only by the receiver but also by
congestion in the network.. The actual size of the sender window is the
minimum of the Receiver Window size and Congestion window size.

Sender window size = Minimum (Receiver window size, Congestion window


size)

Approaches for Congestion Control

Congestion in TCP is handled by using these three phases:


1. Slow Start
2. Congestion Avoidance
3. Congestion Detection
Slow Start Phase

 In the slow start phase, the sender sets congestion window size = maximum
segment size (1 MSS) at the initial stage.
 The sender increases the size of the congestion window by 1 MSS after
receiving the ACK (acknowledgment).
 The size of the congestion window increases exponentially in this phase.
(Initially its value is 1, 2nd time =2, 3rd time =4 and so on like this)
Congestion window size = Congestion window size + Maximum segment
size

This phase continues until the congestion window size reaches the slow start
threshold.Threshold = Maximum number of TCP segments that receiver
window can accommodate / 2

Threshold = (Receiver window size / Maximum Segment Size) / 2

Congestion Avoidance Phase-

After reaching the threshold,


 Sender increases the congestion window size linearly to avoid the congestion.
 On receiving each acknowledgement, sender increments the congestion window
size by 1.
The followed formula is-
Congestion window size = Congestion window size + 1
This phase continues until the congestion window size becomes equal to the
receiver window size.
C. Congestion Detection Phase

In this phase, the sender identifies the segment loss and gives acknowledgment
depending on the type of loss detected.

Case-01: Detection on Time Out

In this, the timer time-out expires even before receiving acknowledgment for a
segment. It suggests a stronger possibility of congestion in a network

Reaction in response to Detection on time out:

 Setting the threshold to start at half of the current size of the window
 Slow start phase is resumed

Case-02: Detection of Receiving 3 Duplicate Acknowledgements

This case suggests the weaker possibility of congestion in the network. In this, the
sender receives three duplicate acknowledgments for a network segment.

Reaction on receiving 3 duplicate acknowledgments:

 Setting the threshold to start at half of the current size of the window
 Decreasing the size of the congestion window to that of the slow start
threshold.
 The congestion avoidance phase is resumed
Congestion Control and Bandwidth Allocation:

 The dynamic adjustment of bandwidth helps to optimize network performance


and prevents congestion.
 Congestion control – BAC Mechanism provides mechanisms for handling
network congestion by reducing the amount of bandwidth allocated to certain
virtual channels or temporarily blocking new virtual channel requests.
 This ensures that existing channels continue to receive the guaranteed minimum
level of service even when the network is congested
 BACP (Bandwidth Allocation Control Protocol) is a protocol that is
responsible for allocating bandwidth efficiently and fairly, preventing network
congestion and assuring Quality of Service. It utilizes different allocation
techniques, monitors the use and adjusts accordingly, as well as controls network
congestion in order to ensure optimal network performance.
 It is used to ensure that bandwidth is allocated fairly among competing traffic
streams, and to prevent any one traffic stream from monopolizing the network.
 When a virtual channel is established between two endpoints, BACP is used to
negotiate the amount of bandwidth that will be allocated to that channel.
 BACP also monitors the usage of the channel, and adjusts the allocated bandwidth
as necessary to ensure fair allocation among all channels.

BACP uses a combination of both reservation-based and explicit rate-based


methods to allocate bandwidth.

A. In reservation-based allocation, a virtual channel is allocated a fixed


amount of bandwidth that it is guaranteed to have access to.
B. In explicit rate-based allocation, a virtual channel is allocated a maximum
amount of bandwidth, but it is not guaranteed to have access to that much
bandwidth at all times. Instead, it must compete with other channels for the
available bandwidth.
 BACP also provides mechanisms for handling congestion and ensuring Quality of
Service (QoS) for different types of traffic. When network congestion occurs.
 BACP may reduce the amount of bandwidth allocated to certain virtual channels,
or may temporarily block new virtual channel requests, in order to ensure that
existing channels continue to receive the guaranteed minimum level of service.

BACP has several key functions that it performs in order to control the allocation of
bandwidth in ATM networks
 Bandwidth negotiation − When a virtual channel is established between two
endpoints, BACP is used to negotiate the amount of bandwidth that will be
allocated to that channel.
 Monitoring and adjustment − BACP monitors the usage of each virtual
channel and adjusts the allocated bandwidth as necessary to ensure fair
allocation among all channels. This dynamic adjustment of bandwidth helps
to optimize network performance and prevents congestion.
 Congestion control − BACP provides mechanisms for handling network
congestion by reducing the amount of bandwidth allocated to certain virtual
channels or temporarily blocking new virtual channel requests. This ensures
that existing channels continue to receive the guaranteed minimum level of
service even when the network is congested.
 Quality of Service (QoS) support − BACP supports different levels of QoS
for different types of traffic. It allows to provide different levels of service for
different types of traffic, such as real-time video or audio, and ensures that
these types of traffic receive the necessary bandwidth to maintain high-
quality service.
 Support of different allocation techniques − BACP can use both
reservation-based and explicit rate-based methods to allocate bandwidth.
Reservation based allocation assign a fixed amount of bandwidth that is
guaranteed to the user, while explicit rate-based allocation assigns a
maximum amount of bandwidth, but is not guaranteed to have access to that
much bandwidth at all times.
Real Time Transport Protocol:

 "Real-Time Transport Protocol". It is situated in the session and presentation


layers of the OSI network model.
 It is typically used for real-time applications like internet radio, music-on-
demand, video-on-demand, and video conferencing where VOIP is employed. It
uses the UDP protocol rather than TCP. As a result, it does not guarantee quick
data delivery .
 It provides support for various file types, such as MPEG and MJPEG.
 It is extremely sensitive to packet delays but less sensitive to packet loss.
 It was created by four members of the Internet Engineering Task Force
(IETF): S. Casner (Packet Design), V. Jacobson (Packet Design), H.
Schulzrinne (Columbia University), and R. Frederick (Blue Coat Systems Inc.).
 It was firstly introduced in 1996 and known as RFC 1889. After that, it was
released in 2003 with the name RFC 3550.

Features of RTP Protocol

There are various features of the RTP protocol. Some main features of the RTP
protocol are as follows:

1. RTP support various types of file format, such as MPEG and MJPEG etc.
2. It runs in end systems. Jitter correction, detection of out-of-sequence arrival,
and multimedia streaming are also included in RTP data characteristics.

RTP Header Format:

RTP's header format is very simple and supports all real-time applications. RTP
headers are made up of 32-bit with the following fields.
1. Version field: It defines the protocol version.
2. Padded bits: The P bit specifies the padded bit that is utilized for the packet in
multiples of 4 bytes.
3. Extension header: The length of this field is also 1 bit. If the value of this field is
1, it indicates that there is an extra extension header between the data and basic
headers, and if the value is 0, there is no extra extension.
RTP Header Format

4. Contributor Count: This 4-bit value represents the number of contributors.


Because a 4-bit field can accept numbers ranging from 0 to 15, the maximum
number of contributors is 15.
5. Marker bit: M in the header defines the marker bit, which is utilized to indicate
a frame's start and end.
6. Payload types: This field is 7 bits long and shows the type of payload. You may
present some popular sorts of payload applications.
7. Sequence Number : It indicates the quantity of RTP packets transmitted.
8. Timestamp: It has a length of 32 bits. It is used to specify the time stamp. The
timestamp for the first packet is chosen at random, and the time stamp for
subsequent packets is determined by adding the previous timestamp
9. Synchronization Source Identifier: It describes the packet and the stream with
which it is related.(i.e Source Information)
10. Contributing Source Identifier: It is also a 32-bit variable that is utilized for
source identification when many sources are present in the session.
SCTP Protocol: SCTP stands for Stream Control Transmission Protocol.

 It is a connection- oriented protocol in computer networks which provides a full-


duplex association i.e., transmitting multiple streams of data between two end
points at the same time that have established a connection in network.
 It is sometimes referred to as next generation TCP or TCPng, SCTP makes it
easier to support telephonic conversation on Internet. A telephonic conversation
requires transmitting of voice along with other data at the same time on both
ends, SCTP protocol makes it easier to establish reliable connection.
 SCTP is also intended to make it easier to establish connection over wireless
network and managing transmission of multimedia data. SCTP is a standard
protocol (RFC 2960) and is developed by Internet Engineering Task Force
(IETF).

Characteristics of SCTP:

1. Unicast with Multiple properties –


It is a point-to-point protocol which can use different paths to reach end host.
2. Reliable Transmission –
It uses SACK and checksums to detect damaged, corrupted, discarded,
duplicate and reordered data. It is similar to TCP but SCTP is more efficient
when it comes to reordering of data.
3. Message oriented –
Each message can be framed and we can keep order of data stream and tabs on
structure.
4. Multi-homing –
It can establish multiple connection paths between two end points and does not
need to rely on IP layer for resilience.
5. Security –
Another characteristic of SCTP that is security. In SCTP, resource allocation
for association establishment only takes place following cookie exchange
identification verification for the client (INIT ACK). Man-in-the-middle and
denial-of-service attacks are less likely as a result. Furthermore,
6. SCTP doesn’t allow for half-open connections, making it more resistant to
network floods and masquerade attacks.
Advantages of SCTP :
1. It is a full- duplex connection i.e. users can send and receive data
simultaneously.
2. It allows half- closed connections.
3. The message’s boundaries are maintained and application doesn’t have to split
messages.
4. It has properties of both TCP and UDP protocol.
5. It doesn’t rely on IP layer for resilience of paths.
Disadvantages of SCTP :
1. Applications need to be modified to use SCTP instead of TCP/UDP.
2. Applications need to be modified to handle multiple simultaneous streams .

STCP Packet consist of two main parts as Header and Payload. The Header is
common but the Payload consist of variable Chunks. These chunks are used for
various purposes.
Common STCP Header is 12 bytes long and it consists of the below parts:
 Source Port Number :
 Destination Port Number :
Verification Tag : is a 32-bit random value which distinguish the packets form
the previous connection.
 Checksum
 STCP Payload part consist of different STCP Chunks. These chunks have some
common parts. These are:
Type shows Control or Data Chunk. Type is 1 byte long.
Flags includes various chunk specific bits. Flag part is 1 byte long. There are 8 flag
bits.
Length shows size of chunk including chunk header. It is 2 bytes long.
Chunk Value includes chunk specific data.

You might also like

pFad - Phonifier reborn

Pfad - The Proxy pFad of © 2024 Garber Painting. All rights reserved.

Note: This service is not intended for secure transactions such as banking, social media, email, or purchasing. Use at your own risk. We assume no liability whatsoever for broken pages.


Alternative Proxies:

Alternative Proxy

pFad Proxy

pFad v3 Proxy

pFad v4 Proxy