[go: up one dir, main page]

0% found this document useful (0 votes)
120 views70 pages

Unit - 3 Transport Layer

Download as pdf or txt
Download as pdf or txt
Download as pdf or txt
You are on page 1/ 70

9/11/2023

New L J Institute of Engineering and Technology


(AICTE approved and GTU affiliated )

Unit - 3 Transport Layer

SUBJECT CODE:3150710
SEMESTER: 5TH FACULTY NAME: Prof. Bhaumik Gelani
Email id: bhaumik.gelani@ljku.edu.in
SUBJECT NAME: Computer Networks Mobile : +91 99092 49440
DEPARETMENT: CSE & IT

Prof. Bhaumik Gelani & Prof. Shilpi Tiwari

Subject Overview

Unit No. Unit Title %


1 Introduction to Computer Networks and Internet 15
2 Application Layer 17

3 Transport Layer 25
4 Network Layer 25
5 The Link layer and Local area networks 18

Prof. Bhaumik Gelani & Prof. Shilpi Tiwari

1
9/11/2023

Reference Books
Sr. No. Book Name Author Publication
1 Computer Networking- A Top-Down approach, Kurose and Pearson
5th edition Ross
2 Computer Networks- A Top-Down approach, Behrouz Mc Graw Hill
Forouzan
3 Computer Networks (4th edition) Andrew Prentice Hall
Tanenbaum

Prof. Bhaumik Gelani & Prof. Shilpi Tiwari

Unit - 3 Transport Layer

1. Introduction and Transport Layer Services


2. Multiplexing and Demultiplexing
3. Connectionless Transport (UDP)
4. Principles of Reliable Data Transfer
5. Connection-oriented Transport (TCP)
6. Congestion Control
7. TCP Congestion Control

Prof. Bhaumik Gelani & Prof. Shilpi Tiwari

2
9/11/2023

1.
Introduction and Transport Layer Services

• Transport Layer :
• The transport layer is responsible for the delivery of a message from one
process to another.
• Transport Layer is the fourth layer from the top in OSI Model which
provide communication services to the application processes that was
running on different hosts.
• Transport Layer provides the services to the session layer and it receives
the services from network layer.

Prof. Bhaumik Gelani & Prof. Shilpi Tiwari

Cont..

Prof. Bhaumik Gelani & Prof. Shilpi Tiwari

3
9/11/2023

Cont..

• The services provided by transport layer includes error correction as well as


segmenting and De-segmenting data before and after it's sent on the network.

• Transport layer also provides the flow control functionality and ensures that
segmented data is delivered across the network in the right sequence.

• The two main Transport layer protocols are:


• Transmission Control Protocol
• It provides reliable communication between two hosts.
• User Datagram Protocol
• It provides unreliable communication between two hosts.

Prof. Bhaumik Gelani & Prof. Shilpi Tiwari

Cont..

• Working of Transport Layer:

Prof. Bhaumik Gelani & Prof. Shilpi Tiwari

4
9/11/2023

Cont..

• At the sender’s side:


• At the sender's end, transport layer collect data from application layer i.e
message and performs segmentations to divide the message into segments
and then adds the port number of source and destination in header and send
that message to network layer.

• At the receiver’s side:


• At the receiver's end, transport layer collects data from network layer and
then reassembles the segmented data and identifies port number by reading
its header to send that message to appropriate port in the session layer.

Prof. Bhaumik Gelani & Prof. Shilpi Tiwari Unit – 3

Transport Layer Services

• The services provided by the transport layer protocols can be divided into
five categories:
1. End-to-end delivery
2. Addressing
3. Reliable delivery
4. Flow control
5. Multiplexing

Prof. Bhaumik Gelani & Prof. Shilpi Tiwari

5
9/11/2023

Cont..

Prof. Bhaumik Gelani & Prof. Shilpi Tiwari

Cont..

• 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.

Prof. Bhaumik Gelani & Prof. Shilpi Tiwari

6
9/11/2023

Cont..

• The reliable delivery has four aspects:

Prof. Bhaumik Gelani & Prof. Shilpi Tiwari

Cont..

• 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.

Prof. Bhaumik Gelani & Prof. Shilpi Tiwari

7
9/11/2023

Cont..

• Addressing:
• 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.

• The transport layer protocols need to know which upper-layer


protocols are communicating.

Prof. Bhaumik Gelani & Prof. Shilpi Tiwari

Cont..

Prof. Bhaumik Gelani & Prof. Shilpi Tiwari

8
9/11/2023

Cont..

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

• Multiplexing can occur in two ways:


• Upward multiplexing
• Upward multiplexing

Prof. Bhaumik Gelani & Prof. Shilpi Tiwari

Cont..

• 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.

Prof. Bhaumik Gelani & Prof. Shilpi Tiwari

9
9/11/2023

Cont..

• 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.

Prof. Bhaumik Gelani & Prof. Shilpi Tiwari Unit – 3

Transport Services Primitives

• A primitive simply means Operations.

• A service primitive is a set of operations that the user can invoke to access the
service.

• The communication between the two layers is carried out through a set of
operations called service primitives that are available to a user or other entity to
access the service.

Prof. Bhaumik Gelani & Prof. Shilpi Tiwari

10
9/11/2023

Cont..

• Classification of Service Primitives

Prof. Bhaumik Gelani & Prof. Shilpi Tiwari

Cont..

Primitive Meaning
• It represent entity that wants or request service to perform some
Request action or do some work (requesting for connection to remote
computer).
• It represent entity that is to be informed about event (receiver just
Indication
have received request of connection).
• It represents entity that is responding to event (receiver is simply
Response
sending the permission or allowing to connect).
• It represent entity that acknowledges the response to earlier
Confirm request that has come back (sender just acknowledge the
permission to get connected to the remote host).

Prof. Bhaumik Gelani & Prof. Shilpi Tiwari Unit – 3

11
9/11/2023

2.
Multiplexing and Demultiplexing

• 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.

Prof. Bhaumik Gelani & Prof. Shilpi Tiwari

Cont..

Prof. Bhaumik Gelani & Prof. Shilpi Tiwari

12
9/11/2023

Cont..

• Multiplexing is the process of collecting the data from multiple


application processes of the sender, enveloping that data with headers and
sending them as a whole to the intended receiver.

• In Multiplexing at the Transport Layer, the data is collected from


various application processes. These segments contain the source port
number, destination port number, header files, and data.

• These segments are passed to the Network Layer which adds the
source and destination IP address to get the datagram.

Prof. Bhaumik Gelani & Prof. Shilpi Tiwari

Cont..
• Demultiplexing
• Delivering the received segments at the receiver side to the correct app
layer processes is called demultiplexing.

• The destination host receives the IP datagrams; each datagram has a


source IP address and a destination IP address.

• Each datagram carries 1 transport layer segment.


• Each segment has the source and destination port number.
• The destination host uses the IP addresses and port numbers to direct the
segment to the appropriate socket.

Prof. Bhaumik Gelani & Prof. Shilpi Tiwari

13
9/11/2023

Cont..

Prof. Bhaumik Gelani & Prof. Shilpi Tiwari

Cont..

Prof. Bhaumik Gelani & Prof. Shilpi Tiwari

14
9/11/2023

Cont..

• After segmenting the data, port numbers are given to each segment to be
ready for transmission.

• Then the segments are put on a wire to travel across the network to the
destination. This process is called "Multiplexing".

• When the transmitted segments reach the Transport layer of the


destination, they are automatically sent up to their appropriate
applications. This process is called "Demultiplexing".

Prof. Bhaumik Gelani & Prof. Shilpi Tiwari Unit – 3

3.
Connectionless Transport (UDP)
• UDP stands for User Datagram Protocol.
• UDP is a simple protocol and it provides non-sequenced transport
functionality.

• UDP is a connectionless protocol.


• 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.
• The packet produced by the UDP protocol is known as a user datagram.

Prof. Bhaumik Gelani & Prof. Shilpi Tiwari

15
9/11/2023

Cont..
UDP Header
• UDP header is 8-bytes fixed and simple header, while for TCP it may vary
from 20 bytes to 60 bytes.
• First 8 Bytes contains all necessary header information and remaining part
consist of data.

Prof. Bhaumik Gelani & Prof. Shilpi Tiwari

Cont..

• UDP port number fields are each 16 bits long, therefore range for port
numbers defined from 0 to 65535; port number 0 is reserved.

• Port numbers help to distinguish different user requests or process.


• 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.

Prof. Bhaumik Gelani & Prof. Shilpi Tiwari

16
9/11/2023

Cont..

• 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.
• Total length:
• It defines the total length of the user datagram in bytes.
• It is a 16-bit field.
• Checksum:
• The checksum is a 16-bit field which is used in error detection.

Prof. Bhaumik Gelani & Prof. Shilpi Tiwari Unit – 3

Real Time Transport Protocol (RTP)

• RTP Stands for Real Time Transport Protocol.


• A protocol is designed to handle real-time traffic (like audio and video) of
the Internet, is known as Real Time Transport Protocol (RTP).
• RTP must be used with UDP.
• It does not have any delivery mechanism like multicasting or port
numbers.
• RTP supports different formats of files like MPEG and MJPEG.

Prof. Bhaumik Gelani & Prof. Shilpi Tiwari

17
9/11/2023

Cont..

• RTP Header Format : The diagram of header format of RTP packet is


shown below:

Prof. Bhaumik Gelani & Prof. Shilpi Tiwari

Cont..

• Version :
• This 2-bit field defines version number.
• The current version is 2.
• P:
• The length of this field is 1-bit.
• If value is 1, then it denotes presence of padding at end of packet and if value is 0,
then there is no padding.
• X:
• The length of this field is also 1-bit.
• If value of this field is set to 1, then its indicates an extra extension header between
data and basic header and if value is 0 then, there is no extra extension.

Prof. Bhaumik Gelani & Prof. Shilpi Tiwari

18
9/11/2023

Cont..

• Contributor count:
• This 4-bit field indicates number of contributors.
• Here maximum possible number of contributor is 15 as a 4-bit field can
allows number from 0 to 15.
• M:
• The length of this field is 1-bit and it is used as end marker by application to
indicate end of its data.
• Payload types:
• This field is of length 7-bit to indicate type of payload.
• We list applications of some common types of payload.

Prof. Bhaumik Gelani & Prof. Shilpi Tiwari

Cont..

• Sequence Number:
• The length of this field is 16 bits. It is used to give serial numbers to RTP
packets.
• It helps in sequencing.
• This field mainly helps in checking lost packets and order mismatch.
• Time Stamp:
• The length of this field is 32-bit.
• It is used to find relationship between times of different RTP packets.
• The value of 1 clock tick is varying from application to application.

Prof. Bhaumik Gelani & Prof. Shilpi Tiwari

19
9/11/2023

Cont..

• Synchronization Source Identifier:


• This is a 32-bit field used to identify and define the source.
• The value for this source identifier is a random number that is chosen by
source itself.
• This mainly helps in solving conflict arises when two sources started with the
same sequencing number.
• Contributor Identifier:
• This is also a 32-bit field used for source identification where there is more
than one source present in session.
• The mixer source use Synchronization source identifier and other remaining
sources (maximum 15) use Contributor identifier.

Prof. Bhaumik Gelani & Prof. Shilpi Tiwari

Cont..

• Applications of RTP :
1. RTP mainly helps in media mixing, sequencing and time-stamping.
2. Voice over Internet Protocol (VoIP)
3. Video Teleconferencing over Internet.
4. Internet Audio and video streaming.

Prof. Bhaumik Gelani & Prof. Shilpi Tiwari Unit – 3

20
9/11/2023

4.
Principles of Reliable Data Transfer
• 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.

Prof. Bhaumik Gelani & Prof. Shilpi Tiwari

Cont..

• 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.

Prof. Bhaumik Gelani & Prof. Shilpi Tiwari

21
9/11/2023

Cont..

• Study of Reliable Data Transfer:

Prof. Bhaumik Gelani & Prof. Shilpi Tiwari

Cont..

• 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.

Prof. Bhaumik Gelani & Prof. Shilpi Tiwari

22
9/11/2023

Cont..

• 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.

Prof. Bhaumik Gelani & Prof. Shilpi Tiwari

Cont..

• Study of Unreliable Data Transfer

Prof. Bhaumik Gelani & Prof. Shilpi Tiwari

23
9/11/2023

Cont..

• Similarly in an unreliable channel we have design the sending and


receiving side.

• The sending side of the protocol is called from the above layer to
rdt_send() then it will pass the data that is to be delivered to the

application layer at the receiving side (here rdt-send() is a function for

sending data where rdt stands for reliable data transfer protocol and

_send() is used for the sending side).

Prof. Bhaumik Gelani & Prof. Shilpi Tiwari

Cont..

• On the receiving side, rdt_rcv() (rdt_rcv() is a function for receiving data


where -rcv() is used for receiving side), will be called when a packet
arrives from the receiving side of the unreliable channel.

• When the rdt protocol wants to deliver data to the application layer, it will
do so by calling deliver_data() (where deliver_data() is a function for
delivering data to upper layer).

• In reliable data transfer protocol, we only consider the case of


unidirectional data transfer, that is transfer of data from the sending side to
receiving side(i.e. only in one direction).

Prof. Bhaumik Gelani & Prof. Shilpi Tiwari

24
9/11/2023

Cont..

• In order to exchange packets containing the data that is needed to be


transferred the both (sending and receiving) sides of rdt also need to
exchange control packets in both direction (i.e., back and forth), both the
sides of rdt send packets to the other side by a call to udt_send()
(udt_send() is a function used for sending data to other side where udt
stands for unreliable data transfer protocol).

Prof. Bhaumik Gelani & Prof. Shilpi Tiwari Unit – 3

Stop and Wait Protocol


• stop and wait means, whatever the data that sender wants to send, he sends
the data to the receiver.
• After sending the data, he stops and waits until he receives the
acknowledgment from the receiver.
• The stop and wait protocol is a flow control protocol where flow control is
one of the services of the data link layer.
• It is a data-link layer protocol which is used for transmitting the data
over the noiseless channels.
• It provides unidirectional data transmission which means that either
sending or receiving of data will take place at a time.
• It provides flow-control mechanism but does not provide any error
control mechanism.

Prof. Bhaumik Gelani & Prof. Shilpi Tiwari

25
9/11/2023

Cont..

• Working of Stop and Wait protocol:

Prof. Bhaumik Gelani & Prof. Shilpi Tiwari

Cont..

• The primitives of stop and wait protocol are:


• Sender side:
• Rule 1: Sender sends one data packet at a time.
• Rule 2: Sender sends the next packet only when it receives the
acknowledgment of the previous packet.
• Therefore, the idea of stop and wait protocol in the sender's side is very
simple, i.e., send one packet at a time, and do not send another packet
before receiving the acknowledgment.
• Receiver side
• Rule 1: Receive and then consume the data packet.
• Rule 2: When the data packet is consumed, receiver sends the
acknowledgment to the sender.

Prof. Bhaumik Gelani & Prof. Shilpi Tiwari

26
9/11/2023

Cont..

• Problems:
• Lost Data
• Lost Acknowledgement

Lost Data Lost Acknowledgement

Prof. Bhaumik Gelani & Prof. Shilpi Tiwari

Cont..

• Stop-and-Wait is a simple protocol used for transmitting data between two


devices over a communication channel.

• In this protocol, the sender sends a packet of data to the receiver and then
waits for the receiver to acknowledge the packet before sending the next
packet.

• The receiver sends an acknowledgement to the sender indicating that the


packet has been received and is error-free.

Prof. Bhaumik Gelani & Prof. Shilpi Tiwari Unit – 3

27
9/11/2023

Cont..

Stop and Wait ARQ (Automatic Repeat Request)

• Problems:
• Lost Data
• Lost Acknowledgement
• Above 2 problems are resolved by Stop and Wait ARQ (Automatic Repeat
Request) that does both error control and flow control.

Prof. Bhaumik Gelani & Prof. Shilpi Tiwari

Cont..

• Working of Stop and Wait ARQ:


• Sender A sends a data frame or packet with sequence number 0.
• Receiver B, after receiving data frame, sends and acknowledgement
with sequence number 1 (sequence number of next expected data
frame or packet)

• There is only one bit sequence number that implies that both sender
and receiver have buffer for one frame or packet only.

Prof. Bhaumik Gelani & Prof. Shilpi Tiwari

28
9/11/2023

Cont..

Prof. Bhaumik Gelani & Prof. Shilpi Tiwari

Cont..

• Characteristics:
• Used in Connection-oriented communication.
• It offers error and flow control
• It is used in Data Link and Transport Layers
• Stop and Wait ARQ mainly implements Sliding Window Protocol
concept with Window Size 1.
• Resolved Problems:
• Time Out
• Sequence Number

Prof. Bhaumik Gelani & Prof. Shilpi Tiwari

29
9/11/2023

Cont..

Time Out Sequence Number

Prof. Bhaumik Gelani & Prof. Shilpi Tiwari Unit – 3

Sliding Window Protocols


• The sender sends the data frames according to the specified window
size of the sender and the receiver receives the data frames according
to its specified window size.

• The range of the sequence number depends on the size of the data
frame i.e. N. So, the range of the sequence numbers can be 0 to 2 ^ N-1.

• Let us take a simple example to understand the working of the Sliding


Window Protocol.

Prof. Bhaumik Gelani & Prof. Shilpi Tiwari

30
9/11/2023

Cont..

• Working of the Sliding Window Protocol:

Prof. Bhaumik Gelani & Prof. Shilpi Tiwari

Cont..
• Let us suppose that the sender's window size is taken as 4.
• So, the sequence number of the data frame will be in the range of 0 to (2 ^
N-1) i.e. 0, 1, 2, 3, 0, 1, 2, 3, and so on.
• The steps of data transmission can be:
1. The sender sends multiple frames.
2. The receiver receives the frames and sends back an ACK.
3. Again the sender sends the next frame.
4. If the receiver does not sends back an ACK in the specified time then the
sender sends back the frame as the frame is either lost or damaged in the last
transmission.
5. This process is continued till all the frames have been received by the
receiver.

Prof. Bhaumik Gelani & Prof. Shilpi Tiwari Unit – 3

31
9/11/2023

Cont..

BASIS FOR STOP-AND-WAIT SLIDING WINDOW


COMPARISON PROTOCOL PROTOCOL
Behaviour Request and reply Simultaneous transmit
Number of transferrable Only one Multiple
frames
Efficiency Less More comparatively
Sent after each arriving Window of
Acknowledgement packet acknowledgement is
maintained
Type of transmission Half duplex Full duplex
Propagation delay Long Short
Link utilisation Poor Better

Prof. Bhaumik Gelani & Prof. Shilpi Tiwari Unit – 3

Types of Sliding Window Protocols


• The Sliding Window ARQ (Automatic Repeat reQuest) protocols are of
two categories:

Prof. Bhaumik Gelani & Prof. Shilpi Tiwari

32
9/11/2023

Go-Back-N ARQ (Automatic Repeat Request )


• In Go-Back-N ARQ protocol, if one frame is lost or damaged, then it
retransmits all the frames after which it does not receive the positive
ACK.

• Three possibilities can occur for retransmission:


1. Damaged Frame
2. Lost Data Frame
3. Lost Acknowledgement

Prof. Bhaumik Gelani & Prof. Shilpi Tiwari

Cont..
• Go-Back-N ARQ (Automatic Repeat Request ):

Prof. Bhaumik Gelani & Prof. Shilpi Tiwari

33
9/11/2023

Cont..

• Damaged Frame:
• When the frame is damaged, then the receiver sends a NAK frame.
• In the above figure, three frames have been transmitted before an error
discovered in the third frame.
• In this case, ACK 2 has been returned telling that the frames 0,1 have
been received successfully without any error.
• The receiver discovers the error in data 2 frame, so it returns the NAK
2 frame.
• The frame 3 is also discarded as it is transmitted after the damaged
frame.
• Therefore, the sender retransmits the frames 2,3.

Prof. Bhaumik Gelani & Prof. Shilpi Tiwari

Cont..

• Lost Data Frame:


• In Sliding window protocols, data frames are sent sequentially.
• If any of the frames is lost, then the next frame arrive at the receiver is
out of sequence.

• The receiver checks the sequence number of each of the frame,


discovers the frame that has been skipped, and returns the NAK for the
missing frame.

• The sending device retransmits the frame indicated by NAK as well as


the frames transmitted after the lost frame.

Prof. Bhaumik Gelani & Prof. Shilpi Tiwari

34
9/11/2023

Cont..

• Lost Acknowledgement:
• The sender can send as many frames as the windows allow before
waiting for any acknowledgement.
• Once the limit of the window is reached, the sender has no more
frames to send; it must wait for the acknowledgement.
• If the acknowledgement is lost, then the sender could wait forever.
• To avoid such situation, the sender is equipped with the timer that
starts counting whenever the window capacity is reached.
• If the acknowledgement has not been received within the time limit,
then the sender retransmits the frame since the last ACK.

Prof. Bhaumik Gelani & Prof. Shilpi Tiwari Unit – 3

Selective Repeat ARQ

Prof. Bhaumik Gelani & Prof. Shilpi Tiwari

35
9/11/2023

• Selective Repeat ARQ technique is more efficient than Go-Back-n ARQ.


• Selective Repeat is also the sliding window protocol which detects or
corrects the error occurred in the datalink layer.

• The selective repeat protocol retransmits only that frame which is


damaged or lost.

• In selective repeat protocol, the retransmitted framed is received out of


sequence.

• The selective repeat protocol can perform the following actions:

Prof. Bhaumik Gelani & Prof. Shilpi Tiwari

Cont..

1. In this technique, only those frames are retransmitted for which negative
acknowledgement (NAK) has been received.

2. The receiver storage buffer keeps all the damaged frames on hold until
the frame in error is correctly received.

3. The receiver must have an appropriate logic for reinserting the frames in
a correct order.

4. The sender must consist of a searching mechanism that selects only the
requested frame for retransmission.

Prof. Bhaumik Gelani & Prof. Shilpi Tiwari Unit – 3

36
9/11/2023

Cont..
BASIS FOR
GO-BACK-N SELECTIVE REPEAT
COMPARISON

Retransmits all the frames that sent Retransmits only those frames
Basic after the frame which suspects to be that are suspected to lost or
damaged or lost. damaged.

Bandwidth If error rate is high, it wastes a lot of Comparatively less bandwidth is


Utilization bandwidth. wasted in retransmitting.

Complexity Less complicated. More complex.

Window size N-1 <= (N+1)/2


Sorting is neither required at sender Receiver must be able to sort as
Sorting side nor at receiver side. it has to maintain the sequence
of the frames.

Prof. Bhaumik Gelani & Prof. Shilpi Tiwari

Cont..

BASIS FOR
GO-BACK-N SELECTIVE REPEAT
COMPARISON

No searching of frame is required The sender must be able to search


Searching neither on sender side nor on and select only the requested
receiver frame.

ACK Numbers NAK number refer to the next NAK number refer to the frame
expected frame number. lost.

Use It more often used. It is less in practice because of its


complexity.

Prof. Bhaumik Gelani & Prof. Shilpi Tiwari

37
9/11/2023

Cont..

GO-BACK-N SELECTIVE REPEAT

Prof. Bhaumik Gelani & Prof. Shilpi Tiwari Unit – 3

Difference between Stop and Wait, Go-Back-N and Selective Repeat

PROPERTIES STOP AND WAIT GO-BACK-N SELECTIVE REPEAT


Sender window size 1 N N

Receiver Window size 1 1 N

Minimum Sequence
2 N+1 2N
number
Efficiency 1/(1+2*a) N/(1+2*a) N/(1+2*a)

Type of Acknowledgement Individual Cumulative Individual

Supported order at Out-of-order delivery as


– In-order delivery only
Receiving end well

Prof. Bhaumik Gelani & Prof. Shilpi Tiwari Unit – 3

38
9/11/2023

5.
Connection-oriented Transport (TCP)

• Connection Oriented Transport (TCP):


• TCP stands for Transmission Control Protocol.
• It provides full transport layer services to applications.
• It is a connection-oriented protocol means the connection
established between both the ends of the transmission.

Prof. Bhaumik Gelani & Prof. Shilpi Tiwari

Cont..

• Features Of TCP protocol:


• Stream data transfer
• Reliability
• Flow Control
• Multiplexing
• Logical Connections
• Full Duplex

Prof. Bhaumik Gelani & Prof. Shilpi Tiwari

39
9/11/2023

Cont..

• 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.

• 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.

Prof. Bhaumik Gelani & Prof. Shilpi Tiwari

Cont..

• 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.
• 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 De-multiplexing. TCP transmits the packet to the correct application by
using the logical channels known as ports.

Prof. Bhaumik Gelani & Prof. Shilpi Tiwari

40
9/11/2023

Cont..
• 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.
• 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:
• Establish a connection between two TCPs.
• Data is exchanged in both the directions.
• The Connection is terminated.

Prof. Bhaumik Gelani & Prof. Shilpi Tiwari Unit – 3

• TCP Header :

Prof. Bhaumik Gelani & Prof. Shilpi Tiwari

41
9/11/2023

Cont..

• Source port address:


• It is used to define the address of the application program in a source computer.
• It is a 16-bit field.

• Destination port address:


• It is used to define the address of the application program in a destination computer.
• It is a 16-bit field.

• 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.

Prof. Bhaumik Gelani & Prof. Shilpi Tiwari

Cont..

• Acknowledgement number:
• A 32-field acknowledgement number acknowledge the data from other
communicating devices.
• If ACK field is set to 1, then it specifies the sequence number that the receiver is
expecting to receive.

• Header Length (HLEN):


• It specifies the size of the TCP header in 32-bit words.
• The minimum size of the header is 5 words, and the maximum size of the header is
15 words.
• Therefore, the maximum size of the TCP header is 60 bytes, and the minimum size
of the TCP header is 20 bytes.

• Reserved:
• It is a six-bit field which is reserved for future use.

Prof. Bhaumik Gelani & Prof. Shilpi Tiwari

42
9/11/2023

Cont..
• Control bits:
• Each bit of a control field functions individually and independently.
• A control bit defines the use of a segment or serves as a validity check for other
fields.

• There are total six types of flags in control field:

Prof. Bhaumik Gelani & Prof. Shilpi Tiwari

Cont..

Flag Description

URG • The value of the urgent pointer field is valid.

ACK • The value of the acknowledgment field is valid.

PSH • Push the data.

RST • The connection must be reset.

SYN • Synchronize sequence numbers during connection.

FIN • Terminate the connection.

Prof. Bhaumik Gelani & Prof. Shilpi Tiwari

43
9/11/2023

Cont..

• Window Size:
• The window is a 16-bit field that defines the size of the window.

• Checksum:
• The checksum is a 16-bit field used in error detection.

• Urgent pointer:
• If URG flag is set to 1, then this 16-bit field is an offset from the sequence number
indicating that it is a last urgent data byte.

• Options and padding:


• It defines the optional fields that convey the additional information to the receiver.

Prof. Bhaumik Gelani & Prof. Shilpi Tiwari Unit – 3

TCP Connection Termination

• TCP (Transmission Control Protocol) is a transmission protocol that


ensures data transmission in an ordered and secure manner.
• It sends and receives the data packets in the same order.
• TCP is a four-layer protocol compared to OSI, which is a seven-
layer transmission process.
• It is recommended to transmit data from high-level protocols due to its
integrity and security between the server and client.

Prof. Bhaumik Gelani & Prof. Shilpi Tiwari

44
9/11/2023

Cont..

• TCP Connection:

Prof. Bhaumik Gelani & Prof. Shilpi Tiwari

Cont..

• TCP Connection Termination


1. TCP Connection (A 3-way handshake)
2. TCP Termination (A 4-way handshake)
• TCP Connection (A 3-way handshake):
• Handshake refers to the process to establish connection between the client
and server.
• Handshake is simply defined as the process to establish a communication
link.
• To transmit a packet, TCP needs a three way handshake before it starts
sending data.
• The reliable communication in TCP is termed as PAR (Positive
Acknowledgement Re-transmission).
• The positive acknowledgement from the receiver establishes a successful
connection.

Prof. Bhaumik Gelani & Prof. Shilpi Tiwari

45
9/11/2023

Cont..

• TCP Connection (A 3-way handshake):

Prof. Bhaumik Gelani & Prof. Shilpi Tiwari

Cont..

• Step 1 (SYN):
• In the first step, the client wants to establish a connection with a server, so it sends a
segment with SYN(Synchronize Sequence Number) which informs the server that
the client is likely to start communication and with what sequence number it starts
segments with.

• Step 2 (SYN + ACK):


• Server responds to the client request with SYN-ACK signal bits set.
• Acknowledgement(ACK) signifies the response of the segment it received and SYN
signifies with what sequence number it is likely to start the segments with.
• Step 3 (ACK):
• In the final part client acknowledges the response of the server and they both
establish a reliable connection with which they will start the actual data transfer,

Prof. Bhaumik Gelani & Prof. Shilpi Tiwari Unit – 3

46
9/11/2023

• TCP Termination (A 4-way handshake):


• Any device establishes a connection before proceeding with the termination.
• TCP requires 3-way handshake to establish a connection between the client
and server before sending the data.
• Similarly, to terminate or stop the data transmission, it requires a 4-way
handshake.
• The segments required for TCP termination are similar to the segments to
build a TCP connection (ACK and SYN) except the FIN segment.
• The FIN segment specifies a termination request sent by one device to the
other.
• The client is the data transmitter and the server is a receiver in a data
transmission process between the sender and receiver.

Prof. Bhaumik Gelani & Prof. Shilpi Tiwari

Cont..

TCP Termination
(A 4-way handshake):

Prof. Bhaumik Gelani & Prof. Shilpi Tiwari

47
9/11/2023

Cont..

1. Firstly, from one side of the connection, either from the client or the server the
FIN flag will be sent as the request for the termination of the connection.

2. In the second step, whoever receives the FIN flag will then be sending an ACK
flag as the acknowledgment for the closing request to the other side.

3. And, at the Later step, the server will also send a FIN flag as the closing signal to
the other side.

4. In the final step, the TCP, who received the final FIN flag, will be sending an
ACK flag as the final Acknowledgement for the suggested connection closing.

Prof. Bhaumik Gelani & Prof. Shilpi Tiwari Unit – 3

Piggybacking

• Piggybacking is a process of attaching acknowledgment with the data


packet to be sent.

• It is an efficient solution for reducing the bandwidth utilization of the


network.

• TCP is a full-duplex communication protocol, so piggybacking is used


to transmit packets.

Prof. Bhaumik Gelani & Prof. Shilpi Tiwari

48
9/11/2023

• Piggybacking :

Prof. Bhaumik Gelani & Prof. Shilpi Tiwari

• As we can see in the figure, we can see with piggybacking, a single message
(ACK + DATA) over the wire in place of two separate messages.
• Piggybacking improves the efficiency of the bidirectional protocols.
1. If Host A has both acknowledgment and data, which it wants to send, then
the data frame will be sent with the ack field which contains the sequence
number of the frame.
2. If Host A contains only one acknowledgment, then it will wait for some
time, then in the case, if it finds any data frame, it piggybacks the
acknowledgment, otherwise, it will send the ACK frame.
3. If Host A left with only a data frame, then it will add the last
acknowledgment to it. Host A can send a data frame with an ack field
containing no acknowledgment bit.

Prof. Bhaumik Gelani & Prof. Shilpi Tiwari

49
9/11/2023

• Advantages of Piggybacking
1. The major advantage of piggybacking is the better use of available
channel bandwidth. This happens because an acknowledgment frame
needs not to be sent separately.

2. Usage cost reduction.


3. Improves latency of data transfer.
4. To avoid the delay and rebroadcast of frame transmission, piggybacking
uses a very short-duration timer.

Prof. Bhaumik Gelani & Prof. Shilpi Tiwari

• Disadvantages of Piggybacking:
1. The disadvantage of piggybacking is the additional complexity.
2. If the data link layer waits long before transmitting the acknowledgment
(blocks the ACK for some time), the frame will rebroadcast.

Prof. Bhaumik Gelani & Prof. Shilpi Tiwari Unit – 3

50
9/11/2023

6.
Congestion Control
• A state occurring in network layer when the message traffic is so heavy that it
slows down network response time.
• Effects of Congestion
• As delay increases, performance decreases.
• If delay increases, retransmission occurs, making situation worse.
• Congestion control algorithms
1. Leaky Bucket Algorithm
2. Token bucket Algorithm

Prof. Bhaumik Gelani & Prof. Shilpi Tiwari

Cont..

• Leaky Bucket Algorithm:


• The leaky bucket algorithm discovers its use in the context of network
traffic shaping or rate-limiting.
• A leaky bucket execution and a token bucket execution are predominantly
used for traffic shaping algorithms.
• This algorithm is used to control the rate at which traffic is sent to the
network and shape the burst traffic to a steady traffic stream.
• The disadvantages compared with the leaky-bucket algorithm are the
inefficient use of available network resources.
• The large area of network resources such as bandwidth is not being used
effectively.

Prof. Bhaumik Gelani & Prof. Shilpi Tiwari

51
9/11/2023

Cont..

• Leaky Bucket:

Prof. Bhaumik Gelani & Prof. Shilpi Tiwari

Cont..

A leaky bucket algorithm shapes bursty traffic into fixed-rate traffic by


averaging the data rate. It may drop the packets if the bucket is full.

Prof. Bhaumik Gelani & Prof. Shilpi Tiwari

52
9/11/2023

Cont..

Prof. Bhaumik Gelani & Prof. Shilpi Tiwari

Cont..

• Steps are involved in leaky bucket algorithm:


1. When host wants to send packet, packet is thrown into the bucket.
2. The bucket leaks at a constant rate, meaning the network interface
transmits packets at a constant rate.

3. Bursty traffic is converted to a uniform traffic by the leaky bucket.


4. In practice the bucket is a finite queue that outputs at a finite rate.

Prof. Bhaumik Gelani & Prof. Shilpi Tiwari Unit – 3

53
9/11/2023

Cont..

Token bucket Algorithm


• The leaky bucket algorithm enforces output pattern at the average rate, no
matter how bursty the traffic is.
• So in order to deal with the bursty traffic we need a flexible algorithm so that
the data is not lost.
• One such algorithm is token bucket algorithm.
• Steps of this algorithm can be described as follows:
1. In regular intervals tokens are thrown into the bucket. ƒ
2. The bucket has a maximum capacity. ƒ
3. If there is a ready packet, a token is removed from the bucket, and the packet is send.
4. If there is no token in the bucket, the packet cannot be send.

Prof. Bhaumik Gelani & Prof. Shilpi Tiwari

Cont..

• Token bucket Algorithm:

Prof. Bhaumik Gelani & Prof. Shilpi Tiwari

54
9/11/2023

Cont..

The token bucket allows bursty traffic at a regulated maximum rate.

Prof. Bhaumik Gelani & Prof. Shilpi Tiwari

Cont..

• Let’s understand with an example,


• In figure (A) we see a bucket holding three tokens, with five packets waiting
to be transmitted.

• For a packet to be transmitted, it must capture and destroy one token.

• In figure (B) We see that three of the five packets have gotten through, but
the other two are stuck waiting for more tokens to be generated.

Prof. Bhaumik Gelani & Prof. Shilpi Tiwari

55
9/11/2023

Cont..

• Formula:
M*s=C+ρ*s
• Where,
• S – is time taken
• M – Maximum output rate
• ρ – Token arrival rate
• C – Capacity of the token bucket in byte

Prof. Bhaumik Gelani & Prof. Shilpi Tiwari Unit – 3

• Differentiate Between Leaky Bucket And Token Bucket


BASIS FOR
COMPARISON
Leaky Bucket Token Bucket

A leaky bucket algorithm shapes bursty


Basic traffic into fixed-rate traffic by averaging the The token bucket allows bursty traffic at a
data rate. It may drop the packets if the regulated maximum rate.
bucket is full.

Token Independent Dependent

If Bucket is Full Packet or Data is Discarded Token are Discarded But Not the Packet.

Sends The Packets Average Rate Faster

Save Token No Yes

Prof. Bhaumik Gelani & Prof. Shilpi Tiwari

56
9/11/2023

Cont..

• Leaky Bucket::o • Token Bucket:

Prof. Bhaumik Gelani & Prof. Shilpi Tiwari Unit – 3

7.
TCP Congestion Control
• TCP congestion control is a method used by the TCP protocol to
manage data flow over a network and prevent congestion.
• TCP uses a congestion window and congestion policy that avoids
congestion.
• The size of the sender window is determined by the following two
factors:
1. Receiver window size
2. Congestion window size

Prof. Bhaumik Gelani & Prof. Shilpi Tiwari

57
9/11/2023

Cont..

• Approaches for Congestion Control in TCP:

Prof. Bhaumik Gelani & Prof. Shilpi Tiwari

Cont..
• 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.
• The formula for determining the size of the congestion window
is Congestion window size = Congestion window size + Maximum
segment size.

Prof. Bhaumik Gelani & Prof. Shilpi Tiwari

58
9/11/2023

Cont..

• Slow Start Phase:

Prof. Bhaumik Gelani & Prof. Shilpi Tiwari

Cont..

Prof. Bhaumik Gelani & Prof. Shilpi Tiwari

59
9/11/2023

Cont..

• This is how you calculate the size of the congestion window and it goes on for n
number of values.
• The general formula for determining the size of the congestion window is (2)round
trip time.

• This phase continues until window size reaches its slow start threshold.
• The formula for determining the threshold is given:
Threshold
=
Maximum number of TCP segments that the receiver window can
accommodate / 2
=
Receiver window size / Maximum Segment Size) / 2

Prof. Bhaumik Gelani & Prof. Shilpi Tiwari Unit – 3

Cont..
• Congestion Avoidance Phase:
• In this phase, after the threshold is reached, the size of the congestion
window is increased by the sender linearly in order to avoid congestion.
• Each time an acknowledgment is received, the sender increments the size of
the congestion window by 1.

Prof. Bhaumik Gelani & Prof. Shilpi Tiwari

60
9/11/2023

Cont..

• The formula for determining the size of the congestion window in this phase is:

Congestion window size = Congestion window size + 1.

• This phase continues until the size of the window becomes equal to that of the
receiver window size.

Prof. Bhaumik Gelani & Prof. Shilpi Tiwari Unit – 3

Cont..
• 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
1. In this, the timer time-out expires even before receiving acknowledgment
for a segment.
2. It suggests a stronger possibility of congestion in a network
3. In this, there are chances that a segment has been dropped in the network
• Reaction in response to Detection on time out:
1. Setting the threshold to start to half of the current size of window
2. Decreasing the size of the congestion window to MSS
3. Slow start phase is resumed

Prof. Bhaumik Gelani & Prof. Shilpi Tiwari

61
9/11/2023

Cont..

• Case-02: Detection On 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.
• The chances are that fewer segments have dropped while the one sent
later might have reached.
• Reaction on receiving 3 duplicate acknowledgments:
• Setting the threshold to start to 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

Prof. Bhaumik Gelani & Prof. Shilpi Tiwari Unit – 3

Cont..
• Difference Between Flow Control and Congestion Control
BASIS FOR
FLOW CONTROL CONGESTION CONTROL
COMPARISON
Basic It controls the traffic from a particular It controls the traffic entering the
sender to a receiver. network.
Purpose It prevents the receiver from being It prevents the network from getting
overwhelmed by the data. congested.
Responsibility Data Link Layer and Transport Layer. Network Layer and Transport Layer.
Responsible The sender is responsible for The transport layer is responsible
transmitting extra traffic at receivers transmitting extra traffic into the
side. network.
Preventive The sender transmits the data slowly to Transport layer transmits the data into
measures the receiver. the network slowly.
Methods Feedback-based flow control and Rate- Provisioning, traffic-aware routing
based flow control and admission control

Prof. Bhaumik Gelani & Prof. Shilpi Tiwari Unit – 3

62
9/11/2023

Cont..

Network Performance

• It measures how well a network can support communication between two


nodes in the Network or with nodes of other networks in the global scope.

• The two major tasks in a network are the Transmission and reception of
information.

• We need to focus on how fast a message is transmitted and how fast a node
can receive a request and find the needed information.

Prof. Bhaumik Gelani & Prof. Shilpi Tiwari

Cont..

• Network Performance various Parameters:


1. Transit Time
2. Response Time
3. Throughput
4. Bandwidth
5. Delay/ Latency
6. Jitter

Prof. Bhaumik Gelani & Prof. Shilpi Tiwari

63
9/11/2023

Cont..

• Transit Time:
• The total time a node takes to transmit a message from the beginning until
the last character of the message.

• Transit stands for Transmission.

• Response Time:
• The total time a node takes to process an inquiry or a request from another
node/ device and respond.

• It is the time between the inquiry's end and the response's beginning.

Prof. Bhaumik Gelani & Prof. Shilpi Tiwari

Cont..

• Throughput:
• Throughput measures how much data is transferred successfully from the
sender node to the receiver node in a particular time frame.

• It is measured in bits per second or data per second.


• Bandwidth:
• The maximum possible throughput capacity of the Network.
• We can measure it in bits, megabits, or gigabits per second.
• It defines the highest limit.

Prof. Bhaumik Gelani & Prof. Shilpi Tiwari

64
9/11/2023

Cont..
• Delay/ Latency:
• As we discussed, Throughput is the number of data packets successfully
delivered in a given time.

• Delay is the measure of time taken to do the delivery.


• Jitter:
• A change in the time it takes for a data packet to travel across a network.
• The data packets get stuck on their way to the receiver, usually because the
network is congested.

• They'll arrive at irregular intervals, sounding like choppy audio on a call or


appearing as pixelated video on a video call when they arrive.

Prof. Bhaumik Gelani & Prof. Shilpi Tiwari

Cont..

• Formulas:

Prof. Bhaumik Gelani & Prof. Shilpi Tiwari Unit – 3

65
9/11/2023

Proxy Server

• The proxy server is a computer on the internet that accepts the incoming
requests from the client and forwards those requests to the destination
server.

• It works as a gateway between the end-user and the internet.


• It has its own IP address.
• It separates the client system and web server from the global network.

Prof. Bhaumik Gelani & Prof. Shilpi Tiwari

Cont..

• Mechanism of Proxy Server:

Prof. Bhaumik Gelani & Prof. Shilpi Tiwari

66
9/11/2023

Cont..

Prof. Bhaumik Gelani & Prof. Shilpi Tiwari

Cont..

1. If the requested data or page already exists in the local cache, the proxy
server itself provides the required retrieval to the client.

2. If the requested data or page does not exist in the local cache, the proxy
server forwards that request to the destination server.

3. The proxy servers transfer the replies to the client and also being cached to
them.

Prof. Bhaumik Gelani & Prof. Shilpi Tiwari

67
9/11/2023

Cont..

• Need of Proxy Server


• It reduces the chances of data breaches.
• It adds a subsidiary layer of security between server and outside
traffic.

• It also protects from hackers.


• It filters the requests.

Prof. Bhaumik Gelani & Prof. Shilpi Tiwari

Cont..

• Advantages of Proxy Server:


• It improves the security and enhances the privacy of the user.
• It hides the identity (IP address) of the user.
• It controls the traffic and prevents crashes.
• Also, saves bandwidth by caching files and compressing incoming
traffic.

• Protect our network from malware.


• Allows access to the restricted content.

Prof. Bhaumik Gelani & Prof. Shilpi Tiwari Unit – 3

68
9/11/2023

QUESTIONS
1. Write a short note: Transport Layer.
2. List and explain Transport Layer Services.
3. Write a short note: Services Primitives.
4. Explain Multiplexing and Demultiplexing.
5. Draw and explain UDP Header format.
6. Explain Real Time Transport Protocol (RTP).
7. Draw and explain RTP Header Format.
8. Describe Principles of Reliable Data Transfer.
9. Explain Stop and Wait Protocol.
10. Explain Sliding Window Protocols.
11. Explain Types of Sliding Window Protocols.

Prof. Bhaumik Gelani & Prof. Shilpi Tiwari

Cont..
12. Write a short note: Go-Back-N ARQ (Automatic Repeat Request ).
13. Write a short note: Stop and Wait ARQ and Selective Repeat ARQ.
14. Explain TCP Protocol.
15. List and explain Features of TCP protocol.
16. Draw and explain TCP Header format.
17. Write a short note: TCP Connection Termination.
18.Explain TCP Connection (A 3-way handshake).
19. Explain TCP Termination (A 4-way handshake).
20. What is Congestion Control? Explain Types of Congestion control algorithms.
21. Explain Leaky Bucket Algorithm.
22. Explain Token bucket Algorithm.
23. Write a short note: TCP Congestion Control.
24. List and explain Approaches for Congestion Control in TCP.

Prof. Bhaumik Gelani & Prof. Shilpi Tiwari

69
9/11/2023

Cont..

25. Write a short note: Network Performance.


26. Definition:
• Transit Time, Response Time, Throughput, Bandwidth, Delay/ Latency, Jitter.
27. Write a short note: Proxy Server.
28. Write a short note: Piggybacking.
29. Difference between:
1. Stop and Wait Protocol and Sliding Window Protocols.
2. GO-BACK-N and Selective Reject / Selective Repeat ARQ
3. Leaky Bucket And Token Bucket
4. Flow Control and Congestion Control

Prof. Bhaumik Gelani & Prof. Shilpi Tiwari Unit – 3

New L J Institute of Engineering and Technology


(AICTE approved and GTU affiliated )

Prof. Bhaumik Gelani


Email id: bhaumik.gelani@ljku.edu.in
Mobile : +91 99092 49440
Unit – 3

Prof. Bhaumik Gelani

70

You might also like