Upload
neo
View
29
Download
0
Embed Size (px)
DESCRIPTION
H. deMeer and K. Tutschku. An Application-level Active Networks Based Architecture for the Performance Management of Peer-to-Peer Services. OPENSIG 2001 Workshop: „Next Generation Network Programming“ London, 24./25. September 2001. Overview. What is Peer-to-Peer Networking? - PowerPoint PPT Presentation
Citation preview
University of WürzburgDistributed SystemsProf. Dr. P. Tran-Gia
An Application-level Active Networks Based Architecture for the Performance
Management of Peer-to-Peer Services
H. deMeer and K. Tutschku
OPENSIG 2001 Workshop: „Next Generation Network Programming“
London, 24./25. September 2001
Performance Management Architecture for P2P Services H. DeMeer / K.
Tutschku
University of Würzburg
Distributed Systems
Overview
What is Peer-to-Peer Networking?
Selected P2P Architectures
Resource and Performance Management of P2P Services Goals and Approaches
ALAN-based Architecture for P2P Performance Management ALAN superpeers superpeer implementation
Conclusion
Performance Management Architecture for P2P Services H. DeMeer / K.
Tutschku
University of Würzburg
Distributed Systems
Peer-to-Peer: Introduction
Tremendous industrial hype and strong research attention: Napster: 40 million user deployments in two years O’Reilly P2P conference, March 2001 / panel at InfoCom 2001 Typical applications:
– file sharing (Napster, Gnutella)
– group collaboration (Jxta [Sun], Groove)
– distributed storage (PAST/Farsite [Microsoft], Chord [MIT])
– distributed computation (SETI@home)
Performance Management Architecture for P2P Services H. DeMeer / K.
Tutschku
University of Würzburg
Distributed Systems
Peer-to-Peer: Features
Basic features: distributed architecture
– composed of voluntary and ad-hoc membership of peers
– symmetric roles (serving, downloading, routing) throughout system: servent = server + client
– weak connectivity: handles variable connectivity as the norm available at the edges of the Internet
Hope: instant services, no cost of administration, re-use of
resource quality and robustness scales with size of infrastructure
Many many challenges: trust, semantics, location, efficiency/performance,
operation, robustness
Performance Management Architecture for P2P Services H. DeMeer / K.
Tutschku
University of Würzburg
Distributed Systems
Selected P2P Applications - SETI@home
Purpose: uses idle CPU cycles on ordinary PCs for massively parallel analysis of
extraterrestrial radio signals
Architecture: central SETI@home server distributes data analyses done locally by SETI@home screen saver
Classification (according K. Kant): (scattered, organized, isolated, non_RT)
Similar architectures: Napster
Performance Management Architecture for P2P Services H. DeMeer / K.
Tutschku
University of Würzburg
Distributed Systems
Selected P2P Applications - Gnutella (1)
Purpose: distributed and anonymous file sharing
Servents operate completely without central control
Exploits unused storage on edge nodes
Characteristics: message broadcasting for node discovering and search requests; forming of overlay network; connecting: join the “several known hosts” user data transfer: store and forward using HTTP
Classification: (scattered, scattered, isolated, non_RT)
Performance Management Architecture for P2P Services H. DeMeer / K.
Tutschku
University of Würzburg
Distributed Systems
Selected P2P Applications - Gnutella (2)
flooding of PING/PONG messages; broadcasting range limited by TTL counter .
short time memory of messages already seen; prevents re-broadcasting; GUIDs to distinguish msg
G-NodeG-NodePingPing
PongPong
PingPing
Pin
gP
ing
Pin
gP
ing
Call-and-Response protocol mechanism: node discovery
G-NodeG-Node
Performance Management Architecture for P2P Services H. DeMeer / K.
Tutschku
University of Würzburg
Distributed Systems
Selected P2P Applications - Gnutella (3)
1) Node A asks Node B for data.
3) B forwards the request to its neighbors.4) These return any match- ing info.
5) B looks up source of request.
6) B returns matching info
G-NodeA
G-NodeA
G-NodeB
G-NodeB
G-NodeC
G-NodeC
G-NodeD
G-NodeD
Call-and-Response protocol mechanism: search query / download
2) B keeps a record that A initiated the request
Node A7) A may initiate download using HTTP
search: Query/Query-Response (flooding!) download: GET/PUSH. (direct transmission)
Performance Management Architecture for P2P Services H. DeMeer / K.
Tutschku
University of Würzburg
Distributed Systems
Selected P2P Applications - Gnutella (4)
Limitations/Difficulties: unstable/loose connectivity of the servents
performance management difficult
scalability: e.g. TTL=10, every node broadcasts to six others
msg; problem in huge networks
low TTL, low search horizon
denial-of-service attacks
Challenges: Robustness
– availability of resources; hard to predict the consequences of failures; administrative actions
Performance – bandwidth consumption; scalability; end-to-end quality-of-service;
overload / network planning
106
Performance Management Architecture for P2P Services H. DeMeer / K.
Tutschku
University of Würzburg
Distributed Systems
P2P Resource/Performance Management
Goals: maximizes a peer’s utility to the overall system
while minimizing its potential threat increase stability introduce administrative rules
Problems to tackle: resource discovery/allocation reduction of synchronization traffic aggregation and self-organization simple overuse (e.g. freeloaders) bandwidth/latency/packet loss
Performance Management Architecture for P2P Services H. DeMeer / K.
Tutschku
University of Würzburg
Distributed Systems
P2P Resource/Performance Management
Approaches: enhance P2P protocols:
– topology construction (JXTA) – sophisticated group multicasting (Lee et al., 2001)
accountability:– used in Free Haven project / Mojo Nation – restricting access: “micro payments”– selecting favored users: reputation system
superpeers:– Morpheus/KaZaA, Clip2’s Gnutella Reflector– Virtual Active Peer
• based on Application-Level Active Networks
Performance Management Architecture for P2P Services H. DeMeer / K.
Tutschku
University of Würzburg
Distributed Systems
“Virtual Active Peer” Architecture
Superpeer: layering provides control capability facilitates limited topology management
Application-level Routing optimizes for different metrics (e.g. privacy, policies, latency) provides smart multicast, caching and replication capabilities
C C
P2P No d e
La ye rs
EEPAc tive N e two rking
Ele m e nt
Performance Management Architecture for P2P Services H. DeMeer / K.
Tutschku
University of Würzburg
Distributed Systems
Application Level Active Networks (ALAN)
proposed by Fry and Ghosh [1999]
active elements on application level
system consists of proxylets and EEPs: proxylets:
– dynamic code modules specifying the protocol handling– single copy stored on central server; identified by reference (URL)
EEPs:– execution environment for proxylets; located at strategic points– proxylets ctrl: load, run, modify, stop– dynamic deployment– system proxylets: routing, discovery, and error handling
Performance Management Architecture for P2P Services H. DeMeer / K.
Tutschku
University of Würzburg
Distributed Systems
ALAN – Architecture
Execution Environment for Proxylets (EEP)
Monitor Interface
Protocol Server
Gnutella Active Peer Proxylet
Gnutella Ctrl Interface
Control Interface
Proxylet Server
Gnutella Mon.Interface
Peer
PeerSuper-peer
Proxylet
Performance Management Architecture for P2P Services H. DeMeer / K.
Tutschku
University of Würzburg
Distributed Systems
Superpeer Architecture
Application Optimization Layer: management of peer-to-peer relation on application level; using application level
performance metrics enforcement of connections with predictable performance
Virtual Control Cache: application-level aggregation capability facilitates differentiation
Network Optimization Layer: optimal mapping wrt. transport network capabilities enables dynamic traffic engineering
Gnutella Active Proxylet Application Optimization Layer
Virtual Ctrl Cache
Network Optimization Layer
Performance Management Architecture for P2P Services H. DeMeer / K.
Tutschku
University of Würzburg
Distributed Systems
Superpeer Architecture
Topology control: set-up of stable connec-
tions to other EEPs instantiation of new active
peers at other EEPs termination of Gnutella
connections distribution of announce-
ments (ping msg)
Gnutella Active Proxylet
Application Optimization Layer
Virtual Ctrl Cache
Network Optimization Layer
Topology Ctrl Policy CtrlPerformanceMonitoring
Policy control: user, network, or
servent based TTL / connectivity prioritization / localiza-
tion
Perf. Mon: query traffic ping/pong traffic robustness of
connectivity response time throughput
Performance Management Architecture for P2P Services H. DeMeer / K.
Tutschku
University of Würzburg
Distributed Systems
P2P JTella Dependencies
GNUTellaConnection host, port
Router ConnectionList, HostCache
IncomingConnectionManager Router, ConnectionList, ConnectionData
OutgoingConnectionManager Router, ConnectionList, ConnectionData
KeepAliveThread ConnectionData
HostCache HostFeed
SearchMonitorSession MessageReceiver
OriginateTable
BoundedQueue messageQueue RouteTable queryhit
RouteTable query
RouteTable pings
Vector searchReceivers Vector pushReceivers
MessageReceiver NodeConnection
RouteMessage
Message esp. Ping-, Pong-, Push-, Query- and QueryReplyMessage
ServerSocket
HostCache StarterPool
Gnutella Proxylet (Application Optimization Layer)
Active Peer Proxylet: based on JTella 0.6 API full Gnutella routing capability layered architecture on-going implementation
Performance Management Architecture for P2P Services H. DeMeer / K.
Tutschku
University of Würzburg
Distributed Systems
Self-Organization
active peers topology control permits local self-organization e.g. accepting only peers with similar
response time
forming of zones of similar performance
proxylet ctrl permits initiation of new active peers
superpeer architecture able adapt to to spatially varying performance condition
Performance Management Architecture for P2P Services H. DeMeer / K.
Tutschku
University of Würzburg
Distributed Systems
Approach to the Management of Wireless Ad-hoc Networks
Wireless ad-hoc networks: highly distributed architecture
– weak relationship between participating nodes
– highly varying link performance constantly changing set of moving/dis-
appearing nodes highly dependent on routing
forming of zones of similar performance based on radio link performance metrics
Performance Management Architecture for P2P Services H. DeMeer / K.
Tutschku
University of Würzburg
Distributed Systems
Conclusion & Outlook
P2P networking is a promising paradigm for services operating at the edges of the network
weak connectivity of P2P services challenges the resource and performance management
ALAN-based “Virtual Active Peer” approach combines the advantages of distributed and centralized ctrl architectures facilitates methods to increase service stability and service performance permits the forming of zones of equal performance
Outlook: performance management schemes require new models
– networks dynamics: what is best node to connect to? residual time of servents in the system?
– combined synchronization/user data traffic model?
Performance Management Architecture for P2P Services H. DeMeer / K.
Tutschku
University of Würzburg
Distributed Systems
End of talk
Thank you
Q & A