The Evolution of Programmable Networks: From Active Networks to Software Defined Networks (SDN)



Similar documents
Unifying the Programmability of Cloud and Carrier Infrastructure

What is SDN all about?

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

SOFTWARE-DEFINED NETWORKING AND OPENFLOW

Virtualization, SDN and NFV

SDN Applications in Today s Data Center

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

SOFTWARE-DEFINED NETWORKING AND OPENFLOW

Introduction to Software Defined Networking

Software Defined Networking

Network Virtualization and SDN/OpenFlow for Optical Networks - EU Project OFELIA. Achim Autenrieth, Jörg-Peter Elbers ADVA Optical Networking SE

Qualifying SDN/OpenFlow Enabled Networks

Software Defined Networking and the design of OpenFlow switches

Transport SDN Directions. March 20, 2013 Lyndon Ong Ciena

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

Leveraging SDN and NFV in the WAN

SDN PARTNER INTEGRATION: SANDVINE

Using SDN-OpenFlow for High-level Services

WHITE PAPER. Network Virtualization: A Data Plane Perspective

Various Alternatives to achieve SDN. Dhruv Dhody, Sr. System Architect, Huawei Technologies

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

BROCADE NETWORKING: EXPLORING SOFTWARE-DEFINED NETWORK. Gustavo Barros Systems Engineer Brocade Brasil

Software Defined Networking (SDN) OpenFlow and OpenStack. Vivek Dasgupta Principal Software Maintenance Engineer Red Hat

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

Driving SDN Adoption in Service Provider Networks

RIDE THE SDN AND CLOUD WAVE WITH CONTRAIL

SDN and NFV in the WAN

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

SDN CONTROLLER. Emil Gągała. PLNOG, , Kraków

Software-Defined Network (SDN) & Network Function Virtualization (NFV) Po-Ching Lin Dept. CSIE, National Chung Cheng University

Software-Defined Networking for the Data Center. Dr. Peer Hasselmeyer NEC Laboratories Europe

SDN. What's Software Defined Networking? Angelo Capossele

How To Orchestrate The Clouddusing Network With Andn

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

SDN: A NEW PARADIGM. Kireeti Kompella CTO, JDI

Transport SDN - Clearing the Roadblocks to Wide-scale Commercial

OpenFlow: History and Overview. Demo of routers

Defining SDN. Overview of SDN Terminology & Concepts. Presented by: Shangxin Du, Cisco TAC Panelist: Pix Xu Jan 2014

SIMPLE NETWORKING QUESTIONS?

Software Defined Network (SDN) for Service Providers

Network Virtualization Solutions

CoIP (Cloud over IP): The Future of Hybrid Networking

A Coordinated. Enterprise Networks Software Defined. and Application Fluent Programmable Networks

SOFTWARE DEFINED NETWORKING

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

Cloud Networking Disruption with Software Defined Network Virtualization. Ali Khayam

Software Defined Network Application in Hospital

OpenFlow/SDN activities of NTT Communications

Introduction to Software Defined Networking (SDN) and how it will change the inside of your DataCentre

Dynamic Service Chaining for NFV/SDN

Network Virtualization and Application Delivery Using Software Defined Networking

CARRIER LANDSCAPE FOR SDN NEXT LEVEL OF TELCO INDUSTRILIZATION?

IPOP-TinCan: User-defined IP-over-P2P Virtual Private Networks

Securing Local Area Network with OpenFlow

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

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

Building an Open, Adaptive & Responsive Data Center using OpenDaylight

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

Software-defined networking: the service provider perspective

OpenFlow-enabled SDN and Network Functions Virtualization. ONF Solution Brief February 17, 2014

Challenges and Opportunities:

Software Defined Networking & Openflow

SOFTWARE DEFINED NETWORKING: A PATH TO PROGRAMMABLE NETWORKS. Jason Kleeh September 27, 2012

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

Testing Challenges for Modern Networks Built Using SDN and OpenFlow

Blue Planet. Introduction. Blue Planet Components. Benefits

SDN FOR IP/OPTICAL TRANSPORT NETWORKS

What is SDN? And Why Should I Care? Jim Metzler Vice President Ashton Metzler & Associates

Definition of a White Box. Benefits of White Boxes

Business Case for NFV/SDN Programmable Networks

Software Defined Networking

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

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

Why Operators Need Optical Transport SDN

YI-CHIH HSU & JEI-WEI ESTINET TECHNOLOGIES

Panel: Cloud/SDN/NFV 黃 仁 竑 教 授 國 立 中 正 大 學 資 工 系 2015/12/26

Network Functions Virtualization (NFV) for Next Generation Networks (NGN)

Carrier/WAN SDN. SDN Optimized MPLS Demo

Does SDN accelerate network innovations? Example of Flexible Service Creation

Network Functions as-a-service over Virtualised Infrastructures T-NOVA. Presenter: Dr. Mamadu Sidibe

Transforming Evolved Programmable Networks

Delivering Managed Services Using Next Generation Branch Architectures

SDN Architecture and Service Trend

Network Virtualization

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

HAWAII TECH TALK SDN. Paul Deakin Field Systems Engineer

NFV Management and Orchestration: Enabling Rapid Service Innovation in the Era of Virtualization

Software Defined Networking A quantum leap for Devops?

Transform Your Business and Protect Your Cisco Nexus Investment While Adopting Cisco Application Centric Infrastructure

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

THE SDN TRANSFORMATION A Framework for Sustainable Success

OF 1.3 Testing and Challenges

Software Defined Networking - a new approach to network design and operation. Paul Horrocks Pre-Sales Strategist 8 th November 2012

Brocade VCS Fabrics: The Foundation for Software-Defined Networks

Software Defined Networks Virtualized networks & SDN

Transcription:

Slide title 70 pt APITALS The Evolution of Programmable Networks: From Active Networks to Software Defined Networks (SDN) e subtitle um 30 pt Ahmad Rostami, PhD Ericsson Research, Stockholm ahmad.rostami@ericsson.com

Outline of Tutorial I Programmability in Telephony Networks" Introduction to Programmable Networks " Definition (What) & Why we need that" How can we evaluate different approaches " Approaches to PN (How): A Quick Retrospective Review" Active Networks" (G)MPLS" ForCES" ITC 26 Tutorial A. Rostami 2014-09-08 Page 2

Outline of Tutorial II Software Defined Networking (SDN)" Introduction & Basic Concept " SDN Realization Example: OpenFlow" SDN/OpenFlow Benefits and Issues" SDN Controllers" SDN Use-case Example: Network Virtualization" Programmability Beyond Current SDN/OpenFlow" ITC 26 Tutorial A. Rostami 2014-09-08 Page 3

Outline of Tutorial III Network Function Virtualization (NFV)" Relation to SDN " SDN and NFV in Action: Unifying Cloud & Carrier Networks " Pointers to Relevant Bodies" ITC 26 Tutorial A. Rostami 2014-09-08 Page 4

A quick look at the control in telephony networks OR How was programmability introduced into telephony networks more than 20 years ago? ITC 26 Tutorial A. Rostami 2014-09-08 Page 5

Signaling System No. 7 (SS7) SS7 Signaling Network STP STP SCP STP STP SSP SSP Voice Circuits Networks SSP ITC 26 Tutorial A. Rostami 2014-09-08 Page 6 SSP: Service Switching Point STP: Signal Transfer Point SCP: Service Control Point

Intelligent Networks (IN) I Value-Added! Telephony Services! Approach &! Shortcomings! Introduction of! IN! Introduction of " digital switches " in 80 s opened opportunities for offering new valueadded services: call forwarding, call waiting, " ITC 26 Tutorial A. Rostami 2014-09-08 Page 7 The main approach to new services was based on the " pre-programmed switches (SSPs)." Lack of Programmability of " Switches led to lengthy process of creating new Services. " " Decouple the service intelligence from the basic call control in a switch. " " " Push the service intelligence to (a few) centralized location inside the network. "

Intelligent Networks (IN) II SS7 Signaling Network STP STP STP STP SCP SS7 Signaling Network STP STP STP STP 2 SCP 1: Basic Call Handling 2: Service Intelligence SSP SSP 1&2 SSP Voice Circuits Networks SSP 1&2 1 SSP Voice Circuits Networks 1&2 1 SSP 1 Making the call control programmable enabled (facilitated) many interesting value-added services, e.g., 0800-xxx numbers. " ITC 26 Tutorial A. Rostami 2014-09-08 Page 8

Introduction to network programmability ITC 26 Tutorial A. Rostami 2014-09-08 Page 9

Classical Internet Architecture Internet: an interconnection of comm. nodes each monolithically realizing forwarding & control based on a layered architecture!! Network Management System Forwarding & Control IP Router IP Router IP Router Server Application Processing (L4+) ITC 26 Tutorial A. Rostami 2014-09-08 Page 10 L1-L3 Processing (Forwarding) " End host

Internet Architecture Simplicity Simplicity as a key driving force of the Internet success" Network provides communication between nodes as the best effort service " Keep the network as simple as possible, push the (service) intelligence to the edge " " BUT, advanced services need more support from the network à Several patches and fixes (look at IETF) " " Is the Internet architecture still simple? " ITC 26 Tutorial A. Rostami 2014-09-08 Page 11

Issues with the internet architecture I Complexity of Network Control and Management! Layered architecture: blessing and cursing! Redundant & contradicting functions at different layers! Complexity of Changing Network Control! Introducing new protocols/protocol stacks is hard! Consider how an operator can apply a customized routing mechanism!! ITC 26 Tutorial A. Rostami 2014-09-08 Page 12

Issues with the internet architecture II Complexity of Creating New Services! " Mapping service requirements to vertically integrated devices is difficult! Applications may need cross-layer interactions! Applications may need L4+ in-network processing! Workarounds using inefficient overlays or middle-boxes! Need for more flexibility/adaptation in the network! à Programmable Networks! ITC 26 Tutorial A. Rostami 2014-09-08 Page 13

What is network programmability? The ability to dynamically introduce a new architecture, protocols and services on top of a networking infrastructure (without requiring manual configurations) " " Examples of programmability: " Customize treatments for a group of packets " Assign new semantics to pieces of packets headers " Network Programmability has been a hot topic for research for the last 20+ years, influenced a lot by computing technology " ITC 26 Tutorial A. Rostami 2014-09-08 Page 14

Network Programmability: How? (I) Restructure the main blocks/functions" Where to place the control intelligence?" Balance between basic forwarding and In-network processing" Control Forwarding In-network Processing ITC 26 Tutorial A. Rostami 2014-09-08 Page 15

Network Programmability: How? (II) Design (standard) interfaces between the architectural components" Select the components that should be open to programming" Programming Interfaces" Programming levels" Who should take control?" Important factors: Flexibility, Scalability, Security, Openness, Cost" " ITC 26 Tutorial A. Rostami 2014-09-08 Page 16

Approaches to network Programmability Active Networks! (G)MPLS *! ForCES! SDN! Initiated by academia in mid 90s Not deployed in production networks Initiated mainly By vendors in late 90s Standardization going on in IETF since early 2000s Deployed in production networks Initiated mainly by vendors in early 2000s Standardization going on in IETF since mid 2000s Not deployed in production networks Initiated mainly by academia in late 2000s Standardization going on in ONF since early 2010s Partially Deployed in production networks *(G)MPLS is not designed explicitly as an approach to programmable networks. But, it applies principles which are fundamental to network programmability. " ITC 26 Tutorial A. Rostami 2014-09-08 Page 17

Evaluation framework What part is programmed?" Forwarding plane, Control plane, " What is the level of programmability?" Packet, Flow, Class " Who takes the control over programmability?" Network Operator, Service Provider, End User" Methodology: How is the network programmed?" Separation of control and forwarding plane" Logical vs. physical separation & centralized vs. distributed control" Availability and extent of In-network Processing " ITC 26 Tutorial A. Rostami 2014-09-08 Page 18

Active Networks ITC 26 Tutorial A. Rostami 2014-09-08 Page 19

Active Networks Background Research on Active Networks began in early 90 s and supported by several projects" Research on Active Networks was motivated by the widespread use of the Internet (applications) & complexity in testing new ideas in real networks" To a high extent influenced by the approach in the computing (PC) industry" " Active Networks requires drastic changes to the existing networking nodes & architecture" ITC 26 Tutorial A. Rostami 2014-09-08 Page 20

Active Networks Principles Replace ad-hoc intelligence in network devices with generic execution environments (EE)! Expose an interface (e.g. instruction set) to the EE: used to realize a variety of service-specific packet processing! Programming EE EE... EE OS Router Hardware ITC 26 Tutorial A. Rostami 2014-09-08 Page 21 Packet Ports

programming the Processing Service providers &/Or end users (applications) directly program network nodes via access to EE to realize desired functionality" Customized processing on packets: traffic actively select how it is treated/processed" " Programming Approaches:! Integrated: codes are carried together with data packets " IP Header Code Data Discrete: Code is first loaded into nodes through out-of-band (management) interface and then data packets are injected." ITC 26 Tutorial A. Rostami 2014-09-08 Page 22

Active networks summary i Aggressive approach with the highest level of flexibility" Programmability directly at the data plane " Challenging resource management" Balance between processing and forwarding in nodes" Complexity" Network operator concerns (e.g., inconsistent applications/codes, security) " Lack of a killer application at the time " " ITC 26 Tutorial A. Rostami 2014-09-08 Page 23

Active networks summary ii Who Programs the network?" End user, service provider! What is programmed? " Network elements, both control and forwarding! Level of programmability" Packets! Methodology" No clear separation of control & forwarding! Low-level interface to network elements! In-network Processing " In every node Active Networks contributed to the evolution of programmable networks, but as an approach it was not successful. ITC 26 Tutorial A. Rostami 2014-09-08 Page 24

(Generalized) Multi-Protocol Label Switching (GMPLS) ITC 26 Tutorial A. Rostami 2014-09-08 Page 25

(G)MPLS background Motivation for MPLS introduced in early 2000" Concerns about scalability of IP packet processing in the backbone" Need to attach some notion of connection to traffic" Need for more control over the traffic routing & for traffic engineering " Started for packet networks and extended to other switching technologies like TDM and optical circuits à GMPLS" " A different approach than active networks" Limited flexibility in packet processing" ITC 26 Tutorial A. Rostami 2014-09-08 Page 26

(G)MPLS Principles (Logical) separation of control & forwarding planes" Simplify the forwarding plane (in comparison to IP)" Push the intelligence/processing from core to edge of networks " " Partition the entire set of possible packets into a set of Forwarding Equivalence Classes (FECs)" Select a path for each FECà Labeled Switched Path (LSP)" At edge of network: process packets and assign them to FECs and label them " In core: forward packets only based on their FEC & associated LSPs" ITC 26 Tutorial A. Rostami 2014-09-08 Page 27

Traffic Engineering in (G)MPLS Networks Partitioning traffic space into FECs (and LSPs) facilitate more flexible routing and resource allocation in the network " à constraint-based path selection " (Logically) Centralized Path Computation Element (PCE)" " PCE PCEP LSR LSR LSP 1 LSR ITC 26 Tutorial A. Rostami 2014-09-08 Page 28 LSR LSP 2

(G)MPLS Summary I Separation of control and forwarding " A step forward towards flexible network control " Centralized PCE " Programmability limited to constraint-based path computation and " No customized control beyond routing " No in-network processing" ITC 26 Tutorial A. Rostami 2014-09-08 Page 29

(G)MPLS Summary II Who Programs the Network?" Network Operator" What is programmed? " Forwarding treatment, path selection! Level of programmability" Traffic classes! Methodology" Logical separation of control & forwarding! In-network Processing " Not available ITC 26 Tutorial A. Rostami 2014-09-08 Page 30

Forwarding & Control Element Separation (ForCES) ITC 26 Tutorial A. Rostami 2014-09-08 Page 31

Forces background Motivations for ForCES introduced in early 2000" Separating Control & Forwarding in network elements" Powerful Network Processing Units (NPUs) allowing realization of customized functions in data plane " Need for a modular functional architecture describing components in data and control planes" Need to specify (& standardize) the interface between components of the functional architecture" A Modular architecture supporting network programmability " A great support for in-network processing" Object-oriented programming concept applied to the nodes components management" ITC 26 Tutorial A. Rostami 2014-09-08 Page 32

FORCES Principles (Logical) separation of control & forwarding planes" Modular (& dynamic) interconnection of architectural elements" " ForCES protocol Network Element (NE) Control Plane CE1 CEn CE Manager Router Fwding Plane FE1 FEm FE Manager Multiple instances of control elements (CE) & forwarding elements (FE) in an NE à interconnected over variety of technologies " ITC 26 Tutorial A. Rostami 2014-09-08 Page 33

Programmability with forces CE1" FE" ForCES Protocol Endpoint" LFB1" component" LFB2" component" Forwarding model is based on an abstraction of logical functional blocks (LFB)" Each LFB defines a single action on passing packets" FE is composed of multiple LFBs interconnected in a directed graph" A CE can dynamically create, instantiate, update or delete LFBs within a FE from LFB library" ITC 26 Tutorial A. Rostami 2014-09-08 Page 34

Service composition with forces LFB2" LFB1" classifier component" LFB3" component" LFB4" component" The outcome of a LFB processing determines how a packet will be processed in downstream LFBs " ITC 26 Tutorial A. Rostami 2014-09-08 Page 35 à Flow/Class-based Programming"

Forces summary i Standard interface between control and forwarding " Independent evolution of the two components" More flexibility & generality than MPLS " MPLS functions can be implemented in ForCES" Supports a gradual deployment of ForCES nodes" Transparent interconnection to conventional nodes" Support for in-network processing" No programming interface to control plane " ITC 26 Tutorial A. Rostami 2014-09-08 Page 36

FORCES Summary II Who Programs the Network?" Network operator! What is programmed? " Forwarding & control! Level of programmability" Class/Flow! Methodology" Logical separation of control & forwarding! Modular functional architecture! Standard interface between modules! In-network processing " Possible at every node ITC 26 Tutorial A. Rostami 2014-09-08 Page 37

Software Defined Networking (SDN) ITC 26 Tutorial A. Rostami 2014-09-08 Page 38

SDN background Motivations for SDN introduced in late 2000" Separating control and forwarding (!) " No success with previous attempts to programmable networks" The need for (large scale) experimental networking platforms " SDN borrows several concepts from previous approaches to programmable networks & computing, e.g., " " Separation of control from forwarding " High level programming interfaces" ITC 26 Tutorial A. Rostami 2014-09-08 Page 39

SDN Principles Physical separation of control & forwarding" Specify an (open standard) interface between control and forwarding" Delegate control to a logically centralized controller " Abstract the network resources from higher layer applications" ITC 26 Tutorial A. Rostami 2014-09-08 Page 40 Source of Fig.: ONF white paper on SDN

SDN ABSTRACTION LAYERS SDN makes use of abstraction layers to simplify the programmability" Forwarding abstraction" Design a Control-Forwarding interface & centralize the control logic " Control-plane abstractions" Hide details of network resources & state distribution from control applications" There are more than one way to do the abstractions " Abstractions can be designed to allow a recursive control architecture" " ITC 26 Tutorial A. Rostami 2014-09-08 Page 41

SDN architecture ONF VieW ITC 26 Tutorial A. Rostami 2014-09-08 Page 42 Source: ONF SDN Architecture, June 2014

benefits of SDN I Control plane can be directly programmed " Customized control logics" Rapid creation of new services " " Simplified programming of new applications" Programming on an abstract view of network " State distribution carried by the controller (Network OS)" Enabling more efficient control applications " Controller provides a global view of resources " ITC 26 Tutorial A. Rostami 2014-09-08 Page 43

benefits of SDN II Vendor independent network control " Using a standard API between forwarding & control " " Simplified forwarding elements " Support only a generic API instead of many protocols" Data & control planes can evolve independently " " Higher rates of innovations " More competitive market " ITC 26 Tutorial A. Rostami 2014-09-08 Page 44

SDN Realization Example: OpenFlow ITC 26 Tutorial A. Rostami 2014-09-08 Page 45

SDN Realization SDN is an architectural framework for programmability " A realization of SDN requires concrete:" " Data-plane abstraction & API " SDN Controller (Network OS)" Network abstraction and " Control API " ITC 26 Tutorial A. Rostami 2014-09-08 Page 46

OpenFlow A concrete realization of sdn OpenFlow is one of the initial works leading to SDN" Started in academia in late 2000" Initially focused on utilizing Ethernet-based campus networks as an experimental platform " OpenFlow specifies a forwarding plane abstraction together with an API to forwarding devices" " OpenFlow does not specify the network controller, nor does it specify a controller-application API" ITC 26 Tutorial A. Rostami 2014-09-08 Page 47

Forwarding abstraction OpenFlow started with abstracting data plane of the Ethernet switch" In OpenFlow a forwarding element is abstracted as a flow table applying the Match+Action principle " OpenFlow " Switch" Switch Firmware" Forwarding Engine " " OF Agent ITC 26 Tutorial A. Rostami 2014-09-08 Page 48 Flow Table ports" Secure Channel " SDN" Controller" OF Agent OpenFlow specifies an instruction set to manage the flow table from a remote controller "

Flow Table Match" Priority" Counters" Instructions Timeouts" Cookie" Match: A flow is flexibly defined as a group of packets sharing certain header values. Match + Priority à unique flow identifier" Ingress Port Ether Src Ether Dst Ether Type ITC 26 Tutorial A. Rostami 2014-09-08 Page 49 VLAN IP Src IP Dst IP Proto Instructions: modify actions set associated with a flow: sent to a port, modify a field, etc. " Counters: collect statistics " Timeout: specify validity of a flow entry in time " Cookie: used by controller for filtering groups of flows" L4 Src L4 Dst

Flow table: an example Ingress Port MAC Src MAC Dst Ether Type VLAN IP Src IP Dst IP Proto L4 Src L4 Dst Actions * * 00 * * * * * * * Port 2 3 * * * * * * * * 22 Drop 1 * * * * * 192. 168. 1.0/2 4 * * * Port 5 * * * * * * * * * * Send to Controller ITC 26 Tutorial A. Rostami 2014-09-08 Page 50

Data-path processing pipeline ➀ Find highest-priority matching flow entry ➁ Apply instructions: i. Modify packet & update match fields ii. Update action set iii. Update metadata ➂ Send meta data and action set to next table ITC 26 Tutorial A. Rostami 2014-09-08 Page 51 Source: OpenFlow Switch Specification (ONF)

Packet flow in switch Pkt In" start @ Table0" Yes Match in " Table n?" Yes Update counters" Execute Instructions" Goto-Table n?" No No Table miss" exist?" No Yes Execute Action " set" Drop Pkt" ITC 26 Tutorial A. Rostami 2014-09-08 Page 52 According to OpenFlow Switch Specification (ONF)

SDN/OpenFlow Benefits Flow-level programming: OpenFlow enables flexible definition of flows & assignment of individual forwarding treatment to them " Flat Control: OpenFlow collapses L1-L4 control into a single layer à multi-layer optimization" Traffic Statistics per flow, table, port, " OpenFlow provides a powerful tool for efficient control of enterprise networks" SDN/OpenFlow already applied to WANs & large datacenters" ITC 26 Tutorial A. Rostami 2014-09-08 Page 53

Sdn/OpenFlow issues/open problems I Programmability of data-path packet processing limited by OpenFlow API" No direct support for stateful processing in data-path " Protocol dependent nature of OF API " Matching fields extended from 12 in OF 1.0 to 41 in OF 1.4 " No network abstraction atop OF API " Developing control modules still require dealing with lowlevel flow API" ITC 26 Tutorial A. Rostami 2014-09-08 Page 54

Sdn/OpenFlow issues/open problems II Scalability " Controller processing, flow-table size, OF channel, " Interface among Controllers " SDN/OpenFlow targets single domain" Multi-domain networks, distributed control " Security concerns " ITC 26 Tutorial A. Rostami 2014-09-08 Page 55

SDN/OpenFlow summary Who Programs the Network: " Service provider" What is programmed? " (mainly) control plane" Level of programmability:" Traffic flow " Methodology: " decoupling control intelligence from datapath" Abstract forwarding based on match+action flow tables" An open interface between controller & forwarding" In-network processing: " Not supported directly" ITC 26 Tutorial A. Rostami 2014-09-08 Page 56

SDN Controller ITC 26 Tutorial A. Rostami 2014-09-08 Page 57

SDN Controller SDN Controller acts as a network operating system" Abstracting the network resources " " Providing a programmatic interface for developing network applications in SW " Configuring networking resources as a service to network applications (state distribution)" Ensuring consistent usage of resources among control Apps " Enabling virtualization of networking resources " ITC 26 Tutorial A. Rostami 2014-09-08 Page 58

SDN Controller platforms Several commercial and educational SDN controllers developed in recent years, primarily focusing on OpenFlow! OpenDayLight (ODL): An open source collaborative project started in 2013 to develop a common platform for SDN controller " ODL supports several control-dataplane interfaces " ODL project runs under the umbrella of Linux Foundation, with contribution from many companies: " Ericsson, IBM, Cisco, HP, Microsoft, Juniper, " First ODL implementation released Feb. 2014 with code name Hydrogen " ITC 26 Tutorial A. Rostami 2014-09-08 Page 59

OpenDaylight architecture ITC 26 Tutorial A. Rostami 2014-09-08 Page 60 Source: OpenDayLight Project (opendaylight.org)

Opendaylight sal SAL is the a major architectural component of ODL, differentiating it from conventional SDN controllers " " SAL abstracts services and capabilities of various dataplane elements towards higher functional layers of controller Major SAL Services: " DataPacket: dispatching data-packets towards higher layers for processing" Flowprogrammer: allows higher-layer modules to request data-plane programming at the flow level " Topology: allows to collect topology from different SBI plugins and to stich them in higher functional modules" Inventory: provides inventory data to applications, etc. " ITC 26 Tutorial A. Rostami 2014-09-08 Page 61

OpenDaylight SW architecture ODL is mainly programmed in JAVA " The Open Service Gateway initiative (OSGi) framework is used to support the modularity" SBI" SAL" NBI" Routing" Bundle" ITC 26 Tutorial A. Rostami 2014-09-08 Page 62 OSGi"

SDN Use-case Example: Network Virtualization ITC 26 Tutorial A. Rostami 2014-09-08 Page 63

Resource virtualization Virtualization: creation of (multiple) logical instances of a physical entity (element/resource/functionality)" " logical entities share the resources available in physical one" each logical entity can be controlled/managed independently" Server Virtualization is a common practice in IT industry: " à A hypervisor allows several OSes to share a single host machine. " ITC 26 Tutorial A. Rostami 2014-09-08 Page 64 OS1 OS2 Hypervisor Host Machine

Network virtualization VN1 VN2 Physical Network Resource Isolation between virtual networks & Independent Control Network Virtualization" Link Virtualization: slice/aggregate link capacity " Node Virtualization: slice/aggregate packet forwarding and processing resources within switches/routers" Several approaches to NV: e.g., network overlay, SDN " ITC 26 Tutorial A. Rostami 2014-09-08 Page 65

Network Virtualization with sdn Tenant 1 SDN Controller Tenant 2 SDN Controller Infrastructure SDN Controller Network Virtualization Infrastructure controller manages the slicing & ensures consistent resource usage between the tenants " Each tenant network has full control over its (virtual) network, e.g., for routing" Helpful in datacenter environment together with server virtualization " ITC 26 Tutorial A. Rostami 2014-09-08 Page 66

Programmability Beyond Current SDN/OpenFlow ITC 26 Tutorial A. Rostami 2014-09-08 Page 67

Programmability beyond current Sdn/OpenFlow SDN approaches investigated so far (e.g. OF) merely expose more control knobs for programming the network " The knobs functions are dictated by the fixed functionality of forwarding devices " What if we need to (dynamically) reprogram the functionality of forwarding devices?" E.g., to define new protocol stacks and associated packet parsing and processing" ITC 26 Tutorial A. Rostami 2014-09-08 Page 68

Protocol Independent packet Forwarding Protocol Independent Forwarding adds another dimension to the programmable networks. " (Re)configure the forwarding element à specify packet parsing & processing model " Control the forwarding operation (traffic dependent) " Application to SDN/OpenFlow" Configure the parsing & forwarding models in match +action tables " Populate the tables and control the traffic forwarding " ITC 26 Tutorial A. Rostami 2014-09-08 Page 69 Source of Fig.: P4 Programming Protocol-Independent Packet Processors, ACM CCR, July 2014

Network Function Virtualization (NFV) ITC 26 Tutorial A. Rostami 2014-09-08 Page 70

Network Function Virtualization I Today s network services are highly dependent on HW appliances " NF2 NF3 NF1 NF4 An end-to-end network service usually comprises several network functions (NFs) distributed over fixed locations " NF Examples: Firewall, Fixed and Mobile Gateways, AAA, DPI " " ITC 26 Tutorial A. Rostami 2014-09-08 Page 71

Network function virtualization II Virtualizing functions in SW & running them on commodity servers (e.g., in a cloud)" " " ITC 26 Tutorial A. Rostami 2014-09-08 Page 72 Source: ETSI NFV Architectural Framework, Oct. 2013

NFV Architecture (ETSI View) Virtualized Network Functions (VNF) NFV Infrastructure (NFVI) VNF VNF VNF Virtual Compute Virtual Storage Virtualization Layer Virtual Network Compute Storage Network Management & Orchestration (MANO) ITC 26 Tutorial A. Rostami 2014-09-08 Page 73

NFV Benefits Efficient resource utilization " Agile creation of new networking services " " Decoupling the evolution of network functions (services) from underlying platforms" Reduced Cost (CapEX & OpEX)" " " ITC 26 Tutorial A. Rostami 2014-09-08 Page 74

SDN vs. NFV SDN à flexible forwarding & steering of traffic in a physical or virtual network environment" NFV à flexible placement of virtualized network functions across the network & cloud " SDN & NFV are complementary tools for achieving full network programmability" VNF NFV SDN VNF VNF " ITC 26 Tutorial A. Rostami 2014-09-08 Page 75

Flexibility with SDN & NFV NFV Flexibility in Processing Decouple functionality from location ITC 26 Tutorial A. Rostami 2014-09-08 Page 76 Decouple Control from forwarding Flexibility in Forwarding SDN

SDN & NFV in Action: Unifying the Programmability of Cloud and Carrier Infrastructure ITC 26 Tutorial A. Rostami 2014-09-08 Page 77

UNIFY Consortium 2013 November - 2016 April Major Service Providers: " Major Vendors:! SMEs: Research Institutes: " Universities:! ITC 26 Tutorial A. Rostami 2014-09-08 Page 78 Project Management:" Source: http://fp7-unify.eu/

UNIFY requirements Today, rigid network control limits the flexibility of service creation" Operators" Agility/Velocity" Flexibility/Granularity" Simplicity/Automation" Scalability" Lower OPEX" Integration/Shareconomy" Users Rich services," Quality of experience," Rapid provisioning of elastic services," On-demand SLA configuration & monitoring," Follow-me services" ITC 26 Tutorial A. Rostami 2014-09-08 Page 79

Unified Production Environment Independent Service environments" Service specific control and data blocks only" Network & Compute Infrastructure" Common (Control of) Infrastructure Substrate" Unified Production Environment with dynamic service creation platform, leveraging a fine-granular service chaining architecture." ITC 26 Tutorial A. Rostami 2014-09-08 Page 80

UNIFY Focus Seamless integration of Cloud and Network Invocation of Dynamic Service Chains (Programmability) UNIFY Control Plane" Joint orchestration in Network & Cloud (Abstractions) UNIFY Control Plane" Data performance optimized infrastructure virtualization (x86 based architecture) UNIFY Universal Node" ITC 26 Tutorial A. Rostami 2014-09-08 Page 81 Business customer" Service Infrastructure Residential Provider" Provider" customer" Orchestration & Management Network Device NF1 Network Service / Application NF2 Service Graph VNF 3 Carrier Network Server Cluster VNF 4 Data Center VNF 4

UNIFY Layered Architecture UNIFY Control Plane! Services decomposition and abstraction" Orchestration for Network Function Forwarding Graphs (NF-FG)" Combined Compute, Storage & Network abstraction over all resources" forwarding elements," compute host capabilities," hardware based network function capabilities," data plane links" ITC 26 Tutorial A. Rostami 2014-09-08 Page 82

UNIFY Slicing the elephant Separation of problems Service Layer Orchestration Layer Infrastructure Layer Us-Sl Adaptation Functions Sl-Or Resource Orchestration (RO) Or-Ca Controller Adaptation (CA) Ca-Co Controllers (Compute, Storage, Network) Co-Rm Local Resource Managers (Compute, Storage, Network) User understandable information" Virtualization (!)" Service Graph" Decomposition into smaller components / network functions" Key Performance Indicators " Adaptation to individual controller understandable information for configuration, monitoring, trouble-shooting, etc." ITC 26 Tutorial A. Rostami 2014-09-08 Page 83

UNIFY Abstraction an example 2 3 Service Graph" Abstract Network Function 4 1 5 Forwarding Graph! Abstract Resource Mapping" Physical Infrastructure" Compute, Storage, Network and Topology" Instantiated Service Graph! ITC 26 Tutorial A. Rostami 2014-09-08 Page 84

UNIFY Example for realization ITC 26 Tutorial A. Rostami 2014-09-08 Page 85

UNIFY Implementation Option legacy optical transport ITC 26 Tutorial A. Rostami 2014-09-08 Page 86

UNIFY vs. NFV and SDN Industry Enablers for Network Function Virtualization" UNIFY s View on Orchestration" DevOp Services: Troubleshooting Verification Monitoring" Core Functions: Orchestration & Control for Network & DC" Universal Node" is defined" Data Centers added to the resource view" ITC 26 Tutorial A. Rostami 2014-09-08 Page 87 source: ONF Solution Brief February 17, 2014

Links to relevant Bodies Open Networking Foundation (ONF)" www.opennetworking.org" ETSI NFV Initiative" http://www.etsi.org/technologies-clusters/technologies/nfv" OpenDayLight Project" http://www.opendaylight.org" IETF ForCES WG" http://tools.ietf.org/wg/forces" IETF Service Function Chaining WG " https://datatracker.ietf.org/wg/sfc/charter" IRTF SDN Research Group" https://irtf.org/sdnrg" SDN in IEEE " http://sdn.ieee.org" ITC 26 Tutorial A. Rostami 2014-09-08 Page 88