Super-peer Network. Motivation: Search in P2P Centralised (Napster) Flooding (Gnutella) Essentially...

Post on 03-Jan-2016

221 views 1 download

Tags:

transcript

Super-peer Network

Motivation: Search in P2P

Centralised (Napster)Flooding (Gnutella)

Essentially a breadth-first search using TTLs

Distributed Hash Tables

But….all peers are not equal

20% peers have a latency of at most 70ms and 20% have a latency of at least 280ms

Basic Idea

Real-World P2P systems for the open Internet are heterogeneousPeer resources (Bandwidth, CPU, Memory)Peer session-time

Use Peers with better “characteristics” to provide services to other peers in the system

Super-Peer Definition

A super-peer is a node in a peer-to-peer network that operates both as a server to a set of clients, and as an equal in a network of super-peers. [Yang/Molina '03]

Super-peers have high utility relative to non super-peers, where higher utility peers are “better” at providing superpeer service(s).

Super-Peer Networks

Exploit heterogeneity in P2P Networks by using higher utility peers to provide services

A super-peer network operates exactly like a pure P2P network, and each super-peer is connected to a set of clientsClients are connected to a single super-peer

only

Super-Peer Architecture

Super peer network

ClusterA super-peer and its clients

Cluster sizeNumber of nodes in the cluster, including the

super-peer itselfA pure p2p network is actually a

“degenerate” super-peer network where cluster size is 1Every node is a super-peer with no clients

Super peer network

Super-peer keeps an index over its clients’ dataJoints

Client sends metadata over its collection to its super-peer

Updates

Query processingClient -> super-peerSuper-peer -> neighbors (super-peer)

Super-Peer Design Issues

What services do super-peers provide? Ordinary peer to super-peer connections

Redundancy, Performance, Fairness

Super-Peer Connection Topology Super-peer promotion

Which/how many peers should be super-peers?

What Services do Super-Peer Systems provide?

File Naming/Retrieval Kazaa E-Donkey

Voice Over IP (VoIP) Skype

Anything you want!

Ordinary Peer to Super-Peer ConnectionsA super-peer become a single point of

failure for its cluster and a potential bottleneck

To provide reliability to the clusterK-redundant

Clients send queries in a round-robin fashion

Ordinary Peer to Super-Peer (SP) Connections

A k-redundant super-peer has much great availability than a single super-peer, howeverThe aggregate cost of a client joint action is k

times greater than beforeThe number of open connections amongst

super-peers increases by a factor of k2 !Super-peer redundancy has the surprising

effect of reducing load on each super-peer, in addition to providing greater reliability

Super-Peer Connection Topology

The type of intra-SP topology affects the type of distributed services they provide

Random NetworkFlooding, Random Walk

DHT (don't know of any systems that do this)

Gradient TopologyGradient search

Search in Random andGradient SP Topologies

Super-Peer Promotion

Options:1. Promote peers that meet local utility

requirements2. Promote the top 'X' percent of peers with

highest utility (requires global knowledge of peer utility distribution)

Super-Peer Promotion usingLocal Knowledge

Promotion algorithm makes a local decision about promotion using:Measurements of the peer’s local utility levels

for Bandwidth, CPU, MemoryA Model of Peer Utility Distributions

Super-Peer Election using Global Knowledge

Too expensive solutionsCentralized ServersClassic Election Algorithms

Gossiping / AggregationUsed by Gradient Topology

Conclusion

A combination of the centralized client-server model (efficiency) and distributed search (load balancing and robustness)