an introduction to client server architecture
Download
Skip this Video
Download Presentation
An Introduction to Client/Server Architecture

Loading in 2 Seconds...

play fullscreen
1 / 21

An Introduction to Client/Server Architecture - PowerPoint PPT Presentation


  • 210 Views
  • Uploaded on

An Introduction to Client/Server Architecture . Dr. Farid Farahmand. A Brief History: Open Platform . The good old days Octopus-like mainframes Only a few venders to choose from Farms of disks where required Applications were specific for each machine Open platform

loader
I am the owner, or an agent authorized to act on behalf of the owner, of the copyrighted work described.
capcha
Download Presentation

PowerPoint Slideshow about 'An Introduction to Client/Server Architecture' - vicky


An Image/Link below is provided (as is) to download presentation

Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author.While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server.


- - - - - - - - - - - - - - - - - - - - - - - - - - E N D - - - - - - - - - - - - - - - - - - - - - - - - - -
Presentation Transcript
a brief history open platform
A Brief History: Open Platform
  • The good old days
    • Octopus-like mainframes
    • Only a few venders to choose from
    • Farms of disks where required
    • Applications were specific for each machine
  • Open platform
    • New client/server architecture
    • Open system allowed mix-and-match
      • Different application technologies could be purchased from different venders
      • Examples: server platform, client platform, network protocols, middleware software, etc.
what is client server c s computing
What is Client/Server (C/S) Computing
  • It started as PCs became more powerful
    • PCs were no longer dumb terminals
  • Provided an open and flexible environment
  • C/S is considered as a form of distributed software
distinct characteristics of c s
Distinct characteristics of C/S
  • Client-server is a computing architecture which separates a client from a server
  • It is almost always implemented over a computer network
  • The most basic type of client-server architecture employs only two types of nodes: clients and servers.
    • This type of architecture is sometimes referred to as two-tier.
    • It allows devices to share files and resources.
  • Server provides the service
  • Client is considered as the customer requesting the service
  • The server service can be shared among a number of clients
  • Clients must request or initiate the service
  • The location of the server in the network is transparent to clients
  • Transaction between C/S is message-passing based
  • C/S architecture is scalable
    • horizontally (more clients can added)
    • Vertically (more servers can be added)
  • The server is centrally maintained where as clients are independent of each other
systems with c s architecture
Client

Server

Client

Systems with C/S Architecture
  • File servers
    • File sharing and file processing
  • Data base servers
    • Passing file results
    • Example: Query in DBMS server
    • Typically one single request/reply
  • Transaction servers
    • Transaction server includes DBMS and transaction monitoring
    • Server has remote procedures run online by the client
  • web servers
    • Super-fat servers and thin clients
    • Uses HTTP protocol
    • Java was first to introduce interactive C/S forms

Internet

Application

Client

HTML

Server

Client

JAVA

client server models
Client/Server Models
  • Where to push the application to
  • Fat clients
    • The bulk of the application is running on the client
    • The client knows how the data is organized and where it is
    • Different clients access the same applications different ways
  • Fat servers
    • The server more complicated
    • The clients are less complex
    • More of the code runs on the server
    • The network interaction is minimized

Application

Client

Server

middleware software
Middleware Software
  • It is the (/) between client and server which glues them together
    • Allowing the client request for a service and the server providing it
  • Middleware can also be between server/server
  • Two broad classes
    • General
      • LAN servers, TCP/IP, Communication stacks, Queuing services, etc.
    • Application specific
      • Used to accomplish a specific task
      • Groupware specific: SMTP
      • Internet specific: HTTP
      • Database specific: SQL
two tier vs three tier architecture
Two-Tier vs. Three-Tier Architecture
  • Same basic idea as fat-client versus fat-server
  • Depends on how the application is divided between the server and the client
  • Two-tier servers
    • Examples: file servers and database server
    • In this case the process (application logic) is buried within the client or server (or both)
  • Three-tier servers
    • Examples: Web and distributed objects
    • In this case the process is run on the middle-tier – separated from the user and data interface
    • They can integrate the data from multiple sources
    • More robust and more scalable
client server building blocks
Middle

ware

Client

Server

Client/Server Building Blocks
  • Purpose
    • How to divide the application between the client and server
    • What are different functionalities of client and server
  • Basic client server model
    • Fits various applications
      • Small office
      • Small business
      • Enterprise
      • Global

Single Machine

Middle

ware

Client

Server

Middle

ware

Client

Server

Server

Client

Middle

ware

C/S

C/S

C/S

C/S

servers and client building blocks
Servers and Client Building Blocks

Client

Server

Middleware

Web Browser

GUI

DSM

OS

Web server

Groupware

DMBS

Etc.

Service-Specific; DSM

NOS (securit, peer-to-peer,

directory, distributed files);

Transport stack (TCP/IP)

NOS=Network operating system

server scalability
PC Server 

Asymmetric Multi-

processing 

Superserver

symmetric Multi-

processing 

Superserver

Multiservers

Server Scalability
server scalability12
Server Scalability
  • Superserver
    • A very powerful server
    • Single-server or multiserver
    • Each server can have a single processor or multiprocessor
    • Multiprocessing can be Asymmetric or Symmetric
  • Multiprocessing
      • Asymmetric: each processor is dedicated to a specific task
      • Fully symmetric (SMP): applications are divided into threads and threads are sent to available processors
        • Examples: 32-bit NT, Unix, NetWare
        • Requires 3 basic functionalities:
          • Global scheduling
          • I/O sharing structure
          • OS access sharing
  • Multiservers
    • Pool of servers, providing more processing power (also called a cluster)
    • They divide the task between different servers
  • Server lite
    • As opposed to full blown servers
    • Provides a background process on the client machine that can accept unsolicited networks request (refreshing database, synchronizing time, etc.)
os wars
OS Wars
  • General trends
    • More powerful PCs (fat PCs, Network PCs, Multimedia PCs)
  • Operating system applications
    • Embedded devices (cell phones)
    • Clients
    • Super clients
    • Servers
    • SMP servers
    • Clusters
  • OS players
    • DOS and Windows 3.x/95
    • JAVA OS
    • OS/2 Wrap
    • NT/XP/2000/2003/VISTA
    • NetWare (Novell’s, poor application server, fast file server)
    • Unix
    • Linux
    • Specialized parallel OS for clusters
client server networking model
Client/Server Networking Model
  • Networking in Linux follows the client/server model
    • Server provides the resource (web server)
    • Client talks to the server (browser, e-mail program)
  • Server has a corresponding program that communicates with the client (runs in the background)
    • In Windows the server program called service
    • In Linux the server program called daemon in Linux
unix linux
UNIX/Linux
  • UNIX was introduced in 1969
  • Linux is from the early 1990s
    • Based on MINIX
  • Three basic components
    • Kernel – central portion of OS
    • File system – provides input and output mechanisms
    • Shell – provides user interface
linux introduction
Linux Introduction
  • Source code is freely available
    • Developers can make changes
  • Available from a number of organizations (called disro)
    • Red Hat
    • Mandrake
    • SuSe
linux resource
Linux Resource
  • List of Linux compatible hardware:
    • http://www.linuxquestions.org/hcl/
  • List of hardware issues and forums for Linux
    • http://www.linuxcompatible.org/
  • Third-party utilities allowing Windows to read the drives of a Linux installation on the same machine
    • http://pro.mount-everything.com/
    • http://www.symantec.com/home_homeoffice/products/overview.jsp?pcid=sp&pvid=pm80
fedora linux
Fedora Linux
  • Two ways to obtain
    • Installation CD
    • Download and burn your own CD – Read to see how to burn a DVD
      • http://fedoraproject.org/wiki/Distribution/Download
  • Obtain a copy
    • http://download.fedora.redhat.com/pub/fedora/linux/core/6/i386/iso/
    • http://download.fedora.redhat.com/pub/fedora/linux/core/4/i386/iso/
  • Fedora core 6, i386 Intel x86 processor compatible, first CD – ISO image
    • FC-6-i386-disc1.iso
  • When you have dowloaded the ISO images, you need to burn them on CD/DVD
    • Popular Windows CD burning tools: http://iso.snoekonline.com/iso.htm
    • You can also use CD BurnerXP Pro http://www.cdburnerxp.se/
summary
Summary
  • Got it?
homework 1 linux monday
Homework 1 – LinuxMonday
  • Visit Fedora Core Web cite. What is the latest version of Fedora?
  • Burn a copy of Fedora Core 4 on CDs or DVD. You must have this in order to install Linux on your machine – You are not allowed to do the lab without your own CD.
  • Search for Linux Commands and obtain a one or two-page long list of some of Linux commands used with Fedora Core 4 version
  • In your own words, list 5-10 differences between Fedora Core 4 and Fedora Core 7 version. You must tabulate your answer.
  • Do a little research and briefly explain the sequence involved in installing Windows and Linux. What will you do if Windows is already installed?
  • NOTE: Submit a hardcopy only.
references
references
  • http://www.nakov.com/inetjava/lectures/part-1-sockets/InetJava-1.1-Networking-Basics.html
  • http://www.cisco.com/univercd/cc/td/doc/cisintwk/idg4/nd2011.htm on ISDN
  • Learn about 2-Tier and 3-Tier systems: http://www.sei.cmu.edu/str/descriptions/clientserver_body.html
ad