designing programmable access networks -...

88

Upload: duongthien

Post on 31-Aug-2018

258 views

Category:

Documents


3 download

TRANSCRIPT

Designing Programmable Access Networks - BRKSPG-2210

Ahmed Abeer, Senior Technical Marketing Engineer

Nicolas Breton, Product Manager

BRKSPG-2210

• Programmability Overview

• Transport Evolution

• Device Level Programmability

• Network Level Programmability

• Design Recommendation

• Conclusion

Agenda

Programmability Overview

© 2016 Cisco and/or its affiliates. All rights reserved. Cisco Public

Session Objectives

• To educate the audience on programmability technologies.

• To understand what is available today and what futures are that enable Programmability.

• To learn how to design and migrate to programmable networks.

BRKSPG-2210 5

© 2016 Cisco and/or its affiliates. All rights reserved. Cisco Public

Software Defined Network: An industry Trend

Applications

Control Plane

Data Plane

Virtual

Physical

• Decoupled Control and Data Planes

• Highly Centralized Control (aka SDN Controller) or Hybrid

• Greater application interaction with the network

SDN Definition (ONF): The physical separation of the

network control plane from the forwarding plane, and

where a control plane controls several devices.

An opportunity to re-think the relationship between network hardware and software

BRKSPG-2210 6

© 2016 Cisco and/or its affiliates. All rights reserved. Cisco Public

Network Functions Virtualization

• Transition of network services to run on virtualized compute infrastructure

• Decoupling the service from the device

• Elastic, consumption-based service model

7BRKSPG-2210

Purpose built appliances Servers!

VNFs

Virtual Network Function running as application on servers

Create the need for Application Program Interfaces ( API )

© 2016 Cisco and/or its affiliates. All rights reserved. Cisco Public

Therefore the need for Network Programmability

8BRKSPG-2210

Physical and Virtual Network Infrastructure

Model Driven Programmable Interfaces

Programmatic

Interfaces

Open

Protocols

Configuration

Management

Traffic

Engineering

Operational

State

Transport Evolution

© 2016 Cisco and/or its affiliates. All rights reserved. Cisco Public

Trends in the Service Provider TransportAccess and Aggregation

• Scale the access within a domain• Number of nodes and services increasing

• Bandwidth growth 10GE -> 100G

• Traffic load optimization

• Deploy services across domains• End to End service deployments

• Virtualization• Virtual CPE, Virtual NID

• Rapid Nodes and Service deployments• Hours to minutes

• Orchestrated At the same time, keep the same Services KPI’s

OAM, Traffic load management,Transparent Node and Service insertion

Core

Access Domain A

Access Domain B

Access Domain C

BRKSPG-2210 10

© 2016 Cisco and/or its affiliates. All rights reserved. Cisco Public

Network Programmability What is changing in the network?

Core

Access Domain A

Access Domain B

Access Domain C

Core

Access Domain A

Access Domain B

Access Domain C

NMSService

Assurance

Traditional Programmatic Approach

Orchestration

NSO by Tail-F

NetconfYang

WAN Optimization Engine Engine

WAE

Open Source

Controller

ODL

PCEPBGP LS NetconfYang

BRKSPG-2210 11

Segment Routing

OSS BSS

IP/MPLS/ L2

SNMP

CLI

Automation of the Network

© 2016 Cisco and/or its affiliates. All rights reserved. Cisco Public

Automation through Device Activation

Access

Ring 1

Access

Ring 1

Access

Ring 2

MPLS

Non AN

Non AN

AAA Server

TFTP

CA

Config

--------

--------

Config

--------

--------

Config

--------

--------

Config

--------

--------

Config

--------

--------

Config

--------

--------

• Automatic bring-up process

• Full Automation

• Zero Pre-staging

• Any network/Topology

• Config download

• Image download/ Upgrade

• Persistent connection with Management system

BRKSPG-2210 13

© 2016 Cisco and/or its affiliates. All rights reserved. Cisco Public

Zero Touch Deployment (ZTD) Options

Limitation:

No discovery

Require Configuration

Auto IP Address Mgmt

Discovery

Auto Configuration

Auto Image Upgrade

Limitation:

L1 and L2 Network

Support Only

Limitation:

IPv6 Infrastructure

Image upgrade

Limitation:

Limited security

Require scripting for

download ( puppet)

ZTD

Distributed Centralized

Auto IP Autonomic IPXIE nV satellite

BRKSPG-2210 14

PnP

Limitation:

No network level

discovery

Discovery and

bootstrap

Device Level - Network level Device level

Config Download Yes No Yes Yes (scripting)

Image Upgrade Yes No No Yes (scripting)

Secure Basic level No Yes No

Introduce Segment Routing

© 2016 Cisco and/or its affiliates. All rights reserved. Cisco Public

Segment Routing Overview

• Source Routing

• the source chooses a path and encodes it in the packet header as an ordered list of segments

• the rest of the network executes the encoded instructions

• Segment: an identifier for any type of instruction

• forwarding or service

• Forwarding Plane:

• MPLS: an ordered list of segments is represented as a stack of labels

• IPv6: an ordered list of segments is encoded in a routing extension header

• Multi-Vendor solution

BRKSPG-2210 16

© 2016 Cisco and/or its affiliates. All rights reserved. Cisco Public

Why Segment Routing ?

• More Control and Programmable

• Segment Routing Labels are assigned manually or programmed

• Simplifies the Control plane stack.

• Extension to IGP’s ( ISIS , OSPF)

• Enabling SR in existing MPLS network is simple.

• Seamless migration

BRKSPG-2210 17

Programmable MPLS

Program MPLS labels

Service label

© 2016 Cisco and/or its affiliates. All rights reserved. Cisco Public

Segment Routing: IGP segmentsIGP Prefix Segments

• Shortest-path to the IGP prefix

• Equal Cost MultiPath (ECMP)-aware

• Global Segment

• Label = 16000 + Index

• Advertised as index

• Distributed by ISIS/OSPF

18BRKSPG-2210

IGP Adjacency Segment

• Forward on the IGP adjacency

• Local Segment

• Advertised as label value

• Distributed by ISIS/OSPF

All nodes use default SRGB16,000 – 23,999

© 2016 Cisco and/or its affiliates. All rights reserved. Cisco Public

Combining IGP Segments

• Steer traffic on any path through the network

• Path is specified by list of segments in packet header, a stack of labels

• No path is signaled

• No per-flow state is created

• Single protocol: IS-IS or OSPF

19BRKSPG-2210

1 2

3 4

5

16004 24045

16004

24045

Packet to 5

24045

Packet to 5

All nodes use default SRGB

16,000 – 23,999

© 2016 Cisco and/or its affiliates. All rights reserved. Cisco Public

Unified MPLS vs Segment RoutingIntra Domain

20BRKSPG-2210

LDP/IGP

Programmable MPLSUnified MPLS

ISIS-SR

MPLS Labels Unifed MPLS Segment Routing

Transport Labels Dynamic Label allocation (LDP) Programmed or cli

Service Labels Dynamic Label allocation (LDP) Programmed or cli

Program MPLS labels:Prefix SIDService Label

Prefix SIDsLDP LDP

LDPLDP

PWPW

LDP

CLI>

OR

Service Label

© 2016 Cisco and/or its affiliates. All rights reserved. Cisco Public

Unified MPLS vs Segment RoutingInter Domain

21BRKSPG-2210

Programmable MPLSUnified MPLS

Domain A Domain B

IGP / LDP IGP / LDP

BGP-LU

Domain A Domain B

2

31

LDP Label

BGP Label

Service Label

ABR 1

Swap

32

LDP Drop 3

32

Push

ABR 1

BGP-LU

IGP IGP

ABR 1 ABR 1

3

1 Next Hop Label

Service Label

2 Destination Label

3

12

BGP Label

32

2 TE Label 3 4

Program MPLS labelsPrefix SIDService Label

CLI>

OR

TE FRR / Remote LFA

Device Level Programmability

© 2016 Cisco and/or its affiliates. All rights reserved. Cisco Public

Device Level Programmability

• Operational cost to manage different vendor’s devices

• Different CLIs,

• Different Operating Systems

• Different Support

• SNMP’s Structured Management Interface (SMI) Limitations

• Web customers need device level APIs to manage the network

24BRKSPG-2210

Protocols

NETCONF

RESTCONF

YANG

SEGMENT ROUTING

TELEMETRY

NETCONF and YANG

© 2016 Cisco and/or its affiliates. All rights reserved. Cisco Public

What is NETCONF?

• NETCONF = Network Configuration Protocol

• IETF configuration management protocol

• Addresses Next-Gen Configuration Management Requirement ( RFC3535 )

Introduction & Background

Configuration Data, Notification Data (XML)

Transport

Messages

Operations

Content

<get>, <get-config>,<edit-config>, <commit>,

<lock>/<unlock>, <close-session> etc

<rpc>, <notification>,<rpc-reply>

SSH, BEEP, SOAP, TLS

Clie

nt

Serv

er

BRKSPG-2210 26

© 2016 Cisco and/or its affiliates. All rights reserved. Cisco Public

What is NETCONF?

• NETCONF Configuration Data Stores

• Four in total

• Running mandatory

• Startup and Candidate optional

Startup Running Candidate Files… / URLs…

Configuration Data Stores

BRKSPG-2210 27

© 2016 Cisco and/or its affiliates. All rights reserved. Cisco Public

NETCONF Session FlowStep 1: Router Configuration & NETCONF Session Instantiation

SSH

Client

Server

IP Address: 1.53.39.33

Device Configuration:

Server (config)# ssh server v2

Server (config)# ssh server netconf

Server (config)# ssh timeout 120

Server (config)# netconf-yang agent ssh

Server (config)# commit

crypto key generate dsa

ssh [email protected] -p 830 -s netconf

1

2

BRKSPG-2210 28

© 2016 Cisco and/or its affiliates. All rights reserved. Cisco Public

NETCONF Session FlowStep 2: Hello Message, TCP Connection & Capability Exchange

SSH

Client

Server

<hello xmlns="urn:ietf:params:xml:ns:netconf:base:1.0">

<capabilities>

<capability>urn:ietf:params:netconf:base:1.1</capability>

<capability>urn:ietf:params:netconf:capability:candidate:1.0</capability>

<capability>urn:ietf:params:netconf:capability:rollback-on-error:1.0</capability>

<capability>urn:ietf:params:netconf:capability:validate:1.1</capability>

<capability>urn:ietf:params:netconf:capability:confirmed-

commit:1.1</capability>

… … … …

</capabilities>

<session-id>3487345521</session-id>

</hello>]]>]]>

<?xml version="1.0" encoding="UTF-8"?>

<hello xmlns="urn:ietf:params:xml:ns:netconf:base:1.0"> <capabilities>

<capability>urn:ietf:params:netconf:base:1.0</capability>

<capability>urn:ietf:params:netconf:base:1.1</capability> </capabilities>

</hello>]]>]]>

3

BRKSPG-2210 29

© 2016 Cisco and/or its affiliates. All rights reserved. Cisco Public

NETCONF Session FlowStep 3: Netconf <get-config> Operation with Sub-tree filtering

SSH

ClientServer

#411

<?xml version="1.0" encoding="UTF-8"?>

<rpc message-id="101"

xmlns="urn:ietf:params:xml:ns:netconf:base:1.0">

<get-config>

<source>

<running/>

</source>

<filter type="subtree">

<aaa xmlns="http://cisco.com/ns/yang/Cisco-IOS-XR-aaa-locald-admin-cfg">

<usernames/>

</aaa>

</filter>

</get-config>

</rpc>

##

4

BRKSPG-2210 30

© 2016 Cisco and/or its affiliates. All rights reserved. Cisco Public

NETCONF Session FlowStep 3: Netconf <get-config> Operation with Sub-tree filtering

#517

<?xml version="1.0"?>

<rpc-reply message-id="101" xmlns="urn:ietf:params:xml:ns:netconf:base:1.0">

<data>

<aaa xmlns="http://cisco.com/ns/yang/Cisco-IOS-XR-aaa-locald-admin-cfg">

<usernames>

<username>

<name>root</name>

<usergroup-under-usernames>

<usergroup-under-username>

<name>root-system</name>

</usergroup-under-username>

</usergroup-under-usernames>

<secret>$1$/caI$UAmDQj9QSRqPDqVDXtX/h/</secret>

</username>

</usernames>

</aaa>

</data>

</rpc-reply>

##

SSH

Client Server

BRKSPG-2210 31

© 2016 Cisco and/or its affiliates. All rights reserved. Cisco Public

NETCONF Session FlowStep 4: Netconf <edit-config> Operation with Filtering On

SSH

ClientServer

#938

<?xml version="1.0" encoding="UTF-8"?>

<rpc message-id="105"

xmlns="urn:ietf:params:xml:ns:netconf:base:1.0">

<edit-config>

<target>

<candidate/>

</target>

<config type="subtree">

<interface-configurations xmlns="http://cisco.com/ns/yang/Cisco-IOS-XR-ifmgr-cfg">

<interface-configuration>

<active>act</active>

<interface-name>GigabitEthernet0/0/0/7</interface-name>

<description>CL Vegas Presenter is Boring</description>

-----TO BE CONTINUED-----

----CONTINUED-----

<ipv4-network xmlns="http://cisco.com/ns/yang/Cisco-IOS-XR-ipv4-io-cfg">

<addresses>

<primary>

<address>172.172.172.172</address>

<netmask>255.255.0.0</netmask>

</primary>

</addresses>

</ipv4-network>

</interface-configuration>

</interface-configurations>

</config>

</edit-config>

</rpc>

##

5

BRKSPG-2210 32

© 2016 Cisco and/or its affiliates. All rights reserved. Cisco Public

NETCONF Session FlowStep 4: Netconf <edit-config> Operation with Filtering On

#119

<?xml version="1.0"?>

<rpc-reply message-id="105" xmlns="urn:ietf:params:xml:ns:netconf:base:1.0">

<ok/>

</rpc-reply>

##

SSH

Client Server

Server#sh running-config int GigabitEthernet 0/0/0/7

interface GigabitEthernet0/0/0/7

description CL Vegas Presenter is Boring

bandwidth 100000

cdp

ipv4 address 172.172.172.172 255.255.0.0

shutdown

6

BRKSPG-2210 33

© 2016 Cisco and/or its affiliates. All rights reserved. Cisco Public

##

<source>

<running/>

</source>

<filter type="subtree">

<interface-configurations

xmlns="http://cisco.com/ns/yang/Cisco-IOS-XR-ifmgr-cfg">

<interface-configuration>

<interface-name>Loopback0</interface-name>

</interface-configuration>

</interface-configurations>

</filter>

</get-config>

</rpc>

<get-config>

#171<?xml version="1.0" encoding="UTF-8"?><rpc

xmlns="urn:ietf:params:xml:ns:netconf:base:1.0" message-id="1">

Flow Breakdown - Request

34BRKSPG-2210

NETCONF RPC

(Message) Layer

Operation

Layer

Content Layer

Framing

Marker

© 2016 Cisco and/or its affiliates. All rights reserved. Cisco Public

YANG in the context of Netconf

Transport

Remote

Operations

Mgmt

Services

Mgmt info

(payload)

Mgmt info

(definition)

XML-encoded content

YANG modules

Netconf operations

<edit-config>, <get-config>, <get>

Netconf RPC

<rpc>, <rpc-reply>

TLS, SSH

Manager (client)

XML

content

per

YANG

Conceptual

Data

Store

Agent

(server)

BRKSPG-2210 35

© 2016 Cisco and/or its affiliates. All rights reserved. Cisco Public

Yang Module Definition

36BRKSPG-2210

Type definitions

Module Header Definitions

Logical Definition

Structure

Data definitions and Instance Structure Non-data items

Conformance

Leaf

Leaf-list

List

Container

Choice

Case

anyxml

Grouping

Uses

Augments

Notification

RPC

feature

deviation

typedef

Module Submodule

© 2016 Cisco and/or its affiliates. All rights reserved. Cisco Public

Yang Service Model Definition

BRKSPG-2210 37

IETF data type

For IOS XR devices

“myVPNService”

Instances Service name

DEVICE A DEVICE B

Loopback 1.1.1.1Loopback 2.2.2.2

Int 1/1 Int 1/2

© 2016 Cisco and/or its affiliates. All rights reserved. Cisco Public

Yang Service Model Definition

BRKSPG-2210 38

Loopbacks

Devices

Interfaces

Circuit ID

DEVICE A DEVICE B

Loopback 1.1.1.1 Loopback 2.2.2.2

Int 1/1

© 2016 Cisco and/or its affiliates. All rights reserved. Cisco Public

Cisco

Common

Models

Cisco

OS

Device

Specific

Models

Customer

Models

39BRKSPG-2210

YANG Model Strategy Overview

Industry

Standard

Models

IETF, OpenConfig

MEF

Models across

XR, XE, NX-OSXR, XE, NX-OS

Specific

Models provided

by customers

• Standardization takes

time.

• High priority to

implement when models

are standardized

• Consistent behavior

across OSs

• Higher priority than OS

specific models when

available

• Fastest time to market

• Expose OS specific

behavior

• Provided by customer

• Prioritized on a case by

case basis

RESTCONF Section

© 2016 Cisco and/or its affiliates. All rights reserved. Cisco Public

RESTCONF• Restful protocol to access YANG defined data

• Remote State Transfer

• Server maintains no session state

• HTTP URLs reflect data hierarchy in a YANG-modelled datastore

RESTCONF Netconf

GET <get-config>, <get>

POST <edit-config> (“create”)

PUT <edit-config> (“replace”)

PATCH <edit-config> (“merge”)

DELETE <edit-config> (“delete”)

OPTIONS (discover supported operations)

HEAD (get without body)

BRKSPG-2210 41

© 2016 Cisco and/or its affiliates. All rights reserved. Cisco Public

Resource URL Map/restconf

/config

/<top-level-data-nodes> (configuration data)

/operational

/<top-level-data-nodes> (operational data)

/modules

/module

/name

/revision

/namespace

/feature

/deviation

/operations

/<custom protocol operations>

/streams

/stream

/name

/description

/replay-support

/replay-log-creation-time

/events

/version (field)

Event streams,

subscribe using “get”,

can specify filters

Meta-information:

Capabilities etc

Meta-information:

Supported RPCs

YANG-

defined

data

BRKSPG-2210 42

© 2016 Cisco and/or its affiliates. All rights reserved. Cisco Public 43BRKSPG-2210

RESTCONF Example

© 2016 Cisco and/or its affiliates. All rights reserved. Cisco Public

Transport

Messages

Operations

Mgmt info

(encoding)

Mgmt info

(definition)

XML content

YANG modules

NETCONF

RPC

TLS

SSH

JSON

HTTP

RESTCONF

TCP

YANG – NETCONF versus RESTCONF

BRKSPG-2210 44

XML

content

RESTCONF

NETCONF

YANG

GET, POST …Get-config, Edit-config…

Network Level Programmability

© 2016 Cisco and/or its affiliates. All rights reserved. Cisco Public

Controllers & OrchestratorProtocols/Open APIs

46BRKSPG-2210

Network Level ProgrammabilityWhere are we today

BGP Link State

(BGP-LS)

Path Computation Element

Protocol (PCEP)

BGP FlowSec

(BGP-FS)

Network Service Orchestrator

(NSO)

WAN Automation Engine

(WAE)

XR Traffic Controller

(XTC)

OpenDaylight

(ODL)

Application Engineering Routing

(AER)

• Lack of Visibility

• Black holing

• Difficult to Troubleshoot

• Scalability challenges

Cisco’s Controllers & Orchestrators

© 2016 Cisco and/or its affiliates. All rights reserved. Cisco Public

Network Services Orchestrator (NSO)

• Multi-vendor service orchestrator o Distributed service configuration management

o Transaction integrity

o Validation and rollback

• Single pane of glass for:o L2-L7 networking

o Hardware Devices

o Virtual Appliances

• YANG Model Driven Orchestrationo Service Data models

o Device Data Model

o Network Element Driver

• Highly Scalable for large infrastructure

o One of the existing deployment is managing 60K devices on the network

Network Element Drivers

Device Manager

Service Manager

Network Services Orchestrator (NSO) Service

Models

Device

Models

Network-wide CLI, Web UIREST, Java, NETCONF

Network

Engineer

Management

Applications

End-to-End

Transactions

NETCONF, CLI, SNMP, REST, etc.

• Applications

• Controllers

BRKSPG-2210 48

© 2016 Cisco and/or its affiliates. All rights reserved. Cisco Public 49BRKSPG-2210

Cisco’s Open SDN ControllerCisco’s Commercial Edition Of Open Daylight

“One-Click” Install

VMware ESXi and Oracle

Virtual Box hypervisor ready Pre-Installed Apps

•BGPLS Manager – visualizes

network topology from BGP database

• Inventory – augmented

OpenDaylight “Nodes” app

identifies all connected devices

•(YANG) Model Explorer – exposes

system models and previews JSON

API body

•OpenFlow Manager – manages,

visualizes and troubleshoots flows +

previews JSON API body

•PCEP Manager – creates, modifies

and deletes MPLS LSPs

Centralized OA&M

Robust user, application and

feature administration

Status monitoring: system,

cluster, node

Event logging

Real-time CPU, memory,

disk, heap size, load and

network utilization metrics

See also: http://www.cisco.com/c/en/us/products/cloud-systems-management/open-sdn-controller/index.html49

© 2016 Cisco and/or its affiliates. All rights reserved. Cisco Public

• Multi-Application Engine for the SP WAN

• Network planning and optimization

• On Demand Bandwidth Calendaring

• Demand placement

• Interact with traffic management apps

• Topology and traffic abstraction

• Multi-Vendor platform

• Compliments NSO and Open SDN Controller (ODL)

WAE: WAN Automation Engine

http://www.cisco.com/go/wae

Sourc

eDestination

SDN Orchestration & ControlConfiglet NSO EMS/NMSODL/OSC …

Traffic Management Applications

REST

REST/NETCONF

NETCONF/PCEP/BGP-LS

BRKSPG-2210 50

BGP-LS: BGP Link-State

© 2016 Cisco and/or its affiliates. All rights reserved. Cisco Public

BGP-LS Overview

• Optimal Path Computation for Multi-area TE

• Solution is BGP, not IGP.

• BGP-LS is an address-family

• afi=16388, safi=71

• Defined to carry IGP link-state database via BGP

• Supports both IS-IS and OSPF

• Delivers topology information to outside agents

Domain 1 Domain 2

Domain 0

BGP-LS

Traffic

Engineering

Databse (TED)

BGP-LS BGP-LS

RR

PCE

BRKSPG-2210 52

© 2016 Cisco and/or its affiliates. All rights reserved. Cisco Public 53BRKSPG-2210

BGP-LS Internals

• BGP-LS NLRI

• NLRI Type defines the object class

• Object Class = Node/link/prefix

• NLRI body is a set of TLV

• NLRI contains the data that identifies an object

• BGP-LS attribute

• Optional non-transitive

• Encode properties of the object

• Data consists of TLVs

• TLVs are specific to the object class

• Node attribute TLVs

• Link attribute TLVs

• Prefix attribute TLVs

Note: With the combination of Node and Link objects one can construct a topology info and IP Prefix object will provide IP reachability information.

© 2016 Cisco and/or its affiliates. All rights reserved. Cisco Public

This network topology results in 18 BGP-LS objects.

• Common topology abstraction model

• IGP network modeled

• Three classes of objects

• Nodes

• Links

• prefixesNode1

Node2

Node3

Link1&2

Link3&4

BGP-LS Objects

• 3 nodes

• 6 links

• 9 prefix

Lo: 10.0.0.102

Lo: 10.0.0.101

Lo: 10.0.0.100

Link: 10.0.3.0

.102

.101

Link: 10.0.1.0

.100

.101

.102

.100

Link: 10.0.2.0

BRKSPG-2210 54

ODL

BGP-LS

Postman

REST API JSON/XML

WAE

RR

© 2016 Cisco and/or its affiliates. All rights reserved. Cisco Public

router ospf 1

distribute bgp-ls

router-id 10.0.0.100

address-family ipv4 unicast

area 0

interface Loopback0

network point-to-point

!

interface GigabitEthernet0/0/0/0

network point-to-point

!

interface GigabitEthernet0/0/0/18

network point-to-point

!

!

!

router bgp 64496

bgp router-id 10.0.0.100

address-family ipv4 unicast

!

address-family link-state link-state

!

neighbor 1.53.39.49

remote-as 64496

update-source MgmtEth0/RSP0/CPU0/0

address-family ipv4 unicast

!

address-family link-state link-state

route-reflector-client

55BRKSPG-2210

BGP Link State Device Configuration

Distribute OSPF link

state database into

BGP-LS

Enable link-state

addresses

Specify BGP-LS

peer

• BGP Link State Configuration only on 1 node per domain

• Node 1 only requires BGP LS configuration

Node1

Node2

Node3

Link1&2

Link3&4

Lo: 10.0.0.102

Lo: 10.0.0.101

Lo: 10.0.0.100

Link: 10.0.3.0

.102

.101

Link: 10.0.1.0

.100

.101

.102

.100

Link: 10.0.2.0

BGP LS configured on this node

© 2016 Cisco and/or its affiliates. All rights reserved. Cisco Public

ODL Configuration

BRKSPG-2210 56

ODL Beryllium

installation

PCEP/BGP-LS

installation inside

ODL

© 2016 Cisco and/or its affiliates. All rights reserved. Cisco Public

ODL Configuration

• Modify ~/etc/opendaylight/karaf/41-bgp-example.xml

• Change the local BGP RIB info. Search for "example-bgp-rib" and change the "local-as" and "bgp-rib-id" values to be your local AS and ODL's IP address.

• Add the peer (Node: 10.0.0.100). Look for the "example-bgp-peer" module, remove the comments around it, and edit the IP address.

BRKSPG-2210 57

© 2016 Cisco and/or its affiliates. All rights reserved. Cisco Public

RP/0/RSP0/CPU0:ASR9K0#sh bgp link-state link-state

BGP router identifier 10.0.0.100, local AS number 64496

BGP generic scan interval 60 secs

Non-stop routing is enabled

BGP table state: Active

Table ID: 0x0 RD version: 39

BGP main routing table version 39

BGP NSR Initial initsync version 11 (Reached)

BGP NSR/ISSU Sync-Group versions 0/0

BGP scan interval 60 secs

Status codes: s suppressed, d damped, h history, * valid, > best

i - internal, r RIB-failure, S stale, N Nexthop-discard

Origin codes: i - IGP, e - EGP, ? - incomplete

Prefix codes: E link, V node, T IP reacheable route, u/U unknown

I Identifier, N local node, R remote node, L link, P prefix

L1/L2 ISIS level-1/level-2, O OSPF, D direct, S static/peer-node

a area-ID, l link-ID, t topology-ID, s ISO-ID,

c confed-ID/ASN, b bgp-identifier, r router-ID,

i if-address, n nbr-address, o OSPF Route-type, p IP-prefix

d designated router address

Network Next Hop Metric LocPrf Weight Path

*> [V][O][I0x0][N[c64496][b10.0.0.100][a0.0.0.0][r10.0.0.100]]/376

0.0.0.0 0 I

*>[V][O][I0x0][N[c64496][b10.0.0.100][a0.0.0.0][r10.0.0.101]]/376

0.0.0.0 0 i

*> [V][O][I0x0][N[c64496][b10.0.0.100][a0.0.0.0][r10.0.0.102]]/376

0.0.0.0 0 I

*>[E][O][I0x0][N[c64496][b10.0.0.100][a0.0.0.0][r10.0.0.100]][R[c64496][b10.0.0.100][a0.0.0.0][r10.0.0.102]][L[i10.0.2.100][n10.0.2.102]]/792

0.0.0.0 0 i

58BRKSPG-2210

BGP Link State Verification

Node

V= node

O= OSPF

N= local node

c= Confed ID/ ASN -- 64496

b=bgp-id – 10.0.0.100

a=area-id -- 0.0.0.0

r=router-id -- 10.0.0.102

Check here for the

Prefix codes

© 2016 Cisco and/or its affiliates. All rights reserved. Cisco Public

*>[E][O][I0x0][N[c64496][b10.0.0.100][a0.0.0.0][r10.0.0.101]][R[c64496][b10.0.0.100][a0.0.0.0][r10.0.0.100]][L[i10.0.1.101][n10.0.1.100]]/792

0.0.0.0 0 i

*>[E][O][I0x0][N[c64496][b10.0.0.100][a0.0.0.0][r10.0.0.101]][R[c64496][b10.0.0.100][a0.0.0.0][r10.0.0.102]][L[i10.0.3.101][n10.0.3.102]]/792

0.0.0.0 0 I

*> [T][O][I0x0][N[c64496][b10.0.0.100][a0.0.0.0][r10.0.0.101]][P[o0x01][p10.0.1.0/24]]/480

0.0.0.0 0 i

*> [T][O][I0x0][N[c64496][b10.0.0.100][a0.0.0.0][r10.0.0.101]][P[o0x01][p10.0.3.0/24]]/480

0.0.0.0 0 i

*> [T][O][I0x0][N[c64496][b10.0.0.100][a0.0.0.0][r10.0.0.101]][P[o0x01][p10.0.0.101/32]]/488

0.0.0.0 0 i

*> [T][O][I0x0][N[c64496][b10.0.0.100][a0.0.0.0][r10.0.0.102]][P[o0x01][p10.0.2.0/24]]/480

0.0.0.0 0 i

*> [T][O][I0x0][N[c64496][b10.0.0.100][a0.0.0.0][r10.0.0.102]][P[o0x01][p10.0.3.0/24]]/480

0.0.0.0 0 i

*> [T][O][I0x0][N[c64496][b10.0.0.100][a0.0.0.0][r10.0.0.102]][P[o0x01][p10.0.0.102/32]]/488

0.0.0.0 0 i

Processed 18 prefixes, 18 paths

59BRKSPG-2210

BGP Link State Verification

Link

E=link

N=node

c= Confed ID/ ASN -- 64496

b=bgp-id – 10.0.0.100

a=area-id -- 0.0.0.0

r=router-id -- 10.0.0.101

R= remote node

c= Confed ID/ ASN -- 64496

b=bgp-id – 10.0.0.100

a=area-id -- 0.0.0.0

r=router-id -- 10.0.0.102

L=link

i= if-address -- 10.0.3.101

n=nbr-address – 10.0.3.103

Prefix

T= IP reacheable route

N=node

c= Confed ID/ ASN -- 64496

b=bgp-id – 10.0.0.100

a=area-id -- 0.0.0.0

r=router-id -- 10.0.0.101

P=prefix

o= ospf-route-typ -- 0x01

p= ip prefix – 10.0.0.101/32

© 2016 Cisco and/or its affiliates. All rights reserved. Cisco Public

Northbound BGP-LS Verification with RESTCONF

60BRKSPG-2210

Node1

Node2

Node3

Link3&4

Lo: 10.0.0.102

Lo: 10.0.0.101

Lo: 10.0.0.100

Link: 10.0.3.0

.102

.101.100

.100

ODL

BGP-LS

Postman

REST JSON/XML

© 2016 Cisco and/or its affiliates. All rights reserved. Cisco Public

Northbound BGP-LS Verification with RESTCONFGET BGP-LS Topology

http://admin:[email protected]:8181/restconf/operational/network-topology:network-topology/topology/example-linkstate-topology

{

"topology": [

{

"topology-id": "example-linkstate-topology",

"link": [

{

"link-id": "bgpls://Ospf:0/type=link&local-as=64496&local-domain=167772260&local-area=0&local-router=167772262&remote-

as=64496&remote-domain=167772260&remote-area=0&remote-router=167772261&ipv4-iface=10.0.3.102&ipv4-neigh=10.0.3.101”,

"source": {

"source-tp": "bgpls://Ospf:0/type=tp&ipv4=10.0.3.102",

"source-node": "bgpls://Ospf:0/type=node&as=64496&domain=167772260&area=0&router=167772262"

},

}

},

"destination": {

"dest-node": "bgpls://Ospf:0/type=node&as=64496&domain=167772260&area=0&router=167772261",

"dest-tp": "bgpls://Ospf:0/type=tp&ipv4=10.0.3.101"

}

},

---- Trim ----

BRKSPG-2210 61

TOPOLOGY

SOURCE

DESTINATION

LINK

© 2016 Cisco and/or its affiliates. All rights reserved. Cisco Public

OpenDaylight BGP-LS Topology Discovery

62BRKSPG-2210

2

1

3

© 2016 Cisco and/or its affiliates. All rights reserved. Cisco Public

BGP-LS deploymentDesign considerations

• Deployment model

• IGP redistribution into BGP-LS

• Advertisement of BGP-LS NLRIs to RR.

• RR sends information to external agents

BGP-LS

Speaker

BGP-LS

RR

BGP-LS

Speaker

Topology

Server

PCE

IGP Domain IGP Domain IGP Domain

BRKSPG-2210 63

PCEP: Path Computation Element Protocol

© 2016 Cisco and/or its affiliates. All rights reserved. Cisco Public

PCEP Architectural Introduction• Path computation

• Large, multi-domain and multi-layer networks

• Path computation element (PCE)

• Computes network paths (topology, paths, etc.)

• Stores TE topology database (synchronized with network)

• May initiate path creation

• Stateful - stores path database included resources used (synchronized with network)

• Path computation client (PCC)

• May send path computation requests to PCE

• May send path state updates to PCE

• Used between head-end router (PCC) and PCE to:

• Request/receive path from PCE subject to constraints

• State synchronization between PCE and router

• Hybrid CSPFBRKSPG-2210 65

PCEP

PCE

TED

LSP DB

PCC

PCC PCE

Open/Close/Keepalive

Open/Close/Keepalive

PCC PCE

Reply

Request

PCC PCE

Notification

Notification

© 2016 Cisco and/or its affiliates. All rights reserved. Cisco Public

PCE Models

• ABRs act as stateless PCEs

• ABRs implement backward recursive PCE-Based Computation

ApplicationPath

Request

BGP-LS /

SNMP / CLI

PCEP

Stateful PCE

(NS-OS)

TED

LSP DB

WAN

Orchestration

Statef

ul

PCC

Stateless

PCCArea 1 Area 2

Area

0

BGP-LS /

SNMP / CLI

Stateless PCE

TED

PCEP

PCE-initiated

LSP

PCC-

initiated LSP

Stateless PCC Area 1 Area 2

Area

0Stateless PCE

(ABR)

Stateless PCE

(ABR)PCEP

PCEP

PCC-initiated

LSP

Inter-Area MPLS TE

• Out-of-network, stateful PCE server

• PCE always initiates LSPs

• Out-of-network, stateless PCE server

• PCC initiates LSPs

BRKSPG-2210 66

© 2016 Cisco and/or its affiliates. All rights reserved. Cisco Public

interface tunnel-te0

ipv4 unnumbered Loopback0

signalled-name bar

destination 10.0.0.101

pce

delegation

!

!

!

mpls traffic-eng

interface GigabitEthernet0/0/0/0

!

interface GigabitEthernet0/0/0/18

!

pce

peer ipv4 1.53.39.49

!

stateful-client

instantiation

delegation

!

!

auto-tunnel pcc

tunnel-id min 101 max 200

67BRKSPG-2210

PCEP Device Configuration

PCC Initiated LSP &

Delegated to PCE.

Configuration Not

Required in Case of PCE

initiated Tunnel

Global Configuration under

MPLS TE

PCE Modes: Stateful PCE

Initiated LSP or PCC Initiated

& Delegated to PCE

Tunnel ID Rance.

Add LSP by PCE.

PCE creates tunnel

using assign Tunnel

ID from given range

• PCE configuration will be done on each node under mpls traffic-eng

• Node 1 only requires BGP LS configuration

Node1 (PCC)

Node2

Node3

Lo: 10.0.0.102

Lo: 10.0.0.101

Lo: 10.0.0.100

Link: 10.0.3.0

.102

.101

Link: 10.0.1.0

.100

.101

.102

.100

Link: 10.0.2.0

Lo: 10.0.0.100

.100

.100

ODL (PCE)

PCEP

Postman

REST

© 2016 Cisco and/or its affiliates. All rights reserved. Cisco Public

PCEP ODL Configuration

opendaylight-user@root>feature:install odl-restconf odl-l2switch-switch odl-

mdsal-apidocs odl-dlux-all

opendaylight-user@root>feature:install odl-bgpcep-bgp-all odl-bgpcep-pcep-

all

Note: No Configuration Required. There is no need to Modify any file for on ODL for PCEP

BRKSPG-2210 68

ODL Beryllium

installation

PCEP installation

inside ODL

© 2016 Cisco and/or its affiliates. All rights reserved. Cisco Public

ODL Server:

root@ubuntu:~/distribution-karaf-0.4.2-Beryllium-SR2/bin$ netstat -an | grep 4189

tcp6 0 0 :::4189 :::* LISTEN

tcp6 0 0 1.53.39.49:4189 10.0.0.101:39330 ESTABLISHED

tcp6 0 0 1.53.39.49:4189 10.0.0.100:55641 ESTABLISHED

tcp6 0 0 1.53.39.49:4189 10.0.0.102:14570 ESTABLISHED

Node 1:

RP/0/RSP0/CPU0:ASR9K0#show mpls traffic-eng pce peer

Address Precedence State Learned From

--------------- ------------ ------------ --------------------

1.53.39.49 255 Up Static config

69BRKSPG-2210

PCEP Verification

Verifying PCEP session

on the server ( PCE)

Verifying PCEP session

on the PCC

© 2016 Cisco and/or its affiliates. All rights reserved. Cisco Public

interface tunnel-te0

ipv4 unnumbered Loopback0

signalled-name bar

destination 10.0.0.101

pce

delegation

!

!

!

mpls traffic-eng

interface GigabitEthernet0/0/0/0

!

interface GigabitEthernet0/0/0/18

!

pce

peer ipv4 1.53.39.49

!

stateful-client

instantiation

delegation

!

!

auto-tunnel pcc

tunnel-id min 101 max 200

70BRKSPG-2210

PCEP Example 1: PCC Initiated Tunnel (RSVP TE) & Path Computation from PCE via Update LSP

PCC Initiated LSP &

Delegated to PCE.

Configuration Not

Required in Case of PCE

initiated Tunnel

Global Configuration under

MPLS TE

PCE Modes: Stateful PCE

Initiated LSP or PCC Initiated

& Delegated to PCE

Tunnel ID Rance.

Add LSP by PCE.

PCE creates tunnel

using assign Tunnel

ID from given range

• PCE configuration will be done on each node under mpls traffic-en

Node1 (PCC)

Node2

Node3

Lo: 10.0.0.102

Lo: 10.0.0.101

Lo: 10.0.0.100

Link: 10.0.3.0

.102

.101

Link: 10.0.1.0

.100

.101

.102

.100

Link: 10.0.2.0

Lo: 10.0.0.100

.100

.100

ODL (PCE)

PCEP

Postman

REST

© 2016 Cisco and/or its affiliates. All rights reserved. Cisco Public

PCE Update LSP: PCE Path Computation

71BRKSPG-2210

Node1

Node2

Node3

Lo: 10.0.0.102

Lo: 10.0.0.101

Lo: 10.0.0.100.100

.101

.100

ODL

PCEP

Postman

REST JSON/XML

Lo: 10.0.0.100

Tunnel Te0

http://admin:[email protected]:8181/restconf/operations/network-topology-

pcep:update-lsp

{

"input" : {

"node" : "pcc://10.0.0.100",

"name" : "foo",

"network-topology-ref": "/network-topology:network-topology/network-

topology:topology[network-topology:topology-id=\"pcep-topology\"]",

"arguments": {

"lsp": {

"administrative": "true",

"delegate": "true"

},

"ero" : {

"subobject" : [

{

"loose" : "false",

"ip-prefix" : { "ip-prefix" : "10.0.2.102/32" }

},

{

"loose" : "false",

"ip-prefix" : { "ip-prefix" : "10.0.3.101/32" }

},

{

"loose" : "false",

"ip-prefix" : { "ip-prefix" : "10.0.0.101/32" }

}

]

}

}

}

IP address explicit

path

PCC node

© 2016 Cisco and/or its affiliates. All rights reserved. Cisco Public

RP/0/RSP0/CPU0:ASR9K0#sh mpls traffic-eng tunnels 1 detail

Name: tunnel-te1 Destination: 10.0.0.101 Ifhandle:0x160

Signalled-Name: foo

Status:

Admin: up Oper: up Path: valid Signalling: connected

path option 10, (verbatim) type explicit (autopcc_te1) (Basis for Setup, path weight 0)

G-PID: 0x0800 (derived from egress interface properties)

Bandwidth Requested: 0 kbps CT0

Creation Time: Wed Jun 15 23:49:36 2016 (17:58:27 ago)

Config Parameters:

Bandwidth: 0 kbps (CT0) Priority: 7 7 Affinity: 0x0/0xffff

Metric Type: TE (global)

Path Selection:

Tiebreaker: Min-fill (default)

Hop-limit: disabled

Cost-limit: disabled

Path-invalidation timeout: 10000 msec (default), Action: Tear (default)

AutoRoute: enabled LockDown: disabled Policy class: not set

Forward class: 0 (default)

Forwarding-Adjacency: disabled

Autoroute Destinations: 0

Loadshare: 0 equal loadshares

Auto-bw: disabled

Fast Reroute: Disabled, Protection Desired: None

Path Protection: Not Enabled

BFD Fast Detection: Disabled

Reoptimization after affinity failure: Enabled

Soft Preemption: Disabled

72BRKSPG-2210

PCEP Update LSP: VerificationPCE Delegation:

Symbolic name: foo

PCEP ID: 2

Delegated to: 1.53.39.49

SNMP Index: 39

Binding SID: 24004

History:

Tunnel has been up for: 02:05:43 (since Thu Jun 16 15:42:20 UTC 2016)

Current LSP:

Uptime: 02:05:43 (since Thu Jun 16 15:42:20 UTC 2016)

Current LSP Info:

Instance: 2, Signaling Area: PCE controlled

Uptime: 02:05:43 (since Thu Jun 16 15:42:20 UTC 2016)

Outgoing Interface: GigabitEthernet0/0/0/18, Outgoing Label: 24004

Router-IDs: local 10.0.0.100

downstream 10.0.0.102

Soft Preemption: None

SRLGs: not collected

Path Info:

Outgoing:

Explicit Route:

Strict, 10.0.2.102

Strict, 10.0.3.101

Strict, 10.0.0.101

Record Route: Disabled

Tspec: avg rate=0 kbits, burst=1000 bytes, peak rate=0 kbits

Session Attributes: Local Prot: Not Set, Node Prot: Not Set, BW Prot: Not Set

Soft Preemption Desired: Not Set

------- Output Trim -------

Tunnel is up and

connected Tunnel is delegated

to PCE

PCE control

Explicit path

© 2016 Cisco and/or its affiliates. All rights reserved. Cisco Public

interface tunnel-te100

ipv4 unnumbered Loopback0

signalled-name SRTE

destination 10.0.0.101

pce

delegation

!

!

!

mpls traffic-eng

interface GigabitEthernet0/0/0/0

!

interface GigabitEthernet0/0/0/18

!

pce

peer ipv4 1.53.39.49

!

segment-routing

stateful-client

instantiation

delegation

!

!

auto-tunnel pcc

tunnel-id min 101 max 200

73BRKSPG-2210

PCEP Example 2: PCE Initiated Tunnel (SR TE): Add LSP Operation

PCC Initiated LSP &

Delegated to PCE.

Configuration Not

Required in Case of PCE

initiated Tunnel

Global Configuration under

MPLS TE

PCE Modes: Stateful PCE

Initiated LSP or PCC Initiated

& Delegated to PCE

Tunnel ID Rance.

Add LSP by PCE.

PCE creates tunnel

using assign Tunnel

ID from given range

• PCE configuration will be done on each node under mpls traffic-en

Node1 (PCC)

Node2

Node3

Lo: 10.0.0.102

SID: 16002

Lo: 10.0.0.101

SID: 16002

Lo: 10.0.0.100

Link: 10.0.3.0

.102

.101

Link: 10.0.1.0

.100

.101

.102

.100

Link: 10.0.2.0

Lo: 10.0.0.100

SID: 16001

.100

.100

ODL (PCE)

PCEP

Postman

REST

© 2016 Cisco and/or its affiliates. All rights reserved. Cisco Public

PCE Initiated Tunnel: Add LSP Operation

74BRKSPG-2210

Node1

Node2

Node3

Lo: 10.0.0.102

SID: 16003

Lo: 10.0.0.101

SID: 16002

Lo: 10.0.0.100.100

.101

.100

ODL

PCEP

Postman

REST JSON/XML

Lo: 10.0.0.100

SID: 16001

"ero": {

"subobject": [

{

"loose": false,

"m-flag": true,

"sid": 16002,

"sid-type": "ipv4-node-id"

},

{

"loose": false,

"m-flag": true,

"sid": 16001,

"sid-type": "ipv4-node-id"

}

]

},

"path-setup-type": {

"pst": 1

}

}

}

}

http://admin:[email protected]:8181/restc

onf/operations/network-topology-pcep:add-lsp

{

"input" : {

"node" : "pcc://10.0.0.102",

"name" : "SRTE-Labels-WebJSON",

"network-topology-ref": "/network-

topology:network-topology/network-

topology:topology[network-topology:topology-

id=\"pcep-topology\"]",

"arguments": {

"lsp": {

"administrative": true,

"delegate": true

},

"lspa": {

"hold-priority": 0,

"include-any": 0,

"setup-priority": 0

},

"endpoints-obj": {

"ipv4": {

"destination-ipv4-address":

"10.0.0.100",

"source-ipv4-address": "10.0.0.102"

}

},

LSP Path

© 2016 Cisco and/or its affiliates. All rights reserved. Cisco Public

Name: tunnel-te106 Destination: 10.0.0.100 Ifhandle:0x2e0 (auto-tunnel pcc)

Signalled-Name: SRTE-Labels-WebJSON

Status:

Admin: up Oper: up Path: valid Signalling: connected

path option 10, (Segment-Routing) type explicit (autopcc_te106) (Basis for Setup)

Protected-by PO index: none

G-PID: 0x0800 (derived from egress interface properties)

Bandwidth Requested: 0 kbps CT0

Creation Time: Thu Jun 16 21:41:30 2016 (00:00:39 ago)

Config Parameters:

Bandwidth: 0 kbps (CT0) Priority: 0 0 Affinity: 0x0/0x0

Metric Type: TE (global)

Path Selection:

Tiebreaker: Min-fill (default)

Protection: any (default)

Hop-limit: disabled

Cost-limit: disabled

Path-invalidation timeout: 10000 msec (default), Action: Tear (default)

AutoRoute: disabled LockDown: disabled Policy class: not set

Forward class: 0 (default)

Forwarding-Adjacency: disabled

Autoroute Destinations: 0

Loadshare: 0 equal loadshares

Auto-bw: disabled

Path Protection: Not Enabled

BFD Fast Detection: Disabled

Reoptimization after affinity failure: Enabled

SRLG discovery: Disabled

75BRKSPG-2210

PCEP Add LSP: VerificationAuto PCC:

Symbolic name: SRTE-Labels-WebJSON

PCEP ID: 107

Delegated to: 1.53.39.49

Created by: 1.53.39.49

PCE Delegation:

Symbolic name: SRTE-Labels-WebJSON

PCEP ID: 107

Delegated to: 1.53.39.49

SNMP Index: 49

Binding SID: 24015

History:

Tunnel has been up for: 00:00:39 (since Thu Jun 16 21:41:30 UTC 2016)

Current LSP:

Uptime: 00:00:39 (since Thu Jun 16 21:41:30 UTC 2016)

Prior LSP:

ID: 2 Path Option: 10

Removal Trigger: reoptimization completed

Current LSP Info:

Instance: 3, Signaling Area: PCE controlled

Uptime: 00:00:39 (since Thu Jun 16 21:41:30 UTC 2016)

Soft Preemption: None

SRLGs: not collected

Path Info:

Segment-Routing Path Info (PCE controlled)

Segment0[Node]: 10.0.0.101, Label: 16002

Segment1[Node]: 10.0.0.100, Label: 16001

Displayed 1 (of 2) heads, 0 (of 1) midpoints, 0 (of 0) tails

Displayed 1 up, 0 down, 0 recovering, 0 recovered heads

Tunnel is created

and controlled by

PCE

Explicit pathUp and connected

Initiated by PCE

© 2016 Cisco and/or its affiliates. All rights reserved. Cisco Public 76BRKSPG-2210

PCEP Example 3: Remove LSP Operation

• PCE configuration will be done on each node under mpls traffic-en

Node1 (PCC)

Node2

Node3

Lo: 10.0.0.102

SID: 16002

Lo: 10.0.0.101

SID: 16002

Lo: 10.0.0.100

Link: 10.0.3.0

.102

.101

Link: 10.0.1.0

.100

.101

.102

.100

Link: 10.0.2.0

Lo: 10.0.0.100

SID: 16001

.100

.100

ODL (PCE)

PCEP

Postman

REST

Putting it all together

© 2016 Cisco and/or its affiliates. All rights reserved. Cisco Public

Backbone SR MetroSR Metro

Putting it all together– Agile Carrier EthernetExtending Segment Routing into Carrier Ethernet Access Network

Static

Label

REST

BGP-LS

BGP-LU

PortalPartner API

Customer_E-LINE

NSO IOS-XRv+

Static

LabelBGP-LS

BGP-LU

BGP-LU

BRKSPG-2210 78

Agile Carrier Ethernet

- Programmable transport- Device level Programmability - Network level Programmability

• Results in:

• Connect the Application to the infrastructure

• Reduce opex by simplifying network operation

• Enable fast service deployment

© 2016 Cisco and/or its affiliates. All rights reserved. Cisco Public

Use BGP-LS and build a Topology Database

79BRKSPG-2210

• One BGP-LS speaker per domain

• Collects LS for the all IGP domain

• Scalable solution

• Topology can be shared northbound

• Share the topology with other apps.

• XTC preferred

• Topology information shared with WAE/NSO through Netconf/yang

TopologyDatabase

Wan Optimization WAE

Controller ODL

vRouter XRv9000 XTC

IGP-SR

Domain AIGP-SR

Domain B

ABR 1

BGP-LS BGP-LS

Speaker

ABR 2

Speaker

BGP-LS

In Bold , design recommendation

© 2016 Cisco and/or its affiliates. All rights reserved. Cisco Public

Enable Path Computation and Engineer the network

80BRKSPG-2210

IGP-SR

Domain AIGP-SR

Domain B

ABR 1

BGP-LS BGP-LS

Speaker

ABR 2

Speaker

PCC

PCEP

BGP-LS

• Rely on SR-TE

• Path and tunnel computation

• Program TE tunnels

• Source, Destination explicit route pathWan Optimization WAE

Controller ODL

vRouter XRv9000 XTC

Controller ODL

vRouter XRv9000 XTC

In Bold , design recommendation

© 2016 Cisco and/or its affiliates. All rights reserved. Cisco Public

Enable Path Computation and Engineer the network

81BRKSPG-2210

IGP-SR

Domain AIGP-SR

Domain B

ABR 1

BGP-LS BGP-LS

Speaker

ABR 2

Speaker

PCC

PCEP

BGP-LS

• For inter domain optimization, use WAE

• WAN Optimization, Bandwidth Calendaring

• GUI Interface

• Analytics

• Network Topology

• XTC shares Topology information through Netconf/Yang

Wan Optimization WAE

Controller ODL

vRouter XRv9000 XTC

Controller ODL

vRouter XRv9000 XTC

In Bold , design recommendation

Controller ODL

vRouter XRv9000 XTC

Controller ODL

vRouter XRv9000 XTC

Controller ODL

vRouter XRv9000 XTC

Controller ODL

vRouter XRv9000 XTC

Controller ODL

vRouter XRv9000 XTC

Controller ODL

vRouter XRv9000 XTCWan Optimization WAE

NETCONF/YANG

© 2016 Cisco and/or its affiliates. All rights reserved. Cisco Public

Service Creation

82BRKSPG-2210

IGP-SR

Domain AIGP-SR

Domain B

ABR 1

BGP-LS BGP-LS

Speaker

ABR 2

Speaker

PCC

PCEP

BGP-LS

Wan Optimization WAE

Controller ODL

vRouter XRv9000 XTC

Controller ODL

vRouter XRv9000 XTC

In Bold , design recommendation

Controller ODL

vRouter XRv9000 XTC

Controller ODL

vRouter XRv9000 XTC

Controller ODL

vRouter XRv9000 XTC

Controller ODL

vRouter XRv9000 XTC

Controller ODL

vRouter XRv9000 XTC

Controller ODL

vRouter XRv9000 XTCWan Optimization WAE

NETCONF/YANG

• Service creation with NSO

• Yang model service definition

• Service Options:

• MEF services (ELINE, ELAN)

• Business Services ( VPNs)

• Residential Services

• Consistent service definition

• Multi vendor environment

• Northbound interface for Apps

Orchestrator NSO

REST

Applications RSD

© 2016 Cisco and/or its affiliates. All rights reserved. Cisco Public

Summary

• Automation

• Configuration through Netconf/Yang Models

• Network Simplification with Segment Routing

• Enable Topology Discovery

• Enable inter Domains Traffic Engineering

BRKSPG-2210

Core

Access Domain B

Access Domain C

Programmatic Approach

1- Automate the network setup

3- Simplify MPLS transport with Segment routing

4- Turn on BGP-LS

5- Turn on PCEP

BRKSPG-2210 83

2- Use of Netconf/Yang

Controllers, Orchestrators

© 2016 Cisco and/or its affiliates. All rights reserved. Cisco Public

References

• Agile Carrier Ethernet Demonstration on Youtube -https://www.youtube.com/watch?v=biYqyAn9rl0

• Segment Routing .net - http://www.segment-routing.net/

• Segment Routing Demo Friday - https://www.sdxcentral.com/resources/sdn-demofriday/segment-routing-cisco-demofriday/

• Cisco Programmability Yang blog - http://blogs.cisco.com/tag/yang

• Tail-f netconf yang tutorials - http://www.tail-f.com/education/

• BGP-LS linkedin blog: https://www.linkedin.com/pulse/introduction-open-api-bgp-link-state-bgp-ls-source-controller-abeer?trk=prof-post

• Netconf linkedin blog: https://www.linkedin.com/pulse/netconf-rfc-6242-protocol-tutorial-ahmed-n-abeer?trk=prof-post

BRKSPG-2210 84

© 2016 Cisco and/or its affiliates. All rights reserved. Cisco Public

Complete Your Online Session Evaluation

Don’t forget: Cisco Live sessions will be available for viewing on-demand after the event at CiscoLive.com/Online

• Give us your feedback to be entered into a Daily Survey Drawing. A daily winner will receive a $750 Amazon gift card.

• Complete your session surveys through the Cisco Live mobile app or from the Session Catalog on CiscoLive.com/us.

BRKSPG-2210 85

© 2016 Cisco and/or its affiliates. All rights reserved. Cisco Public

Continue Your Education

• Demos in the Cisco campus

• Walk-in Self-Paced Labs

• Lunch & Learn

• Meet the Engineer 1:1 meetings

• Related sessions

BRKSPG-2210 86

Please join us for the Service Provider Innovation Talk featuring:

Yvette Kanouff | Senior Vice President and General Manager, SP Business

Joe Cozzolino | Senior Vice President, Cisco Services

Thursday, July 14th, 2016

11:30 am - 12:30 pm, In the Oceanside A room

What to expect from this innovation talk

• Insights on market trends and forecasts

• Preview of key technologies and capabilities

• Innovative demonstrations of the latest and greatest products

• Better understanding of how Cisco can help you succeed

Register to attend the session live now or

watch the broadcast on cisco.com

Thank you