|
|
|
|
|
|
Printer Friendly Version
The recent success enjoyed by software based on the
peer-to-peer architecture model has sparked off debate as to
whether such a model is viable for enterprise applications.
Peer to peer means "equal to equal," and it generalizes the
notion of client and server - a peer can just as easily be a
server as a consumer of resources. In our article we analyze
this new trend that has become something of a hot
topic. What is peer to peer? Peer to peer is, first and foremost, an architecture
model for information systems. Its main aim is to optimize
resource sharing on the network. To achieve this, the
peer-to-peer model stops making the distinction between
computers that publish resources on the network and those that
consume them. So it's goodbye to client/server… and hello to
peers. The concept of peer to peer opens the way for some
pretty extreme possibilities, since the resources that can be
shared between peers can be very diverse: The peer-to-peer model also provides a way to guarantee
the ubiquity of resources supplied by the network. A peer does
not need to worry about the location of the peer providing a
service; it simply requests a resource on the network and a
peer that possesses that service then provides it. The broader
the network of peers, the greater the probability of obtaining
even a rare resource. What is more, the notion of peer to peer is not
restricted to computers: it can apply to devices of all
different sizes. These range from the super-calculator which
publishes calculation resources to the simple mobile phone
that publishes a remote control service which could work on
computer devices in the home, for instance. And it gets better: The potential of a network
increases quadratically in proportion to the number of peers
connected. Peer to peer on the scale of the Internet would
mean access to virtually all the resources of connected
devices, providing almost infinite diversity. And this means
that resources would become ubiquitous. Traditional client/server, or the Internet
client/server model that we are familiar with, does not manage
to make the most of the network's potential as peer-to-peer is
supposed to do; the resources published on the network come
from servers, which are equipped with the necessary
infrastructure services. So we could say that the peer merges
the notions of client and server. The infrastructure required for peer to peer
The idea of peer to peer is an attractive one. Let's
take a look now at the infrastructure services required for a
peer-to-peer architecture to function: These infrastructure services must operate on a network
in which the connectivity of each peer is unpredictable. It is
clear that these infrastructure services will need to be
standardized in order to minimize problems of deployment for
peers. Peer to Peer as a generic architecture for Enterprise
applications To identify the opportunities that the peer-to-peer
architecture model offers today's enterprises, let us take a
quick look back at the history of client/server, which can be
seen as a primitive form of peer to peer. The keystone of client/server was its ability to share
parts of an application over a network (presentation,
processes and data) so as to benefit fully from machines'
resources. Different types of client/server succeeded one
another:
The deployment problems caused by the different types
of client/server were complex and costly, and were exacerbated
when security, transaction, synchronization, location and
other sorts of services had to be taken into account as well.
A generic peer-to-peer infrastructure that can share
any kind of resources needs to be based on standards and
should retain compatibility with existing systems (OS,
networks, middleware…). It has become clear over time that
developing such standards and using them in the real world is
an idealistic dream that could only ever be possible in a
laboratory. The type of client/server that has triumphed is the Web
client, which simply posts HTML pages using a rustic
request/response protocol. The Web client is a straight
consumer of resources, that tolerates network outages and
whose bandwidth usage is predictable. The infrastructure
services not provided by HTTP have simply been deported to
servers which can host them in an environment with predictable
constraints. What's
the future for peer to peer? Peer to peer is definitely here, it has a future and it
does not encroach on traditional heavy or light client models.
Although the idea of a generic peer-to-peer architecture might
seem to be a theoretician's ideal that cannot be applied in
the real world, it can in fact be entirely feasible for some
types of applications. Success stories like Napster or
GNUTella are proof of the viability of the peer-to-peer model
for certain configurations. There are a number of reasons for
the success of such tools: Another type of peer-to-peer model which is currently
enjoying a real boom is the concept of Web services. A Web
service is a process, published by an enterprise, that may be
connected to the firm's existing IT system. The notion of
clients and servers disappears, since a consumer of a Web
service may also be the publisher of a Web service. What makes
Web services special is the fact that they are based on a
triptych of standards that makes interoperability between
diverse systems a possibility:
The notion of Web services responds to a true need, in
that it enables enterprises to exchange services whose
processes can be automated. It relies on real standards (HTTP
and XML), is totally compatible with existing systems, and
offers a pragmatic approach with simple infrastructure
services (invocation), which will become more complete as time
passes (location with UDDI). The success of Web services is proof that peer to peer
should be tackled pragmatically and should be used to address
precise needs; the model should not be considered a generic
structure, because of the complexity that this will
entail. To sum up, our view is that the peer-to-peer
architecture model is not one that will revolutionize
enterprise applications. It is simply a model which has been
brought into the spotlight thanks to tools such as Napster or
GNUtella, which some have seen as providing an opportunity for
developing a revolutionary architecture model. The approach to adopt for peer-to-peer architectures
should be utterly pragmatic; a good example of this is the Web
services standard that will enable enterprise applications to
be extended by letting them communicate using the P2P model.
TechMetrix Research is a technically
focused analyst firm focused on e-business application development needs.
Based in Boston, Mass., the firm publishes comparison reports and product
reviews designed to aid enterprises with decision making and to keep pace
with the fast-moving e-business market. TechMetrix is a U.S.-based subsidiary
of SQLI, a European company that offers on-site development services to
international organizations. SQLI specializes in e-business project
development. |
| |
|
· Intranet eXchange Discussion Board · Advice and Opinions |
Intranet Journal's Tutorials |
|
Managing Editor |