network computing laboratory 1 vivaldi: a decentralized network coordinate system authors: frank...

29
1 Network Computing Laboratory Vivaldi: A Decentralized Network Coordinate System Authors: Frank Dabek, Russ Cox, Frans Kaashoek, Robert Morris MIT Published at SIGCOMM ‘04

Upload: brandon-francis-walton

Post on 18-Jan-2016

216 views

Category:

Documents


1 download

TRANSCRIPT

Page 1: Network Computing Laboratory 1 Vivaldi: A Decentralized Network Coordinate System Authors: Frank Dabek, Russ Cox, Frans Kaashoek, Robert Morris MIT Published

1Network Computing Laboratory

Vivaldi: A Decentralized Network Coordinate System

Authors:

Frank Dabek, Russ Cox, Frans Kaashoek, Robert Morris

MIT

Published at SIGCOMM ‘04

Page 2: Network Computing Laboratory 1 Vivaldi: A Decentralized Network Coordinate System Authors: Frank Dabek, Russ Cox, Frans Kaashoek, Robert Morris MIT Published

Network Computing Laboratory | 2

Korea Advanced Institute of Science and Technology

Vivaldi is a simple, adaptive, distributed algorithm for computing network coordinates that accurately predict Internet latencies without requiring any fixed infrastructure

Internet Hosts compute their coordinates in some coordinate space such that the distance between themselves and other host’s coordinates predicts the RTT between them without sending probing packets just for measuring latencies

Introduction

Page 3: Network Computing Laboratory 1 Vivaldi: A Decentralized Network Coordinate System Authors: Frank Dabek, Russ Cox, Frans Kaashoek, Robert Morris MIT Published

Network Computing Laboratory | 3

Korea Advanced Institute of Science and Technology

Algorithm

Use synthetic distance between nodes to accurately map to latencies (RTT) between nodes. Can not create an exact mapping due to violations of triangle

inequality

N1

N2

N3A

B C

|| A || <= || B || + || C||

Page 4: Network Computing Laboratory 1 Vivaldi: A Decentralized Network Coordinate System Authors: Frank Dabek, Russ Cox, Frans Kaashoek, Robert Morris MIT Published

Network Computing Laboratory | 4

Korea Advanced Institute of Science and Technology

Algorithm

Use synthetic distance between nodes to accurately map to latencies (RTT) between nodes. Can not create an exact mapping due to violations of triangle

inequality

N1

N2

N3100 ms

48 ms 48 ms

100 <= 48 + 48100 <= 96

Page 5: Network Computing Laboratory 1 Vivaldi: A Decentralized Network Coordinate System Authors: Frank Dabek, Russ Cox, Frans Kaashoek, Robert Morris MIT Published

Network Computing Laboratory | 5

Korea Advanced Institute of Science and Technology

Algorithm

Use synthetic distance between nodes to accurately map to latencies (RTT) between nodes. Can not create an exact mapping due to violations of triangle

inequality

Tries to minimize the error of predicted RTT values Observation Minimizing the square error function of predicted RTT between two

nodes is analogous to minimizing the energy in a mass-spring system

Where:Lij = Actual Measure RTT between Node j and Node jxi = Synthetic coordinates of Node ixj = Synthetic coordinates of Node j

i j

jiij x ||xLE 2)

||(

Page 6: Network Computing Laboratory 1 Vivaldi: A Decentralized Network Coordinate System Authors: Frank Dabek, Russ Cox, Frans Kaashoek, Robert Morris MIT Published

Network Computing Laboratory | 6

Korea Advanced Institute of Science and Technology

Algorithm

N1 N2100

Page 7: Network Computing Laboratory 1 Vivaldi: A Decentralized Network Coordinate System Authors: Frank Dabek, Russ Cox, Frans Kaashoek, Robert Morris MIT Published

Network Computing Laboratory | 7

Korea Advanced Institute of Science and Technology

Algorithm

N1 N2150

F12 = 100 – 150F12 = -50

Page 8: Network Computing Laboratory 1 Vivaldi: A Decentralized Network Coordinate System Authors: Frank Dabek, Russ Cox, Frans Kaashoek, Robert Morris MIT Published

Network Computing Laboratory | 8

Korea Advanced Institute of Science and Technology

Algorithm

F12 = 100 – 100F12 = 0

N1 N2100

Page 9: Network Computing Laboratory 1 Vivaldi: A Decentralized Network Coordinate System Authors: Frank Dabek, Russ Cox, Frans Kaashoek, Robert Morris MIT Published

Network Computing Laboratory | 9

Korea Advanced Institute of Science and Technology

Algorithm

N1 N2100

N3100

Page 10: Network Computing Laboratory 1 Vivaldi: A Decentralized Network Coordinate System Authors: Frank Dabek, Russ Cox, Frans Kaashoek, Robert Morris MIT Published

Network Computing Laboratory | 10

Korea Advanced Institute of Science and Technology

Algorithm

N3N2150

F32 = 100 – 150F32 = 50

N2100

F12 = 0

System Error = F122 + F32

2 = 0 + 502 = 2500

Page 11: Network Computing Laboratory 1 Vivaldi: A Decentralized Network Coordinate System Authors: Frank Dabek, Russ Cox, Frans Kaashoek, Robert Morris MIT Published

Network Computing Laboratory | 11

Korea Advanced Institute of Science and Technology

Algorithm

N1 N2150

F12 = 100 – 150F12 = -50

N3100

F32 = 0

System Error = F122 + F32

2 = 502 + 0 = 2500

Page 12: Network Computing Laboratory 1 Vivaldi: A Decentralized Network Coordinate System Authors: Frank Dabek, Russ Cox, Frans Kaashoek, Robert Morris MIT Published

Network Computing Laboratory | 12

Korea Advanced Institute of Science and Technology

Algorithm

N3N1125

F32 = 100 – 125F32 = 25

N2125

F12 = 100 – 125F12 = 25

System Error = F122 + F32

2 = 252 + 252 = 1300

Page 13: Network Computing Laboratory 1 Vivaldi: A Decentralized Network Coordinate System Authors: Frank Dabek, Russ Cox, Frans Kaashoek, Robert Morris MIT Published

Network Computing Laboratory | 13

Korea Advanced Institute of Science and Technology

Centralized version

• Calculate net Force on node i• Move a step in the direction of the net Force

Page 14: Network Computing Laboratory 1 Vivaldi: A Decentralized Network Coordinate System Authors: Frank Dabek, Russ Cox, Frans Kaashoek, Robert Morris MIT Published

Network Computing Laboratory | 14

Korea Advanced Institute of Science and Technology

δ setting

error remote error localerror local C c

Sampling inaccurate node will not significantly affect the movement

Page 15: Network Computing Laboratory 1 Vivaldi: A Decentralized Network Coordinate System Authors: Frank Dabek, Russ Cox, Frans Kaashoek, Robert Morris MIT Published

Network Computing Laboratory | 15

Korea Advanced Institute of Science and Technology

Full Vivaldi Version

Adjust time step

Page 16: Network Computing Laboratory 1 Vivaldi: A Decentralized Network Coordinate System Authors: Frank Dabek, Russ Cox, Frans Kaashoek, Robert Morris MIT Published

Network Computing Laboratory | 16

Korea Advanced Institute of Science and Technology

Impact of Adaptive time stamp

Page 17: Network Computing Laboratory 1 Vivaldi: A Decentralized Network Coordinate System Authors: Frank Dabek, Russ Cox, Frans Kaashoek, Robert Morris MIT Published

Network Computing Laboratory | 17

Korea Advanced Institute of Science and Technology

Evaluation Methodology

Environment Packet-level network simulator using measured RTT values from the Internet

Latency data Matrix of inter-host Internet RTTs Compute coordinates from a subset of these RTTs Check accuracy of algorithm by comparing simulated results to full RTT

matrix 2 Data sets (Measured Data)

192 nodes Planet Lab network, all pair-ping gives fully populated matrix Median RTT = 76 ms

1740 Internet DNS servers Median RTT = 159 ms populate full matrix using the King method Continuously measure pairs over a week take median (other schemes just keep minim

measured RTT since King can give estimates that are lower than actual RTT need to take median)

During collection of data need to make sure unwanted forwarding of name request did not occur (give RTT for the wrong name server)

Page 18: Network Computing Laboratory 1 Vivaldi: A Decentralized Network Coordinate System Authors: Frank Dabek, Russ Cox, Frans Kaashoek, Robert Morris MIT Published

Network Computing Laboratory | 18

Korea Advanced Institute of Science and Technology

Evaluation Methodology

2 Data sets (Synthetically generated Data) Grid

Vivaldi accurately recovers RTT values but coordinates are translated and rotated from the original grids coordinates

ITM topology generation

Page 19: Network Computing Laboratory 1 Vivaldi: A Decentralized Network Coordinate System Authors: Frank Dabek, Russ Cox, Frans Kaashoek, Robert Morris MIT Published

Network Computing Laboratory | 19

Korea Advanced Institute of Science and Technology

Using data

Simulation test setup Input RTT matrix Send a packet one a second Delay by ½ RTT time

Send RPC packetUses measured RTT of RPC to update coordinates

Page 20: Network Computing Laboratory 1 Vivaldi: A Decentralized Network Coordinate System Authors: Frank Dabek, Russ Cox, Frans Kaashoek, Robert Morris MIT Published

Network Computing Laboratory | 20

Korea Advanced Institute of Science and Technology

Evaluation (Robustness to high error nodes)

Adding many new nodes that do not know their coordinates s, so are very uncertain (200 stable, then 200 new) Constant delta, already certain node get knock away from there

good coordinates Adaptive delta, already certain nodes stay stable while new nodes

move relatively quickly to their correct coordinates

Page 21: Network Computing Laboratory 1 Vivaldi: A Decentralized Network Coordinate System Authors: Frank Dabek, Russ Cox, Frans Kaashoek, Robert Morris MIT Published

Network Computing Laboratory | 21

Korea Advanced Institute of Science and Technology

Evaluation (Communication Patterns)

In 21 (localization in sensor networks) shown that sampling only low latency nodes gives good local coordinates but poor global coordinates.

400 node sim (set 4 close neighbor, set 4 far neighbor) chose from far neighbor set is a probability p. p = .5 quick convergence p > .5 convergence slows p < .5 convergence slows no distant communication

Page 22: Network Computing Laboratory 1 Vivaldi: A Decentralized Network Coordinate System Authors: Frank Dabek, Russ Cox, Frans Kaashoek, Robert Morris MIT Published

Network Computing Laboratory | 22

Korea Advanced Institute of Science and Technology

Evaluation (Adapt to network changes)

Ability to adapt to changes in the network (tested with “Transit-Stub”) extend one stub by 10x

Page 23: Network Computing Laboratory 1 Vivaldi: A Decentralized Network Coordinate System Authors: Frank Dabek, Russ Cox, Frans Kaashoek, Robert Morris MIT Published

Network Computing Laboratory | 23

Korea Advanced Institute of Science and Technology

Evaluation (Accuracy vs. GNP)

Page 24: Network Computing Laboratory 1 Vivaldi: A Decentralized Network Coordinate System Authors: Frank Dabek, Russ Cox, Frans Kaashoek, Robert Morris MIT Published

Network Computing Laboratory | 24

Korea Advanced Institute of Science and Technology

Model Selection

Page 25: Network Computing Laboratory 1 Vivaldi: A Decentralized Network Coordinate System Authors: Frank Dabek, Russ Cox, Frans Kaashoek, Robert Morris MIT Published

Network Computing Laboratory | 25

Korea Advanced Institute of Science and Technology

Critique

Cool points Proposes simple & decentralized way for measuring network latency Fast convergence

Bad points Limited scope of application area due to its dependency on traffic

pattern Applications communicating neighbors are less benefited from Vivaldi

The implication of delta(δ) is profound but no guidance provided No proposed architecture for managing coordinates information

Page 26: Network Computing Laboratory 1 Vivaldi: A Decentralized Network Coordinate System Authors: Frank Dabek, Russ Cox, Frans Kaashoek, Robert Morris MIT Published

Network Computing Laboratory | 26

Korea Advanced Institute of Science and Technology

New idea

Scalable and distributed VC management system SPoN control plane? Exploits vivaldi scheme in clustering operations

Cluster member nodes have received VC of other head nodes They decide to migrate the cluster by computing the distance between

them and the cluster head nodes

Exploits the spring-relaxation scheme in selecting data delivery node and clustering operatios in SPoN cluster Construct n dimensional virtual space with data loss, network

bandwidth and latency. Compute the best VC in terms of the minimization Select the real node deployed in that coordinates or close to it

Page 27: Network Computing Laboratory 1 Vivaldi: A Decentralized Network Coordinate System Authors: Frank Dabek, Russ Cox, Frans Kaashoek, Robert Morris MIT Published

Network Computing Laboratory | 27

Korea Advanced Institute of Science and Technology

Backup slides

Page 28: Network Computing Laboratory 1 Vivaldi: A Decentralized Network Coordinate System Authors: Frank Dabek, Russ Cox, Frans Kaashoek, Robert Morris MIT Published

Network Computing Laboratory | 28

Korea Advanced Institute of Science and Technology

Evaluation Methodology

Page 29: Network Computing Laboratory 1 Vivaldi: A Decentralized Network Coordinate System Authors: Frank Dabek, Russ Cox, Frans Kaashoek, Robert Morris MIT Published

Network Computing Laboratory | 29

Korea Advanced Institute of Science and Technology

Using data

Error definitions Error of Link

Absolute difference between predicted RTT (coordinate math) and measured (RTT Matrix element)

Error of Node Median of link errors involving this node

Error of System Median of all node errors