A Network Positioning System for the Internet

36
A Network Positioning System for the Internet T. S. Eugene Ng and Hui Zhang USENIX ’04 Presented By: Imranul Hoque 1

description

A Network Positioning System for the Internet. T. S. Eugene Ng and Hui Zhang USENIX ’04 Presented By: Imranul Hoque. Problem. Network distance = Round Trip Time. - PowerPoint PPT Presentation

Transcript of A Network Positioning System for the Internet

Page 1: A Network Positioning System for the Internet

1

A Network Positioning System for the Internet

T. S. Eugene Ng and Hui ZhangUSENIX ’04

Presented By: Imranul Hoque

Page 2: A Network Positioning System for the Internet

2

Problem

• Network distance = Round Trip Time

Given two Internet hosts, can we accurately estimate the network distance between them

without sending any RTT probes between them?

Page 3: A Network Positioning System for the Internet

3

Motivation

• Example:– Overlay networks, closest server selection

• Why not explicit measurement?

Assign coordinates to hosts to enable latency prediction

(X1, Y1) (X2, Y2)

(X3, Y3)

Page 4: A Network Positioning System for the Internet

4

Challenges

• Accuracy• Stability• Adaptability• Scalability

Page 5: A Network Positioning System for the Internet

5

Timeline

GNP (Ng)INFOCOM02

PIC (Costa)ICDCS04

Vivaldi (Dabek)SIGCOMM04

PCoord (Lehman)NCA04

NPS (Ng)USENIX04

Virtual Landmarks (Tang)IMC03

Big-Bang (Shavitt)INFOCOM03

LightHouse (Pias)IPTPS03

Stable-Accurate Coordinate (Ledlie)ICDCS06

Coordinate in Wild (Ledlie)NSDI07

Adversarial Network (Zage)CCS07

Secure Internet Coordinate (Kaafar)SIGCOMM07

2002

2003

2004

2006

2007

Page 6: A Network Positioning System for the Internet

6

Global Network Positioning

Step 1: Measure inter-landmark distance

Landmark 2 Landmark 3

Landmark 1

Page 7: A Network Positioning System for the Internet

Global Network Positioning

Step 2: Send measured distance to coordinator

Landmark 2 Landmark 3

Landmark 1

6

Page 8: A Network Positioning System for the Internet

Global Network Positioning

Landmark 2 (x2, y2) Landmark 3 (x3, y3)

Landmark 1 (x1, y1)

Step 3: Coordinator computes coordinates by minimizing the overall discrepancy between measured distances and computed distances

2

ij

ijijijij

jiijij

ddd

dd

dd

ˆˆ, where

,ˆ,minimize

6

Page 9: A Network Positioning System for the Internet

Global Network Positioning

Landmark 2 (x2, y2) Landmark 3 (x3, y3)

Landmark 1 (x1, y1)

Step 4: Each ordinary host measures its distance to the landmarks

Host 1

6

Page 10: A Network Positioning System for the Internet

Global Network Positioning

Landmark 2 (x2, y2) Landmark 3 (x3, y3)

Landmark 1 (x1, y1)

Step 5: Ordinary host computes its coordinates relative to the landmarks by minimizing the overall

discrepancy between measured distance and computed distance

Host 1 (xh, yh)

6

Page 11: A Network Positioning System for the Internet

Problems of GNP

• Centralized coordinator– Solution: distributed calculation

• Fixed set of landmarks– Solution: any set of existing nodes can be

reference points

Layer 0

Layer 1

Layer 0 Layer 0

Layer 2

Layer 3

Layer 2

7

Page 12: A Network Positioning System for the Internet

Network Positioning System

Landmark 1 Landmark 2 Landmark 3

Membership Server

Layer 0

8

Page 13: A Network Positioning System for the Internet

Network Positioning System

Landmark 1 Landmark 2 Landmark 3

Membership Server

Host h1

Layer 0

8

Page 14: A Network Positioning System for the Internet

Network Positioning System

Landmark 1 Landmark 2 Landmark 3

Membership Server

Host h1

I need some reference points

Layer 0

8

Page 15: A Network Positioning System for the Internet

Network Positioning System

Landmark 1 Landmark 2 Landmark 3

Membership Server

Host h1

L1, L2, L3

Layer 0

8

Page 16: A Network Positioning System for the Internet

Network Positioning System

Landmark 1 Landmark 2 Landmark 3

Membership Server

Layer 0

Layer 1

Host h1

Ref: [L1, L2, L3]Layer = maxLayer(L1, L2, L3) + 1

8

Page 17: A Network Positioning System for the Internet

Network Positioning System

Landmark 1 Landmark 2 Landmark 3

Membership Server

Host h1

Ref: [L1, L2, L3]

Layer 0

PING

Layer 1

8

Page 18: A Network Positioning System for the Internet

Network Positioning System

Landmark 1 Landmark 2 Landmark 3

Membership Server

Host h1

Ref: [L1, L2, L3]

Layer 0

Coord(Li), RTT(h1, Li)Layer 1

8

Page 19: A Network Positioning System for the Internet

Network Positioning System

Landmark 1 Landmark 2 Landmark 3

Membership Server

Host h1

Ref: [L1, L2, L3]

Layer 0

Calculate coordinate using RTT(h1, Li) & Coord(Li)

Layer 1

What if the RTTs are not correct?What if Li was also calculating its coordinate?

8

Page 20: A Network Positioning System for the Internet

Network Positioning System

Landmark 1 Landmark 2 Landmark 3

Membership Server

Host h1

Ref: [L1, L2, L3]

Layer 0

3. Calculate coordinate (using min RTT to each host)

Layer 1

Repeats the steps until in 3 consecutive iterations node moves < 1msec

1. PING

2. Coord(Li), RTT(h1, Li)

8

Page 21: A Network Positioning System for the Internet

Network Positioning System

Landmark 1 Landmark 2 Landmark 3

Membership Server

Host h1

Ref: [L1, L2, L3]

Layer 0

3. Calculate coordinate (using min RTT to each host)

Layer 1

Period: 12 hours (hosts), 3 hours (landmarks)

1. PING

2. Coord(Li), RTT(h1, Li)

8

Page 22: A Network Positioning System for the Internet

Issues in NPS

• How many layers?– Accuracy vs. Scalability (NPS uses 3 layers)

• Handling malicious nodes– Calculate fitting error to each reference point– Reject reference point with largest fitting error if the error

is significantly large• Sudden change in topology– Reference points can trigger reposition

• Effect of reference point selection– Random, close, hybrid [PIC: Costa04]

9

Page 23: A Network Positioning System for the Internet

PlanetLab Experiment

• Duration: 20 hours• 127 nodes: 15 well distributed nodes are

landmarks [PCoord: Lehman04]• 8 dimensional coordinates (why?)• Landmarks started 5 minutes prior to ordinary

hosts• 2 layers: landmarks and ordinary hosts• Accuracy metric: relative error

|actual – predicted| / min(actual, predicted)

10

Page 24: A Network Positioning System for the Internet

Accuracy of NPS

Among landmarks, end

Among ordinary hosts, end

11

Page 25: A Network Positioning System for the Internet

Controlled Experiment

• Objective:– Accuracy under RTT dynamics– Effect of topology change– Effect of maliciousness

• Simulation result from 1044 node random topology• 8 dimensional coordinates• 20 landmarks, 1024 hosts • 2 layers, 3 layers• Accuracy metric: 90 percentile relative error

12

Page 26: A Network Positioning System for the Internet

Effect of Topology Change

Topology replaced

With triggered update

Without triggered update

13

Page 27: A Network Positioning System for the Internet

Discussion

• Stable and accurate coordinates [Ledlie06]– Data from PlanetLab: 2 random nodes

RTT varies a lot over time

14

Page 28: A Network Positioning System for the Internet

Discussion (2)

• Network Coordinates in the Wild [Ledlie07]– Higher relative error– More triangle inequality violation– Higher churn

Behavior in real network is completely different from behavior under PlanetLab experiments

15

Page 29: A Network Positioning System for the Internet

Discussion (3)

• Effect of maliciousness– Few nodes lying huge vs. many nodes lying small– Use a random set of verifiers to verify that relative

error is below a certain threshold

Very easy to distort the whole coordinate space

16

Page 30: A Network Positioning System for the Internet

Questions?

17

Page 31: A Network Positioning System for the Internet

31

Downhill Simplex Method

• Simplex = N+1 vertices in N dimensions• Moves:– Reflection– Reflection and Expansion– Contraction– Multiple Contraction

Page 32: A Network Positioning System for the Internet

32

Downhill Simplex Method

• (a) is highest (c) is lowest

Page 33: A Network Positioning System for the Internet

33

Reflection

Page 34: A Network Positioning System for the Internet

34

Reflection and Expansion

• (d) is less than (c)

Page 35: A Network Positioning System for the Internet

35

Contraction

• (d) is higher than second highest: (b)

Page 36: A Network Positioning System for the Internet

36

Multiple Contraction

• (e) is still the highest among: (b), (c), (e)