segment routing co-existence with ldp · segment-routing mpls sr-prefer fib igp/sr and ldp...

of 27 /27
Clarence Filsfils Kris Michielsen Segment Routing Co-existence with LDP

Upload: others

Post on 13-Mar-2020

34 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Segment Routing Co-existence with LDP · segment-routing mpls sr-prefer FIB IGP/SR and LDP programming FIB • This diagram illustrates the behavior when preferring SR label imposition

Clarence Filsfils Kris Michielsen

Segment Routing Co-existence with LDP

v8

Page 2: Segment Routing Co-existence with LDP · segment-routing mpls sr-prefer FIB IGP/SR and LDP programming FIB • This diagram illustrates the behavior when preferring SR label imposition

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

Segment Routing – Co-existence with LDP • Co-existence with LDP and other MPLS protocols • Simple migration from LDP to Segment Routing

Page 3: Segment Routing Co-existence with LDP · segment-routing mpls sr-prefer FIB IGP/SR and LDP programming FIB • This diagram illustrates the behavior when preferring SR label imposition

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

Segment Routing and LDP Control Plane Co-existence

Page 4: Segment Routing Co-existence with LDP · segment-routing mpls sr-prefer FIB IGP/SR and LDP programming FIB • This diagram illustrates the behavior when preferring SR label imposition

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

Co-existence with other MPLS label distribution protocols

•  The MPLS architecture permits concurrent usage of multiple label distribution protocols

–  LDP, RSVP-TE, … and SR control plane can co-exist without interaction

•  Each node’s Label Manager –  Reserves a label range (SRGB) for SR control-plane –  Ensures that all dynamic labels are outside the SRGB block –  Ensures that a dynamic label is uniquely allocated

•  Each LSR must ensure that it can uniquely interpret its incoming labels –  Adjacency segment: locally unique label allocated by the Label Manager –  Prefix segment: operator ensures the unique allocation of each label within the allocated

SRGB

Page 5: Segment Routing Co-existence with LDP · segment-routing mpls sr-prefer FIB IGP/SR and LDP programming FIB • This diagram illustrates the behavior when preferring SR label imposition

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

Segment Routing and LDP Data Plane Co-existence

Page 6: Segment Routing Co-existence with LDP · segment-routing mpls sr-prefer FIB IGP/SR and LDP programming FIB • This diagram illustrates the behavior when preferring SR label imposition

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

MPLS-to-MPLS and MPLS-to-IP label switching and label disposition • For the MPLS2MPLS and MPLS2IP forwarding entries, SR and LDP can co-exist – These entries are indexed on a label – The local/incoming labels handled by LDP and SR (or other label

distribution protocols) are unique – The outgoing label is only significant for the downstream neighbor,

not for the local node – Multiple MPLS2MPLS and MPLS2IP entries can be programmed for

the same prefix > cfr. LSP midpoint cross-connect

Page 7: Segment Routing Co-existence with LDP · segment-routing mpls sr-prefer FIB IGP/SR and LDP programming FIB • This diagram illustrates the behavior when preferring SR label imposition

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

local/in lbl out lbl

16000

1048575

local/in lbl out lbl

16000

...

1048575

local/in lbl out lbl

16000

1048575

local/in lbl out lbl

16000

1048575

MPLS-to-MPLS and MPLS-to-IP

SR LDP

SR

GB

SR

GB

SR

GB

SR

GB

local/in lbl out lbl

16000

23999

24000

1048575

local/in lbl out lbl

16000

23999

24000

1048575

local/in lbl out lbl

16000

23999

24000

31999

1048575

local/in lbl out lbl

16000

23999

24000

1048575

1 2 4 3 5 1.1.1.5

Prefix-SID index 5

All nodes: SR + LDP

Page 8: Segment Routing Co-existence with LDP · segment-routing mpls sr-prefer FIB IGP/SR and LDP programming FIB • This diagram illustrates the behavior when preferring SR label imposition

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

MPLS-to-MPLS and MPLS-to-IP SR Prefix Segment to 1.1.1.5/32

SR

GB

SR

GB

SR

GB

SR

GB

local/in lbl out lbl

16000

16005 16005

23999

24000

1048575

local/in lbl out lbl

16000

16005 24005

23999

24000

1048575

local/in lbl out lbl

16000

23999

24000

24005 16005

31999

1048575

local/in lbl out lbl

16000

16005 pop

23999

24000

1048575

1 2 4 3 5

SR LDP

1.1.1.5

Prefix-SID index 5

All nodes: SR + LDP

Page 9: Segment Routing Co-existence with LDP · segment-routing mpls sr-prefer FIB IGP/SR and LDP programming FIB • This diagram illustrates the behavior when preferring SR label imposition

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

SR

GB

SR

GB

SR

GB

SR

GB

MPLS-to-MPLS and MPLS-to-IP LDP FEC to 1.1.1.5/32

local/in lbl out lbl

16000

16005 16005

23999

24000

24002 24001

1048575

local/in lbl out lbl

16000

16005 24005

23999

24000

24001 32011

1048575

local/in lbl out lbl

16000

23999

24000

24005 16005

31999

32011 24003

1048575

local/in lbl out lbl

16000

16005 pop

23999

24000

24003 pop

1048575

1 2 4 3 5

SR LDP

1.1.1.5

Prefix-SID index 5

All nodes: SR + LDP

Page 10: Segment Routing Co-existence with LDP · segment-routing mpls sr-prefer FIB IGP/SR and LDP programming FIB • This diagram illustrates the behavior when preferring SR label imposition

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

IP-to-MPLS – label imposition • Multiple IP2MPLS entries (e.g. LDP and SR) for the same prefix path cannot co-exist – These label imposition forwarding entries are indexed on the prefix – A forwarding table lookup returns one or more paths to the

destination – Each path has a single IP2MPLS entry programmed – If multiple paths lead to the destination, each path has its own

IP2MPLS entry > E.g. one path imposing an LDP label, another path imposing an SR label

Page 11: Segment Routing Co-existence with LDP · segment-routing mpls sr-prefer FIB IGP/SR and LDP programming FIB • This diagram illustrates the behavior when preferring SR label imposition

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

IP-to-MPLS: which label must be imposed? S

RG

B

SR

GB

SR

GB

SR

GB

local/in lbl out lbl

16000

16005 16005

23999

24000

24002 24001

1048575

local/in lbl out lbl

16000

16005 24005

23999

24000

24001 32011

1048575

local/in lbl out lbl

16000

23999

24000

24005 16005

31999

32011 24003

1048575

local/in lbl out lbl

16000

16005 pop

23999

24000

24003 pop

1048575

1 2 4 3 5

SR LDP

1.1.1.5

Prefix-SID index 5

All nodes: SR + LDP

Payload

to 1.1.1.5

segment-routing mpls sr-prefer

segment-routing mpls (default)

Page 12: Segment Routing Co-existence with LDP · segment-routing mpls sr-prefer FIB IGP/SR and LDP programming FIB • This diagram illustrates the behavior when preferring SR label imposition

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

IP-to-MPLS – label imposition • For IP2MPLS forwarding, LDP XOR SR entry can be inserted into FIB –  Only one IP2MPLS entry can exists for each prefix path

• Default: LDP label imposition is preferred –  Configuration knob to prefer SR label imposition over LDP router isis 1 address-family ipv4|6 unicast segment-routing mpls sr-prefer

router ospf 1 segment-routing mpls segment-routing sr-prefer

Page 13: Segment Routing Co-existence with LDP · segment-routing mpls sr-prefer FIB IGP/SR and LDP programming FIB • This diagram illustrates the behavior when preferring SR label imposition

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

SR

GB

local/in lbl out lbl

16000

16005 16005

23999

24000

24002 24001

1048575

1

IGP/SR and LDP programming FIB • This diagram illustrates the behavior of node1 on slide 8

RIB

FIB

IGP

LDP/LSD

1.1.1.5/32 Loc_lbl 16005 Out_lbl 16005

1.1.1.5/32

1.1.1.5/32 Loc_lbl 16005 Out_lbl 16005

1.1.1.5/32 Loc_lbl 24002 Out_lbl 24001

16005: SR label 24002: LDP label

Loc_lbl: local label, allocated by local node Out_lbl: outgoing label

Page 14: Segment Routing Co-existence with LDP · segment-routing mpls sr-prefer FIB IGP/SR and LDP programming FIB • This diagram illustrates the behavior when preferring SR label imposition

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

FIB

IGP/SR and LDP programming FIB •  This diagram illustrates the default

behavior: prefer LDP label imposition

IGP/RIB LDP/LSD

1.1.1.5/32 Loc_lbl 16005 Out_lbl 16005

1.1.1.5/32 Loc_lbl 24002 Out_lbl 24001

16005: SR label 24002: LDP label

cef

1.1.1.5/32 à 24001

mpls forwarding

24002 à 24001

16005 à 16005

Loc_lbl: local label, allocated by local node Out_lbl: outgoing label

SRG

B

local/in lbl out lbl

16000

16005 16005

23999

24000

24002 24001

1048575

1

Payload

to 1.1.1.5

segment-routing mpls (default)

Page 15: Segment Routing Co-existence with LDP · segment-routing mpls sr-prefer FIB IGP/SR and LDP programming FIB • This diagram illustrates the behavior when preferring SR label imposition

15 © 2015 Cisco and/or its affiliates. All rights reserved.

SRG

B

local/in lbl out lbl

16000

16005 16005

23999

24000

24002 24001

1048575

1

Payload

to 1.1.1.5

segment-routing mpls sr-prefer

FIB

IGP/SR and LDP programming FIB •  This diagram illustrates the

behavior when preferring SR label imposition

IGP/RIB LDP/LSD

1.1.1.5/32 Loc_lbl 16005 Out_lbl 16005

1.1.1.5/32 Loc_lbl 24002 Out_lbl 24001

16005: SR label 24002: LDP label

cef

1.1.1.5/32 à 16005

mpls forwarding

16005 à 16005

24002 à 24001

Loc_lbl: local label, allocated by local node Out_lbl: outgoing label

Page 16: Segment Routing Co-existence with LDP · segment-routing mpls sr-prefer FIB IGP/SR and LDP programming FIB • This diagram illustrates the behavior when preferring SR label imposition

16 © 2015 Cisco and/or its affiliates. All rights reserved.

MPLS-to-MPLS forwarding entries

RP/0/0/CPU0:xrvr-3#show mpls forwarding labels 24003 Local Outgoing Prefix Outgoing Next Hop Bytes Label Label or ID Interface Switched ------ ----------- ------------------ ------------ --------------- ------------ 24003 24005 100.0.0.3/32 Gi0/0/0/0 99.2.3.3 5670 RP/0/0/CPU0:xrvr-3#show mpls forwarding labels 16001 Local Outgoing Prefix Outgoing Next Hop Bytes Label Label or ID Interface Switched ------ ----------- ------------------ ------------ --------------- ------------ 16001 16001 SR Pfx (idx 1) Gi0/0/0/0 99.2.3.3 345243

MPLS-to-MPLS LDP label entry

MPLS-to-MPLS SR label entry

Both entries are present regardless of the preference setting

3 2 1

1.1.1.3 1.1.1.2 1.1.1.1

All nodes: SR + LDP

Page 17: Segment Routing Co-existence with LDP · segment-routing mpls sr-prefer FIB IGP/SR and LDP programming FIB • This diagram illustrates the behavior when preferring SR label imposition

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

IP-to-MPLS forwarding entries with LDP preference

RP/0/0/CPU0:xrvr-3#show mpls ldp bindings 1.1.1.1/32 neighbor 1.1.1.2 1.1.1.1/32, rev 24 Local binding: label: 24003 Remote bindings: (1 peer) Peer Label ----------------- --------- 1.1.1.2:0 24005 RP/0/0/CPU0:xrvr-3#show cef 1.1.1.1/32 1.1.1.1/32, version 222, internal 0x4000001 0x0 (ptr 0xa1376074) [1], 0x0 (0xa135b560), 0x228 (0xa1411118) Updated May 21 07:08:50.475 local adjacency 99.2.3.2 Prefix Len 32, traffic index 0, precedence n/a, priority 3 via 99.2.3.2, GigabitEthernet0/0/0/0, 9 dependencies, weight 0, class 0 [flags 0x0] path-idx 0 NHID 0x0 [0xa0e300bc 0x0] next hop 99.2.3.2 tx adjacency local label 24003 labels imposed {24005}

Local LDP label

Neighbor’s (remote) LDP label

IP-to-MPLS cef entry has LDP labels programmed

default (LDP is preferred) 3 2 1

1.1.1.3 1.1.1.2 1.1.1.1

All nodes: SR + LDP

Page 18: Segment Routing Co-existence with LDP · segment-routing mpls sr-prefer FIB IGP/SR and LDP programming FIB • This diagram illustrates the behavior when preferring SR label imposition

18 © 2015 Cisco and/or its affiliates. All rights reserved.

SR and LDP – IP-to-MPLS with SR preference RP/0/0/CPU0:xrvr-3#show route 1.1.1.1/32 detail Routing entry for 1.1.1.1/32 Known via "isis 1", distance 115, metric 2, type level-2 Installed May 21 07:08:45.345 for 00:35:05 Routing Descriptor Blocks 99.2.3.2, from 1.1.1.1, via GigabitEthernet0/0/0/0 Route metric is 2 Label: 0x3e81 (16001) Tunnel ID: None Extended communities count: 0 Path id:1 Path ref count:0 NHID:0x1(Ref:6) Route version is 0xa (10) Local Label: 0x3e81 (16001) <...> RP/0/0/CPU0:xrvr-3#show cef 1.1.1.1/32 1.1.1.1/32, version 222, internal 0x4000001 0x0 (ptr 0xa1376074) [1], 0x0 (0xa135b560), 0x228 (0xa1411118) Updated May 21 07:08:50.475 local adjacency 99.2.3.2 Prefix Len 32, traffic index 0, precedence n/a, priority 3 via 99.2.3.2, GigabitEthernet0/0/0/0, 9 dependencies, weight 0, class 0 [flags 0x0] path-idx 0 NHID 0x0 [0xa0e300bc 0x0] next hop 99.2.3.2 tx adjacency local label 16001 labels imposed {16001}

Neighbor’s (remote) SR label

Local SR label

IP-to-MPLS cef entry has SR labels programmed

sr-prefer con!gured 3 2 1

1.1.1.3 1.1.1.2 1.1.1.1

All nodes: SR + LDP

Page 19: Segment Routing Co-existence with LDP · segment-routing mpls sr-prefer FIB IGP/SR and LDP programming FIB • This diagram illustrates the behavior when preferring SR label imposition

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

Segment Routing and LDP “Ships in the night” Deployment Model

Page 20: Segment Routing Co-existence with LDP · segment-routing mpls sr-prefer FIB IGP/SR and LDP programming FIB • This diagram illustrates the behavior when preferring SR label imposition

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

“Ships in the Night” Deployment Model • LDP and SR are kept independent

–  continuous SR connectivity between SR PEs required –  continuous LDP connectivity between LDP PEs required –  no SR to LDP or LDP to SR interworking required

•  Other deployment models are possible: see “SR/LDP interworking” section

Page 21: Segment Routing Co-existence with LDP · segment-routing mpls sr-prefer FIB IGP/SR and LDP programming FIB • This diagram illustrates the behavior when preferring SR label imposition

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

Simplest migration LDP to SR •  Initial state: All nodes run LDP, not SR

1 LDP

3 4

2

5 6

LDP Domain

LDP LDP

LDP LDP

LDP LDP

Assumptions: •  all the nodes can be upgraded to SR •  all the services can be upgraded to SR

Page 22: Segment Routing Co-existence with LDP · segment-routing mpls sr-prefer FIB IGP/SR and LDP programming FIB • This diagram illustrates the behavior when preferring SR label imposition

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

Simplest migration LDP to SR •  Initial state: All nodes run LDP, not SR

•  Step1: All nodes are upgraded to SR –  In no particular order –  leave default LDP label imposition preference

1 LDP

3 4

2

5 6

SR+LDP Domain

SR+LDP SR+LDP

SR+LDP SR+LDP

SR+LDP SR+LDP

Assumptions: •  all the nodes can be upgraded to SR •  all the services can be upgraded to SR

Page 23: Segment Routing Co-existence with LDP · segment-routing mpls sr-prefer FIB IGP/SR and LDP programming FIB • This diagram illustrates the behavior when preferring SR label imposition

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

Simplest migration LDP to SR •  Initial state: All nodes run LDP, not SR

•  Step1: All nodes are upgraded to SR –  In no particular order –  leave default LDP label imposition preference

•  Step2: All PEs are configured to prefer SR label imposition –  In no particular order

SR+LDP Domain

1 SR

3 4

2

5 6

SR+LDP SR+LDP

SR+LDP SR+LDP

SR+LDP SR+LDP

sr-prefer

Assumptions: •  all the nodes can be upgraded to SR •  all the services can be upgraded to SR

Page 24: Segment Routing Co-existence with LDP · segment-routing mpls sr-prefer FIB IGP/SR and LDP programming FIB • This diagram illustrates the behavior when preferring SR label imposition

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

Simplest migration LDP to SR •  Initial state: All nodes run LDP, not SR

•  Step1: All nodes are upgraded to SR –  In no particular order –  leave default LDP label imposition preference

•  Step2: All PEs are configured to prefer SR label imposition –  In no particular order

•  Step3: LDP is removed from the nodes in the network –  In no particular order

•  Final state: All nodes run SR, not LDP

SR Domain

1 SR

3 4

2

5 6

SR SR

SR SR

SR SR

Assumptions: •  all the nodes can be upgraded to SR •  all the services can be upgraded to SR

Page 25: Segment Routing Co-existence with LDP · segment-routing mpls sr-prefer FIB IGP/SR and LDP programming FIB • This diagram illustrates the behavior when preferring SR label imposition

Visit us: cisco.com segment-routing.net

Page 26: Segment Routing Co-existence with LDP · segment-routing mpls sr-prefer FIB IGP/SR and LDP programming FIB • This diagram illustrates the behavior when preferring SR label imposition

Acknowledgements:

Ahmed Bashandy Robert Hanzl Steven Luong

Stefano Previdi Peter Psenak

Page 27: Segment Routing Co-existence with LDP · segment-routing mpls sr-prefer FIB IGP/SR and LDP programming FIB • This diagram illustrates the behavior when preferring SR label imposition

Thank you.