Title: Peer-to-Peer Algorithms and Prototypes in Jyv
1Peer-to-Peer Algorithms and Prototypes in
Jyväskylä
Presentation for Workshop on Peer-to-Peer
Networking10.10.2005
- Mikko Vapa, research studentmikvapa_at_jyu.fiDepart
ment of Mathematical Information Technology - University of Jyväskylä, Finland
- http//tisu.it.jyu.fi/cheesefactory
2Contents
- Peer-to-Peer Algorithms
- Formalization of Peer-to-Peer Resource Discovery
Problem - Approximation of Optimum for P2P Resource
Discovery Algorithms using k-Steiner Minimum
Trees - NeuroSearch P2P Resource Discovery Using
Evolutionary Neural Networks - Peer-to-Peer Prototypes
- Chedar Peer-to-Peer Middleware
- Mobile Chedar
- Peer-to-Peer Studio
- Peer-to-Peer Distributed Computing
- Mobile Peer-to-Peer Encounter Networks
- Gasoline Price Comparison System and BlueCheese
- Development History and Future
3Peer-to-Peer Algorithms
4Formalization of P2PResource DiscoveryProblem
- Currently, only textual definitions of P2P
resource discovery problem exist given a
resource name, find the node or nodes that manage
the resource - Textual definitions are poor, because they do not
precisely tell - What kind of a graph is used for finding
resources - What information is locally available to nodes
taking part in the finding process - Therefore, the task of forwarding a resource
query is unclear
5Formalization of P2P Resource Discovery Problem
- Formalization can be used for
- Formalization of peer-to-peer resource discovery
algorithms - Breadth-First Search
- Highest Degree Search
- Evaluating the performance of peer-to-peer
resource discovery algorithms - Pointing out the information available in the P2P
resource discovery problem, but which is not yet
utilized by any local resource discovery
algorithm - Reply path forwarding
- Aggregating information from parallel query paths
- Branching factor
- Branching resources to discover
6Approximation of Optimum for P2P Resource
Discovery Algorithms using k-Steiner Minimum
Trees
- If global information about P2P network is
available, the optimum for P2P resource discovery
algorithms can be approximated by solving
k-Steiner Minimum Tree problem (finding the exact
optimum would be a NP-complete problem)
7Approximation of Optimum for P2P Resource
Discovery Algorithms usingk-Steiner Minimum Trees
- MST k-Steiner Minimum Tree Algorithm was
developed for finding an approximation solution
Time Complexity
Worst-CaseApproximation Ratio
8Query Path of MST k-Steiner
9Efficiency
- MST k-Steiner Minimum Tree algorithm (Steiner)
shows that current local search algorithms for
peer-to-peer networks are far from optimal
10Future Work of MST k-Steiner
- The future work of finding optimum consists of
- Getting the results publishedVapa M., Auvinen
A., Tawast T., Ivanchenko Y., Vuori J.,
K-Steiner Minimum Tree Is An Upper Bound for
Peer-to-Peer Resource Discovery Algorithms,
submitted to IEEE INFOCOM 2006 - Now we have all the tools available for
discovering the theoretical limit of peer-to-peer
technology in terms of total traffic induced on a
telecommunication network in a real-world
peer-to-peer network compared to client-server
approach - Development of distributed k-Steiner minimum tree
resource discovery algorithm using principles of
proactive routing protocols such as Open Shortest
Path First
11NeuroSearch P2P Resource Discovery Using Neural
Networks
- NeuroSearch resource discovery algorithm uses
neural networks and evolution to adapt its
behavior to given environment - Multiple layers enable the algorithm to express
non-linear behavior - With enough neurons the algorithm can universally
approximate any decision function
12Performance
- HDS is currently the best known local search
algorithm for power-law distributed scenario
13The Swift from Depth-First Search to
Breadth-First Search
- NeuroSearch is close to HDS in performance, but
different in nature
14Typical Query Pattern of NeuroSearch
15Future Work of NeuroSearch
- After two months of extensive simulations with 70
workstations, we have discovered from 23
different inputs 7 critical ones (Bias, White,
PacketsNow, Sent, EnoughReplies,
FromNeighborAmount and RepliesToGet), which need
to be present to have good performance - Next, we are going to boost these 6 inputs by
generalizing them to give more accurate
information for forwarding - Also, we need to discover
- What are the scalability factors of NeuroSearch
in large graphs - The performance in dynamic real-world scenarios
where peers are joining and leaving the network
16Peer-to-Peer Prototypes
17Chedar Peer-to-Peer Middleware
- Chedar (CHEap Distributed Architecture) is a P2P
middleware for searching resources from a
distributed network - Resources can be i.e. computing power or files
- Distributed system without any central points
- Contains different resource discovery and
topology management algorithms - Implemented with Java 2 Standard Edition
P2P Applications
TCP
Chedar
Chedar
Chedar
TCP
TCP
TCP
Chedar
TCP
IP
Chedar
Network
Chedar
TCP
18Mobile Chedar
- Mobile Chedar is anextension of Chedarto mobile
devices - Bluetooth Java 2 MicroEdition implementationread
y for SymbianSeries 60 - WLAN Bluetooth Python implementationfor Nokia
770 Linux Internet Tablet planned for autumn 2005
19Peer-to-Peer Studio
- P2PStudio is used for measuring the performance,
visualizing network topology and controlling of
Chedar peer-to-peer network in an automated and
centralized manner - Implemented with Java 2 Standard Edition
Chedar node
Peer-to-Peer Studio
Chedar node
Server
User Interface
Chedar node
Chedar node
20Peer-to-Peer Distributed Computing
- Peer-to-Peer Distributed Computing (P2PDisCo)
distributes computations to idling workstations - Implemented on top of Chedar and deployed in
Agora building - The node that offers computation time has to
implement Distributed interface to be able to
receive start, stop and is application running
signals - Reading of parameters and writing of results are
done for the stream offered by P2PDisCo - Any Java program reading input from files and
writing output to files can be distributed
21Mobile P2PEncounter Networks
- Information distributes over mobile device
encounters (Mobile P2P is a future distribution
model) - no centralized server, free communication
bandwidth, no infrastructure - Applications
- information distribution
- e.g. cheapest bulk product search (gasoline)
- gasoline payment with mobile device
- mobile devices communicate with each other (e.g.
Bluetooth) - everybody tells what he/she has paid for the
gasoline and gets in exchange prices of other
gas stations - based on this information, mobile device can
recommend the cheapest place to fill the tank - boosts the market based economy by giving equal
information over the market situation to all
participants - grocery store price service, dating service, joke
service, event service, newspaper service
22Gasoline Price Comparison System
- Test application for verifying the feasibility of
mobile peer-to-peer encounter networks using
Bluetooth - Uses BlueCheese mobile peer-to-peer middleware
implemented by the MoPeDi student software
project during autumn 2003 - Implemented with C for Symbian Series 60 mobile
devices
GPCS User Interface
23BlueCheese Protocol Stack
24DevelopmentHistory and Future
Software
Publications
2002 ----------- 2003 ----------- 2004 -
---------- 2005
Chedar
Data Fusion
P2PStudio
Topology Management
- Research work proceedsas breakthroughs
- P2PRealm network simulator speededup the project
100x - P2PDisCo is speeding up the project another 100x
when fully deployed - In 2006, the publications side will strengthen
significantly currently 9 manuscripts are under
peer review
NeuroSearch
P2PRealm (100x)
Distributed Data Fusion
BlueCheese
NS-2 Simulator
MST k-Steiner
P2PDisCo (100x)
MP2P Co-ope-rative Learning
NeuroSearch
Mobile Chedar
NeuroTopology
Mobile Chedar
Gasoline PriceComparison System
P2PDisCo
Formalization of P2PResource Discovery