/
CSCI-1680 CSCI-1680

CSCI-1680 - PowerPoint Presentation

celsa-spraggs
celsa-spraggs . @celsa-spraggs
Follow
389 views
Uploaded On 2015-10-21

CSCI-1680 - PPT Presentation

Network Layer Interdomain Routing Based partly on lecture notes by Rob Sherwood David Mazières Phil Levis John Jannotti Rodrigo Fonseca Today Last time IntraDomain Routing IGP RIP distance vector ID: 167590

path bgp routing ass bgp path ass routing prefixes igp route protocol policy speakers information border prefix traffic transit

Share:

Link:

Embed:

Download Presentation from below link

Download Presentation The PPT/PDF document "CSCI-1680" is the property of its rightful owner. Permission is granted to download and print the materials on this web site for personal, non-commercial use only, and to display it on your personal computer provided you do not modify the materials and that you retain all copyright notices contained in the materials. By downloading content from our website, you accept the terms of this agreement.


Presentation Transcript

Slide1

CSCI-1680Network Layer:Inter-domain Routing

Based partly on lecture notes by Rob Sherwood, David Mazières, Phil Levis, John Jannotti

Rodrigo FonsecaSlide2

TodayLast time: Intra-Domain Routing (IGP)RIP distance vector

OSPF link stateInter-Domain Routing (EGP)Border Gateway ProtocolPath-vector routing protocolSlide3

Why Inter vs. IntraWhy not just use OSPF everywhere?E.g., hierarchies of OSPF areas?

Hint: scaling is not the only limitationBGP is a policy control and information hiding protocolintra == trusted, inter == untrustedDifferent policies by different ASsDifferent costs by different

ASsSlide4

Types of ASsLocal Traffic – source or destination in local AS

Transit Traffic – passes through an ASStub ASConnects to only a single other ASMultihomed ASConnects to multiple ASsCarries no transit traffic

Transit AS

Connects to multiple

ASs

and carries transit trafficSlide5

AS RelationshipsHow to prevent X from forwarding transit between B and C?

How to avoid transit between CBA ?B: BAZ -> XB: BAZ -> C ? (=> Y: CBAZ and Y:CAZ)

B

A

C

X

Y

Z

Example from Kurose and Ross, 5

th

EdSlide6

Choice of Routing AlgorithmConstraints

ScalingAutonomy (policy and privacy)Link-state?Requires sharing of complete informationInformation exchange does not scaleCan’t express policyDistance Vector?Scales and retains privacy

Can’t implement policy

Can’t avoid loops if shortest path not taken

Count-to-infinitySlide7

Path Vector ProtocolDistance vector algorithm with extra informationFor each route, store the complete path (

ASs)No extra computation, just extra storage (and traffic)AdvantagesCan make policy choices based on set of ASs in pathCan easily avoid loopsSlide8

BGP - High LevelSingle EGP protocol in use today

Abstract each AS to a single nodeDestinations are CIDR prefixesExchange prefix reachability with all neighborsE.g., “I can reach prefix 128.148.0.0/16 through ASes 44444 3356 14325 11078”

Select a single path by routing

policy

Critical: learn many paths, propagate one

Add your ASN to advertised pathSlide9

Why study BGP?Critical protocol: makes the Internet runOnly widely deployed EGPActive area of problems!

EfficiencyCogent vs. Level3: Internet PartitionSpammers use prefix hijackingPakistan accidentally took down YouTubeEgypt disconnected for 5 daysSlide10

BGP ExampleSlide11

BGP ExampleSlide12

BGP ExampleSlide13

BGP ExampleSlide14

BGP ExampleSlide15

BGP Protocol DetailsSeparate roles of speakers

and gatewaysSpeakers talk BGP with other ASsGateways are routes that border other AssCan have more gateways than speakersSpeakers know how to reach gateways

Speakers connect over TCP on port 179

Bidirectional exchange over long-lived connectionSlide16

BGP ImplicationsExplicit AS Path == Loop free

Except under churn, IGP/EGP mismatchReachability not guaranteedDecentralized combination of policiesNot all ASs know all pathsAS abstraction -> loss of efficiencyScaling

37K

ASs

350K+ prefixes

ASs

with one prefix: 15664

Most prefixes by one AS: 3686 (AS6389, BellSouth)Slide17

BGP Table Growth

Source: bgp.potaroo.netSlide18

Integrating EGP and IGPStub ASs

Border router clear choice for default routeInject into IGP: “any unknown route to border router”Inject specific prefixes in IGPE.g., Provider injects routes to customer prefixBackbone networksToo many prefixes for IGP

Run internal version of BGP,

iBGP

All routers learn mappings: Prefix -> Border Router

Use IGP to learn: Border Router -> Next HopSlide19

iBGPSlide20

iBGPSlide21

BGP MessagesBase protocol has four message types

OPEN – Initialize connection. Identifies peers and must be first message in each direction UPDATE – Announce routing changes (most important message)

NOTIFICATION

– Announce error when closing connection

KEEPALIVE

– Make sure peer is alive

Extensions can define more message types

E.g., ROUTE-REFRESH [RFC 2918]Slide22

Anatomy of an UPDATEWithdrawn routes: list of withdrawn IP prefixes

Network Layer Reachability Information (NLRI)List of prefixes to which path attributes applyPath attributesORIGIN, AS_PATH, NEXT_HOP, MULTI-EXIT-DISC, LOCAL_PREF, ATOMIC_AGGREGATE, AGGREGATOR, …Each attribute has 1-byte type, 1-byte flags, length, content

Can introduce new types of path attribute – e.g., AS4_PATH for 32-bit AS numbersSlide23

ExampleNLRI: 128.148.0.0/16AS Path: ASN 44444 3356 14325 11078

Next Hop IP: same as in RIPv2Knobs for traffic engineering:Metric, weight, LocalPath, MED, CommunitiesLots of voodooSlide24

BGP StateBGP speaker conceptually maintains 3 sets of stateAdj

-RIB-In“Adjacent Routing Information Base, Incoming”Unprocessed routes learned from other BGP speakersLoc-RIBContains routes from Adj-RIB-In selected by policy

First hop of route must be reachable by IGP or static route

Adj

-RIB-Out

Subset of Loc-RIB to be advertised to peer speakersSlide25

DemoRoute views project: http://www.routeviews.org

telnet route-views.linx.routeviews.orgshow ip bgp 128.148.0.0/16 longer-prefixesAll paths are learned internally (

iBGP

)

Not a production deviceSlide26

Next classBGP Policy Routing and Security