Professional Documents
Culture Documents
Americas Headquarters
Cisco Systems, Inc.
170 West Tasman Drive
San Jose, CA 95134-1706
USA
http://www.cisco.com
Tel: 408 526-4000
800 553-NETS (6387)
Fax: 408 527-0883
THE SPECIFICATIONS AND INFORMATION REGARDING THE PRODUCTS IN THIS MANUAL ARE SUBJECT TO CHANGE WITHOUT NOTICE. ALL STATEMENTS,
INFORMATION, AND RECOMMENDATIONS IN THIS MANUAL ARE BELIEVED TO BE ACCURATE BUT ARE PRESENTED WITHOUT WARRANTY OF ANY KIND,
EXPRESS OR IMPLIED. USERS MUST TAKE FULL RESPONSIBILITY FOR THEIR APPLICATION OF ANY PRODUCTS.
THE SOFTWARE LICENSE AND LIMITED WARRANTY FOR THE ACCOMPANYING PRODUCT ARE SET FORTH IN THE INFORMATION PACKET THAT SHIPPED WITH
THE PRODUCT AND ARE INCORPORATED HEREIN BY THIS REFERENCE. IF YOU ARE UNABLE TO LOCATE THE SOFTWARE LICENSE OR LIMITED WARRANTY,
CONTACT YOUR CISCO REPRESENTATIVE FOR A COPY.
The Cisco implementation of TCP header compression is an adaptation of a program developed by the University of California, Berkeley (UCB) as part of UCB's public domain version
of the UNIX operating system. All rights reserved. Copyright © 1981, Regents of the University of California.
NOTWITHSTANDING ANY OTHER WARRANTY HEREIN, ALL DOCUMENT FILES AND SOFTWARE OF THESE SUPPLIERS ARE PROVIDED “AS IS" WITH ALL FAULTS.
CISCO AND THE ABOVE-NAMED SUPPLIERS DISCLAIM ALL WARRANTIES, EXPRESSED OR IMPLIED, INCLUDING, WITHOUT LIMITATION, THOSE OF
MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT OR ARISING FROM A COURSE OF DEALING, USAGE, OR TRADE PRACTICE.
IN NO EVENT SHALL CISCO OR ITS SUPPLIERS BE LIABLE FOR ANY INDIRECT, SPECIAL, CONSEQUENTIAL, OR INCIDENTAL DAMAGES, INCLUDING, WITHOUT
LIMITATION, LOST PROFITS OR LOSS OR DAMAGE TO DATA ARISING OUT OF THE USE OR INABILITY TO USE THIS MANUAL, EVEN IF CISCO OR ITS SUPPLIERS
HAVE BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGES.
Any Internet Protocol (IP) addresses and phone numbers used in this document are not intended to be actual addresses and phone numbers. Any examples, command display output, network
topology diagrams, and other figures included in the document are shown for illustrative purposes only. Any use of actual IP addresses or phone numbers in illustrative content is unintentional
and coincidental.
Cisco and the Cisco logo are trademarks or registered trademarks of Cisco and/or its affiliates in the U.S. and other countries. To view a list of Cisco trademarks, go to this URL: http://
www.cisco.com/go/trademarks. Third-party trademarks mentioned are the property of their respective owners. The use of the word partner does not imply a partnership
relationship between Cisco and any other company. (1110R)
CHAPTER 1 Overview 1
Cisco Evolved Programmable Network 1
Related Documentation 1
Large Network End to End Programmable Segment Routing Deployment Model 2
Cisco Evolved Programmable Network Implementation Guide for Large Network with End to End Programmable
Segment Routing, Release 5.0
iii
Contents
Cisco Evolved Programmable Network Implementation Guide for Large Network with End to End Programmable
Segment Routing, Release 5.0
iv
CHAPTER 1
Overview
This chapter contains the following sections:
Related Documentation
To explore the transport design, service design, reference Network Service Orchestrator (NSO) user guide
and reference system test topology of Cisco EPN, you can refer to the guides given below:
• Transport Design Guide
• Services Design Guide
• Network Service Orchestrator User Guide
• System Test Topology Reference Guide
In addition to the Large Network End to End Programmable Segment Routing deployment model, the Cisco
EPN can be implemented with one of the following deployment models:
• Large Network - End to End Segment Routing
Cisco Evolved Programmable Network Implementation Guide for Large Network with End to End Programmable
Segment Routing, Release 5.0
1
Overview
Large Network End to End Programmable Segment Routing Deployment Model
Cisco Evolved Programmable Network Implementation Guide for Large Network with End to End Programmable
Segment Routing, Release 5.0
2
CHAPTER 2
Transport Configuration
This chapter contains the following sections:
Device Roles
Each deployment model has various device roles such as access PE, pre-aggregation PE, aggregation PE, core
PE, route reflector, and so on. In the following section, the transport configuration pertinent to
programmable-transport with segment routing deployment model is captured. Multiple nodes take a particular
role in the network. Here, the sample transport configuration of one of those nodes is captured. It does not
provide the entire configuration such as IGP, BGP, route-policy, and prefix-list for a particular node. The
configuration such as IGP configuration associated to one of the interfaces is only captured to avoid duplication.
Cisco Evolved Programmable Network Implementation Guide for Large Network with End to End Programmable
Segment Routing, Release 5.0
3
Transport Configuration
Core Node Configuration
The core nodes are running IGP with segment routing, traffic engineering and Topology-Independent loop
free alternative for faster convergence.
segment-routing
global-block 16000 32000
!
Cisco Evolved Programmable Network Implementation Guide for Large Network with End to End Programmable
Segment Routing, Release 5.0
4
Transport Configuration
Core ABR Node Configuration
mpls traffic-eng
interface Bundle-Ether21
!
interface Bundle-Ether41
!
interface Bundle-Ether51
!
Cisco Evolved Programmable Network Implementation Guide for Large Network with End to End Programmable
Segment Routing, Release 5.0
5
Transport Configuration
IGP Configuration
IGP Configuration
Two separate IGP instances are configured on the core ABR nodes towards the core and aggregation domains.
Segment routing are enabled for both the instances with redistribution enabled for ISIS link state into BGP-LS.
segment-routing
global-block 16000 32000
!
router isis core
set-overload-bit on-startup 360
is-type level-2-only
net 49.0000.0000.0000.0005.00
distribute bgp-ls instance-id 100
address-family ipv4 unicast
metric-style wide
mpls traffic-eng level-2-only
mpls traffic-eng router-id 100.0.5.0
segment-routing mpls
segment-routing prefix-sid-map receive
!
interface Bundle-Ether51
circuit-type level-2-only
bfd minimum-interval 15
bfd multiplier 3
point-to-point
address-family ipv4 unicast
fast-reroute per-prefix
fast-reroute per-prefix ti-lfa
!
interface Loopback0
passive
address-family ipv4 unicast
prefix-sid index 5
!
!
Cisco Evolved Programmable Network Implementation Guide for Large Network with End to End Programmable
Segment Routing, Release 5.0
6
Transport Configuration
BGP Configuration
circuit-type level-2-only
bfd minimum-interval 50
bfd multiplier 3
bfd fast-detect ipv4
point-to-point
address-family ipv4 unicast
fast-reroute per-prefix
fast-reroute per-prefix ti-lfa
!
mpls traffic-eng
interface Bundle-Ether51
!
interface Bundle-Ether65
!
interface TenGigE0/0/0/10
!
interface TenGigE0/0/0/21
!
interface TenGigE0/0/0/22
BGP Configuration
The BGP configuration involves implementing the following:
• BGP-LU session with transport route reflector.
• BGP-LU session with pre-aggregation inline route reflector.
• BGP Prefix-Independent Convergence (BGP-PIC).
Cisco Evolved Programmable Network Implementation Guide for Large Network with End to End Programmable
Segment Routing, Release 5.0
7
Transport Configuration
BGP Configuration
!
!
neighbor 100.0.11.0
use neighbor-group T-RR
description Transport RR1
!
neighbor 100.0.21.0
use neighbor-group T-RR
description Transport RR2
!
route-policy ADDPATH
set path-selection backup 1 install multipath-protect advertise
end-policy
!
Cisco Evolved Programmable Network Implementation Guide for Large Network with End to End Programmable
Segment Routing, Release 5.0
8
Transport Configuration
Aggregation ABR Node Configuration
The aggregation ABR nodes are running separate IGP instances for the aggregation and pre-aggregation
domains, while the BGP LU is configured for inter-domain routing.
The aggregation ABR node acts as a service edge node, to provide L3VPN service on PWHE interface.
To achieve programmable transport at the service edge, the configuration of BGP community, Multi-protocol
Label Switching Traffic Engineering (MPLS-TE) for Path Computation Element (PCE), and pertinent route
policies is required.
To ensure one way traffic, the configuration at the two service edge PEs, for example, aggregation ABRs is
required.
The source PE is a PE from which the SR-TE originates. The destination PE is the PE which is closer to the
customer. In this example, the source PE is 0909 and destination PE is 3004. The destination PE is configured
for traffic data collection from node 1107 to node 3103.
Cisco Evolved Programmable Network Implementation Guide for Large Network with End to End Programmable
Segment Routing, Release 5.0
9
Transport Configuration
IGP Configuration
IGP Configuration
Two separate IGP instances are configured on the aggregation ABR nodes towards the aggregation and
pre-aggregation domains. The segment routing and TI-LFA are enabled for both the instances with redistribution
enabled for ISIS link state into BGP LS.
segment-routing
global-block 16000 32000
!
Cisco Evolved Programmable Network Implementation Guide for Large Network with End to End Programmable
Segment Routing, Release 5.0
10
Transport Configuration
BGP Configuration
BGP Configuration
The BGP configuration can be implemented with the following:
• BGP-LU session with core ABR.
• BGP-LU session with pre-aggregation ABR.
• BGP-PIC.
• Redistribution of ABR’s loopback into BGP.
To achieve programmable transport, it needs BGP configuration from both the source PE and destination PE.
For example, the source PE is 0909 and destination PE is 3004. All the pieces of BGP configuration are
captured from node 0909. From the destination PE 3004, only the configuration needed to enable the
programmable transport with community is captured. For destination PE, the rest of the BGP configuration
is similar to source PE.
Cisco Evolved Programmable Network Implementation Guide for Large Network with End to End Programmable
Segment Routing, Release 5.0
11
Transport Configuration
BGP Configuration
neighbor-group RRC-Ring10
remote-as 100
update-source Loopback10
address-family ipv4 labeled-unicast
route-reflector-client
next-hop-self
!
!
neighbor 100.10.3.0
use neighbor-group RRC-Ring10
!
neighbor 100.10.4.0
use neighbor-group RRC-Ring10
!
route-policy ADDPATH
set path-selection backup 1 install multipath-protect advertise
end-policy
Note This configuration is required only for L3VPN on PWHE service, as the aggregation ABR nodes are
acting as service PE for PWHE interface. It is used to advertise the ABR's loopback to the service route
reflectors, to ensure reachability. For all other services, this neighborship configuration is not required.
Cisco Evolved Programmable Network Implementation Guide for Large Network with End to End Programmable
Segment Routing, Release 5.0
12
Transport Configuration
BGP Configuration
Note The route-policy with BGP community is sent to the source PE along with the vpnv4 unicast SAFI, and
the Segment Routing On-Demand Next-hop (SR-ODN) attribute is set for MPLS-TE. The BGP community
is set by the destination PE, which is the aggregation ABR on Ring30. The set SR-ODN attribute requests
the PCE path for SR-TE tunnel from the XTC. For the XTC to provide the optimal path for SR-TE tunnel,
the XTC needs to be aware of the link state database of Ring9 and Ring30. The BGP link-state (BGP-LS)
is enabled on the transport route reflectors, aggregation and core ABR's. The aggregation and core ABRs
feed the link state database to transport route reflector through BGP-LS. The XTC being the client of
transport route reflector receives the link state information to build SRTE path.
Cisco Evolved Programmable Network Implementation Guide for Large Network with End to End Programmable
Segment Routing, Release 5.0
13
Transport Configuration
MPLS Traffic Engineering and PCE Configuration
Note To trigger the programmable transport, setup the prefix list matching to the customer IP address at the
destination PE. As per the prefix-list, the community list is populated and passed as route-policy to the
source PE through virtual routing and forwarding (VRF). In this example, the destination PE is 3004 and
source PE is 0909 as depicted in the below figure.
mpls traffic-eng
interface TenGigE0/1/0/0
!
interface TenGigE0/1/0/1
!
interface TenGigE0/1/1/0
Cisco Evolved Programmable Network Implementation Guide for Large Network with End to End Programmable
Segment Routing, Release 5.0
14
Transport Configuration
Transport Route Reflector Configuration
!
pce
peer source ipv4 100.9.9.0
peer ipv4 100.0.100.0
!
segment-routing
stateful-client
!
!
auto-tunnel p2p
tunnel-id min 2000 max 3000
!
attribute-set p2p-te SET_SR_ODN
pce
!
path-selection
metric te
!
!
!
The transport route reflectors are deployed to advertise and learn the loopbacks of service route reflectors and
service edge nodes. The service edge nodes are access and aggregation ABRs.
Cisco Evolved Programmable Network Implementation Guide for Large Network with End to End Programmable
Segment Routing, Release 5.0
15
Transport Configuration
Core IGP Configuration
segment-routing
global-block 16000 32000
!
BGP Configuration
The transport route reflectors have:
• BGP-LU & LS sessions with all core ABRs, that act as inline route reflectors.
• BGP-LU sessions with service route reflectors.
• BGP LU & LS session with XTC.
Note For service route reflector redundancy, each transport route reflector is connected to both the service route
reflectors.
Cisco Evolved Programmable Network Implementation Guide for Large Network with End to End Programmable
Segment Routing, Release 5.0
16
Transport Configuration
BGP Configuration
!
address-family link-state link-state
route-reflector-client
!
!
neighbor 100.0.12.0
use neighbor-group RR-Client
!
neighbor 100.0.22.0
use neighbor-group RR-Client
!
!
route-policy skip-fib-download
drop
end-policy
Cisco Evolved Programmable Network Implementation Guide for Large Network with End to End Programmable
Segment Routing, Release 5.0
17
Transport Configuration
BGP Configuration
remote-as 100
update-source Loopback0
address-family ipv4 labeled-unicast
multipath
route-reflector-client
!
address-family link-state link-state
route-reflector-client
!
!
neighbor 100.0.100.0
use neighbor-group RR-Client
!
route-policy skip-fib-download
drop
end-policy
!
!
route-policy skip-fib-download
drop
end-policy
!
!
Cisco Evolved Programmable Network Implementation Guide for Large Network with End to End Programmable
Segment Routing, Release 5.0
18
Transport Configuration
XR Traffic Controller Configuration
pce
address ipv4 100.0.100.0
IGP Configuration
IGP is configured with segment routing to connect to the core network.
BGP Configuration
BGP LU and LS neighborship is configured towards transport route reflector to learn the PCC client's loopback
and the topology link state information.
Cisco Evolved Programmable Network Implementation Guide for Large Network with End to End Programmable
Segment Routing, Release 5.0
19
Transport Configuration
BGP Configuration
route-policy SET-SID($SID)
set label-index $SID
end-policy
!
Cisco Evolved Programmable Network Implementation Guide for Large Network with End to End Programmable
Segment Routing, Release 5.0
20
Transport Configuration
Service Route Reflector Configuration
The service route reflectors are deployed in the network to exchange the customer service routes such as
vpnv4, vpnv6, and l2vpn among the service edge nodes. The service edge nodes are access PE and aggregation
ABR.
Cisco Evolved Programmable Network Implementation Guide for Large Network with End to End Programmable
Segment Routing, Release 5.0
21
Transport Configuration
BGP Configuration
circuit-type level-2-only
address-family ipv4 unicast
metric 10000
!
!
segment-routing
global-block 16000 32000
!
BGP Configuration
The objectives of the service route reflector are as follows:
• To get all the service PE loopbacks, so that the services can be built end-to-end using the configuration
for BGP-LU neighborship with transport route reflector.
• To build BGP neighborship with service PE for various services such as vpnv4 and l2vpn. The service
edge node in this use case is aggregation ABR.
• It needs to be reachable to the service edge nodes through transport route reflector. For this, it is required
to redistribute the loopback into BGP with prefix-SID.
• Each service PE is connected to two service route reflectors. Each service route reflector is connected
to two transport route reflectors for creating path redundancy. The add path configuration is required to
create path redundancy.
Note For transport route reflector redundancy, each service route reflector is connected to both the transport
route reflectors.
Cisco Evolved Programmable Network Implementation Guide for Large Network with End to End Programmable
Segment Routing, Release 5.0
22
Transport Configuration
BGP Configuration
Note For service route reflector to build the BGP neighborship with service PE, it needs to have reachability
to the service edge nodes programmed in its forwarding table or forwarding information base (FIB). For
this reason, download to FIB is not prevented with any route-policy or routing-table policy on the services
route reflectors. In contrast, the FIB download can be safely disabled on the transport route reflectors.
Cisco Evolved Programmable Network Implementation Guide for Large Network with End to End Programmable
Segment Routing, Release 5.0
23
Transport Configuration
Access Provider Edge Configuration
!
route-policy SET-SID($SID)
set label-index $SID
end-policy
route-policy ADDPATH
set path-selection backup 1 install
end-policy
!
Cisco Evolved Programmable Network Implementation Guide for Large Network with End to End Programmable
Segment Routing, Release 5.0
24
Transport Configuration
IGP Configuration
Multiple nodes act as access PE in Ring11 and Ring31 shown in the below figure. Here, the configuration
data is collected from node 1107 of Ring11. Similar configuration is applicable for other access PE nodes,
for example, node 3103 in the network.
IGP Configuration
The access PEs’ have just one instance of the IGP.
segment-routing mpls
!
set-attributes
address-family ipv4
sr-label-preferred
exit-address-family
!
global-block 16000 32000
!
connected-prefix-sid-map
address-family ipv4
100.11.7.0/32 index 1107 range 1
exit-address-family
Cisco Evolved Programmable Network Implementation Guide for Large Network with End to End Programmable
Segment Routing, Release 5.0
25
Transport Configuration
BGP Configuration
!
!
BGP Configuration
The components of the access node BGP configuration are:
• BGP-LU neighborship towards pre-aggregation ABR nodes, which are acting as inline route reflector
with ingress prefix filter.
• BGP-PIC configuration to provide pre-aggregation ABR redundancy.
Note The ingress prefix list permits only the loopbacks of the service edge nodes where PWHE interface
terminates. The prefix list gets modified as part of service provisioning by NSO, to append the loopback
address of the service edge nodes on which the service is being configured.
Cisco Evolved Programmable Network Implementation Guide for Large Network with End to End Programmable
Segment Routing, Release 5.0
26
Transport Configuration
Multiprotocol Label Switching Configuration
Cisco Evolved Programmable Network Implementation Guide for Large Network with End to End Programmable
Segment Routing, Release 5.0
27
Transport Configuration
Multiprotocol Label Switching Configuration
Cisco Evolved Programmable Network Implementation Guide for Large Network with End to End Programmable
Segment Routing, Release 5.0
28
CHAPTER 3
Service Configuration
This chapter contains the following sections:
Configuration Settings
In this chapter, the configuration for all the applicable services in this deployment model are captured. The
services can be configured using the traditional CLI method or orchestrated by Cisco NSO with Yet Another
Next Generation (YANG) model.
Cisco Evolved Programmable Network Implementation Guide for Large Network with End to End Programmable
Segment Routing, Release 5.0
29
Service Configuration
Label Distribution Protocol Based VPWS Configuration
The access PEs are on rings, such as Ring11 and Ring 31 as shown in below figure. The node 1107 and node
3103 are configured for VPWS and the configuration data from 1107 is captured here.
interface GigabitEthernet0/0/2
service instance 2500 ethernet MAN_UC3_VPWS_SRODN_R11_N7_R9_N3
encapsulation dot1q 2500
xconnect 100.9.9.0 3909116301 encapsulation mpls pw-class MAN-PW-CLASS-MPLS
!
Cisco Evolved Programmable Network Implementation Guide for Large Network with End to End Programmable
Segment Routing, Release 5.0
30
Service Configuration
Aggregation ABR Configuration for L3-VPN on Pseudowire Headend Interface
vrf MAN_UC3_SRODN_L3VPN_VRF1
address-family ipv4 unicast
import route-target
100:2500
!
export route-target
100:2500
!
!
Cisco Evolved Programmable Network Implementation Guide for Large Network with End to End Programmable
Segment Routing, Release 5.0
31
Service Configuration
L3-VPN on Pseudowire Headend Interface
interface PW-Ether1107
attach generic-interface-list Ring10-IL
!
interface PW-Ether1107.2500
vrf MAN_UC3_SRODN_L3VPN_VRF1
ipv4 address 200.9.9.1 255.255.255.0
encapsulation dot1q 2500
!
generic-interface-list Ring10-IL
interface TenGigE0/1/1/0
!
l2vpn
pw-class PWHE
encapsulation mpls
control-word
xconnect group PWHE-Ring11
p2p 1107
interface PW-Ether1107
neighbor ipv4 100.11.7.0 pw-id 3909116301
pw-class PWHE
!
!
router bgp 100
vrf MAN_UC3_SRODN_L3VPN_VRF1
rd auto
address-family ipv4 unicast
redistribute connected route-policy SR_ODN_SET_Community
!
!
!
Cisco Evolved Programmable Network Implementation Guide for Large Network with End to End Programmable
Segment Routing, Release 5.0
32