Segment Routing - Interdomain Traffic Engineering Using SR PCE With Lab Demo
Segment Routing - Interdomain Traffic Engineering Using SR PCE With Lab Demo
demo
Parag Sharma
Solutions Architect
Agenda
SR Policy Building Blocks
On-Demand Next hop (Single and Multidomain)
SR-PCE
SR-PCE Path Computation Flow
SR-PCE Distributed Design
LAB Use cases
SR Policy
SR Policy Identification
• An SR Policy is uniquely identified by a tuple
(head-end, color, end-point)
Head-end: where the SR Policy is instantiated (implemented)
Color: a numerical value to differentiate multiple SRTE Policies between the
same pair of nodes
End-point: the destination of the SR Policy
• At a given head-end, an SR
SR Policy
Policy
SR Policy is uniquely identified (1,
(1, green,
green, 4)
4)
2 3 4
by a tuple (color, end-point) Head-end:
Head-end: 11
Color:
Color: green
green 1
End-point:
End-point: 44
7 6 5
SR Policy – Candidate Paths
• An SR Policy consists of one or more candidate paths (Cpaths)
SR Policy Cpath11
Cpath22 Candidate
... Paths
Cpathnn
• An SR Policy instantiates one single path in RIB/FIB
• the selected* path, which is the preferred valid candidate path
• A candidate path is either dynamic or explicit
* See further.
SR-Policy – Candidate path …cont
SID-list
SID-list1111
<16003,
<16003,
16004>
16004>
VALID
SR
SR Policy
Policy Cpath
Cpath11 Weight
Weight 11
(( Head,
Head, Color,
Color, End
End )) Pref
Pref 110
110 SID-list
SID-list1212
<16004>
<16004>
Provided by
Weight
Weight 44 e.g. local configuration
SID-list
SID-list2121
VALID
Cpath
Cpath22
<16004>
<16004>
Pref
Pref 100
100
✔
SID-list
SID-list3131
Provided by
VALID
Cpath
Cpath33 <16005,
<16005,
Pref
Pref 200
200
16004>
16004> e.g. Dynamic SRTE
Weighted ECMP (WECMP)
• If a set of SID-lists is associated with the selected path of the SR Policy,
then the steering is flow and WECMP-based according to the relative
weight of each SID-list
SID-list
SID-list11:: 1/5
<16003,
<16003, of load
16004>
16004>
2
20
3 W e ight x
10GE
å W e ighti
Weight
Weight 11
Selected
Selected
SR
SR Policy
Policy Path
Path 1 4
i=1...n
SID-list
SID-list22:: 40GE
<16004>
<16004> 4/5 6 5
Weight
Weight 44 of load
Default link metric: 10
Binding-SID is fundamental to SR
• The Binding-SID is fundamental to SR, it provides scaling, network
opacity and service independence
• Use of BSID decreases the number of segments imposed by the source
• A BSID acts as a stable anchor point that isolates one domain from the churn
of another domain
• A BSID provides opacity and independence between domains
Binding-SID (BSID)
• The BSID of the SR Policy selected path is installed in the forwarding
table
• Remote steering
• A packet arriving on the SR Policy head-end with
the BSID as Active Segment (top of label stack) is BSID SID-list
steered into the SR Policy associated with the BSID
• Local steering
• A packet that matches a forwarding entry that Prefix
resolves on the BSID of an SR Policy is steered
into that SR Policy
BSID SID-list
Active SR Policy – FIB entry
20
2 10GE
3
Selected SID-list:
SID-list:
Selected
SR
SR Policy
Policy Path
Path
<16003,
<16003, 1 4
16004>
16004>
BSID:
BSID: 40GE
40104
40104 6 5
Default link metric: 10
segment-routing
traffic-eng
SID-list1
SID-list1 affinity-map
color red bit-position 0
On-Demand Nexthop (ODN)
On-Demand Nexthop
• A service head-end automatically instantiates an SR Policy to a BGP
next-hop when required (on-demand)
• Color community is used as SLA indicator
• Reminder: an SR Policy is defined (color, end-point)
Delivers across the unified SR Fabric the SLA requested by the Collect Deploy
service PCEP
IGP
BGP-LS
Benefits BGP
© 2017 Cisco and/or its affiliates. All rights reserved. Cisco Confidential
BGP-LS Overview
• Optimal Path Computation for Multi-area TE PCE
Traffic
Engineering
Databse (TED)
• Solution is BGP, not IGP.
• BGP-LS is an address-family
• afi=16388, safi=71
BGP-LS
agents
Domain 1 Domain 2
SR PCE and Multi-domain
• When advertising multiple topologies/domains in BGP-LS, each
topology/domain must have a unique instance-id
• Instance-id identifies a “routing universe”
• Default: 0 – Value range ISIS: <2-65535>; OSPF: <0-4294967295>
• Values 1-31 should not be used
• RFC7752: Values in the range 32 to 264-1 are for "Private Use"
For example, on the BGP-LS node in Domain1:
router isis Domain1 distribute link-state instance-id 32
5 74
6 I:100
7 I:100
8
Domain1 Domain2
6 I:100
7 I:100
8
Domain1 Domain2
1 I:100
2 1
I:100
3
➎ SID-list:
<30102, 16003>
FIB table at Node1
SRTE: 4001: Push <30102, 16003>
30203> 5 74
BSID
6 I:100
7 I:100
8
Domain1 Domain2
activates SR Policy
➍ PCRept
• ➍ Node1 reports SR Policy to both SR PCE1 “delegate” (D:1)
and SR PCE2 and delegates control of the SR
Policy to SR PCE1 (“delegate” (D:1)) 1 I:100
2 I:100
3
➌
5 74
➍ PCRept
(D:0)
PCE
2 6 I:100
7 I:100
8
Domain1 Domain2
PCE
2 6 I:100
7 I:100
8
Domain1 Domain2
RR RR RR
2 4 5
1
6
3
SR SR SR SR SR SR
PCE PCE PCE PCE PCE PCE
BGP-LS
Transport Programmability – SRTE Policy
NSO
BGP-LS
SR-PCE RR SR-PCE
PCEP/BGP
Anycast-SID Anycast-SID
PE3 PE5
A1 Access Core Access A6
PE2 PE4
IGP SR (ISIS/OSPF) – Intra-Domain LSP IGP SR (ISIS/OSPF) – Intra-Domain LSP IGP SR (ISIS/OSPF) – Intra-Domain LSP
TI-LFA
TI-LFA End-To-End, Each IGP Domain Independently
TI-LFA
PE2/PE3 SR PHP PE4/PE5 SR PHP A6 SR PHP
PE4/PE5 SR PE4/PE5 SR A6 SR A6 SR Service Service
A6 SR A6 SR Service Service
Service Service
Lab Use case
Lab Topology
PCE1 PCE2
R1 R4-Inline RR R7
Ge0/0/0/2 Ge0/0/0/1 Ge0/0/0/2 Ge
Ge0/0/0/4 0/0
Ge /0/
Ge 0 3
0/0
/0/ 0
0/0
/0/ /0/0/
Ge0/0/0/1
Ge0/0/0/2
Ge0/0/0/0
1 0/ 3 Ge
0
/0/
1 0/ Ge
Ge R5 0/0 Ge
0/
Ge
0/ R6-PCE 0/
2
0/1
0/0
/0/ Ge 0/ 0/
0/ 0/
4 1 Ge CE2
Ge
Ge0/0/0/0 0/2 0/ 0/
2
Ge0/0/0/0
Ge0/0/0/0
0/0 Ge
0/0/ /3 /0 0/ Ge
Ge /0 /0 0/ Ge0
3 0 0/ /0/
Ge /0/ Ge 3 0/
CE1 /0/
0/2 0/0
/0/ Ge
0/ 0 2
0 2
Ge0/2 Ge0/0/0/3 Ge 0/3
0/0/
Ge0/0/0/1 Ge0/0/0/1 Ge0/0/0/4 Ge0/0/0/1 Ge
Ge0/0/0/5
R2 R3 Inline RR R8
CE3 Ge0/1
ISIS AGG ISIS CORE
BGP LU RFC3107
Lab Topology With IGP Metric
PCE1 PCE2
R1 R4 R7
10 10
10 R5 10 10
10
10 10 CE2
1000 1000
1000 1000 R6-PCE
CE1
1000 1000
R2 R3 R8
CE3
Lab Topology With Latency
PCE1 PCE2
R1 R4 R7
100 100
10 0 10 0
0 R5 10 0 10
100 CE2
100
1 1 1
1 R6-PCE
CE1
1 1
R2 R3 R8
Latency configured on each link
CE3
Use Cases
• Usecase1: Distributed PCE design Architecture and PCE redundancy
• Usecase2: Interdomain disjoint path SRTE ODN policy is configured on R1 and R2. R1 is using XTC2 as primary
PCE and R2 is using XTC1 as primary PCE. Disjoint path are configured on R1 and R2 with group ID 1 and
color 600. Task is to ensure path are disjoint in nature along with verification of state sync on PCE
• Usecase3: Network slicing Demonstration for interdomain SRTE with metric type as IGP and metric Type as
Latency with SR-PM. R2 will be headend and R8 will be tail end router. Color used would be 800 and 850.
Task is to verify diverse path is taken by both the traffic flow
• Usecase4: Network slicing Demonstration for interdomain SRTE with Affinities. R2 will be headend and R8
will be tail end router. Affinity RED is configured on the path R2<->R5<->R4<->R6<->R8. ODN with color 111
is configured to include RED affinity link only. This will be used to steer traffic via the R2<->R5<->R4<->R6<-
>R8 Path. Another ODN policy with color 110 is configured between same source and destination routers to
use shortest IGP path. Task is to verify diverse path is taken by both the traffic flow
• Usecase5: Dual home Customer is connected on R7 and R8 and advertising same subnet. On R1 ODN policy
with color 78 is configured. Task is to verify whether we achieve load balancing of traffic based on metric and
BGP max-path.