Documente Academic
Documente Profesional
Documente Cultură
1210
Use of Simulation to Test C~lient-SerFer l\Jodels 1211
server system is based and about which a processors cooperate to complete the processing
designer is forced to make assumptions. At the as a single integrated task".
same time, a review of the literature in this area This definition emphasises the logical nature
shows that simulation modelling is used either of the client-server model and not the physical
in a somewhat limited capacity, concentrating one which would include the hardware and
on sub-systems and algorithms or at a level of network components.
detail which makes it complex and expensive Client-server models belong to the class of
(Robinson 1994). There is thus an untapped distributed computing models. In theory, even
potential' for the use of simulation of the one client and one server on the same hardware
systems. The possible application of simulation platform could qualify as a client-server system.
strategy to client-server problem also points to In practice, though, there are likely to be many
the vital need of proper measurements of the clients, based on multiple platfonns, and being
client-server system parameters, an issue served by at least one server, connected through
directly linked to software metrics and networks. Figure 1 illustrates a general client-
performance monitoring. The paper concludes server model with multiple clients connected to
lhat even a simple simulation model of a client- multiple servers via a local or wide area
server system is beneficial to the system network.
designers and developers.
The paper is organised as follows. Section 2
briefly describes the client-server models.
Section 3 relates simulation work to client- ....
AI ....----, -
-....".
&.I
cltal
•
--4.
........
server and finds that the modelling exercise in C"'" I -" ", iiiI
this area includes details of communication ;'l. ,
t-J!l-
I
networks, hardware and processor CltenO i I
'\
Section 4 then relates the client-server systems Pnnl&1
Client'Server
are also of general nature. Anecdotal evidence
points to the designers making choices abo~t
splits in client-server functionality on the basIS
of experience, intuition and trial-and-error
methods.
The foregoing description and discussion
indicate the possibility, and desirability, of
applying simulation strategies to test ~nd
improve client-server designs. The follOWIng
sections elaborate on this theme.
and software platfonns, nor are the network and questions of interest to any systems designer.
communication parameters identified. The view The performance of a system based on this
is of a systems designer who takes all the other logical design could be analysed without much
parameters as given and is only concerned with more data.
decisions about how to split the functionality In the final analysis, however, performance of
within the application across multiple clients a given system will depend upon many factors,
and the server. such as network topology, transmission
A typical working scenario of the system protocols, client and server processor speeds,
would involve the following: number of clients supported, choice of software
• a client would present a user interface to packages and underlying operating systems. A
validate input and generate requests systems designer is aware of these factors but
(transactions) for the server to process; has far fewer measurements available on which
• the transactions could take the fonn of to judge the relative contribution of these factors
simple queries, or updates to the database, or and hence their likely effect on the system
requests for detailed reports; perfonnance. Many of these factors belong to
• the server would receive these transactions/ areas of specialisation about which a systems
requests over the network and respond designer has only a vague model in his/her
appropriately; mind.
• the server would carry out database In the references cited above, for example,
management tasks, as and when needed. Shen and Butler (1994) include the network
In order to simulate such a system, a characteristics in their model-building, Smith
simulation expert would want to know answers (1990) and Robinson (1994) allow hardware
to questions such as: characteristics, Komatsu, Wakayama and Nose
• what are the possible types of transactions (1994) incorporate internal processes of a
and what are their (statistical) distributions? computer system and models using the so-called
• do all clients follow the same distributions? Remote Procedure Calls (RPC) have also been
• how much processing time is needed on the reported.
client and how much on the server? The detailed simulation modelling would
• what is the communication overhead and make the subsequent experiments and output
how is it measured? analyses more valid than those based on a less
Depending on the level of detail in a detailed one. On the other hand, Robinson notes
simulation model, there could be many more that the increased complexity is a drawback and,
similar questions to which answers may be in many cases, simpler models may be adequate
required. to address basic issues.
Given the required details, a simulation The foregoing analysis suggests that what is
model may be built and statistically valid likely to be useful to a systems designer is the
experiments run to report on various ability to include the levels of detail selectively
combinations of functional division between the and in such a way as to make modelling easier
clients and the server. and more tractable. Section 4 suggests ways of
The idea of using simulation in client-server doing that by utilising the familiar Open
environment has been explored by several Systems Interconnection (OSI) model.
researchers in much greater detail, as reported
in literature (Smith 1990, Jain 1991, Gold 1993,
McBeath and Keezer 1993, Shen and Butler 4. CLIENT-SERVER AND OSI
1994, Robinson 1994, Komatsu, Wakayama and
Nose 1994). The level of detail, however, is a As vel)' briefly discussed in Section 3, client-
potential challenge to systems designers in server modelling is complicated by the
general, as discussed below. considerations of a large number of variables,
The main characteristic of the first three ranging from software and hardware platforms
questions about a simplified client-server system through to networks and communications
raised above is that they are related to the protocols. The OSI model, representing both
application under consideration and not to the client and server (Figure 3), is in fact a good
hardware/software platform on which the guide to sort these factors in layers where they
application will be built. They are also the belong.
1214 Desllpande, Jenkins, and Ta.ylor
s Presentation
S Y
8
r----------------f
t~~~~~~~~~~~........~ ~
U e
Layer r m
i
1 Physical I M Transport services (TCPIIP)
2
Y g 1-----------------1
Data link t Subnetwork. (WAN. Lan•...)
3 Network
4 Transport
5 Session
6 Presentation Figure 4: Layered model of client-server
7 Application systems (Source: IESC Report 1995)
and ensure that messages were passed on designers. Section 6 briefly discusses these
correctly. issues.
• These messages would travel upwards to
the Application layer of the server in the reverse
fashion, processed and the output would travel 6. STATISTICAL ASPECTS OF
back to the client in a similar manner. SIMULATION AND SOFTWARE
Although this is a very simplified model, it METRICS
has already proved to be useful in many ways.
Firstly, the exercise brought home to the There is a lot of similarity between the
people involved in the discussion that there are a approaches adopted in simulation modelling and
number of possible views of the same system, all systems design (Robinson 1994). However, after
of them important, and that it is essential to the logical design of a system model, the system
develop a common language across the different developers proceed to its physical design
expertise. The layers clarified to everyone straightaway, vel)' often under severe time
exactly what was under discussion and needed pressure. Validation of the models they may
further clarifications. have built is static and through structured
Secondly, it forced the participants to walkthroughs or meetings with the responsible
consider different ways of measuring the clients or through proto-typing.
"traffic". A transaction viewed at the client In contrast, simulation strategists attach a
Application layer goes through a few great deal of importance to relevant and accurate
transfonnations before reaching the server measurements, or data, before any experiments
Application layer, again as a complete are conducted and models validated.
transaction. The statistical distributions of the One of the early benefits of the case study, as
types of transactions and of the time it takes for mentioned above, was the focus on input and
these transactions to reach the destination are output data of the given system. From the point
likely to be different at each layer. A larger of view of validating the simulation model of a
question is thus raised about the appropriate client-server system, data would be needed to
measurements and collection of data in order to cover as many of the variations in the systems
validate the simulation exercise. parameters as possible. Depending on the level
Thirdly, the case study has highlighted the of modelling, such data would include
appropriateness of constructs available in the measurements specific to the application,
simulation packages. ProModel is primarily network and communications layers before
designed to aid in modelling manufacturing simulation experiments could begin.
systems and uses icons and tenninology of that The conceptual modelling exercise and
environment. The success and speed of consequent attention to measurements also is
modelling depends substantially on the ability of extendable to post-implementation systems.
experts participating in the study to interpret the Whatever assumptions are made in the pre-
terminology flexibly and not be diverted by the design stage and, data collected accordingly, the
language used by the package. This is not data capture and further validation tests can be
always so obvious. continued throughout the systems life cycle,
A further advantage which simulation leading to more pro-active systems maintenance.
modellers clearly recognise, was the effect of It may be pointed out that the model can only
animating the model. As a generalisation, perfonn the task of highlighting the paucity
systems designers tend to think in more abstract and/or the (poor) quality of data about the
terms, in algorithmic patterns and, at times, in system(s) under consideration. Changes in
static models of their systems. Animated practice and improvements in the quality of data
simulation models of even the simplified models are matters for action only by the appropriate
seems to generate much more interest than even authorities.
extended discussions.
As mentioned above, this case study has
raised a major concern about the measurements 7. CONCLUSIONS
of any given system and the different points of
view of simulation strategists and systems Simulation modelling and experiments are used
widely and for a variety of purposes. This paper
1216 Deshpande, Jenkins, and Ta,ylor
joins a growing body of simulation work in the Winter Simulation Conference, ed. J.D.Tew et
client-server environment. The paper analysed aI, 1272-1279, Boston: The Society for
the client-server model to relate it to the seven- Computer Simulation.
layers of OSI model and suggested that a Krantz, S. 1995. Real World Client/Server.
similar, layer-based approach be used in the Gulf Breeze, FI: Maximum Press.
simulation exercise. The benefits of this Law, A.M. and McComas, M.G. 1994.
approach are in terms of clearer understanding Simulation of Communications Networks. In
of the client-server models, possibility of using Proceedings of the 1994 Winter Simulation
commercially available simulation packages, Conference, ed. J.D.Tew et aI, 166-170,
and a sharp focus on the issues of software Boston: The Society for Computer
metrics. The modelling exercise alone is worth Simulation.
the effort to clarify the issues to the software McBeath, D.F. and Keezer, W.S. 1993.
community. The client-server environment is Simulation in Support of Software
still unfamiliar to many people and causes Development. In Proceedings of the 1993
difficulties in understanding since it engages Winter Simulation Conference, ed. Evans,
many rapidly-changing technologies. G.W., Mollaghesemi, M., Russell, E.C.,
Simulation modelling makes the client-server Biles, W.E., 1143-1151. Baltimore, MD:
models much more tractable and thus should Association for Computing Machinery.
prove to be of great benefit overall. Mitrani, I. 1987. Modelling of computer and
communication systems. Cambridge:
REFERENCES Cambridge University Press.
Naylor, T.H., Balintfy, J.L, Burdick, D.S. and
Banks, J. and Carson, J.S. 1984. Discrete- Chu, K. 1966. Computer Simulation
Event System Simulation. Prentice-Hall: Techniques. John Wiley:
Boar, B.H. 1993. Implementing Client/Server North, K. 1996. Perfonnance Testing, ODBC,
Computing: A Strategic Perspective, New and Native SQL APls. In Dr Dobb's
York, NY: McGraw-Hill. Sourcebook, Vol 21, Issue 13, (January-
Booth, G.M. 1981. The Distributed System February), 17-21.
Environment. New York: McGraw-Hill. Pidd, M. 1992. Computer Simulation in
Gartner Group. 1994. Client/Server Computing Management Science. John Wiley and Sons:
in the 1990s, Stamford,CT: Client/server Robinson, J. 1994. Capacity and Performance
Logical View Personal Advisory Service. Analysis of Computer Systems. In
Gold, J. 1993. Simulation aims to predict Proceedings of the 1994 Winter Simulation
software perfonnance. Software Magazine. Conference, ed. J.D.Tew et ai, 34-41, Boston:
July: 15-19. The Society for Computer Simulation
Infonnation Exchange Steering Committee Rumekasten, M. 1994. Simulation of
(IESC). 1995. Client/Server Computing in Heterogeneous Networks. In Proceedings of
the Australian Public Service: The Next the 1994 Winter Simulation Conference, ed.
Wave? Canberra: Department of Finance, J.D.Tew et aI, 1264-1271, Boston: The
Australian Federal Government. Society for Computer Simulation
Jain, R. 1991. The Art of Computer Systems Shen, J. and S. Butler. 1994. Performance
Performance Analysis. New York, NY: John Modeling Study of a Client/Server System
Wiley and Sons. Architecture. In Proceedings of the 1994
Jiang, Y., Cao, J. and Gupta, G.K. 1992. Winter Simulation Conference, ed. J.D.Tew et
Dynamic Distributed Query Processing aI, 1280-1287, Boston: The Society for
Through Query Migration. In Research and Computer Simulation.
Practical Issues in Databases, Proceedings of Smith, C.U. 1990. Performance Engineering of
the 3rd Australian Database Conference, ed. Software Systems. Reading, MA: Addison-
B. Srinivasan and J. Zeleznikov, 197-209. Wesley.
Melbourne: World Scientific. Stallings, W. and Van Slyke, R. 1994. Business
Komatsu, T., Wakayama, H. and Nose, J. 1994. Data Communications. 2nd edition. New
Model Description in the INSYDE Simulator York, NY: Macamillan.
for Evaluating Large-scale Computer System Szymankiewicz, J., McDonald, J and Turner, K.
Performance. In Proceedings of the 1994 1988. Solving Business Problems by
Use of Simulation to Test Client-Server AJodels 1217
AUTHOR BIOGRAPHIES