Differentiated Admission for Peer-to-Peer Systems - PowerPoint PPT Presentation

1 / 37
About This Presentation
Title:

Differentiated Admission for Peer-to-Peer Systems

Description:

... PeerTrust, EigenTrust, PeerRank PeerRank - Reputation Ranking Admission System: An Overview When node X receives a request from node Y for content, ... – PowerPoint PPT presentation

Number of Views:174
Avg rating:3.0/5.0
Slides: 38
Provided by: CHWu
Category:

less

Transcript and Presenter's Notes

Title: Differentiated Admission for Peer-to-Peer Systems


1
Differentiated Admission forPeer-to-Peer Systems
??? ???? ?????? ???? (????? ??????? ??????)
wuch_at_nuk.edu.tw November 17, 2004
Joint Work with Prof. HT Kung, Harvard
University, USA
2
Outline
  • I. Introduction to P2P
  • II. Motivation and Main Ideas
  • Freeloader Problem and Differentiated Admission
  • III. System Design
  • Reputation-based, differentiated admission
    control
  • Eigenvector-based reputation system
  • Adaptation system of willingness-to-serve
  • Sampling technique
  • Distributed trust-enhancement scheme
  • IV. Summary and Concluding Remarks

3
Peer-to-peer (P2P) Model
  • Peer-to-Peer (P2P) is a way of structuring
    distributed applications such that the individual
    nodes have symmetric roles. Rather than being
    divided into clients and servers each with quite
    distinct roles, in P2P applications a node may
    act as both a client and a server.
  • Excerpt from the Charter of Peer-to-Peer Research
    Group, IETF/IRTF, June 24, 2003
  • http//www.irtf.org/charters/p2prg.html

Heterogeneous and Autonomous
I. Introduction to P2P
4
Client-server Model
Clients and servers each with distinct roles
U11
U12
S
U13
U21
  • The server and the network become the bottlenecks
    and points of failure
  • DDoS
  • Flash Crowd

U22
U32
U31
I. Introduction to P2P
5
Content Distribution Networks
U11
U12
S
CR1
U13
CRa
CRb
Overlay Network
U21
CR2
U22
Hosting Hierarchical Proxies DNS Request
Routing (Akamai, CacheFlow, etc.)
CR3
Content Router or Peer Node
CR
U32
U31
Name www2.microsoft.akadns.net
(www.microsoft.com.nsatc.net) Addresses
207.46.249.221, 207.46.134.221, 207.46.249.189,
207.46.134.189, Aliases www.microsoft.com,
www.microsoft.akadns.net Name
www.yahoo.akadns.net Addresses 66.218.71.93,
66.218.70.50, 66.218.71.91, 66.218.71.86,
66.218.71.89, Aliases www.yahoo.com Name
www.google.akadns.net Addresses 66.102.11.104,
66.102.11.99 Aliases www.google.com
I. Introduction to P2P
6
Content Distribution Networks (Cont.)
Serverless ICP (Fabless IC Design House)
ICPs
ICPs
ParadigmShift
Content NetworkProviders (CNPs)
Content Foundry (Semiconductor Foundry)
ISPs
ISPs
I.C. Internet Contents
ICPs need contents, servers, equipments, IT
experts, etc.
Now, ICPs need only contents and trusted CNPs.
I. Introduction to P2P
7
Napster
U11
U12
DS
U13
U21
U22
sharing MP3 files
U32
U31
Any two P2P nodes can exchange contents
directly Running P2P software is much easier
than maintaining servers Reduce the load of
server, even without servers
I. Introduction to P2P
8
Paradigm Shift of Computing System Models
1980 Terminal-Mainframe (Super-computing)
1990 Client-Server (Micro-computing /Personal
Computer)
2000 Peer-to-Peer (Macro-computing)
ADSL/100M Ethernet
RS-232
Dialup/10M Ethernet
Linux/Windows 2K
Windows 31/95
VT100/DOS
I. Introduction to P2P
9
P2P Applications
  • P2P File Swapping (Sharing)
  • Napster, FreeNet, Gnutella, KaZaA, eDonkey,
    EZPeer, Kuro
  • P2P Communication
  • NetNews (NNTP), Instant Messaging (IM), Skype
  • P2P Lookup Services and Their Applications
  • (Distributed Hash Tables and Global
    Repositories)
  • IRIS, Chord/CFS, Tapestry/OceanStore,
    Pastry/PAST, CAN
  • P2P Overlay Networking
  • (Inter-domain Routing BGP), RON, PDF, Detour,
    LRR
  • P2P Multimedia Streaming (Application-layer
    Multicast)
  • CoopNet, Zigzag, Narada, P2Cast, Streamlla
  • Proxies and Content Distribution Networks
  • Squid, Akamai, DigitIsland, Amplicast
  • Overlay Testbed
  • PlanetLab, NetBed/EmuLab
  • Other Areas
  • P2P Gaming, Grid Computing

I. Introduction to P2P
10
Most Popular Titles in Windows
Titles Weeks Downloads This Week Total Downloads
1 Kazaa Media Desktop 91 2,376,379 320,322,627
2 ICQ Lite 68 614,061 39,306,370
3 Ad-aware 62 550,018 27,483,935
4 iMesh 196 462,495 65,806,618
5 WinZip 380 428,195 110,442,423
6 ICQ Pro 2003b 331 337,363 241,257,436
7 Spybot - Search Destroy 48 325,234 10,777,550
8 AOL Instant Messenger (AIM) 68 288,657 29,551,928
9 Morpheus 143 209,759 119,261,633
10 LimeWire 27 161,299 18,307,602
  • From CNets download.com, Week Ending Jan 25,
    2004
  • Kazaa is the Top 1 title in the history, more
    than 2M downloads a week.
  • Top downloads in SourceForge eMule, BitTorrent
  • Taiwan Kuro, EzPeer, eDonkey,

I. Introduction to P2P - Status
11
Example of P2P File Swapping KaZaA
As of July 2003
Users Online 3,824,411
Total Number of MP3 Files 294,468,383
Total Size of Movies Files 894,435
Total Number of Files Shared 2,936,033,461
Total Size of Shared Files 8,283,375GB
  • 77 of surveyed companies had at least one
    installation of file-swapping software
    (AssetMetrix, July 16, 2003)
  • Today more KaZaA traffic than Web traffic!

I. Introduction to P2P - Status
12
Skype P2P VoIP
  • Background
  • Created by Niklas Zennstrom and Janus Friis,
    founders of KaZaA
  • Beta launched August 29, 2003
  • As of 16 Nov 2004 34,642,017 downloads and
  • 2,551,163,700 Minutes served (1,771,641 days
    4853 years)
  • Uses 3-16 KB/s while calling and 0-0.5 KB/s while
    idle
  • Features
  • High-quality Internet conference calls
  • Firewall and NAT traversal
  • Global decentralized user directory
  • Intelligent routing for encrypted calls through
    effective path
  • Encrypting all calls and instant messages
    end-to-end

13
Example of Centralized P2P SystemsNapster
  • Announced in January 1999 by Shawn Fanning for
    sharing MP3 files and pulled plug in July 2001
  • Centralized server for search, direct file
    transfer among peer nodes
  • Proprietary client-server protocol and
    client-client protocol
  • Relying on the user to choose a best source
  • Disruptive, proof of concepts
  • IPR and firewall issues

I. Introduction to P2P Basic Models
14
Example of Decentralized P2P Systems Gnutella
  • Open source
  • 3/14/2000 Released by NullSoft/AOL, almost
    immediately withdrawn, and became open source
  • Message flooding serverless, decentralized
    search by message broadcast, direct file transfer
    using HTTP
  • Limited-scope query

2
2
2
2
1
1
3
Client
2
C
S
1
1
Server
3
Servent (Serv er Cli ent)
I. Introduction to P2P Basic Models
15
Example of Unstructured P2P Systems Freenet
  • Ian Clarke, Scotland, 2000
  • Distributed depth-first search, Exhaustive search
  • File hash key, lexicographically closest match
  • Store-and-forward file transfer
  • Anonymity
  • Open source

5
6
C
S
3
2
1
4
I. Introduction to P2P Basic Models
16
Example of Hybrid P2P Systems FastTrack / KaZaA
  • Proprietary software developed by FastTrack in
    Amsterdam and licensed to many companies
  • Summer 2001, Sharman networks, founded in
    Vanuatu, acquires FastTrack
  • Hierarchical supernodes (Ultra-peers)
  • Dedicated authentication server and supernode
    list server
  • From users perspective, its like Google.
  • Encrypted files and control data transported
    using HTTP
  • Parallel download
  • Automatically switch to new server

I. Introduction to P2P Basic Models
17
Example of Structured P2P SystemsChord
  • Frans Kaashoek, et. al., MIT, 2001
  • IRIS Infrastructure for Resilient Internet
    Systems, 2003
  • Distributed Hashing Table
  • Scalable lookup service
  • Hyper-cubic structure

I. Introduction to P2P Basic Models
18
Challenges to P2P Systems
  • In an ideal P2P system
  • Each node contributes as he can and consumes as
    he need
  • It cooperates to perform much more stably,
    securely and efficiently than any single one
    computer
  • In a real open P2P system
  • There are many nodes that consume many more
    resources than they contribute
  • Some nodes or groups of nodes who may attack or
    cheat the other normal nodes of the system
  • These may probably make the system malfunctioned,
    unfair or inefficient

II. Freeloader Problem
19
Fair Contributions of Resourcesby Participating
Nodes
  • 8-node transaction example
  • P5 is likely a freeloader because he consumes
    much more resources than he contributes
  • P6 is very nice

Fairness is a well-known concern in P2P
communities
II. Freeloader Problem
20
Peer Selection Issues
In an open P2P, it happens often that
Server Selection a requesting peer (client) needs
to decide which servers it should request service
from
Client Selection a supplying peer (server) needs
to decide which clients it should grant requests
first
I want PQ
I have X
A
A
B
B
I want Z
I have X
I want Y
I have X
D
D
C
C
so many requests
S
I want X
I want X
21
Related Works
  • Access Control List
  • White list and black list
  • Payment-based Approaches
  • Mojo Notion
  • Reputation-based Approaches
  • Free Haven, Reputella, NodeRank, PeerTrust,
    EigenTrust, PeerRank

II. Freeloader Problem
22
PeerRank - Reputation Ranking
For illustration, we assume that a node will
receive 2 credits for providing content and 1
credit for transporting content. Assume there are
9 transactions
Service Reputation Usage Reputation
P1 7 4
P2 5 4
P3 4 3
P4 2 2
P5 8 1
P6 1 4
P7 3 4
P8 5 4
Computed reputation rankings
II. Freeloader Problem Main Ideas
23
Admission System An Overview
An Approach to Solving the Freeloaders Problem
  • When node X receives a request from node Y for
    content, X triggers a series of steps
  • X grants the request with a probability based on
    Xs current willingness-to-serve parameter r
  • If granted, X determines whether Y should be
    admitted or denied by figuring out Ys
    service and usage reputation ranking from a set
    of sampling nodes
  • If admitted, X sends Y the requested content and
    uses a third-party node to record Xs credits for
    trust-enhancement purposes

II. Freeloader Problem Main Ideas
24
Admission System Main Ideas
  1. A reputation-based, differentiated admission
    control that allows a node to receive a level of
    service based on its service and usage
    reputations in the past
  2. An eigenvector-based method that derives service
    and usage reputations of nodes by computing the
    largest eigenvalue / eigenvector pairs of the
    credit matrix associated with past transactions
  3. An adaptation system that allows a node to take
    care of its own interest by contributing
    resources at a level just sufficient for its
    desired level of service
  4. A sampling technique that uses top service and
    usage nodes, as well as benchmark nodes, to
    reduce the cost of computing service and usage
    reputations of nodes
  5. A distributed trust-enhancement scheme that uses
    third-party nodes to manage and store credits
    required by reputation computations

II. Freeloader Problem Main Ideas
25
Eigen-systems
Axlx x eigen-vector l eigen-value
II. Freeloader Problem Main Ideas
26
Computing Reputations with Eigenvectors
Idea 1 Eigenvector-based reputation system
  • Notations
  • S service credit matrix vector s service
    reputations
  • U ST usage credit matrix vector u usage
    reputations
  • An iterative method of computing s and u
  • Node Xs service reputation
  • s(i1) Su(i) and
  • u(i) Us(i) That is,
  • s(i1) SUs(i) or s(i1) SSTs(i)
  • Note that we can view the latter iteration as the
    power method of computing the largest
    eigenvalue/eigenvector pair of SST
  • This implies that s is the eigenvector of SST
    corresponding to the largest eigenvalue of SST.
    Similarly, u is the eigenvector of STS
    corresponding to the largest eigenvalue of STS
  • The matrix formulism here parallels to that used
    in ranking web pages (ref Kleinberg HITS
    algorithm)

III. System Design
27
Reputation-based Admission
Idea 2 Differentiated admission control
  • Transactions ? Credit Matrices ? Reputations ?
    Rankings
  • After an allowed transaction is complete, the
    participating nodes will update their credits to
    reflect their roles in the transaction. Thus, the
    service and usage credit matrices will change
    accordingly. These changes will in turn affect
    future reputation rankings of the nodes
  • The reputation ranking of nodes is comparative
  • We use s or u to denote both reputation and
    ranking depending on the context
  • Increasing the ranking of a node implies
    decreasing the rankings of some other nodes
  • A request from node Y will be denied by node X if
  • Ys usage reputation u is above A
  • while its service reputation s is below B
  • A and B are certain preconfigured thresholds with
    AgtB(For example, A and B can be 80 and 20,
    respectively)
  • While being denied of receiving content, Y can
    still continue providing content and transport
    services, thereby improving its service
    reputation
  • A freeloader which has a low service reputation
    (s lt B) and a high usage reputation (u gt A)
    will be denied of service
  • The freeloader will need to either provide an
    increased level of service (to increase s) or
    reduce its content usage (to decrease u) in order
    to be readmitted again

28
Nodes Adaptation in Willingness to Serve
Idea 3 Adaptation system
  • Goal search for a minimum level of contribution
    a node needs to provide in order to receive a
    desired level of service from other nodes
  • willingness-to-serve r a parameter determining
    the probability at which the node will grant
    arriving service requests
  • desired service level C a desired level of
    service. C is constrained by the system-wide
    parameters A and B 1 - B(1-A)
  • observed success rate s the percentage of its
    content or transport requests that are granted by
    requested nodes

Intuitively, when a node finds that its success
rate ? is above a desired service level C, it
will decrease its willingness-to-serve parameter
r. On the other hand, when the node finds that
its ? is below C, it will increase its r
29
Nodes Finite State Machine for the Adaptation of
Willingness to Serve
A node increases its willingness-to-serve
parameter r ? This will improve its service
reputation ranking s and cause some of the other
nodes to drop their service reputation rankings
or raise their usage reputation rankings ? Some
of these nodes may then enter the Deny state ?
These nodes will then increase their r thereby
allowing the current node to improve its success
rate ?
  • poor man's equilibrium problem if the two
    admit states were combined, many nodes could be
    in this combined Admit state with small s and
    very low r. These nodes would never be able to
    increase their r since they cannot enter the
    Deny state due to their u being below A

30
Newcomer Issue
  • For a new node, its initial state is configured
    to be Admit More and its initial r is 0.
    That means it can receive services without
    providing services initially.
  • If a new node makes many service requests such
    that its u is above A and its s is below B, it
    will enter the Deny state
  • As long as its success rate s does not reach its
    desired level of service C, it will stay at the
    Admit More state and increase its r to raise
    s
  • When its s reaches C, it will enter the Admit
    Not More state and try to reduce its r

31
System Bootstrap
  • Initially there have not been any transactions.
    Thus
  • the service or usage credit matrix is initially a
    zero matrix
  • the success rate s of every node is zero
  • Before the success rate s of a node reaches C,it
    will increase its r to raise s
  • That means each node will try to obtain its
    desired level of service by providing more
    services

32
Convergence of Nodes AdaptationA Simulation
Result
  • A .8, B .2, C .4 or .8, and transactions
    per round 10,000
  • When in the Admit Not More state, a node
    decreases r using r ? .95 r, else it increases
    r using r ? max (r .05, 1).Except when r 1,
    the decreasing rate is smaller than the
    increasing rate
  • The simulation results above show that
  • s generally tracks changes in C as the node will
    adapt its r value
  • A new node will be able to adapt its r to achieve
    its desired level of service C within about 16
    rounds

33
Sampling Heuristic Use of Benchmark Nodes
Idea 4 Sampling technique
  • To determine the current state of a node X, we
    will only compare X to two benchmark nodes
  • Node PA has its usage-reputation ranking
    percentile at A and
  • Node PB has its service-reputation ranking
    percentile at B
  • Need not know the exact rankings of a node.

34
A Top-nodes Sampling Heuristic
  • In computing reputation, we will only use a
    sampling set, consisting of top service and usage
    nodes, node X, and two benchmark nodes PA and PB

Receive a request from node X
Form a sampling set Construct the service
creditmatrix of the sampling set Compute
reputation Compare X to PA and PB
Background processes consider all nodes to select
top service and usage nodes and benchmark
nodesPA and PB
35
Effectiveness of the Sampling Heuristic A
Simulation Result
Load mixtures of multiple Laplace distributions
for requesting and requested nodes
  • When transactions exhibit the hub phenomenon,
    it generally suffices to use a small number of
    top nodes, such as 10, in the sampling set

36
Distributed Trust-enhancement Using a Third-party
Node
Idea 5 Distributed trust-enhancement scheme
  • For a transaction of sending content from Pi to
    Pj
  • The associated service and usage credits are
    stored at a third-party node Ph, where h hash
    (i, j)
  • We can use a distributed hash table mechanism
    (DHT) such as Chord to maintain the credit matrix
  • Generally we can assume that Pi and Pj have no
    management authority on data stored at
    third-party nodes

37
Summary and Concluding Remarks
  • A distributed admission system with following
    features
  • reputation-based admission control
  • Consider the service and usage reputation
    rankings of a requesting node as well as the
    willingness of the requested node
  • service and usage reputations computed with
    eigenvectors
  • Consider the authorities of individual nodes
  • the 3-state model and nodes adaptation on r
  • Search for a minimum level of contribution a node
    needs to provide
  • use of sampling with top nodes and benchmark
    nodes
  • Reduce the information needed to determine
    current state of a node
  • trust-enhancement with third-party nodes
  • Provide protection against possible cheating of
    the system
  • Further research into control strategies on r and
    various application-specific scenarios would be
    useful

IV. Conclusion
Write a Comment
User Comments (0)
About PowerShow.com