An introduction to client server architecture
1 / 21

An Introduction to Client - PowerPoint PPT Presentation

  • Updated 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

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

PowerPoint Slideshow about 'An Introduction to Client' - 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 l.jpg
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 l.jpg
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 l.jpg
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 l.jpg




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








Client server models l.jpg
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




Middleware software l.jpg
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 l.jpg
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 l.jpg





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

















Servers and client building blocks l.jpg
Servers and Client Building Blocks




Web Browser




Web server




Service-Specific; DSM

NOS (securit, peer-to-peer,

directory, distributed files);

Transport stack (TCP/IP)

NOS=Network operating system

Server scalability l.jpg

PC Server

Asymmetric Multi-

processing 


symmetric Multi-

processing 



Server Scalability

Server scalability12 l.jpg
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 l.jpg
    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 l.jpg
    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 l.jpg

    • 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 l.jpg
    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 l.jpg
    Linux Resource

    • List of Linux compatible hardware:


    • List of hardware issues and forums for Linux


    • Third-party utilities allowing Windows to read the drives of a Linux installation on the same machine



    Fedora linux l.jpg
    Fedora Linux

    • Two ways to obtain

      • Installation CD

      • Download and burn your own CD – Read to see how to burn a DVD


    • Obtain a copy



    • 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:

      • You can also use CD BurnerXP Pro

    Summary l.jpg

    • Got it?

    Homework 1 linux monday l.jpg
    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 l.jpg


    • on ISDN

    • Learn about 2-Tier and 3-Tier systems: