Download Congestion Control - Advanced Computer Networks - Lecture Slides and more Slides Computer Networks in PDF only on Docsity!
Congestion Control
and
Resource Allocation
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}.
Figure 6.1 Congestion in a packet-switched
network
Router 1.5-Mbps T1 link Destination
Source 2
Source 1
100-Mbps FDDI
10-Mbps Ethernet
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.
Figure 6.2 Multiple Flows passing through a set of
routers
Router
Source 2
Source 1
Source 3
Router
Router
Destination 2
Destination 1
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.
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)
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.
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
Fairness
For any given set of user throughputs (x 1 , x 2 ,…x n ), the fairness index to the set is defined:
f(x 1 , x 2 , …, x n ) =
n i
n xi 1
2
2 1
n i i
x
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).
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
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.
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.