Title: Overlay Network Creation and Maintenance with Selfish Users
1Overlay Network Creation and Maintenance with
Selfish Users
Dissertation committee members Azer Bestavros,
Nikolaos
Laoutaris, John Byers
2Overlays Neighbor Selection
Overlay node
Overlay links
Internet
Overlay applications overlay routing, p2p file
sharing, content distribution..
Transit ISP
Transit ISP
Focus on service quality!
Access ISP
Access ISP
Access ISP
3Challenges
v4
v1
v7
v5
v2
v6
v8
- What is the performance gain that
- can be achieved by a selfish node?
p1v2v3v4v5v6v7v8v9
p8v1v2v3v4v5v6v7v9
v3
- What is the impact of selfish neighbor
- selection to overlay network performance?
- What are the implications of selfish neighbor
selection to system design?
p3v1v2v4v5v6v7v8v9
v9
Selfish node
p9v1v2v3v4v5v6v7v8
4Outline
Implications to Overlay Routing
Selfish Neighbor Selection
Implications to File Sharing
Implications to Service Provisioning
5Implications to Overlay Routing
Selfish Neighbor Selection
Implications to File Sharing
Implications to Service Provisioning
6Selfish 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.,PODC03 Chun et al.,
Infocom04
7Optimal Neighbor Selection
- vi choose k neighbors, s.t.
min
over all si?Si
vi
G-i( V-i , S-i )
Set of residual nodes
Set of residual wiring
vis residual network
8SNS Facility Location
- Uniform link weights, and uniform preference
- ? k-median on asymmetric distances
9k-median
- k-median
- Find a subset I of F and a function sC?I
- to min ( Si,j sjcij ) such that I k
F set of facilities
C set of clients, cij cost connecting client
j?facility I sj demand of node j
10Uncapacitated Facility Location
- Uncapacitated Facility Location (UFL)
- Find a subset I of F and a function sC?I
- to min ( Si fi Si,j sjcij )
F set of facilities fi cost to
open facility
C set of clients, cij cost connecting
client j?facility I sj demand of node j
11SNS Facility Location
- Uniform link weights, and uniform preference
- ? k-median on asymmetric distances
Since the wiring cost is the same
- Non-uniform link weights, and uniform
- preference
- ? ILP formulation
vi
min
12Local Search (LS)
min
w
over all si?Si
u
vi
Arya et al,STOC01
G-i( V-i , S-i )
Set of residual nodes
Set of residual wiring
vis residual network
13SNS the Game
- Game ltV,si,Cigt
- 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
- Best response of a node nodes optimal wiring
- Outcome S, the global wiring
- A stable wiring is a pure Nash equilibium
- Using iterative best response
- Fundamentally different from selfish routing
14SNS Equilibria
Uniform Preference
Skewness of preference
In-degrees are highly skewed even under
uniform preference ! ? Quality-based
preferential attachment
k (Link density)
15SNS Efficiency
- Performance of ILP LS is close to Utopian!
- Theoretical results showed in the worst case the
cosial cost can be bad - Laoutaris, Poplawsi, Rajaraman,
Sundaram, Teng,PODC08
Skewness of preference
Skewness of preference
Link density
Link density
16SNS 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)
17Connecting on a k-Random graph
AS-Level (n50)
PlanetLab (n50)
BRITE (n50)
0 2 3 5 11 22
0 2 3 5 11 22
0 2 3 5 11 22
k
k
k
If your neighbors are naïve, it pays to be
selfish!
18Connecting on a k-Closest graph
AS-Level (n50)
PlanetLab (n50)
BRITE (n50)
0 2 3 5 11 22
0 2 3 5 11 22
0 2 3 5 11 22
k
k
k
If your neighbors are greedy, it pays to be
selfish!
19Connecting on a k-Regular graph
AS-Level (n50)
PlanetLab (n50)
BRITE (n50)
0 2 3 5 11 22
0 2 3 5 11 22
0 2 3 5 11 22
k
k
k
- Common pattern is not good
If your neighbors have the same wiring pattern,
it pays to be selfish!
20Connecting on a Best Response graph
AS-Level (n50)
PlanetLab (n50)
BRITE (n50)
0 2 3 5 11 22
0 2 3 5 11 22
0 2 3 5 11 22
k
k
k
- The BR graph is highly optimized!
If your neighbors are selfish, it is OK to be
naïve!
21SNS vs. Heuristics Social Cost
- Macroscopic view
- Focusing on the social welfare
(k2) 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!
22Real-Time Applications
- Min-Max Best Response
- Worst delay
- in the overlay
0 2 3 5 11 22
k
23SNS with Variable Degree
- Real-time applications
- Variable degree
- through LS
- Swap 1 link
- Add 1 link
- Drop 1 link
100 links
120 links
Application requirement
(Performance when k5, n50 i.e. 250 links)
24Implications to Overlay Routing
Selfish Neighbor Selection
Implications to File Sharing
Implications to Service Provisioning
25 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
26EGOIST Performance
Best Response
27EGOIST Passive Measurements
- Passive measurements based on virtual
- coordinates (pyxida system) with minimal
- cost
28EGOIST Other Metrics
- End-to-end available bandwidth (pathchirp) with
minimal measurement overhead - CPU load (loadavg)
29EGOIST Marginal Utility of Rewiring
Lazy BR (threshold 10)
BR
- There exists a performance knee (k3 or 4)
- Re-wirings could be reduced with lazy BR
30EGOIST Effect of Churn
Efficiency Index
Connectivity quality
- Connectivity is guaranteed (in T/n time)
- HybridBR (a connected ring is maintained)
- delivers much of the efficiency of BR
31EGOIST Effect of Churn
Efficiency Index
Connectivity quality
- BR and Hybrid BR dominate all the other
- heuristics
- HybridBR pays off at high churn
32EGOIST 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.
33Implications to Overlay Routing
Selfish Neighbor Selection
Implications to File Sharing
Implications to Service Provisioning
34Modern File Sharing Systems
- Parallel upload/ download
- - Swarming
- Local scheduling
- - Local Rarest First
- Flat connectivity
- - Choke/unchoke
Internet
Seeder
Transit ISP
Transit ISP
Access ISP
Access ISP
Access ISP
Leecher
Overlay node
35n-way Broadcast
- Synchronization
- - Distributed databases
- - Backups
- Batch parallel processing
- - The files have to be received by all nodes
before the next step - of processing begins
-
Internet
36Preliminary Solutions
- n co-existing swarms
- (-) Stress of physical links
- (-) Exchange of multiple chunks in parallel
overpartitions - the uplink capacity Tian et al.,
ICPP06 -
- End-system multicast (mesh) SplitStream, Bullet
- (-) Creates an overlay for each swarm
- (-) No coordination among swarms
- (-) Monitor overhead
37Design 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., Infocom07
- Bounded Degree
38Reducing 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
39Reducing 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
40Optimized 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
41Performance Evaluation
Naive
Max-Sum
Max-Min
Node ID
Delivery Time
Selfish Upload Protects the uplink capacity of
the slow node ? Improves the download time in the
system
File ID
File ID
File ID
- Flattens distribution time!
- Guarantees synchronization!
- Comparable average download time
42Other Work File Searching
- Best response max nodes reached
4
Bootstrap Server
1
6
3
5
2
selfishly
TTL of scoped flooding is 2
? Maximum Coverage Problem
43Implications to Overlay Routing
Selfish Neighbor Selection
Implications to File Sharing
Implications to Service Provisioning
44Server Selection
Hardware server
45Centralized Deployment
Generic Service Host
Software server
Demand change e.g. Flash crowd,
time-of-day effect
46Dynamic Service Deployment
Generic Service Host
Software server
Demand change e.g. Flash crowd,
time-of-day effect
47Distributed Service Migration (DSM)
- Solve k-median or UFL
- in an r-ball
- ..BUT nodes outside the r-ball are totally
neglected
- Iterate until
- convergence
-
48DSM Properties
- Convergence
- Migration only if the cost of facilitating
the demand decreases at least be a, converges in
O(log1a 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
49DSM Evaluation
- Similar results for UFL under different
- cost functions to open and maintain the server
50Dynamic vs. Static Deployment
DSM
DSM
51Conclusions
- 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!
52Conclusions
- 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
53Thank You! http//csr.bu.edu/snshttp//csr.bu
.edu/dfl