SlideShare a Scribd company logo
1 of 54
Download to read offline
Pierre Francois
Institute IMDEA Networks
Pierre.Francois@imdea.org
BGP Add-Paths
ToC
• Data-plane evolution : BGP PIC
• Control-plane evolution : BGP Add-paths
BGP PIC
Sub-second data-plane convergence
• Fast switchover to pre-installed alternate paths
• Convergence, not Fast ReRoute
• BGP converges when IGP converges
FIB design
From flat FIB...
Prefix NH or oif
p/P ASBR1
q/Q ASBR1
r/R ASBR2
... ...
... ...
ASBR1 north oif
ASBR2 east oif
RIB
ASBR1
ASBR2
R1
Prefix oif
p/P north oif
q/Q north oif
r/R east oif
ASBR1 north oif
ASBR2 east oif
FIB
}BGP
}IGP
IGP change leads
to FIB Updates
for BGP prefixes !
FIB design
to hierarchical FIB...
Prefix NH or oif
p/P ASBR1
q/Q ASBR1
r/R ASBR2
... ...
... ...
ASBR1 north oif
ASBR2 east oif
FIB
PIC “core”
ASBR1
ASBR2
R1
Update of the outgoing interface for a BGP nexthop
impacts all prefixes tracked by the nexthop
FIB design
...to generalized FIB
p/P ... z/Z
prim. nh back. nh
igp pfx k
via neigh. a
igp pfx k
via neigh. b
igp pfx i
via neigh. x
igp pfx j
via neigh. y
eastnortheastnorth
BGP Path Lists
Primary nh /
Backup nh
IGP (ECMP)
PLs
oifs
prim. nh back. nh
BGP prefixes share
members of the BGP PL set
Small PLs # in practice
A given IGP PL is shared
by BGP PLs
# IGP PLs = n
Becomes a list
when BGP
Multipath is used
Support for PIC “core”/“edge”
FIB design
generalized FIB example (R1)
p/P ... z/Z
ASBR1 ASBR2 ASBR3
ASBR3
via R2
ASBR3
via R3
ASBR1
via R4
R2
R3
ASBR2
ASBR3
ASBR2
via R2
eastnortheast
R4
north
BGPPLsIGPPLsoifs
z/Z
p/P
R1
ASBR1
...
FIB design
generalized FIB example (R1)
p/P ... z/Z
ASBR1 ASBR2 ASBR3
ASBR3
via R2
ASBR3
via R3
ASBR1
via R4
R2
R3
ASBR2
via R2
eastnortheast
R4
north
BGPPLsIGPPLsoifs
z/Z
p/P
R1
...
ASBR2
ASBR3
ASBR1
FIB design
generalized FIB example (R1)
p/P ... z/Z
ASBR1 ASBR2 ASBR3
ASBR3
via R2
ASBR3
via R3
ASBR1
via R4
R2
R3
ASBR2
via R2
eastnortheast
R4
north
BGPPLsIGPPLsoifs
z/Z
p/P
R1
...
ASBR2
ASBR3
ASBR1
FIB design
generalized FIB example (R1)
p/P ... z/Z
ASBR1 ASBR2 ASBR3
ASBR3
via R2
ASBR3
via R3
ASBR1
via R4
R2
R3
ASBR2
via R2
eastnortheast
R4
north
BGPPLsIGPPLsoifs
z/Z
p/P
R1
ASBR2
ASBR3
ASBR1
FIB design
PL “Backwalking” time
p/P ... z/Z
ASBR1 ASBR2 ASBR3
ASBR3
via R2
ASBR3
via R3
ASBR1
via R4
R2
R3
ASBR2
via R2
eastnortheast
R4
north
BGPPLsIGPPLsoifs
z/Z
p/P
R1
ASBR2
ASBR3
ASBR1
Backwalking time
Testbed
Z/z
AS X AS Y
iBGP
eBGP
Y2
Y3
Y1X1
X5
e1
e2
X4
X3
X2
100k
1k loopbacks Evenly scatteredtraffic to 1/10 of
the prefixes
FIB design
“PL Backwalking” time in a CRS-1
0
50
100
150
200
0 100 200 300 400 500 600 700 800 900 1000
LoC(ms)
1000 sets of 100 BGP destinations.
Each set corresponds to a different BGP Path-List
52 flows that were
already going through the
“alternate” nexthop
“IGP reactivity”
Actual Backwalking time (48 flows)
Not a futuristic talk
• BGP PIC Core/Edge is available
All our problems solved ?
• PIC makes data-plane convergence really fast
• Useless if no alternates to converge to...
Policies let paths be hidden
ASBR2
ASBR1
p :
localpref = 90
p :
localpref = 100
p
p
p
p
ASBR2
ASBR1
p :
localpref = 100
p :
localpref = 100
p
p
p
RR1
PE
p
p
Route Reflection hides paths
Can’t we just turn adv-best-external on ?
ASBR2
ASBR1
p :
localpref = {100,90}
p :
localpref = 100
p
p
pp
RR1
RR2
p
p
p
PE
p
p
p p
pp
Doesn’t solve the
route reflection problem
Motivation for Add-paths
• Initial “motivation” was MED oscillation avoidance
• Emergence of new IDR requirements a few years ago
• Fast recovery upon peering link / ASBR failure (PIC)
• Load balancing among multiple primary BGP NHs
• Hitless planned maintenance
• “Optimal” hot-potato routing
• (Churn reduction / convergence concealment)
BGP Add paths
ASBR2
ASBR1
p
p
RR1
p
p
pPE p
p
• Advertise multiple BGP paths
• towards the same NLRI
• over a single iBGP session
• draft-ietf-idr-add-paths
p
BGP Add paths
ASBR2
ASBR1
p
p
RR1
p
p
pPE p
p
p
• Install PIC state
• Load balance
• Hitless reroute to alternate
• ASBR2 can be shut “hitlessly”
• Pick closest exist
• Reduced churn upon loss
Churn reduction
• Churn reduction for primary paths...
• ...with internal churn increase for non-primary ones
Churn Reduction
ASBR2
ASBR1
p :
localpref = 90
p :
localpref = 100
p
p
p
p
PE
Withdraw, Update
Withdraw, Update, Update
ASBR3
p
p :
LP = 80
Update (or silence)
Churn Reduction
ASBR2
ASBR1
p :
localpref = 90
p :
localpref = 100
p
p
p
p
PE
ASBR3
p
p :
LP = 80
“Churny” internal
for
“Quiet” external
Update ...or silence...
What to send ?
Application dependent
• MED oscillation ?
• Avoid hiding lowest MED paths from neighboring ASes
• PIC ?
• Feed all PE nodes with 2 paths
• Load-balancing ?
• Feed all PE nodes with N paths
• Hitless maintenance
• Never have 0 paths
• Churn reduction
• Favor dissemination of post-convergence paths
draft-ietf-idr-add-paths
• Adds an identifier to paths
• Identifier only has session meaning
draft-ietf-idr-add-paths-guidelines
• draft-ietf-idr-add-paths doesn’t tell which paths to select
• Multiple motivations lead to different “selection modes”
• Evaluate them (what they give, at which cost)
• analytical
• “numbers”
Modes
• All paths
• N paths
• AS-Wide best paths (and variants)
• Neighbor-AS group best paths
• (Best Loc Pref / Second best Loc Pref paths)
• (Decisive step -1 paths)
All Paths
ASBR2
ASBR1
p
p
RR1
p
p
pPE p
p
p
ASBR3
p
p
p
p
Known paths almost
like if
iBGP full-mesh
and adv-ext-best on
Add-All
• Easiest Decision Process algorithm
• Nice mode to turn on towards a BGP monitor
• Depending on how many paths for each p
• Memory monster (control-plane)
• Internal update churn monster
Please...
RR1
PE
RR2
ppRR10
ASBR2
ASBR1
p
p
p
p
pp
pppp Avoid rushed up implementations
Add-N paths
ASBR2
ASBR1
p
p
RR1
p
p
pPE p
p
p
ASBR3
p
p
p p p
p p
(1)
(2)
p
Usually
consider NH
disjoint paths
Add-N-Paths
• Most practical use cases
• Set N to 2 for basic PIC support
• Set N to desired number of NHs for LB
• Memory hit kept under control through configuration of N
• Configurable per AFI/SAFI (some may provide finer tuning)
• Doesn’t solve MED oscillations
• Developers tend to implement it as N*DP
AS-Wide Best paths
ASBR2
ASBR1
p
p
RR1
p
LP 100
AS Path length : 3
p
PE
p
p
ASBR3
p
p
p p p
p p
(LP)
p
p
LP 100
AS Path length : 3
p
LP 90
AS Path length : 3
p
(AS Path)
p p p p(MED)
Not hiding paths that
another node would
have preferred
• “The router doesn’t make local decisions”
• DP complexity < not running add-paths
• Provides routing optimality and max LB potential
• Provides MED oscillation avoidance
• !!! Doesn’t feed PIC !!!
AS-Wide Best paths
AS-Wide Best paths
ASBR2
ASBR1
p
p
RR1
p
LP 100
AS Path length : 3
p
PE
p
p
ASBR3
p
p
p p p(LP)
p
p
LP 90
AS Path length : 3
p
LP 90
AS Path length : 3
p
p One winner problem still applies
AS-Wide Best paths
ASBR2
ASBR1
p
p
RR1
p
LP 100
AS Path length : 3
p
PE
p
p
ASBR3
p
p
p p p
p
(LP)
p
p
LP 100
AS Path length : 2
p
LP 90
AS Path length : 3
p
(AS Path)
p One winner problem still applies
p
Neighbor-AS group best
• Avoids MED oscillations
• draft-walton-bgp-route-oscillation-stop
• Advertise the best path from each neighboring AS
• No ASBR picks as best a non-lowest MED path
Neighbor-AS group best
• Provides paths from different neighboring ASes, but
• their existence is not guaranteed
• nothing to deal with post-convergence paths
Path
optimality
Backup
availability /
optimality
Control
plane load
and stress
DP
Complexity
MED osc.
avoidance
All OK OK Max EASIEST OK
N ? OK / ? Bounded Depends on N
can be optimized ?
AS-Wide OK KO / ~OK ~MAX EASY OK
LP1/LP2 OK OK ~MAX EASIER OK
Decisive-1 OK OK ~MAX
Easy but
“spaghetti” OK
Group best KO ... KO ~MAX ? OK
Summary
Path
optimality
Backup
availability /
optimality
Control
plane load
and stress
DP
Complexity
MED osc.
avoidance
All OK OK Max EASIEST OK
N ? OK / ? Bounded Depends on N
can be optimized ?
AS-Wide OK KO / ~OK ~MAX EASY OK
LP1/LP2 OK OK ~MAX EASIER OK
Decisive-1 OK OK ~MAX
Easy but
“spaghetti” OK
Group best KO ... KO ~MAX ? OK
Summary
Path
optimality
Backup
availability /
optimality
Control
plane load
and stress
DP
Complexity
MED osc.
avoidance
All OK OK Max EASIEST OK
N ? OK / ? Bounded Depends on N
can be optimized ?
AS-Wide OK KO / ~OK ~MAX EASY OK
LP1/LP2 OK OK ~MAX EASIER OK
Decisive-1 OK OK ~MAX
Easy but
“spaghetti” OK
Group best KO ... KO ~MAX ? OK
Summary
Path
optimality
Backup
availability /
optimality
Control
plane load
and stress
DP
Complexity
MED osc.
avoidance
All OK OK Max EASIEST OK
N ? OK / ? Bounded Depends on N
can be optimized ?
AS-Wide OK KO / ~OK ~MAX EASY OK
LP1/LP2 OK OK ~MAX EASIER OK
Decisive-1 OK OK ~MAX
Easy but
“spaghetti” OK
Group best KO ... KO ~MAX ? OK
Summary
Path
optimality
Backup
availability /
optimality
Control
plane load
and stress
DP
Complexity
MED osc.
avoidance
All OK OK Max EASIEST OK
N ? OK / ? Bounded Depends on N
can be optimized ?
AS-Wide OK KO / ~OK ~MAX EASY OK
LP1/LP2 OK OK ~MAX EASIER OK
Decisive-1 OK OK ~MAX
Easy but
“spaghetti” OK
Group best KO ... KO ~MAX ? OK
Summary
Path
optimality
Backup
availability /
optimality
Control
plane load
and stress
DP
Complexity
MED osc.
avoidance
All OK OK Max EASIEST OK
N ? OK / ? Bounded Depends on N
can be optimized ?
AS-Wide OK KO / ~OK ~MAX EASY OK
LP1/LP2 OK OK ~MAX EASIER OK
Decisive-1 OK OK ~MAX
Easy but
“spaghetti” OK
Group best KO ... KO ~MAX ? OK
Summary
Path
optimality
Backup
availability /
optimality
Control
plane load
and stress
DP
Complexity
MED osc.
avoidance
All OK OK Max EASIEST OK
N ? OK / ? Bounded Depends on N
can be optimized ?
AS-Wide OK KO / ~OK ~MAX EASY OK
LP1/LP2 OK OK ~MAX EASIER OK
Decisive-1 OK OK ~MAX
Easy but
“spaghetti” OK
Group best KO ... KO ~MAX ? OK
Summary
Path
optimality
Backup
availability /
optimality
Control
plane load
and stress
DP
Complexity
MED osc.
avoidance
All OK OK Max EASIEST OK
N ? OK / ? Bounded Depends on N
can be optimized ?
AS-Wide OK KO / ~OK ~MAX EASY OK
LP1/LP2 OK OK ~MAX EASIER OK
Decisive-1 OK OK ~MAX
Easy but
“spaghetti” OK
Group best KO ... KO ~MAX ? OK
Summary
Path
optimality
Backup
availability /
optimality
Control
plane load
and stress
DP
Complexity
MED osc.
avoidance
All OK OK Max EASIEST OK
N ? OK / ? Bounded Depends on N
can be optimized ?
AS-Wide OK KO / ~OK ~MAX EASY OK
LP1/LP2 OK OK ~MAX EASIER OK
Decisive-1 OK OK ~MAX
Easy but
“spaghetti” OK
Group best KO ... KO ~MAX ? OK
Summary
Current Recommendations
• MUST:Add-N
• Default MUST be 2
• N MUST be configurable
• Option to not limit N (Add-All)
• OPTIONAL : AS-Wide best variants
• OPTIONAL-: All others
Deployment
• Session wide upgrade required (unlike Robert’s Diverse-paths)
• As for all solutions
• Forget about deployments w/o Ingress-Egress encap
• Transient forwarding loops if naïve PIC implementation
Tool
• Evaluate the behavior of Add-paths inYOUR network
• Analytical
• Numbers
Next Steps
• Add-path for eBGP
• Route Server implementation
• draft-jasinska-ix-bgp-route-server
+Add-All
+Filtering
+Pick one for clients not supporting add-paths
Next Steps
• Improvement of capability negotiation ?
• Currently send/receive bits
• Might want to make this a bit more expressive
• Announce N to route reflector ?
• Community based modes
• Advertise which mode the RR should run ???
Thanks !

More Related Content

What's hot

3GPP LTE introduction 3 (Attach)
3GPP LTE introduction  3 (Attach)3GPP LTE introduction  3 (Attach)
3GPP LTE introduction 3 (Attach)Ryuichi Yasunaga
 
VoLTE_SRVCC_E2Erevised
VoLTE_SRVCC_E2ErevisedVoLTE_SRVCC_E2Erevised
VoLTE_SRVCC_E2ErevisedAmit Deshmukh
 
LTE network: How it all comes together architecture technical poster
LTE network: How it all comes together architecture technical posterLTE network: How it all comes together architecture technical poster
LTE network: How it all comes together architecture technical posterDavid Swift
 
FreeSWITCH Modules for Asterisk Developers
FreeSWITCH Modules for Asterisk DevelopersFreeSWITCH Modules for Asterisk Developers
FreeSWITCH Modules for Asterisk DevelopersMoises Silva
 
Ericsson Technology Review: Integrated access and backhaul – a new type of wi...
Ericsson Technology Review: Integrated access and backhaul – a new type of wi...Ericsson Technology Review: Integrated access and backhaul – a new type of wi...
Ericsson Technology Review: Integrated access and backhaul – a new type of wi...Ericsson
 
Huawei cloud bb solution introduction
Huawei cloud bb solution introductionHuawei cloud bb solution introduction
Huawei cloud bb solution introductionAhmedEmad222
 
Accelerating 5G enterprise networks with edge computing and latency assurance
Accelerating 5G enterprise networks with edge computing and latency assuranceAccelerating 5G enterprise networks with edge computing and latency assurance
Accelerating 5G enterprise networks with edge computing and latency assuranceADVA
 
3GPP TR38.801-e00まとめ
3GPP TR38.801-e00まとめ3GPP TR38.801-e00まとめ
3GPP TR38.801-e00まとめTetsuya Hasegawa
 
Best practices-lte-call-flow-guide
Best practices-lte-call-flow-guideBest practices-lte-call-flow-guide
Best practices-lte-call-flow-guideMorg
 
Io t 무선통신 기술
Io t 무선통신 기술Io t 무선통신 기술
Io t 무선통신 기술남억 김
 
Gsm rf interview questions
Gsm rf interview questionsGsm rf interview questions
Gsm rf interview questionsradira03
 
An Introduction to Macrocells & Small Cells
An Introduction to Macrocells & Small CellsAn Introduction to Macrocells & Small Cells
An Introduction to Macrocells & Small Cells3G4G
 

What's hot (20)

Mohan r resume
Mohan r resumeMohan r resume
Mohan r resume
 
3GPP LTE introduction 3 (Attach)
3GPP LTE introduction  3 (Attach)3GPP LTE introduction  3 (Attach)
3GPP LTE introduction 3 (Attach)
 
VoLTE_SRVCC_E2Erevised
VoLTE_SRVCC_E2ErevisedVoLTE_SRVCC_E2Erevised
VoLTE_SRVCC_E2Erevised
 
Herramientas de monitorización de flujos ¿Qué tenemos? ¿Qué necesitamos?
Herramientas de monitorización de flujos ¿Qué tenemos? ¿Qué necesitamos?Herramientas de monitorización de flujos ¿Qué tenemos? ¿Qué necesitamos?
Herramientas de monitorización de flujos ¿Qué tenemos? ¿Qué necesitamos?
 
LTE network: How it all comes together architecture technical poster
LTE network: How it all comes together architecture technical posterLTE network: How it all comes together architecture technical poster
LTE network: How it all comes together architecture technical poster
 
IPSec VPN Basics
IPSec VPN BasicsIPSec VPN Basics
IPSec VPN Basics
 
FreeSWITCH Modules for Asterisk Developers
FreeSWITCH Modules for Asterisk DevelopersFreeSWITCH Modules for Asterisk Developers
FreeSWITCH Modules for Asterisk Developers
 
Ericsson Technology Review: Integrated access and backhaul – a new type of wi...
Ericsson Technology Review: Integrated access and backhaul – a new type of wi...Ericsson Technology Review: Integrated access and backhaul – a new type of wi...
Ericsson Technology Review: Integrated access and backhaul – a new type of wi...
 
UMTS/WCDMA Call Flows for Handovers
UMTS/WCDMA Call Flows for HandoversUMTS/WCDMA Call Flows for Handovers
UMTS/WCDMA Call Flows for Handovers
 
NFV evolution towards 5G
NFV evolution towards 5GNFV evolution towards 5G
NFV evolution towards 5G
 
Huawei cloud bb solution introduction
Huawei cloud bb solution introductionHuawei cloud bb solution introduction
Huawei cloud bb solution introduction
 
5G Handover.pptx
5G Handover.pptx5G Handover.pptx
5G Handover.pptx
 
Accelerating 5G enterprise networks with edge computing and latency assurance
Accelerating 5G enterprise networks with edge computing and latency assuranceAccelerating 5G enterprise networks with edge computing and latency assurance
Accelerating 5G enterprise networks with edge computing and latency assurance
 
3GPP TR38.801-e00まとめ
3GPP TR38.801-e00まとめ3GPP TR38.801-e00まとめ
3GPP TR38.801-e00まとめ
 
Best practices-lte-call-flow-guide
Best practices-lte-call-flow-guideBest practices-lte-call-flow-guide
Best practices-lte-call-flow-guide
 
Mpls L3_vpn
Mpls L3_vpnMpls L3_vpn
Mpls L3_vpn
 
3 g call flow
3 g call flow3 g call flow
3 g call flow
 
Io t 무선통신 기술
Io t 무선통신 기술Io t 무선통신 기술
Io t 무선통신 기술
 
Gsm rf interview questions
Gsm rf interview questionsGsm rf interview questions
Gsm rf interview questions
 
An Introduction to Macrocells & Small Cells
An Introduction to Macrocells & Small CellsAn Introduction to Macrocells & Small Cells
An Introduction to Macrocells & Small Cells
 

Similar to BGP Add-Paths: Control-Plane Evolution for Fast Convergence

Computer network (14)
Computer network (14)Computer network (14)
Computer network (14)NYversity
 
ISP Border Definition
ISP Border DefinitionISP Border Definition
ISP Border DefinitionQrator Labs
 
PLNOG 18 - Leonir Hoxha - Traffic Engineering with Segment Routing
PLNOG 18 - Leonir Hoxha - Traffic Engineering with Segment RoutingPLNOG 18 - Leonir Hoxha - Traffic Engineering with Segment Routing
PLNOG 18 - Leonir Hoxha - Traffic Engineering with Segment RoutingPROIDEA
 
Bgpcep odl summit 2015
Bgpcep odl summit 2015Bgpcep odl summit 2015
Bgpcep odl summit 2015Giles Heron
 
Optical Networking Trends & Evolution
Optical Networking Trends & EvolutionOptical Networking Trends & Evolution
Optical Networking Trends & EvolutionADVA
 
PLNOG 6: Rafał Szarecki - Routing w Sieci - Praktyczne aspekty implementacji ...
PLNOG 6: Rafał Szarecki - Routing w Sieci - Praktyczne aspekty implementacji ...PLNOG 6: Rafał Szarecki - Routing w Sieci - Praktyczne aspekty implementacji ...
PLNOG 6: Rafał Szarecki - Routing w Sieci - Praktyczne aspekty implementacji ...PROIDEA
 
BGP Path Selection & Attributes BGP Weight & BGP AS-Path Prepending
BGP Path Selection & Attributes BGP Weight & BGP AS-Path PrependingBGP Path Selection & Attributes BGP Weight & BGP AS-Path Prepending
BGP Path Selection & Attributes BGP Weight & BGP AS-Path PrependingShawan Roy
 
Part 11 : Interdomain routing with BGP
Part 11 : Interdomain routing with BGPPart 11 : Interdomain routing with BGP
Part 11 : Interdomain routing with BGPOlivier Bonaventure
 
BGP Traffic Engineering with SDN Controller
BGP Traffic Engineering with SDN ControllerBGP Traffic Engineering with SDN Controller
BGP Traffic Engineering with SDN ControllerAPNIC
 
Routing Security Workshop
Routing Security WorkshopRouting Security Workshop
Routing Security WorkshopRIPE NCC
 
Traffic Engineering Using Segment Routing
Traffic Engineering Using Segment Routing Traffic Engineering Using Segment Routing
Traffic Engineering Using Segment Routing Cisco Canada
 
Anywave Technical Seminar July 2016 OFDM ISDB-T2
Anywave Technical Seminar   July 2016 OFDM ISDB-T2Anywave Technical Seminar   July 2016 OFDM ISDB-T2
Anywave Technical Seminar July 2016 OFDM ISDB-T2Frank Massa
 
bgp features presentation routing protocle
bgp features presentation routing protoclebgp features presentation routing protocle
bgp features presentation routing protocleBadr Belhajja
 
Bgp 6 advanced transit as issues
Bgp 6   advanced transit as issuesBgp 6   advanced transit as issues
Bgp 6 advanced transit as issuesAuguste Behe
 
CMOS Analog IC design by Dr GS Javed - Refresher Course - Batch 1
CMOS Analog IC design by Dr GS Javed - Refresher Course - Batch 1CMOS Analog IC design by Dr GS Javed - Refresher Course - Batch 1
CMOS Analog IC design by Dr GS Javed - Refresher Course - Batch 1Javed G S, PhD
 
Routing Protocol EIGRP
Routing Protocol EIGRPRouting Protocol EIGRP
Routing Protocol EIGRPDmitry Figol
 

Similar to BGP Add-Paths: Control-Plane Evolution for Fast Convergence (20)

11 bgp-ethernet
11 bgp-ethernet11 bgp-ethernet
11 bgp-ethernet
 
Computer network (14)
Computer network (14)Computer network (14)
Computer network (14)
 
BGP Advanced topics
BGP Advanced topicsBGP Advanced topics
BGP Advanced topics
 
ISP Border Definition
ISP Border DefinitionISP Border Definition
ISP Border Definition
 
PLNOG 18 - Leonir Hoxha - Traffic Engineering with Segment Routing
PLNOG 18 - Leonir Hoxha - Traffic Engineering with Segment RoutingPLNOG 18 - Leonir Hoxha - Traffic Engineering with Segment Routing
PLNOG 18 - Leonir Hoxha - Traffic Engineering with Segment Routing
 
Part8-ibgp.pptx
Part8-ibgp.pptxPart8-ibgp.pptx
Part8-ibgp.pptx
 
Bgpcep odl summit 2015
Bgpcep odl summit 2015Bgpcep odl summit 2015
Bgpcep odl summit 2015
 
Optical Networking Trends & Evolution
Optical Networking Trends & EvolutionOptical Networking Trends & Evolution
Optical Networking Trends & Evolution
 
Lec7
Lec7Lec7
Lec7
 
PLNOG 6: Rafał Szarecki - Routing w Sieci - Praktyczne aspekty implementacji ...
PLNOG 6: Rafał Szarecki - Routing w Sieci - Praktyczne aspekty implementacji ...PLNOG 6: Rafał Szarecki - Routing w Sieci - Praktyczne aspekty implementacji ...
PLNOG 6: Rafał Szarecki - Routing w Sieci - Praktyczne aspekty implementacji ...
 
BGP Path Selection & Attributes BGP Weight & BGP AS-Path Prepending
BGP Path Selection & Attributes BGP Weight & BGP AS-Path PrependingBGP Path Selection & Attributes BGP Weight & BGP AS-Path Prepending
BGP Path Selection & Attributes BGP Weight & BGP AS-Path Prepending
 
Part 11 : Interdomain routing with BGP
Part 11 : Interdomain routing with BGPPart 11 : Interdomain routing with BGP
Part 11 : Interdomain routing with BGP
 
BGP Traffic Engineering with SDN Controller
BGP Traffic Engineering with SDN ControllerBGP Traffic Engineering with SDN Controller
BGP Traffic Engineering with SDN Controller
 
Routing Security Workshop
Routing Security WorkshopRouting Security Workshop
Routing Security Workshop
 
Traffic Engineering Using Segment Routing
Traffic Engineering Using Segment Routing Traffic Engineering Using Segment Routing
Traffic Engineering Using Segment Routing
 
Anywave Technical Seminar July 2016 OFDM ISDB-T2
Anywave Technical Seminar   July 2016 OFDM ISDB-T2Anywave Technical Seminar   July 2016 OFDM ISDB-T2
Anywave Technical Seminar July 2016 OFDM ISDB-T2
 
bgp features presentation routing protocle
bgp features presentation routing protoclebgp features presentation routing protocle
bgp features presentation routing protocle
 
Bgp 6 advanced transit as issues
Bgp 6   advanced transit as issuesBgp 6   advanced transit as issues
Bgp 6 advanced transit as issues
 
CMOS Analog IC design by Dr GS Javed - Refresher Course - Batch 1
CMOS Analog IC design by Dr GS Javed - Refresher Course - Batch 1CMOS Analog IC design by Dr GS Javed - Refresher Course - Batch 1
CMOS Analog IC design by Dr GS Javed - Refresher Course - Batch 1
 
Routing Protocol EIGRP
Routing Protocol EIGRPRouting Protocol EIGRP
Routing Protocol EIGRP
 

Recently uploaded

Motivation and Theory Maslow and Murray pdf
Motivation and Theory Maslow and Murray pdfMotivation and Theory Maslow and Murray pdf
Motivation and Theory Maslow and Murray pdfakankshagupta7348026
 
Call Girls in Rohini Delhi 💯Call Us 🔝8264348440🔝
Call Girls in Rohini Delhi 💯Call Us 🔝8264348440🔝Call Girls in Rohini Delhi 💯Call Us 🔝8264348440🔝
Call Girls in Rohini Delhi 💯Call Us 🔝8264348440🔝soniya singh
 
Open Source Strategy in Logistics 2015_Henrik Hankedvz-d-nl-log-conference.pdf
Open Source Strategy in Logistics 2015_Henrik Hankedvz-d-nl-log-conference.pdfOpen Source Strategy in Logistics 2015_Henrik Hankedvz-d-nl-log-conference.pdf
Open Source Strategy in Logistics 2015_Henrik Hankedvz-d-nl-log-conference.pdfhenrik385807
 
Exploring protein-protein interactions by Weak Affinity Chromatography (WAC) ...
Exploring protein-protein interactions by Weak Affinity Chromatography (WAC) ...Exploring protein-protein interactions by Weak Affinity Chromatography (WAC) ...
Exploring protein-protein interactions by Weak Affinity Chromatography (WAC) ...Salam Al-Karadaghi
 
OSCamp Kubernetes 2024 | SRE Challenges in Monolith to Microservices Shift at...
OSCamp Kubernetes 2024 | SRE Challenges in Monolith to Microservices Shift at...OSCamp Kubernetes 2024 | SRE Challenges in Monolith to Microservices Shift at...
OSCamp Kubernetes 2024 | SRE Challenges in Monolith to Microservices Shift at...NETWAYS
 
NATIONAL ANTHEMS OF AFRICA (National Anthems of Africa)
NATIONAL ANTHEMS OF AFRICA (National Anthems of Africa)NATIONAL ANTHEMS OF AFRICA (National Anthems of Africa)
NATIONAL ANTHEMS OF AFRICA (National Anthems of Africa)Basil Achie
 
Night 7k Call Girls Noida Sector 128 Call Me: 8448380779
Night 7k Call Girls Noida Sector 128 Call Me: 8448380779Night 7k Call Girls Noida Sector 128 Call Me: 8448380779
Night 7k Call Girls Noida Sector 128 Call Me: 8448380779Delhi Call girls
 
George Lever - eCommerce Day Chile 2024
George Lever -  eCommerce Day Chile 2024George Lever -  eCommerce Day Chile 2024
George Lever - eCommerce Day Chile 2024eCommerce Institute
 
Presentation for the Strategic Dialogue on the Future of Agriculture, Brussel...
Presentation for the Strategic Dialogue on the Future of Agriculture, Brussel...Presentation for the Strategic Dialogue on the Future of Agriculture, Brussel...
Presentation for the Strategic Dialogue on the Future of Agriculture, Brussel...Krijn Poppe
 
Microsoft Copilot AI for Everyone - created by AI
Microsoft Copilot AI for Everyone - created by AIMicrosoft Copilot AI for Everyone - created by AI
Microsoft Copilot AI for Everyone - created by AITatiana Gurgel
 
The 3rd Intl. Workshop on NL-based Software Engineering
The 3rd Intl. Workshop on NL-based Software EngineeringThe 3rd Intl. Workshop on NL-based Software Engineering
The 3rd Intl. Workshop on NL-based Software EngineeringSebastiano Panichella
 
OSCamp Kubernetes 2024 | Zero-Touch OS-Infrastruktur für Container und Kubern...
OSCamp Kubernetes 2024 | Zero-Touch OS-Infrastruktur für Container und Kubern...OSCamp Kubernetes 2024 | Zero-Touch OS-Infrastruktur für Container und Kubern...
OSCamp Kubernetes 2024 | Zero-Touch OS-Infrastruktur für Container und Kubern...NETWAYS
 
Genesis part 2 Isaiah Scudder 04-24-2024.pptx
Genesis part 2 Isaiah Scudder 04-24-2024.pptxGenesis part 2 Isaiah Scudder 04-24-2024.pptx
Genesis part 2 Isaiah Scudder 04-24-2024.pptxFamilyWorshipCenterD
 
CTAC 2024 Valencia - Sven Zoelle - Most Crucial Invest to Digitalisation_slid...
CTAC 2024 Valencia - Sven Zoelle - Most Crucial Invest to Digitalisation_slid...CTAC 2024 Valencia - Sven Zoelle - Most Crucial Invest to Digitalisation_slid...
CTAC 2024 Valencia - Sven Zoelle - Most Crucial Invest to Digitalisation_slid...henrik385807
 
Open Source Camp Kubernetes 2024 | Monitoring Kubernetes With Icinga by Eric ...
Open Source Camp Kubernetes 2024 | Monitoring Kubernetes With Icinga by Eric ...Open Source Camp Kubernetes 2024 | Monitoring Kubernetes With Icinga by Eric ...
Open Source Camp Kubernetes 2024 | Monitoring Kubernetes With Icinga by Eric ...NETWAYS
 
call girls in delhi malviya nagar @9811711561@
call girls in delhi malviya nagar @9811711561@call girls in delhi malviya nagar @9811711561@
call girls in delhi malviya nagar @9811711561@vikas rana
 
WhatsApp 📞 9892124323 ✅Call Girls In Juhu ( Mumbai )
WhatsApp 📞 9892124323 ✅Call Girls In Juhu ( Mumbai )WhatsApp 📞 9892124323 ✅Call Girls In Juhu ( Mumbai )
WhatsApp 📞 9892124323 ✅Call Girls In Juhu ( Mumbai )Pooja Nehwal
 
SBFT Tool Competition 2024 -- Python Test Case Generation Track
SBFT Tool Competition 2024 -- Python Test Case Generation TrackSBFT Tool Competition 2024 -- Python Test Case Generation Track
SBFT Tool Competition 2024 -- Python Test Case Generation TrackSebastiano Panichella
 
Work Remotely with Confluence ACE 2.pptx
Work Remotely with Confluence ACE 2.pptxWork Remotely with Confluence ACE 2.pptx
Work Remotely with Confluence ACE 2.pptxmavinoikein
 
Open Source Camp Kubernetes 2024 | Running WebAssembly on Kubernetes by Alex ...
Open Source Camp Kubernetes 2024 | Running WebAssembly on Kubernetes by Alex ...Open Source Camp Kubernetes 2024 | Running WebAssembly on Kubernetes by Alex ...
Open Source Camp Kubernetes 2024 | Running WebAssembly on Kubernetes by Alex ...NETWAYS
 

Recently uploaded (20)

Motivation and Theory Maslow and Murray pdf
Motivation and Theory Maslow and Murray pdfMotivation and Theory Maslow and Murray pdf
Motivation and Theory Maslow and Murray pdf
 
Call Girls in Rohini Delhi 💯Call Us 🔝8264348440🔝
Call Girls in Rohini Delhi 💯Call Us 🔝8264348440🔝Call Girls in Rohini Delhi 💯Call Us 🔝8264348440🔝
Call Girls in Rohini Delhi 💯Call Us 🔝8264348440🔝
 
Open Source Strategy in Logistics 2015_Henrik Hankedvz-d-nl-log-conference.pdf
Open Source Strategy in Logistics 2015_Henrik Hankedvz-d-nl-log-conference.pdfOpen Source Strategy in Logistics 2015_Henrik Hankedvz-d-nl-log-conference.pdf
Open Source Strategy in Logistics 2015_Henrik Hankedvz-d-nl-log-conference.pdf
 
Exploring protein-protein interactions by Weak Affinity Chromatography (WAC) ...
Exploring protein-protein interactions by Weak Affinity Chromatography (WAC) ...Exploring protein-protein interactions by Weak Affinity Chromatography (WAC) ...
Exploring protein-protein interactions by Weak Affinity Chromatography (WAC) ...
 
OSCamp Kubernetes 2024 | SRE Challenges in Monolith to Microservices Shift at...
OSCamp Kubernetes 2024 | SRE Challenges in Monolith to Microservices Shift at...OSCamp Kubernetes 2024 | SRE Challenges in Monolith to Microservices Shift at...
OSCamp Kubernetes 2024 | SRE Challenges in Monolith to Microservices Shift at...
 
NATIONAL ANTHEMS OF AFRICA (National Anthems of Africa)
NATIONAL ANTHEMS OF AFRICA (National Anthems of Africa)NATIONAL ANTHEMS OF AFRICA (National Anthems of Africa)
NATIONAL ANTHEMS OF AFRICA (National Anthems of Africa)
 
Night 7k Call Girls Noida Sector 128 Call Me: 8448380779
Night 7k Call Girls Noida Sector 128 Call Me: 8448380779Night 7k Call Girls Noida Sector 128 Call Me: 8448380779
Night 7k Call Girls Noida Sector 128 Call Me: 8448380779
 
George Lever - eCommerce Day Chile 2024
George Lever -  eCommerce Day Chile 2024George Lever -  eCommerce Day Chile 2024
George Lever - eCommerce Day Chile 2024
 
Presentation for the Strategic Dialogue on the Future of Agriculture, Brussel...
Presentation for the Strategic Dialogue on the Future of Agriculture, Brussel...Presentation for the Strategic Dialogue on the Future of Agriculture, Brussel...
Presentation for the Strategic Dialogue on the Future of Agriculture, Brussel...
 
Microsoft Copilot AI for Everyone - created by AI
Microsoft Copilot AI for Everyone - created by AIMicrosoft Copilot AI for Everyone - created by AI
Microsoft Copilot AI for Everyone - created by AI
 
The 3rd Intl. Workshop on NL-based Software Engineering
The 3rd Intl. Workshop on NL-based Software EngineeringThe 3rd Intl. Workshop on NL-based Software Engineering
The 3rd Intl. Workshop on NL-based Software Engineering
 
OSCamp Kubernetes 2024 | Zero-Touch OS-Infrastruktur für Container und Kubern...
OSCamp Kubernetes 2024 | Zero-Touch OS-Infrastruktur für Container und Kubern...OSCamp Kubernetes 2024 | Zero-Touch OS-Infrastruktur für Container und Kubern...
OSCamp Kubernetes 2024 | Zero-Touch OS-Infrastruktur für Container und Kubern...
 
Genesis part 2 Isaiah Scudder 04-24-2024.pptx
Genesis part 2 Isaiah Scudder 04-24-2024.pptxGenesis part 2 Isaiah Scudder 04-24-2024.pptx
Genesis part 2 Isaiah Scudder 04-24-2024.pptx
 
CTAC 2024 Valencia - Sven Zoelle - Most Crucial Invest to Digitalisation_slid...
CTAC 2024 Valencia - Sven Zoelle - Most Crucial Invest to Digitalisation_slid...CTAC 2024 Valencia - Sven Zoelle - Most Crucial Invest to Digitalisation_slid...
CTAC 2024 Valencia - Sven Zoelle - Most Crucial Invest to Digitalisation_slid...
 
Open Source Camp Kubernetes 2024 | Monitoring Kubernetes With Icinga by Eric ...
Open Source Camp Kubernetes 2024 | Monitoring Kubernetes With Icinga by Eric ...Open Source Camp Kubernetes 2024 | Monitoring Kubernetes With Icinga by Eric ...
Open Source Camp Kubernetes 2024 | Monitoring Kubernetes With Icinga by Eric ...
 
call girls in delhi malviya nagar @9811711561@
call girls in delhi malviya nagar @9811711561@call girls in delhi malviya nagar @9811711561@
call girls in delhi malviya nagar @9811711561@
 
WhatsApp 📞 9892124323 ✅Call Girls In Juhu ( Mumbai )
WhatsApp 📞 9892124323 ✅Call Girls In Juhu ( Mumbai )WhatsApp 📞 9892124323 ✅Call Girls In Juhu ( Mumbai )
WhatsApp 📞 9892124323 ✅Call Girls In Juhu ( Mumbai )
 
SBFT Tool Competition 2024 -- Python Test Case Generation Track
SBFT Tool Competition 2024 -- Python Test Case Generation TrackSBFT Tool Competition 2024 -- Python Test Case Generation Track
SBFT Tool Competition 2024 -- Python Test Case Generation Track
 
Work Remotely with Confluence ACE 2.pptx
Work Remotely with Confluence ACE 2.pptxWork Remotely with Confluence ACE 2.pptx
Work Remotely with Confluence ACE 2.pptx
 
Open Source Camp Kubernetes 2024 | Running WebAssembly on Kubernetes by Alex ...
Open Source Camp Kubernetes 2024 | Running WebAssembly on Kubernetes by Alex ...Open Source Camp Kubernetes 2024 | Running WebAssembly on Kubernetes by Alex ...
Open Source Camp Kubernetes 2024 | Running WebAssembly on Kubernetes by Alex ...
 

BGP Add-Paths: Control-Plane Evolution for Fast Convergence

  • 1. Pierre Francois Institute IMDEA Networks Pierre.Francois@imdea.org BGP Add-Paths
  • 2. ToC • Data-plane evolution : BGP PIC • Control-plane evolution : BGP Add-paths
  • 3. BGP PIC Sub-second data-plane convergence • Fast switchover to pre-installed alternate paths • Convergence, not Fast ReRoute • BGP converges when IGP converges
  • 4. FIB design From flat FIB... Prefix NH or oif p/P ASBR1 q/Q ASBR1 r/R ASBR2 ... ... ... ... ASBR1 north oif ASBR2 east oif RIB ASBR1 ASBR2 R1 Prefix oif p/P north oif q/Q north oif r/R east oif ASBR1 north oif ASBR2 east oif FIB }BGP }IGP IGP change leads to FIB Updates for BGP prefixes !
  • 5. FIB design to hierarchical FIB... Prefix NH or oif p/P ASBR1 q/Q ASBR1 r/R ASBR2 ... ... ... ... ASBR1 north oif ASBR2 east oif FIB PIC “core” ASBR1 ASBR2 R1 Update of the outgoing interface for a BGP nexthop impacts all prefixes tracked by the nexthop
  • 6. FIB design ...to generalized FIB p/P ... z/Z prim. nh back. nh igp pfx k via neigh. a igp pfx k via neigh. b igp pfx i via neigh. x igp pfx j via neigh. y eastnortheastnorth BGP Path Lists Primary nh / Backup nh IGP (ECMP) PLs oifs prim. nh back. nh BGP prefixes share members of the BGP PL set Small PLs # in practice A given IGP PL is shared by BGP PLs # IGP PLs = n Becomes a list when BGP Multipath is used Support for PIC “core”/“edge”
  • 7. FIB design generalized FIB example (R1) p/P ... z/Z ASBR1 ASBR2 ASBR3 ASBR3 via R2 ASBR3 via R3 ASBR1 via R4 R2 R3 ASBR2 ASBR3 ASBR2 via R2 eastnortheast R4 north BGPPLsIGPPLsoifs z/Z p/P R1 ASBR1 ...
  • 8. FIB design generalized FIB example (R1) p/P ... z/Z ASBR1 ASBR2 ASBR3 ASBR3 via R2 ASBR3 via R3 ASBR1 via R4 R2 R3 ASBR2 via R2 eastnortheast R4 north BGPPLsIGPPLsoifs z/Z p/P R1 ... ASBR2 ASBR3 ASBR1
  • 9. FIB design generalized FIB example (R1) p/P ... z/Z ASBR1 ASBR2 ASBR3 ASBR3 via R2 ASBR3 via R3 ASBR1 via R4 R2 R3 ASBR2 via R2 eastnortheast R4 north BGPPLsIGPPLsoifs z/Z p/P R1 ... ASBR2 ASBR3 ASBR1
  • 10. FIB design generalized FIB example (R1) p/P ... z/Z ASBR1 ASBR2 ASBR3 ASBR3 via R2 ASBR3 via R3 ASBR1 via R4 R2 R3 ASBR2 via R2 eastnortheast R4 north BGPPLsIGPPLsoifs z/Z p/P R1 ASBR2 ASBR3 ASBR1
  • 11. FIB design PL “Backwalking” time p/P ... z/Z ASBR1 ASBR2 ASBR3 ASBR3 via R2 ASBR3 via R3 ASBR1 via R4 R2 R3 ASBR2 via R2 eastnortheast R4 north BGPPLsIGPPLsoifs z/Z p/P R1 ASBR2 ASBR3 ASBR1
  • 12. Backwalking time Testbed Z/z AS X AS Y iBGP eBGP Y2 Y3 Y1X1 X5 e1 e2 X4 X3 X2 100k 1k loopbacks Evenly scatteredtraffic to 1/10 of the prefixes
  • 13. FIB design “PL Backwalking” time in a CRS-1 0 50 100 150 200 0 100 200 300 400 500 600 700 800 900 1000 LoC(ms) 1000 sets of 100 BGP destinations. Each set corresponds to a different BGP Path-List 52 flows that were already going through the “alternate” nexthop “IGP reactivity” Actual Backwalking time (48 flows)
  • 14. Not a futuristic talk • BGP PIC Core/Edge is available
  • 15. All our problems solved ? • PIC makes data-plane convergence really fast • Useless if no alternates to converge to...
  • 16. Policies let paths be hidden ASBR2 ASBR1 p : localpref = 90 p : localpref = 100 p p p p
  • 17. ASBR2 ASBR1 p : localpref = 100 p : localpref = 100 p p p RR1 PE p p Route Reflection hides paths
  • 18. Can’t we just turn adv-best-external on ? ASBR2 ASBR1 p : localpref = {100,90} p : localpref = 100 p p pp RR1 RR2 p p p PE p p p p pp Doesn’t solve the route reflection problem
  • 19. Motivation for Add-paths • Initial “motivation” was MED oscillation avoidance • Emergence of new IDR requirements a few years ago • Fast recovery upon peering link / ASBR failure (PIC) • Load balancing among multiple primary BGP NHs • Hitless planned maintenance • “Optimal” hot-potato routing • (Churn reduction / convergence concealment)
  • 20. BGP Add paths ASBR2 ASBR1 p p RR1 p p pPE p p • Advertise multiple BGP paths • towards the same NLRI • over a single iBGP session • draft-ietf-idr-add-paths p
  • 21. BGP Add paths ASBR2 ASBR1 p p RR1 p p pPE p p p • Install PIC state • Load balance • Hitless reroute to alternate • ASBR2 can be shut “hitlessly” • Pick closest exist • Reduced churn upon loss
  • 22. Churn reduction • Churn reduction for primary paths... • ...with internal churn increase for non-primary ones
  • 23. Churn Reduction ASBR2 ASBR1 p : localpref = 90 p : localpref = 100 p p p p PE Withdraw, Update Withdraw, Update, Update ASBR3 p p : LP = 80 Update (or silence)
  • 24. Churn Reduction ASBR2 ASBR1 p : localpref = 90 p : localpref = 100 p p p p PE ASBR3 p p : LP = 80 “Churny” internal for “Quiet” external Update ...or silence...
  • 25. What to send ? Application dependent • MED oscillation ? • Avoid hiding lowest MED paths from neighboring ASes • PIC ? • Feed all PE nodes with 2 paths • Load-balancing ? • Feed all PE nodes with N paths • Hitless maintenance • Never have 0 paths • Churn reduction • Favor dissemination of post-convergence paths
  • 26. draft-ietf-idr-add-paths • Adds an identifier to paths • Identifier only has session meaning
  • 27. draft-ietf-idr-add-paths-guidelines • draft-ietf-idr-add-paths doesn’t tell which paths to select • Multiple motivations lead to different “selection modes” • Evaluate them (what they give, at which cost) • analytical • “numbers”
  • 28. Modes • All paths • N paths • AS-Wide best paths (and variants) • Neighbor-AS group best paths • (Best Loc Pref / Second best Loc Pref paths) • (Decisive step -1 paths)
  • 29. All Paths ASBR2 ASBR1 p p RR1 p p pPE p p p ASBR3 p p p p Known paths almost like if iBGP full-mesh and adv-ext-best on
  • 30. Add-All • Easiest Decision Process algorithm • Nice mode to turn on towards a BGP monitor • Depending on how many paths for each p • Memory monster (control-plane) • Internal update churn monster
  • 32. Add-N paths ASBR2 ASBR1 p p RR1 p p pPE p p p ASBR3 p p p p p p p (1) (2) p Usually consider NH disjoint paths
  • 33. Add-N-Paths • Most practical use cases • Set N to 2 for basic PIC support • Set N to desired number of NHs for LB • Memory hit kept under control through configuration of N • Configurable per AFI/SAFI (some may provide finer tuning) • Doesn’t solve MED oscillations • Developers tend to implement it as N*DP
  • 34. AS-Wide Best paths ASBR2 ASBR1 p p RR1 p LP 100 AS Path length : 3 p PE p p ASBR3 p p p p p p p (LP) p p LP 100 AS Path length : 3 p LP 90 AS Path length : 3 p (AS Path) p p p p(MED) Not hiding paths that another node would have preferred
  • 35. • “The router doesn’t make local decisions” • DP complexity < not running add-paths • Provides routing optimality and max LB potential • Provides MED oscillation avoidance • !!! Doesn’t feed PIC !!! AS-Wide Best paths
  • 36. AS-Wide Best paths ASBR2 ASBR1 p p RR1 p LP 100 AS Path length : 3 p PE p p ASBR3 p p p p p(LP) p p LP 90 AS Path length : 3 p LP 90 AS Path length : 3 p p One winner problem still applies
  • 37. AS-Wide Best paths ASBR2 ASBR1 p p RR1 p LP 100 AS Path length : 3 p PE p p ASBR3 p p p p p p (LP) p p LP 100 AS Path length : 2 p LP 90 AS Path length : 3 p (AS Path) p One winner problem still applies p
  • 38. Neighbor-AS group best • Avoids MED oscillations • draft-walton-bgp-route-oscillation-stop • Advertise the best path from each neighboring AS • No ASBR picks as best a non-lowest MED path
  • 39. Neighbor-AS group best • Provides paths from different neighboring ASes, but • their existence is not guaranteed • nothing to deal with post-convergence paths
  • 40. Path optimality Backup availability / optimality Control plane load and stress DP Complexity MED osc. avoidance All OK OK Max EASIEST OK N ? OK / ? Bounded Depends on N can be optimized ? AS-Wide OK KO / ~OK ~MAX EASY OK LP1/LP2 OK OK ~MAX EASIER OK Decisive-1 OK OK ~MAX Easy but “spaghetti” OK Group best KO ... KO ~MAX ? OK Summary
  • 41. Path optimality Backup availability / optimality Control plane load and stress DP Complexity MED osc. avoidance All OK OK Max EASIEST OK N ? OK / ? Bounded Depends on N can be optimized ? AS-Wide OK KO / ~OK ~MAX EASY OK LP1/LP2 OK OK ~MAX EASIER OK Decisive-1 OK OK ~MAX Easy but “spaghetti” OK Group best KO ... KO ~MAX ? OK Summary
  • 42. Path optimality Backup availability / optimality Control plane load and stress DP Complexity MED osc. avoidance All OK OK Max EASIEST OK N ? OK / ? Bounded Depends on N can be optimized ? AS-Wide OK KO / ~OK ~MAX EASY OK LP1/LP2 OK OK ~MAX EASIER OK Decisive-1 OK OK ~MAX Easy but “spaghetti” OK Group best KO ... KO ~MAX ? OK Summary
  • 43. Path optimality Backup availability / optimality Control plane load and stress DP Complexity MED osc. avoidance All OK OK Max EASIEST OK N ? OK / ? Bounded Depends on N can be optimized ? AS-Wide OK KO / ~OK ~MAX EASY OK LP1/LP2 OK OK ~MAX EASIER OK Decisive-1 OK OK ~MAX Easy but “spaghetti” OK Group best KO ... KO ~MAX ? OK Summary
  • 44. Path optimality Backup availability / optimality Control plane load and stress DP Complexity MED osc. avoidance All OK OK Max EASIEST OK N ? OK / ? Bounded Depends on N can be optimized ? AS-Wide OK KO / ~OK ~MAX EASY OK LP1/LP2 OK OK ~MAX EASIER OK Decisive-1 OK OK ~MAX Easy but “spaghetti” OK Group best KO ... KO ~MAX ? OK Summary
  • 45. Path optimality Backup availability / optimality Control plane load and stress DP Complexity MED osc. avoidance All OK OK Max EASIEST OK N ? OK / ? Bounded Depends on N can be optimized ? AS-Wide OK KO / ~OK ~MAX EASY OK LP1/LP2 OK OK ~MAX EASIER OK Decisive-1 OK OK ~MAX Easy but “spaghetti” OK Group best KO ... KO ~MAX ? OK Summary
  • 46. Path optimality Backup availability / optimality Control plane load and stress DP Complexity MED osc. avoidance All OK OK Max EASIEST OK N ? OK / ? Bounded Depends on N can be optimized ? AS-Wide OK KO / ~OK ~MAX EASY OK LP1/LP2 OK OK ~MAX EASIER OK Decisive-1 OK OK ~MAX Easy but “spaghetti” OK Group best KO ... KO ~MAX ? OK Summary
  • 47. Path optimality Backup availability / optimality Control plane load and stress DP Complexity MED osc. avoidance All OK OK Max EASIEST OK N ? OK / ? Bounded Depends on N can be optimized ? AS-Wide OK KO / ~OK ~MAX EASY OK LP1/LP2 OK OK ~MAX EASIER OK Decisive-1 OK OK ~MAX Easy but “spaghetti” OK Group best KO ... KO ~MAX ? OK Summary
  • 48. Path optimality Backup availability / optimality Control plane load and stress DP Complexity MED osc. avoidance All OK OK Max EASIEST OK N ? OK / ? Bounded Depends on N can be optimized ? AS-Wide OK KO / ~OK ~MAX EASY OK LP1/LP2 OK OK ~MAX EASIER OK Decisive-1 OK OK ~MAX Easy but “spaghetti” OK Group best KO ... KO ~MAX ? OK Summary
  • 49. Current Recommendations • MUST:Add-N • Default MUST be 2 • N MUST be configurable • Option to not limit N (Add-All) • OPTIONAL : AS-Wide best variants • OPTIONAL-: All others
  • 50. Deployment • Session wide upgrade required (unlike Robert’s Diverse-paths) • As for all solutions • Forget about deployments w/o Ingress-Egress encap • Transient forwarding loops if naïve PIC implementation
  • 51. Tool • Evaluate the behavior of Add-paths inYOUR network • Analytical • Numbers
  • 52. Next Steps • Add-path for eBGP • Route Server implementation • draft-jasinska-ix-bgp-route-server +Add-All +Filtering +Pick one for clients not supporting add-paths
  • 53. Next Steps • Improvement of capability negotiation ? • Currently send/receive bits • Might want to make this a bit more expressive • Announce N to route reflector ? • Community based modes • Advertise which mode the RR should run ???