adap%ve forwarding strategy for hyperbolic rou%ng · viable rou%ng protocol • number of rou%ng...

21
Adap%ve Forwarding Strategy for Hyperbolic Rou%ng Vince Lehman, Ashlesh Gawande, Lan Wang, University of Memphis Rodrigo Aldecoa, Dmitri Krioukov, Northeastern University Beichuan Zhang, University of Arizona Lixia Zhang, UCLA 1

Upload: others

Post on 03-Sep-2020

9 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Adap%ve Forwarding Strategy for Hyperbolic Rou%ng · viable rou%ng protocol • Number of rou%ng updates (overhead) to maintain ... – Choose next hop for each FIB entry based on

Adap%veForwardingStrategyforHyperbolicRou%ng

VinceLehman,AshleshGawande,LanWang,UniversityofMemphis

RodrigoAldecoa,DmitriKrioukov,NortheasternUniversityBeichuanZhang,UniversityofArizona

LixiaZhang,UCLA

1

Page 2: Adap%ve Forwarding Strategy for Hyperbolic Rou%ng · viable rou%ng protocol • Number of rou%ng updates (overhead) to maintain ... – Choose next hop for each FIB entry based on

Rou%ngScalabilityinNDN

•  Alreadylargenumberofcontentnamesintoday’sInternet

•  NumberofForwardingInforma%onBase(FIB)entriesinNDNcouldgrowatanunmanageableratewithoutviablerou%ngprotocol

•  Numberofrou%ngupdates(overhead)tomaintainconsistentFIBsmayalsobecostly

•  NDNnetworksmustscaleintermsofrou%ngtablesizeandrou%ngprotocoloverhead

2

Page 3: Adap%ve Forwarding Strategy for Hyperbolic Rou%ng · viable rou%ng protocol • Number of rou%ng updates (overhead) to maintain ... – Choose next hop for each FIB entry based on

Whatdowewantfromarou%ngprotocol?

•  SmallFIBsize•  Lownumberofrou%ngupdates•  Comparableperformancetoshortestpathrou%ngalgorithms

•  Inshort,wewanttoboundthesizeofrou%ngstatewhilesuppor%nganunboundednamespace

3

Page 4: Adap%ve Forwarding Strategy for Hyperbolic Rou%ng · viable rou%ng protocol • Number of rou%ng updates (overhead) to maintain ... – Choose next hop for each FIB entry based on

Poten%alofAdap%veForwarding

•  Rou%ngcanbelessdynamicbecauseofadap%veforwardingplane

•  NDNForwardingStrategycanmakeforwardingdecisionsbasedonrou%ng

•  Non-tradi%onalrou%ngschemesmaybecomeviable

4

Page 5: Adap%ve Forwarding Strategy for Hyperbolic Rou%ng · viable rou%ng protocol • Number of rou%ng updates (overhead) to maintain ... – Choose next hop for each FIB entry based on

HyperbolicRou%ng(HR)•  Eachnodeandnameprefixhasasetofhyperboliccoordinates

•  Nexthopranksarecalculatedbasedoneachneighbor’sdistancetothedes%na%on

•  Noneedtodistributetopologyinforma%onorupdates

•  ForforwardinginHR,itisnecessarythat:1.  Eachnodeknowsitsownhyperboliccoordinates2.  Eachnodeknowsitsneighbors’coordinates3.  Thenodethatisforwardingknowsthecoordinates

ofthedes%na%on

5

Page 6: Adap%ve Forwarding Strategy for Hyperbolic Rou%ng · viable rou%ng protocol • Number of rou%ng updates (overhead) to maintain ... – Choose next hop for each FIB entry based on

GreedyForwardinginHR

Toforwardapacket:–  Findtheneighborclosesttothedes%na%on–  Forwardthepackettothatneighbor

Des%na%on Nexthops

D {A,cost=10},{B,cost=30}

6

Neighbor’scoordinates(θ,r)Des%na%oncoordinates(θʹ,rʹ)∆θ=|θ−θʹ|modπdistance=acosh(coshrcoshrʹ−sinhrsinhrʹcos∆θ)

Page 7: Adap%ve Forwarding Strategy for Hyperbolic Rou%ng · viable rou%ng protocol • Number of rou%ng updates (overhead) to maintain ... – Choose next hop for each FIB entry based on

WhyHyperbolicRou%ng?

•  Intheidealcase,noFIBisneededIfanInterestcarriesthecoordinatesassociatedwiththename,eachnodeonlyneedstoknowtheirneighbors’coordinates

•  Lowcommunica%oncostFewrou%ngupdates,ascoordinatesrarelychange

7

Page 8: Adap%ve Forwarding Strategy for Hyperbolic Rou%ng · viable rou%ng protocol • Number of rou%ng updates (overhead) to maintain ... – Choose next hop for each FIB entry based on

DrawbacksofHR

•  Isthereaddi%onaldelay?

•  Ispacketforwardingperformancecomparabletoashortestpathprotocolsuchaslink-state?

•  Canpacketsbecome“lost”inHRwithgreedyforwarding?

8

Page 9: Adap%ve Forwarding Strategy for Hyperbolic Rou%ng · viable rou%ng protocol • Number of rou%ng updates (overhead) to maintain ... – Choose next hop for each FIB entry based on

Sub-Op%malPathsinHR

Toforwardapacket:–  Findtheneighborclosesttothedes%na%on–  Forwardthepackettothatneighbor

Des%na%on Nexthops

D {B,cost=10},{A,cost=20}

5ms 5ms

10ms 10ms

9

Page 10: Adap%ve Forwarding Strategy for Hyperbolic Rou%ng · viable rou%ng protocol • Number of rou%ng updates (overhead) to maintain ... – Choose next hop for each FIB entry based on

LocalMinimainHR•  Occurswhenanodedoes

nothaveaneighborclosertothedes%na%oncoordinatesthanitself

•  ForwardinginHRcanhitadead-end

•  NDNcanusemul%plenexthopsperprefixandadap%veforwardingtoavoidthisproblem

•  Numberofnexthopsperprefixcanbelimitedtoreduceoverhead(mul%pathfactor)

S

B

D

A

Localminima(ClosesttoD;noneighborcloser)

10

Page 11: Adap%ve Forwarding Strategy for Hyperbolic Rou%ng · viable rou%ng protocol • Number of rou%ng updates (overhead) to maintain ... – Choose next hop for each FIB entry based on

HRwithBest-RouteStrategy•  BestRouteStrategysimplyusesthenexthoprankedhighest

bytherou%ngprotocol•  Delaystretch–Packetdelayra%oofRTTinHRoverRTTin

shortestpathrou%ng

11

Highdelaystretch

Page 12: Adap%ve Forwarding Strategy for Hyperbolic Rou%ng · viable rou%ng protocol • Number of rou%ng updates (overhead) to maintain ... – Choose next hop for each FIB entry based on

ForwardingStrategyDesign•  Goal:Findanduseop%malpaths•  Approaches:

–  TestdifferentpathsbyperiodicallyforwardingInteresttodifferentFaceusingnewnonce

–  MaintainSRTTmeasurementforeachFacetodeterminebestFaceforforwarding

–  Probabilis%callychooseFacestoprobe;weightedtowardsbeqerperformingFaces

12

Page 13: Adap%ve Forwarding Strategy for Hyperbolic Rou%ng · viable rou%ng protocol • Number of rou%ng updates (overhead) to maintain ... – Choose next hop for each FIB entry based on

Adap%veSRTT-BasedForwarding

•  ConsiderRoundTripTime(RTT)whenchoosingnexthopinHR– UseSmoothedRTT(SRTT)toallowvaria%on

•  BestSRTT-BasedForwarding– ChoosenexthopforeachFIBentrybasedonSRTT

•  Probabilis%cSRTT-BasedProbing– PeriodicallyprobeunusednexthopstolearnRTT– Nexthopsthatperformedwellpreviouslyhavehigherprobability

13

Page 14: Adap%ve Forwarding Strategy for Hyperbolic Rou%ng · viable rou%ng protocol • Number of rou%ng updates (overhead) to maintain ... – Choose next hop for each FIB entry based on

ChoosingBestFaceforForwarding

•  ForaFIBentry:– SortavailableFacesintogroups:

1.  FaceswithSRTTmeasurementsandno%meoutsaresortedbySRTT;alowerSRTTisbeqer

2.  FaceswithoutSRTTmeasurementsandno%meoutsaresortedbyrou%ngcost

3.  FaceswithSRTTmeasurementsandtheirlastInterest%med-outaresortedbyrou%ngcost

– ChoosethefirstFacefrom1,else2,else3

14

Page 15: Adap%ve Forwarding Strategy for Hyperbolic Rou%ng · viable rou%ng protocol • Number of rou%ng updates (overhead) to maintain ... – Choose next hop for each FIB entry based on

Probabilis%cSRTT-BasedProbing•  WanttolearnRTTofnexthopsotherthantheonebeing

usedforforwarding

•  SchedulefirstprobeforaFIBentryonfirstmatchingInterestininterval[0,T1]

•  WhenanInterestisforwardedthatmatchesaFIBentryandtheFIBentryisdueforprobing:–  PickFacetoprobeandforwardprobeInterestwithnewnonce

•  Auereachprobe,nextprobeisscheduledinT2seconds

15

Page 16: Adap%ve Forwarding Strategy for Hyperbolic Rou%ng · viable rou%ng protocol • Number of rou%ng updates (overhead) to maintain ... – Choose next hop for each FIB entry based on

Probabilis%cSRTT-BasedProbing

•  Selec%nganexthoptoprobe:– Usesamegroupingandsor%ngfornexthopsasinforwarding(excludeprimarynexthop)

–  Choosethelowestcostnexthopwithnomeasurements(Group2)immediatelyifoneexists

– Otherwise,combineGroup1andGroup3andassigneachnexthopaprobingprobability

– Nexthopsthatperformedwellpreviouslyareassignedahigherprobability

16

Page 17: Adap%ve Forwarding Strategy for Hyperbolic Rou%ng · viable rou%ng protocol • Number of rou%ng updates (overhead) to maintain ... – Choose next hop for each FIB entry based on

Probabilis%cSRTT-BasedProbing

•  Computeprobability:– N=Numberofnexthopsincombinedlist– X=Sumofindicesincombinedlist;n(n+1)/2– P(Nexthopi)=(N+1-i)/X;

•  Selectnexthoptoprobebasedonprobability

17

Page 18: Adap%ve Forwarding Strategy for Hyperbolic Rou%ng · viable rou%ng protocol • Number of rou%ng updates (overhead) to maintain ... – Choose next hop for each FIB entry based on

ProbingProbabilityExample

18

Page 19: Adap%ve Forwarding Strategy for Hyperbolic Rou%ng · viable rou%ng protocol • Number of rou%ng updates (overhead) to maintain ... – Choose next hop for each FIB entry based on

NACKs•  AllIncomingNACKsarehandledbyseyngthe%meoutflagin

thecorrespondingface'smeasurements

•  NACKsdonotcontributetoSRTTcalcula%on

•  Ifstrategycannotforwardtoanynexthops,sendNO_ROUTENACK

19

Page 20: Adap%ve Forwarding Strategy for Hyperbolic Rou%ng · viable rou%ng protocol • Number of rou%ng updates (overhead) to maintain ... – Choose next hop for each FIB entry based on

Retransmissions

•  Consumerretransmissions– SuppressinsamemannerasBestRouteStrategy2–  Interestissuppressedifwithinminimuminterval– Otherwise,pickbestnexthoptoforwardtobasedonsortedgroups

•  Routerretransmissions– Routerretransmissionsarenotperformed

20

Page 21: Adap%ve Forwarding Strategy for Hyperbolic Rou%ng · viable rou%ng protocol • Number of rou%ng updates (overhead) to maintain ... – Choose next hop for each FIB entry based on

HRwithASFStrategy

21