P4-Codel: Experiences on Programmable Data Plane Hardware

Total Page:16

File Type:pdf, Size:1020Kb

P4-Codel: Experiences on Programmable Data Plane Hardware P4-CoDel: Experiences on Programmable Data Plane Hardware Ralf Kundel∗, Amr Rizk{, Jeremias Blendinz, Boris Koldehofex, Rhaban Hark∗, Ralf Steinmetz∗ ∗ Multimedia Communications Lab, Technical University of Darmstadt, Germany fralf.kundel, rhaban.hark, [email protected] { University of Ulm, Germany [email protected] z Barefoot Networks, an Intel Company, CA, US [email protected] x University of Groningen, Netherlands [email protected] Abstract—Fixed buffer sizing in computer networks, especially asynchronous = queueing metadata the Internet, is a compromise between latency and bandwidth. queue-feedback (optional) = packet header & data A decision in favor of high bandwidth, implying larger buffers, p1 Match-Action- Traffic Manager Match-Action- p1 subordinates the latency as a consequence of constantly filled Pipeline & Packet Buffer Pipeline scheduler (optional) buffers. This phenomenon is called Bufferbloat. Active Queue p2 p2 ... ... Management (AQM) algorithms such as CoDel or PIE, designed ... for the use on software based hosts, offer a flow agnostic remedy to Bufferbloat by controlling the queue filling and hence the pn pn latency through subtle packet drops. P4-programmable P4-programmable In previous work, we have shown that the data plane pro- Ingress Pipeline Egress Pipeline gramming language P4 is powerful enough to implement the packet/metadata flow direction CoDel algorithm. While legacy software algorithms can be easily Fig. 1: Functional building blocks of P4-programmable ASICs. The light- compiled onto almost any processing architecture, this is not red parts are P4 programmable. Packet queueing is not part of P4 and its generally true for AQM on programmable data plane hardware, configuration is vendor dependent. A programmable Match-Action Pipeline i.e., programmable packet processors. In this work, we highlight after the packet buffer is not given in all currently existing architectures. corresponding challenges, demonstrate how to tackle them, and provide techniques enabling the implementation of such AQM algorithms on different high speed P4-programmable data plane variant, to packet drops. By dropping packets earlier than at hardware targets. In addition, we provide measurement results a full buffer, the sender congestion control algorithm receives created on different P4-programmable data plane targets. The an early signal to reduce the sending data rate. In turn, this resulting latency measurements reveal the feasibility and the con- leads to the buffer filling and, hence, the queueing delay straints to be considered to perform Active Queue Management to remain relatively small. In recent years, two stateful and within these devices. Finally, we release the source code and instructions to reproduce the results in this paper as open source self-tuning AQM algorithms, i.e., CoDel (RFC 8289) [4] and to the research community. PIE (RFC 8033), have been presented and widely adopted. In Index Terms—CoDel, AQM, Bufferbloat, P4, ASIC, FPGA, addition to those two approaches, there exist many variants of NPU AQM algorithms with different goals and assumptions [5]. In a previous work, we have shown that such AQM algo- I. INTRODUCTION rithms can be expressed with programming languages aimed at arXiv:2010.04528v2 [cs.NI] 7 Jul 2021 Bufferbloat describes a phenomenon of high latencies ob- controlling network switch data plane behavior [6]. However, served in networks configured with large static buffer sizes [1]. it remained open how feasible it is to realize such AQM For a single TCP traffic flow, it is known that the buffer size algorithms on packet processors, as these algorithms were that maximizes the TCP throughput is directly proportional to not conceptualized to run on data plane network hardware the round trip time (RTT). This is also true for the case of mul- but rather on software based consumer edge devices. Indeed, tiplexing many homogeneous flows having the same RTT ex- for many networking applications packet processing with high cept of a correction prefactor [2]. As traffic flows usually have throughput is required and can only be ensured by algorithms widely different RTTs and throughput maximization is not the realized directly within the data plane. Further, it remained main goal for many contemporary networking applications, but open how different programmable networking hardware affect rather latency minimization, an idea of controlling flow delays the algorithms performance and which additional challenges through subtle packet drops is experiencing a renaissance [3]. arise in different architectures. The algorithmic version of this idea is denoted Active Queue To understand the problem of running AQM algorithms on Management (AQM) and is based on the sensitive reaction programmable data plane hardware, a deeper look into the of the transport protocol congestion control, typically a TCP pipeline of modern packet processors is required. The internal pipeline of packet processors, including network switches, algorithm, presented in 2018 by Nichols et al [4], will not is typically similar to the architecture depicted in Figure 1. be discussed further. Figure 2 shows the control flow graph of Packets enter on one of the n ports on the left side and are the algorithm that includes four stateful variables: 1) dropping, multiplexed into a single match-action-pipeline. Within this 2) count, 3) last count and 4) drp next. The value of a stateful pipeline operations, e.g. lookups, on packet header fields and variable persist the processing time of a single packet. metadata can be performed. After that, the traffic manager is The algorithm can be regarded as state machine consisting responsible for packet queueing and scheduling. Optionally, of two states: 1) dropping and 2) not dropping. As soon as depending on the architecture, a second match-action-pipeline the observed queueing delay exceeds the TARGET of 5 ms, can be applied on the packets before demultiplexing and the state of the state machine is changed to dropping which, sending the packets out on the specified egress port. Note however, does not imply an immediate packet drop (if 2). that packets can flow only from left to right and algorithmic After waiting for the time INTERVAL until time drp next loops within the pipeline are not possible. By that, a high within the dropping state, the first following packet is dropped and deterministic processing performance can be guaranteed and the counter of dropped packets is increased (if 4). From which is crucial for network functions running at line rate [7], this point on, the interval between dropping packets is contin- including AQM algorithms running within the network. uously decreased as INTp ERV AL until the queueing delay falls count In case of programmable packet processors built on top below the TARGET delay. Then, the state changes back to not of the Protocol Independent Switch Architecture (PISA) [8], dropping (if 1). In case of a recently left dropping state, the these ingress and egress match-action-pipelines are pro- new dropping rate is initialized higher than 1 (if 3). grammable within limitations. The programming language The CoDel algorithm is conceptualized for sequential packet P4 [9] represents the currently most widely accepted approach processing, i.e., no parallel processing of multiple packets. of programming the depicted ingress and egress match-action- Thus, the processing of packetn is expected to be completed pipelines. However, the configuration of the packet buffer in before the processing of packetn+1 starts. Otherwise, e.g., the the middle of the switch architecture (see Figure 1) as well read operation on the stateful variable drp next for packetn+1 as the specific algorithms used by this engine for queueing, is performed before the write operation on this variable by scheduling and buffer management are out of the scope packetn is completed and by that unexpected behavior occurs. and purpose of this language. Nevertheless, useful metadata Note that from an algorithmic perspective a partial overlap- produced inside the Traffic manager, such as the packet ping processing of multiple packets is possible. If for each queueing delay, can be passed alongside with other packet stateful variable the write operation is performed before the metadata into the egress pipeline. Alternatively, depending on read operation of the subsequent packet, the algorithm is exe- the actual architecture, the current buffer utilization can be cuted correctly. In the concrete case of CoDel, operations on passed asynchronously to the ingress pipeline. The work at hand focuses on the feasibility of realizing AQM algorithms on programmable hardware devices, which 1 #define TARGET 5//ms creates a variety of challenges compared to the implementa- 2 #define INTERVAL 100//ms tions on classical commodity processor. Here, we analyze the 3 Queue q; State s; required alterations of an established stateful AQM algorithm 4 5 upon receive packet p: (CoDel) that make it possible to implement it. Note that our 6 //no target delay violation?(if 1) key findings are not dependent on the specific AQM algo- 7 i f(p.queue delay < TARGET j j q . b y t e < IFACE MTU) : rithm at hand. We evaluate P4-Codel for P4-NetFPGAs [10], 8 s.dropping = false 9 c o n t i n u e Netronome SmartNICs and Intel Tofino switches. 10 // first packet which violates delay target?(if 2) The main contributions of this paper are: 11 i f(s.dropping == false): 12 s.dropping = true • The analysis of CoDel’s AQM implementation control 13 tmp = s.count flow, particularly considering information dependencies, 14 // drop frequency steady state?(if 3) 15 i f((s.count − s.last c o u n t > 1) && • how to transform an algorithm designed for CPUs for 16 ( now − s . d r p n e x t p a c k e t < 16*INTERVAL) ) : packet processing pipelines and a detailed implementa- 17 // optimization for faster packet dropping tion description of CoDel for existing P4 hardware, 18 s.count = s.count − s.last c o u n t 19 e l s e: • evaluation results of characteristic properties for these 20 s .
Recommended publications
  • A Letter to the FCC [PDF]
    Before the FEDERAL COMMUNICATIONS COMMISSION Washington, DC 20554 In the Matter of ) ) Amendment of Part 0, 1, 2, 15 and 18 of the ) ET Docket No. 15­170 Commission’s Rules regarding Authorization ) Of Radio frequency Equipment ) ) Request for the Allowance of Optional ) RM­11673 Electronic Labeling for Wireless Devices ) Summary The rules laid out in ET Docket No. 15­170 should not go into effect as written. They would cause more harm than good and risk a significant overreach of the Commission’s authority. Specifically, the rules would limit the ability to upgrade or replace firmware in commercial, off­the­shelf home or small­business routers. This would damage the compliance, security, reliability and functionality of home and business networks. It would also restrict innovation and research into new networking technologies. We present an alternate proposal that better meets the goals of the FCC, not only ensuring the desired operation of the RF portion of a Wi­Fi router within the mandated parameters, but also assisting in the FCC’s broader goals of increasing consumer choice, fostering competition, protecting infrastructure, and increasing resiliency to communication disruptions. If the Commission does not intend to prohibit the upgrade or replacement of firmware in Wi­Fi ​ ​ devices, the undersigned would welcome a clear statement of that intent. Introduction We recommend the FCC pursue an alternative path to ensuring Radio Frequency (RF) compliance from Wi­Fi equipment. We understand there are significant concerns regarding existing users of the Wi­Fi ​ spectrum, and a desire to avoid uncontrolled change. However, we most strenuously advise against prohibiting changes to firmware of devices containing radio components, and furthermore advise against allowing non­updatable devices into the field.
    [Show full text]
  • Evaluation of Priority Scheduling and Flow Starvation for Thin Streams with FQ-Codel
    2015 European Conference on Networks and Communications (EuCNC) Evaluation of Priority Scheduling and Flow Starvation for Thin Streams with FQ-CoDel Eduard Grigorescu, Chamil Kulatunga, Gorry Nicolas Kuhn Fairhurst Télécom Bretagne, IRISA School of Engineering, University of Aberdeen, UK [email protected] {eduard, chamil, gorry}@erg.abdn.ac.uk Abstract— Bufferbloat is the result of oversized buffers and algorithms, managing packet scheduling and isolation/capacity induced high end-to-end latency experienced by applications allocation among flows, can be introduced. As one example of across the Internet. This additional delay can adversely impact a scheme that mixes both classes, FlowQueue-CoDel (FQ- thin streams that frequently exchange small amounts of data, but CoDel) [7] is a scheduling scheme that features prioritization have stringent latency requirements. Active Queue Management and flow isolation. FQ-CoDel creates one sub-queue per flow (AQM) techniques, such as Controlled Delay (CoDel), can control and applies CoDel on each of them. The awareness of the the queuing delay in a network device to ensure low latency by dropping packets to indicate incipient congestion. FlowQueue- latency resulting from over-provisioned buffers has been CoDel (FQ-CoDel) is a scheduling scheme that creates one sub- accompanied by an increase in real-time applications such as queue per flow and applies CoDel on each of them. FQ-CoDel Voice over Internet Protocol, gaming or financial trading features: (1) priority scheduling for low-rate traffic; (2) flow applications. As one example, the latency experienced by isolation; (3) queue management with CoDel. First, this paper gamers can directly impact the perceived value of the network fills a gap in the understanding of FQ-CoDel by analyzing what service [10].
    [Show full text]
  • AQM Algorithms and Their Interaction with TCP Congestion Control Mechanisms
    View metadata, citation and similar papers at core.ac.uk brought to you by CORE provided by Universidad Carlos III de Madrid e-Archivo Grado Universitario en Ingenier´ıaTelem´atica 2016/2017 Trabajo Fin de Grado Control de Congesti´onTCP y mecanismos AQM Sergio Maeso Jim´enez Tutor/es Celeste Campo V´azquez Carlos Garc´ıaRubio Legan´es,2 de Octubre de 2017 Esta obra se encuentra sujeta a la licencia Creative Commons Reconocimiento - No Comercial - Sin Obra Derivada Control de Congesti´onTCP y mecanismos AQM By Sergio Maeso Jim´enez Directed By Celeste Campo V´azquez Carlos Garc´ıaRubio A Dissertation Submitted to the Department of Telematic Engineering in Partial Fulfilment of the Requirements for the BACHELOR'S DEGREE IN TELEMATICS ENGINEERING Approved by the Supervising Committee: Chairman Marta Portela Garc´ıa Chair Carlos Alario Hoyos Secretary I~naki Ucar´ Marqu´es Deputy Javier Manuel Mu~noz Garc´ıa Grade: Legan´es,2 de Octubre de 2017 iii iv Acknowledgements I would like to thanks my tutors Celeste Campo and Carlos Garcia for all the support they gave me while I was doing this thesis with them. To my parents, who believe in me against all odds. v vi Abstract In recent years, the relevance of delay over throughput has been particularly emphasized. Nowadays our networks are getting more and more sensible to latency due to the proliferation of applications and services like VoIP, IPTV or online gaming where a low delay is essential for a proper performance and a good user experience. Most of this unnecessary delay is created by the misbehaviour of many buffers that populate Internet.
    [Show full text]
  • Auto-Tuning Active Queue Management
    2017 9th International Conference on Communication Systems and Networks (COMSNETS) Auto-Tuning Active Queue Management Joe H. Novak Sneha Kumar Kasera University of Utah University of Utah Abstract not require pre-specification of even those parameters including 3 Active queue management (AQM) algorithms preemptively EWMA weights or protocol timer intervals that are routinely drop packets to prevent unnecessary delays through a network specified in protocol design and implementation. while keeping utilization high. Many AQM ideas have been When we view the network link in terms of utilization proposed, but none have been widely adopted because these rely and the queue corresponding to the link in terms of delay on pre-specification or pre-tuning of parameters and thresholds (Fig. 1 shows a typical delay-utilization curve), we see that that do not necessarily adapt to dynamic network conditions. as utilization increases, delay also increases. At a certain point, We develop an AQM algorithm that relies only on network however, there is a very large increase in delay for only a small runtime measurements and a natural threshold, the knee on improvement in utilization. This disproportionate increase in the delay-utilization curve. We call our AQM algorithm Delay delay is of little to no value to the applications at the endpoints. Utilization Knee (DUK) based on its key characteristic of We want to avoid this unstable region of high increase in delay keeping the system operating at the knee of the delay-utilization with little increase in utilization. As a result, a natural threshold curve. We implement and evaluate DUK in the Linux kernel in becomes apparent.
    [Show full text]
  • Controlling Queuing Delays for Real-Time Communication: the Interplay of E2E and AQM Algorithms
    Controlling Queuing Delays for Real-Time Communication: The Interplay of E2E and AQM Algorithms Gaetano Carlucci Luca De Cicco Saverio Mascolo Politecnico di Bari, Italy Politecnico di Bari, Italy Politecnico di Bari, Italy [email protected] [email protected] [email protected] ABSTRACT control algorithm; the other placed in the network routers, Real-time media communication requires not only i.e. the Active Queue Management (AQM) algorithm. congestion control, but also minimization of queuing delays When designing end-to-end congestion control algorithms to provide interactivity. In this work we consider the case of for video conference, UDP is a natural choice, since real-time communication between web browsers (WebRTC) such applications cannot tolerate large latencies due to and we focus on the interplay of an end-to-end delay-based TCP packet retransmissions. Additionally, delay-based congestion control algorithm, i.e. the Google congestion congestion control algorithms are usually preferred to control (GCC), with two delay-based AQM algorithms, loss-based ones since they can detect congestion before namely CoDel and PIE, and two flow queuing schedulers, packets are lost due to buffer overflow. i.e. SFQ and Fq Codel. Experimental investigations show On the other hand, AQM schemes control the router that, when only GCC flows are considered, the end-to-end buffers by dropping the packets or marking them if ECN algorithm is able to contain queuing delays without AQMs. is used [21]. Despite the fact that many AQM algorithms Moreover the interplay of GCC flows with PIE or CoDel have been proposed over the past two decades [7], the leads to higher packet losses with respect to the case of a adoption of these algorithms has been hampered by two DropTail queue.
    [Show full text]
  • Controlling Queuing Delays for Real-Time Communication: the Interplay of E2E and AQM Algorithms
    Controlling Queuing Delays for Real-Time Communication: The Interplay of E2E and AQM Algorithms Gaetano Carlucci Luca De Cicco Saverio Mascolo Politecnico di Bari, Italy Politecnico di Bari, Italy Politecnico di Bari, Italy [email protected] [email protected] [email protected] ABSTRACT requirements can be met by employing two complementary control Real-time media communication requires not only congestion algorithms: one placed at the end points, namely the end-to-end control, but also minimization of queuing delays to provide congestion control algorithm; the other placed in the network interactivity. In this work we consider the case of real-time routers, i.e. the Active Queue Management (AQM) algorithm. communication between web browsers (WebRTC) and we focus When designing end-to-end congestion control algorithms on the interplay of an end-to-end delay-based congestion control for video conference, UDP is the natural choice, since such algorithm, i.e. the Google congestion control (GCC), with two applications cannot tolerate large latencies due to TCP packet delay-based AQM algorithms, namely CoDel and PIE, and two retransmissions. Additionally, delay-based congestion control flow queuing schedulers, i.e. SFQ and Fq_Codel. Experimental algorithms are usually preferred to loss-based ones since they can investigations show that, when only GCC flows are considered, detect congestion before packets are lost due to buffer overflow. the end-to-end algorithm is able to contain queuing delays without On the other hand, AQM schemes control the router buffers AQMs. Moreover the interplay of GCC flows with PIE or CoDel by dropping the packets or marking them if ECN is used [21].
    [Show full text]
  • Packet Mark Methodology for Reduce the Congestion
    Forn International Journal of Scientific Research in Computer Science and Engineering Review Paper VolVolVol-Vol ---1,1, IssueIssue----3333 ISSN: 2322320000––––76397639 Packet Mark Methodology for Reduce the Congestion V.Ganesh Babu and K.Saraswathi Department of CS, Government College for Women, Maddur, Mandya Dt Karnataka, INDIA Department of CS, Nehru Memorial College, Puthanampatti, Trichy Dt. Tamil Nadu, INDIA Available online at www.isroset.org Received: 17 March 2013 Revised: 22 March 2013 Accepted: 16 May 2013 Published: 30 June 2013 Abstract-Congestion is one of the major problems of a communication network in routing. The function of a routing is to guide packets through the communication network to their correct destinations. Optimal Routing has been widely studied for interconnection networks. This paper provides two methodologies ECN and QBER for reduce the congestion. Keywords- Routing, congestion, ECN, QBER 1. INTRODUCTION packet. This act is referred to as “marking” and its purpose is to inform the receiving endpoint of impending The first methodology Explicit Congestion Notification congestion. At the receiving endpoint, this congestion (ECN) is an extension to the Internet protocol and to the indication is handled by the upper layer protocol (transport Transmission Control Protocol and is defined in layer protocol) and needs to be echoed back to the RFC3168(2001). ECN allows end-to-end notification of transmitting node in order to signal it to reduce its network congestion without dropping packets. ECN is an transmission rate. optional feature that is only used when both endpoints support it and are willing to use it. It is only effective when 2.2 Operation of ECN with TCP supported by the underlying network.
    [Show full text]
  • Piece of CAKE: a Comprehensive Queue Management Solution for Home Gateways
    Piece of CAKE: A Comprehensive Queue Management Solution for Home Gateways Toke Høiland-Jørgensen Dave Täht Jonathan Morton Dept. of Computer Science Teklibre Karlstad University, Sweden Los Gatos, California Somero, Finland [email protected] [email protected] [email protected] Abstract—The last several years has seen a renewed interest compelling benefit of CAKE is that it takes state of the art in smart queue management to curb excessive network queueing solutions and integrates them to provide: delay, as people have realised the prevalence of bufferbloat in • a high-precision rate-based bandwidth shaper that in- real networks. However, for an effective deployment at today’s last mile cludes overhead and link layer compensation features for connections, an improved queueing algorithm is not enough in various link types. itself, as often the bottleneck queue is situated in legacy systems • a state of the art fairness queueing scheme that simulta- that cannot be upgraded. In addition, features such as per-user neously provides both host and flow isolation. fairness and the ability to de-prioritise background traffic are • a Differentiated Services (DiffServ) prioritisation scheme often desirable in a home gateway. with rate limiting of high-priority flows and work- In this paper we present Common Applications Kept Enhanced (CAKE), a comprehensive network queue management system conserving bandwidth borrowing behaviour. designed specifically for home Internet gateways. CAKE packs • TCP ACK filtering that increases achievable throughput several compelling features into an integrated solution, thus on highly asymmetrical links. easing deployment. These features include: bandwidth shaping CAKE is implemented as a queueing discipline (qdisc) for with overhead compensation for various link layers; reasonable DiffServ handling; improved flow hashing with both per-flow and the Linux kernel.
    [Show full text]
  • Evaluation of the Impact of Packet Drops Due to AQM Over Capacity Limited Paths
    Evaluation of the Impact of Packet Drops due to AQM over Capacity Limited Paths Eduard Grigorescu, Chamil Kulatunga, Gorry Fairhurst Electronics Research Group, School of Engineering, University of Aberdeen, Aberdeen, AB24 3UE, United Kingdom {eduard, chamil, gorry}@erg.abdn.ac.uk Abstract - For many years Internet routers have been designed and interactive applications, and impairing the quality of real-time benchmarked in ways that encourage the use of large buffers. When (e.g. voice) and near-real-time traffic (e.g. live streaming). these buffers accumulate a large standing queue, this can lead to high network path latency. Two AQM algorithms: PIE and CoDel, The solution to high latency requires two elements: 1) a have been recently proposed to reduce buffer latency by avoiding strategy to signal the transport protocol to "slow down", the drawbacks of previous AQM algorithms like RED. This paper necessary to keep queues small; and 2) packet scheduling explores the performance of these new algorithms in simulated rural broadband networks where capacity is limited. We compared between flows (sharing capacity between different types of the new algorithms using Adaptive RED as a reference. We observe network flows). These solutions become more necessary at the that to achieve a small queuing delay PIE and CoDel both increase edge of the network, where speed of links is less and therefore packet loss. We therefore explored this impact on the quality of head of line blocking becomes more significant. experience for loss-sensitive unreliable multimedia applications, such as real-time and near-real-time video. The results from One way to prevent or minimise latency is to intelligently simulations show that PIE performs better than CoDel in terms of manage the queue of packets so that a router does not build a packet loss rates affecting video quality.
    [Show full text]
  • TCP Congestion Control Macroscopic Behavior for Combinations of Source and Router Algorithms
    TCP Congestion Control Macroscopic Behavior for Combinations of Source and Router Algorithms Mulalo Dzivhani1, 2, Dumisa Ngwenya3, 4, Moshe Masonta1, Khmaies Ouahada2 Council for Scientific and Industrial Research (CSIR), Meraka Institute1, Pretoria Faculty of Engineering and Built Environment, University of Johannesburg2, Johannesburg SENTECH3, Johannesburg University of Pretoria4, Pretoria South Africa Emails: [email protected] 1, 2, [email protected] 3, 4, [email protected], [email protected] Abstract—The network side of Transmission Control Protocol Most widely used TCP variant over the decades has been TCP (TCP) congestion control is normally considered a black-box in New Reno, evolving from TCP Tahoe and TCP Reno. TCP performance analysis. However, the overall performance of New Reno has proved to be efficient in fixed low speed TCP/IP networks is affected by selection of congestion control networks and networks with low BDP. However, as shown by mechanisms implemented at the source nodes as well as those [1], TCP as implemented is showing performance in high-speed implemented at the routers. The paper presents an evaluation of macroscopic behaviour of TCP for various combinations of source wide-area networks, in wireless links and for real-time flows. algorithms and router algorithms using a Dumbbell topology. In For this reason a number of source based algorithms have been particular we are interested in the throughput and fairness index. proposed in the past two decades. TCP Cubic is one of those TCP New Reno and TCP Cubic were selected for source nodes. that has gained popularity for high speed networks. Packet First-in-First-out (PFIFO) and Controlled Delay (CoDel) mechanisms were selected for routers.
    [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]
  • A Hybrid Loss-Delay Gradient Congestion Control Algorithm for the Internet
    A Hybrid Loss-Delay Gradient Congestion Control Algorithm for the Internet Rasool Al-Saadi School of Software and Electrical Engineering Swinburne University of Technology This thesis is submitted for the degree of Doctor of Philosophy Faculty of Science, Engineering and October 2019 Technology I dedicate this thesis to my loving parents, my beloved wife Dalia and my sons Ridha and Yousif. Declaration I declare that this thesis submitted for the degree of Doctor of Philosophy contains no ma- terial that has been accepted for the award to the candidate of any other degree or diploma, except where due reference made a in the text of the examinable outcome. To the best of the candidate’s knowledge contains no material previously published or written by another person except where due reference is made in the text of the examinable outcome. Where the work is based on joint research or publications, discloses the relative contributions of the respective creators or authors. Rasool Al-Saadi October 2019 Acknowledgements I would like to express my thanks and appreciation to all the people and institutions who helped, guided, advised and supported me during my PhD journey. I would like to thank my supervisors Prof. Grenville Armitage, Dr. Jason But and Assoc. Prof. Philip Branch for their insight, patience, friendship, encouragement, continuous support and valuable advice during my PhD candidature. I had the honour of being a student under their wise supervision. Without their support, this work would never have seen the light of day. I am greatly indebted to my family, especially my wife Dalia Al-Zubaidy, my parents, my brother and my sister for their patience, persevering support and advice.
    [Show full text]