15-744: Computer Networking Fair Queuing Overview Example

Total Page:16

File Type:pdf, Size:1020Kb

15-744: Computer Networking Fair Queuing Overview Example Fair Queuing • Fair Queuing • Core-stateless Fair queuing 15-744: Computer Networking • Assigned reading • Analysis and Simulation of a Fair Queueing Algorithm, Internetworking: Research and Experience L-7 Fair Queuing • Congestion Control for High Bandwidth-Delay Product Networks (XTP - 2 sections) 2 Overview Example • 10Gb/s linecard • TCP and queues • Requires 300Mbytes of buffering. • Queuing disciplines • Read and write 40 byte packet every 32ns. •RED • Memory technologies • DRAM: require 4 devices, but too slow. • Fair-queuing • SRAM: require 80 devices, 1kW, $2000. • Core-stateless FQ • Problem gets harder at 40Gb/s • Hence RLDRAM, FCRAM, etc. •XCP 3 4 1 Rule-of-thumb If flows are synchronized • Rule-of-thumb makes sense for one flow Wmax • Typical backbone link has > 20,000 flows • Does the rule-of-thumb still hold? Wmax 2 Wmax Wmax 2 t • Aggregate window has same dynamics • Therefore buffer occupancy has same dynamics • Rule-of-thumb still holds. 5 6 If flows are not synchronized Central Limit Theorem W B • CLT tells us that the more variables (Congestion 0 Windows of Flows) we have, the narrower the Gaussian (Fluctuation of sum of windows) • Width of Gaussian decreases with 1 n 1 • Buffer size should also decreases with n Bn1 2T C Buffer Size Probability B Distribution n n 7 8 2 Required buffer size Overview • TCP and queues • Queuing disciplines •RED 2TC n • Fair-queuing • Core-stateless FQ Simulation •XCP 9 10 Queuing Disciplines Packet Drop Dimensions • Each router must implement some queuing discipline Aggregation Per-connection state Single class • Queuing allocates both bandwidth and buffer space: Class-based queuing • Bandwidth: which packet to serve (transmit) Drop position next Head Tail • Buffer space: which packet to drop next (when required) Random location • Queuing also affects latency Early drop Overflow drop 11 12 3 Typical Internet Queuing FIFO + Drop-tail Problems • FIFO + drop-tail • Leaves responsibility of congestion control • Simplest choice to edges (e.g., TCP) • Used widely in the Internet • FIFO (first-in-first-out) • Does not separate between different flows • Implies single class of traffic • No policing: send more packets get more • Drop-tail service • Arriving packets get dropped when queue is full regardless of flow or importance • Synchronization: end hosts react to same • Important distinction: events • FIFO: scheduling discipline • Drop-tail: drop policy 13 14 Active Queue Management Active Queue Designs • Design active router queue management to • Modify both router and hosts aid congestion control • DECbit – congestion bit in packet header •Why? • Modify router, hosts use TCP • Routers can distinguish between propagation • Fair queuing and persistent queuing delays • Per-connection buffer allocation • Routers can decide on transient congestion, • RED (Random Early Detection) based on workload • Drop packet or set bit in packet header as soon as congestion is starting 15 16 4 Overview Internet Problems • Full queues • TCP and queues • Routers are forced to have have large queues • Queuing disciplines to maintain high utilizations • TCP detects congestion from loss •RED • Forces network to have long standing queues in steady-state • Fair-queuing • Lock-out problem • Core-stateless FQ • Drop-tail routers treat bursty traffic poorly •XCP • Traffic gets synchronized easily allows a few flows to monopolize the queue space 17 18 Design Objectives Lock-out Problem • Keep throughput high and delay low • Random drop • Accommodate bursts • Packet arriving when queue is full causes some random packet to be dropped • Queue size should reflect ability to accept bursts rather than steady-state queuing • Drop front • Improve TCP performance with minimal • On full queue, drop packet at head of queue hardware changes • Random drop and drop front solve the lock- out problem but not the full-queues problem 19 20 5 Full Queues Problem Random Early Detection (RED) • Drop packets before queue becomes full • Detect incipient congestion, allow bursts (early drop) • Keep power (throughput/delay) high • Intuition: notify senders of incipient • Keep average queue size low congestion • Assume hosts respond to lost packets • Example: early random drop (ERD): • Avoid window synchronization • If qlen > drop level, drop each new packet with fixed • Randomly mark packets probability p • Does not control misbehaving users • Avoid bias against bursty traffic • Some protection against ill-behaved users 21 22 RED Algorithm RED Operation • Maintain running average of queue length Max thresh Min thresh • If avgq < minth do nothing • Low queuing, send packets through • If avgq > maxth, drop packet Average Queue Length • Protection from misbehaving sources P(drop) • Else mark packet in a manner proportional 1.0 to queue length • Notify sources of incipient congestion maxP minth maxth Avg queue length 23 24 6 RED Algorithm Queue Estimation • Maintain running average of queue length • Standard EWMA: avgq = (1-wq) avgq + wqqlen • Byte mode vs. packet mode – why? • Special fix for idle periods – why? • Upper bound on w depends on min • For each packet arrival q th • Want to ignore transient congestion • Calculate average queue size (avg) • Can calculate the queue average if a burst arrives • If minth ≤ avgq < maxth •Set wq such that certain burst size does not exceed minth • Calculate probability P a • Lower bound on wq to detect congestion relatively • With probability Pa quickly • Mark the arriving packet •Typical wq = 0.002 • Else if maxth ≤ avg • Mark the arriving packet 25 26 Thresholds Packet Marking •minth determined by the utilization •maxp is reflective of typical loss rates requirement • Paper uses 0.02 • Tradeoff between queuing delay and utilization • 0.1 is more realistic value • Relationship between max and min th th • If network needs marking of 20-30% then • Want to ensure that feedback has enough time to make difference in load need to buy a better link! • Depends on average queue increase in one • Gentle variant of RED (recommended) RTT • Vary drop rate from maxp to 1 as the avgq • Paper suggest ratio of 2 varies from maxth to 2* maxth • Current rule of thumb is factor of 3 • More robust to setting of maxth and maxp 27 28 7 Extending RED for Flow Isolation Overview • Problem: what to do with non-cooperative flows? • TCP and queues • Fair queuing achieves isolation using per- • Queuing disciplines flow state – expensive at backbone routers • How can we isolate unresponsive flows without •RED per-flow state? • Fair-queuing • RED penalty box • Monitor history for packet drops, identify flows • Core-stateless FQ that use disproportionate bandwidth • Isolate and punish those flows •XCP 29 30 Fairness Goals What is Fairness? • Allocate resources fairly • At what granularity? • Isolate ill-behaved users • Flows, connections, domains? • Router does not send explicit feedback to • What if users have different RTTs/links/etc. source • Should it share a link fairly or be TCP fair? • Still needs e2e congestion control • Maximize fairness index? 2 2 • Still achieve statistical muxing • Fairness = (xi) /n(xi ) 0<fairness<1 • One flow can fill entire pipe if no contenders • Basically a tough question to answer – typically design mechanisms instead of policy • Work conserving scheduler never idles link if it has a packet • User = arbitrary granularity 31 32 8 Max-min Fairness Max-min Fairness Example • Allocate user with “small” demand what it • Assume sources 1..n, with resource wants, evenly divide unused resources to demands X1..Xn in ascending order “big” users • Assume channel capacity C. • Formally: • Give C/n to X1; if this is more than X1 wants, • Resources allocated in terms of increasing demand divide excess (C/n - X1) to other sources: each • No source gets resource share larger than its gets C/n + (C/n - X1)/(n-1) demand • If this is larger than what X2 wants, repeat • Sources with unsatisfied demands get equal share process of resource 33 34 Max-Min Fair Sharing Example Implementing max-min Fairness • Generalized processor sharing • Fluid fairness C – else ri rfair = • Bitwise round robin among all queues n here • Why not simple round robin? • Variable packet length can get more service by sending bigger packets • Unfair instantaneous service rate • What if arrive just before/after packet departs? Assume 10 Mbs links 36 9 Bit-by-bit RR Bit-by-bit RR Illustration • Single flow: clock ticks when a bit is • Not feasible to transmitted. For packet i: interleave bits on •Pi = length, Ai = arrival time, Si = begin transmit real networks time, F = finish transmit time i • FQ simulates bit-by- •F= S +P = max (F , A ) + P i i i i-1 i i bit RR • Multiple flows: clock ticks when a bit from all active flows is transmitted round number • Can calculate Fi for each packet if number of flows is know at all times • This can be complicated 37 38 Fair Queuing FQ Illustration • Mapping bit-by-bit schedule onto packet transmission schedule Flow 1 • Transmit packet with the lowest Fi at any Flow 2 given time I/P O/P • How do you compute Fi? Flow n Variation: Weighted Fair Queuing (WFQ) 39 40 10 Bit-by-bit RR Example Fair Queuing Tradeoffs • FQ can control congestion by monitoring flows Flow 1 Flow 2 Output • Non-adaptive flows can still be a problem – why? • Complex state F=10 • Must keep queue per flow F=8 • Hard in routers with many flows (e.g., backbone routers) Flow 1 Flow 2 F=5 Output • Flow aggregation is a possibility (e.g. do fairness per domain) (arriving) transmitting • Complex computation • Classification
Recommended publications
  • 15-744: Computer Networking Fair Queuing Overview Example
    Fair Queuing • Fair Queuing • Core-stateless Fair queuing 15-744: Computer Networking • Assigned reading • [DKS90] Analysis and Simulation of a Fair Queueing Algorithm, Internetworking: Research and Experience L-5 Fair Queuing • [SSZ98] Core-Stateless Fair Queueing: Achieving Approximately Fair Allocations in High Speed Networks 2 Overview Example • 10Gb/s linecard • TCP and queues • Requires 300Mbytes of buffering. • Queuing disciplines • Read and write 40 byte packet every 32ns. • RED • Memory technologies • DRAM: require 4 devices, but too slow. • Fair-queuing • SRAM: require 80 devices, 1kW, $2000. • Core-stateless FQ • Problem gets harder at 40Gb/s • Hence RLDRAM, FCRAM, etc. • XCP 3 4 1 Rule-of-thumb If flows are synchronized • Rule-of-thumb makes sense for one flow • Typical backbone link has > 20,000 flows • Does the rule-of-thumb still hold? t • Aggregate window has same dynamics • Therefore buffer occupancy has same dynamics • Rule-of-thumb still holds. 5 6 If flows are not synchronized Central Limit Theorem B • CLT tells us that the more variables (Congestion 0 Windows of Flows) we have, the narrower the Gaussian (Fluctuation of sum of windows) • Width of Gaussian decreases with • Buffer size should also decreases with Buffer Size Probability Distribution 7 8 2 Required buffer size Overview • TCP and queues • Queuing disciplines • RED • Fair-queuing • Core-stateless FQ Simulation • XCP 9 10 Queuing Disciplines Packet Drop Dimensions • Each router must implement some queuing discipline Aggregation Per-connection state Single
    [Show full text]
  • Queue Scheduling Disciplines
    White Paper Supporting Differentiated Service Classes: Queue Scheduling Disciplines Chuck Semeria Marketing Engineer Juniper Networks, Inc. 1194 North Mathilda Avenue Sunnyvale, CA 94089 USA 408 745 2000 or 888 JUNIPER www.juniper.net Part Number:: 200020-001 12/01 Contents Executive Summary . 4 Perspective . 4 First-in, First-out (FIFO) Queuing . 5 FIFO Benefits and Limitations . 6 FIFO Implementations and Applications . 6 Priority Queuing (PQ) . 6 PQ Benefits and Limitations . 7 PQ Implementations and Applications . 8 Fair Queuing (FQ) . 9 FQ Benefits and Limitations . 9 FQ Implementations and Applications . 10 Weighted Fair Queuing (WFQ) . 11 WFQ Algorithm . 11 WFQ Benefits and Limitations . 13 Enhancements to WFQ . 14 WFQ Implementations and Applications . 14 Weighted Round Robin (WRR) or Class-based Queuing (CBQ) . 15 WRR Queuing Algorithm . 15 WRR Queuing Benefits and Limitations . 16 WRR Implementations and Applications . 18 Deficit Weighted Round Robin (DWRR) . 18 DWRR Algorithm . 18 DWRR Pseudo Code . 19 DWRR Example . 20 DWRR Benefits and Limitations . 24 DWRR Implementations and Applications . 25 Conclusion . 25 References . 26 Textbooks . 26 Technical Papers . 26 Seminars . 26 Web Sites . 27 Copyright © 2001, Juniper Networks, Inc. List of Figures Figure 1: First-in, First-out (FIFO) Queuing . 5 Figure 2: Priority Queuing . 7 Figure 3: Fair Queuing (FQ) . 9 Figure 4: Class-based Fair Queuing . 11 Figure 5: A Weighted Bit-by-bit Round-robin Scheduler with a Packet Reassembler . 12 Figure 6: Weighted Fair Queuing (WFQ)—Service According to Packet Finish Time . 13 Figure 7: Weighted Round Robin (WRR) Queuing . 15 Figure 8: WRR Queuing Is Fair with Fixed-length Packets . 17 Figure 9: WRR Queuing is Unfair with Variable-length Packets .
    [Show full text]
  • Enhanced Core Stateless Fair Queuing with Multiple Queue Priority Scheduler
    The International Arab Journal of Information Technology, Vol. 11, No. 2, March 2014 159 Enhanced Core Stateless Fair Queuing with Multiple Queue Priority Scheduler Nandhini Sivasubramaniam 1 and Palaniammal Senniappan 2 1Department of Computer Science, Garden City College of Science and Management Studies, India 2Department of Science and Humanities, VLB Janakiammal College of Engineering and Technology, India Abstract: The Core Stateless Fair Queuing (CSFQ) is a distributed approach of Fair Queuing (FQ). The limitations include its inability to estimate fairness during large traffic flows, which are short and bursty (VoIP or video), and also it utilizes the single FIFO queue at the core router. For improving the fairness and efficiency, we propose an Enhanced Core Stateless Fair Queuing (ECSFQ) with multiple queue priority scheduler. Initially priority scheduler is applied to the flows entering the ingress edge router. If it is real time flow i.e., VoIP or video flow, then the packets are given higher priority else lower priority. In core router, for higher priority flows the Multiple Queue Fair Queuing (MQFQ) is applied that allows a flow to utilize multiple queues to transmit the packets. In case of lower priority, the normal max-min fairness criterion of CSFQ is applied to perform probabilistic packet dropping. By simulation results, we show that this technique improves the throughput of real time flows by reducing the packet loss and delay. Keywords: CSFQ, quality of service, MQFQ, priority scheduler. Received November 21, 2011; accepted July 29, 2012; published online January 29, 2013 1. Introduction 1.2. Fair Queuing Techniques 1.1. Queuing Algorithms in Networking Queuing in networking includes techniques like priority queuing [7, 11, 13], Fair Queuing (FQ) [2, 10, Queueing Theory is a branch of applied probability 19] and Round Robin Queuing [12, 15, 16].
    [Show full text]
  • Per-Flow Fairness in the Datacenter Network Yixi Gong, James W
    1 Per-Flow Fairness in the Datacenter Network YiXi Gong, James W. Roberts, Dario Rossi Telecom ParisTech Abstract—Datacenter network (DCN) design has been ac- produced by gaming applications [1], instant voice transla- tively researched for over a decade. Solutions proposed range tion [29] and augmented reality services, for example. The from end-to-end transport protocol redesign to more intricate, exact flow mix will also be highly variable in time, depending monolithic and cross-layer architectures. Despite this intense activity, to date we remark the absence of DCN proposals based both on the degree to which applications rely on offloading to on simple fair scheduling strategies. In this paper, we evaluate the Cloud and on the accessibility of the Cloud that varies due the effectiveness of FQ-CoDel in the DCN environment. Our to device capabilities, battery life, connectivity opportunity, results show, (i) that average throughput is greater than that etc. [9]. attained with DCN tailored protocols like DCTCP, and (ii) the As DCN resources are increasingly shared among multiple completion time of short flows is close to that of state-of-art DCN proposals like pFabric. Good enough performance and stakeholders, we must question the appropriateness of some striking simplicity make FQ-CoDel a serious contender in the frequently made assumptions. How can one rely on all end- DCN arena. systems implementing a common, tailor-made transport pro- tocol like DCTCP [6] when end-systems are virtual machines under tenant control? How can one rely on applications I. INTRODUCTION truthfully indicating the size of their flows to enable shortest In the last decade, datacenter networks (DCNs) have flow first scheduling as in pFabric [8] when a tenant can gain increasingly been built with relatively inexpensive off-the- better throughput by simply slicing a long flow into many shelf devices.
    [Show full text]
  • An Extension of the Codel Algorithm
    Proceedings of the International MultiConference of Engineers and Computer Scientists 2015 Vol II, IMECS 2015, March 18 - 20, 2015, Hong Kong Hard Limit CoDel: An Extension of the CoDel Algorithm Fengyu Gao, Hongyan Qian, and Xiaoling Yang Abstract—The CoDel algorithm has been a significant ad- II. BACKGROUND INFORMATION vance in the field of AQM. However, it does not provide bounded delay. Rather than allowing bursts of traffic, we argue that a Nowadays the Internet is suffering from high latency and hard limit is necessary especially at the edge of the Internet jitter caused by unprotected large buffers. The “persistently where a single flow can congest a link. Thus in this paper we full buffer problem”, recently exposed as “bufferbloat” [1], proposed an extension of the CoDel algorithm called “hard [2], has been observed for decades, but is still with us. limit CoDel”, which is fairly simple but effective. Instead of number of packets, this extension uses the packet sojourn time When recognized the problem, Van Jacobson and Sally as the metric of limit. Simulation experiments showed that the Floyd developed a simple and effective algorithm called RED maximum delay and jitter have been well controlled with an (Random Early Detection) in 1993 [3]. In 1998, the Internet acceptable loss on throughput. Its performance is especially Research Task Force urged the deployment of active queue excellent with changing link rates. management in the Internet [4], specially recommending Index Terms—bufferbloat, CoDel, AQM. RED. However, this algorithm has never been widely deployed I. INTRODUCTION because of implementation difficulties. The performance of RED depends heavily on the appropriate setting of at least The CoDel algorithm proposed by Kathleen Nichols and four parameters: Van Jacobson in 2012 has been a great innovation in AQM.
    [Show full text]
  • Scheduling for Fairness: Fair Queueing and CSFQ
    Copyright Hari Balakrishnan, 1998-2005, all rights reserved. Please do not redistribute without permission. LECTURE 8 Scheduling for Fairness: Fair Queueing and CSFQ ! 8.1 Introduction nthe last lecture, we discussed two ways in which routers can help in congestion control: Iby signaling congestion, using either packet drops or marks (e.g., ECN), and by cleverly managing its buffers (e.g., using an active queue management scheme like RED). Today, we turn to the third way in which routers can assist in congestion control: scheduling. Specifically, we will first study a particular form of scheduling, called fair queueing (FQ) that achieves (weighted) fair allocation of bandwidth between flows (or between whatever traffic aggregates one chooses to distinguish between.1 While FQ achieves weighted-fair bandwidth allocations, it requires per-flow queueing and per-flow state in each router in the network. This is often prohibitively expensive. We will also study another scheme, called core-stateless fair queueing (CSFQ), which displays an interesting design where “edge” routers maintain per-flow state whereas “core” routers do not. They use their own non- per-flow state complimented with some information reaching them in packet headers (placed by the edge routers) to implement fair allocations. Strictly speaking, CSFQ is not a scheduling mechanism, but a way to achieve fair bandwidth allocation using differential packet dropping. But because it attempts to emulate fair queueing, it’s best to discuss the scheme in conjuction with fair queueing. The notes for this lecture are based on two papers: 1. A. Demers, S. Keshav, and S. Shenker, “Analysis and Simulation of a Fair Queueing Algorithm”, Internetworking: Research and Experience, Vol.
    [Show full text]
  • K04-2: Distributed Weighted Fair Queuing in 802.11 Wireless
    Distributed Weighted Fair Queuing in 802.11 Wireless LAN Albert Banchs, Xavier P´erez NEC Europe Ltd., Network Laboratories Heidelberg, Germany Abstract— With Weighted Fair Queuing, the link’s bandwidth Specifically, the station computes a random value in the is distributed among competing flows proportionally to their range of 0 to the so-called Contention Window (CW). A backoff weights. In this paper we propose an extension of the DCF func- Ì = time interval is computed usingthis random value: back Óf f tion of IEEE 802.11 to provide weighted fair queuing in Wireless Ì Ê aÒd´¼;Cϵ £ Ì ×ÐÓØ LAN. Simulation results show that the proposed scheme is able ×ÐÓØ ,where is the slot time. This backoff to provide the desired bandwidth distribution independent of the interval is then used to initialize the backoff timer. This timer flows aggressiveness and their willingness to transmit. Backwards is decreased only when the medium is idle. The timer is frozen compatibility is provided such that legacy IEEE 802.11 terminals when another station is detected as transmitting. Each time the receive a bandwidth corresponding to the default weight. medium becomes idle for a period longer than DIFS, the back- Index Terms— Wireless LAN, IEEE 802.11, MAC, Weighted off timer is periodically decremented, once every slot-time. Fair Queuing, Bandwidth Allocation As soon as the backoff timer expires, the station accesses the medium. A collision occurs when two or more stations start I. INTRODUCTION transmission simultaneously in the same slot. An acknowledg- ment is used to notify the sendingstations that the transmitted Much research has been performed on ”weighted fair queu- frame has been successfully received.
    [Show full text]
  • The So-Called Qos Is for Different Needs of Various Network Applications, and Provides Different Quality of Service, Such As
    The so-called QoS is for different needs of various network applications, and provides different quality of service, such as providing dedicated bandwidth, reducing packet loss rate, reducing packet transmission delay and delay jitter. That is to say, in the case that the bandwidth is not sufficient, the contradiction between the bandwidth occupied by various service flows is balanced. The switch classifies the data streams in the ingress phase, and then maps different types of data streams to different priority queues in the export phase. Finally, the scheduling mode determines the manner in which packets of different priority queues are forwarded, thereby implementing QoS features. QoS working principle 1.Message classification: objects are identified according to certain matching rules. 2.Mapping: Users can map packets entering the switch to different priority queues according to the priority mode. The switch provides two priority modes: 802.1P priority and DSCP priority. 3.Queue scheduling: When the network is congested, it must solve the problem that multiple data streams compete for resources at the same time, usually by queue scheduling. The company's switches provide a total of five scheduling modes (supporting several of them depending on the switch chip), respectively SP(Strict Priority),RR(Round-Robin)WRR(Weighted Round-Robin)DRR(Deficit Round-Robin),WFQ(Weighted Fair Queuing). 1、Basic concept of QoS queue scheduling (1)802.1P priority 802.1Q Frame format As shown in the figure, each 802.1Q Tag has a Pri field, which consists of three bits, ranging from 0 to 7. The 802.1P priority is based on the Pri field value to determine the priority of the data frame level.
    [Show full text]
  • CS640: Introduction to Computer Networks Queuing Disciplines Typical Internet Queuing
    11/29/2007 CS640: Introduction to Computer Networks Aditya Akella Lecture 20 - Queuing and Basics of QoS Queuing Disciplines • Each router must implement some queuing discipline – Scheduling discipline – Drop policy • Queuing allocates both bandwidth and buffer space: – Bandwidth: which packet to serve (transmit) next – Buffer space: which packet to drop next (when required) • Queuing also affects latency 2 Typical Internet Queuing • FIFO + drop-tail – Simplest choice – Used widely in the Internet – FIFO: scheduling discipline – Drop-tail: drop policy • FIFO (first-in-first-out) – Implies single class of traffic, no priority • Drop-tail – Arriving packets get dropped when queue is full regardless of flow or importance 3 1 11/29/2007 FIFO + Drop-tail Problems • Lock-out problem – Allows a few flows to monopolize the queue space – Send more, get more No implicit policing • Full queues – TCP detects congestion from loss – Forces network to have long standing queues in steady-state – Queueing delays – bad for time sensitive traffic – Synchronization: end hosts react to same events • Full queue empty Full empty… • Poor support for bursty traffic 4 Lock-out Problem • Priority queueing can solve some problems – Starvation – Determining priorities is hard • Simpler techniques: Random drop – Packet arriving when queue is full causes some random packet to be dropped • Drop front – On full queue, drop packet at head of queue • Random drop and drop front solve the lock- out problem but not the full-queues problem 5 Random Early Detection (RED)
    [Show full text]
  • Congestion Control Outline
    Congestion Control and Resource Allocation Lecture material taken from “Computer Networks A Systems Approach”, Third Edition,Peterson and Davie, Morgan Kaufmann, 2007. Congestion Control Outline • Congestion Control • Flows • CC Taxonomy • Evaluation Criteria • Introduction to Queueing – FIFO (FCFS drop tail) – Priority – FQ (Fair Queueing) – WFQ (Weighted Fair Queueing) 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}. 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. Computer Networks Congestion Control 4 Congestion 3 6 1 4 8 2 5 7 Copyright ©2000 The McGraw Hill Leon-Garcia & Widjaja: Communication Copyright ©2000 CompaniesThe McGraw Hill Companies LeonLeon-LeonGarcia-Garcia-Garcia & &Networks Widjaja: &Widjaja: Widjaja: Communication Communication Communication Networks Figure 7.50b NetworksNetworks Computer Networks Congestion Control 5 Source 1 10-Mbps Ethernet Router Destination 1.5-Mbps T1 link Source 100-Mbps FDDI 2 Figure 6.1 Congestion in a packet- switched network 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.
    [Show full text]
  • Deficit Round Robin
    Efficient Fair Queuing using Deficit Round Robin M. Shreedhar George Varghese Microsoft Corporation* Washington University in St. Louis. Abstract sends at an uncontrolled rate can seize a large fraction of the buffers at an intermediate router; this can result in dropped Fair queuing is a technique that allows each flow passing packets for other sources sending at more moderate rates! through a network device to have a fair share of network A solution to this problem is needed to isolate the effects of resources. Previous schemes for fair queuing that achieved bad behavior to users that are behaving badly. nearly perfect fairness were expensive to implement: specifi- cally, the work required to process a packet in these schemes An isolation mechanism called Fair Queuing [DKS89] was O(log(n) ), where n is the number of active flows. This has been proposed, and has been proved [GM90] to have is expensive at high speeds. On the other hand, cheaper nearly perfect isolation and fairness. Unfortunately, Fair of fair queuing that have been reported in approximations Queuing (FQ) appears to be expensive to implement. Specif- the literature exhibit unfair behavior. In this paper, we ically, FQ requires O(log(n) ) work per packet to implement describe a new approximation of fair queuing, that we call Deficit Round Robin. Our scheme achieves nearly perfect fair queuing, where n is the number of packet streams that fairness in terms of throughput, requires only O(1) work are concurrently active at the gateway or router. With to process a packet, and is simple enough to implement in a large number of active packet streams, FQ is hard to hardware.
    [Show full text]
  • Be Fair to Flows!
    Be fair to flows! A fair network is attractive and trustworthy and far more than just adequate. Jim Roberts IRT-SystemX, France Revisiting congestion control, active queue management (AQM) and packet scheduling • new interest is arising from perceived problems in home networks (bufferbloat) and data center interconnects • a new IETF working group will define an AQM that – “minimizes standing queues” – “helps sources control rates without loss (using ECN)” – “protects from aggressive flows” – “avoids global synchronization” • AQM performance depends significantly on what congestion control is implemented in end-systems – high speed TCP, low priority TCP – new congestion control protocols for the data center (DCTCP,...) – new algorithms at application layer (QUIC,...) AQM + congestion control is not the answer! • how can a network continue to rely on end-systems implementing the right congestion control? – why should users comply? – or course, they don’t! • instead, impose per-flow fairness in the core... – this is scalable, feasible and sufficient • and enhanced flow-aware scheduling at the edge – since a fair share may not be sufficient – priority to a video stream, priority to Dad! Outline • perceived problems, proposed solutions – bufferbloat – the data center interconnect • the case for fair flow queuing – traffic at flow level and scalability – fairness is all we need in the network – something else in the last/first mile “Bufferbloat” • the problem: too large buffers, notably in home routers, get filled by TCP leading to excessive
    [Show full text]