software defined networks for service providers: a practical … · northbound api (rest,...

68
© 2011 Cisco and/or its affiliates. All rights reserved. Cisco Connect 1 1 © 2012 Cisco and/or its affiliates. All rights reserved. Toronto, Canada May 30, 2013 Software Defined Networks for Service Providers: A Practical Approach Matt Gillies Customer Solutions Architect

Upload: others

Post on 22-May-2020

11 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Software Defined Networks for Service Providers: A Practical … · Northbound API (REST, WebSockets, OSGi) Controller built-in Applications t-t Apps/Applications Network Troubleshooting

© 2011 Cisco and/or its affiliates. All rights reserved. Cisco Connect 1 1 © 2012 Cisco and/or its affiliates. All rights reserved.

Toronto, Canada

May 30, 2013

Software Defined Networks for Service Providers: A Practical Approach

Matt Gillies

Customer Solutions Architect

Page 2: Software Defined Networks for Service Providers: A Practical … · Northbound API (REST, WebSockets, OSGi) Controller built-in Applications t-t Apps/Applications Network Troubleshooting

© 2012 Cisco and/or its affiliates. All rights reserved. Cisco Connect 2

Agenda

2

• SDN Technology and Benefits

• Controllers and Agents

• SDN WAN Controller applicability and

protocols

• Programmability

• SP SDN Use Cases

• Summary

Page 3: Software Defined Networks for Service Providers: A Practical … · Northbound API (REST, WebSockets, OSGi) Controller built-in Applications t-t Apps/Applications Network Troubleshooting

© 2012 Cisco and/or its affiliates. All rights reserved. Cisco Connect 3

In the SDN paradigm, not all

processing happens inside the

same device

What SDN used to mean:

Page 4: Software Defined Networks for Service Providers: A Practical … · Northbound API (REST, WebSockets, OSGi) Controller built-in Applications t-t Apps/Applications Network Troubleshooting

© 2012 Cisco and/or its affiliates. All rights reserved. Cisco Connect 4

A New Map for Network Strategy

SD

N

OpenFlow

Openstack

APIs Virtu

aliz

ation

abstraction HYPERVISOR

Datacenters

Network OS

X86

AUTOMATION

Source: Heavy Reading-Where Networks meet IT

I2RS

Page 5: Software Defined Networks for Service Providers: A Practical … · Northbound API (REST, WebSockets, OSGi) Controller built-in Applications t-t Apps/Applications Network Troubleshooting

© 2012 Cisco and/or its affiliates. All rights reserved. Cisco Connect 5

Evolution of the Intelligent Network Business Objectives

• Service Velocity and Creation

Enable NetOps to move as fast as SysAdmins and DevOps

• Significant cost reduction in Network operations

• Offer network functions as a service

• Increased set of service and features for customers

• Faster development and delivery cycles

Page 6: Software Defined Networks for Service Providers: A Practical … · Northbound API (REST, WebSockets, OSGi) Controller built-in Applications t-t Apps/Applications Network Troubleshooting

© 2012 Cisco and/or its affiliates. All rights reserved. Cisco Connect 6

Towards A New Area In Networking Make everything go faster, easier and be more agile

Managed Networks

Network Interfaces

Apps-aware Networks

Configurable Networks Orchestrated Networks

Networks-aware Apps

Programmatic Interfaces

Automated Networks

Full-Duplex APIs across

Layers

Evolved Network

Architecture

Foundational Building Blocks

Page 7: Software Defined Networks for Service Providers: A Practical … · Northbound API (REST, WebSockets, OSGi) Controller built-in Applications t-t Apps/Applications Network Troubleshooting

© 2012 Cisco and/or its affiliates. All rights reserved. Cisco Connect 7

Classes of “Evolved Network Software” Use-Cases Varying Degrees of Service Customization

Customer

Differentiation

Degree of

Customization

Automated Device Configuration

Automated Tenant Network Configuration

Automated Tenant Network & Service Configuration

Network-wide Policy Configuration

Customized Forwarding

Customized Traffic Processing

Network Function Virtualization

Orchestration and Automation:

Service Templates

High-degree of

customization

Application Centric Intelligent Networking

Page 8: Software Defined Networks for Service Providers: A Practical … · Northbound API (REST, WebSockets, OSGi) Controller built-in Applications t-t Apps/Applications Network Troubleshooting

© 2012 Cisco and/or its affiliates. All rights reserved. Cisco Connect 8

Open Network Environment Interaction between all components of service creation

Program for

Optimized

Experience

Harvest

Network

Intelligence

Services Orchestration

Policy & Intent

Programmability

Applications

Analytics

Network

Network Intelligence,

Guidance

Stats, State & Events

Page 9: Software Defined Networks for Service Providers: A Practical … · Northbound API (REST, WebSockets, OSGi) Controller built-in Applications t-t Apps/Applications Network Troubleshooting

© 2012 Cisco and/or its affiliates. All rights reserved. Cisco Connect 9

But first, some definitions…

Controller-based Networking

Overlays Networking virtualization solution that automates the provisioning of L2-L7 network services

NFV Virtualization of network elements and services

Programmability API for controllers, network elements and orchestration solutions

Cisco Open Network Environment

Centralization of network services on an entity that has an ability to interact with network state

Openstack Opensource software for building public and private Clouds; includes Compute (Nova), Networking

(Quantum) and Storage (Swift) services.

Page 10: Software Defined Networks for Service Providers: A Practical … · Northbound API (REST, WebSockets, OSGi) Controller built-in Applications t-t Apps/Applications Network Troubleshooting

© 2012 Cisco and/or its affiliates. All rights reserved. Cisco Connect 10

Network Programmability – Multiple Layers Full-Duplex access to the network at multiple layers and networking planes

• Enable a holistic Network Programming model

• Leverage and extend infrastructure at pace of the business

• Deploy common applications across all devices

• Extend/upgrade/add features without upgrading the network operating system

• Reduced time to market by leveraging common platform for building services

10

Transport/Device/ASICs

Network Service

Management

Orchestration

Applications/Development Application development

frameworks, e.g. Spring,…

Programmatic network

automation,,..

Automated, policy directed service and cloud management, e.g. OpenStack, …

Network wide service access: Optimized paths (PCE), Topology & service selection (NPS/ALTO)

Device configuration, state monitoring, logging, debugging

Harvest Network

Intelligence

Program for Optimized Experience

Forwarding

Control Common control abstractions: Security, Policy, Routing, ..

Common forwarding abstractions: Data-Path access, Flow-Forwarding, Tunneling, ..

“Strict SDN”

Page 11: Software Defined Networks for Service Providers: A Practical … · Northbound API (REST, WebSockets, OSGi) Controller built-in Applications t-t Apps/Applications Network Troubleshooting

© 2012 Cisco and/or its affiliates. All rights reserved. Cisco Connect 11

Industry Standards

Technical Advisory

Group Chair,

Working Groups:

Config, Hybrid,

Extensibility,

Futures/FPMOD/OF2.0

802.1 Overlay Networking Projects,

Cisco Innovations:

FEX Architecture

Overlay Working Groups:

NVO3, L2VPN, TRILL, L3VPN, LISP, PWE3

API Working Groups:

NETCONF, ALTO, CDNI, XMPP, SDNP, I2AEX

Controller Working Groups:

PCE, FORCES

Open Source Cloud

Computing project

Open Network Research

Center at Stanford

University

Working Groups: Quantum

API

Donabe

Cisco Innovations:

OpenStack API for Nexus

OpenStack Extensions

Page 12: Software Defined Networks for Service Providers: A Practical … · Northbound API (REST, WebSockets, OSGi) Controller built-in Applications t-t Apps/Applications Network Troubleshooting

© 2012 Cisco and/or its affiliates. All rights reserved. Cisco Connect 12

Cisco Open Network Environment

SDN

Open APIs

Open Cloud

Virtualization

Multi-Layer APIs

Virtual

Overlays

Controller

& Agents

Bi-Directional Interaction

Orchestration

Automation

Real-Time Analytics

+

Bringing the Network to the Applications World

Page 13: Software Defined Networks for Service Providers: A Practical … · Northbound API (REST, WebSockets, OSGi) Controller built-in Applications t-t Apps/Applications Network Troubleshooting

© 2012 Cisco and/or its affiliates. All rights reserved. Cisco Connect 13

Controllers and Agents

Page 14: Software Defined Networks for Service Providers: A Practical … · Northbound API (REST, WebSockets, OSGi) Controller built-in Applications t-t Apps/Applications Network Troubleshooting

© 2012 Cisco and/or its affiliates. All rights reserved. Cisco Connect 14

What is a “Controller”? • Platform for generic

control functions

Base infrastructure

Specific Service Functions/Application

• Centralized entity on the network, can be made redundant

• May be deployed for specific services, and in particular domains

• Provides an API “Northbound” to applications

• Provides protocols/interfaces “Southbound” to the network

Cisco Confidential

Network Elements

Controller selects appropriate Transport Protocol based on Device Capability Negotiation

Abstraction Layer

IRS onePK PCEP OpenFlow

API

Applications

… OpenFlow OnePK I2RS PCEP

Page 15: Software Defined Networks for Service Providers: A Practical … · Northbound API (REST, WebSockets, OSGi) Controller built-in Applications t-t Apps/Applications Network Troubleshooting

IGP Convergence approaches

Fully Centralized Control

CT = time to: detect failure + signal to controller + calculate new path + disseminate + update FIBs

Major failure multiple devices will be doing this at the same time

Impulse load on controller and paths to controller, difficulty correlating of events, failure in paths to controllers

Distributed – Network Convergence

RIB

FIB FIB FIB

CPU

CPU CPU CPU

IGP server

Clear benefits for Distributed Control Plane

Page 16: Software Defined Networks for Service Providers: A Practical … · Northbound API (REST, WebSockets, OSGi) Controller built-in Applications t-t Apps/Applications Network Troubleshooting

Network Optimization approaches

Centralized - PCE TE Path placement

Global topology view

Global TE requirements

Predictable tunnel placement

Network wide optimized tunnel placement

Distributed – Head End TE Path Calculation

Global topology view

Local TE requirements

Unpredictable TE tunnel placement

Overall n/w sub-optimal tunnel placement

“centralized optimisation enables ~30% more traffic to be supported for the same installed capacity”

SDN WAN CONTROLLER

Clear benefits for Centralized Control Plane

Page 17: Software Defined Networks for Service Providers: A Practical … · Northbound API (REST, WebSockets, OSGi) Controller built-in Applications t-t Apps/Applications Network Troubleshooting

© 2012 Cisco and/or its affiliates. All rights reserved. Cisco Connect 17

Towards an Open Network Environment for SDN Implementation Perspective: Evolve the Control- and Management Plane Architecture

• Enable modularization and componentization of network management-, control- and data-plane functions, with associated open interfaces. This allows for optimized placement of these components (network devices, dedicated servers, application servers) and close interlock between applications and network functions.

• Anticipated benefits include: Closely align the control plane with the needs of applications, enable componentization with associated APIs, improve performance and robustness, enhance and automate manageability, operations and improve consistency

Distributed Control Plane

Evolved Control Plane Architecture (Examples)

Control/Network/Services-plane component(s) Data-plane component(s) Applications

Centralized Control

Adding Intelligence

Traditional Control Plane Architecture

Page 18: Software Defined Networks for Service Providers: A Practical … · Northbound API (REST, WebSockets, OSGi) Controller built-in Applications t-t Apps/Applications Network Troubleshooting

Cisco XNC Controller

Platform for generic control functions – state consolidation across multiple entities

Use case Examples

– Flexible Network Partitioning and Provisioning (“Slicing”)

– Network “Tapping”

– Custom Routing

Java-based OF

Agent

onePK onePK onePK

OF Agent

onePK

OF-device OF-device

OpenFlow 1.x Protocol onePK API ...

Forwarding Rules Manager

Layer 3 Interface Manager

Host Tracker Device Manager

Dijkstra SPF Topology Manager (physical, virtual)

ARP Manager

Network Slicing Manager

Applications (Cisco) Applications (Customer) Applications (3rd party)

Northbound API (REST, WebSockets, OSGi)

Controller built-in Applications

Bu

ilt-in G

UI

for

Ma

na

ge

ment

Apps/Applications

Network Troubleshooting Manager

Controller Core Infrastructure

Southbound APIs (onePK, OneFlow, …)

Custom Routing

Page 19: Software Defined Networks for Service Providers: A Practical … · Northbound API (REST, WebSockets, OSGi) Controller built-in Applications t-t Apps/Applications Network Troubleshooting

© 2012 Cisco and/or its affiliates. All rights reserved. Cisco Connect 19

What about Open Daylight (ODL)?

• Industry effort to develop and deliver an open source controller

Foster industry and 3rd party SDN app development and value-add

• Generic in function with Openflow being only SDN protocol supported

• Additional function introduced via “plug-ins”

• http://www.opendaylight.org

19

Page 20: Software Defined Networks for Service Providers: A Practical … · Northbound API (REST, WebSockets, OSGi) Controller built-in Applications t-t Apps/Applications Network Troubleshooting

© 2012 Cisco and/or its affiliates. All rights reserved. Cisco Connect 20

Application Frameworks, Management Systems, Controllers, ...

Programmatic Network Access Agents as Flexible Integration Vehicles

Device

Forwarding

Control

Network Services

Orchestration

Management

PCEP Ouantum OpenFlow Puppet Netconf OMI I2RS … onePK

OpenFlow

I2RS

PCEP

Ouantum

OMI Puppet Netconf …

IOS / XE NX-OS IOS-XR

onePK API & Agent Infrastructure

Agent

Agent

Agent

Agent

Agent Agent Agent

Page 21: Software Defined Networks for Service Providers: A Practical … · Northbound API (REST, WebSockets, OSGi) Controller built-in Applications t-t Apps/Applications Network Troubleshooting

© 2012 Cisco and/or its affiliates. All rights reserved. Cisco Connect 21

SDN WAN Controller and protocols

Page 22: Software Defined Networks for Service Providers: A Practical … · Northbound API (REST, WebSockets, OSGi) Controller built-in Applications t-t Apps/Applications Network Troubleshooting

© 2012 Cisco and/or its affiliates. All rights reserved. Cisco Connect 22

Why do we need a WAN controller?

Optimization

• Global & tactical policies

• Demand Admission

• Multi-layer coordination

• Improvement over sub-optimal head-end operations

Service Enablement

• Bandwidth Calendaring

• Customer Portal

• Cross Domain Service Orchestration

Automation

• Programmable Explicit Path Creation and Policy Routing

• “Closed Loop” enabled

Applications

• Java/Rest APIs

• Uniform data models

• Programmatic Interfaces to Network and Elements

SDN WAN Controller

22

Page 23: Software Defined Networks for Service Providers: A Practical … · Northbound API (REST, WebSockets, OSGi) Controller built-in Applications t-t Apps/Applications Network Troubleshooting

© 2012 Cisco and/or its affiliates. All rights reserved. Cisco Connect 23

SDN WAN Navigation Map: Collection Protocols

Data Collector Programming

Network Model

Computation

Engine

Interfaces Desktop NB API

Apps

23

Page 24: Software Defined Networks for Service Providers: A Practical … · Northbound API (REST, WebSockets, OSGi) Controller built-in Applications t-t Apps/Applications Network Troubleshooting

© 2012 Cisco and/or its affiliates. All rights reserved. Cisco Connect 24

Data Collection

• Objective is to gather up information about the topology, traffic matrix, network element configuration, resource %, LSP reports, etc. … from the network and place it in a network model (database) accessible to the SDN WAN Platform and other consumers (applications)

Across multiple areas/domains/layers

• Traditional methods such as Netflow, SNMP, CLI parsing, etc.:

are and will continue to be used

Offer a periodic updates at the expense of network overhead (i.e. polling)

May not be flexible (i.e. device specific MIBs)

• Must augment with more up-to-date (i.e. realtime) information about the state of the network

• Additional collection capabilities such as I2RS, BMP, RCMD, IGP being developed

24

Page 25: Software Defined Networks for Service Providers: A Practical … · Northbound API (REST, WebSockets, OSGi) Controller built-in Applications t-t Apps/Applications Network Troubleshooting

© 2012 Cisco and/or its affiliates. All rights reserved. Cisco Connect 25

Data Collection – Link State Database (LSDB)

• Routers running a link-state IGP (i.e. OSPF, IS-IS) maintain a link-state database

Contains node and link identifiers, attributes, etc.

Flooded to all routers within an area

Forms the basis for a PCE TED for reference during path computations

• Seem straightforward to run an IGP Adjacency (Listener) on the SDN WAN platform

25

Page 26: Software Defined Networks for Service Providers: A Practical … · Northbound API (REST, WebSockets, OSGi) Controller built-in Applications t-t Apps/Applications Network Troubleshooting

© 2012 Cisco and/or its affiliates. All rights reserved. Cisco Connect 26

Data Collection – IGP Listener Challenges

• Operators typically do not like to expose their IGP to external entities

• O(# of domains) cost and complexity

• Raw LSDB feed – no way to abstract or control what is released outside of the domain

26

Page 27: Software Defined Networks for Service Providers: A Practical … · Northbound API (REST, WebSockets, OSGi) Controller built-in Applications t-t Apps/Applications Network Troubleshooting

© 2012 Cisco and/or its affiliates. All rights reserved. Cisco Connect 27

Use BGP to Push LSDB to WAN controller • BGP Link-State (BGP-LS)

• Redistribute IGP LSDB into per- domain BGP speaker

• Advantages

Single upstream topology feed (BGP)

IGP isolated from external entities

Leverage well-known BGP security, transport and policy knobs

Enables operator control

• draft-ietf-idr-ls-distribution

27

Page 28: Software Defined Networks for Service Providers: A Practical … · Northbound API (REST, WebSockets, OSGi) Controller built-in Applications t-t Apps/Applications Network Troubleshooting

© 2012 Cisco and/or its affiliates. All rights reserved. Cisco Connect 28

BGP-LS (1)

• Redistribution takes the IGP LSDB as the input but…

• Redistribution is NOT limited to the contents of an LSDB

Ability to extend/enrich topology data

Ability to aggregate/hide/abstract topology data

• Allows over-the-top topology export

No need to access IGPs from external topology consumers (e.g. SDN WAN Platform)

• BGP policy mechanisms can be used to control the redistribution and advertisement of topology data

28

Page 29: Software Defined Networks for Service Providers: A Practical … · Northbound API (REST, WebSockets, OSGi) Controller built-in Applications t-t Apps/Applications Network Troubleshooting

© 2012 Cisco and/or its affiliates. All rights reserved. Cisco Connect 29

BGP-LS (2) IGP Extensions

• Extensions to ISIS/OSPF allow the advertisement of new TLVs for

Link delay, Delay variation, Packet loss, Residual bandwidth, Available bandwidth

draft-ietf-ospf-te-metric-extensions

draft-previdi-isis-te-metric-extensions

• Allows IGP LSDB to contain resource utilization/availability from a “real” use perspective (vs. static configuration)

In turn this “real” use view is reported to upstream entities via BGP-LS

• BGP-LS is agnostic regarding IGP LSDB data

Transparently advertise IGP TLVs

Extensions to IGPs are de facto integrated into BGP-LS

29

Page 30: Software Defined Networks for Service Providers: A Practical … · Northbound API (REST, WebSockets, OSGi) Controller built-in Applications t-t Apps/Applications Network Troubleshooting

© 2012 Cisco and/or its affiliates. All rights reserved. Cisco Connect 30

BGP-LS Big Picture So Far

• Offers uniform method for exporting LSDB to upstream applications

With policy, security and reliability

• However, complete view of topology and infrastructure state not possible with BGP-LS alone

Still need LSP state

Unused, but available resources or inventory (e.g. interfaces, line cards, nodes, etc.)

• More on this later

30

Page 31: Software Defined Networks for Service Providers: A Practical … · Northbound API (REST, WebSockets, OSGi) Controller built-in Applications t-t Apps/Applications Network Troubleshooting

© 2012 Cisco and/or its affiliates. All rights reserved. Cisco Connect 31

Context

• Now we will look at protocols used to program network elements

• Note: possible that these same protocols can report events and state up to the SDN WAN platform

Optical

IPv4/IPv6/MPLS

Collector Programming

Network

Model

Computation

Engine

NB APIs

31

SDN WAN Navigation Map: Programming Protocols

Page 32: Software Defined Networks for Service Providers: A Practical … · Northbound API (REST, WebSockets, OSGi) Controller built-in Applications t-t Apps/Applications Network Troubleshooting

© 2012 Cisco and/or its affiliates. All rights reserved. Cisco Connect 32

Network Programming – PCE (Path Computation Element) basics

32

• Centralized Computation Model for MPLS (2006)

Computes Paths

Originally for Inter-AS TE (explicit paths)

• RFC5440 defined PCEP (2009)

PCC-PCE; PCE-PCE communications

• PCE Server (PCS)

• Path Computation Client (PCC)

Agent on router(s) that interact with PCE Server

• PCE Protocol (PCEP)

Protocol that runs between PCC on router and PCE server

• Traffic Engineering Database (TED)

Contains topology and resource information (LSDB etc.)

Page 33: Software Defined Networks for Service Providers: A Practical … · Northbound API (REST, WebSockets, OSGi) Controller built-in Applications t-t Apps/Applications Network Troubleshooting

© 2012 Cisco and/or its affiliates. All rights reserved. Cisco Connect 33

Classic (Stateless) PCE Workflow

• Basic request/response interaction between the PCC and PCE

• PCE will only compute and convey path computation results in response to request generated by PCC

Uses response info to then signal TE tunnel setup thru network

• Note: this is NOT your general SDN notion where application drives controller to program (push) state into the network

33

Stateless vs Stateful PCE (RFC4655)

– Stateless – Just independent transactions, does not remember computed LSPs

– Stateful – Topology, resource, LSP state is synced to PCE

Page 34: Software Defined Networks for Service Providers: A Practical … · Northbound API (REST, WebSockets, OSGi) Controller built-in Applications t-t Apps/Applications Network Troubleshooting

© 2012 Cisco and/or its affiliates. All rights reserved. Cisco Connect 34

Stateful PCE

• LSP Database

Contains info/status on active LSPs communicated by PCCs in LSP state reports messages

• Passive Stateful PCE

References LSP DB for path computations

• Active Stateful PCE

References LSP DB for path computations

Programs LSP state in network

• Delegation

PCC delegates LSP control responsibility to PCE

34

Page 35: Software Defined Networks for Service Providers: A Practical … · Northbound API (REST, WebSockets, OSGi) Controller built-in Applications t-t Apps/Applications Network Troubleshooting

© 2012 Cisco and/or its affiliates. All rights reserved. Cisco Connect 35

PCE Protocol (PCEP) Evolution

• RFC5440 defined PCEP (2009)

PCRequest – PCResponse protocol

Standart Protocol machinery: Initialization, keepalive, standard header, message types, objects, TLVs, etc.

TCP transport

35

http://datatracker.ietf.org/wg/pce/

PCE Extensions for SDN (Stateful PCE)

– SDN: Need to push LSP state into the network

draft-ietf-pce-stateful-pce

draft-crabbe-pce-pce-initiated-lsp

draft-ali-pce-remote-initiated-gmpls-lsp

PCE-initiated LSP Workflow:

Page 36: Software Defined Networks for Service Providers: A Practical … · Northbound API (REST, WebSockets, OSGi) Controller built-in Applications t-t Apps/Applications Network Troubleshooting

© 2012 Cisco and/or its affiliates. All rights reserved. Cisco Connect 36

PCE-Initiated LSP Workflow

• SDN WAN Platform (Active Stateful PCE) programs LSP creation, deletion and modifications

• Label Switch Path Attributes (LSPA) object contained in PCCreate LSP message employs TLV structure

Extensible for future functions (i.e. additional state on router associated with LSP tunnel)

36

Page 37: Software Defined Networks for Service Providers: A Practical … · Northbound API (REST, WebSockets, OSGi) Controller built-in Applications t-t Apps/Applications Network Troubleshooting

© 2012 Cisco and/or its affiliates. All rights reserved. Cisco Connect 37

Multi-Layer IP/Optical PCE

• Separate PCE

Operates on each layer

Optional inter-layer PCE communications

37

Single-Layer PCE

– Visibility into L3 and optical topologies

– Programs L3 and L3 UNI to optical

RFC5623: Virtual Network Topology Manager (VNTM)

– Abstracts and presents virtual network topology to next layer up; inter-layer path control

– Example: GMPLS optical path is presented as a virtual link to the IP/MPLS topology

Page 38: Software Defined Networks for Service Providers: A Practical … · Northbound API (REST, WebSockets, OSGi) Controller built-in Applications t-t Apps/Applications Network Troubleshooting

© 2012 Cisco and/or its affiliates. All rights reserved. Cisco Connect 38

What about Openflow?

• Original SDN “southbound” protocol operating between the Controller and agent on a switch

• Research community wanted to experiment with new control paradigms

• Facilitates separation of control and data planes

• App on top of controller uses Openflow protocol to program flow table entries on the Openflow switch

Switch can be physical or virtual

• www.opennetworking.org

38

Page 39: Software Defined Networks for Service Providers: A Practical … · Northbound API (REST, WebSockets, OSGi) Controller built-in Applications t-t Apps/Applications Network Troubleshooting

© 2012 Cisco and/or its affiliates. All rights reserved. Cisco Connect 39

SDN WAN and Openflow

• Not likely to program per-flow state across a contiguous set of Openflow-enabled WAN elements

for scale, resiliency, service enablement, controller overhead, etc. reasons

• But per-flow state does exist at the edge of the WAN

that is usually handled via CLI-configuration

Example is policy-based routing (PBR) for flow indirection

• Openflow possesses the ability to program flow entries in a flow table, assuming that the underlying network is capable of supporting the MAT

• Definition of a flow entry

“.. element in a flow table used to match and process packets. It contains a set of match fields for matching packets, a priority for matching precedence, a set of counters to track packets, and a set of instructions to apply..”

39

Page 40: Software Defined Networks for Service Providers: A Practical … · Northbound API (REST, WebSockets, OSGi) Controller built-in Applications t-t Apps/Applications Network Troubleshooting

© 2012 Cisco and/or its affiliates. All rights reserved. Cisco Connect 40

SDN WAN and Openflow for Traffic Steering

• Use Openflow to program classifiers on WAN Edge

• Flow entries something like:

MATCH/Forward-into-LSP Tunnel

• Useful for services and applications requiring Traffic Steering of specific flows into a programmed WAN resource

40

Page 41: Software Defined Networks for Service Providers: A Practical … · Northbound API (REST, WebSockets, OSGi) Controller built-in Applications t-t Apps/Applications Network Troubleshooting

© 2012 Cisco and/or its affiliates. All rights reserved. Cisco Connect 41

Summarizing so far …

Protocol Data Collection Programming

PCEP LSP State Reports LSP Tunnel Creation

Openflow None MATCH/Forward Entries

BGP-LS Active Topology N/A

Netflow Traffic Stats N/A

SNMP MIB Objects Very limited

CLI Screen Scraping Human or scripts

Netconf Based on data models Based on data models

NMS/OSS Proprietary, Siloed Proprietary, Siloed

Stats DBs Proprietary, homegrown N/A

41

Page 42: Software Defined Networks for Service Providers: A Practical … · Northbound API (REST, WebSockets, OSGi) Controller built-in Applications t-t Apps/Applications Network Troubleshooting

© 2012 Cisco and/or its affiliates. All rights reserved. Cisco Connect 42

Draw any conclusions?

• Lots of network and router interfaces

• Costly and challenging to build the complete bottoms-up view

Gather all active/non-active infra data from all layers and place in single location

• Incomplete set of network and element programming functions

• Difficult for Applications to easily access this data

No standard data model

42

Page 43: Software Defined Networks for Service Providers: A Practical … · Northbound API (REST, WebSockets, OSGi) Controller built-in Applications t-t Apps/Applications Network Troubleshooting

© 2012 Cisco and/or its affiliates. All rights reserved. Cisco Connect 43

Enter I2RS

• Interface to the Routing System

• Framework for a common, standard interface enabling programmatic access to information maintained inside a router

e.g. RIB, interface, stats, policy

• Key aspects are:

Interface must be fast, async, bidirectional

Access to state/information/events not normally available for configurable via existing methods

• http://datatracker.ietf.org/wg/i2rs/

43

Page 44: Software Defined Networks for Service Providers: A Practical … · Northbound API (REST, WebSockets, OSGi) Controller built-in Applications t-t Apps/Applications Network Troubleshooting

© 2012 Cisco and/or its affiliates. All rights reserved. Cisco Connect 44

What I2RS is not I2RS is NOT:

• the only configuration mechanism a router will ever need,

• a direct replacement for existing routing/signaling protocols,

• or the only way to read router data that will ever be needed.

44

Page 45: Software Defined Networks for Service Providers: A Practical … · Northbound API (REST, WebSockets, OSGi) Controller built-in Applications t-t Apps/Applications Network Troubleshooting

© 2012 Cisco and/or its affiliates. All rights reserved. Cisco Connect 45

I2RS - Key Aspects & Anticipated Features • Multiple Simultaneous Asynchronous

Operations

• Configuration Not Re-Processed

• Duplex Communication

• High-Throughput

• Highly Responsive

• Multi-Channel (readers/writers)

• Capabilities Negotiation/Advertisement (self-describing)

• Installed state can have different lifetime models:

Ephemeral (until reboot)

Persistent

Time-based Persistent: Expires after specified time

Time-based Ephemeral: Expires after specified time

• Operations to install state have different install-time models:

Immediately

Time-Based

Triggered by an Event

45

See also: Draft I2RS Charter

Page 46: Software Defined Networks for Service Providers: A Practical … · Northbound API (REST, WebSockets, OSGi) Controller built-in Applications t-t Apps/Applications Network Troubleshooting

© 2012 Cisco and/or its affiliates. All rights reserved. Cisco Connect 46

I2RS Use-Cases

• Programmable Route Indirection (like PBR)

• Traffic Mirroring

• Static Multicast Trees

• Automated BGP Policy Configuration

see draft-keyupate-i2rs-bgp-usecases

• Optimized and programmable “Hot Potato” Routing

• Dynamic VPN provisioning

• Service Overlay Scheduling and Provisioning

• Dynamic DDoS attack mitigation

46

Page 47: Software Defined Networks for Service Providers: A Practical … · Northbound API (REST, WebSockets, OSGi) Controller built-in Applications t-t Apps/Applications Network Troubleshooting

© 2012 Cisco and/or its affiliates. All rights reserved. Cisco Connect 47

Programmability

Page 48: Software Defined Networks for Service Providers: A Practical … · Northbound API (REST, WebSockets, OSGi) Controller built-in Applications t-t Apps/Applications Network Troubleshooting

Towards Programmatic Interfaces to the Network Approaching Today’s Development Dilemma

Edge

Core Mobile

CPE

Appliance

Service

Service Service

Service

CLI(s)

App App

A New Programming Paradigm is Needed

App World:

Server

Software

Development

Networking:

Embedded

Software

Development

Fast, Open,

Customizable,

Rapid prototyping,

Easy-to-find skills

Slow, Closed

Complex,

Hard-to-find skills

Page 49: Software Defined Networks for Service Providers: A Practical … · Northbound API (REST, WebSockets, OSGi) Controller built-in Applications t-t Apps/Applications Network Troubleshooting

New Paradigm Traditional Approach

Evolving How We Interact With The Network Operating System

App

REST

Python

C

Java

IOS / XR / SE / NXOS

Events

App

EEM (TCL) Actions

Routing

Data Plane

Policy

Interface

Monitoring

Discovery

CLI

AAA

SNMP

HTML

XML

Syslog

Span

Netflow

CDP

Routing Protocols

An

yth

ing

yo

u c

an

th

ink o

f

Page 50: Software Defined Networks for Service Providers: A Practical … · Northbound API (REST, WebSockets, OSGi) Controller built-in Applications t-t Apps/Applications Network Troubleshooting

© 2012 Cisco and/or its affiliates. All rights reserved. Cisco Connect 50

Where is the programming done?

Quantum (networking)

SDN Controller

Custom Apps

N1KV Nexus

3k-7k ASR9k

OpenFlow onePK

Network Layer

Controller

IT

Orchestration

Layer

onePK

e.g. REST

Network Services

Open APIs

e.g. REST

Open APIs

e.g. REST

e.g.

Openstack

Quantum

Controller Northbound API

Page 51: Software Defined Networks for Service Providers: A Practical … · Northbound API (REST, WebSockets, OSGi) Controller built-in Applications t-t Apps/Applications Network Troubleshooting

onePK (Platform Kit)

C, JAVA, REST …

API Presentation

API Infrastructure

Catalyst Nexus ASR

ISR

onePK IPC Channel

Data Path Policy Routing Element Discovery Utility Developer

‘Services Sets’

Agents

API : e.g.

OpenFlow

SDK

Available

Page 52: Software Defined Networks for Service Providers: A Practical … · Northbound API (REST, WebSockets, OSGi) Controller built-in Applications t-t Apps/Applications Network Troubleshooting

© 2012 Cisco and/or its affiliates. All rights reserved. Cisco Connect 52

SDN WAN Navigation Map: NB API

Data Collector Programming

Network Model

Computation

Engine

Interfaces Desktop NB API

Apps

52

Page 53: Software Defined Networks for Service Providers: A Practical … · Northbound API (REST, WebSockets, OSGi) Controller built-in Applications t-t Apps/Applications Network Troubleshooting

© 2012 Cisco and/or its affiliates. All rights reserved. Cisco Connect 53

Northbound API – ReST

• Stands for Representational State Transfer

• Not a spec, standard or protocol but rather an architectural style for developing and supporting communications between network applications

• Employs HTTP/TCP as the Uniform Interface

• Resources to act on are defined in URLs

• Limited set of well-defined actions based on HTTP verbs

GET, HEAD, OPTIONS, POST, PUT, DELETE, PATCH …

• Message body is XML or JSON for parameter encoding

• Safety - means no change in state on server

• ReST API wrappers support communication between legacy systems

• Supported by C++, Java, Python, etc …

• Emerging as a common NB API for SDN application platforms

53

Page 54: Software Defined Networks for Service Providers: A Practical … · Northbound API (REST, WebSockets, OSGi) Controller built-in Applications t-t Apps/Applications Network Troubleshooting

© 2012 Cisco and/or its affiliates. All rights reserved. Cisco Connect 54

ReST API Example: Bandwidth Calendar

54

ReST API

PUT HTTP://SDN.WAN.PLATFORM/BANDWIDTH-CAL-APP/ HTTP1.1

Request URL: HTTP://SDN.WAN.PLATFORM/BANDWIDTH-CAL-APP/

Request Method: POST

Status Code: 200 OK

Request Headers

Content-Type: application/json

Host: SDN.WAN.PLATFORM

Request Payload

{"requests":[{"src":”R1","dst":”R2","bandwidth":”5000”, “strt”:”2200”,

“end”:”0300”, “Cust”:”Acme:}]}

SDN WAN

Platform

Network

Page 55: Software Defined Networks for Service Providers: A Practical … · Northbound API (REST, WebSockets, OSGi) Controller built-in Applications t-t Apps/Applications Network Troubleshooting

© 2012 Cisco and/or its affiliates. All rights reserved. Cisco Connect 55

SP SDN Use Cases

Page 56: Software Defined Networks for Service Providers: A Practical … · Northbound API (REST, WebSockets, OSGi) Controller built-in Applications t-t Apps/Applications Network Troubleshooting

WAN Controller: Domain specific service integration

• Multi-Layer WAN controller based on SDN concepts used network and service optimization

• Real time collection and storage of network topology and traffic matrix

• Embedded policy engine and admission control to optimize bandwidth and service placement

Able to select paths using with RSVP or Segment Routing

Able to intelligently place workloads for cloud solutions

• Northbound APIs to allow applications / sub-systems to query and interact with network

Packet Transport Network

Applications and Orchestration

Topology Config BGP

v4/v6

N/W Optimization / Analytics, Admission Control, Demand Engineering)

WAN Controller Utilization

User Apps Subsystems Orchestration

Traffic Matrix

Device APIs

SP Apps

Application APIs

Benefit: Optimized infrastructure and deterministic services with admission control

Page 57: Software Defined Networks for Service Providers: A Practical … · Northbound API (REST, WebSockets, OSGi) Controller built-in Applications t-t Apps/Applications Network Troubleshooting

© 2012 Cisco and/or its affiliates. All rights reserved. Cisco Connect 57

WAN Orchestration Bandwidth Calendaring

Packet

Bandwidth Calendaring

Application

Bandwidth Orchestration

Data Collection

Network Programming

DC Service A

Cis

co

ON

E / P

CE

User / Requestor

1

BW Calendaring App provides UI to end

user. End user requests connectivity

between locations with BW requirement and

calendar interval

Packet Topology and State

information shared

2 Cisco WAN Orchestration controller collects

topology, state, and utilization info from

packet network

3a

User requests connection with defined BW

characteristics to DC service A from location

attached to Router D for specific Calendar

period

3b On behalf of user, BW Calendaring App

requests a Network path to DC Service A

from location attached to Router D 4

WAN Orchestration controller discovers

available resources and calculates optimal

path and returns result to the app

5

BW calendaring confirms request to end

user and tracks reservation to ensure

Service is available at the required Calendar

interval

PCE & Demand Engineering, SXC

Page 58: Software Defined Networks for Service Providers: A Practical … · Northbound API (REST, WebSockets, OSGi) Controller built-in Applications t-t Apps/Applications Network Troubleshooting

© 2012 Cisco and/or its affiliates. All rights reserved. Cisco Connect 58

Predictive Analysis – Assessing Risk (what-if)

58

By simulating failures, you can examine

– Where traffic will go (and what impact this traffic will have)

By simulating failures over a set of objects, you can examine risk network-wide. This includes

– The impact a failure will have

– The worst-utilization an interface will have

Example – Examine a set of circuit failures (one-by-one)

Worst Case

View & Action

Page 59: Software Defined Networks for Service Providers: A Practical … · Northbound API (REST, WebSockets, OSGi) Controller built-in Applications t-t Apps/Applications Network Troubleshooting

© 2012 Cisco and/or its affiliates. All rights reserved. Cisco Connect 59

Traffic Matrix

59

59

ER1

ER2

ER3

CR5

CR2

CR4

CR1

CR3

CR6

ER4

ER5

ER6

Demand

Traffic demands define the amount of data transmitted between each pair of network nodes

– Typically per Class

– Typically peak traffic or a very high percentile

– Measured, anticipated, or estimated/deduced

A network's traffic matrix is list of demands

The traffic matrix has two functions

– Indicate why a network’s traffic distribution

looks the way it looks

– Help predict what would happen in the network

if something were to change (topo/traffic)

http://www.nanog.org/meetings/nanog52/abstracts.php?pt=MTc2

NyZuYW5vZzUy&nm=nanog52&printvs=1

Page 60: Software Defined Networks for Service Providers: A Practical … · Northbound API (REST, WebSockets, OSGi) Controller built-in Applications t-t Apps/Applications Network Troubleshooting

© 2012 Cisco and/or its affiliates. All rights reserved. Cisco Connect 60

Typical National SP Network Dominant Traffic’s Path

U-PE

N-PE PE

BRAS

P P PE IGW

CarrierE Aggregation MPLS Core Regional PoP Main PoP

IGW

Internet Core Transit Access

Page 61: Software Defined Networks for Service Providers: A Practical … · Northbound API (REST, WebSockets, OSGi) Controller built-in Applications t-t Apps/Applications Network Troubleshooting

© 2012 Cisco and/or its affiliates. All rights reserved. Cisco Connect 61

Typical National SP Network Dominant Traffic’s Path

Edge Node

(PE, BNG)

Core Node IGW

CarrierE Aggregation MPLS Core Regional PoP Main PoP

IGW

Internet Core Transit Access

Core Node

PROBLEM:

Adding CPU-heavy per-subscriber BNG state

to busy PE’s may be an operational

nightmare!

Page 62: Software Defined Networks for Service Providers: A Practical … · Northbound API (REST, WebSockets, OSGi) Controller built-in Applications t-t Apps/Applications Network Troubleshooting

© 2012 Cisco and/or its affiliates. All rights reserved. Cisco Connect 62

Typical National SP Network Dominant Traffic’s Path

Core Node IGW

CarrierE Aggregation MPLS Core Regional PoP Main PoP

IGW

Internet Core Transit Access

Core Node

Cloud Data Center

SD-BNG Edge Node

(SDN driven) VM’s

Page 63: Software Defined Networks for Service Providers: A Practical … · Northbound API (REST, WebSockets, OSGi) Controller built-in Applications t-t Apps/Applications Network Troubleshooting

© 2012 Cisco and/or its affiliates. All rights reserved. Cisco Connect 63

Typical National SP Network Dominant Traffic’s Path

Core Node IGW

CarrierE Aggregation MPLS Core Regional PoP Main PoP

IGW

Internet Core Transit Access

Agile DWDM

Core Node

Cloud Data Center

SD-BNG Edge Node

(SDN driven) VM’s

PROBLEM:

How to compute the best IP+Optical solution

including what-if scenarios and predictions?

GMPLS UNI

Page 64: Software Defined Networks for Service Providers: A Practical … · Northbound API (REST, WebSockets, OSGi) Controller built-in Applications t-t Apps/Applications Network Troubleshooting

© 2012 Cisco and/or its affiliates. All rights reserved. Cisco Connect 64

Agile DWDM

Typical National SP Network Dominant Traffic’s Path

Core Node

CarrierE Aggregation MPLS Core Regional PoP Main PoP

IGW

Internet Core Transit Access

Cloud Data Center Edge Node

(SDN driven)

Cloud Data Center

Multi-Layer

WAN Orchestration

VM’s

SD-BNG

Core Node

VM’s

Page 65: Software Defined Networks for Service Providers: A Practical … · Northbound API (REST, WebSockets, OSGi) Controller built-in Applications t-t Apps/Applications Network Troubleshooting

Use Case: Faster Service Velocity with SDN/NFV

1. Orchestrate virtualized network services (vPE/vCE) and service chaining

2. Applications / orchestration utilizes API to WAN controller to request placement of new demand

3. WAN controller analyses the SLA and load against real time database and places new load / demands appropriately

4. WAN controller may reconfigure the network or simply provide Connection Admission Control (CAC) function

Centralised DC

Virtualized Services

+

Service chaining

Distributed DC

(standalone

or on-box)

Classification

+

Redirection

Function

IP edge

Customer Premise

CPE

Overlay

tunnel

NGN

WAN

Controller

Cross Domain

Orchestration

DC

Controller

Page 66: Software Defined Networks for Service Providers: A Practical … · Northbound API (REST, WebSockets, OSGi) Controller built-in Applications t-t Apps/Applications Network Troubleshooting

© 2012 Cisco and/or its affiliates. All rights reserved. Cisco Connect 66

Preserve

What’s Working

Evolve for Emerging Requirements

Evolution to Software Powered Networks

Bringing the Network to Applications

• Resiliency

• Scale

• Rich Feature-Set

• Cross Domain Operational

Simplicity

• Deep Multi-Layer

Programmability

• Bi-Directional

Application Awareness

+

Page 67: Software Defined Networks for Service Providers: A Practical … · Northbound API (REST, WebSockets, OSGi) Controller built-in Applications t-t Apps/Applications Network Troubleshooting

Complete Your Paper “Session Evaluation”

Give us your feedback and you could win

1 of 2 fabulous prizes in a random draw.

Complete and return your paper

evaluation form to the room attendant

as you leave this session.

Winners will be announced today.

You must be present to win!

..visit them at BOOTH# 100

Page 68: Software Defined Networks for Service Providers: A Practical … · Northbound API (REST, WebSockets, OSGi) Controller built-in Applications t-t Apps/Applications Network Troubleshooting

© 2012 Cisco and/or its affiliates. All rights reserved. Cisco Connect 68

Thank you.