Client/Server Computing: (The Wave of The Future)
Client/Server Computing: (The Wave of The Future)
Client/Server Computing: (The Wave of The Future)
Rajkumar Buyya
School of Computer Science & Software Engineering
Monash University
Melbourne, Australia
rajkumar@dgs.monash.edu.au
Agenda
A simple definition of CS is
“ server software accepts requests for
data from client software and returns
the results to the client”
Elements of C-S Computing
st
ue
q
Re
Client
Server
Network
Re
su
l t
Client machine
Server machine
Where Operations are Done
In client-server computing
major focus is on SOFTWARE
Application Tasks
User
UserInterface
Interface
Presentation
PresentationLogic
Logic
Application
ApplicationLogic
Logic
Data
DataRequests
Requests&
&Results
Results
Physical
PhysicalData
DataManagement
Management
Client (dumb) - Server Model
Server
ke
Client
tr o
ys
Ke
Presentation Logic
Network
Di Application Logic
sp
lay
s
DBMS
True Client-Server Model
Server
ke
Client
tr o
ys
Ke
Application Logic
Presentation Logic Network
Pr
o
Re ces
DBMS
su sed
lts
Distributed Client-Server Model
Server
rie ed
Client
ue s s
Q o ce
s
Pr
Application Logic
Application Logic
Network
Pr
o
Re ces
DBMS
Presentation Logic su sed
lts
Client-server computing is distributed
access, not a distributed computing.
RPC Look and Feel like Local Calls
results= calling results= called
bar(arguments) procedure bar(arguments)procedure
arguments
arguments
results
results
calling results=
procedure bar(arguments)
(client) client stub server stub
network transport network transport
arguments
results
request message
request message
reply message
reply message
called
procedure
(client)
Network
Local Procedure Call Remote Procedure Call
Flow Control in a Sychronous RPC
Client Machine Server Machine
Service Daemon Listening
Client
Program
RPC Call
Invoke Service
Executes
Service
with Request Service Call
Client
Waiting Netw
ork
return() answer
return ( )
reply Request Completed
Server Process
Client Process
Server
Threads
Client Process
User Mode
Kernel Mode
Message Passing
Facility
Categories of Servers
File Server
Data Server
Compute Server
Database Server
Communication Server
Video Server
File Server
File Servers manage a work group’s
application and data files, so that they
may be shared by the group.
Very I/O oriented
Pull large amount of data off the storage
subsystem and pass the data over the
network
Requires many slots for network
connections and a large-capacity, fast
hard disk subsystem.
Compute Server
Compute
Server
Database Server
PC client
Internet Server
Local Area
Network
UNIX workstations
Distributed processing
application connects to remote
database
SQL*
Forms
SQL *Net
TCP/IP
UNIX Server
SQL *
Forms
ORACL
SQL *Net E
TCP/IP
ORACLE
Database Configurations
Ethernet era Intergalactic era
client/server client/server
Database
servers
File Distributed
servers re
w a
u p objects
gro TPitor
s
n
mo
TP
NOS monitor
Directory Security Distributed file