29
1 EGOIST Overlay Routing using Selfish Neighbor Selection Georgios Smaragdakis Joint work with Vassilis Lekakis, Nikos Laoutaris, Azer Bestavros, John Byers and Mema Roussopoulos

1 EGOIST Overlay Routing using Selfish Neighbor Selection Georgios Smaragdakis Joint work with Vassilis Lekakis, Nikos Laoutaris, Azer Bestavros, John

  • View
    221

  • Download
    0

Embed Size (px)

Citation preview

1

EGOIST Overlay Routing using Selfish Neighbor SelectionGeorgios Smaragdakis

Joint work with Vassilis Lekakis, Nikos Laoutaris, Azer Bestavros, John Byers and Mema Roussopoulos

2

Overlay Networks

Applications Overlay routing P2P file sharing Content distribution networks Multimedia streaming Online multiplayer games ….

OverlayPlane

Physical Plane

O1

O2

O3

R4

R2

R7

R5 R6

R3R1

3

Connectivity Management

Full mesh architectures for reliability(e.g. RON)

Myopic heuristicsrandom or proximity based neighbor selection

Tree forest or mesh construction to optimize multicast(e.g. Bullet, Splitstream)

Optimization for network delay(e.g. Detour, QRON)

Opportunistic choke/unchoke(e.g. BitTorrent)

Distributed hashing tables(e.g. Chord, Pastry, Tapestry)

4

Selfish Neighbor Selection

[Laoutaris, Smaragdakis, Bestavros, Byers, INFOCOM’07]

Optimal wiring for vi: choose k neighbors, s.t.

viu

w

ij Vv

jiSiji vvdpC ),(min

5

Selfish Neighbor Selection

The selfish node can reap substantial performance. The performance gain is higher under uninformed

overlays. The evolving stable graphs that consist of selfish nodes

are highly optimized.

Advantages

The computation of the exact optimal wiring might be expensive.

Requires full information about the network. The number of iterative wirings before stabilization might

be high.

Disadvantages

6

EGOIST:Key Contributions

System Architecture

Link state protocol to support connectivity information dissemination.

Overlay monitoring and maintenance mechanism. Computationally efficient neighbor selection.

Performance Evaluation

Average performance in real operational scenaria. Performance under different performance metrics (delay,

system load, available bandwidth) Overhead of the implementation. Performance under churn. Vulnerability to malicious users. Applications.

7

EGOIST:Basic Architecture

111.1.1.1

122.2.2.2

133.3.3.3

144.4.4.4

111.1.1.1 122.2.2.2 25msecs

111.1.1.1 133.3.3.3 165msecs

111.1.1.1 122.2.2.2 25msecs

111.1.1.1 133.3.3.3 165msecs

111.1.1.1 122.2.2.2 25msecs

111.1.1.1 133.3.3.3 165msecs

111.1.1.1 122.2.2.2 25msecs

111.1.1.1 133.3.3.3 165msecs

111.1.1.1 122.2.2.2 25msecs

111.1.1.1 133.3.3.3 165msecs

111.1.1.1 122.2.2.2 25msecs

111.1.1.1 133.3.3.3 165msecs

111.1.1.1 122.2.2.2 25msecs

111.1.1.1 133.3.3.3 165msecs

111.1.1.1 122.2.2.2 25msecs

111.1.1.1 133.3.3.3 165msecs

X

8

EGOIST:Basic Architecture

111.1.1.1

122.2.2.2

133.3.3.3

144.4.4.4

9

EGOIST:Monitoring

111.1.1.1

122.2.2.2

133.3.3.3

144.4.4.4

10

EGOIST:Monitoring

111.1.1.1

122.2.2.2

133.3.3.3

144.4.4.4

11

EGOIST:Rewiring

111.1.1.1

122.2.2.2

133.3.3.3

144.4.4.4

12

EGOIST:Newcomers

111.1.1.1

122.2.2.2

133.3.3.3

144.4.4.4

99.9.9.9

12

EGOIST:Node Drop/Failure

111.1.1.1

122.2.2.2

133.3.3.3

144.4.4.4

133.3.3.3 DOWN

Objectives

13

Performance Evaluation:Experimental Setting

Nodes: 50 PlanetLab nodes for 2

months.

Wiring policies: EGOIST k-Random, k-Closest, k-

Regular (DHT). Wiring frequency: 60

seconds.

Metrics of interest: Delay (ping, Pyxida). CPU load (loadavg). Available Bandwidth

(pathChirp).

Control variables: We vary the number (k) of

neighbors.

30

11

7

11

14

Performance Evaluation:Active Measurements

EGOISTdela

y/E

GO

IST d

ela

y

15

Performance Evaluation:Passive Measurements

Wir

ing d

ela

y/E

GO

IST d

ela

y

EGOISTEGOIST

16

Performance Evaluation:System Load

111.1.1.1

10% utilization10% utilization

10% utilization

17

Performance Evaluation:System Load

EGOIST

dela

y/E

GO

IST d

ela

y

18

Performance Evaluation:Available Bandwidth

111.1.1.1

3Mbps1Mbps

3Mbps

2Mbps

pathChirp

19

Performance Evaluation:Available Bandwidth

EGOIST

bw

th/E

GO

IST b

wth

20

Performance Evaluation:Re-wiring Frequency

EGOIST wiring Approximate EGOIST wiring (e= 10%)

CPU, memory and bandwidth consumption is minimal.

EGOIST delay/optimal delayEGOIST re-wirings

Appr. EGOIST/optimal delayAppr. EGOIST re-wirings

Norm

aliz

ed

dela

y

21

Performance Under Churn:Hybrid-EGOIST

111.1.1.1

122.2.2.2

133.3.3.3

144.4.4.4

22

Performance Under Churn

Effi

ciency

Index

Connect

ivit

y

qualit

y

EGOIST

K-RandomK-RegularK-Closest

Hybrid-EGOIST

23

Performance Under Churn

Effi

ciency

Index

Connect

ivit

y

qualit

y

EGOIST

K-RandomK-RegularK-Closest

Hybrid-EGOIST

24

Performance Under CheatingD

ela

y/

Dela

y w

ith a

buse

truthfulEGOIST

truthfulEGOIST

UntruthfulTruthful

UntruthfulTruthful

Many Untruthful nodesSingle Untruthful node

25

Applications

Multi-path file transfer

Real-time VoIP

Online multiplayer P2P games

[Quake III traces from Donnybrook, SIGCOMM’08]

EGOISTk-Closest

k-Randomk-Regular

26

Current Status

Explore worst case scenaria for cheating.

Study scalability.

Provide a general wiring service.

http://csr.bu.edu/sns

28

Thank you.