Overview of Service Oriented Architecture for Resource Management in P2P Systems

Overview of Service Oriented Architecture for Resource Management in P2P Systems

Farag Azzedin (King Fahd University of Petroleum & Minerals, Saudi Arabia), Mohamed Eltoweissy (Virginia Tech - Advanced Research, USA) and Salman Ahmad Khwaja (King Fahd University of Petroleum & Minerals, Saudi Arabia)
DOI: 10.4018/978-1-61520-686-5.ch008

Abstract

The P2P computing is one of the technologies that is having a significant impact on the way Internet-scale systems are built. It is well established for applications such as file sharing and parallel distributed computation. The well establishment for P2P systems is built on the notion of sharing. One of the objectives of resource sharing is to increase some measure of the overall work done by the collection of resources. The authors present a service oriented architecture for sharing and managing resources in P2P systems. As P2P services have shown expedient way of interaction between peers utilizing different services, our architecture will extend the high utilization of P2P networks with service orientation for handling more services with better management and easy extendibility to further capitalize on the success of P2P networks.
Chapter Preview
Top

Introduction

Resource-sharing is one of the most popular attributes of Peer-to-Peer (P2P) systems, where peers do not need to set up and operate servers in order to provide resources used by others. Different P2P networks come to existence for different types of resources and purposes. For example, Gnutella is used for file-sharing and SETI@home is used for distributed computing. In order to efficiently utilize the sharing of resources, a Resource Management System (RMS) must be put in place. A resource management system manages the resources that comprise the computing environment (Traversat, 2002).

Managing resources in a P2P environment is a challenging task because of the lack of centralized control and the intermittent nature of peers. Resource management in contemporary P2P system usually depends on the network overlay. Napster uses a client-server approach in handling resource discovery and uses a P2P approach in transferring the resource. On the other hand, Gnutella uses flooding to discover resources since there is no special peer to handle resource discovery. Furthermore, a FastTrack network dynamically differentiates peers into regular nodes and Supernodes. Supernodes handle most of the resource management tasks

These approaches to RMS in a P2P setting have certain limitations. The use of centralized entity such as in Napster becomes a single point of failure that can make the whole system non-functional. On the other extreme, flooding messages in Gnutella can take considerable bandwidth which results in scalability problems as the number of nodes increases (Ritter, 2001). Lv, Ratnasamy & Shenker, (2002) studied the scalability of Gnutella, where a design was proposed to: (a) restrict the query flow into each node so they do not become overloaded and (b) dynamically evolve the overlay topology so that queries flow towards the nodes that have sufficient capacity to handle them.

The support of only one resource type limits the utilization as well as the widespread of P2P applications such as Gnutella and KaZaA. Furthermore, DHT-based systems assume that the peers have uniform capabilities. This assumption, however, is difficult to be accepted in real dynamic systems (Hu, Wang & Zhu, 2005). Nodes have varying availability rate, bandwidth, storage, and computing power.

We hypothesize that the limitations of P2P systems can be addressed by a Service Oriented Architecture (SOA) approach. Peers can provide and use different services without having to know the internal workings of these services. Each peer does not need to implement all services as it can use services of other peers to perform its tasks. This is when re-use comes in to the game. A peer now is able to quickly build up another solution that will reuse a set of these services while also providing additional services that the application may require. Such services are woven in to a sort of ecosystem of software. In this scenario, they cooperate as a means of achieving some sort of business objective, while possibly participating in some other ecosystems that offer similar service capability for a possibly different end solution.

The basic idea of SOA is not entirely new. The idea is that it would be nice to create complex systems from simple separate parts. SOA can be defined as an architectural style of building reliable distributed systems that deliver functionality as services, with the additional emphasis on loose coupling between interacting services as defined by Treadwell (2005). Furthermore, SOAs stay independent of the internal workings of the services. As such, it needs to provide certain standards defining the services, their inputs and outputs. Anyone can provide the service as long as the standards for the service are met. A peer can choose the best service for its needs as the peers are loosely-coupled. This can encourage service providers to improve their quality of service in order to attract more business.

Key Terms in this Chapter

Peer-to-Peer: Also known as: “p2p” and “Peer-to-Peer network” and “p2p network” and “Peer-to-Peer system” and “p2p system”; Similar to: “distributed computing” “networked computers”; Associated in the manuscript with: “computer networks” and “networked systems”

Trust Service: Similar to: Credibility Service; Associated in the manuscript with: “service oriented architecture” and “Peer-to-Peer network”

Association Service: Similar to: Peergroup; Associated in the manuscript with: “service oriented architecture” and “Peer-to-Peer network”

Cognition Service: Also known as: “adaptive learning”; Associated in the manuscript with: “service oriented architecture” and “Peer-to-Peer network”

Security Service: Similar to: Authentication Service; Associated in the manuscript with: “service oriented architecture” and “Peer-to-Peer network”

Transaction Monitory Service: Also known as: “monitoring service”; Associated in the manuscript with: “service oriented architecture” and “Peer-to-Peer network”

Feedback Service: Associated in the manuscript with: “service oriented architecture” and “Peer-to-Peer network”

Discovery Service: Similar to: UDDI; Associated in the manuscript with: “service oriented architecture” and “Peer-to-Peer network”

Matchmaking Service: Associated in the manuscript with: “service oriented architecture” and “Peer-to-Peer network”

Service Oriented Architecture: Also known as: “SOA” and “service oriented”; Similar to: “web services”; Associated in the manuscript with: “distributed computer system” and “networked systems”

Ontology Service: Also known as: “web ontology”; Associated in the manuscript with: “service oriented architecture” and “Peer-to-Peer network”

Selection Service: Associated in the manuscript with: “service oriented architecture” and “Peer-to-Peer network”

Dissemination Service: Also known as: n/a; Similar to: n/a; Associated in the manuscript with: “service oriented architecture” and “Peer-to-Peer network”

Complete Chapter List

Search this Book:
Reset