Dont Love Thy Nearest Neighbor Cristian Lumezanu Georgia Tech Dave - - PowerPoint PPT Presentation

don t love thy nearest neighbor
SMART_READER_LITE
LIVE PREVIEW

Dont Love Thy Nearest Neighbor Cristian Lumezanu Georgia Tech Dave - - PowerPoint PPT Presentation

Dont Love Thy Nearest Neighbor Cristian Lumezanu Georgia Tech Dave Levin, Bo Han, Neil Spring, Bobby Bhattacharjee University of Maryland B Find server that minimizes average latency to players


slide-1
SLIDE 1

Don’t Love Thy Nearest Neighbor

Cristian Lumezanu Georgia Tech Dave Levin, Bo Han, Neil Spring, Bobby Bhattacharjee University of Maryland

slide-2
SLIDE 2
slide-3
SLIDE 3

A ¡

Find ¡server ¡that ¡minimizes ¡ ¡ average ¡latency ¡to ¡players ¡

B ¡ D ¡ C ¡ E ¡

slide-4
SLIDE 4

A ¡ B ¡ D ¡ C ¡ E ¡

slide-5
SLIDE 5

Theore;cal ¡op;mum ¡

A ¡ B ¡ D ¡ C ¡ E ¡

Nearest ¡neighbor ¡

slide-6
SLIDE 6

A ¡

Find ¡server ¡that ¡minimizes ¡ ¡ average ¡latency ¡to ¡players ¡ (and ¡provides ¡fairness) ¡

B ¡ D ¡ C ¡ E ¡

slide-7
SLIDE 7

B ¡ D ¡ C ¡ E ¡

Nearest ¡neighbor ¡is ¡not ¡enough ¡

Nearest ¡neighbor ¡ Theore;cal ¡op;mum ¡

A ¡

Lowest ¡cost ¡node ¡ ¡

Cost ¡op;miza;on ¡in ¡the ¡network ¡coordinate ¡space ¡

slide-8
SLIDE 8

¡Sherpa ¡

  • Overlay ¡network ¡system ¡that ¡finds ¡the ¡lowest ¡cost ¡

node ¡under ¡latency ¡constraints ¡

  • Broad ¡classes ¡of ¡latency-­‑based ¡cost ¡func<ons, ¡

without ¡knowing ¡all ¡the ¡nodes ¡that ¡we ¡are ¡ querying ¡

  • 1. ¡Network ¡coordinates ¡
  • 2. ¡Voronoi ¡regions ¡
  • 3. ¡Compass ¡rou<ng ¡
  • 4. ¡Gradient ¡descent ¡

Overlay ¡setup ¡ Querying/Node ¡discovery ¡

slide-9
SLIDE 9

A ¡ B ¡ D ¡ C ¡ E ¡

G ¡ J ¡ H ¡ I ¡ F ¡

slide-10
SLIDE 10

A ¡ B ¡ D ¡ C ¡ E ¡

G ¡ J ¡ H ¡ I ¡ F ¡

Compass ¡rou;ng ¡

slide-11
SLIDE 11

A ¡ B ¡ D ¡ E ¡

G ¡ J ¡ H ¡ I ¡ F ¡

C ¡

Gradient ¡descent ¡

Nearest ¡neighbor ¡ Lowest ¡cost ¡node ¡ ¡

slide-12
SLIDE 12

Evalua<on ¡

  • Two ¡latency ¡data ¡sets: ¡ ¡

– 1715 ¡DNS ¡servers, ¡213 ¡PlanetLab ¡nodes ¡ – network ¡coordinate ¡system: ¡Vivaldi ¡

  • 1,000 ¡queries: ¡“find ¡centroid ¡of ¡30 ¡nodes” ¡

cost(m) = d(m, pi)

i=1 N

N + +(maxi(d(m, pi)) − mini(d(m, pi)))2

slide-13
SLIDE 13

Nearest ¡neighbor ¡is ¡not ¡enough ¡

  • ­‑1 ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡-­‑0.5 ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡0 ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡0.5 ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡1 ¡

¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡cost ¡reduc<on ¡ ¡ 1 ¡ 0.5 ¡ 0 ¡

Cost ¡reduc;on ¡

1 ¡-­‑ ¡ ¡cost(nn) ¡ cost(opt) ¡

For ¡80% ¡of ¡the ¡queries, ¡the ¡node ¡chosen ¡by ¡Sherpa ¡has ¡a ¡ lower ¡cost ¡than ¡the ¡nearest ¡neighbor ¡

slide-14
SLIDE 14

Rela<ve ¡ranking ¡

1 ¡ 0.5 ¡ 0 ¡ 0 ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡10 ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡20 ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡30 ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡40 ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡50 ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡rela<ve ¡rank ¡(%) ¡

Rela;ve ¡rank ¡

For ¡65% ¡of ¡the ¡queries, ¡the ¡node ¡chosen ¡by ¡Sherpa ¡is ¡among ¡ the ¡10% ¡lowest ¡cost ¡nodes ¡

slide-15
SLIDE 15

Conclusions ¡and ¡Future ¡Work ¡

  • Generalized ¡node ¡selec<on ¡with ¡network ¡

coordinates ¡

  • Sherpa ¡finds ¡the ¡lowest ¡cost ¡node ¡
  • Implementa<on ¡
  • Cost ¡func<ons ¡
  • Other ¡applica<ons: ¡split ¡TCP, ¡route ¡avoidance ¡