Architectural Musings on SDN ( and now for something completely different )



Similar documents
Macro Trends, Complexity, and So6ware Defined Networking

On the Complexity of Engineered Systems (and its effect on protocol deployment) David Meyer DRAFT. Abstract

Software Defined Networking

Cloud Networking Disruption with Software Defined Network Virtualization. Ali Khayam

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

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

Software Defined Networking & Openflow

STRUCTURE AND DESIGN OF SOFTWARE-DEFINED NETWORKS TEEMU KOPONEN NICIRA, VMWARE

Network Virtualization: Delivering on the Promises of SDN. Bruce Davie, Principal Engineer

SOFTWARE-DEFINED NETWORKING AND OPENFLOW

Qualifying SDN/OpenFlow Enabled Networks

OpenFlow: History and Overview. Demo of routers

Musings on OpenFlow and SDN. David Meyer Cisco Systems OpenFlow Symposium

Surviving the SDN Wars. Curt Beckmann Chair of Forwarding Abstractions WG, ONF and EMEA CTO

Introduction to Software Defined Networking

Scalable Network Monitoring with SDN-Based Ethernet Fabrics

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

Understanding OpenFlow

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

OpenFlow. Ihsan Ayyub Qazi. Slides use info from Nick Mckeown

Does SDN accelerate network innovations? Example of Flexible Service Creation

The Future of Networking, and the Past of Protocols

Open Source Network: Software-Defined Networking (SDN) and OpenFlow

How SDN will shape networking

DEMYSTIFYING ROUTING SERVICES IN SOFTWAREDEFINED NETWORKING

Model-Driven OpenFlow Interoperability

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

OpenFlow Introduction and Status

SOFTWARE-DEFINED NETWORKING AND OPENFLOW

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

Core and Pod Data Center Design

Software Defined Networking (SDN) - Open Flow

Datacenter Networks Are In My Way

Bringing OpenFlow s Power to Real Networks

Strategic Direction of Networking IPv6, SDN and NFV Where Do You Start?

Network Virtualization

OF 1.3 Testing and Challenges

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

Network Virtualization Solutions

Brocade SDN/OpenFlow. Norival Figueira Office of the CTO. January 9, /2015 BROCADE COMMUNICATIONS SYSTEMS, INC. ALL RIGHTS RESERVED.

What is SDN all about?

OpenFlow and Onix. OpenFlow: Enabling Innovation in Campus Networks. The Problem. We also want. How to run experiments in campus networks?

Introduction to Network Virtualization in IaaS Cloud. Akane Matsuo, Midokura Japan K.K. LinuxCon Japan 2013 May 31 st, 2013

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

Building an Open, Adaptive & Responsive Data Center using OpenDaylight

Softening the Network: Virtualization s Final Frontier

Project 3 and Software-Defined Networking (SDN)

Why ISPs need SDN: SDN-based Network Service Chaining and Software-defined Multicast

Software Defined Networking

SDN/Virtualization and Cloud Computing

SDN and Streamlining the Plumbing. Nick McKeown Stanford University

Data Communication Networks and Converged Networks

SOFTWARE DEFINED NETWORKING

A Case for Overlays in DCN Virtualization Katherine Barabash, Rami Cohen, David Hadas, Vinit Jain, Renato Recio and Benny Rochwerger IBM

OVERLAYING VIRTUALIZED LAYER 2 NETWORKS OVER LAYER 3 NETWORKS

How To Orchestrate The Clouddusing Network With Andn

Ethernet-based Software Defined Network (SDN) Cloud Computing Research Center for Mobile Applications (CCMA), ITRI 雲 端 運 算 行 動 應 用 研 究 中 心

Conference. Smart Future Networks THE NEXT EVOLUTION OF THE INTERNET FROM INTERNET OF THINGS TO INTERNET OF EVERYTHING

Software Defined Networks

CSCI-1680 So ware-defined Networking

Cloud Fabric. Huawei Cloud Fabric-Cloud Connect Data Center Solution HUAWEI TECHNOLOGIES CO.,LTD.

SDN Applications in Today s Data Center

The promise of SDN. EU Future Internet Assembly March 18, Yanick Pouffary Chief Technologist HP Network Services

The Keys for Campus Networking: Integration, Integration, and Integration

Using SouthBound APIs to build an SDN Solution. Dan Mihai Dumitriu Midokura Feb 5 th, 2014

How the emergence of OpenFlow and SDN will change the networking landscape

Funded in part by: NSF, Cisco, DoCoMo, DT, Ericsson, Google, Huawei, NEC, Xilinx

Programmable Networking with Open vswitch

How the Emergence of OpenFlow and SDN will Change the Networking Landscape

SIMPLE NETWORKING QUESTIONS?

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

OpenFlow and Software Defined Networking presented by Greg Ferro. OpenFlow Functions and Flow Tables

What is SDN (Software Defined Networking) and Openflow? SDN/OF Part of Kernel / SoC to provide security, steering & monitoring

Tutorial: OpenFlow in GENI

CS244 Lecture 5 Architecture and Principles

Getting to know OpenFlow. Nick Rutherford Mariano Vallés

SDN Architecture and Standards for Operational, at Scale Networks. 신명기 ETRI KRNET June 2012

Sudden Impact: How Cloud Services Affect the Network and Drive Business Transformation. Monday, March 11, :30-3:15 p.m.

Software Defined Networking

The Hybrid- Open ( HOpen ) router architecture. Brian Field / Comcast

How To Make A Vpc More Secure With A Cloud Network Overlay (Network) On A Vlan) On An Openstack Vlan On A Server On A Network On A 2D (Vlan) (Vpn) On Your Vlan

OpenFlow: Load Balancing in enterprise networks using Floodlight Controller

Driving SDN Adoption in Service Provider Networks

Scalable Network Monitoring with SDN-Based Ethernet Fabrics

White Paper. SDN 101: An Introduction to Software Defined Networking. citrix.com

CS6204 Advanced Topics in Networking

The New Datacenter Network: Furthering Holistic Data Solutions. Cindy Borovick Program Vice President, Enterprise and Datacenter Networks IDC

Simplify IT. With Cisco Application Centric Infrastructure. Barry Huang Nov 13, 2014

The Role of Virtual Routers In Carrier Networks

Software Defined Networks (SDN)

Transcription:

Architectural Musings on SDN ( and now for something completely different ) David Meyer CTO and Chief ScienDst, Brocade Director, Advanced Technology Center, University of Oregon RIPE 66 May 2013 Dublin, Ireland dmm@{brocade.com,uoregon.edu,1-4- 5.net, } hyp://www.1-4- 5.net/~dmm/talks/ripe66.pdf 1

Agenda IntroducDon Architectural Features for Scalability and Evolvability and why we might care A Quick Tour Through the SDN Design Space A Few Conclusions Q&A 2

Danger Will Robinson!!! This talk is intended to be controversial/provoca4ve (and a bit sciencey ) 3

IntroducDon Lots of hype around OpenFlow, SDN, SDS, duh In trying to understand all of this, I went back architectural principles An ayempt to take an objecdve look at all of this Ideas from control theory, systems biology, quandtadve risk engineering, Obviously we need programmadc automadon of ConfiguraDon, management, monitoring, opdmizadon(s), Some components already available Puppet, Chef, rancid,... Note everything open (interfaces, APIs, protocols, source) along with s/w a macro- trend Perhaps obvious: Scalability and Evolvability key to building/operadng the Internet But what are Scalability/Evolvability, and what architectures enable them? Through this lens: What is going on with OpenFlow, SDN,? 4

BoYom Line I hope to convince you that uncertainty and voladlity are the coin of the realm of the future, why this is the case, how SDN (and the rise of sojware in general) is acceleradng this effect, and finally, what we might do to take advantage of it. 0 0 s/take advantage of/survive/ - - @smd 5

What are Scalability and Evolvability? First, why do we care? Goes without saying? That said Scalability is robustness to changes to the size and complexity of a system as a whole Evolvability is robustness of lineages to changes on long Dme scales Other system features cast as robustness Reliability is robustness to component failures Efficiency is robustness to resource scarcity Modularity is robustness to component rearrangements In our case: holds for protocols, systems, and operadons 6

OK, Fine. But What is Robustness? Defini4on: A [property] of a [system] is robust if it is [invariant] with respect to a [set of perturba3ons], up to some limit Fragility is the opposite of robustness If you're fragile you depend on 2nd order effects (acceleradon) and the curve is concave Catch me later if you d like to chat further about this A system can have a property that is robust to one set of perturbadons and yet fragile for a different property and/or perturbadon à the system is Robust Yet Fragile (RYF- complex) Or the system may collapse if it experiences perturbadons above a certain threshold (K- fragile) Example: A possible RYF tradeoff is that a system with high efficiency (i.e., using minimal system resources) might be unreliable (i.e., fragile to component failure) or hard to evolve See Alderson, D. and J. Doyle, ContrasDng Views of Complexity and Their ImplicaDons For Network- Centric Infrastructures, IEEE TRANSACTIONS ON SYSTEMS, MAN, AND CYBERNETICS PART A: SYSTEMS AND HUMANS, VOL. 40, NO. 4, JULY 2010 7

Robust Yet Fragile (RYF) [a system] can have [a property] robust for [a set of perturbadons] Yet be fragile for [a different property] Or [a different perturbadon] Robust Fragile Conjecture: The RYF tradeoff is a hard limit that cannot be overcome. Slide courtesy John Doyle 8

Robust RYF Examples J Efficient, flexible metabolism J Complex development and J Immune systems J Regeneration & renewal 4 Complex societies ÿ Advanced technologies Yet Fragile L Obesity and diabetes L Rich microbe ecosystem L Inflammation, Auto-Im. L Cancer N Epidemics, war, M Catastrophic failures Evolved mechanisms for robustness allow for, even facilitate, novel, severe fragilides elsewhere Ojen involving hijacking/exploidng the same mechanism We ve certainly seen this in the Internet space There are hard constraints (i.e., theorems with proofs) 9

Brief Aside: Fragility and Scaling (geeking out for a sec ) A bit of a formal descripdon of fragility Let z be some stress level, p some property, and Let H(p,z) be the (negadve valued) harm funcdon Then for the fragile the following must hold H(p,nz) < nh(p,z) for 0 < nz < K Basically, the harm funcdon is non- linear This inequality is importantly non- mean preserving (Jensen s Inequality) Non- mean preserving: H(p,(z 1 + z 2 )/2)!= (H(p,z 1 ) + H(p,z 2 ))/2! à model error and hence addidonal uncertainty For example, a coffee cup on a table suffers non- linearly more from large deviadons (H(p, nz)) than from the cumuladve effect of smaller events (nh(p,z)) So the cup is damaged far more from (i.e., destroyed by) tail events than those within a few σ of the mean Too theoredcal? Perhaps, but consider: ARP storms, micro- loops, congesdon collapse, AS 7007, BTW, nature requires this property Consider: jump off something 1 foot high 30 Dmes v/s jumping off something 30 feet high once When we say something scales like O(n 2 ), what we mean is the damage to the network has constant acceleradon (2) for weird enough n (e.g., outside say, 10 σ) Again, ARP storms, congesdon collapse, AS 7007, DDOS, à non- linear damage Something we don t have Dme for: AnDfragility Is this related to our work? See hyp://www.renesys.com/blog/2013/05/syrian- internet- fragility.shtml 10

Robustness vs. Complexity Systems View Domain of the Robust Domain of the fragile What this curve is telling us is that a system needs complexity to achieve robustness (wrt some feature to some perturbadon), but like everything else, too much of of a good thing. 11

Ok, but what is Complexity? In our view, however, complexity is most succinctly discussed in terms of funcdonality and its robustness. Specifically, we argue that complexity in highly organized systems arises primarily from design strategies intended to create robustness to uncertainty in their environments and component parts. See Alderson, D. and J. Doyle, ContrasDng Views of Complexity and Their ImplicaDons For Network- Centric Infrastructures, IEEE TRANSACTIONS ON SYSTEMS, MAN, AND CYBERNETICS PART A: SYSTEMS AND HUMANS, VOL. 40, NO. 4, JULY 2010 12

BTW, This Might Also Be Obvious But Networks are incredibly general and expressive structures G = (V,E) Networks are extremely common in nature Immune systems, energy metabolism, transportadon systems, Internet, macro economies, forest ecology, the main sequence (stellar evoludon), galacdc structures,. Almost everything you see can be explained as either a network and/or a queue So it comes as no surprise that we study, for example, biological systems in our ayempts to get a deeper understanding of complexity and the architectures that provide for scalability, evolvability, and the like Ok, this is cool, but what are the key architectural takeaways from this work for us? where us \in {ops, engineering, architects } And how might this effect the way we build and operate networks? 13

Key Architectural Takeaways What we have learned is that there are fundamental architectural building blocks found in systems that scale and are evolvable. These include RYF complexity BowHe architectures Massively distributed with robust control loops Contrast opdmal control loops and hop- by- hop control Highly layered But with layer violadons Protocol Based Architectures (PBAs) Degeneracy 14

BowDes 101 Constraints that Deconstrain For example, the reacdons and metabolites of core metabolism, e.g., ATP metabolism, Krebs/Citric Acid cycle signaling networks, See Kirschner M., and Gerhart J., Evolvability, Proc Natl Acad Sci USA, 95:8420 8427, 1998. 15

But Wait a Second Anything Look Familiar? BowDe Architecture Hourglass Architecture The Protocol Hourglass idea appears to have originated with Steve Deering. See Deering, S., Watching the Waist of the Protocol Hourglass, IETF 51, 2001, hyp://www.iab.org/wp- content/iab- uploads/2011/03/hourglass- london- ie.pdf. See also Akhshabi, S. and C. Dovrolis, The EvoluDon of Layered Protocol Stacks Leads to an Hourglass- Shaped Architecture, hyp://conferences.sigcomm.org/sigcomm/2011/papers/sigcomm/p206.pdf. 16

So Let s Have a Look at OF/SDN Here s the Thesis App App App App App App Windows Windows Windows (OS) (OS) (OS) Linux Linux Linux Mac Mac Mac OS OS OS NOX Controller Controller 1 1 (Network OS) Controller Controller Network 22 OS VirtualizaDon layer VirtualizaDon or Slicing x86 (Computer) OpenFlow Graphic Courtesy Rob Sherwood Computer Industry Network Industry SeparaDon of Control and Data Planes Open Interface to Data Plane Centralized Control (logically?) 17

A Closer Look App App NB API App App App OpenFlow Controller Control plane OpenFlow Protocol Simple Packet Forwarding Hardware Graphic courtesy Nick Mckeown Simple Packet Forwarding Hardware Simple Packet Forwarding Hardware Simple Packet Forwarding Hardware Simple Packet Forwarding Hardware Data plane 18

So Does the OF/SDN- Compute Analogy Hold? Really Doesn t Look Like It A beper analogy would be an open source network stack/os on white- box hardware Graphic courtesy James Hamilton, hyp://mvdirona.com/jrh/talksandpapers/jameshamilton_poa20101026_external.pdf. 19

BTW, Logically Centralized? Key ObservaHon: Logically centralized à distributed system à tradeoffs between control plane convergence and state consistency model. See the CAP Theorem. Architectural ImplicaHon: If you break CP/DP fate sharing, you have to deal the following physics: Ω(convergence) = Σ RTT(controller, switch i ) + PPT(controller) + PPT(switch i ) Graphic courtesy Dan Levin <dlevin@net.t- labs.tu- berlin.de> 20

BTW, Nothing New Under The Sun Separa4on of control and data planes is not a new idea. Nor is flow- based forwarding. Examples include: SS7 Ipsilon Flow Switching Centralized flow based control, ATM link layer GSMP (RFC 3292) AT&T SDN Centralized control and provisioning of SDH/TDM networks A similar thing happened in TDM voice to VOIP transidon Sojswitch à Controller Media gateway à Switch H.248 à Device interface Note 2 nd order effect: This was really about circuit à packet ForCES SeparaDon of control and data planes RFC 3746 (and many others) 21

Drilling Down a Bit OpenFlow Switch Model Version 1.0 Redirect to Controller Encapsulate packet to controller Packet Flow Table (TCAM) Apply acdons Forward with edits Too simple: Drop - Feature/funcHonality - Expressiveness consider shared table learning/forwarding bridge 22

OK, Fast Forward to Today: OF 1.1+ OpenFlow Switch Specification Version 1.1.0 Implemented OpenFlow Switch Packet In Ingress port Action Set = {} Table 0 Packet + ingress port + metadata Action Set Table 1... Table n Packet Action Set Execute Action Set Packet Out (a) Packets are matched against multiple tables in the pipeline Why this design?! Find highest-priority matching flow entry Combinatoric explosion(s) s/a routes*policies in single table " Apply instructions: However, Match fields: intractable complexity: Match O(n!) fields: paths through tables of a single switch Ingress port + Ingress port + i. Modify packet & update match fields metadata c a (2^l) + + α metadata + Flow pkt where hdrs a = number of acdons in a given table, pkt l = hdrs width of match field, and (apply actions instruction) α all the factors I didn t Table consider (e.g., table size, funcdon, group tables, meter ii. Update tables, ) action set (clear actions and/or Action set Action set Too complex/briyle write actions instructions) iii. Update metadata! " # Algorithmic complexity What is a flow? # Send match data and action set to Not naturally implementable on ASIC h/w next table Breaks new reasoning systems (e.g., frenedc) No fixes for lossy abstracdons (b) Per-table packet processing Architectural quesdons Figure 2: Packet flow through the processing pipeline So queshon: Is the flow- based abstrachon right for general network programmability? 23

The SDN Design Space Service Layers May be repeated (stacked or recursive) Apps Apps Control and OrchestraHon (overly simplified view) DP/SDN ProperDes: - - Complete SeparaDon of CP and DP - - ( Logically ) Centralized Control - - Open Interface/programmable Data Plane - - Examples: OF, ForCES, various control pla orms CP/SDN ProperDes: - - Retains exisdng (distributed) Control Planes - - Programmable control plane - - Network aware applicadons - - Examples: PCE, I2RS, BGP- LS, vendor SDKs OL/SDN ProperDes: - - Retains exisdng (simplified) Control Planes - - Underlay agnosdc - - Programmable overlay control plane - - May use OF to program vswitches - - Example: VMW NVP Physical and Virtual Resources (CSN) 24

Puˆng it all Together Open Loop Control + s/w + Moore s Law à Randomness, Uncertainty, and Vola4lity OL/SDN CP/SDN OF/SDN OF/SDN proposes a new architectural waist (not exactly sure where) CP/SDN makes exisdng control planes programmable OL/SDN is an applicadon from the perspec3ve of the Internet s waist 25

Summary/Where to from Here? First, note that SDN doesn t do anything fundamentally different Moves architectural features (and maybe complexity) around in the design space Be conservadve with the narrow waist - - constraints that deconstrain We re preyy good at this Reuse parts where possible (we re also preyy good at this; traceroute a canonical example) Expect uncertainty and voladlity from above Inherent in sojware, and importantly, in acceleradon We know the network is RYF- complex so we know that for H(p,x), the harm funcdon, d 2 H(p,x)/dx 2 0 When you architect for robustness, understand what fragilides have been created à Sojware (SDN or hyp://spotcloud.com or ) is inherently non- linear, voladle, and uncertain We need to learn to live with/benefit from the non- linear, random, uncertain DevOps We already have some components (Puppet, Chef, rancid, ) Develop our understanding boyom up (by Dnkering ) Actually an Internet principle. We learn incrementally Avoid the top- down (in epistemology, science, engineering, ) BoYom- up v. top- down innovadon cycles cf CurDs Carlson Design future sojware ecosystems to benefit from variability and uncertainty rather than trying to engineer it out (as shielding these systems from the random may actually cause harm) For example, design in degeneracy - - i.e., ability of structurally different elements of a system to perform the same funcdon. In other words, design in pardal funcdonal overlap of elements capable of non- rigid, flexible and versadle funcdonality. This allows for evoludon *plus* redundancy. Contrast m:n redundancy (i.e., we do just the opposite). 26

Q&A Thanks! 27