Software Defined Active Queue Management



Similar documents
SOFTWARE DEFINED NETWORKS REALITY CHECK. DENOG5, Darmstadt, 14/11/2013 Carsten Michel

Congestion Control Review Computer Networking. Resource Management Approaches. Traffic and Resource Management. What is congestion control?

SDN AND SECURITY: Why Take Over the Hosts When You Can Take Over the Network

Taming SDN Controllers in Heterogeneous Hardware Environments

Extending the Internet of Things to IPv6 with Software Defined Networking

Software Defined Networking

Outline. Institute of Computer and Communication Network Engineering. Institute of Computer and Communication Network Engineering

SDN/Virtualization and Cloud Computing

Analysis of Internet Transport Service Performance with Active Queue Management in a QoS-enabled Network

基 於 SDN 與 可 程 式 化 硬 體 架 構 之 雲 端 網 路 系 統 交 換 器

Active Queue Management

ON THE IMPLEMENTATION OF ADAPTIVE FLOW MEASUREMENT IN THE SDN-ENABLED NETWORK: A PROTOTYPE

Active Queue Management

Frame Metering in 802.1Q Version 01

Internet Quality of Service

"Charting the Course to Your Success!" QOS - Implementing Cisco Quality of Service 2.5 Course Summary

IMPLEMENTING CISCO QUALITY OF SERVICE V2.5 (QOS)

Smart Queue Scheduling for QoS Spring 2001 Final Report

Implementing Cisco Quality of Service QOS v2.5; 5 days, Instructor-led

Applications of Software-Defined Networking (SDN) in Power System Communication Infrastructure: Benefits and Challenges

Software Defined Networking (SDN) - Open Flow

OpenDaylight Project Proposal Dynamic Flow Management

Description: To participate in the hands-on labs in this class, you need to bring a laptop computer with the following:

Security Challenges & Opportunities in Software Defined Networks (SDN)

Intel DPDK Boosts Server Appliance Performance White Paper

How To Switch A Layer 1 Matrix Switch On A Network On A Cloud (Network) On A Microsoft Network (Network On A Server) On An Openflow (Network-1) On The Network (Netscout) On Your Network (

Programmable Networking with Open vswitch

CS6204 Advanced Topics in Networking

Integrated Service (IntServ) versus Differentiated Service (Diffserv)

The State of OpenFlow: Advice for Those Considering SDN. Steve Wallace Executive Director, InCNTRE SDN Lab Indiana University

Concepts and Mechanisms for Consistent Route Transitions in Software-defined Networks

OpenFlow Technology Investigation Vendors Review on OpenFlow implementation

Software Defined Networking What is it, how does it work, and what is it good for?

SDN. What's Software Defined Networking? Angelo Capossele

B4: Experience with a Globally-Deployed Software Defined WAN TO APPEAR IN SIGCOMM 13

SDN CENTRALIZED NETWORK COMMAND AND CONTROL

Using SDN-OpenFlow for High-level Services

What is SDN all about?

Comparative Analysis of Congestion Control Algorithms Using ns-2

How To Manage A Network With A Network Management System (Qoe)

BROADCOM SDN SOLUTIONS OF-DPA (OPENFLOW DATA PLANE ABSTRACTION) SOFTWARE

NAVAL POSTGRADUATE SCHOOL THESIS

Investigation and Comparison of MPLS QoS Solution and Differentiated Services QoS Solutions

SDN IN WAN NETWORK PROGRAMMABILITY THROUGH CENTRALIZED PATH COMPUTATION. 1 st September 2014

1. The subnet must prevent additional packets from entering the congested region until those already present can be processed.

Improving Quality of Service

From Active & Programmable Networks to.. OpenFlow & Software Defined Networks. Prof. C. Tschudin, M. Sifalakis, T. Meyer, M. Monti, S.

Getting on the Path to SDN:

Software Defined Networking

What can DDS do for You? Learn how dynamic publish-subscribe messaging can improve the flexibility and scalability of your applications.

Using Fuzzy Logic Control to Provide Intelligent Traffic Management Service for High-Speed Networks ABSTRACT:

Passive Queue Management

Software Defined Networking Seminar

Testing Challenges for Modern Networks Built Using SDN and OpenFlow

OpenFlow - the key standard of Software-Defined Networks. Dmitry Orekhov, Epam Systems

Protagonist International Journal of Management And Technology (PIJMT) Online ISSN Vol 2 No 3 (May-2015) Active Queue Management

Real-time apps and Quality of Service

CS640: Introduction to Computer Networks. Why a New Service Model? Utility curve Elastic traffic. Aditya Akella. Lecture 20 QoS

Network Virtualization and Software-defined Networking. Chris Wright and Thomas Graf Red Hat June 14, 2013

The following normative disclaimer shall be included on the front page of a PoC report:

SDN Interfaces and Performance Analysis of SDN components

Router Architectures

A Presentation at DGI 2014 Government Cloud Computing and Data Center Conference & Expo, Washington, DC. September 18, 2014.

Decomposition into Parts. Software Engineering, Lecture 4. Data and Function Cohesion. Allocation of Functions and Data. Component Interfaces

Software Defined Networking and the design of OpenFlow switches

Software Defined Networking & Openflow

Limitations of Current Networking Architecture OpenFlow Architecture

Designing Virtual Network Security Architectures Dave Shackleford

Network Function Virtualization

Virtualization, SDN and NFV

How To Understand The Power Of A Network In A Microsoft Computer System (For A Micronetworking)

µfup: A Software Development Process for Embedded Systems

Testing Software Defined Network (SDN) For Data Center and Cloud VERYX TECHNOLOGIES

Software-Defined Networking Architecture Framework for Multi-Tenant Enterprise Cloud Environments

An Introduction to Software-Defined Networking (SDN) Zhang Fu

Software Defined Networking and OpenFlow: a Concise Review

17: Queue Management. Queuing. Mark Handley

Network Security: Network Flooding. Seungwon Shin GSIS, KAIST

SDN Applications in Today s Data Center

Principle and Implementation of. Protocol Oblivious Forwarding

Qualifying SDN/OpenFlow Enabled Networks

Software Defined Networks

Active Queue Management (AQM) based Internet Congestion Control

Computer Networks. Chapter 5 Transport Protocols

White Paper Abstract Disclaimer

Transport SDN Toolkit: Framework and APIs. John McDonough OIF Vice President NEC BTE 2015

mesdn: Mobile Extension of SDN Mostafa Uddin Advisor: Dr. Tamer Nadeem Old Dominion University

Chandelle: Principles of integration wireless controller and SDN controller. Sergey Monin, Alexander Shalimov, Ruslan Smeliansky

Quality of Service versus Fairness. Inelastic Applications. QoS Analogy: Surface Mail. How to Provide QoS?

SDN and NFV Open Source Initiatives. Systematic SDN and NFV Workshop Challenges, Opportunities and Potential Impact

ONOS Open Network Operating System

Software Defined Networking A quantum leap for Devops?

Quality of Service (QoS)) in IP networks

Resource Utilization of Middleware Components in Embedded Systems

LTE - Can SDN paradigm be applied?

Towards Software Defined Cellular Networks

Data Center Networks and Basic Switching Technologies

Cloud Networking Disruption with Software Defined Network Virtualization. Ali Khayam

Transcription:

Software Defined Active Queue Management Future Networks 2014 Sebastian Meier sebastian.meier@ikr.uni-stuttgart.de 2014-09-26 Universität Stuttgart Institute of Communication Networks and Computer Engineering (IKR) Prof. Dr.-Ing. Andreas Kirstädter

Outline Motivation Queuing and queue management Queue management with southbound interfaces today Proposed programming model Dataflow approach Building blocks Conclusion & future work 2

Motivation Active Queue Management (AQM) Queuing in packet switched networks necessary when outbound interface busy typically relevant at bottlenecks interacts with end host control loops (TCP) is desirable compensate short packet bursts keep link utilization high can introduce undesired effects packet delay ("buffer bloat") burst packet loss (e.g. due to TCP global synchronization) queue management has huge impact on Quality of Service (QoS) AQM approach Improve QoS by sophisticated queue management, e.g. packet classification, queuing discipline behavior, scheduling Classifier Queues Scheduler 3

Motivation Active Queue Management (AQM) Algorithms RED BLUE, RIO, CHOKe,... (~100 more) PIE, CoDel,... 1993 2013/14 initially just targeted at breaking TCP synchronization later many scenario specific solutions today mainly targeting low delay Deployment until ~2 years no interest beyond RED recently manufacturers push to deploy PIE (Cisco) and CoDel (ALU) operators deploy low delay variants at network edge, see DOCSIS Increasing interest in influencing data plane queuing behavior Software Defined AQM Adapt queuing to changing traffic and requirements Drop Probability 1 P max 0 MinThres MaxThres Average Queue Length 4

Motivation Software Defined Networking Southbound interfaces today open APIs abstracting infrastructure configure packet forwarding neglect packet queuing & scheduling potential of SDN not fully exploited Network Operating System / Network Controller(s) Path Computation Control Plane Data Plane Topology Discovery... Northbound Interface QoS Enforcement Southbound Interface (OpenFlow, ForCES, I2RS) Our goal Device independent, adaptive control of queuing and scheduling instantiation, combination and parameterization programmability of AQM components and algorithms Data Plane Device Forwarding Data Plane Device Forwarding Queuing Port Port Port Port Port Port 5

Motivation Software Defined Networking Southbound interfaces today open APIs abstracting infrastructure configure packet forwarding neglect packet queuing & scheduling potential of SDN not fully exploited Network Operating System / Network Controller(s) Path Computation Control Plane Data Plane Topology Discovery... Northbound Interface QoS Enforcement Southbound Interface (OpenFlow, ForCES, I2RS) Our goal Device independent, adaptive control of queuing and scheduling instantiation, combination and parameterization programmability of AQM components and algorithms Data Plane Device Forwarding Data Plane Device Forwarding Queuing Port Port Port Port Port Port Classifier Queues Scheduler 6

Motivation Software Defined Networking Southbound interfaces today open APIs abstracting infrastructure configure packet forwarding neglect packet queuing & scheduling potential of SDN not fully exploited Northbound Interface Network Operating System / Network Controller(s) Path Computation Control Plane Data Plane Topology Discovery... QoS Enforcement Southbound Interface (OpenFlow, ForCES, I2RS) Our goal Device independent, adaptive control of queuing and scheduling instantiation, combination and parameterization programmability of AQM components and algorithms Data Plane Device Forwarding Data Plane Device Forwarding LINRED Dropper Buffer Port Port Port Port Port Queuing Port Classifier Queues Scheduler use P = D MAX MAX=1000 use=3 7

Towards Software Defined AQM AQM in data plane today limited choice of black box implementations/algorithms new features via software/firmware upgrade RED Vision transition from black box towards white box approach fully programmable queuing and scheduling behavior PINK Dropper use P = D MAX Buffer MAX=1000 use=3 Approach fine grained control of AQM using elementary, device independent building blocks standardized interface for building blocks instantiation and parameterization modeling approach aligned with hardware design patterns Advantages define AQM once in device independent description adapt AQM dynamically during runtime 8

Software Defined AQM Towards suitable programming model Programming Model special purpose language for implementing AQM mechanisms abstraction layer for programmable hardware Modeling challenges suitable programming model(s) for structural description (interfaces and interconnections) defining behavior (internal processing) reasonable level of abstraction for building blocks AQM Algorithm Implementation programming model? Programmable Hardware b a c + Latency Based Drop Probability Calculation Relevant practices modeling and design of AQM algorithms programmability of packet processing in hardware 9

Software Defined AQM Towards suitable programming model Modeling of AQM algorithms typically block diagrams on high level equations, formulae and rules for refinement emphasis on information flow (e.g. packets, input values, results,...) event based/reactive perspective (e.g. packet arrival, queue fill level change) Variable Attenuator (packet dropper) Output Queue Control Law Smoother Queue length monitor Source: V. Jacobson, et al. "RED in a Different Light" Source: R. Pan, et al. "PIE: A Lightweight Control Scheme to Address the Bufferbloat Problem" 10

Software Defined AQM Towards suitable programming model High performance packet processing in hardware traditionally ASICs (not programmable) recently programmable FPGAs (e.g. Juniper MS-PIC) programmable network processors (e.g. CISCO npower X1) not directly programmable (e.g. using VHDL) programmable via vendor specific frameworks (e.g. Junos SDK) typically procedural implementation Observation AQM and digital logic design: reactive, concurrent, dataflow oriented different programming model for implementation potentially obstructs algorithm (focus on sequence of procedures, not data flow) source for inefficiencies and errors (no implicit concurrency) more suitable programming model for AQM algorithms desirable AQM Design Dataflow oriented Implementation procedural Digital Logic Design Dataflow oriented 11

Software Defined AQM Dataflow Programming Model Dataflow programming declarative programming paradigm first languages in 1966, MIT Concepts self-contained functional blocks ports for reading and writing of data scheduled, as soon as all inputs have input data (reactive behavior) exchange of data via lightweight message passing (tokens) no locking interconnection of blocks specified separately no "A <has> B" relations Token 12

Software Defined AQM Dataflow Programming Model Dataflow programming declarative programming paradigm first languages in 1966, MIT Concepts self-contained functional blocks ports for reading and writing of data scheduled, as soon as all inputs have input data (reactive behavior) exchange of data via lightweight message passing (tokens) no locking interconnection of blocks specified separately no "A <has> B" relations 13

Software Defined AQM Dataflow Programming Model Advantages implementation approach closely resembles AQM design approach digital logic design on register-transfer level reactive approach fits queuing behavior (reaction on packet enqueue, dequeue) loose coupling facilitates component oriented modeling encourages design of reusable functional blocks potential for hardware optimizations for common functional blocks inherently parallel, supports pipelining Drawbacks non-deterministic execution (in absence of fixed schedule) debugging challenging due to parallelism 14

Software Defined AQM Dataflow Programming Model Level of abstraction very fine grained modeling may be cumbersome and confusing coarse grained modeling may limit reusability + - > Current approach model functions commonly utilized in AQM as blocks, e.g. buffer, dropper, time reference & timer, RNG, moving average, threshold observer increase reusability by making components configurable capacity removeelement isempty - #consecutive samples - hold off time addelement isrejecting addevent removeevent filllevel remainingcapacity ref val CMP above below lo->hi hi->lo 15

Software Defined AQM Dataflow Programming Model Example CoDel algorithm (simplified) algorithm modeled with < 10 elementary building blocks only one simple customized building block: drop control Good Queue: count = 1, interval => 100 Bad Queue: count++, interval => 100 / sqrt(count), dodrop => 1 packet current time Time Reference ts meta p packet in Add pout push pop Metadata +TS current time packet +TS TS i o meta p Strip in p Metadata out - packet delay 5ms ref val CMP lo->hi hi->lo high delay period Periodic Timer start stop expired packet low delay drop interval sustained high delay badq. interval drop goodq. control dodrop dodrop p dodrop in Deterministic packet Dropper p out 16

Software Defined AQM Current State Ongoing research dataflow programming model token capacity of interconnections execution model token pushing vs. pulling overall architecture integration with controller interface for instantiation and parameterization Token Implementation Java implementation for proof of concept & functional evaluation ForkJoin scheduler for lightweight block scheduling unsuitable for performance evaluation (user space packet processing) Intel DPDK (Data Plane Development Kit) implementation work in progress, no performance measurements yet hardware implementation future work 17

Conclusion & Future Work Conclusion AQM has huge impact on QoS limited support for controlling queuing behavior in today s southbound interfaces control interface for adaptive operation needed proposing dataflow programming model for software defined AQM Future work refinement of programming model performance evaluation and comparison with Linux queuing framework control protocol development signaling towards data plane device feedback from data plane to control plane 18

Bonus Slides 19

State of the art OpenFlow Queuing model OF-Config associate ports, queues with logical switch set minimum and maximum data rate of queue OpenFlow flow based rate limiting with meter bands flow based output queue assignment Evaluation QoS and queuing focused on rate limiting instantiation of ports and queues out of scope model is incomplete, lacks information regarding queue properties discipline, feedback strategy,... scheduling queue priorities, scheduling algorithm,... Current OpenFlow protocols insufficient for queue management ogical h Port Queue ate ength ate 20

-*. State of the art ForCES Queuing model device capabilities modeled by coarse-grained Logical Functional Blocks (LFBs) well-defined interfaces for LFB interaction and configuration (e.g. queue depth) can model hardware restrictions (e.g. #max instances/element, LFB order) does not provide many details about LFB internals ()*)* /0.122*. 3 ()*)* +,* &' $%$ ##"! eduler Sc source: RFC 5812 Evaluation good approach for black box modeling of AQM configuration no detailed specifications for queuing related LFBs (except RR scheduler) ForCES LFB abstraction level too coarse grained for our purpose 21

Register Transfer Level R1 E1 R0 E0 #0 #0 S3,S2 S1,S0 C out X Y M0 + / C in AC 22