View
21
Download
0
Category
Preview:
Citation preview
LargeBGPCommunities
Matsuzaki ‘maz’Yoshinobu<maz@iij.ad.jp>
2016/11/18 BTNOG3,ThimphuBhutan 1
ABriefHistoryofBGPCommunities• BGPCommunitiesAttribute(RFC1997,August1996)– DesignedtosimplifyInternetroutingpolicies– Encodesa32-bitvaluedisplayedas“16-bitASN:16-bitvalue”– BroadsupportinBGPimplementations,andwidelydeployedbynetworkoperatorsforInternetrouting
– Forexample:2914:4202914:12062914:22032914:3200• BGPExtendedCommunitiesAttribute(RFC4360,February2006)– Addslabel,value,longerrange– UsefulforL3VPNs,fewerimplementationsavailable– Slowadoptionrate– Cannotseetheforestforthetrees(RFC7153)
2016/11/18 BTNOG3,ThimphuBhutan 2
WhatNetworkOperatorsUse
• RFC1997stylecommunities,astheyhavebeenusedforthepast20years• Widelydocumentedintrainingmaterial,operationsprocedures,policy
documentation• RequiredinRFPsanddocumentedincontracts
2016/11/18 BTNOG3,ThimphuBhutan 3Sources:https://www.us.ntt.net/support/policy/routing.cfm (AS2914),https://onestep.net/communities/
RFC1997Communities:
WidelyDeployedforInternetRouting
AlongCameaProblem• Weknewwe’drunoutof16-bitASNseventually• 32-bitASNworkstartedinJanuary2001
– RFC4893inMay2007– RFC6793inDecember2012
• RIRsstartedallocating32-bitASNsbyrequestin2007• Nodistinctionbetween16-bitand32-bitASNsnow
– WidelyusedasedgeandtransitASNs• However,youcan’tfita32-bitvalueintoa16-bitfield
– Can’tusenative32-bitASNsatall– 32-bitASNownersuseprivateASNsincommunitiesorsome
otherkludge– CreatesnamespacecollisionsbetweenASNs
2016/11/18 BTNOG3,ThimphuBhutan 4
32-bitASNsina16-bitField
TheSolution
2016/11/18 BTNOG3,ThimphuBhutan 5Source:https://tools.ietf.org/html/draft-ietf-idr-large-community
J. Heitz, Ed.Cisco
J. Snijders, Ed.NTT
K. PatelArrcus
I. Bagdonas Equinix
A. Simpson Nokia
N. HilliardINEX
October 29, 2016
Large BGP Communitiesdraft-ietf-idr-large-community-06
Abstract
This document describes the Large BGP Communities attribute, an extension to BGP-4. This attribute provides a mechanism to signalopaque information within separate namespaces to aid in routingmanagement. The attribute is suitable for use in 4-octet ASNs.
IDRInternet-DraftIntended status: Standards TrackExpires: May 2, 2017
RelatedWorkfor32-BitASNsinCommunities• 4-OctetASSpecificBGPExtendedCommunity(RFC5668,October2009)
– RFC4360styleextendedcommunityfor32-bitASNs– Perceivedasamicrooptimization
• FlexibleBGPCommunities(draft-lange-flexible-bgp-communities)– December2002– August2010– BGPpeercommunitygrouping,32-bitASNs,plusotherstuff– Noconsensusorimplementations
• WideBGPCommunitiesAttribute(draft-ietf-idr-wide-bgp-communities)– July2010– September2016– Complementaryandcomprehensivesolution– GeneralizedBGPpeercommunitygrouping,32-bitASNs,plusotherstuff– Noconsensusorimplementations,needstimetodevelop
• NoInternetroutingcommunitiessolutionforalmost10years2016/11/18 BTNOG3,ThimphuBhutan 6
WhyshouldIcarewhatcolorthebikeshedIs?
Imagesource:http://bikeshed.com/
IETFSupportforLargeBGPCommunities
• OverwhelminginterestontheIDRmailinglist– Networkoperators– Implementers
• HundredsofmessagesandcountingontheWorkingGroupadoptionthread
2016/11/18 BTNOG3,ThimphuBhutan 7WorkingGroupadoptionthread:https://mailarchive.ietf.org/arch/search/?email_list=idr&gbt=1&index=vEa3744YRl5Sj8bUB_I54Uay-fE
LikeRFC1997Communities,butLarger
2016/11/18 BTNOG3,ThimphuBhutan 8
DesignGoals• Simply“larger”,that’sit...
– Noaddedcomplexityorfunctionality– ExtendRFC1997communitiesfor32-bit
ASNs– Signalanactionwithoutlosing
informationabouteithertheoriginorthetarget
• Broadlydeployablesolutionthatisavailablequickly– Transitive
• Flexibilityfornetworkoperatorstodefinetheirowncommunities– Opaque,maybeignored
• Auniquenamespaceforall16-bitand32-bitASNs– Parityandfairnessaseveryonenowcan
usetheirgloballyuniqueASN– NonamespacecollisionsbetweenASNs
• Easytoimplement• Easytoadopt• Easytorememberandtelleach
otheronthephone– Canonicalrepresentation– Especiallyinaninternationalcommunity
withmanydifferentlanguages
2016/11/18 BTNOG3,ThimphuBhutan 9
ThingsThatare“OutofScope”• NoRFC1997toLargeBGPCommunitiesmapping– Outofscopebecauseroutingpoliciesdifferwidelybetweennetworkoperators
• NoTLVorheader– JustuseBGPPathAttributescode30(0x1E)– Purposelykeptsimpletomeetthespecificuserequirements
• Nowell-knowncommunities– Notneeded,sinceRFC1997well-knowncommunitieslike“no-advertize”,“no–export”,“blackhole”,etc.canstillbeused
2016/11/18 BTNOG3,ThimphuBhutan 10
So what'chawhat'cha
what'cha want what'cha want
EncodingandUsage
• LargeBGPCommunitiesareencodedasa96-bitquantityanddisplayedas“32-bitASN:32-bitvalue:32-bitvalue”
• Canonicalrepresentationis$Me:$Action:$You• WorkingonanRFC1998 style-usagedraftwithexamples
2016/11/18 BTNOG3,ThimphuBhutan 11
0 1 2 3 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | Global Administrator | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | Local Data Part 1 | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | Local Data Part 2 | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
Operator-DefinedValue(Action)
AutonomousSystemNumber(Me)
Operator-DefinedValue(You)
LargeBGPCommunityExamples
• NonamespacecollisionsoruseofreservedASNs• Enablesustouse32-bitASNsin$Meand$Youvalues
2016/11/18 BTNOG3,ThimphuBhutan 12
RFC1997(Current)
Large BGPCommunities Action
65400:peer-as 2914:65400:peer-as DonotAdvertisetopeer-as inNorthAmerica(NTT)
0:peer-as 6667:0:peer-as DonotAnnouncetoRoute Serverpeer-as (AMS-IX)
65520:nnn 2914:65520:nnn Lower LocalPreferenceinCountrynnn (NTT)
2914:410 2914:400:10 RouteReceived FromaPeeringPartner(NTT)
2914:420 2914:400:20 RouteReceivedFromaCustomer(NTT)
MajorMilestonesTowardsanRFCStandard
2016/11/18 BTNOG3,ThimphuBhutan 13
Date MilestoneSeptember 2,2016 Publisheddraft-heitz-idr-large-community-03September 6,2016 RequestedIDRWGAdoptionSeptember 24,2016 IDRWorkingGroupAdoptionofdraft-ietf-idr-large-community-00September 29,2016 EarlyIANABGPPathAttributesCode(30) AllocationOctober1,2016 Publisheddraft-ietf-idr-large-community-01October8,2016 Publisheddraft-ietf-idr-large-community-02October11,2016 LargeBGPCommunitiesBeaconPrefixesAnnouncedOctober16,2016 Publisheddraft-ietf-idr-large-community-03October17,2016 Startof IDRWorkingGroupLastCallOctober26,2016 EarlyIANABGPPathAttributesCode(32) AllocationNovember 2,2016 StartofIETFLastCall andIESGReview
NetworkOperators
Weeks/Months 12Months
Implementers
Days/Months 18Months
IETF
Months/Years ∞
TimelineOverview
2016/11/18 BTNOG3,ThimphuBhutan 14
ConsensusBuilding,ProgressionfromI-DtoRFC,Publication
FeatureDesign,Implementation,Testing,Documentation,Shipping
Evangelism,Training,Preparation,Testing,Deployment
BGPSpeakerImplementationStatus
2016/11/18 BTNOG3,ThimphuBhutan 15
Visithttp://largebgpcommunities.net/implementations/ fortheLatestStatus
Implementation Software Status DetailsArista EOS Planned FeatureRequestedBUG169446
Cisco IOSXR ✔ Done! EngineeringRelease
cz.nic BIRD ✔ Done! BIRD1.6.3(commit)
ExaBGP ExaBGP ✔ Done! PR482
Juniper JunOS Planned SecondHalf2017
MikroTik RouterOS Won’tImplementUntilRFC FeatureRequested2016090522001073
Nokia SROS Planned
OpenBSD OpenBGPD ✔ Done! OpenBSD 6.1(commit)
OSRG GoBGP ✔ Done! PR1094
rtbrick Fullstack Planned ETA:December2016
Quagga Quagga ✔ Done! PatchProvidedfor1.1.0875
VyOS VyOS Requested FeatureRequestedT143
ToolsandEcosystemImplementationStatus
2016/11/18 BTNOG3,ThimphuBhutan 16
Implementation Software Status DetailsDE-CIX pbgpp ✔ Done! PR16
FreeBSD tcpdump ✔ Done! PR213423
pmacct.net pmacct ✔ Done! PR61
OpenBSD tcpdump ✔ Done! OpenBSD6.1(patch)
tcpdump.org tcpdump ✔ Done! PR543 (commit)
Wireshark Dissector ✔ Done! 18172(patch)
Visithttp://largebgpcommunities.net/implementations/ fortheLatestStatus
LargeBGPCommunitiesBeaconPrefixes• ThefollowingprefixesareannouncedwithASpath2914_15562$– 192.147.168.0/24(lookingglass)
– 2001:67c:208c::/48(lookingglass)
– LargeBGPCommunity:15562:1:1
2016/11/18 BTNOG3,ThimphuBhutan 17
route-views>sh ip bgp 192.147.168.0BGP routing table entry for 192.147.168.0/24, version 98399100Paths: (39 available, best #30, table default)Not advertised to any peerRefresh Epoch 1701 2914 15562137.39.3.55 from 137.39.3.55 (137.39.3.55)Origin IGP, localpref 100, valid, externalunknown transitive attribute: flag 0xE0 type 0x20 length 0xCvalue 0000 3CCA 0000 0001 0000 0001
rx pathid: 0, tx pathid: 0
COLOCLUE1 11:06:17 from 94.142.247.3] (100/-) [AS15562i] Type: BGP unicast univBGP.origin: IGP BGP.as_path: 8283 2914 15562 BGP.next_hop: 94.142.247.3BGP.med: 0 BGP.local_pref: 100 BGP.community: (2914,410) (2914,1206) (2914,2203) (8283,1) BGP.large_community: (15562, 1, 1)
CiscoIOSOutput(WithoutLargeBGPCommunitiesSupport)
BIRDOutput(WithLargeBGPCommunitiesSupport)
BGPImplementerToDoList• AddsupportforBGPPathAttributescode32(0x20)toBGP– OptionalCLIcommandtoenable
• Extendyourroutingpolicies– Setandmatch– Regularexpressions
• Extendyourshowcommands– Includingthedebugcommandsandpacketdumpoutput
• Updateyourdocumentation• Updateyourtrainingmaterial• Educateyourtechnicalstaff
2016/11/18 BTNOG3,ThimphuBhutan 18
NetworkOperatorToDoList
• TheentirenetworkecosystemneedstosupportLargeBGPCommunitiesinordertoprovision,deployandtroubleshoot
• Askyourroutingvendorsandimplementersforsoftwaresupport
• Updateyourtoolsandprovisioningsoftware• Extendyourroutingpolicies,andopenlypublishthisinformation
• Trainyourtechnicalstaff
2016/11/18 BTNOG3,ThimphuBhutan 19
Questions?Presentationcreatedby:
GregHankinsNokiagreg.hankins@nokia.com@greg_hankins
JobSnijdersNTTCommunicationsjob@ntt.net@JobSnijders
2016/11/18 BTNOG3,ThimphuBhutan 20
Visithttp://LargeBGPCommunities.net/ fortheLatestInfoReuseofthisslidedeckispermittedandencouraged!
Recommended