Download presentation
Presentation is loading. Please wait.
1
Chapter 6 Queuing Disciplines
Networking CS 3470, Section 1
2
Flow control vs Congestion control
Flow control involves preventing senders from overrunning the capacity of the receivers Congestion control involves preventing too much data from being injected into the network, thereby causing switches or links to become overloaded
3
Congestion Control Queuing disciplines in the routers
Discussed today TCP congestion control Congestion avoidance mechanisms
4
Congestion Control and Resource Allocation
Resources Bandwidth of the links Buffers at the routers and switches Packets contend at a router for the use of a link, with each contending packet placed in a queue waiting for its turn to be transmitted over the link
5
Congestion Control and Resource Allocation
When too many packets are contending for the same link The queue overflows Packets get dropped Network is congested! Network should provide a congestion control mechanism to deal with such a situation
6
Congestion Control and Resource Allocation
Congestion control involves both hosts and routers In network elements Various queuing disciplines can be used to control the order in which packets get transmitted and which packets get dropped At the hosts’ end The congestion control mechanism paces how fast sources are allowed to send packets
7
Network Control Issues
Resources are limited. Identify the resources: Buffer space Bandwidth allocation One could simply “route around” congested links. Put a large edge weight on a congested link to route around it. That doesn't solve the inherent problem though.
8
Control Issues Routing in the Internet is a complex issue.
Consider the recent “issue” involving China. b_snafu/ “Bad routing information sourced from China has disrupted the internet for the second time in a fortnight. Global BGP (Border Gateway Routing) lookup tables sucked in data from a small ISP called IDC China Telecommunication, apparently accidentally broadcast by state-owned carrier China Telecommunications, IDG reports. ISPs including AT&T, France Telcom, Level3, Deutsche Telekom, Qwest and Telefonica accepted ill- thought out traffic routes as a result of the incident.”
9
Control issues Routing in the Internet is a complex issue.
Consider the recent “issue” involving China. b_snafu/ “IDC China Telecommunication published ill-conceived routes for between 32,000 and 37,000 networks - about 10 per cent of the net - instead of the normal 40 or so routes, and this information was taken as viable routing options by many service providers for about 20 minutes early on Thursday morning (US time) after China Telecommunications republished it and before the mix-up was resolved. Routers in Asia would have been more likely to adopt the false routes as potentially viable, but effects of the incident were recorded all over the world.”
10
Flows We talk about “flows” in the context of queuing because of the ease in which they can be viewed at different levels: Process to process Host to host Institution to institution Region to region In general, a flow refers to a sequence of packets sent between a source/destination pair, following the same route through the network.
11
Queuing Disciplines Routers must implement some queuing discipline that governs how packets are buffered or prioritized. One can think of queuing disciplines as rules for the allocating bandwidth or rules for the allocation of buffer space within the router. The book discusses two common disciplines: FIFO Fair Queuing
12
FIFO Queuing FIFO queuing is called first-come-first- served (FCFS) queuing First packet that arrives at a router is first packet to be transmitted Amount of buffer space at each router is finite Tail drop - If a packet arrives and the queue (buffer space) is full, then the router discards that packet
13
(a) FIFO queuing; (b) tail drop at a FIFO queue.
14
FIFO Queuing – Priority Queuing
A simple variation on basic FIFO queuing is priority queuing Each packet marked with a priority The routers then implement multiple FIFO queues, one for each priority class Router always transmits packets out of the highest-priority queue if that queue is nonempty before moving on to the next priority queue. Within each priority, packets are still managed in a FIFO manner.
15
Fair Queuing The main problem with FIFO queuing is that it does not discriminate between different traffic sources, or it does not separate packets according to the flow to which they belong. Fair queuing (FQ) maintains a separate queue for each flow currently being handled by the router. The router then services these queues in round- robin algorithm
16
Fair Queuing Fair Queuing
Round-robin service of four flows at a router
17
Fair Queuing The main complication with Fair Queuing is that the packets being processed at a router are not necessarily the same length. To truly allocate the bandwidth of the outgoing link in a fair manner, it is necessary to take packet length into consideration. For example, if a router is managing two flows, one with byte packets and the other with 500-byte packets (perhaps because of fragmentation upstream from this router), then a simple round-robin servicing of packets from each flow’s queue will give the first flow two thirds of the link’s bandwidth and the second flow only one-third of its bandwidth.
18
Fair Queuing Example: Packet length not taken into consideration
Two flows: One with 1000-byte packets, another with 500-byte packets Simple round-robin servicing of packets from each flow’s queue will give the first flow two thirds of the link’s bandwidth and the second flow only one- third of its bandwidth.
19
Queuing Disciplines What we really want is bit-by-bit round-robin; that is, the router transmits a bit from flow 1, then a bit from flow 2, and so on. However, it is not feasible to interleave the bits from different packets. Simulates this behavior instead Determine when a given packet would finish being transmitted if it were being sent using bit-by-bit round- robin Use this finishing time to sequence the packets for transmission.
20
Queuing Disciplines Fair Queuing
To understand the algorithm for approximating bit-by- bit round robin, consider the behavior of a single flow For this flow, let Pi : denote the length of packet i Si: time when the router starts to transmit packet i Fi: time when router finishes transmitting packet i Fi = Si + Pi
21
Queuing Disciplines Fair Queuing
When do we start transmitting packet i? Depends on whether packet i arrived before or after the router finishes transmitting packet i-1 for the flow Let Ai denote the time that packet i arrives at the router Then Si = max(Fi-1, Ai) Fi = max(Fi-1, Ai) + Pi
22
Queuing Disciplines Fair Queuing
Now for every flow, we calculate Fi for each packet that arrives using our formula We then treat all the Fi as timestamps Next packet to transmit is always the packet that has the lowest timestamp The packet that should finish transmission before all others
23
Queuing Disciplines Fair Queuing Example of fair queuing in action:
packets with earlier finishing times are sent first; sending of a packet already in progress is completed
Similar presentations
© 2025 SlidePlayer.com. Inc.
All rights reserved.