View
243
Download
0
Category
Preview:
Citation preview
CSE461UniversityofWashington 1
Topic• Howtocomputeshortestpathsinadistributednetwork– TheLink-State(LS)approach
Flood! …thencompute
CSE461UniversityofWashington 2
Link-StateRouKng• OneoftwoapproachestorouKng
– TradesmorecomputaKonthandistancevectorforbeMerdynamics
• WidelyusedinpracKce– UsedinInternet/ARPANETfrom1979– ModernnetworksuseOSPFandIS-IS
CSE461UniversityofWashington 3
Link-StateSeWngNodescomputetheirforwardingtableinthesamedistributedseWngasfordistancevector:
1. Nodesknowonlythecosttotheirneighbors;notthetopology
2. Nodescantalkonlytotheirneighborsusingmessages
3. Allnodesrunthesamealgorithmconcurrently
4. Nodes/linksmayfail,messagesmaybelost
CSE461UniversityofWashington 4
Link-StateAlgorithmProceedsintwophases:1. Nodesfloodtopologyintheform
oflinkstatepackets– Eachnodelearnsfulltopology
2. Eachnodecomputesitsownforwardingtable
– ByrunningDijkstra(orequivalent)
CSE461UniversityofWashington 5
Phase1:TopologyDisseminaKon• Eachnodefloodslinkstatepacket(LSP)thatdescribestheirporKonofthetopology
A B
C
D
E
F
G
H
2
1
10
2
24
24
4
33
3
Seq. # A 10 B 4 C 1 D 2 F 2
NodeE’sLSPfloodedtoA,B,C,D,andF
CSE461UniversityofWashington 6
Phase2:RouteComputaKon• Eachnodehasfulltopology
– BycombiningallLSPs
• EachnodesimplyrunsDijkstra– SomereplicatedcomputaKon,butfindsrequiredroutesdirectly
– Compileforwardingtablefromsink/sourcetree
– That’sitfolks!
ForwardingTable
CSE461UniversityofWashington 7
To Next A C B C C C D D E -- F F G F H C A B
C
D
E
F
G
H
2
1
10
2
24
24
4
33
3
SourceTreeforE(fromDijkstra) E’sForwardingTable
HandlingChanges• Onchange,floodupdatedLSPs,andre-computeroutes
– E.g.,nodesadjacenttofailedlinkornodeiniKate
CSE461UniversityofWashington 8
A B
C
D
E
F
G
H
2
1
10
2
24
24
4
33
3
XXXXSeq. # A 4 C 2 E 4 F 3 G ∞
B’sLSPSeq. #
B 3 E 2 G ∞
F’sLSP Failure!
CSE461UniversityofWashington 9
HandlingChanges(2)• Linkfailure
– BothnodesnoKce,sendupdatedLSPs– Linkisremovedfromtopology
• Nodefailure– AllneighborsnoKcealinkhasfailed– Failednodecan’tupdateitsownLSP– ButitisOK:alllinkstonoderemoved
CSE461UniversityofWashington 10
HandlingChanges(3)• AddiKonofalinkornode
– AddLSPofnewnodetotopology– OldLSPsareupdatedwithnewlink
• AddiKonsaretheeasycase…
CSE461UniversityofWashington 11
Link-StateComplicaKons• Thingsthatcangowrong:
– Seq.numberreachesmax,oriscorrupted– Nodecrashesandlosesseq.number– NetworkparKKonsthenheals
• Strategy:– IncludeageonLSPsandforgetoldinformaKonthatisnotrefreshed
• Muchofthecomplexityisduetohandlingcornercases(asusual!)
DV/LSComparison
CSE461UniversityofWashington 12
Goal Distance Vector Link-State
Correctness Distributed Bellman-Ford Replicated Dijkstra
Efficient paths Approx. with shortest paths Approx. with shortest paths
Fair paths Approx. with shortest paths Approx. with shortest paths
Fast convergence Slow – many exchanges Fast – flood and compute
Scalability Excellent – storage/compute Moderate – storage/compute
CSE461UniversityofWashington 13
IS-ISandOSPFProtocols• WidelyusedinlargeenterpriseandISPnetworks– IS-IS=IntermediateSystemtoIntermediateSystem
– OSPF=OpenShortestPathFirst
• Link-stateprotocolwithmanyaddedfeatures– E.g.,“Areas”forscalability
CSE461UniversityofWashington 14
Topic• HowtoroutewithmulKpleparKes,eachwiththeirownrouKngpolicies– ThisisInternet-wideBGProuKng
ISPA ISPC
DesKnaKon
ISPBSource
StructureoftheInternet• Networks(ISPs,CDNs,etc.)grouphostsasIPprefixes• Networksarerichlyinterconnected,onenusingIXPs
CSE461UniversityofWashington 15
CDNC
PrefixC1
ISPAPrefixA1
PrefixA2NetF
PrefixF1
IXPIXP
IXP IXP
CDND
PrefixD1
NetE
PrefixE1
PrefixE2
ISPB
PrefixB1
CSE461UniversityofWashington 16
Internet-wideRouKngIssues• TwoproblemsbeyondrouKngwithinanindividualnetwork
1. Scalingtoverylargenetworks– TechniquesofIPprefixes,hierarchy,prefixaggregaKon
2. IncorporaKngpolicydecisions– LeWngdifferentparKeschoosetheirroutestosuittheirownneeds Yikes!
CSE461UniversityofWashington 17
EffectsofIndependentParKes• Eachpartyselectsroutestosuititsowninterests– e.g,shortestpathinISP
• WhatpathwillbechosenforA2àB1andB1àA2?– Whatisthebestpath?
PrefixB2
PrefixA1ISPA ISPB
PrefixB1
PrefixA2
CSE461UniversityofWashington 18
EffectsofIndependentParKes(2)• Selectedpathsarelongerthanoverallshortestpath– Andsymmetrictoo!
• Thisisaconsequenceofindependentgoalsanddecisions,nothierarchy PrefixB2
PrefixA1ISPA ISPB
PrefixB1
PrefixA2
CSE461UniversityofWashington 19
RouKngPolicies• CapturethegoalsofdifferentparKes–couldbeanything– E.g.,Internet2onlycarriesnon-commercialtraffic
• Commonpolicieswe’lllookat:– ISPsgiveTRANSITservicetocustomers– ISPsgivePEERservicetoeachother
CSE461UniversityofWashington 20
RouKngPolicies–Transit• Oneparty(customer)getsTRANSITservicefromanotherparty(ISP)– ISPacceptstrafficforcustomerfromtherestofInternet
– ISPsendstrafficfromcustomertotherestofInternet
– CustomerpaysISPfortheprivilege
Customer1
ISP
Customer2
RestofInternetNon-
customer
CSE461UniversityofWashington 21
RouKngPolicies–Peer• Bothparty(ISPsinexample)get
PEERservicefromeachother– EachISPacceptstrafficfromtheotherISPonlyfortheircustomers
– ISPsdonotcarrytraffictotherestoftheInternetforeachother
– ISPsdon’tpayeachother
CustomerA1
ISPA
CustomerA2
CustomerB1
ISPB
CustomerB2
CSE461UniversityofWashington 22
RouKngwithBGP(BorderGatewayProtocol)• BGPistheinterdomainrouKngprotocolusedintheInternet– Pathvector,akindofdistancevector
ISPAPrefixA1
PrefixA2NetFPrefixF1
IXP
ISPBPrefixB1 PrefixF1viaISP
B,NetFatIXP
CSE461UniversityofWashington 23
RouKngwithBGP(2)• DifferentparKeslikeISPsarecalled
AS(AutonomousSystems)• BorderroutersofASesannounce
BGProutestoeachother
• RouteannouncementscontainanIPprefix,pathvector,nexthop– PathvectorislistofASesonthewaytotheprefix;lististofindloops
• RouteannouncementsmoveintheoppositedirecKontotraffic
CSE461UniversityofWashington 25
RouKngwithBGP(4)Policyisimplementedintwoways:
1. BorderroutersofISPannouncepathsonlytootherparKeswhomayusethosepaths– Filteroutpathsotherscan’tuse
2. BorderroutersofISPselectthebestpathoftheonestheyhearinany,non-shortestway
RouKngwithBGP(6)• CUSTOMER(othersideofTRANSIT):AS2says[A,(AS2)]toAS1
CSE461UniversityofWashington 27
RouKngwithBGP(8)• AS2hearstworoutestoB(viaAS1,AS3)andchoosesAS3(Free!)
CSE461UniversityofWashington 29
Recommended