ORALS--finals--oct31/Nov3--2007
Download
Report
Transcript ORALS--finals--oct31/Nov3--2007
Overlay Network Creation and Maintenance
with Selfish Users
Georgios Smaragdakis
Dissertation committee members: Azer Bestavros,
Nikolaos Laoutaris,
John Byers
Overlays & Neighbor Selection
Overlay node
Overlay links
Internet
Transit
ISP
Transit
ISP
Access
ISP
Access
ISP
Access
ISP
Overlay applications:
overlay routing,
p2p file sharing,
content distribution..
Focus on service
quality!
2
Challenges
v2
v1
v5
v4
v6
v7
v8 that
What
gain
p1=[v2v3v4is
v5v6the
v7v8v9performance
]
can be achieved by a selfish node?
p8=[v1v2v3v4v5v6v7v9]
Whatvis
3 the impact of selfish neighbor
selection to overlay network
p3=[v1v2v4v5v6v7v8v9]
performance?
v9
p9=[v
node
Selfish
What
are the implications of
selfish
1v2v3v4v5v6v7v8]
neighbor selection to system design?
3
Outline
Implications
Selfish Neighbor
Selection
to
Overlay Routing
Implications to File Sharing
Implications to
Service Provisioning
4
Implications
Selfish Neighbor
Selection
to
Overlay Routing
Implications to File Sharing
Implications to
Service Provisioning
5
Selfish Neighbor Selection (SNS)
Constraints that need to be addressed in a
realistic model for overlay networks:
Bounded degree
Preference vectors
Realistic network distance
Link directionality
Fundamentally different from other models that
have been proposed for other networks.
[Fabrikant et al.,PODC’03; Chun et al., Infocom’04 …]
6
Optimal Neighbor Selection
vi: choose k neighbors, s.t.
min C i ( S )
pij d S (vi , v j )
w
v j Vi
over all siSi
vi
u
G-i=( V-i , S-i )
Set of residual nodes
Set of residual wiring
vi’s residual network
7
SNS & Facility Location
Uniform link weights, and uniform preference
k-median on asymmetric distances
8
k-median
k-median:
Find a subset I of F and a function σ:CI
to min ( Σi,j sjcij ) such that |I| ≤ k
F: set of
facilities
C: set of clients,
cij: cost connecting
client jfacility I
sj: demand of node j
9
Uncapacitated Facility Location
Uncapacitated Facility Location (UFL):
Find a subset I of F and a function σ:CI
to min ( Σi fi + Σi,j sjcij )
F: set of
facilities
fi: cost to
open
facility
C: set of clients,
cij: cost connecting
client jfacility I
sj: demand of node j
10
SNS & Facility Location
Uniform link weights, and uniform preference
k-median on asymmetric distances
Since the wiring
cost is the same
w
Non-uniform link weights, and uniform
vi
preference
ILP formulation
min Ci ( S )
p
v j Vi
ij
u
can be
d S (vw,u
i,vj )
obtained from
k-median on
reversed distances
11
Local Search (LS)
vi: choose k neighbors
min Ci ( S )
p
v j Vi
ij
d S (vi , v j )
w
over all siSi
vi
[Arya et al,STOC’01]
u
G-i=( V-i , S-i )
Set of residual nodes
Set of residual wiring
vi’s residual network
12
SNS : the Game
Game <V,{si},{Ci}>
V : set of n players (nodes)
{si}: strategies available to vi (wirings),
choose k out of n to connect
{Ci}: set of costs for vi
min C i ( S ) pij d S (vi , v j )
v j Vi
Best response of a node: node’s optimal wiring
Outcome: S, the global wiring
A stable wiring is a pure Nash equilibium
Using iterative best response
Fundamentally different from selfish routing
13
SNS : Equilibria
Uniform Preference
n=15
Skewness of preference
k=2
k=3
k=8
k=11
k (Link density)
In-degrees are highly skewed
even under uniform preference !
Quality-based
“preferential attachment”
14
SNS : Efficiency
Performance of ILP & LS is close to
Utopian!
Link density
Skewness of
preference
Link density
Skewness of
preference
Theoretical results showed in the worst case the cosial
cost can be bad
[Laoutaris, Poplawsi, Rajaraman, Sundaram, Teng,PODC’08]
15
SNS : Trace-Driven Evaluation
How we assign the distance:
Synthetically using BRITE
Empirically from PlanetLab
Empirically from AS-level maps [Routeviews]
Neighbor Selection Strategies:
k-Random heuristic
k-Closest heuristic
k-Regular heuristic
k-Best Response
Control parameter:
Bound on out-degree k (link density)
16
Connecting on a k-Random graph
BRITE (n=50)
0 2 3
5
k
11
22
PlanetLab (n=50)
0 2 3
5
11
k
22
AS-Level (n=50)
0 2 3
5
11
22
k
If your neighbors are naïve, it pays to be selfish!
17
Connecting on a k-Closest graph
BRITE (n=50)
0 2 3
5
11
22
PlanetLab (n=50)
0 2 3
k
5
11
k
22
AS-Level (n=50)
0 2 3
5
11
22
k
“Greed is not good”
If your neighbors are greedy, it pays to be selfish!
18
Connecting on a k-Regular graph
BRITE (n=50)
0 2 3
5
k
11
22
PlanetLab (n=50)
0 2 3
5
11
22
k
AS-Level (n=50)
0 2 3
5
11
22
k
“Common pattern is not good”
If your neighbors have the same wiring pattern,
it pays to be selfish!
19
Connecting on a Best Response graph
BRITE (n=50)
0 2 3
5
k
11
22
PlanetLab (n=50)
0 2 3
5
11
22
k
AS-Level (n=50)
0 2 3
5
11
22
k
The BR graph is highly optimized!
If your neighbors are selfish, it is OK to be naïve!
20
SNS vs. Heuristics: Social Cost
Macroscopic view:
Focusing on the social welfare
(k=2)
k-Random/BR
k-Closest/BR k-Regular/BR
BRITE
1.44
1.53
3.61
PlanetLab
2.23
1.48
3.84
AS
2.04
1.90
4.78
The network is better off with selfish nodes!
21
Real-Time Applications
Min-Max Best Response
Worst delay
in the overlay:
0 2 3
5
11
22
k
22
SNS with Variable Degree
Real-time applications
100 links
Variable degree
through LS:
Swap 1 link
Add 1 link
Drop 1 link
120 links
Application requirement
(Performance when k=5, n=50
i.e. 250 links)
23
Implications
Selfish Neighbor
Selection
to
Overlay Routing
Implications to File Sharing
Implications to
Service Provisioning
24
Basic design of EGOIST:
Link state protocol
Measurements of distance to candidate neighbors
Wirings according to chosen strategy
Re-wirings every T second
A newcomer bootstraps by connecting to arbitrary
neighbors
25
EGOIST : Performance
Best
Response
26
EGOIST: Passive Measurements
Passive measurements based on virtual
coordinates (pyxida system) with minimal
cost
27
EGOIST: Other Metrics
End-to-end available bandwidth (pathchirp)
with minimal measurement overhead
CPU load (loadavg)
28
EGOIST: Marginal Utility of Rewiring
BR
Lazy BR (threshold = 10%)
There exists a performance knee (k=3 or 4)
Re-wirings could be reduced with lazy BR
29
quality
Connectivity
Efficiency Index
EGOIST: Effect of Churn
Connectivity is guaranteed (in T/n time)
HybridBR (a connected ring is maintained)
delivers much of the efficiency of BR
30
quality
Connectivity
Efficiency Index
EGOIST: Effect of Churn
BR and Hybrid BR dominate all the other
heuristics
HybridBR pays off at high churn
31
EGOIST : Other Work
CPU and memory load is very low
Robust to cheating
Scalability
via topological sampling
via layered architecture
Applications including multi-player P2P
games, real-time traffic over IP etc.
32
Implications
Selfish Neighbor
Selection
to
Overlay Routing
Implications to File Sharing
Implications to
Service Provisioning
33
Modern File Sharing Systems
Parallel upload/
download
Internet
Seeder
Transit
ISP
Transit
ISP
Access
ISP
Access
ISP
Access
ISP
- Swarming
Local scheduling
- Local Rarest First
Flat connectivity
- Choke/unchoke
Leecher
Overlay node
34
n-way Broadcast
Internet
Synchronization
- Distributed databases
- Backups
Batch parallel
processing
- The files have to be
received by all nodes
before the next step
of processing begins
35
Preliminary Solutions
n co-existing swarms
(-) Stress of physical links
(-) Exchange of multiple chunks in parallel overpartitions
the uplink capacity [Tian et al., ICPP’06]
End-system multicast (mesh)
[SplitStream, Bullet]
(-) Creates an overlay for each swarm
(-) No coordination among swarms
(-) Monitor overhead
36
Design Strategies for n-way Broadcast
Joint optimization of upload/download
while participating in many swarms
Data Agnostic
- Keeps swarming and local scheduling
Bandwidth-Centric
- Max-flow to approximate swarming behavior
[Massoulie et al., Infocom’07]
Bounded Degree
37
Reducing the Average Download Time
Objective: Minimize the average download time
Max-Sum:
Neighbor selection strategy of node vi:
max (sum (MaxFlow(vi, vj)), for all vj
38
Reducing the Download Time
Objective: Minimize the total download time
Max-Min:
Neighbor selection strategy of node vi:
max (min (MaxFlow(vi, vj)), for all vj
39
Optimized Graphs and Swarming
Formation of stable graphs
Each node strives to improve both the
upload and download flow
Performance of swarming on optimized graphs
- Max flow might not be realizable
40
Performance Evaluation
Max-Sum
Max-Min
Delivery Time
Node ID
Naive
Selfish Upload:
Protects the uplink
File ID
capacity
of the slow node File ID
Improves the
download time in the
system
File ID
Flattens distribution time!
Guarantees synchronization!
Comparable average download
time
41
Other Work: File Searching
Best response: max #nodes reached
4
Bootstrap
1
Server
3
6
5
2
selfishly
TTL of scoped flooding is 2
Maximum Coverage Problem
42
Implications
Selfish Neighbor
Selection
to
Overlay Routing
Implications to File Sharing
Implications to
Service Provisioning
43
Server Selection
Hardware server
44
Centralized Deployment
Generic Service Host
Software server
Demand change
e.g. Flash crowd,
time-of-day
45
effect
Dynamic Service Deployment
Generic Service Host
Software server
Demand change
e.g. Flash crowd,
time-of-day
46
effect
Distributed Service Migration (DSM)
“ring” nodes
r-ball
(r=2)
Solve k-median or UFL
in an r-ball
..BUT nodes outside the
r-ball are totally neglected
Iterate until
convergence
47
DSM: Properties
Convergence:
Migration only if the cost of facilitating the
demand decreases at least be a%, converges in
O(log1+a n) steps
We can control the speed of convergence by tuning a
Limited horizon view requirement:
r regulates the trade-off between scalability and
performance
48
DSM: Evaluation
Similar results for UFL under different
cost functions to open and maintain the server
49
Dynamic vs. Static Deployment
Static
deployment
DSM
DSM
Dynamic
deployment
50
Conclusions
What is the performance gain that can
be achieved by a selfish node?
Selfish nodes can reap substantial performance gain.
What is the impact of selfish neighbor
selection to overlay network
performance?
Surprisingly, the evolving graphs have also good
performance!
51
Conclusions
What are the implications of selfish
neighbor selection to system design?
Selfish wiring strategies are easily realizable
Selfish wiring behavior can be used towards
distributed overlay network creation and
maintenance
Selfish wiring must be a component of any system
to protect it from abuse
Selfish wiring behavior can be used for efficient
dynamic service provisioning
52
Thank You!
http://csr.bu.edu/sns
http://csr.bu.edu/dfl
53