Published on

  • Be the first to comment

  • Be the first to like this

No Downloads
Total views
On SlideShare
From Embeds
Number of Embeds
Embeds 0
No embeds

No notes for slide


  1. 1. Client/Server Computing (the wave of the future) Rajkumar BuyyaSchool of Computer Science & Software Engineering Monash University Melbourne, Australia
  2. 2. AgendaWhy client server ?ModelsArchitectureToolsApplicationsConclusions
  3. 3. A simple definitionA simple definition of CS is“ server software accepts requests for data from client software and returns the results to the client”
  4. 4. Elements of C-S Computing a client, a server, and network st ue q Re Client Server Network Re su ltClient machine Server machine
  5. 5. Where Operations are DoneIn CS Relationship “most of theapplication processing is done ona computer (client side), whichobtains application services (suchas database services) fromanother computer (server side) ina master slave configuration
  6. 6. CS-Focus is on In client-server computingmajor focus is on SOFTWARE
  7. 7. Application Tasks User Interface User Interface Presentation Logic Presentation Logic Application Logic Application Logic Data Requests & Results Data Requests & ResultsPhysical Data ManagementPhysical Data Management
  8. 8. Client (dumb) - Server Model Server e okClient str ey K Presentation Logic Network Di Application Logic sp lay s DBMS
  9. 9. True Client-Server Model Server e ok Client str ey K Application LogicPresentation Logic Network Pr o Re ces DBMS su s e d lts
  10. 10. Distributed Client-Server Model Server rie ed Client u e ss Q o ce s Pr Application LogicApplication Logic Network Pr o Re ces DBMSPresentation Logic su s e d lts
  11. 11. Client-server computing is distributedaccess, not a distributed computing.
  12. 12. 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 transportarguments results request message request message reply message reply message called procedure (client) NetworkLocal Procedure Call Remote Procedure Call
  13. 13. Flow Control in a Sychronous RPCClient Machine Server Machine Service Daemon Listening Client Program RPC Call Invoke Service Executes Service with Request Service CallClientWaiting Netw ork return() answer return ( ) reply Request Completed May be the same machine
  14. 14. Multithreaded Server Server Process Client Process Server ThreadsClient Process User Mode Kernel Mode Message Passing Facility
  15. 15. Categories of ServersFile ServerData ServerCompute ServerDatabase ServerCommunication ServerVideo Server
  16. 16. File ServerFile Servers manage a work group’sapplication and data files, so that theymay be shared by the group.Very I/O orientedPull large amount of data off the storagesubsystem and pass the data over thenetworkRequires many slots for networkconnections and a large-capacity, fasthard disk subsystem.
  17. 17. Compute ServerPerforms Application logic processingCompute Servers requires processors with high performance capabilities large amounts of memory relatively low disk subsystemsBy separating data from the computationprocessing, the compute server’sprocessing capabilities can be optimized
  18. 18. Cluster as Compute Server
  19. 19. Data ServerData-oriented; used only for datastorage and management Data ServerSince a data server can serve morethan one compute server, compute-intensive applications can be spreadamong multiple severs ComputeDoes not prefer any application Serverlogic processingPerforms processes such asdata validation, required as partof the data management function.Requires fast processor, large amountof memory and substantial Hard diskcapacity.
  20. 20. Cluster as High Availablity Data Server Data ServerComputeServer
  21. 21. Database ServerMost typical use of technology in client-serverAccepts requests for data, retrieves the datafrom its database(or requests data fromanother node)and passes the results back.Compute server with data server provides thesame functionality.The server requirement depends on the size ofdatabase, speed with which the database mustbe updated, number of users and type ofnetwork used.
  22. 22. Communication ServerProvides gateway to other LANs, networks& ComputersE-mail Server & internet serverModest system requirements multiple slots fast processor to translate networking protocols
  23. 23. Internet Server PC clientInternet Server Local Area Network UNIX workstations
  24. 24. Distributed processingapplication connects to remotedatabase SQL* Forms SQL *Net TCP/IP UNIX ServerDistributed database application SQL *Netconnects to local database which TCP/IPconnects to remote database SQL * Forms ORACL E SQL *Net TCP/IP ORACLE Database Configurations
  25. 25. Ethernet era Intergalactic era client/server client/server First Wave Second Wave Third Wave Database servers File Distributed servers w ar e up objects gro TPtors i m on1982 1986 1990 1994 1998
  26. 26. The Client/Server Infrastructure Client Middleware Server Service Specific SQL/IDAPI TxRPC Mail ORB ObjectsGUI/OOUI DSM Groupware SNMP CMIP DME TP NOS monitor Directory Security Distributed file RPC Messaging Peer-to-peer DBMSDSM Transport Stack DSM NetBIOS TCP/IP IPX/SPX SNAOperating System Operating System
  27. 27. Thank You ...Thank You ... ?