11
Client/Server Computing Client/Server Computing BALAJI.M Faculty, TSM What Is Client/Server Computing? What Is Client/Server Computing? ? Client/server is a term used to describe a computing model for the development of computerized systems. This model is based on the distribution of functions between two types of independent and autonomous processes; servers and clients. A client is any process that requests specific services from server processes. A server is a process that provides requested services for clients. Both clients and servers can reside in the same computer or in different computers connected by a network. ? The key to client/server power is where the requested processing takes place. ? In mainframe systems, all processing takes place on the mainframe, and the terminal is used to display the data screens. ? The client/server environment provides a clear separation of server and client processes. A Basic Client/Server Computing Model Figure 1 The Forces That Drive C/S Systems The Forces That Drive C/S Systems ? The Changing Business Environment ? The Need for Enterprise Data Access ? End User Productivity Gains Based on the Use of Data Resources ? Technological Advances

Client/Server Computing - Weeblyerpstudymaterial.weebly.com/uploads/9/6/3/0/963038/... · 2018-09-27 · Client/Server Computing BALAJI.M Faculty, TSM What Is Client/Server Computing??

  • Upload
    others

  • View
    12

  • Download
    0

Embed Size (px)

Citation preview

Page 1: Client/Server Computing - Weeblyerpstudymaterial.weebly.com/uploads/9/6/3/0/963038/... · 2018-09-27 · Client/Server Computing BALAJI.M Faculty, TSM What Is Client/Server Computing??

Client/Server ComputingClient/Server Computing

BALAJI.M

Faculty, TSM

What Is Client/Server Computing?What Is Client/Server Computing?? Client/server is a term used to describe a computing model

for the development of computerized systems. This model is based on the distribution of functions between two types of independent and autonomous processes; servers and clients.A client is any process that requests specific services from server processes. A server is a process that provides requested services for clients. Both clients and servers can reside in the same computer or in different computers connected by a network.

? The key to client/server power is where the requested processing takes place.

? In mainframe systems, all processing takes place on the mainframe, and the terminal is used to display the data screens.

? The client/server environment provides a clear separation of server and client processes.

A Basic Client/Server Computing Model

Figure 1

The Forces That Drive C/S SystemsThe Forces That Drive C/S Systems

? The Changing Business Environment

? The Need for Enterprise Data Access

? End User Productivity Gains Based on the Use of Data Resources

? Technological Advances

Page 2: Client/Server Computing - Weeblyerpstudymaterial.weebly.com/uploads/9/6/3/0/963038/... · 2018-09-27 · Client/Server Computing BALAJI.M Faculty, TSM What Is Client/Server Computing??

The Evolution of Client/Server ISThe Evolution of Client/Server IS

?Mainframes in the 1970s? Complex, proprietary OS? Dumb terminals? Restricted access? Hardware and software dictated IS? Centralized, complex MIS department

bureaucracy

?Microcomputers in the 1980s? Easy-to-use software (e.g., spreadsheet)? Micro-based database systems? Data still in mainframes? “Manual download”

The Evolution of Client/Server ISThe Evolution of Client/Server IS

? Intelligent Terminals? PCs connected to the mainframe

? Electronic download? Proliferation of snapshot versions of corporate DB

? Islands of information

? Local Area Network? Network operating systems (NOS)

? Powerful PCs? Common platform for both end users and MIS

specialists

The Evolution Of The Computing Environment

Managerial Expectations of C/S SystemsManagerial Expectations of C/S Systems

?Client/Server Benefits?Platform-independent system

development?Optimized distribution of processing

activities among different platforms?Use of user friendly, cost effective, and

compatible techniques, methodologies, and specialized tools

Page 3: Client/Server Computing - Weeblyerpstudymaterial.weebly.com/uploads/9/6/3/0/963038/... · 2018-09-27 · Client/Server Computing BALAJI.M Faculty, TSM What Is Client/Server Computing??

?MIS Expectations of Client/Server Benefits? Reduced development and implementation costs

? Reduced development time and increased programmer productivity

? Extended system life cycle through scalability and portability

? Reduced system operational cost

? Change of MIS function from development to end user support

? Enhanced information deployment

Managerial Expectations of C/S SystemsManagerial Expectations of C/S Systems Client/Server ArchitectureClient/Server Architecture

? Three Components of Client/Server Architecture

? The client is any computer process that requests services from the server. It is also known as the front-end application.

? The server is any computer process providing services to the clients. The server is also known as the back-end application.

? The communication middleware is any computer process(e s) through which clients and servers communicate. It is also known as middleware or communications layer.

Client/Server ArchitectureClient/Server Architecture

?Client/Server Principles? Hardware independence

? Software independence? Operating systems? Network systems? Applications

? Open access to services

? Process distribution? Scalability and flexibility? Interoperability and integration

Client/Server ArchitectureClient/Server Architecture

?Client Components

? Powerful hardware

? An operating system capable of multitasking

? A graphical user interface (GUI)

? Communications capability

Page 4: Client/Server Computing - Weeblyerpstudymaterial.weebly.com/uploads/9/6/3/0/963038/... · 2018-09-27 · Client/Server Computing BALAJI.M Faculty, TSM What Is Client/Server Computing??

Client/Server ArchitectureClient/Server Architecture

?Server Components

? File services

? Print services

? Fax services

? Communications services

? Database services

? Transaction services

? Miscellaneous services

Two-Tier Client-Server ArchitectureTwo-Tier Client-Server Architecture

Database

SQL statements

Query results

Database server

Three-Tier Architecture (Middleware Server)

Three-Tier Architecture (Middleware Server)

Database

SQL statements

Query Results

Middleware server Database server

Client/Server ArchitectureClient/Server Architecture

?Characteristics of Server Hardware? Fast CPU

? Fault-tolerant capabilities? Expandability of CPU, memory, disk, and peripherals

? Bus support for multiple add-on boards

? Multiple communications options

?Server Process Benefits from the Client/Server Architectural Principles? Location independence

? Resource optimization

? Scalability? Interoperability and integration

Page 5: Client/Server Computing - Weeblyerpstudymaterial.weebly.com/uploads/9/6/3/0/963038/... · 2018-09-27 · Client/Server Computing BALAJI.M Faculty, TSM What Is Client/Server Computing??

Parallel vs. Distributed SystemsParallel vs. Distributed Systems

? Tightly-coupled systems : “parallel processing”? Processors share clock, memory, run one OS

? Frequent communication

? Loosely-coupled systems: “distributed computing”? Each processor has own memory, runs independent OS? Infrequent communication

Network TopologiesNetwork Topologies

Star TopologyStar Topology Bus TopologyBus Topology

Page 6: Client/Server Computing - Weeblyerpstudymaterial.weebly.com/uploads/9/6/3/0/963038/... · 2018-09-27 · Client/Server Computing BALAJI.M Faculty, TSM What Is Client/Server Computing??

Ring TopologyRing Topology Mesh Topology (Web)Mesh Topology (Web)

Hybrid TopologyHybrid Topology

OSI Reference ModelOSI Reference Model

Page 7: Client/Server Computing - Weeblyerpstudymaterial.weebly.com/uploads/9/6/3/0/963038/... · 2018-09-27 · Client/Server Computing BALAJI.M Faculty, TSM What Is Client/Server Computing??

Information Flow Through The OSI Model

?The Application Layer– Contains a variety of protocols which are

commonly needed.– Everything in this layer is application

specific.– This layer provides application services

for File transfer, email etc.

?The Presentation layer• Concerned with the syntax and

semantics of the information transmitted• An example presentation service can be

encoding data in a standard agreed upon way by defining abstract data structures.

?The Session layer– Allows ordinary data transport and enhanced services– Establishes, manages, terminates connection between

applications– Also provides synchronization by establishing check points

during data transfer

?The Transport Layer– Accept data from the session layer, split it up into smaller

units and pass them to the network layer– Creates a distinct n/w connection for each transport

connection, an error free point-to-point channel.– Transport header possess the information of which message

belongs to which connection in case of multiple connections– Also establishes flow control among communicating hosts.

• The Network Layer• Determines how packets are routed from the source to the

destination• Routes can be of static, decided for each session, highly

dynamic.• Performs congestion control • Error handling & Packet sequencing

• The Data Link Layer– Breaks the data into data frames and processes

acknowledgement frames– Creates frame boundaries by attaching special bit patterns– Takes care of duplicate, damaged and lost frames– Establishes flow control in transmission.– Also takes care of control access in shared channels

Page 8: Client/Server Computing - Weeblyerpstudymaterial.weebly.com/uploads/9/6/3/0/963038/... · 2018-09-27 · Client/Server Computing BALAJI.M Faculty, TSM What Is Client/Server Computing??

?Physical Layer– Concerned with transmission of raw

bits over the channel– Also specifies the voltage levels for

the bits, rules of transmission , establishing connection, no of pins used on the connector etc.

– Ethernet, token ring, RS232 and ATM are protocols with physical layer components

Web Database ConnectivityWeb Database Connectivity

? Internet commerce depends heavily on database access for websites.

? Web database connectivity allows a database to be manipulated through a Web page.

? A user may use a Web form to change a database or view a report generated from a database.

Internet BasicsInternet Basics

? Network of networks? Uses standard protocols: TCP/IP

? TCP: splits messages into packets? IP: routes messages

? Each computer on the Internet has a unique numeric address known as an IP address.

Internet and Intranet RelationshipInternet and Intranet Relationship

Firewall

TCP/IPTCP/IP

TCP/IP

TCP/IP

TCP/IP TCP/IP

Intranet

Internet

Page 9: Client/Server Computing - Weeblyerpstudymaterial.weebly.com/uploads/9/6/3/0/963038/... · 2018-09-27 · Client/Server Computing BALAJI.M Faculty, TSM What Is Client/Server Computing??

World Wide WebWorld Wide Web

? Most popular application on the Internet? Supports browsing pages located on any computer on the

Internet? Hypertext Transport Protocol (HTTP) establishes a session

between a browser and a Web server. ? Each page has a unique address known as a URL.

Web Page Request CycleWeb Page Request Cycle

User clicks hyperlink.

Web server locatespage.

1

3

Web server sends file.

Browser sends request toweb server.2

4

Browser displays file.5

Client/Server ArchitectureClient/Server Architecture

?Database Middleware Components? Application programming interface (API)

interfaces with the client application.

? The database translator translates the SQL requests into the specific database server syntax.

? The network translator manages the network communications protocols.

? Three Main Benefits of Using Middleware? Access multiple databases

? Database server-independent

? Network protocol- independent

Client/Server ArchitectureClient/Server Architecture

?Middleware Classifications

? Messaging-oriented middleware (MOM)

? Remote-procedure- call-based (RPC-based) middle ware

? Object-based middleware

Page 10: Client/Server Computing - Weeblyerpstudymaterial.weebly.com/uploads/9/6/3/0/963038/... · 2018-09-27 · Client/Server Computing BALAJI.M Faculty, TSM What Is Client/Server Computing??

The Quest for StandardsThe Quest for Standards

?Standard-Setting Organizations? IEEE (Institute of Electrical and Electronics

Engineers)? Network and hardware

? ANSI (American National Standards Institute)? Programming languages (e.g., COBOL, SQL)

? ISO (International Standards Organization)? OSI (Open Systems Interconnection) reference

? Complete SDLC support from planning to implementation and maintenance

? Team development support

? Support for third-party development tools

? Prototyping and rapid application development (RAD) capabilities

? Support for multiple platforms

? Support for middleware protocols

? Multiple network support

Client/Server Implementation IssuesClient/Server Implementation Issues

Client/Server Implementation IssuesClient/Server Implementation Issues

?An Integrated Approach

? Six Phases of Client/Server Decision

1. Information systems infrastructure self -study

2. Client/Server infrastructure definition

3. Selecting a window of opportunity

4. Management commitment

5. Implementation

6. Review and evaluation

Application Functional Logic Components

Page 11: Client/Server Computing - Weeblyerpstudymaterial.weebly.com/uploads/9/6/3/0/963038/... · 2018-09-27 · Client/Server Computing BALAJI.M Faculty, TSM What Is Client/Server Computing??

Functional Logic Splitting In Four Client/Server Architectural Styles

Client/Server Architectural StylesClient/Server Architectural Styles

?Notes on Figure 12.16? The file server architectural style reflects a setup in

which the client does most of the processing, whereas the server side only manages the data storage and retrieval.

? The data management logic is split between the client and the server computers in the database server architectural style.

? The transaction server architectural style permits the sharing of transaction details between the client and the server.

? The application server architecture makes it possible to enjoy the benefits of client/server computing even when the client computers are not powerful enough to run some of the client/server applications.