Abstract
Peer-to-Peer (P2P) computing, the harnessing of idle CPU cycles through the Internet, offers new research challenges in the domain of distributed computing. This paper proposes an efficient, dynamic and scalable overlay orientated towards P2P computing, called DisCoP. Our proposal gathers the peers into markets according to their computational resources. Each market is arranged in an N-ari Tree and these trees are linked by a Bruijn graph. The tree topology allows efficient searching of available resources in a specific market, while the Bruijn provides good scalability. A Hilbert function is used to arrange markets in one ordered and mono-dimensional space. This way, the proposed architecture exploits the Bruijn and the N-ari tree topologies together with the Hilbert function to classify the computing markets. Searching efficiently for computational resources in P2P systems is a challenge and in turn, an essential requirement for the platform to provide. This article also proposes different search algorithms, each adapted to the DisCoP overlay and optimized to locate computing resources in different ways: exact, range, multi-attribute and approximate searches. A large number of experiments demonstrate the correct behavior of our proposals. The comparison of the obtained results obtained compared to other approaches in the literature reveals their competitiveness in terms of efficiency, latency and hit rates.
Similar content being viewed by others
References
Datta, A.M.H., Aberer, K.: Updates in highly unreliable, replicated peer-to-peer systems. In: Proceedings of the 23rd International Conference on Distributed Computing Systems (2003)
Aberer, K.: P-grid: A self-organizing access structure for p2p information systems. In: Proceedings of the 9th International Conference on Cooperative Information Systems, CooplS ’01, pp. 179–194. Springer-Verlag (2001)
Al-Dmour, N., Teahan, W.: ParCop: a decentralized peer-to-peer computing system. Int. Symp. Parallel Distrib. Comput. 0, 162–168 (2004)
Andrzejak, A., Xu, Z.: Scalable, efficient range queries for grid information services. In: Second International Conference on Peer-to-Peer Computing (P2P 2002), pp. 33–40 (2002)
Bawa, M., Condie, T., Ganesan, P.: LSH forest: self-tuning indexes for similarity search. In: Proceedings of the 14th international conference on World Wide Web, (WWW’05), pp. 651–660. ACM (2005)
Berchtold, S., Keim, D., Kriegel, H.: The x-tree: An index structure for high-dimensional data. In: Proceedings of the 22nd International Conference on Very Large Databases, pp. 28–39 (1996)
Bharambe, A., Agrawal, M., Seshan, S.: Mercury: supporting scalable multiattribute range queries. In: Special Interest Group on Data Communication (SIGCOMM’04), vol. 34, pp. 353–366 (2004)
Buyya, R., Murshed, M.: Gridsim: a toolkit for the modeling and simulation of distributed resource management and scheduling for grid computing. Concurr. Comput. Pract. Experience (CCPE) 14(13), 1175–1220 (2002)
Cabanillas, D., Willmott, S.: Studying viable free markets in peer-to-peer file exchange applications without altruistic agents. In: Lecture Notes in Computer Science. Agents and Peer-to-Peer Computing, vol. 4461, pp. 151–158. Springer (2008)
Castellà, D., Blanco, H., Giné, F., Solsona, F.: Combining Hilbert SFC and Bruijn graphs for searching computing markets in a P2P system. In: Proceedings of the 16th international Euro-Par conference on Parallel processing, EuroPar’10, pp. 471–483. Springer-Verlag (2010)
Castellà, D., Blanco, J., Giné, F., Solsona, F.: A computing resource discovery mechanism over a p2p tree topology. In: Proceedings of the VECPAR 2010, pp. 366–379 (2010)
Castellà, D., Rius, J., Barri, I., Giné, F., Solsona, F.: Codip2p: a new p2p architecture for distributed computing. In: Proceedings of the Conference on Parallel, Distributed and Network-based Processing (PDP 2009), pp. 323–329 (2009)
Chervenak, A., Cai, M.: Applying peer-to-peer techniques to grid replica location services. J. Grid Comput. 4(1), 49–69 (2006)
Cormen, T., Leiserson, C., Rivest, R., Stein, C.: Introduction to Algorithms. Section 23.2: The algorithms of Kruskal and Prim, 2nd edn. MIT Press and McGraw-Hill (2001)
Datta, A., Hauswirth, M., John, R., Schmidt, R., Aberer, K.: Range queries in trie-structured overlays. In: Proceedings of the Fifth IEEE International Conference on Peer-to-Peer Computing, pp. 57–66 (2005)
Esfahanian, A., Hakimi, L.: Fault-tolerant routing in DeBruijn communication networks. IEEE Trans. Comput. 34, 777–788 (1985)
Foster, I., Iamnitchi, A.: On death, taxes, and the convergence of peer-to-peer and grid computing. In: 2nd International Workshop on Peer-to-Peer Systems (IPTPS03), pp. 118–128 (2003)
Gine, F., castella, D., Solsona, F., Lerida, J.L.: Analyzing locality over a p2p computing architecture. J. Netw. Comput. Appl. (2013)
Gupta, A., Agrawal, D., Abbadi, A.: Approximate range selection queries in peer-to-peer systems. In: Conference on Innovative Data Systems Research (CIDR) (2002)
Gupta, R., Sekhri, V., Somani, A.: CompuP2P: An architecture for internet computing using Peer-to-Peer networks. IEEE Trans. Parallel Distrib. Syst. 17(11), 1306–1320 (2006)
Guttman, A.: R-trees: a dynamic index structure for spatial searching. In: International Conference on Management of Data, pp. 47–57. ACM (1984)
Jagadish, H.: Vbi-tree: A peer-to-peer framework for supporting multi-dimensional indexing schemes. In: Proceedings of the International Conference on Data Engineering (ICDE), p. 34 (2006)
Jagadish, H., Ooi, B., Vu, Q.: Baton: a balanced tree structure for peer-to-peer networks. In: Very Large Data Base Environment (VLDB), pp. 661–672 (2005)
Jose, L, de Souza, S., Foltran, D.: Towards a peer-to-peer framework for parallel and distributed computing. Symp. Comput. Archit. High Perform. Comput. 0, 127–134 (2010)
Joung, Y.: KISS: a simple prefix search scheme in P2P networks. In: WebDB, pp. 56–61 (2006)
Joung, Y., Yang, L., Fang, C.: Keyword search in dht-based peer-to-peer networks. IEEE J. Sel. Areas Commun. 25, 46–61 (2007)
Kaashoek, M.F., Karger, D.R.: Koorde: a simple degree-optimal distributed hash table. In: Proceedings of the Second International Workshop, IPTPS 2003, LNCS, pp. 98–107. Springer Berlin Heidelberg (2003)
Knuth, D.: Sorting and Searching, The Art of Computer Programming, vol. 3. Addison-Wesley (1998)
Kotilainen, N., Vapa, M., Weber, M., Toyryla, J., Vuori, J.: P2pdisco - java distributed computing for workstations using chedar peer-to-peer middleware. In: Proceedings of the 19th IEEE International Parallel and Distributed Processing Symposium (IPDPS’05) (2005)
Kwok, S., Chan, K.: An enhanced gnutella p2p protocol: A search perspective. IEEE Trans. Knowl. Data Eng. 5(3), 267–278 (2004)
Liu, Z., Sung, T., Antipolis, S.: Routing and transmitting problems in de bruijn networks. IEEE Trans. Comput. 45(9), 1056–1062 (1996)
Loguinov, D., Kumar, A., Rai, V., Ganesh, S.: Graph-theoretic analysis of structured peer-to-peer systems: Routing distances and fault resilience. In: 2003 Conference on Applications, Technologies, Architectures, and Protocols for Computer Communications, pp. 395–406. ACM Press (2003)
Lua, E., Crowcroft, J., Pias, M., Sharma, R., Lim, S.: A survey and comparison of peer-to-peer overlay network schemes. IEEE Commun. Surveys Tutorials 7, 72–93 (2005)
Malkhi, D., Naor, M., Ratajczak, D.: Viceroy: a scalable and dynamic emulation of the butterfly. In: Proceedings of the Twenty-First Annual Symposium on Principles of Distributed Computing, PODC ’02. pp. 183–192. ACM (2002)
March, V., Teo, Y.: Multi-attribute range queries in read-only dht. In: Proceedings of the 15th IEEE Conference on Computer Communications and Networks (ICCCN 2006), pp. 419–424 (2006)
Maymounkov, P., Mazières, D.: Kademlia: a peer-to-peer information system based on the xor metric. In: Lecture Notes in Computer Science. Peer-to-Peer Systems, vol. 2429, pp. 53–65. Springer (2002)
Meshkova, E., Riihijärvi, J., Petrova, M., Mähönen, P.: A survey on resource discovery mechanisms, peer-to-peer and service discovery frameworks. Comput. Netw. 52(11), 2097–2128 (2008)
Mishra, J., Ahuja, S.: P2pcompute: a peer-to-peer computing system. In: International Symposium on Collaborative Technologies and Systems, pp. 169–176 (2007)
Mokbel, M., Aref, W., Kamel, I.: Analysis of multi-dimensional space-filling curves. Geoinformatica 7(3), 179–209 (2003)
Moon, B., Jagadish, H., Faloutsos, C., Saltz, J.: Analysis of the clustering properties of the hilbert space-filling curve. IEEE Trans. Knowl. Data Eng. 13(1), 124–141 (1996)
Merz, P., Gorunova, K.: Fault-tolerant resource discovery in peer-to-peer grids. J. Grid Comput. 5(3), 319–335 (2007)
Napster: http://www.project-iris.net (2012)
Nguyen, N., Minh, N., Voa, D., Lee, S.: Efficient routing and broadcasting algorithms in de bruijn networks. In: ISPA, pp. 677–687 (2004)
Nguyen, N., Vo, N., Lee, S.: Fault free shortest path routing on the de bruijn networks. Lect. Notes Comput. Sci. 3421, 327–334 (2005)
Poon, W., Cao, J.: Rheeve: a plug-n-play peer-to-peer computing platform. In: Proceedings of the 22nd International Conference on Distributed Computing Systems, ICDCSW ’02. pp. 706–716 (2002)
Ratnasamy, S., Francis, P., Handley, M., Karp, R., Shenker, S.: A scalable content-addressable network. ACM SIGCOMM Comput. Commun. Rev 31(4), 161–172 (2001)
Rowstron, A., Druschel, P.: Pastry: scalable, decentralized object location, and routing for large-scale peer-to-peer systems. In: Proceedings of the IFIP/ACM International Conference on Distributed Systems Platforms Heidelberg, pp. 329–350. Springer-Verlag (2001)
Slaney, M., Casey, M.: Locality-sensitive hashing for finding nearest neighbors. IEEE Sig. Process. Mag. 25(2), 128–131 (2008)
Stoica, I., Morris, R., Karger, D., Kaashoek, M., Balakrishnan, H.: Chord: a scalable peer-to-peer lookup service for internet applications. In: Proceedings of the 2001 conference on Applications, technologies, architectures, and protocols for computer communications, SIGCOMM ’01. pp. 149–160. ACM (2001)
Stratan, C., Sacha, J., Napper, J., Costa, P., Pierre, G.: The treemos resource selection service. ACM Trans. Autonom. Adapt. Syst. (TAAS) 7(4), 46–61 (2012)
Zhao, B., Huang, L., Stribling, J., Rhea, S., Joseph, A., Kubiatowicz, J.: Tapestry: a resilient global-scale overlay for service deployment. IEEE J. Sel. Areas Commun. 22(1), 41–52 (2004)
Author information
Authors and Affiliations
Corresponding author
Rights and permissions
About this article
Cite this article
Castellà, D., Solsona, F. & Giné, F. DisCoP: A P2P Framework for Managing and Searching Computing Markets. J Grid Computing 13, 115–137 (2015). https://doi.org/10.1007/s10723-014-9318-3
Received:
Accepted:
Published:
Issue Date:
DOI: https://doi.org/10.1007/s10723-014-9318-3