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.


 

Table of Contents

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

 

 


 

List of Tables

 

 

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