54
Computer Networks: Architecture and Protocols CS4450 Lecture 13 Internet Addressing, Path-Vector Protocol (BGP) Rachit Agarwal

lecture13-IP-addressing-forwarding...IP addressing -> Scalable Routing? Administrative Structure Shapes Inter-domain Routing ASes want freedom to pick routes based on policy “My

  • Upload
    others

  • View
    6

  • Download
    0

Embed Size (px)

Citation preview

Page 1: lecture13-IP-addressing-forwarding...IP addressing -> Scalable Routing? Administrative Structure Shapes Inter-domain Routing ASes want freedom to pick routes based on policy “My

ComputerNetworks:ArchitectureandProtocols

CS4450

Lecture13InternetAddressing,

Path-VectorProtocol(BGP)

RachitAgarwal

Page 2: lecture13-IP-addressing-forwarding...IP addressing -> Scalable Routing? Administrative Structure Shapes Inter-domain Routing ASes want freedom to pick routes based on policy “My

Announcements

• Prelim1gradesposted

• Remember:wehaveaveryflexiblegradingmechanism

• Evenifyougota0inprelim1,youcouldgetanA-

• Ifyougot>20inprelim1,youcouldgetanA+

• Thegradingschemewasdesignedtomakeyoufocuson“learning”

• Ifyou’dliketotalk,Iamhere.

�2

Page 3: lecture13-IP-addressing-forwarding...IP addressing -> Scalable Routing? Administrative Structure Shapes Inter-domain Routing ASes want freedom to pick routes based on policy “My

GoalsforToday’sLecture

• InternetAddressing

• BeginInter-domainrouting(Border-GatewayProtocol(BGP))

�3

Page 4: lecture13-IP-addressing-forwarding...IP addressing -> Scalable Routing? Administrative Structure Shapes Inter-domain Routing ASes want freedom to pick routes based on policy “My

InternetAddressing

Page 5: lecture13-IP-addressing-forwarding...IP addressing -> Scalable Routing? Administrative Structure Shapes Inter-domain Routing ASes want freedom to pick routes based on policy “My

Addressingsofar

• Eachnodehasa“name”

• Wehavesofarworkedonlywithnames

• Assumedthatforwarding/routingetc.doneonnames

• Today:

• Whydoweneedaddresses?

• Whydoweassignaddressesthewayweassignaddresses?

Page 6: lecture13-IP-addressing-forwarding...IP addressing -> Scalable Routing? Administrative Structure Shapes Inter-domain Routing ASes want freedom to pick routes based on policy “My

Threerequirementsforaddressing

• Scalablerouting

• Howmuststatemustbestoredtoforwardpackets?

• Howmuchstateneedstobeupdateduponhostarrival/departure?

• Efficientforwarding

• Howquicklycanonelocateitemsinroutingtable?

• Hostmustbeabletorecognizepacketisforthem

Page 7: lecture13-IP-addressing-forwarding...IP addressing -> Scalable Routing? Administrative Structure Shapes Inter-domain Routing ASes want freedom to pick routes based on policy “My

Layer2(linklayer):“Flat”Addressing

• UsesMACnames

• Uniqueidentifiershardcodedinhardware;nolocationinformation

• Localareanetworksrouteonthese“flat”addresses

• SpanningTreeProtocolrunsonswitches

• Eachswitchstoresaroutingentryforeachhostconnectedtoit

• End-hostsstorenothing

• Uponreceivingaframe,anend-host:

• Putsdestination’sanditsownMACnameintheheader

• Forwardsittotheswitchitisconnectedto

• Switchesforwardtheframealongedgesinspanningtree

• Destinationisabletorecognizetheframeisforthemusingaddress

Page 8: lecture13-IP-addressing-forwarding...IP addressing -> Scalable Routing? Administrative Structure Shapes Inter-domain Routing ASes want freedom to pick routes based on policy “My

Ifweweretouse“Flat”AddressingonInternet…

• EthernetroutesframesviafloodingonSpanningTree

• Aswehavediscussed:cannotuseitonentireInternet

• OnepossiblewaytouseflataddressesonInternet

• Routingtablesstoreoneentryperend-host

• End-hostsstorenothing

• Uponreceivingapacket,anend-host:

• Putsdestination’sanditsownflataddressintheheader

• Forwardsittotheswitchitisconnectedto

• Switchesforwardthepacketusingroutingtables(noflooding!)

• Destinationisabletorecognizetheframeisforthemusingaddress

Page 9: lecture13-IP-addressing-forwarding...IP addressing -> Scalable Routing? Administrative Structure Shapes Inter-domain Routing ASes want freedom to pick routes based on policy “My

Recap:Today’sInternetAddressing:CIDR

• ClasslessInter-domainRouting

• Idea:Flexibledivisionbetweennetworkandhostaddresses

• Prefixisnetworkaddress

• Suffixishostaddress

• Example:

• 128.84.139.5/23isa23bitprefixwith:

• First23bitsfornetworkaddress

• Next9bitsforhostaddresses:maximum2^9hosts

• Terminology:“Slash23”

Page 10: lecture13-IP-addressing-forwarding...IP addressing -> Scalable Routing? Administrative Structure Shapes Inter-domain Routing ASes want freedom to pick routes based on policy “My

Howdoesthismeetourrequirements?

• Scalablerouting

• Howmuchstatetoforwardpackets?

• Oneentryperhostperswitch

• Howmuchstateupdatedforeacharrival/departure?

• Oneentryperhostperswitch

• Efficientforwarding

• Exactmatchlookuponflataddresses(exactmatchiseasy!)

• Hostmustbeabletorecognizethepacketisforthem

• Easy

Conclusion:L2addressingdoesnotenablescalablerouting

Page 11: lecture13-IP-addressing-forwarding...IP addressing -> Scalable Routing? Administrative Structure Shapes Inter-domain Routing ASes want freedom to pick routes based on policy “My

HowwouldyouscaleL2addressing?

• Supposewewanttodesignamuchlargernetworkusingflataddresses

• MustuseMACaddressaspartoftheaddress

• Onlywayhostknowsthatthepacketisforthem

• Buthowwouldyouenablescalablerouting?

• Small#routingentries(lessthanoneentryperhostperswitch)

• Small#updates(lessthanoneupdateperswitchperhostchange)

Page 12: lecture13-IP-addressing-forwarding...IP addressing -> Scalable Routing? Administrative Structure Shapes Inter-domain Routing ASes want freedom to pick routes based on policy “My

ScalableL2addressing:TowardsInternet-scaleaddressing

• Assigneachend-hostanaddressesoftheform—Switch.MAC

• Routingtablesstoreoneentryperswitch(ratherthanperhost)

• Uponreceivingapacket,anend-host:

• Putsdestination’sanditsownSwitch.MACaddressintheheader

• Forwardsittotheswitchitisconnectedto

• Switchesforwardthepacketusingfirstpartoftheaddress

• Destinationisabletorecognizethepacketisforthemusingsecondpartoftheaddress

Better,butstillnotfeasible

(Internethasbillionsofswitches/routers)

Page 13: lecture13-IP-addressing-forwarding...IP addressing -> Scalable Routing? Administrative Structure Shapes Inter-domain Routing ASes want freedom to pick routes based on policy “My

Layer3:Hierarchicaladdressing

• Defineacollectionofswitches/routerstobea“Network”

• Useaddressesoftheform—Network.MAC

• Switches/Routersknowhowtoreachallnetworksintheworld

• Routingalgorithmsonlyannounce“Network”partoftheaddresses

• Routingtablesnowstoreanext-hopforeach“network”

• Forwarding:

• RoutersignoreMACpartoftheaddress

• Whenthepacketreachestheright“network”

• PacketforwardedusingMACpartoftheaddress

• UsingLayer2

• ThiswastheoriginalIPaddressingscheme

Page 14: lecture13-IP-addressing-forwarding...IP addressing -> Scalable Routing? Administrative Structure Shapes Inter-domain Routing ASes want freedom to pick routes based on policy “My

WhatdoImeanby“network”

• IntheoriginalIPaddressingscheme…

• NetworkmeantanL2network

• Oftenreferredtoasa“subnet”

• Therearetoomanyofthemnowtoscale

Page 15: lecture13-IP-addressing-forwarding...IP addressing -> Scalable Routing? Administrative Structure Shapes Inter-domain Routing ASes want freedom to pick routes based on policy “My

Aggregation

• Aggregation:singleforwardingentryusedformanyindividualhosts

• Example:

• InourscalablesolutionSwitch.MAC:aggregatewasswitch

• InourscalablesolutionNetwork.MAC:aggregatewasnetwork

• Advantages:

• Fewerentriesandmorestable

• Changeofhostsdonotchangetables

• Don’tneedtokeepstateonindividualhosts

Page 16: lecture13-IP-addressing-forwarding...IP addressing -> Scalable Routing? Administrative Structure Shapes Inter-domain Routing ASes want freedom to pick routes based on policy “My

HierarchicalStructure

• TheInternetisan“inter-network”

• Usedtoconnectnetworkstogether,nothosts

• Formsanaturaltwo-wayhierarchy

• WideAreaNetwork(WAN)deliverstotheright“network”

• LocalAreaNetwork(LAN)deliverstotherighthost

Page 17: lecture13-IP-addressing-forwarding...IP addressing -> Scalable Routing? Administrative Structure Shapes Inter-domain Routing ASes want freedom to pick routes based on policy “My

HierarchicalAddressing

• Canyouthinkofanexample?

• AddressingintheUSmail

• Country

• City,Zipcode

• Street

• HouseNumber

• Occupant“Name”

???

Page 18: lecture13-IP-addressing-forwarding...IP addressing -> Scalable Routing? Administrative Structure Shapes Inter-domain Routing ASes want freedom to pick routes based on policy “My

IPaddresses

• Unique32bitnumbersassociatedwithahost

• Usedotted-quadnotation,e.g.,128.84.139.5

Country City,State Street,Number Occupant

(8bits) (8bits) (8bits) (8bits)

10000000 0-1010100 10001011 00000-101

128 84 139 5

Network Host

Page 19: lecture13-IP-addressing-forwarding...IP addressing -> Scalable Routing? Administrative Structure Shapes Inter-domain Routing ASes want freedom to pick routes based on policy “My

OriginalAddressingmechanism

• Firsteightbits:networkaddress(/8)

• Slashnotationindicatesnetworkaddress

• Last24bits:hostaddress

• Howmanynetworkscanwesupportusing8bits?

• 256!

• Assumed256networksweremorethanenough!!!

• Nowwehavemillions!

Page 20: lecture13-IP-addressing-forwarding...IP addressing -> Scalable Routing? Administrative Structure Shapes Inter-domain Routing ASes want freedom to pick routes based on policy “My

Supposewewanttoaccommodatemorenetworks

• Wecanallocatemorebitstonetworkaddress

• Problem?

• Fewerbitsforhostnames

• Whatifsomenetworksneedmorehosts?

Page 21: lecture13-IP-addressing-forwarding...IP addressing -> Scalable Routing? Administrative Structure Shapes Inter-domain Routing ASes want freedom to pick routes based on policy “My

Today’sAddressing:CIDR

• ClasslessInter-domainRouting

• Idea:Flexibledivisionbetweennetworkandhostaddresses

• Prefixisnetworkaddress

• Suffixishostaddress

• Example:

• 128.84.139.5/23isa23bitprefixwith:

• First23bitsfornetworkaddress

• Next9bitsforhostaddresses:maximum2^9hosts

• Terminology:“Slash23”

Page 22: lecture13-IP-addressing-forwarding...IP addressing -> Scalable Routing? Administrative Structure Shapes Inter-domain Routing ASes want freedom to pick routes based on policy “My

ExampleforCIDRAddressing

• 128.84.139.5/23isa23bitprefixwith2^9hostaddresses

10000000 0-1010100 10001011 00000-101

128 84 139 5

Network(23bits) Host(9bits)

Page 23: lecture13-IP-addressing-forwarding...IP addressing -> Scalable Routing? Administrative Structure Shapes Inter-domain Routing ASes want freedom to pick routes based on policy “My

Allocatingaddresses

• InternetCorporationforAssignedNamesandNumbers(ICANN)…

• AllocateslargeblocksofaddressestoRegionalInternetRegistries• E.g.,AmericanRegistryforInternetNames(ARIN)…

• ThatallocatesblocksofaddressestoLargeInternetServiceProviders(ISP)

• Thatallocateaddressestoindividualsandsmallerinstitutions

• Fakeexample:

• ICANN->ARIN->AT&T->Cornell->CS->Me

Page 24: lecture13-IP-addressing-forwarding...IP addressing -> Scalable Routing? Administrative Structure Shapes Inter-domain Routing ASes want freedom to pick routes based on policy “My

Allocatingaddresses:Fakeexample

• ICANNgivesARINseveral/8s—101.*.*.*,128.*.*.*,….

• ARINgivenAT&Tone/8—128.*.*.*/8(cansupport2^24hosts)

• Networkprefix:10000000

• AT&TgivesCornellone/16—128.84.*.*/16(supports2^16hosts)

• Networkprefix:1000000001010100

• CornellgivesCSone/24—128.84.139.*/24(supports2^8hosts)

• Networkprefix:100000000101010010001011

• CSgivenmeaspecificaddress—128.84.139.5

• IPaddress:10000000010101001000101100000101

Page 25: lecture13-IP-addressing-forwarding...IP addressing -> Scalable Routing? Administrative Structure Shapes Inter-domain Routing ASes want freedom to pick routes based on policy “My

Howdoesthismeetourrequirements?

• Tounderstandthis,weneedtounderstandtheroutingontheInternet

• Andtounderstandthat,weneedtounderstandtheInternet

Page 26: lecture13-IP-addressing-forwarding...IP addressing -> Scalable Routing? Administrative Structure Shapes Inter-domain Routing ASes want freedom to pick routes based on policy “My

Asetofnetworkelementsconnectedtogether,thatimplementasetofprotocolsforthepurposeofsharingresourcesattheendhosts

Backtothebasics:whatisacomputernetwork?

Page 27: lecture13-IP-addressing-forwarding...IP addressing -> Scalable Routing? Administrative Structure Shapes Inter-domain Routing ASes want freedom to pick routes based on policy “My

“InteriorRouters”

“AutonomousSystem(AS)”or“Domain” Regionofanetworkunderasingleadministrativeentity

“BorderRouters”

An“end-to-end”route

Whatdoesacomputernetworkactuallylooklike?

Page 28: lecture13-IP-addressing-forwarding...IP addressing -> Scalable Routing? Administrative Structure Shapes Inter-domain Routing ASes want freedom to pick routes based on policy “My

“InteriorRouters”

“AutonomousSystem(AS)”or“Domain” Regionofanetworkunderasingleadministrativeentity

“BorderRouters”

An“end-to-end”route

Whatdoesacomputernetworklooklike?

Page 29: lecture13-IP-addressing-forwarding...IP addressing -> Scalable Routing? Administrative Structure Shapes Inter-domain Routing ASes want freedom to pick routes based on policy “My

AutonomousSystems(AS)

• AnASisanetworkunderasingleadministrativecontrol

• Currentlyover30,000

• Example:AT&T,FranceTelecom,Cornell,IBM,etc.

• AcollectionofroutersinterconnectingmultipleswitchedEthernets

• AndinterconnectionstoneighboringASes

• Sometimescalled“Domains”

• EachASassignedauniqueidentifier

• 16bitASnumber

Page 30: lecture13-IP-addressing-forwarding...IP addressing -> Scalable Routing? Administrative Structure Shapes Inter-domain Routing ASes want freedom to pick routes based on policy “My

AT&T a.0.0.0/8

France Telecom

LBL a.b.0.0/16

Cornella.c.0.0/16

a.c.*.* is this way

a.b.*.* is this way

IPaddressing->ScalableRouting?

Page 31: lecture13-IP-addressing-forwarding...IP addressing -> Scalable Routing? Administrative Structure Shapes Inter-domain Routing ASes want freedom to pick routes based on policy “My

AT&T a.0.0.0/8

France Telecom

LBL a.b.0.0/16

Cornella.c.0.0/16

a.*.*.* is this way

foo.com a.d.0.0/16

Canaddnewhosts/networkswithoutupdakngtheroukngentriesatFranceTelecom

IPaddressing->ScalableRouting?

Page 32: lecture13-IP-addressing-forwarding...IP addressing -> Scalable Routing? Administrative Structure Shapes Inter-domain Routing ASes want freedom to pick routes based on policy “My

AT&T a.0.0.0/8

LBL a.b.0.0/16

Cornella.c.0.0/16

ESNet

ESNetmustmaintainroukngentriesforbotha.*.*.*anda.c.*.*

IPaddressing->ScalableRouting?

Page 33: lecture13-IP-addressing-forwarding...IP addressing -> Scalable Routing? Administrative Structure Shapes Inter-domain Routing ASes want freedom to pick routes based on policy “My

AdministrativeStructureShapesInter-domainRouting

● ASeswantfreedomtopickroutesbasedonpolicy● “Mytrafficcan’tbecarriedovermycompetitor’snetwork!”

● “Idon’twanttocarryA’strafficthroughmynetwork!”

● CannotbeexpressedasInternet-wide“shortest(cost)path”

● ASeswantautonomy● Wanttochoosetheirowninternalroutingprotocol

● Wanttochoosetheirownpolicy

● ASeswantprivacy● Choiceofnetworktopology,routingpolicies,etc.

Page 34: lecture13-IP-addressing-forwarding...IP addressing -> Scalable Routing? Administrative Structure Shapes Inter-domain Routing ASes want freedom to pick routes based on policy “My

ChoiceofRoutingAlgorithm

● LinkState(LS)vs.DistanceVector(DV)

The“BorderGatewayProtocol”(BGP)extendsDistance-Vectorideastoaccomodatepolicy

● LSoffersnoprivacy—linkstateannouncementsknowntoeveryone

● LSlimitsautonomy—needagreementonmetric,algorithm

● DVisadecentstartingpoint● Per-destinationupdatesbyintermediatenodesgiveusahook

● But,wasn’tdesignedtoimplementpolicy

● …andisvulnerabletoloopsifshortestpathsnottaken

Page 35: lecture13-IP-addressing-forwarding...IP addressing -> Scalable Routing? Administrative Structure Shapes Inter-domain Routing ASes want freedom to pick routes based on policy “My

BusinessRelationshipsShapeTopologyandPolicy

● ThreebasickindsofrelationshipsbetweenASes

● Businessimplications● Customerpaysprovider

● Peersdon’tpayeachother● Exchangeroughlyequaltraffic

● ASAcanbeASB’scustomer

● ASAcanbeASB’sprovider

● ASAcanbeASB’speer

Page 36: lecture13-IP-addressing-forwarding...IP addressing -> Scalable Routing? Administrative Structure Shapes Inter-domain Routing ASes want freedom to pick routes based on policy “My

peer peerprovider customerRelationsbetweenASes

•Customerspayprovider•Peersdon’tpayeachother

BusinessImplications

BusinessRelationships

Page 37: lecture13-IP-addressing-forwarding...IP addressing -> Scalable Routing? Administrative Structure Shapes Inter-domain Routing ASes want freedom to pick routes based on policy “My

peer peerprovider customerRelationsbetweenASes

•Customerspayprovider•Peersdon’tpayeachother

BusinessImplications

A

B C

D E

E.g.,DandE talkalot

Peeringsaves BandCmoney

WhyPeer?

Page 38: lecture13-IP-addressing-forwarding...IP addressing -> Scalable Routing? Administrative Structure Shapes Inter-domain Routing ASes want freedom to pick routes based on policy “My

● ASesprovide“transit”betweentheircustomers● Peersdonotprovidetransitbetweenotherpeers

trafficallowed trafficnotallowed

A B C

D E F

QPr Cu

Peer Peer

RoutingFollowstheMoney

Page 39: lecture13-IP-addressing-forwarding...IP addressing -> Scalable Routing? Administrative Structure Shapes Inter-domain Routing ASes want freedom to pick routes based on policy “My

A B C

D E F

QPr Cu

Peer Peer

RoutingFollowstheMoney

trafficallowed trafficnotallowed

● ASesprovide“transit”betweentheircustomersandproviders● Peersdonotprovidetransitbetweenotherpeersandproviders

Page 40: lecture13-IP-addressing-forwarding...IP addressing -> Scalable Routing? Administrative Structure Shapes Inter-domain Routing ASes want freedom to pick routes based on policy “My

● ASesprovide“transit”betweentheircustomers● Peersdonotprovidetransitbetweenotherpeers

trafficallowed trafficnotallowed

A B C

D E F

QPr Cu

Peer Peer

Inter-domainRoutingFollowstheMoney

Page 41: lecture13-IP-addressing-forwarding...IP addressing -> Scalable Routing? Administrative Structure Shapes Inter-domain Routing ASes want freedom to pick routes based on policy “My

A B C

D E F

QPr Cu

Peer Peer

RoutingFollowstheMoney

trafficallowed trafficnotallowed

● ASesprovide“transit”betweentheircustomersandproviders● Peersdonotprovidetransitbetweenotherpeersandproviders

Page 42: lecture13-IP-addressing-forwarding...IP addressing -> Scalable Routing? Administrative Structure Shapes Inter-domain Routing ASes want freedom to pick routes based on policy “My

Inter-domainRouting:Setup

● DestinationsareIPprefixes(12.0.0.0/8)

● NodesareAutonomousSystems(ASes)● InternalsofeachASarehidden

● Linksrepresentbothphysicallinksandbusinessrelationships

● BGP(BorderGatewayProtocol)istheInterdomainroutingprotocol● ImplementedbyASborderrouters

Page 43: lecture13-IP-addressing-forwarding...IP addressing -> Scalable Routing? Administrative Structure Shapes Inter-domain Routing ASes want freedom to pick routes based on policy “My

BGP

EachASselectsthe“best”routeithearsadvertisedfor

aprefix

AnASadvertisesitsbestroutes

tooneormoreIPprefixes

Soundfamiliar?

Page 44: lecture13-IP-addressing-forwarding...IP addressing -> Scalable Routing? Administrative Structure Shapes Inter-domain Routing ASes want freedom to pick routes based on policy “My

BGPInspiredbyDistanceVector

● Per-destinationrouteadvertisements

● Noglobalsharingofnetworktopology

● Iterativeanddistributedconvergenceonpaths

● But,fourkeydifferences

Page 45: lecture13-IP-addressing-forwarding...IP addressing -> Scalable Routing? Administrative Structure Shapes Inter-domain Routing ASes want freedom to pick routes based on policy “My

BGPvs.DV

● BGPselectsroutebasedonpolicy,notshortestdistance/leastcost

(1)BGPdoesnotpicktheshortestpathroutes!

2 3

1

Node2mayprefer2,3,1over2,1

● Howdoweavoidloops?

Page 46: lecture13-IP-addressing-forwarding...IP addressing -> Scalable Routing? Administrative Structure Shapes Inter-domain Routing ASes want freedom to pick routes based on policy “My

BGPvs.DV

● Idea:advertisetheentirepath● Distancevector:senddistancemetricperdest.d

● Pathvector:sendtheentirepathforeachdest.d

(2)Path-vectorRouting

C B A

Destination IP

“d: path (B,A)” “d: path (A)”

data traffic data traffic

Page 47: lecture13-IP-addressing-forwarding...IP addressing -> Scalable Routing? Administrative Structure Shapes Inter-domain Routing ASes want freedom to pick routes based on policy “My

LoopDetectionwithPath-Vector

● Nodecaneasilydetectaloop● Lookforitsownnodeidentifierinthepath

● Nodecansimplydiscardpathswithloops● e.g.node1seesitselfinthepath3,2,1

3 2 1

“d: path (2,1)” “d: path (1)”

“d: path (3,2,1)”

d

Page 48: lecture13-IP-addressing-forwarding...IP addressing -> Scalable Routing? Administrative Structure Shapes Inter-domain Routing ASes want freedom to pick routes based on policy “My

BGPvs.DV

● Idea:advertisetheentirepath● Distancevector:senddistancemetricperdest.d

● Pathvector:sendtheentirepathforeachdest.d

(2)Path-vectorRouting

● Benefits

● Loopavoidanceiseasy

● Flexiblepoliciesbasedonentirepath

Page 49: lecture13-IP-addressing-forwarding...IP addressing -> Scalable Routing? Administrative Structure Shapes Inter-domain Routing ASes want freedom to pick routes based on policy “My

BGPvs.DV

● Forpolicyreasons,anASmaychoosenottoadvertisearoutetoadestination

(3)SelectiveRouteAdvertisement

● Asaresult,reachabilityisnotguaranteedevenifthegraphisconnected

AS 2

AS 3AS 1

Example:AS#2doesnotwanttocarrytrafficbetweenAS#1andAS#3

Page 50: lecture13-IP-addressing-forwarding...IP addressing -> Scalable Routing? Administrative Structure Shapes Inter-domain Routing ASes want freedom to pick routes based on policy “My

BGPvs.DV

● Forscalability,BGPmayaggregateroutesfordifferentprefixes

(4)BGPmayaggregateroutes

AT&T a.0.0.0/8

LBL a.b.0.0/16

Cornella.c.0.0/16

a.*.*.* is this way

foo.com a.d.0.0/16

Page 51: lecture13-IP-addressing-forwarding...IP addressing -> Scalable Routing? Administrative Structure Shapes Inter-domain Routing ASes want freedom to pick routes based on policy “My

BGPOutline

● BGPPolicy● Typicalpoliciesandimplementation

● BGPprotocoldetails

● IssueswithBGP

Page 52: lecture13-IP-addressing-forwarding...IP addressing -> Scalable Routing? Administrative Structure Shapes Inter-domain Routing ASes want freedom to pick routes based on policy “My

Policy:

Imposedinhowroutesareselectedandexported

Can reach 128.3/16

blah blah

Route selection

A

P

C

B

Q

Route export

● Selection:Whichpathtouse● Controlswhether/howtrafficleavesthenetwork

● Export:Whichpathtoadvertise● Controlswhether/howtrafficentersthenetwork

Page 53: lecture13-IP-addressing-forwarding...IP addressing -> Scalable Routing? Administrative Structure Shapes Inter-domain Routing ASes want freedom to pick routes based on policy “My

TypicalSelectionPolicy

● Indecreasingorderofpriority:1. Makeorsavemoney(sendtocustomer>peer>provider)

2. Maximizeperformance(smallestASpathlength)

3. Minimizeuseofmynetworkbandwidth(“hotpotato”)

4. …

Page 54: lecture13-IP-addressing-forwarding...IP addressing -> Scalable Routing? Administrative Structure Shapes Inter-domain Routing ASes want freedom to pick routes based on policy “My

TypicalExportPolicy

Destinationprefixadvertisedby…

Exportrouteto…

CustomerEveryone

(providers,peers,othercustomers)

Peer Customers

Provider Customers

Knownasthe“Gao-Rexford”rulesCapturecommon(butnotrequired!)prackce