Web Services Architect : Articles : Web Services P2P Computing
Web Services Architect

Register for e-mail updates:

 

Web Services and Peer-to-Peer Computing

Companion Technologies

Gunjan Samtani and Dimple Sadhwani

Printer-friendly HTML version
Or purchase the extended PDF version of this article from our download site, or from Amazon.com.

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:

  • A P2P application should be able to locate other peers in the network.
  • Once an application is able to locate other peers, it should be able to communicate with them using messages.
  • Once the communication is established with other peers, the application should be able to receive and provide information, such as content.

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:

  • All enterprises - small, medium, and large - would be able to use Web Services in P2P applications for several B2B related tasks. For instance, buyers can use P2P networks to search for and find suppliers, products, etc.
  • P2P-based collaborative environments, built using Web Services, would be very flexible as there is no need of a central server; any device can act as a peer, and they can be disassembled as soon as the group goal is achieved.
  • Peer-to-peer computing would allow peer networks to work together dynamically using intelligent agents. The software agents will reside on the peer nodes. They can be used to prioritize tasks on a network, change traffic flow, search for files locally, etc. The agents would use Web Services to communicate.
  • P2P marketplaces would eliminate the middleman - a centralized B2B exchange - and let buyers and sellers trade directly. The entire communication activity within the marketplace would be based on Web Services in conjunction with XML standards for each vertical industry, such as RosettaNet and ebXML.
  • Search engines would be amongst the most widely used applications based on P2P and Web Services technologies.

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
This paper discusses the fundamentals of P2P computing, the different features of P2P applications, the fundamentals of Web Services, and 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 enabling technologies for P2P computing and their support for Web Services, and the challenges of using Web Services for P2P computing. We round the paper out with a discussion of the applications of P2P computing and Web Services, together with an example of their working together.

Purchase the extended PDF version of this article from:
our download site
or
Amazon.com

Adobe Acrobat format (PDF) - 444K
12 pages
Price: $10

By the same authors:
EAI and Web Services
B2B Integration and Web Services
Integration Borkers and Web Services
Web Services and Application Frameworks


Gunjan Samtani is Divisional Vice President, Information Technology at UBS PaineWebber, one of the world's leading financial services firms. He has several years of experience in the management, design, architecture, and implementation of large-scale EAI and B2B integration projects. He is the primary author of the upcoming book B2B Integration - A practical guide to collaborative e-commerce.
Dimple Sadhwani is Senior Software Engineer at Island ECN based in New York. She has many years of experience working for financial and telecommunication companies on large scale trading systems, CRM applications, Internet/Intranet portals, and client/server applications. She is co-author of the book B2B Integration - A practical guide to collaborative e-commerce. She has also authored several articles in the field of Web Services.


Printer-friendly HTML version

Keep up to date with all the new articles and features on Web Services Architect:
Register for e-mail updates


How useful is this article?
What's wrong and right about it?
What are your suggestions for taking it further?
Your views keep Web Services Architect focused.

E-mail us at feedback@WebServicesArchitect.com, or complete this form.
Note: fields marked * are compulsory.

Comments *:

E-mail *:

Job title:

First name:

Last name:

Allow Web Services Architect to display all or part of this message in an online forum.
I have read and agree to the terms and conditions.