SlideShare a Scribd company logo
Advanced Computer Networks: Congestion Control 1
Congestion Control
and
Resource Allocation
Lecture material taken from
“Computer Networks A Systems Approach”,
Third Edition,Peterson and Davie,
Morgan Kaufmann, 2003.
Advanced Computer Networks: Congestion Control 2
Definitions
• Flow control:: keep a fast sender from
overrunning a slow receiver.
• Congestion control:: the efforts made by
network nodes to prevent or respond to
overload conditions.
Congestion control is intended to keep a fast
sender from sending data into the network
due to a lack of resources in the network
{e.g., available link capacity, router
buffers}.
Advanced Computer Networks: Congestion Control 3
Congestion Control
• Congestion control is concerned with
the bottleneck routers in a packet
switched network.
• Congestion control can be distinguished
from routing in that sometimes there is
no way to ‘route around’ a congested
router.
Advanced Computer Networks: Congestion Control 4
4
8
6
3
2
1
5 7
Congestion
Figure 7.50b
Leon-Garcia & Widjaja: Communication
Networks
Leon-Garcia & Widjaja: Communication
Networks
Leon-Garcia & Widjaja: Communication
Networks
Copyright ©2000 The McGraw Hill
Companies
Copyright ©2000 The McGraw Hill Companies Leon-Garcia & Widjaja: Communication Networks
Advanced Computer Networks: Congestion Control 5
Figure 6.1 Congestion in a packet-
switched network
Destination
1.5-Mbps T1 link
Router
Source
2
Source
1
100-Mbps FDDI
10-Mbps Ethernet
P&D slide
Advanced Computer Networks: Congestion Control 6
Flows
• flow :: a sequence of packets sent between a
source/destination pair and following the same
route through the network.
• Connectionless flows within the TCP/IP model::
The connection-oriented abstraction, TCP, is
implemented at the transport layer while IP
provides a connectionless datagram delivery
service.
• With connectionless flows, there exists no state
at the routers.
Advanced Computer Networks: Congestion Control 7
Flows
• Connection-oriented flows (e.g., X.25) –
connection-oriented networks maintain hard
state at the routers.
• Soft state :: represents a middle ground where
soft state is not always explicitly created and
removed by signaling.
• Correct operation of the network does not
depend on the presence of soft state, but soft
state can permit the router to better handle
packets.
Advanced Computer Networks: Congestion Control 8
Figure 6.2 Multiple Flows passing
through a set of routers
Router
Source
2
Source
1
Source
3
Router
Router
Destination
2
Destination
1
P&D slide
Advanced Computer Networks: Congestion Control 9
Service
• Best-effort service :: The hosts are given
no opportunity to ask for guarantees on a
flow’s service.
• QoS (Quality of Service) :: is a service
model that supports some type of
guarantee for a flow’s service.
Advanced Computer Networks: Congestion Control 10
Offered load
Throughput
Controlled
Uncontrolled
Figure 7.51
Leon-Garcia & Widjaja: Communication Networks
Copyright ©2000 The McGraw Hill Companies
Lack of Congestion Control
Advanced Computer Networks: Congestion Control 11
Congestion Control Taxonomy
• Router-Centric
– The internal network routers take responsibility for:
• Which packets to forward
• Which packets to drop or mark
• The nature of congestion notification to the hosts.
– This includes the Queuing Algorithm to manage
the buffers at the router.
• Host-Centric
– The end hosts adjust their behavior based on
observations of network conditions.
– (e.g., TCP Congestion Control Mechanisms)
Advanced Computer Networks: Congestion Control 12
Congestion Control Taxonomy
• Reservation-Based – the hosts attempt
to reserve network capacity when the
flow is established.
– The routers allocate resources to satisfy
reservations or the flow is rejected.
– The reservation can be receiver-based
(e.g., RSVP) or sender-based.
Advanced Computer Networks: Congestion Control 13
Congestion Control Taxonomy
• Feedback-Based - The transmission rate is
adjusted (via window size) according to feedback
received from the sub network.
– Explicit feedback – FECN, BECN, ECN
– Implicit feedback – router packet drops.
• Window-Based - The receiver sends an advertised
window to the sender or a window advertisement
can be used to reserve buffer space in routers.
• Rate-Based – The sender’s rate is controlled by
the receiver indicating the bits per second it can
absorb.
Advanced Computer Networks: Congestion Control 14
Evaluation Criteria
• Evaluation criteria are needed to decide how
well a network effectively and fairly
allocates resources.
• Effective measures – throughput, utilization,
efficiency, delay, queue length, goodput and
power.
throughputα
Power = --------------
delay
Advanced Computer Networks: Congestion Control 15
Fairness
• Jain’s fairness index
For any given set of user throughputs (x1, x2,…xn ), the
fairness index to the set is defined:
f(x1, x2, …, xn) =
• Max-min fairness
Essentially ‘borrow’ from the rich-in-performance to help the poor-
in-performance
For example, CSFQ


n
i
i
x
n
1
2
2
1








n
i
i
x
Advanced Computer Networks: Congestion Control 16
Congestion Control
(at the router)
• Queuing algorithms determine:
– How packets are buffered.
– Which packets get transmitted.
– Which packets get marked or dropped.
– Indirectly determine the delay at the router.
• Queues at outgoing links drop/mark packets
to implicitly signal congestion to TCP sources.
• Remember to separate queuing policy from
queuing mechanism.
Advanced Computer Networks: Congestion Control 17
Congestion Control
(at the router)
• Some of the possible choices in queuing
algorithms:
– FIFO (FCFS) also called Drop-Tail
– Fair Queuing (FQ)
– Weighted Fair Queuing (WFQ)
– Random Early Detection (RED)
– Explicit Congestion Notification (ECN).
Advanced Computer Networks: Congestion Control 18
Drop Tail Router [FIFO]
• First packet to arrive is first to be transmitted.
• FIFO queuing mechanism that drops packets from
the tail of the queue when the queue overflows.
• Introduces global synchronization when packets are
dropped from several connections.
• FIFO is the scheduling mechanism, Drop Tail is the
policy
Advanced Computer Networks: Congestion Control 19
Priority Queuing
• Mark each packet with a priority (e.g., in
TOS (Type of Service field in IP)
• Implement multiple FIFO queues, one
for each priority class.
• Always transmit out of the highest
priority non-empty queue.
• Still no guarantees for a given priority
class.
Advanced Computer Networks: Congestion Control 20
Priority Queuing
• Problem:: high priority packets can
‘starve’ lower priority class packets.
• Priority queuing is a simple case of
“differentiated services” [DiffServ].
• One practical use in the Internet is to
protect routing update packets by giving
them a higher priority and a special
queue at the router.
Advanced Computer Networks: Congestion Control 21
Fair Queuing [FQ]
• The basic problem with FIFO is that it
does not separate packets by flow.
• Another problem with FIFO :: an “ill-
behaved” flow can capture an arbitrarily
large share of the network’s capacity.
Idea:: maintain a separate queue for each
flow, and Fair Queuing (FQ) services
these queues in a round-robin fashion.
Advanced Computer Networks: Congestion Control 22
Figure 6.6 Fair Queuing
Flow 1
Flow 2
Flow 3
Flow 4
Round-robin
serv ice
P&D slide
Advanced Computer Networks: Congestion Control 23
Fair Queuing [FQ]
• “Ill-behaved” flows are segregated into
their own queue.
• There are many implementation details
for FQ, but the main problem is that
packets are of different lengths 
simple FQ is not fair!!
• Ideal FQ:: do bit-by-bit round-robin.
Advanced Computer Networks: Congestion Control 24
Fair Queuing [FQ]
• FQ simulates bit-by-bit behavior by using
timestamps (too many details for here!).
• One can think of FQ as providing a guaranteed
minimum share of bandwidth to each flow.
• FQ is work-conserving in that the server is
never idle as long as there is a customer in the
queue.
* Note: The per-flow state information kept
at the router is expensive (it does not
scale).
Advanced Computer Networks: Congestion Control 25
Weighted Fair Queuing
[WFQ]
WFQ idea:: Assign a weight to each flow (queue) such
that the weight logically specifies the number of bits
to transmit each time the router services that queue.
• This controls the percentage of the link capacity that
the flow will receive.
• The queues can represent “classes” of service and
this becomes DiffServ.
• An issue – how does the router learn of the weight
assignments?
– Manual configuration
– Signaling from sources or receivers.

More Related Content

What's hot

Routing protocols for ad hoc wireless networks
Routing protocols for ad hoc wireless networks Routing protocols for ad hoc wireless networks
Routing protocols for ad hoc wireless networks
Divya Tiwari
 
Congestion control in TCP
Congestion control in TCPCongestion control in TCP
Congestion control in TCP
selvakumar_b1985
 
Flow control
Flow controlFlow control
Network layer
Network layerNetwork layer
Network layer
Hasib Shaikh
 
Datalinklayer tanenbaum
Datalinklayer tanenbaumDatalinklayer tanenbaum
Datalinklayer tanenbaum
Mahesh Kumar Chelimilla
 
Delay , Loss & Throughput
Delay , Loss & ThroughputDelay , Loss & Throughput
Delay , Loss & Throughput
Tutor in Tuition Classes
 
Point To Point Protocol
Point To Point ProtocolPoint To Point Protocol
Point To Point Protocol
Phan Vuong
 
Transport layer protocol
Transport layer protocolTransport layer protocol
Transport layer protocol
N.Jagadish Kumar
 
Congestion on computer network
Congestion on computer networkCongestion on computer network
Congestion on computer network
Disi Dc
 
Network Layer
Network LayerNetwork Layer
Network Layer
Ghaffar Khan
 
Network Layer
Network LayerNetwork Layer
Network Layer
Rutwik Jadhav
 
Transportlayer tanenbaum
Transportlayer tanenbaumTransportlayer tanenbaum
Transportlayer tanenbaum
Mahesh Kumar Chelimilla
 
Tcp
TcpTcp
Presentation Routing algorithm
Presentation Routing algorithmPresentation Routing algorithm
Presentation Routing algorithm
Basit Hussain
 
routing
 routing routing
routing
Srinivasa Rao
 
Lecture 19 22. transport protocol for ad-hoc
Lecture 19 22. transport protocol for ad-hoc Lecture 19 22. transport protocol for ad-hoc
Lecture 19 22. transport protocol for ad-hoc
Chandra Meena
 
Congestion control
Congestion controlCongestion control
Congestion control
Madhusudhan G
 
Media Access Control
Media Access ControlMedia Access Control
Media Access Control
VijayaLakshmi514
 
Ch1 delays, loss, and throughput l5
Ch1 delays, loss, and throughput l5Ch1 delays, loss, and throughput l5
Ch1 delays, loss, and throughput l5
Syed Ariful Islam Emon
 
Shortest path algorithm
Shortest  path algorithmShortest  path algorithm
Shortest path algorithm
Subrata Kumer Paul
 

What's hot (20)

Routing protocols for ad hoc wireless networks
Routing protocols for ad hoc wireless networks Routing protocols for ad hoc wireless networks
Routing protocols for ad hoc wireless networks
 
Congestion control in TCP
Congestion control in TCPCongestion control in TCP
Congestion control in TCP
 
Flow control
Flow controlFlow control
Flow control
 
Network layer
Network layerNetwork layer
Network layer
 
Datalinklayer tanenbaum
Datalinklayer tanenbaumDatalinklayer tanenbaum
Datalinklayer tanenbaum
 
Delay , Loss & Throughput
Delay , Loss & ThroughputDelay , Loss & Throughput
Delay , Loss & Throughput
 
Point To Point Protocol
Point To Point ProtocolPoint To Point Protocol
Point To Point Protocol
 
Transport layer protocol
Transport layer protocolTransport layer protocol
Transport layer protocol
 
Congestion on computer network
Congestion on computer networkCongestion on computer network
Congestion on computer network
 
Network Layer
Network LayerNetwork Layer
Network Layer
 
Network Layer
Network LayerNetwork Layer
Network Layer
 
Transportlayer tanenbaum
Transportlayer tanenbaumTransportlayer tanenbaum
Transportlayer tanenbaum
 
Tcp
TcpTcp
Tcp
 
Presentation Routing algorithm
Presentation Routing algorithmPresentation Routing algorithm
Presentation Routing algorithm
 
routing
 routing routing
routing
 
Lecture 19 22. transport protocol for ad-hoc
Lecture 19 22. transport protocol for ad-hoc Lecture 19 22. transport protocol for ad-hoc
Lecture 19 22. transport protocol for ad-hoc
 
Congestion control
Congestion controlCongestion control
Congestion control
 
Media Access Control
Media Access ControlMedia Access Control
Media Access Control
 
Ch1 delays, loss, and throughput l5
Ch1 delays, loss, and throughput l5Ch1 delays, loss, and throughput l5
Ch1 delays, loss, and throughput l5
 
Shortest path algorithm
Shortest  path algorithmShortest  path algorithm
Shortest path algorithm
 

Similar to Congestion control

UNIT II tramission control
UNIT II tramission controlUNIT II tramission control
UNIT II tramission control
sangusajjan
 
9_Network.ppt
9_Network.ppt9_Network.ppt
9_Network.ppt
SushmaShivani
 
Congection control and Internet working
Congection control and Internet workingCongection control and Internet working
Congection control and Internet working
TharuniDiddekunta
 
Chap24
Chap24Chap24
Chap24
Waqas !!!!
 
Congestion control 1
Congestion control 1Congestion control 1
Congestion control 1
Aman Jaiswal
 
QoS (quality of service)
QoS (quality of service)QoS (quality of service)
QoS (quality of service)
Sri Safrina
 
Data link layer
Data link layerData link layer
Data link layer
sbkbca
 
Advanced networking - scheduling and QoS part 1
Advanced networking - scheduling and QoS part 1Advanced networking - scheduling and QoS part 1
Advanced networking - scheduling and QoS part 1
GIST (Gwangju Institute of Science and Technology)
 
10 sdn-vir-6up
10 sdn-vir-6up10 sdn-vir-6up
10 sdn-vir-6up
Sachin Siddappa
 
QoSintro.PPT
QoSintro.PPTQoSintro.PPT
QoSintro.PPT
payal445263
 
Arrjay
ArrjayArrjay
Arrjay
rajnijain15
 
MULTIMEDIA COMMUNICATION & NETWORKS
MULTIMEDIA COMMUNICATION & NETWORKSMULTIMEDIA COMMUNICATION & NETWORKS
MULTIMEDIA COMMUNICATION & NETWORKS
Kathirvel Ayyaswamy
 
XPDS13: On Paravirualizing TCP - Congestion Control on Xen VMs - Luwei Cheng,...
XPDS13: On Paravirualizing TCP - Congestion Control on Xen VMs - Luwei Cheng,...XPDS13: On Paravirualizing TCP - Congestion Control on Xen VMs - Luwei Cheng,...
XPDS13: On Paravirualizing TCP - Congestion Control on Xen VMs - Luwei Cheng,...
The Linux Foundation
 
Ccna4 mod5-frame relay
Ccna4 mod5-frame relayCcna4 mod5-frame relay
Ccna4 mod5-frame relay
CYBERINTELLIGENTS
 
Computer network coe351- part4- final
Computer network coe351- part4- finalComputer network coe351- part4- final
Computer network coe351- part4- final
Taymoor Nazmy
 
Congestion Control
Congestion ControlCongestion Control
Congestion Control
VaishnaviVaishnavi17
 
Network protocols and vulnerabilities
Network protocols and vulnerabilitiesNetwork protocols and vulnerabilities
Network protocols and vulnerabilities
G Prachi
 
International Journal of Engineering Research and Development
International Journal of Engineering Research and DevelopmentInternational Journal of Engineering Research and Development
International Journal of Engineering Research and Development
IJERD Editor
 
Lecture 13
Lecture 13Lecture 13
Lecture 13
sohitagarwal
 
Congestion control and quality of service
Congestion control and quality of serviceCongestion control and quality of service
Congestion control and quality of service
JUW Jinnah University for Women
 

Similar to Congestion control (20)

UNIT II tramission control
UNIT II tramission controlUNIT II tramission control
UNIT II tramission control
 
9_Network.ppt
9_Network.ppt9_Network.ppt
9_Network.ppt
 
Congection control and Internet working
Congection control and Internet workingCongection control and Internet working
Congection control and Internet working
 
Chap24
Chap24Chap24
Chap24
 
Congestion control 1
Congestion control 1Congestion control 1
Congestion control 1
 
QoS (quality of service)
QoS (quality of service)QoS (quality of service)
QoS (quality of service)
 
Data link layer
Data link layerData link layer
Data link layer
 
Advanced networking - scheduling and QoS part 1
Advanced networking - scheduling and QoS part 1Advanced networking - scheduling and QoS part 1
Advanced networking - scheduling and QoS part 1
 
10 sdn-vir-6up
10 sdn-vir-6up10 sdn-vir-6up
10 sdn-vir-6up
 
QoSintro.PPT
QoSintro.PPTQoSintro.PPT
QoSintro.PPT
 
Arrjay
ArrjayArrjay
Arrjay
 
MULTIMEDIA COMMUNICATION & NETWORKS
MULTIMEDIA COMMUNICATION & NETWORKSMULTIMEDIA COMMUNICATION & NETWORKS
MULTIMEDIA COMMUNICATION & NETWORKS
 
XPDS13: On Paravirualizing TCP - Congestion Control on Xen VMs - Luwei Cheng,...
XPDS13: On Paravirualizing TCP - Congestion Control on Xen VMs - Luwei Cheng,...XPDS13: On Paravirualizing TCP - Congestion Control on Xen VMs - Luwei Cheng,...
XPDS13: On Paravirualizing TCP - Congestion Control on Xen VMs - Luwei Cheng,...
 
Ccna4 mod5-frame relay
Ccna4 mod5-frame relayCcna4 mod5-frame relay
Ccna4 mod5-frame relay
 
Computer network coe351- part4- final
Computer network coe351- part4- finalComputer network coe351- part4- final
Computer network coe351- part4- final
 
Congestion Control
Congestion ControlCongestion Control
Congestion Control
 
Network protocols and vulnerabilities
Network protocols and vulnerabilitiesNetwork protocols and vulnerabilities
Network protocols and vulnerabilities
 
International Journal of Engineering Research and Development
International Journal of Engineering Research and DevelopmentInternational Journal of Engineering Research and Development
International Journal of Engineering Research and Development
 
Lecture 13
Lecture 13Lecture 13
Lecture 13
 
Congestion control and quality of service
Congestion control and quality of serviceCongestion control and quality of service
Congestion control and quality of service
 

Recently uploaded

2008 BUILDING CONSTRUCTION Illustrated - Ching Chapter 08 Doors and Windows.pdf
2008 BUILDING CONSTRUCTION Illustrated - Ching Chapter 08 Doors and Windows.pdf2008 BUILDING CONSTRUCTION Illustrated - Ching Chapter 08 Doors and Windows.pdf
2008 BUILDING CONSTRUCTION Illustrated - Ching Chapter 08 Doors and Windows.pdf
Yasser Mahgoub
 
Software Engineering and Project Management - Introduction, Modeling Concepts...
Software Engineering and Project Management - Introduction, Modeling Concepts...Software Engineering and Project Management - Introduction, Modeling Concepts...
Software Engineering and Project Management - Introduction, Modeling Concepts...
Prakhyath Rai
 
Data Driven Maintenance | UReason Webinar
Data Driven Maintenance | UReason WebinarData Driven Maintenance | UReason Webinar
Data Driven Maintenance | UReason Webinar
UReason
 
Advanced control scheme of doubly fed induction generator for wind turbine us...
Advanced control scheme of doubly fed induction generator for wind turbine us...Advanced control scheme of doubly fed induction generator for wind turbine us...
Advanced control scheme of doubly fed induction generator for wind turbine us...
IJECEIAES
 
Comparative analysis between traditional aquaponics and reconstructed aquapon...
Comparative analysis between traditional aquaponics and reconstructed aquapon...Comparative analysis between traditional aquaponics and reconstructed aquapon...
Comparative analysis between traditional aquaponics and reconstructed aquapon...
bijceesjournal
 
Optimizing Gradle Builds - Gradle DPE Tour Berlin 2024
Optimizing Gradle Builds - Gradle DPE Tour Berlin 2024Optimizing Gradle Builds - Gradle DPE Tour Berlin 2024
Optimizing Gradle Builds - Gradle DPE Tour Berlin 2024
Sinan KOZAK
 
2008 BUILDING CONSTRUCTION Illustrated - Ching Chapter 02 The Building.pdf
2008 BUILDING CONSTRUCTION Illustrated - Ching Chapter 02 The Building.pdf2008 BUILDING CONSTRUCTION Illustrated - Ching Chapter 02 The Building.pdf
2008 BUILDING CONSTRUCTION Illustrated - Ching Chapter 02 The Building.pdf
Yasser Mahgoub
 
IEEE Aerospace and Electronic Systems Society as a Graduate Student Member
IEEE Aerospace and Electronic Systems Society as a Graduate Student MemberIEEE Aerospace and Electronic Systems Society as a Graduate Student Member
IEEE Aerospace and Electronic Systems Society as a Graduate Student Member
VICTOR MAESTRE RAMIREZ
 
AI for Legal Research with applications, tools
AI for Legal Research with applications, toolsAI for Legal Research with applications, tools
AI for Legal Research with applications, tools
mahaffeycheryld
 
TIME TABLE MANAGEMENT SYSTEM testing.pptx
TIME TABLE MANAGEMENT SYSTEM testing.pptxTIME TABLE MANAGEMENT SYSTEM testing.pptx
TIME TABLE MANAGEMENT SYSTEM testing.pptx
CVCSOfficial
 
Prediction of Electrical Energy Efficiency Using Information on Consumer's Ac...
Prediction of Electrical Energy Efficiency Using Information on Consumer's Ac...Prediction of Electrical Energy Efficiency Using Information on Consumer's Ac...
Prediction of Electrical Energy Efficiency Using Information on Consumer's Ac...
PriyankaKilaniya
 
VARIABLE FREQUENCY DRIVE. VFDs are widely used in industrial applications for...
VARIABLE FREQUENCY DRIVE. VFDs are widely used in industrial applications for...VARIABLE FREQUENCY DRIVE. VFDs are widely used in industrial applications for...
VARIABLE FREQUENCY DRIVE. VFDs are widely used in industrial applications for...
PIMR BHOPAL
 
Gas agency management system project report.pdf
Gas agency management system project report.pdfGas agency management system project report.pdf
Gas agency management system project report.pdf
Kamal Acharya
 
An Introduction to the Compiler Designss
An Introduction to the Compiler DesignssAn Introduction to the Compiler Designss
An Introduction to the Compiler Designss
ElakkiaU
 
22CYT12-Unit-V-E Waste and its Management.ppt
22CYT12-Unit-V-E Waste and its Management.ppt22CYT12-Unit-V-E Waste and its Management.ppt
22CYT12-Unit-V-E Waste and its Management.ppt
KrishnaveniKrishnara1
 
CompEx~Manual~1210 (2).pdf COMPEX GAS AND VAPOURS
CompEx~Manual~1210 (2).pdf COMPEX GAS AND VAPOURSCompEx~Manual~1210 (2).pdf COMPEX GAS AND VAPOURS
CompEx~Manual~1210 (2).pdf COMPEX GAS AND VAPOURS
RamonNovais6
 
Applications of artificial Intelligence in Mechanical Engineering.pdf
Applications of artificial Intelligence in Mechanical Engineering.pdfApplications of artificial Intelligence in Mechanical Engineering.pdf
Applications of artificial Intelligence in Mechanical Engineering.pdf
Atif Razi
 
Curve Fitting in Numerical Methods Regression
Curve Fitting in Numerical Methods RegressionCurve Fitting in Numerical Methods Regression
Curve Fitting in Numerical Methods Regression
Nada Hikmah
 
Design and optimization of ion propulsion drone
Design and optimization of ion propulsion droneDesign and optimization of ion propulsion drone
Design and optimization of ion propulsion drone
bjmsejournal
 
4. Mosca vol I -Fisica-Tipler-5ta-Edicion-Vol-1.pdf
4. Mosca vol I -Fisica-Tipler-5ta-Edicion-Vol-1.pdf4. Mosca vol I -Fisica-Tipler-5ta-Edicion-Vol-1.pdf
4. Mosca vol I -Fisica-Tipler-5ta-Edicion-Vol-1.pdf
Gino153088
 

Recently uploaded (20)

2008 BUILDING CONSTRUCTION Illustrated - Ching Chapter 08 Doors and Windows.pdf
2008 BUILDING CONSTRUCTION Illustrated - Ching Chapter 08 Doors and Windows.pdf2008 BUILDING CONSTRUCTION Illustrated - Ching Chapter 08 Doors and Windows.pdf
2008 BUILDING CONSTRUCTION Illustrated - Ching Chapter 08 Doors and Windows.pdf
 
Software Engineering and Project Management - Introduction, Modeling Concepts...
Software Engineering and Project Management - Introduction, Modeling Concepts...Software Engineering and Project Management - Introduction, Modeling Concepts...
Software Engineering and Project Management - Introduction, Modeling Concepts...
 
Data Driven Maintenance | UReason Webinar
Data Driven Maintenance | UReason WebinarData Driven Maintenance | UReason Webinar
Data Driven Maintenance | UReason Webinar
 
Advanced control scheme of doubly fed induction generator for wind turbine us...
Advanced control scheme of doubly fed induction generator for wind turbine us...Advanced control scheme of doubly fed induction generator for wind turbine us...
Advanced control scheme of doubly fed induction generator for wind turbine us...
 
Comparative analysis between traditional aquaponics and reconstructed aquapon...
Comparative analysis between traditional aquaponics and reconstructed aquapon...Comparative analysis between traditional aquaponics and reconstructed aquapon...
Comparative analysis between traditional aquaponics and reconstructed aquapon...
 
Optimizing Gradle Builds - Gradle DPE Tour Berlin 2024
Optimizing Gradle Builds - Gradle DPE Tour Berlin 2024Optimizing Gradle Builds - Gradle DPE Tour Berlin 2024
Optimizing Gradle Builds - Gradle DPE Tour Berlin 2024
 
2008 BUILDING CONSTRUCTION Illustrated - Ching Chapter 02 The Building.pdf
2008 BUILDING CONSTRUCTION Illustrated - Ching Chapter 02 The Building.pdf2008 BUILDING CONSTRUCTION Illustrated - Ching Chapter 02 The Building.pdf
2008 BUILDING CONSTRUCTION Illustrated - Ching Chapter 02 The Building.pdf
 
IEEE Aerospace and Electronic Systems Society as a Graduate Student Member
IEEE Aerospace and Electronic Systems Society as a Graduate Student MemberIEEE Aerospace and Electronic Systems Society as a Graduate Student Member
IEEE Aerospace and Electronic Systems Society as a Graduate Student Member
 
AI for Legal Research with applications, tools
AI for Legal Research with applications, toolsAI for Legal Research with applications, tools
AI for Legal Research with applications, tools
 
TIME TABLE MANAGEMENT SYSTEM testing.pptx
TIME TABLE MANAGEMENT SYSTEM testing.pptxTIME TABLE MANAGEMENT SYSTEM testing.pptx
TIME TABLE MANAGEMENT SYSTEM testing.pptx
 
Prediction of Electrical Energy Efficiency Using Information on Consumer's Ac...
Prediction of Electrical Energy Efficiency Using Information on Consumer's Ac...Prediction of Electrical Energy Efficiency Using Information on Consumer's Ac...
Prediction of Electrical Energy Efficiency Using Information on Consumer's Ac...
 
VARIABLE FREQUENCY DRIVE. VFDs are widely used in industrial applications for...
VARIABLE FREQUENCY DRIVE. VFDs are widely used in industrial applications for...VARIABLE FREQUENCY DRIVE. VFDs are widely used in industrial applications for...
VARIABLE FREQUENCY DRIVE. VFDs are widely used in industrial applications for...
 
Gas agency management system project report.pdf
Gas agency management system project report.pdfGas agency management system project report.pdf
Gas agency management system project report.pdf
 
An Introduction to the Compiler Designss
An Introduction to the Compiler DesignssAn Introduction to the Compiler Designss
An Introduction to the Compiler Designss
 
22CYT12-Unit-V-E Waste and its Management.ppt
22CYT12-Unit-V-E Waste and its Management.ppt22CYT12-Unit-V-E Waste and its Management.ppt
22CYT12-Unit-V-E Waste and its Management.ppt
 
CompEx~Manual~1210 (2).pdf COMPEX GAS AND VAPOURS
CompEx~Manual~1210 (2).pdf COMPEX GAS AND VAPOURSCompEx~Manual~1210 (2).pdf COMPEX GAS AND VAPOURS
CompEx~Manual~1210 (2).pdf COMPEX GAS AND VAPOURS
 
Applications of artificial Intelligence in Mechanical Engineering.pdf
Applications of artificial Intelligence in Mechanical Engineering.pdfApplications of artificial Intelligence in Mechanical Engineering.pdf
Applications of artificial Intelligence in Mechanical Engineering.pdf
 
Curve Fitting in Numerical Methods Regression
Curve Fitting in Numerical Methods RegressionCurve Fitting in Numerical Methods Regression
Curve Fitting in Numerical Methods Regression
 
Design and optimization of ion propulsion drone
Design and optimization of ion propulsion droneDesign and optimization of ion propulsion drone
Design and optimization of ion propulsion drone
 
4. Mosca vol I -Fisica-Tipler-5ta-Edicion-Vol-1.pdf
4. Mosca vol I -Fisica-Tipler-5ta-Edicion-Vol-1.pdf4. Mosca vol I -Fisica-Tipler-5ta-Edicion-Vol-1.pdf
4. Mosca vol I -Fisica-Tipler-5ta-Edicion-Vol-1.pdf
 

Congestion control

  • 1. Advanced Computer Networks: Congestion Control 1 Congestion Control and Resource Allocation Lecture material taken from “Computer Networks A Systems Approach”, Third Edition,Peterson and Davie, Morgan Kaufmann, 2003.
  • 2. Advanced Computer Networks: Congestion Control 2 Definitions • Flow control:: keep a fast sender from overrunning a slow receiver. • Congestion control:: the efforts made by network nodes to prevent or respond to overload conditions. Congestion control is intended to keep a fast sender from sending data into the network due to a lack of resources in the network {e.g., available link capacity, router buffers}.
  • 3. Advanced Computer Networks: Congestion Control 3 Congestion Control • Congestion control is concerned with the bottleneck routers in a packet switched network. • Congestion control can be distinguished from routing in that sometimes there is no way to ‘route around’ a congested router.
  • 4. Advanced Computer Networks: Congestion Control 4 4 8 6 3 2 1 5 7 Congestion Figure 7.50b Leon-Garcia & Widjaja: Communication Networks Leon-Garcia & Widjaja: Communication Networks Leon-Garcia & Widjaja: Communication Networks Copyright ©2000 The McGraw Hill Companies Copyright ©2000 The McGraw Hill Companies Leon-Garcia & Widjaja: Communication Networks
  • 5. Advanced Computer Networks: Congestion Control 5 Figure 6.1 Congestion in a packet- switched network Destination 1.5-Mbps T1 link Router Source 2 Source 1 100-Mbps FDDI 10-Mbps Ethernet P&D slide
  • 6. Advanced Computer Networks: Congestion Control 6 Flows • flow :: a sequence of packets sent between a source/destination pair and following the same route through the network. • Connectionless flows within the TCP/IP model:: The connection-oriented abstraction, TCP, is implemented at the transport layer while IP provides a connectionless datagram delivery service. • With connectionless flows, there exists no state at the routers.
  • 7. Advanced Computer Networks: Congestion Control 7 Flows • Connection-oriented flows (e.g., X.25) – connection-oriented networks maintain hard state at the routers. • Soft state :: represents a middle ground where soft state is not always explicitly created and removed by signaling. • Correct operation of the network does not depend on the presence of soft state, but soft state can permit the router to better handle packets.
  • 8. Advanced Computer Networks: Congestion Control 8 Figure 6.2 Multiple Flows passing through a set of routers Router Source 2 Source 1 Source 3 Router Router Destination 2 Destination 1 P&D slide
  • 9. Advanced Computer Networks: Congestion Control 9 Service • Best-effort service :: The hosts are given no opportunity to ask for guarantees on a flow’s service. • QoS (Quality of Service) :: is a service model that supports some type of guarantee for a flow’s service.
  • 10. Advanced Computer Networks: Congestion Control 10 Offered load Throughput Controlled Uncontrolled Figure 7.51 Leon-Garcia & Widjaja: Communication Networks Copyright ©2000 The McGraw Hill Companies Lack of Congestion Control
  • 11. Advanced Computer Networks: Congestion Control 11 Congestion Control Taxonomy • Router-Centric – The internal network routers take responsibility for: • Which packets to forward • Which packets to drop or mark • The nature of congestion notification to the hosts. – This includes the Queuing Algorithm to manage the buffers at the router. • Host-Centric – The end hosts adjust their behavior based on observations of network conditions. – (e.g., TCP Congestion Control Mechanisms)
  • 12. Advanced Computer Networks: Congestion Control 12 Congestion Control Taxonomy • Reservation-Based – the hosts attempt to reserve network capacity when the flow is established. – The routers allocate resources to satisfy reservations or the flow is rejected. – The reservation can be receiver-based (e.g., RSVP) or sender-based.
  • 13. Advanced Computer Networks: Congestion Control 13 Congestion Control Taxonomy • Feedback-Based - The transmission rate is adjusted (via window size) according to feedback received from the sub network. – Explicit feedback – FECN, BECN, ECN – Implicit feedback – router packet drops. • Window-Based - The receiver sends an advertised window to the sender or a window advertisement can be used to reserve buffer space in routers. • Rate-Based – The sender’s rate is controlled by the receiver indicating the bits per second it can absorb.
  • 14. Advanced Computer Networks: Congestion Control 14 Evaluation Criteria • Evaluation criteria are needed to decide how well a network effectively and fairly allocates resources. • Effective measures – throughput, utilization, efficiency, delay, queue length, goodput and power. throughputα Power = -------------- delay
  • 15. Advanced Computer Networks: Congestion Control 15 Fairness • Jain’s fairness index For any given set of user throughputs (x1, x2,…xn ), the fairness index to the set is defined: f(x1, x2, …, xn) = • Max-min fairness Essentially ‘borrow’ from the rich-in-performance to help the poor- in-performance For example, CSFQ   n i i x n 1 2 2 1         n i i x
  • 16. Advanced Computer Networks: Congestion Control 16 Congestion Control (at the router) • Queuing algorithms determine: – How packets are buffered. – Which packets get transmitted. – Which packets get marked or dropped. – Indirectly determine the delay at the router. • Queues at outgoing links drop/mark packets to implicitly signal congestion to TCP sources. • Remember to separate queuing policy from queuing mechanism.
  • 17. Advanced Computer Networks: Congestion Control 17 Congestion Control (at the router) • Some of the possible choices in queuing algorithms: – FIFO (FCFS) also called Drop-Tail – Fair Queuing (FQ) – Weighted Fair Queuing (WFQ) – Random Early Detection (RED) – Explicit Congestion Notification (ECN).
  • 18. Advanced Computer Networks: Congestion Control 18 Drop Tail Router [FIFO] • First packet to arrive is first to be transmitted. • FIFO queuing mechanism that drops packets from the tail of the queue when the queue overflows. • Introduces global synchronization when packets are dropped from several connections. • FIFO is the scheduling mechanism, Drop Tail is the policy
  • 19. Advanced Computer Networks: Congestion Control 19 Priority Queuing • Mark each packet with a priority (e.g., in TOS (Type of Service field in IP) • Implement multiple FIFO queues, one for each priority class. • Always transmit out of the highest priority non-empty queue. • Still no guarantees for a given priority class.
  • 20. Advanced Computer Networks: Congestion Control 20 Priority Queuing • Problem:: high priority packets can ‘starve’ lower priority class packets. • Priority queuing is a simple case of “differentiated services” [DiffServ]. • One practical use in the Internet is to protect routing update packets by giving them a higher priority and a special queue at the router.
  • 21. Advanced Computer Networks: Congestion Control 21 Fair Queuing [FQ] • The basic problem with FIFO is that it does not separate packets by flow. • Another problem with FIFO :: an “ill- behaved” flow can capture an arbitrarily large share of the network’s capacity. Idea:: maintain a separate queue for each flow, and Fair Queuing (FQ) services these queues in a round-robin fashion.
  • 22. Advanced Computer Networks: Congestion Control 22 Figure 6.6 Fair Queuing Flow 1 Flow 2 Flow 3 Flow 4 Round-robin serv ice P&D slide
  • 23. Advanced Computer Networks: Congestion Control 23 Fair Queuing [FQ] • “Ill-behaved” flows are segregated into their own queue. • There are many implementation details for FQ, but the main problem is that packets are of different lengths  simple FQ is not fair!! • Ideal FQ:: do bit-by-bit round-robin.
  • 24. Advanced Computer Networks: Congestion Control 24 Fair Queuing [FQ] • FQ simulates bit-by-bit behavior by using timestamps (too many details for here!). • One can think of FQ as providing a guaranteed minimum share of bandwidth to each flow. • FQ is work-conserving in that the server is never idle as long as there is a customer in the queue. * Note: The per-flow state information kept at the router is expensive (it does not scale).
  • 25. Advanced Computer Networks: Congestion Control 25 Weighted Fair Queuing [WFQ] WFQ idea:: Assign a weight to each flow (queue) such that the weight logically specifies the number of bits to transmit each time the router services that queue. • This controls the percentage of the link capacity that the flow will receive. • The queues can represent “classes” of service and this becomes DiffServ. • An issue – how does the router learn of the weight assignments? – Manual configuration – Signaling from sources or receivers.