|
Definition The
World Wide Web's current implementation is designed predominantly for information
retrieval and display in a human readable form. Its data formats and protocols
are neither intended nor suitable for machine-to-machine interaction without humans
in the loop. Emergent Internet uses - including peer- to- peer and grid computing
- provide both a glimpse and impetus for evolving the Internet into a distributed
computing platform. What would be needed to
make the Internet into a application-hosting platform. This would be a networked,
distributed counterpart of the hosting environment that traditional operating
system provides to application in a single node. Creating this platform requires
additional functional layer to the Internet that can allocate and manage resources
necessary for application execution. Given
such a hosting environment, software designers could create network application
without having to know at design time the type or the number of nodes the application
will execute on. With proper support, the system could allocate and bind software
components to the resources they require at runtime, based on resource requirement,
availability, connectivity and system state at actual time of execution. In contrast,
early bindings tend to result in static allocations that cannot adapt well to
resource, load and availability variations, thus the software components tend
to be less efficient and have difficulty recovering from failures. The foundation
of proposed approach is to disaggregate and virtualize.
System resources as services that can be described, discovered and dynamically
configured at runtime to execute a application. Such a system can be built as
a combination and extension of Web services, peer-to-peer computing, and grid
computing standards and technologies, It thus follows the successful internet
model of adding minimal and relatively simple functional layers to meet requirements
while atop already available technologies.
But it does not advocate an "Internet OS" approach that would provide
some form of uniform or centralized global-resources management. Several theoretical
and practical reasons makes such an approach undesirable, including its inability
to scale and the need to provide and manage supporting software on every participating
platform. Instead, we advocate a mechanism that supports spontaneous, dynamic,
and voluntary collaboration among entities with their contributing resources.
<<back |