210 likes | 316 Views
Doing Don’ts: Modifying BGP Attributes within an Autonomous System. Luca Cittadini, Stefano Vissicchio , Giuseppe Di Battista Università degli Studi RomaTre. IEEE/IFIP Network Operations and Management Symposium (NOMS) - April 2010. The Point of View of an AS.
E N D
Doing Don’ts: Modifying BGP Attributeswithin an Autonomous System Luca Cittadini, Stefano Vissicchio, Giuseppe Di Battista Università degli Studi RomaTre IEEE/IFIP Network Operations and Management Symposium (NOMS) - April 2010
The Point ofViewofan AS eBGPpeeringstoexchange information on interdomain routing RouteReflectorhierarchy, to scale iBGP iBGPpeeringstodistributeeBGProuteswithinan AS BR2 BR1 AS X RR2 RR1
About The Role of iBGP • iBGP just propagateseBGProutesacross the AS • Typically, no policy isapplied in iBGP • Policies are appliedonly at the border • Best practices do notrecommendapplyingpolicies in iBGP • Research community oftenassumesthatiBGPmessages are leftuntouched ([Griffin02,Flavel08])
Our Contributions: Doing Don’ts • ConsequencesofchangingiBGPmessages are poorlyunderstood • whyan ISP should (not) modifyiBGPmessages? • whochangesiBGPattributes in the real world? • what are the consequences on iBGPstability? • technique and toolfordetectinginstabilities • how can an ISP changeiBGPattributeswithoutaffectingiBGPstability? • configurationguidelines
Why Should an AS Change iBGP attributes? • attributesinfluence the BGP decisionprocess • An ISP can useiBGPattributeschangingasanadditionalknobtobetterengineeritstraffic • recentCisco IOS releasesallowoperatorstopartiallymodify the decisionprocess
Simple Scenario eBGPannouncement AS-PATH YZD eBGPannouncement AS-PATH ABCD US EU AMS-IX PAIX AS X BR2 BR1 RR2 RR1
Simple Scenario eBGPannouncement AS-PATH YZD eBGPannouncement AS-PATH ABCD US EU iBGPattributes are notchangedbyany router AMS-IX PAIX all the trafficto AS D exitsfrom BR2 AS X BR2 BR1 traffic flow RR2 RR1
Simple Scenario eBGPannouncement AS-PATH YZD eBGPannouncement AS-PATH ABCD US EU AMS-IX PAIX ifmsgfrom BR2: set local-pref 120 ifmsgfrom BR1: set local-pref 120 AS X BR2 BR1 traffic flow traffic flow RR2 RR1
Who engineers iBGP in real world? routeswithdifferent AS-PATH length route-server.phx1>shipbgp 189.90.12.0/24 Paths: (4 available, best #1) 13878 15180 28189 28189 28189 28189, (received & used) 67.17.64.89 from 67.17.80.210 (67.17.80.210) Origin IGP, metric 0, localpref 300, valid, internal, best Community: 3549:4471 3549:30840 Originator: 67.17.81.221, Cluster list: 0.0.0.92 … 28189 28189 28189 28189 28189 28189 28189, (received & used) 67.17.64.89 from 67.17.82.40 (67.17.82.40) Origin IGP, metric 0, localpref 300, valid, internal Community: 3549:4950 3549:34076 Originator: 200.186.0.67, Cluster list: 0.0.2.109, 0.0.5.2 internal router
iBGP Attribute Changing in Internet • We estimated the number of ASes which exhibit simultaneously active routes having different AS-PATH length • conservative approach • dataset: RIBs from RIS and Routeviews (May 2009) • We found that 1,838ASes out of 32,066 (5.7%) change iBGP attributes
What Impact on Routing Stability? • Weuse a custom extensionof the StablePathProblem (SPP) frameworkas the model • anundirectedgraphrepresents (i)BGP peerings a single destinationprefixisoriginatedby 0 210 20 130 10 1 2 at eachnode, permittedpathstoreach the destinationprefix are specified permittedpaths are rankedaccordingto the BGP decisionprocess 0 0 eBGPpaths are collapsed in single edges 420 430 3 4 30
More Flexibility = More Instability • Theo: BGP configurationsthatallowiBGPattributechanging can generate a larger set ofoscillationsthan BGP configurationswhereiBGPattributes are notmodified. ifmsgfrom b2: set local-pref 120 ifmsgfrom b1: set local-pref 120 b1 b2 0 b1 0 b2 b1 0 b2 0 b1 b2 AS A b1 b2 0 0
Detecting Oscillations • We propose a techniquetoautomaticallycheckiBGPconfigurationforroutingstability • Known detection techniques assume thatiBGPattributes are leftunchanged [Flavel08] • ConvenientlytranslatinganiBGPconfigurationintoan SPP instanceallowsustocheckforstabilityevenwheniBGPattributes are changed • The SPP instanceisthencheckedwith a knownpolynomialheuristicalgorithm [Cittadini08]
A Stability Checker Tool • Webuilt and evaluated a prototypetoolabletocheckiBGPconfigurationsforstability
Evaluation of the Tool • Weevaluated the stabilitychecker on bothsynthetic and real-worldconfigurations • in-vitroconfigurationswith up to 1100 iBGPspeakingrouters • threeroutereflectionlevels • 20 eBGProutesinjected • real-worldconfigurationof a medium-sizedItalian ISP forall the prefixes in the full RIB • the entire test takesonlyfewminutes
How Can We Prevent Oscillations? • More flexibilityimpliesincreasedinstability • challenge: changeiBGPattributes • with profit • withoutaffectingroutingstability • requiringlow management complexity • Weprovidetwoconfigurationguidelines • twomainhigh-levelrequirements • routesshouldberankedaccordingtorevenues and costs [GaoRexford00] • internaltransitcostshouldbeminimized
Configuration Guidelines Guideline A.EveryiBGP speaker assignstoeach route a local-preferencevaluesuchthat • LPcust > LPpeer > LPprov configurationisrobusttoexternalfactors routes are rankedaccordingto the commercial relationshipsbetweenASes • Guideline B.Routereflectorsprefer the routes • propagatedfromtheirownclients • LPcust-client> LPcust-non-client > LPpeer-client> LPpeer-non-client internaltransitisminimizedwhilerespectingpoliciesfor commercial relationships Wealsoformallyprovedthattheseguidelines guaranteeroutingstability Tokeep management complexity low, the community attribute can beusedas a tag and the valueof the local-preferenceattribute can bechangedaccordingtotags
Conclusions • Weexplored the possibilityofchangingattributes in iBGP, evaluatingpros
Conclusions • Weexplored the possibilityofchangingattributes in iBGP, evaluatingpros and cons
Thank You! • Questions?