![]() | |||
Wednesday May 1 2002 Web Services and Peer-to-Peer Computing Companion Technologies Printer-friendly
HTML version With Peer-to-Peer computing on the increase, we take a look at how Web Services can get involved. This article discusses the convergence between Web Services and P2P computing. We engage in a discussion of how Web Services and P2P technologies alleviate each other's core complexities, the applications of the two, and the challenges of using Web Services for P2P computing. What P2P Computing? The Gartner Group defines P2P computing as: "characterized by direct connections using virtual namespaces, it describes a set of computing nodes that treat each other as equals (peers) and supply processing power, content or applications to other nodes in a distributed manner, with no presumptions about a hierarchy of control". Peer-to-peer computing based architecture allows for decentralized application design, moving from centralized server models to a distributed model where each peer, independent of software and hardware platforms, can benefit and profit from being connected to millions of other peers. In such architectures, clients and servers have a lateral relationship rather than the traditional vertical relationship, giving the whole peer group tremendous processing power and storage space. It is worth mentioning that P2P computing is still in an evolving state and much needs to be done to overcome complex issues such as security, network bandwidth, and architecture designs. The complexities involved in P2P computing are discussed in the last section of the article. Features of a P2P Application In this section, we briefly review some of the core features of a P2P application:
Convergence of P2P and Web Services There are quite a few common features of P2P and Web Services technologies, as they both aim to become a common stack for publishing and discovery across networks. P2P computing is based on a decentralized model and primarily focused on supplying processing power, content, or applications to peers in a distributed manner, and less focused on the semantics of messaging formats and communication protocols. Web Services, on the other hand, is based on a centralized model and primarily focused on standardizing messaging formats and communication protocols. It is reasonable to state that Web Services are a boon to the world of P2P computing, as XML-based standards hold the key for the success of P2P applications and the widespread adoption of this technology by companies of all sizes. Web Services provide a very elegant way to handle registration, discovery, and content lookup for P2P applications. Web Services standards for security, as they mature, would also ensure the integrity of data and services accessed by P2P software. There is no question that many companies are undertaking initiatives in this field, however, all this is still at a very nascent stage. Web Services Alleviate Complexities of P2P Computing and vice-versa Both P2P and Web Services technologies help to alleviate some of the core complexities of each other, as follows. Based on open standards Since B2Bi using P2P computing would still require integration of processes across corporate boundaries, the communication between different peer systems should be based on open standards, like Web Services. This would allow companies to have different architectures and platforms for their P2P systems. Since Web Services run through industry standard protocols, companies could in the future be able to eliminate the need for proprietary hardware and software. Directory services As far as directory services are concerned, P2P technology has a lot to offer to Web Services technology as well. Using P2P, the Web Services implementation of using a single central UDDI registry, which contains the service description of Web Services, can be transformed into a decentralized mode. The decentralization of UDDI is especially important in the B2B world, as the size of the UDDI registry for any vertical industry would grow exponentially. The realistic projection at least for the foreseeable future, however, is that the peer systems would continue using the decentralized discovery model, while Web Services systems continue using the centralized discovery model of UDDI. Easy integration with applications XML-based Web Services are an ideal technology for orchestrating business processes in P2P systems as they allow applications to communicate across the Internet in a platform- and language-independent fashion. Applications of P2P computing and Web Services The following potential applications for P2P and Web Services may not all become reality, but they are all possible:
Challenges of P2P and Web Services Working in Conjunction P2P technology is indeed alluring, but the road to designing, developing, and executing P2P-type applications based on Web Services is not a straight one. There are several major challenges that may hamper its early adoption for both EAI and B2B applications. Following are some of the potential problems with P2P-based architectures in the light of its usage with Web Services. Network Bandwidth If companies use P2P and Web Services based applications for EAI and B2Bi, it may severely slow down their network connections and hamper the core business activities. By definition, P2P applications eliminate central servers and create a loose, dynamic network of peers. For any content retrieval operation, such as a search for a specific item in a catalog, all the peers in the network are searched, using a lot of network bandwidth. As this network size increases and becomes more distributed, it may be affected by poor and slow connections. Security The most important feature of the P2P-based application - decentralized, distributed architecture - is also its weakest link. This holds true even if these applications are implemented using Web Services, as security standards for Web Services are themselves not yet defined and matured. It can be safely stated that P2P systems typically have very strong security if they are run as a closed system, as in enterprise application integration (EAI). If, however, they run as open systems, say for business-to-business integration (B2Bi) the security risks are much higher. As of now, though, the security issue remains one of the primary roadblocks to both P2P systems and Web Services adoption going beyond use with previously known and trusted partners. Complex architectures and difficult maintenance The architecture of P2P-based applications with or without Web Services is extremely complex as it involves security issues and use of distributed resources in an optimal way, making decentralized and independent systems work as one. Maintenance of such applications is much more difficult since it is extremely tough to identify, replicate, and fix application or network related problems. Conclusion P2P computing represents the next revolution in the computing age, as it will alter dramatically the way businesses communicate, collaborate, and exchange data over the Internet. P2P, however, is still in its infancy and much work needs to be done, as well as establishing industry standards and specifications. Web Services standardization will provide the means for P2P architecture to be broadly adopted by companies for enterprise and business-to-business application integration. Finally, the convergence projection will materialize only after both Web Services and P2P technologies mature individually. The extended PDF version of this article is available now. Web Services and Peer-to-Peer (P2P)
Computing by Gunjan Samtani and Dimple Sadhwani Purchase the extended PDF version of this article
from: Adobe Acrobat format (PDF) - 444K By the same authors: Keep up to date with all the new articles and features on
Web Services Architect: |