Vivaldi Coordinate Service Justin Ma, Patrick Verkaik, Michael Vrable Department of Computer Science...

26
Vivaldi Coordinate Service Justin Ma, Patrick Verkaik, Michael Vrable Department of Computer Science And Engineering UCSD CSE222A, Winter 2005
  • date post

    30-Jan-2016
  • Category

    Documents

  • view

    215
  • download

    0

Transcript of Vivaldi Coordinate Service Justin Ma, Patrick Verkaik, Michael Vrable Department of Computer Science...

Page 1: Vivaldi Coordinate Service Justin Ma, Patrick Verkaik, Michael Vrable Department of Computer Science And Engineering UCSD CSE222A, Winter 2005.

Vivaldi Coordinate Service

Justin Ma, Patrick Verkaik, Michael VrableDepartment of Computer Science And Engineering

UCSD

CSE222A, Winter 2005

Page 2: Vivaldi Coordinate Service Justin Ma, Patrick Verkaik, Michael Vrable Department of Computer Science And Engineering UCSD CSE222A, Winter 2005.

Network Coordinates● Knowledge of network latencies useful● All-pairs measurement overly expensive● Key idea: embed nodes into a metric

space, where distance corresponds to RTT

0, 0

0, 5 13, 5

Page 3: Vivaldi Coordinate Service Justin Ma, Patrick Verkaik, Michael Vrable Department of Computer Science And Engineering UCSD CSE222A, Winter 2005.

Vivaldi Algorithm

● Decentralized algorithm for computing network coordinates

A B

My coordinates:(5, 0)My error:20%

Current Coordinates:(10, 0)Current Error:50%

RTT: 10 ms

(1): Request

(2): Reply

(3): Update Position

(12, 0)

Page 4: Vivaldi Coordinate Service Justin Ma, Patrick Verkaik, Michael Vrable Department of Computer Science And Engineering UCSD CSE222A, Winter 2005.

Vivaldi Algorithm (cont.)

● Each node updates position incrementally with each communication

● Modeled as a spring system● Movement governed by error estimate of

each node

Dabek, et al., SIGCOMM '04

Page 5: Vivaldi Coordinate Service Justin Ma, Patrick Verkaik, Michael Vrable Department of Computer Science And Engineering UCSD CSE222A, Winter 2005.

Vivaldi Evaluation Shortcomings

● Presented evaluation uses static latency measurements

● Measurement of response to network changes limited

● We need to evaluate this algorithm in a real setting

Page 6: Vivaldi Coordinate Service Justin Ma, Patrick Verkaik, Michael Vrable Department of Computer Science And Engineering UCSD CSE222A, Winter 2005.

Outline

● Vivaldi Coordinate Service● Simulation Results● VCS Deployment● Demonstration

Page 7: Vivaldi Coordinate Service Justin Ma, Patrick Verkaik, Michael Vrable Department of Computer Science And Engineering UCSD CSE222A, Winter 2005.

VCS Overview

● Service for querying network coordinates of hosts

● Platform for verifying effectiveness of Vivaldi

Where is Y? Landmarks

Page 8: Vivaldi Coordinate Service Justin Ma, Patrick Verkaik, Michael Vrable Department of Computer Science And Engineering UCSD CSE222A, Winter 2005.

Landmark Protocol

● Role of landmarks is to service queries● Maintains accurate coordinates among

landmarks

Page 9: Vivaldi Coordinate Service Justin Ma, Patrick Verkaik, Michael Vrable Department of Computer Science And Engineering UCSD CSE222A, Winter 2005.

Query Protocol

● Querying non-landmark node

Calc Y's coordinates

Y

Page 10: Vivaldi Coordinate Service Justin Ma, Patrick Verkaik, Michael Vrable Department of Computer Science And Engineering UCSD CSE222A, Winter 2005.

Implementation Goals

● How do we make the landmark and query protocols lightweight and accurate?

● Candidate landmark protocol: All landmarks ping each other

● Candidate query protocol: All landmarks ping target

● We conduct simulations to investigate other candidate protocols

Page 11: Vivaldi Coordinate Service Justin Ma, Patrick Verkaik, Michael Vrable Department of Computer Science And Engineering UCSD CSE222A, Winter 2005.

Simulation Dataset

● PlanetLab all-pair ping● 11-24 January, 2005● 15 minute averages● 166 nodes

Page 12: Vivaldi Coordinate Service Justin Ma, Patrick Verkaik, Michael Vrable Department of Computer Science And Engineering UCSD CSE222A, Winter 2005.

Simulation: Landmark Protocol

Evaluate two communication patterns:● All-pairs

– Every 15 minutes, a landmark pings all other landmarks

● Random fraction– Every 15 minutes, a landmark:

● Selects random 10% of other landmarks● Pings the selected landmarks

Page 13: Vivaldi Coordinate Service Justin Ma, Patrick Verkaik, Michael Vrable Department of Computer Science And Engineering UCSD CSE222A, Winter 2005.

Simulation: All-Pair Landmark Protocol

Highly variable, but after 2.5 days (t=240):

– 50% of measurements mostly below 7% error

– 75% of measurements mostly below 20% error

Page 14: Vivaldi Coordinate Service Justin Ma, Patrick Verkaik, Michael Vrable Department of Computer Science And Engineering UCSD CSE222A, Winter 2005.

Simulation: All-Pair Landmark Protocol

● 50% node pairs have < 9% average error● 80% of node pairs have < 30% average

error

Page 15: Vivaldi Coordinate Service Justin Ma, Patrick Verkaik, Michael Vrable Department of Computer Science And Engineering UCSD CSE222A, Winter 2005.

Simulation: All-Pair Landmark Protocol

● Error decreases with time

Page 16: Vivaldi Coordinate Service Justin Ma, Patrick Verkaik, Michael Vrable Department of Computer Science And Engineering UCSD CSE222A, Winter 2005.

Sim: Random-10% Landmark Protocol

● After a half day: random-10% similar to all-pair

Page 17: Vivaldi Coordinate Service Justin Ma, Patrick Verkaik, Michael Vrable Department of Computer Science And Engineering UCSD CSE222A, Winter 2005.

Simulation: Query Protocol

Calc Y's coordinates

Y

Page 18: Vivaldi Coordinate Service Justin Ma, Patrick Verkaik, Michael Vrable Department of Computer Science And Engineering UCSD CSE222A, Winter 2005.

Simulation: Query ProtocolThe DOS approach 3 least-error

Uses landmarks with lowest Vivaldi error

Uses all landmarks

Page 19: Vivaldi Coordinate Service Justin Ma, Patrick Verkaik, Michael Vrable Department of Computer Science And Engineering UCSD CSE222A, Winter 2005.

Simulation: Query Protocol

Not bad:● Few probes

needed● Few probers

needed

Page 20: Vivaldi Coordinate Service Justin Ma, Patrick Verkaik, Michael Vrable Department of Computer Science And Engineering UCSD CSE222A, Winter 2005.

Simulation: Query Protocol

Can do better:● Two least-error

nodes were close together

● => Pick better probers

Page 21: Vivaldi Coordinate Service Justin Ma, Patrick Verkaik, Michael Vrable Department of Computer Science And Engineering UCSD CSE222A, Winter 2005.

Live Deployment

● PlanetLab (roughly 15 nodes are landmarks)

● Landmarks implemented in Python● Landmark software deployed using

PLuSH

Page 22: Vivaldi Coordinate Service Justin Ma, Patrick Verkaik, Michael Vrable Department of Computer Science And Engineering UCSD CSE222A, Winter 2005.

Live Deployment: Landmark Protocol

Current deployment uses:● Changing set of 6 nodes (40% of total)● Half nearby nodes● Half random (distant)

Page 23: Vivaldi Coordinate Service Justin Ma, Patrick Verkaik, Michael Vrable Department of Computer Science And Engineering UCSD CSE222A, Winter 2005.

Live Deployment: Query Protocol

Current deployment uses:● 3 least-error nodes

Page 24: Vivaldi Coordinate Service Justin Ma, Patrick Verkaik, Michael Vrable Department of Computer Science And Engineering UCSD CSE222A, Winter 2005.

Future Work● Investigate adaptive landmark protocols● More optimal query protocol● Improve Vivaldi Coordinate Service

Implementation● Robustness● Security● Caching● Peer management

● Evaluate filtering of raw ping data

Page 25: Vivaldi Coordinate Service Justin Ma, Patrick Verkaik, Michael Vrable Department of Computer Science And Engineering UCSD CSE222A, Winter 2005.

Conclusion

● Simulations show the potential of Vivaldi and a lightweight coordinate service

● Constructed Vivaldi Coordinate Service using guidance from simulations

Page 26: Vivaldi Coordinate Service Justin Ma, Patrick Verkaik, Michael Vrable Department of Computer Science And Engineering UCSD CSE222A, Winter 2005.

Demonstration

3 Interfaces:● Text-based UDP query interface (netcat)● PlanetLab Sensor http://ironic.ucsd.edu/● Animation Webpage

http://ironic.ucsd.edu/vivaldi/