Return to Home --> Advanced --> Ideas
Developing and Deploying SimSANs Service Provision Platform
Objective
It is possible that SimSANs can be deployed as a
software service platform
dedicated to the provisions of designing, modeling, simulation,
analysis and evaluation of the storage networking systems. This is
fairly a rough idea. Its architecture and some suggestions to the
implementation are given below. Interested people are feel free to
comment on it.
General Picture
The SimSANs software platform is based on a client-service model
whose architecture is shown in the following figure.
SimSANs Software Platform Architecture
Click here to see its VML version (requiring IE)
The general picture of the software platform is: once receiving the user requirements from the client side, the service side will generate correspondent network schemes as well as simulation programs, then process simulation modeling, running, and analysis, and finally issue the evaluation reports back to the users.
Components
The software platform is composed of seven modules:
1. Front-End User Interface: This module is used to
(1) accept user requirements regarding network topologies, I/O
traffic, and system configurations, etc., and (2) visually display
relevant information such as the graphs of network topologies and
evaluation reports.
2. Network Schemes Generator: This is an
intelligent module for automatically translating user requirements
to correspondent network schemes, each of which is related to a
given parameter set: network topologies, system layouts, system
configurations, and traffic patterns, etc.
3. Simulation Control Centre: This module is used to
(1) select appropriate models from the modeling libraries to
construct simulation programs for correspondent network schemes, (2)
calculate timing elements for processor-relevant components, (3)
distribute the simulation programs to simulation running systems,
and (4) control and optimize the simulation programs run.
4. SANs Modeling Libraries: This module contains the
models dedicated to constructing storage network simulation
programs.
5. Processor Instructions Base: This module generates
timing elements for processor-relevant components such as protocol
stack processor, host bus controller, switch ASIC, cache controller,
array processor, and disk controller, etc. The generated timing
elements will be embedded into the simulation programs or
(optionally) be supplied on the fly during the running of simulation
programs.
6. Simulation Running Systems: This module is a high
performance computer system or a server cluster, running simulation
programs with controlled by simulation control center. Simulation
kernel and engine including those used for networked parallel
processing will be running in this module.
7. Simulation Analyzer: This is an intelligent
analysis module that is used to (1) analyze simulation results based
on the data collected during a simulation run, (2) generate
user-friendly performance evaluation reports including graphs, and
(3) issue the evaluation reports back to the users.
Implementation
To realize the client-service architecture mentioned before three
kinds of server systems should be deployed at the service side. The
diagram is shown in the figure below.
SimSANs Software Platform Implementation
Click here to see its VML version (requiring IE)
1. User Interface Server: This server is running the
Front-End User Interface module. In fact, it is a web server,
which (1) distributes the user interface client software to the
user’s workstation, and (2) runs user interface server software to
collect user requirements and forward them to the controller server.
User interface client software is a well-designed GUI (graphic user
interface) that can be, for example, a Java applet or ActiveX
control running from user’s Internet browser. User interface server
software can be, for example, a Java Serverlet or ASP (Active Server
Pages) program running on top of the web server. A typical system of
the user interface server can be a Windows 2000 server with IIS
(Internet Information Service).
2. Controller Server: This server is running five
modules: Network Schemes Generator, Simulation
Control Centre, SANs Modeling Libraries, Processor
Instructions Base, and Simulation Analyzer. A typical
system of the controller server can be a Windows 2000 server or
Linux server.
3. Simulation Running Cluster: The cluster is the
Simulation Running Systems. Complex simulation programs require
very high performance computer systems such as the parallel
processing system with 16 to 64 CPUs. However, such a parallel
processing system usually costs several hundred thousand dollars or
even several million dollars. Recently, with the emergence of
low-price high-performance server processors (e.g., Intel Xeon
processor) and high-speed I/O connectivity technologies (e.g.,
Dolphin I/O adapter card), networked parallel system or server
cluster is becoming a cost-effective replacement for traditional
multiple CPU parallel systems. A typical configuration of the
simulation running cluster can be several dual Xeon based Linux
systems inter-connected with Dolphin high-speed I/O adaptors.
This page was last updated 2003.10.15