The Web supercomputing environment
Nikola B. Serbedzija
GMD FIRST,
Rudower Chaussee 5,
D-12489 Berlin
- Abstract
-
The Web supercomputing environment provides Web access
to the MANNA supercomputer. It is developed within a wider
framework whose aim is to make computing resources,
both hardware and software, available to the Internet users.
The core of the system is the Web-MANNA server with a
number of functions offered to anonymous Web users.
- Keywords
-
Web-based computing; Supercomputing; Distributed
systems
1. Web-computing environment
Web computing can be defined as a special kind of distributed
(client/server) computing that involves Internet-based collaboration of
several remotely located programs and uses a standard Web browser as a
user interface. Contrary to the "classical"
distributed components it requires dynamic functionalities that can
be easily migrated and executed on any machine connected to the Web.
Web supercomputing favours thin machines at clients and supercomputers
at servers' sides.
This work presents how the MANNA supercomputer is included in the already
existing Web computing framework enriching it with supercomputing
capabilities.
In order to accomplish Web computing, a framework called
"Web Computing Skeleton" [2]
has been developed with the following objectives:
(1) to enrich Web sites with software;
(2) to offer computing power to Web users;
(3) to enable wide access to certain applications;
(4) to provide world wide distributed computing.
A few application programs have been included in the
skeleton [3]
and a number of new Java-based applications are in preparation
for inclusion.
Besides the provision of Web-enabling software components,
a further extension has currently been introduced to
allow Web access to the MANNA supercomputer.
2. The Web computing skeleton
The Web computing skeleton is a general-purpose distributed program
whose main task is to establish necessary Internet connections
and enable Web collaboration between different remotely located
software objects.
Initially, it is an empty template that enables communication and
synchronization among Web-based servers and anonymous Web clients.
The actual functionality is obtained by embedding application programs
into the skeleton and by providing appropriate interface to these
programs [3].
Internally, the Web computing skeleton
consists of four major parts:
Mobile code
|
A set of Java applets which play a role of the skeleton clients.
|
Server code
|
A daemon-like program that waits to be called by its mobile clients.
The server maintains a dynamic directory of available services.
|
Appi interface
|
A set of procedures that provide
communication and synchronization with the local Web-enabled
application programs.
|
Appi programs
|
A set of the existing local programs that are
offered for the Internet use.
|
The Web computing skeleton is programmed in Java and
uses the Remote Method Invocation (RMI) mechanism [4]
for collaboration among its components.
With such a design, the Web computing skeleton is
a data-driven template with the built-in functions for
further extensions.
3. The MANNA architecture
The MANNA supercomputer design [1] pioneered
the concept of hiding the message-passing latency by overlapping
computation and communication in a two-processor node
and the multi-level crossbar
interconnect that provides maximum connectivity
at minimum cost.
The result is a massively parallel, scalable parallel computer
that surpasses most of comparable commercial machines in terms of
sustained performance.
MANNA Version 2.0 (featuring 2 i860XP processors per node) has
reached in 1994 product maturity. There is a range of system software
developments associated with the MANNA computer, from operating system,
compilers, parallel programming languages to high-performance
applications.
Fig. 1. The WebMANNA framework.
4. The Web-MANNA server
The Web supercomputing environment is a multi-tier architecture with
the Web-MANNA (WM) server in its centre, WM clients at one and the
MANNA computer at another end (see Fig. 1).
The Web-MANNA server is added to the skeleton like yet another
application program (with Web-MANNA terminal as a user interface),
providing the user with a possibility to login to the MANNA system.
The login procedure creates an independent session at the MANNA
machines which is controlled by the Web-MANNA server.
The major role of the WM server is to dynamically (upon request)
create WM clients and provide them with available services. Some of
the most important WM server functions are:
-
to send the initial WM-terminal applet to the Web user's Virtual Machine,
-
to perform WM logins authentication and authorization,
-
to create and maintain WM sessions that run on the MANNA machine,
-
to run WM commands/applications,
-
to close WM sessions,
-
to monitor and control multiple WM sessions.
The WM server maintains all state information about users
and their associated sessions. When users connect to the WM
server, after authentication, the server checks if there is already a
running session and resumes it or initiates a new session.
Initiating or resuming a WM session means sending WM terminal applet to
the user together with the state information and available
functionalities.
A Case study has been prepared to illustrate
the flow and functioning of a sample WM session.
Some of the functions are:
(1) log(in/out) procedures;
(2) displaying WM terminal;
(3) selecting available operations/applications;
(4) up- and down loading files;
(5) suspending and resuming WM session by disconnecting/reconnecting;
(6) running demonstrator applications;
(7) monitoring at a server side.
5. Discussion
The Web supercomputing environment with its Web-MANNA server is a
part of a wider Web computing framework. The motivation for its
development is to revive legacy software and high-performance
applications through their Web enabling. Once it is completely
finished it will be a stand alone system with the ability to offer
both MANNA applications and MANNA supercomputer processing power to
Web users.
Some parts of the system still have to be improved, especially those
concerning security for both WM clients and the WM server. Current
limitations imposed by JVM (Java Virtual Machine) and the use of RMI
and sockets for remote collaboration affect both efficiency and scaling
of the environment and are the subjects for further work.
References
-
Giloi, W.K., Towards the next generation parallel
computers: MANNA and META, in: Proc. ZEUS '95, Linkoeping, Sweden,
May 1995.
-
N.B. Serbedzija, L. Botha, A. Abbott and J. Bishop,
Web computing skeleton: a case study,
in: Proc. PDSE97 at ICSE, Boston, May 1997, pp. 188197.
-
N.B. Serbedzija,
Web-collaboration improves environmental simulations,
in: Proc. Control'97, Cancun, May 1997, pp. 400403.
-
Sun Microsystems, Remote Method Invocation Specification,
http://www.javasoft.com/products/JDK/1.1 /docs/guide/rmi/rmiTOC.doc.html