MPLS SDN 2016 - Microloop avoidance with segment routing

41
1 Orange Restricted Avoiding micro-loops using Segment Routing Stéphane LITKOWSKI Network Architect, Orange Expert

Transcript of MPLS SDN 2016 - Microloop avoidance with segment routing

Page 1: MPLS SDN 2016 - Microloop avoidance with segment routing

1 Orange Restricted

Avoiding micro-loops using Segment Routing

Stéphane LITKOWSKINetwork Architect, Orange Expert

Page 2: MPLS SDN 2016 - Microloop avoidance with segment routing

2 Orange Restricted

A micro-loop ? Does my network have loops ?

Micro-loops are a natural phenomenon in hop by hop routed networks

This applies to MPLS networks !

Caused by a transient disagreement between routers during convergence

Good and bad events may create loops

Duration of micro-loop depends of convergence time

S N1

N2

D

1

101

1

Page 3: MPLS SDN 2016 - Microloop avoidance with segment routing

3 Orange Restricted

A micro-loop ? Does my network have loops ?

Micro-loops are a natural phenomenon in hop by hop routed networks

This applies to MPLS networks !

Caused by a transient disagreement between routers during convergence

Good and bad events may create loops

Duration of micro-loop depends of convergence time

S N1

N2

D

1

101

1

Page 4: MPLS SDN 2016 - Microloop avoidance with segment routing

4 Orange Restricted

A micro-loop ? Does my network have loops ?

Micro-loops are a natural phenomenon in hop by hop routed networks

This applies to MPLS networks !

Caused by a transient disagreement between routers during convergence

Good and bad events may create loops

Duration of micro-loop depends of convergence time

S N1

N2

D

1

101

1

Page 5: MPLS SDN 2016 - Microloop avoidance with segment routing

5 Orange Restricted

A micro-loop ? Does my network have loops ?

Micro-loops are a natural phenomenon in hop by hop routed networks

This applies to MPLS networks !

Caused by a transient disagreement between routers during convergence

Good and bad events may create loops

Duration of micro-loop depends of convergence time

S N1

N2

D

1

101

1

Page 6: MPLS SDN 2016 - Microloop avoidance with segment routing

6 Orange Restricted

A micro-loop ? Does my network have loops ?

Micro-loops are a natural phenomenon in hop by hop routed networks

This applies to MPLS networks !

Caused by a transient disagreement between routers during convergence

Good and bad events may create loops

Duration of micro-loop depends of convergence time

S N1

N2

D

1

101

1

! SLOW !

Page 7: MPLS SDN 2016 - Microloop avoidance with segment routing

7 Orange Restricted

A micro-loop ? Does my network have loops ?

Micro-loops are a natural phenomenon in hop by hop routed networks

This applies to MPLS networks !

Caused by a transient disagreement between routers during convergence

Good and bad events may create loops

Duration of micro-loop depends of convergence time

S N1

N2

D

1

101

1

! SLOW !

Page 8: MPLS SDN 2016 - Microloop avoidance with segment routing

8 Orange Restricted

A micro-loop ? Does my network have loops ?

Micro-loops are a natural phenomenon in hop by hop routed networks

This applies to MPLS networks !

Caused by a transient disagreement between routers during convergence

Good and bad events may create loops

Duration of micro-loop depends of convergence time

S N1

N2

D

1

101

1

Page 9: MPLS SDN 2016 - Microloop avoidance with segment routing

9 Orange Restricted

Where do micro-loops happen ?

Anywhere ! They can be local or remote !

R1 R4

R2

DS

10

111

1

R3

Local loop

Remote loop

Remote loop

Page 10: MPLS SDN 2016 - Microloop avoidance with segment routing

10 Orange Restricted

Why do I need to take of micro-loops ?

Micro-loops break Fast-reroute !

Micro-loops affect traffic which is not concerned by the topology change !

Traffic between S and N2 suffers of packet loss !100Mbps of traffic entering a loop on a 5ms RTD

link will become 1Gbps in about 40msec !

S N1

N2

D

1

101

1Traffic

Time

Page 11: MPLS SDN 2016 - Microloop avoidance with segment routing

11 Orange Restricted

Why do I need to take of micro-loops ?

Micro-loops break Fast-reroute !

Micro-loops affect traffic which is not concerned by the topology change !

Traffic between S and N2 suffers of packet loss !100Mbps of traffic entering a loop on a 5ms RTD

link will become 1Gbps in about 40msec !

S N1

N2

D

1

101

1Traffic

Time

Page 12: MPLS SDN 2016 - Microloop avoidance with segment routing

12 Orange Restricted

Why do I need to take of micro-loops ?

Micro-loops break Fast-reroute !

Micro-loops affect traffic which is not concerned by the topology change !

Traffic between S and N2 suffers of packet loss !100Mbps of traffic entering a loop on a 5ms RTD

link will become 1Gbps in about 40msec !

S N1

N2

D

1

101

1Traffic

Time

Page 13: MPLS SDN 2016 - Microloop avoidance with segment routing

13 Orange Restricted

Why do I need to take of micro-loops ?

Micro-loops break Fast-reroute !

Micro-loops affect traffic which is not concerned by the topology change !

Traffic between S and N2 suffers of packet loss !100Mbps of traffic entering a loop on a 5ms RTD

link will become 1Gbps in about 40msec !

S N1

N2

D

1

101

1FRR !

Traffic

Time

Page 14: MPLS SDN 2016 - Microloop avoidance with segment routing

14 Orange Restricted

Why do I need to take of micro-loops ?

Micro-loops break Fast-reroute !

Micro-loops affect traffic which is not concerned by the topology change !

Traffic between S and N2 suffers of packet loss !100Mbps of traffic entering a loop on a 5ms RTD

link will become 1Gbps in about 40msec !

S N1

N2

D

1

101

1FRR !

Traffic

Time

Page 15: MPLS SDN 2016 - Microloop avoidance with segment routing

15 Orange Restricted

Why do I need to take of micro-loops ?

Micro-loops break Fast-reroute !

Micro-loops affect traffic which is not concerned by the topology change !

Traffic between S and N2 suffers of packet loss !100Mbps of traffic entering a loop on a 5ms RTD

link will become 1Gbps in about 40msec !

S N1

N2

D

1

101

1

! SLOW !

FRR !Traffic

Time

Page 16: MPLS SDN 2016 - Microloop avoidance with segment routing

16 Orange Restricted

Why do I need to take of micro-loops ?

Micro-loops break Fast-reroute !

Micro-loops affect traffic which is not concerned by the topology change !

Traffic between S and N2 suffers of packet loss !100Mbps of traffic entering a loop on a 5ms RTD

link will become 1Gbps in about 40msec !

S N1

N2

D

1

101

1

! SLOW !

Traffic

Time

Page 17: MPLS SDN 2016 - Microloop avoidance with segment routing

17 Orange Restricted

Why do I need to take of micro-loops ?

Micro-loops break Fast-reroute !

Micro-loops affect traffic which is not concerned by the topology change !

Traffic between S and N2 suffers of packet loss !100Mbps of traffic entering a loop on a 5ms RTD

link will become 1Gbps in about 40msec !

S N1

N2

D

1

101

1Traffic

Time

Page 18: MPLS SDN 2016 - Microloop avoidance with segment routing

18 Orange Restricted

Why do I need to take of micro-loops ?

Micro-loops break Fast-reroute !

Micro-loops affect traffic which is not concerned by the topology change !

Traffic between S and N2 suffers of packet loss !100Mbps of traffic entering a loop on a 5ms RTD

link will become 1Gbps in about 40msec !

S N1

N2

D

1

101

1Traffic

Time

Page 19: MPLS SDN 2016 - Microloop avoidance with segment routing

19 Orange Restricted

Why do I need to take of micro-loops ?

Micro-loops break Fast-reroute !

Micro-loops affect traffic which is not concerned by the topology change !

Traffic between S and N2 suffers of packet loss !100Mbps of traffic entering a loop on a 5ms RTD

link will become 1Gbps in about 40msec !

S N1

N2

D

1

101

1Traffic

TimeLink congestion !

Page 20: MPLS SDN 2016 - Microloop avoidance with segment routing

20 Orange Restricted

Strategies to address micro-loop issues

Not a new topic ! Look at RFC5715 ..

Mitigation• Drop looping packets (not so easy !)• Converge faster (minimize micro-loop duration)

Avoidance• Local delay (draft-ietf-rtgwg-uloop-delay)• Ordered FIB (RFC6976)• PLSN (RFC5715)• Incremental metric (INFOCOM 2007 paper from P. Francois, M. Shand, O. Bonaventure)• …

Page 21: MPLS SDN 2016 - Microloop avoidance with segment routing

22 Orange Restricted

Strategies to avoid micro-loops

Local delay = OFIB(1)Upon link down, only local router will delay its convergenceUpon link up, local router will delay flooding

Solves only local micro-loopsMultiple implementations available for link down event

S N R1 R2 D

N2

I will delay by 1200msec

I will delay by 1200msec

Page 22: MPLS SDN 2016 - Microloop avoidance with segment routing

23 Orange Restricted

Conclusion on current state of the art

No definitive solution to avoid micro-loopsLocal delay is good but not perfect

Mitigation is not enough and sometimes complex to implement

How can we improve ?

Page 23: MPLS SDN 2016 - Microloop avoidance with segment routing

24 Orange Restricted

Why not using Segment Routing ?

Segment Routing can build a loop-free pathSee my talks in 2014 and 2015 on TI-LFA

Why not applying a temporary loop-free path ?Two stages convergenceStage#1 : use loop-free path (timer based)Stage#2 : use standard path

S N R1 D

N2

10

Node_SID_N2

Adj_SID_N2R1

Payload

Page 24: MPLS SDN 2016 - Microloop avoidance with segment routing

36 Orange Restricted

Multiple approaches possible to build a loop-free path

One is TI-LFA-like approachUpon link failure, we can compute a loop-free label stack to the destination (as in TI-

LFA)The loop-free path will be kept for a time waiting for the other to convergenceAll the routers applies this two stages convergence

R1S

DR2

10 R4

100

Page 25: MPLS SDN 2016 - Microloop avoidance with segment routing

37 Orange Restricted

Multiple approaches possible to build a loop-free path

One is TI-LFA-like approachUpon link failure, we can compute a loop-free label stack to the destination (as in TI-

LFA)The loop-free path will be kept for a time waiting for the other to convergenceAll the routers applies this two stages convergence

R1S

DR2

10 R4

100

Payload

Page 26: MPLS SDN 2016 - Microloop avoidance with segment routing

38 Orange Restricted

Multiple approaches possible to build a loop-free path

One is TI-LFA-like approachUpon link failure, we can compute a loop-free label stack to the destination (as in TI-

LFA)The loop-free path will be kept for a time waiting for the other to convergenceAll the routers applies this two stages convergence

R1S

DR2

10 R4

100

Payload

Page 27: MPLS SDN 2016 - Microloop avoidance with segment routing

39 Orange Restricted

Multiple approaches possible to build a loop-free path

One is TI-LFA-like approachUpon link failure, we can compute a loop-free label stack to the destination (as in TI-

LFA)The loop-free path will be kept for a time waiting for the other to convergenceAll the routers applies this two stages convergence

R1S

DR2

10 R4

100

Payload

Page 28: MPLS SDN 2016 - Microloop avoidance with segment routing

40 Orange Restricted

Multiple approaches possible to build a loop-free path

One is TI-LFA-like approachUpon link failure, we can compute a loop-free label stack to the destination (as in TI-

LFA)The loop-free path will be kept for a time waiting for the other to convergenceAll the routers applies this two stages convergence

R1S

DR2

10 R4

100

Payload

Page 29: MPLS SDN 2016 - Microloop avoidance with segment routing

41 Orange Restricted

Multiple approaches possible to build a loop-free path

One is TI-LFA-like approachUpon link failure, we can compute a loop-free label stack to the destination (as in TI-

LFA)The loop-free path will be kept for a time waiting for the other to convergenceAll the routers applies this two stages convergence

R1S

DR2

10 R4

100

Payload

Stage#1 : tunnel {Adj-SID_R2-D}

Page 30: MPLS SDN 2016 - Microloop avoidance with segment routing

42 Orange Restricted

Multiple approaches possible to build a loop-free path

One is TI-LFA-like approachUpon link failure, we can compute a loop-free label stack to the destination (as in TI-

LFA)The loop-free path will be kept for a time waiting for the other to convergenceAll the routers applies this two stages convergence

R1S

DR2

10 R4

100

Stage#1 : tunnel {Adj-SID_R2-D}

PayloadAdj-

SID_R2-D

Page 31: MPLS SDN 2016 - Microloop avoidance with segment routing

43 Orange Restricted

Multiple approaches possible to build a loop-free path

One is TI-LFA-like approachUpon link failure, we can compute a loop-free label stack to the destination (as in TI-

LFA)The loop-free path will be kept for a time waiting for the other to convergenceAll the routers applies this two stages convergence

R1S

DR2

10 R4

100

Stage#1 : tunnel {Adj-SID_R2-D}

PayloadAdj-

SID_R2-D

Stage#1 : tunnel {Node_SID_R2;Adj-SID_R2-D}

Page 32: MPLS SDN 2016 - Microloop avoidance with segment routing

44 Orange Restricted

Multiple approaches possible to build a loop-free path

One is TI-LFA-like approachUpon link failure, we can compute a loop-free label stack to the destination (as in TI-

LFA)The loop-free path will be kept for a time waiting for the other to convergenceAll the routers applies this two stages convergence

R1S

DR2

10 R4

100

Stage#1 : tunnel {Adj-SID_R2-D}

PayloadAdj-

SID_R2-D

Stage#1 : tunnel {Node_SID_R2;Adj-SID_R2-D}

Stage#1 : tunnel{forward to D}

Page 33: MPLS SDN 2016 - Microloop avoidance with segment routing

45 Orange Restricted

Multiple approaches possible to build a loop-free path

One is TI-LFA-like approachUpon link failure, we can compute a loop-free label stack to the destination (as in TI-

LFA)The loop-free path will be kept for a time waiting for the other to convergenceAll the routers applies this two stages convergence

R1S

DR2

10 R4

100

Payload

Stage#1 : tunnel {Node_SID_R2;Adj-SID_R2-D}

Stage#1 : tunnel{forward to D}

Stage#2 : normal FIB update

Page 34: MPLS SDN 2016 - Microloop avoidance with segment routing

46 Orange Restricted

Multiple approaches possible to build a loop-free path

One is TI-LFA-like approachUpon link failure, we can compute a loop-free label stack to the destination (as in TI-

LFA)The loop-free path will be kept for a time waiting for the other to convergenceAll the routers applies this two stages convergence

R1S

DR2

10 R4

100

Payload

Stage#1 : tunnel{forward to D}

Stage#2 : normal FIB update

Stage#2 : normal FIB update

Page 35: MPLS SDN 2016 - Microloop avoidance with segment routing

47 Orange Restricted

Multiple approaches possible to build a loop-free path

One is TI-LFA-like approachUpon link failure, we can compute a loop-free label stack to the destination (as in TI-

LFA)The loop-free path will be kept for a time waiting for the other to convergenceAll the routers applies this two stages convergence

R1S

DR2

10 R4

100

Payload

Stage#2 : normal FIB update

Stage#2 : normal FIB update

Stage#2 : normal FIB update

Page 36: MPLS SDN 2016 - Microloop avoidance with segment routing

48 Orange Restricted

Dream or reality ? Technology is a reality !

And we already tested it !

R2R1S

R3 R4

R5 R6

10

10

S,R1,R2 are Cisco XR nodes with early code

R3,R4,R5,R6 are non Cisco

In the setup, SPF delays have been highly increased to make the microloop phenomenon more visible

Page 37: MPLS SDN 2016 - Microloop avoidance with segment routing

49 Orange Restricted

Lab evaluation : S-R1 link failure

Without micro-loop avoidance

FRRMicro-loop effect

WITH micro-loop avoidance (LOCAL-DELAY)

FRR

! LOOP AVOIDED !

FRR

! LOOP AVOIDED !

WITH micro-loop avoidance (SR)

Page 38: MPLS SDN 2016 - Microloop avoidance with segment routing

50 Orange Restricted

Lab evaluation : R2-R4 link failure

Without micro-loop avoidance

Micro-loop effect

WITH micro-loop avoidance (LOCAL-DELAY)

Micro-loop effect

!!! LOOP NOT AVOIDED !!!

FRR

WITH micro-loop avoidance (SR)

! LOOP AVOIDED !

Page 39: MPLS SDN 2016 - Microloop avoidance with segment routing

51 Orange Restricted

Segment routing micro-loop avoidance

Early code testing shown very good results

Works for multiple traffic types (IP, MPLS LDP, SR)

The technology brings a high benefit in avoiding micro-loops

Local mechanism : no protocol extensionno interoperability required (expect support of SR)

Incremental deployment with incremental benefit

Page 40: MPLS SDN 2016 - Microloop avoidance with segment routing

52 Orange Restricted

Conclusion

Micro-loops are a real issue

Current solutions are not satisfying (complex or limited)

Segment routing helps in creating temporary loop-free path

Two stages convergence remains the GOOD idea !

SR micro-loop avoidance works ! : see demo from Cisco at their booth

Page 41: MPLS SDN 2016 - Microloop avoidance with segment routing

53 Orange Restricted

Thank you