Analyzing locality over a P2P computing architecture

https://doi.org/10.1016/j.jnca.2012.12.032Get rights and content

Abstract

A characteristic of Peer-to-Peer (P2P) computing networks is their huge number of different computational resources scattered across the Internet. Gathering peers into markets according to their multi-attribute computational resources makes it easier to manage these environments. This solution is known as market overlay. In this context, the closeness of the markets with similar resources, known as locality, is a key feature for ensuring good P2P resource management. Thus, the locality feature over a market overlay allows a lack of resources in a given market to be compensated quickly by any other market with similar resources, whenever these are close to each other. Consequently, locality becomes an essential challenge.

This paper addresses the analysis of the locality of P2P market over-lays. According to this, a new procedure for measuring locality is applied together with an extensive analysis of some well-known structured P2P overlays. Based on this analysis, a new P2P computing architecture, named DisCoP, oriented towards optimizing locality is proposed. Our proposal gathers the peers into markets according to their computational resources. A Hilbert function is used to arrange multi-attribute markets in an ordered and mono-dimensional space and the markets are linked by means of a Bruijn graph. In order to maintain the DisCoP locality whenever the overlay is not completed, a solution based on the virtualization of markets is also proposed. Finally, the DisCoP locality is tested together with the proposed virtualization method for approximate searches over uncompleted overlays. The simulation results show that approximate searches exploit the DisCoP locality efficiently.

Introduction

Peer-to-Peer (P2P) computing is a distributed computing paradigm that uses large numbers of autonomous hosts as a platform for executing applications. Properties such as decentralization, self-organization, dynamism and fault-tolerance make these systems naturally scalable and attractive solutions for applications in all areas of distributed computing (Foster and Iamnitchi, 2003). The efficient scheduling and executing of these applications over a P2P computing platform needs a mechanism to search and manage the set of peers whose available computational resources (i.e. CPU, Memory or Bandwidth) fit the requirements of the application to be executed. Taking both the large-scale and mutable amount of computational resources provided by each peer into account, resource management in P2P computation becomes a research challenge (Lua et al., 2005).

In order to manage the huge number of different computational resources scattered across the network, some studies Gupta et al. (2006) and Meshkova et al. (2008) propose to group peers with similar computational attributes into markets. Thus, the search time for the requested computational resources is significantly reduced and unnecessary outgoing queries are minimized. Unfortunately, the lookup queries are totally unbalanced, as those markets made up of peers with the most popular computational resources are those the users require most. Thus, the peers of the most popular markets rapidly become busy and, as a consequence, the system receives an avalanche of unsuccessful queries. P2P computing platforms should accordingly provide alternative resources with capabilities as close as possible to those requested, a term known as approximate searches. So locality, thought of in terms of market proximity, is a key aspect when designing structured networks for P2P computing systems. We are interested on the locality or clustering defined in il Jeong et al. (2008) as a value that indicates the closeness of the markets with similar computational resources (called similar markets henceforth) mapped into a multi-dimensional space using the distances provided by a specific overlay.

To this end, our paper analyzes the benefits of providing proximity or locality to a P2P computing environment. In order to do so, a new procedure is also provided to measure the degree of locality of any topology. The application of the proposed procedure for any given P2P overlay returns one absolute metric to analyze the real magnitude of the locality and other relative metric to make easier the comparison between different overlays. Based on this, we analyze the locality features of some well-known P2P topologies, such as Chord (Stoica et al., 2001) or Bruijn (Loguinov et al., 2003), together with the Hilbert Space-Filling Curve (SFC) (Xu and Tirthapura, 2012). Note that Hilbert SFC is often used in P2P structured topologies to transform k-dimensional coordinates into 1-D space (Shen et al., 2008). Our locality results reveal that the combination of Hilbert and Bruijn obtains a locality gain of up to 80% compared with other overlays.

Taking the locality features of the analyzed topologies into account, a new architecture named DisCoP (Distributed Computing Platform), orientated towards P2P computing, is described. The DisCoP architecture is made up of a Hilbert mapping function plus a two-layer overlay. The Hilbert function allows peers to be classified into markets according to their computational attributes. These markets are linked by means of the DisCoP two-layer overlay. The top layer interconnects the markets by means of a Bruijn graph, while the nodes in the same market are arranged into a tree topology in the bottom layer. In addition, the linkage of similar markets over the DisCoP overlay are optimized by means of adding extra-links, which allow the intrinsic locality provided by the Hilbert SFC in the Bruijn topology to be maintained. Our simulation results reveal that the interaction between the three levels of the DisCoP architecture (Hilbert, Bruijn and Tree levels) together with the added extra-links allows the best degree of market locality to be achieved. It means that our proposal locates similar computing resource providers (markets) as close as possible to each other.

Unfortunately, whenever the Bruijn graph is not complete, the locality falls drastically. In order to solve this, a solution based on the virtualization of markets (Kaashoek and Karger, 2003) is proposed. Finally, the DisCoP locality is applied, together with the proposed virtualization method, to locate approximate resources whenever the requested resources do not exist because the Bruijn graph is incomplete. Thus, a method is provided for carrying out approximate searches over the DisCoP platform. Our experimentation shows that our approximate search method is able to exploit DisCoP locality efficiently.

The outline of this paper is as follows. The related work is described in Section 2. A P2P computing system model is described in Section 3. The metrics and a procedure for obtaining the locality of a P2P computing overlay are proposed in Section 4. Section 5 introduces the proposed DisCoP architecture. The analysis of the DisCoP locality is carried out in 6 Analysis of the DisCoP locality, 7 Virtualization of markets explains the virtualization method proposed to maintain locality over an uncompleted Bruijn graph. An example of the application of the locality and virtualization to find approximate queries is given in Section 8. Finally, the main conclusions and future work are explained in Section 9.

Section snippets

Related work

Recently, several researchers have dedicated their efforts to developing new resource management methods for P2P computing platforms (Mishra and Ahuja, 2007, Gupta et al., 2006, Senger et al., 2010, Kotilainen et al., 2005, Al-Dmour and Teahan, 2004). Like our proposal, the CompuP2P architecture proposed by Gupta et al. (2006) tackles this problem by means of grouping peers into markets. CompuP2P creates dynamic markets of network-accessible computing resources, connected by means of a Chord

System model based on a market overlay

This section describes the simplified P2P computing model used throughout this paper. We assume this to be a P2P system, where the peers are classified into markets according to their computational attributes. Thus, all the nodes belonging to the same market have the same or very similar computational resources (CPU, Memory, Disk, etc.). In order to exchange these resources between the markets, they are all connected by means of a P2P overlay O, such as Chord, Bruijn, Tapestry, Viceroy, etc. (

Locality of a P2P overlay

One of the most sought-after properties of a P2P overlay is its locality, given that a high locality will increase the efficiency of resource searches throughout the overlay. Thus, this section is devoted to defining a procedure for obtaining the overlay locality metrics in a given P2P topology. Next, an example is provided of applying the locality procedure over a simple overlay.

The DisCoP architecture

This section describes a new P2P computing architecture, named DisCoP (Distributed Computing Platform), aimed at optimizing the locality. As Fig. 4 shows, this is made up of a Hilbert mapping function and a two-layer overlay (Bruijn and Tree).

The DisCoP mapping function uses a Hilbert Multi-Dimensional Space-Filling Curve (SFC) to map the k-dimensional coordinates (X1,,Xi,,Xk) of each market into a 1-D domain identifier, Hi. As Fig. 4 shows, an SFC is a thread that goes through all the points

Analysis of the DisCoP locality

In this section, we apply the procedure described in Section 4 to analyzing the locality of the DisCoP two-level architecture, made up of the Hilbert mapping function and the Bruijn graph, in relation to the well-known Chord overlay. In order to compare Bruijn and Chord under the same conditions, we also apply the Hilbert mapping function over the Chord overlay. Moreover, we analyze the locality performance of both overlays when extra-links, described in Section 5.2, are added.

Figure 6 shows an

Virtualization of markets

The previous section shows the high locality related to the Bruijn graph. This high locality means that the resource discovery cost over a complete Bruijn graph was optimal (Nguyen et al., 2005). However, when the Bruijn graph is incomplete, searching for a specific market can involve a large number of hops. This is due to the fact that the markets involved in the search path do not yet exist. In order to improve this, a solution based on the virtualization of markets is proposed.

The

A locality application for approximate searching

Resource discovery has become an essential part of a P2P computing environment. Desired features of discovery systems include support for exact queries to locate a single market with specific attributes, or approximate searches to locate resources with similar values to those requested, whenever the desired node does not exist. Thus, the effectiveness of searching is increased in the absence of the desired resources; since it is not necessary to reject search results for a node with CPU=2.5GHz

Conclusions and future work

This paper addresses the analysis of the locality of P2P computing overlays. To this end, a new procedure for measuring locality is carried out, together with an extensive analysis of some well-known structured P2P overlays.

Based on this analysis, a computing resource management system orientated towards P2P computing (DisCoP) is presented. Our proposal is based on an architecture made up of two levels: the top level is a Hilbert mapping function, which classifies the nodes into markets

References (27)

  • E. Meshkova et al.

    A survey on resource discovery mechanismspeer-to-peer and service discovery frameworks

    Computing Networks

    (2008)
  • Al-Dmour N, Teahan W. Parcop: a decentralized Peer-to-Peer computing system. In: Parallel and distributed computing,...
  • Castellà D, Blanco J, Giné F, Solsona F. A computing resource discovery mechanism over a P2P tree topology. In:...
  • Castellà D, Rius J, Barri I, Giné F, Solsona F. CoDiP2P: a new P2P architecture for distributed computing. In:...
  • Chi Nguyen N, Minh Nhat VD, Lee S. Efficient routing and broadcasting algorithms in de Bruijn networks. In: ISPA; 2004....
  • Foster I, Iamnitchi A. On death, taxes, and the convergence of peer-to-peer and grid computing. In: IPTPS03; 2003. p....
  • R. Gupta et al.

    Compup2pan architecture for internet computing using peer-to-peer networks

    IEEE Transactions on Parallel Distributed Systems

    (2006)
  • Guo L, Jiang S, Xiao L, Zhang X. Exploiting content localities for efficient search in P2P systems. In: Proceedings of...
  • Harvey NJA, Jones MB, Saroiu SS, Theimer M, Wolman A. SkipNet: a scalable overlay network with practical locality...
  • il Jeong K, Yoon UH, Han J-Y, Ahn J-M, Song J-H, Kim S-D. Rnet: a hierarchical P2P overlay network for improving...
  • Jagadish HV, Ooi BC, Vu QH. Baton: a balanced tree structure for peer-to-peer networks. In: VVLDB'05; 2005. p....
  • Kaashoek FM, Karger D. Koorde: a simple degree-optimal distributed hash table. In: Peer-to-peer systems II, vol. 2736;...
  • Khan S, Gani A, Sreekandath M. The routing performance of logarithmic-Hop structured P2P overlay. In: IEEE conference...
  • Cited by (12)

    • BMMI-tree: A Peer-to-Peer m-ary tree using 1-m node splitting for an efficient multidimensional complex query search

      2019, Journal of Parallel and Distributed Computing
      Citation Excerpt :

      Peer-to-Peer (P2P) systems have become popular for the massively distributed applications that are becoming prominent nowadays. Higher scalability, dynamicity, self-organizing capabilities, fault-tolerance, symmetric communication i.e., each peer/node being identical and independent, multi-purpose resource sharing i.e., each peer acting as a server, client and router and locality of data are the factors that make P2P systems essential for numerous applications [1,3,23,28,47]. The P2P is now extended to the applications like intelligent resource discovery [31], streaming media and telephony [29], mobile P2P networks [32], multi player interactive gaming [13], video content managing [24], P2P in cloud computing for service sharing [26,49] etc.

    • Design of a P2P network that protects users' privacy in front of Web Search Engines

      2015, Computer Communications
      Citation Excerpt :

      This is, alternative topologies can be used instead. However, in previous works [34–36], the good behavior and usefulness of Bruijn was demonstrated, and in almost all the experiments, even better results than other quite popular currently available P2P topologies were obtained. The second layer of the architecture is composed by sub-networks of peers, called Profile Clusters.

    • Resource discovery mechanisms in grid systems: A survey

      2014, Journal of Network and Computer Applications
      Citation Excerpt :

      In P2P systems peers have equal roles and capabilities to exchange information and to provide services (Tan et al., 2012), as opposed to the traditional client–server model. P2P computing as a popular type of P2P systems is a distributed computing paradigm that uses large numbers of autonomous hosts as a platform for executing applications (Castellà et al., in press). P2P Grid as a important type of P2P computing systems exploits the synergy between the Grid system and P2P network to efficiently manage the Grid resources and services in large-scale distributed environments (Akbari Torkestani, 2012).

    • Collaboration computing technologies and applications

      2013, Journal of Network and Computer Applications
    • Novel architecture for effective load balancing and dynamic group scheduling in grid computing topology

      2017, Proceedings of IEEE International Conference on Circuit, Power and Computing Technologies, ICCPCT 2017
    View all citing articles on Scopus

    This work was supported by the MEyC under contract TIN2011-28689-C02-02.

    View full text