Integrated Three-Tier
Architecture for
High-Performance Commodity Metacomputing
by
EROL AKARSU
B.S., Ege University, Turkey, 1991
M.S., Syracuse University,1996
DISSERTATION
Submitted in partial fulfillment of requirements for the degree
of Doctor of Philosophy in Computer Science
in the Graduate School of Syracuse University
December, 1999
Approved
Professor Geoffrey C. Fox
Date
Copyright 1999 Erol Akarsu
All Rights Reserved
Abstract
Programming tools that are
simultaneously sustainable, highly functional, robust and easy to use have been
hard to come by in the HPCC arena. Thus we have developed a new strategy, HPcc:
High Performance Commodity Computing, which builds HPCC programming tools on
top of the remarkable new software infrastructure being built for the
commercial web and distributed-object areas. This leverage of a huge industry
investment naturally delivers tools with the desired properties with the one
(albeit critical) exception that high performance is not guaranteed. Our approach automatically
gives the user access to the full range of commercial capabilities (e.g.,
databases and compute servers), pervasive access from all platforms, and
natural incremental enhancement as the industry software juggernaut continues
to deliver software systems of rapidly increasing power. We add high
performance to commodity systems using a multi-tiered architecture with the
Globus meta-computing toolkit as the backend of a middle tier of commodity web
and object servers.
More specifically, we design and implement a
three-tier system. Web browser-based graphical user interface that assists the
researcher in the selection of suitable applications, the generation of input
data sets, specification of resources, and the post-processing of computational
results, comprises tier 1. The distributed, object-oriented middle tier maps
the user-task specification onto back-end resources, which form the third tier.
In this way we hide the underlying complexities of a heterogeneous computational
environment, and replace it with a graphical interface through which a user can
understand, define, and analyze scientific problems.
List of Tables.......................................................................................................... vii
List of Figures......................................................................................................... ix
CHAPTER 1 – INTRODUCTION.................................................................................... 1
1.1 Related Work................................................................................................... 6
CHAPTER 2 – High-Performance
Commodity Computing................. 14
2.1 Introduction.................................................................................................. 14
2.2 Commodity Technologies
and Their Use in Multi-Tier Systems 15
2.3 Three Tier High
Performance Commodity Computing......... 17
CHAPTER 3 – DARP SYSTEM
(DATA ANALYSIS AND RAPID PROTOTYPING) 24
3.1. Introduction................................................................................................. 24
3.3 DARP Server:
Interactive control over an application..... 26
3.4 Instrumentation of the
code.............................................................. 29
3.5 DARP Front End.............................................................................................. 30
3.6 Integrated Environment
for HPF Compiler and Interpreter 36
3.7 Runtime Visualizations............................................................................ 37
3.8 Adding a different
visualization engine to DARP system.. 39
3.9 Summary............................................................................................................ 40
4.1 Introduction.................................................................................................. 42
4.3 Three-Tiered
Architecture of the WebFlow............................... 47
4.3.1 The
Front End..................................................................................................... 47
4.3.2 The
Middle-Tier.................................................................................................. 50
4.3.3
Session Manager................................................................................................. 51
4.3.4
Module Manager................................................................................................. 51
4.3.5
Connection Manager........................................................................................... 52
4.4 The Back End.................................................................................................... 52
4.5.1
Logging into the WebFlow system........................................................................ 56
4.5.2
Creating A New Module..................................................................................... 56
4.5.3
Making a connection between modules................................................................ 58
4.5.4.
Run/stop/destroy modules................................................................................... 61
4.6 Limitations of
Original WebFlow and Other Alternative Solutions 62
5.1 Impact of Gateway on Seamless Access
to HPCC Resources 67
5.2 Gateway Middle Tier.................................................................................. 70
5.2.1
Motivation........................................................................................................... 70
5.2.2
GateWay Middle Tier.......................................................................................... 72
5.2.3
Lifecycle Service................................................................................................. 74
5.2.4 Proxy Objects..................................................................................................... 75
5.2.5
Interactions of user modules................................................................................. 75
5.3 Gateway Back-End........................................................................................ 79
5.4 The Front End................................................................................................. 83
5.5
Comparison of Gateway with EJB....................................................... 84
CHAPTER 6 – Gateway
Interfaces and Services..................................... 87
6.1 Gateway Interfaces.................................................................................... 87
6.1.1
BeanContextChild interface.................................................................................. 87
6.1.2
BeanContext interface.......................................................................................... 90
6.1.3 DARP
Interface................................................................................................. 100
6.2 Persistency and
Configuration Service...................................... 107
6.3 Gateway Fault
Tolerance Model..................................................... 119
6.4 Gateway Security
Access....................................................................... 123
6.4.1
First Security Layer: Secure Web Transactions................................................... 125
6.4.2
Second Security Layer....................................................................................... 125
6.4.3
Second Security Layer: Control of Access to Back End Resources..................... 127
6.5 Consequences of This
Distributed Model................................... 127
CHAPTER
7 Gateway Applications................................................................ 129
7.1
LMS....................................................................................................................... 129
7.1.1
Description of the Project.................................................................................. 129
7.1.2
Interaction between Casc2d and Edys simulations.............................................. 132
7.1.3 LMS
Middle Tier.............................................................................................. 134
7.1.4 LMS
Back End................................................................................................. 138
7.1.5 LMS
Front End................................................................................................. 139
7.1.6 Data
Wizard...................................................................................................... 140
7.1.9 WMS................................................................................................................ 141
7.2 Quantum Simulation
(QS)....................................................................... 143
CHAPTER 8 - Conclusions................................................................................... 148
8.1 A Possible Framework
of A Client-Side Collaborative Environment 152
8.2 How do user modules
written in COM interact with the ones in CORBA? 153
8.3 Gateway can act as
firewall to remote objects.................. 153
8.4
Comparisons with other Component Models.......................... 154
REFERENCES............................................................................................................... 159
Vitae............................................................................................................................. 170
GLOSSARY.................................................................................................................... 172
Table 1. Data Access commands of HPF server......................................... 33
Table 2. Prototyping commands of HPF Server........................................ 34
Table 3. Control commands of HPF Server................................................. 35
Table 6.1. BeanContextChild interface........................................................ 87
Table 6.2. Iterator and Collection interfaces....................................... 90
Table 6.3. GatewayContext interface extending
Beancontext and DARP interfaces 92
Table 6.4. A simple representative DARP method..................................... 102
Table 6.5. How the DARP server gets the next command
from the middle tier 103
Table 6.6. How the DARP server puts the result of a
previous client command into the middle tier.......................................................................................................... 104
Table
6.7. DARP interface.................................................................................. 106
Table 6.8. Base attribute and three different
attributes extending from the base 109
Table 6.9. An IDL definition file of an example user
module........... 111
Table 6.10. XML description of user IDL file in Table 6.9...................... 112