Fixed random network Ozalp Babaoglu Average over 500 broadcasts x - - PowerPoint PPT Presentation

fixed random network
SMART_READER_LITE
LIVE PREVIEW

Fixed random network Ozalp Babaoglu Average over 500 broadcasts x - - PowerPoint PPT Presentation

Outline Ozalp Babaoglu P2P networks are usually open systems Inducing Cooperation in Possibility to free-ride Peer-to-Peer Systems High levels of free-riding can seriously degrade global performance We present a simple algorithm


slide-1
SLIDE 1

Inducing Cooperation in Peer-to-Peer Systems

Ozalp Babaoglu Dipartimento di Scienze dell’Informazione Università di Bologna Italy

University of Bologna

Ozalp Babaoglu

Outline

  • P2P networks are usually open systems
  • Possibility to free-ride
  • High levels of free-riding can seriously degrade global

performance

  • We present a simple algorithm (SLAC) that sustains

high levels of cooperation despite selfish nodes

  • We show that certain types of cheating and lying

behavior do not necessarily destroy cooperation (on the contrary, may even improve it!)

2

University of Bologna

Ozalp Babaoglu

The SLAC Algorithm

Node p periodically executes the following:

q = SelectPeer()

if utilityq > utilityp drop all current links link to node q and copy its strategy and links mutate (with low probability) strategy and links fi

Peer selection based on a random overlay network (newscast), whereas copying, rewiring and mutating are with respect to an application (strategy) over an “interaction network”

3

University of Bologna

Ozalp Babaoglu

SLAC Algorithm: “Copy and Rewire”

4

B C A D E F H J K G

C

  • m

p a r e u t i l i t i e s

“Rewire” A “Copy” strategy

slide-2
SLIDE 2

University of Bologna

Ozalp Babaoglu

A “Mutate” strategy

SLAC Algorithm: “Mutate”

5

B C D E F H J K G Drop current links Link to random node

University of Bologna

Ozalp Babaoglu

Prisoner’s Dilemma

  • We test SLAC with Prisoner’s Dilemma (PD)
  • Captures the conflict between “individual rationality” and

“common good”

  • Defection (D) leads to higher individual utility
  • Cooperation (C) leads to higher global utility
  • T > R > P > S and 2R > T+S

6

C D C R,R S,T D T,S P,P

University of Bologna

Ozalp Babaoglu

Prisoner’s Dilemma

  • Prisoner’s Dilemma in SLAC
  • Nodes play PD with neighbors chosen randomly in the

interaction network

  • Only pure strategies (always C or always D)
  • Strategy mutation: flip current strategy
  • Utility: average payoff achieved

7

University of Bologna

Ozalp Babaoglu

Why Does SLAC Work?

  • SLAC produces very high levels of cooperation
  • Nodes “move” throughout the network to find better

neighborhoods

  • This results in an evolution of the (interaction) network
  • Group-like selection between clusters
  • Clusters of cooperating nodes grow and persist
  • Defecting nodes tend to become isolated

8

slide-3
SLIDE 3

University of Bologna

Ozalp Babaoglu

Example

  • 500 nodes
  • Initial state:
  • All defectors
  • Random interaction network

9

University of Bologna

Ozalp Babaoglu

Cycle 180: Small Defective Clusters

10

University of Bologna

Ozalp Babaoglu

Cycle 220: Cooperation Emerges

11

University of Bologna

Ozalp Babaoglu

Cycle 230: Cooperating Cluster Starts to Break Apart

12

slide-4
SLIDE 4

University of Bologna

Ozalp Babaoglu

Cycle 300: Defective Nodes Isolated, Small Cooperative Clusters Formed

13

University of Bologna

Ozalp Babaoglu

Cooperation Trend

14

% of cooperating nodes

University of Bologna

Ozalp Babaoglu

P2P File Sharing Application

  • Simplified version of a model by Q. Sun & H. Garcia-

Molina 2004

  • Nodes control how much capacity devoted to

generating or answering queries based on = [0...1]

  • =1.0 selfish (only generates queries)
  • =0.0 altruist (only answers queries)
  • We take as node utility the number of hits
  • Mutation of strategy: change randomly
  • Flood fill query forwarding, TTL’s, etc.

15

University of Bologna

Ozalp Babaoglu

P2P File Sharing Application

10,000-node network

Selfishness decreases Average performance increases

16

slide-5
SLIDE 5

University of Bologna

Ozalp Babaoglu

Broadcast Application

  • Given a network of nodes, broadcasting involves

communicating a piece of information from a single node to all other nodes

  • To do this efficiently involves:
  • Minimizing the number of messages sent (MC)
  • Maximizing the percentage of nodes that receive the

message (NR)

  • Minimizing the elapsed time (TR)

17

University of Bologna

Ozalp Babaoglu

Broadcast Application

  • Given a network with N nodes and L links
  • A spanning tree has MC = N
  • A flood-fill algorithm has MC = L
  • For fixed networks containing reliable nodes, it is

possible to use an initial flood-fill to build a spanning tree from any node

  • Practical if broadcasting initiated by a few nodes only
  • In P2P applications this is not practical due to network

dynamicity and the fact that all nodes may need to broadcast

18

University of Bologna

Ozalp Babaoglu

Peer to Peer Networks

  • Peer to Peer (P2P) networks are generally:
  • Highly dynamic
  • Completely decentralised
  • Open
  • Untrusted
  • Hence many P2P networks generally settle for the

basic flood-fill approach or some variant of it

  • Superpeers topologies can improve the situation but

introduce network structuring overhead and require superpeers to act altruistically

19

University of Bologna

Ozalp Babaoglu

Overview of Results

  • Nodes have no incentive to forward a message once

they have received it

  • Doing so assumes altruistic behavior
  • Simulation results of broadcasting in unstructured and

dynamic networks where nodes behave selfishly

  • Even without altruistic behavior, broadcasting can be

sustained with L > MC > N

  • Hence, better than flood-fill, worse than spanning tree
  • However, on average NR = 85%
  • Hence without altruism, NR is far from optimal (many

nodes missing messages)

20

slide-6
SLIDE 6

University of Bologna

Ozalp Babaoglu

The Broadcast Scenario

  • Nodes selected randomly to initiate broadcast (one every 10 cycles)
  • Node initiates a broadcast by sending a message to each neighbor
  • When receiving a message for the first time, node applies one of

two behaviors (strategies):

  • Forward the message to all neighbors (pass)
  • Do nothing (drop)
  • Utilities are updated as follows:
  • Nodes that receive the message gain a benefit
  • Nodes that pass the message incur a cost
  • Assume > > 0, indicating nodes have an incentive to receive

messages but also an incentive to not forward them

  • We used = 1, = 0.2

21

University of Bologna

Ozalp Babaoglu

Results

  • Initial network topology random
  • Each node initially set to pass behavior
  • Utilities initialized to zero
  • Considered two families of networks
  • static with no churn (as a baseline)
  • dynamic with high churn (1% of nodes leave and re-

enter each cycle)

  • New nodes link to randomly selected nodes from the

population and are randomly assigned a behavior {pass, drop}

22

University of Bologna

Ozalp Babaoglu

1000-node static random network

23

University of Bologna

Ozalp Babaoglu

1000-node high churn network

24

slide-7
SLIDE 7

University of Bologna

Ozalp Babaoglu

Fixed random network

Average over 500 broadcasts x 10 runs

25