Building of P2P Overlay Networks via Voronoi and Gossip
Ranieri Baraglia
2
P2P Research Activity• Starts in 2004 with the EU project CoreGRID
NOE on Foundations, Software Infrastructure and Applications for large scale distributed, Grid and Peer-to-Peer Technologies (2004-2008)
• Continued in the project CNR RSTL Resource Discovery on Large Collaborative Networks (2008-2009)
• CurrentlyCarried on in collaboration with Laura Ricci, Dep. of Computer Science of Pisa UniversityPatrizio Dazzi, ISTI, CNRMatteo Mordacchini, IIT, CNRMichele Albano, Instituto de Telecomunicações, Campus Universitário Santiago Aveiro , Portugal
3
What we did?
– Voronoi-based overlay to support range query multi attributes
– Gossip–based overlay to support user communities detection
– Building of Gossip-based Delaunay overlay
4
Voronoi-based overlay to support range query multi-attributes
Motivation• Searching in large networks is a basic functionality offered by P2P
systems• Most P2P systems exploit Distributed Hash Tables
• load balancing guaranteed by hashing function• no support for complex queries (multi-attribute, range, k neighbor…)
• Several applications need complex queries• distributed directory service• geographic information system• ……….
• Alternatives to DHT are currently investigated• distributed tree data structures• locality preserving hashing functions• Voronoi-based overlay
5
Voronoi-based Overlays• Let O = {o1,..., on} be a set of n distinct objects (sites) in a k-dimensional space S.
• Voronoi tessellation partitions S into n regions (cells) V(oj), j= 1,..,n, paired with each oi O ,where V(oj) includes all the points q such that:
dist(q, oj) ≤ dist(q,oi) for i≠j
• Delaunay Triangulation connects two cells sharing a border (Voronoi neighbors)
• Voronoi Overlay = Delaunay links
• Geometrical properties of Delaunay triangulation exploited to define efficient routing strategies
Compass Routing
• Indexed objects instead of physical nodes
• Each dimension represents an object’s attribute
• Each object is publisched in the point that corresponds to the values of its attributes
6
Compass Routing
Compass Routing: A5 chooses A as next hop becauseRootA5A < Root A5 A1 and Root A5 A <Root A5 A4
Each node reverses compass routing to detect its sons in the AoI-cast tree: A5 is the A next hop in the AoI-tree
7
Hivory: Range Queries on Hierarchical Voronoi Overlay
Main features– Supports the execution of range query multi-
attribute– Scalable solution– Small execution cost to publish an object and to
execute a query– Structured to support fault tolerance
8
Hivory: Range Queries on Hierarchical Voronoi Overlay
Basic ideas of our solution:• Clustering of peers is
exploited to define a hierarchy of Voronoi diagrams
• Each level of the hierarchy• includes a set of
2-dimensional Voronoi diagrams• is associated with a
different pair of the objects’ attributes
9
Hivory: Superpeers ElectionWhen the size of a cluster exceeds a predefined threshold • Log(k) peer are elected
Superpeers, with k the cluster dimension • A new Voronoi diagram at a
lower level is built• All the objects belonging
to the cluster are mapped to that Voronoi diagram by exploiting a new pair of the objects' attributes
SuperPees={P3,P5,P9}
SuperPees={P10,P4,P11}
10
Hivory: the Join Operation|cluster|< threshold = 4 Pj requests to join O3
C={o1,o2}• The join request of Pj is propagated
by the greedy routing to one of thepeers (Pi) of the cluster C.
• The size of the new cluster is smaller than the threshold.
• Pi notifies the identity of the new peer Pj to the other peers of C.
C={o1,o2,o3}
11
Hivory: the Join Operation
|cluster|= threshold = 4
{O1,O2, O5}
Pj requests to join O8
{P1,P2}
{o8}
{o5}{o2}
{o1}• A new Voronoi diagram is created• Log(|cluster|) peers are
elected SupePeers
12
Hivory: the Join Operation|cluster|> threshold = 4
P8 requests to join o8
{P1,P2, P8 }
{o3}
{o4}{o2, o8}
{o1}
{P1,P2}
{o3}
{o4}{o2}
{o1}
13
Hivory: Range Query Resolution
•Greedy Routing to reach a oi within the AoI defined by a query Q•AoI-cast: propagation of the query in the AoI- construction of a tree spanning the AoI
through reverse compass routing
•If the next hop site for AoI-cast is paired with a cluster C, forward the query to Pc randomly chosen from the peers belonging to C– size(C) ≥ threshold• Pc switches the query at the lower level• the AoI defined by the lower level attributes
is exploited to restrict the query space– size(C) < threshold• Pc broadcast the query to an other peer
belonging to C
14
Hivory: Complexity Analysis • We considered
– A uniform distribution– A unbalanced distribution: one network x at level k with Nx ≈ N
M: levels within the hierarchy, N: overall number of clusters, Nj: # of clusters at level li of the hierarchy (i 1…M), si: combined selectivity of attributes at level Ni.
uniform unbalanced
join log2N1+...log2NM log2Nxlog2N
range query M* s1*....*sM*N sk * Nx
15
Voronoi-based overlay
• M. Albano, L. Ricci, M. Baldanzi, R. Baraglia, "VoRaQue: Range queries on Voronoi overlays”, IEEE Computers and Communications, 2008.
• M. Albano, R. Baraglia, M. Mordacchini, L. Ricci , Efficient Broadcast on Area of Interest in Voronoi Overlays, International Conference on Computational Science and Engineering, 2009.
• M. Mordacchini, L. Ricci, L. Ferrucci, M. Albano, R. Baraglia, "Hivory: Range Queries on Hierarchical Voronoi Overlays”, IEEE Tenth International Conference on Peer-to-Peer Computing (P2P), 2010.
16
Group: A gossip-based protocol for community detection
Motivations
• Identifying communities of users (nodes) with similar interests in distributed environments is a key point to obtain an efficient and efficacy information diffusion.
• This problem is even more important in highly dynamic systems such as peer-to-peer.
• Many solutions in the literature are limited to built "private" communities restricted to a list of neighbors of each peer.
17
Group: A gossip-based protocol for community detection
•Main features– Each user has associated a profile defining his/her interests
– The profile may be constructed by considering purchase items, visited pages, resources accessed, ….
– Exploits a gossip protocol to define clusters of peers characterized by similar interests according to a proper similarity metrics.
– Solution completely distributed
18
Group: A gossip-based protocol for community detection
• A two-layered gossip framework.
• The sampling layer (Cyclon) is responsible for feeding the Vicinity layer, which discovers peers characterized by similar interests.
• The Group layer works on the built overlay and detects the communities in three steps:• Identification of the leader candidates,• Identification of the potential leaders, • The leader election.
• The profile of the peer leader characterizes the related community.
• Peer leader profile exploited by no-leader peers to join a community.
19
Group: A gossip-based protocol for community detection
• Communities are dynamic entities.
• After a prefixed time interval each peer independently starts a new flow of votes.
• The Cyclon+Vicinity mechanism leads to have an updated peers’s neighborhood.
20
Gossip–based overlay for supporting user communities detection
• R. Baraglia, P. Dazzi, M. Mordacchini, L. Ricci, A P2P REcommender system based on Gossip Overlays (PREGO), 10th IEEE International Conference on Computer and Information Technology (CIT 2010), 2010.
• R. Baraglia, P. Dazzi, M. Mordacchini, R. Perego, L. Ricci, Gossip Communities: Collaborative Filtering Through Peer-to-Peer (Extended Abstract), SEB 2010, pages 54-61.
• R. Baraglia, P. Dazzi, M. Mordacchini, L. Ricci, L. Alessi, GROUP: A Gossip Based Building Community Protocol , Smart Spaces and Next Generation Wired/Wireless Networking, Lecture Notes in Computer Science 2011, Volume 6869/2011.
• R. Baraglia, P. Dazzi, M. Mordacchini, L. Ricci, L- Alessi, On Democracy in Peer –to-Peer systems, CoRR abs/1106.3172, 2011.
• R. Baraglia, P. Dazzi, M. Mordacchini, L. Ricci, A Peer-to-Peer Recommender System for self-emerging user communities based on Gossip Overlays, Journal of Computer and Systems Sciences, Elsevier, 2012 (accepted)
21
GoDel: A Gossip-based Algorithm to Build Delaunay Overlay
Each node in the overlay is characterized by the (x,y) coordinates
Combined use ofCyclon and Vicinity
ExploitsThe Cyclon and Vicinity protocols for gathering informationA distributed version of the Edge flipping algorithm Flipping for building Delaunay overlays.
GODEL is a novel distributed algorithm that incrementally build a Delaunay 0verlay by exploiting information gathered by P2P gossip protocols
22
GoDel: A Gossip-based Algorithm to Build Delaunay Overlay
• R. Baraglia, B. Guidi, P. Dazzi, L. Ricci, GoDel: Delaunay Overlays in P2P Networks via Gossip , P2P 2012 (Submitted paper).
23
Next Future Work
• To make a final version of the Hivory and MABRAVO algorithms.
• To enhance the GoDel protocoll by including in it the gossip model for data diffusion
• To investigate epidemic-based protocols for designing self-organizing and self-optimizing overlay networks made up of large sets of actors (humans and not humans).
24
Thank you for your attention
Questions?
Top Related