client server based computing

25
www.ithubpage.blogspot.com [CLIENT/SERVER BASED COMPUTING] A Seminar Report Submitted to M.J.P Rohilkhand University, Bareilly In Partial Fulfillment of Bachelor in Computer Application BCA III Year V Semester Submitted By: Mohammad Affan Department of Computer Applications IFTM, Lodhiput Rajput, Delhi Road, Moradabad

Upload: mohammad-affan

Post on 23-Jan-2015

1.185 views

Category:

Technology


2 download

DESCRIPTION

 

TRANSCRIPT

Page 1: Client server based computing

www.ithubpage.blogspot.com

[CLIENT/SERVER BASED COMPUTING]

A Seminar Report

Submitted to M.J.P Rohilkhand University, Bareilly

In Partial Fulfillment of

Bachelor in Computer Application BCA III Year V Semester

Submitted By: Mohammad Affan

Department of Computer Applications

IFTM, Lodhiput Rajput, Delhi Road, Moradabad

Page 2: Client server based computing

www.ithubpage.blogspot.com

CERTIFICATE

This is to certify that the Seminar Report entitle “Client/Server Based Computing” has been submitted by “Mr. Mohammad Affan” in partial in fulfillment for the requirement of the degree of Bachelor in Computer Applications BCA III Year, V semester for the academic Session 2012-13. This seminar work is carried out under the supervision and guidance of Mr. “xxx”, Asst. Professor, MCA department, I.F.T.M, Moradabad and he/ she has been undergone the indispensable work as prescribed by M.J.P Rohilkhand University, Bareilly xxx xxx Asst. Professor, H.O.D, Deptt. Of Computer Applications Deptt. Of ComputerApplications I.F.T.M, Moradabad I.F.T.M , Moradabad Date:

Page 3: Client server based computing

www.ithubpage.blogspot.com

ABSTRACT

This book was born of a need to demonstrate the benefits of distributed alternatives. Many developers of computer systems are becoming aware of client-server and other distributed architectures, but have never seen a working example of a system built to this model. This book provides that working example, using the tools, such as C and Oracle, that today's developers actually use.

Many organizations are acquiring large numbers of 80386 or other powerful microcomputers, but often with little idea of how to effectively integrate these with Oracle and other centralized database managers. In too many cases the micros end up as glorified terminals, with all the processing still done on the minicomputer or mainframe.

Other organizations that have tentatively adopted a client-server approach, have realized little benefit from the potential flexibility inherent in the model. With a powerful client PC, almost any imaginable user interface becomes possible, while still retaining access to centralized data under the control of a server. Moving an Oracle form developed for a character-oriented minicomputer to a PC is only the first step in realizing the benefits of the client-server architecture.

This book demonstrates the principles of client-server computing using a sample application that is intentionally a radical and liberating departure from the average business system. It shows, in simple form, the superior graphic capabilities of a PC-based user interface. More significantly, it shows that PC applications can be effectively integrated with central databases managed by real relational database management systems such as Oracle.

A central message of this book is that there are no set limits. You can have the security, data integrity and multi-user accessibility afforded by a centrally managed database, and still have the graphic and other sophisticated tools available on PCs and other single-user systems.

This book had its roots in the spring of 1989 with the second annual Synerlogic Database Derby. Each competitor was to construct a game, with ideally some connection to database technology. My winning entry was an early version of the sample application, SQL meTTTa, included in this book.

Shortly after this I was asked to develop a course on data communications. I decided to break SQL meTTTa into client and server portions, and discuss the communications hardware and software required to support the connection. The course became an introduction not only to data communications, but also to distributed systems and the client-server model. My efforts on the course also kindled a desire to write a book demonstrating the benefits of client-server computing.

Page 4: Client server based computing

www.ithubpage.blogspot.com

1. Introduction of client/server based computing

Several years ago, most organizations had mainframe – based computing, in which

mainframe computers were connected to the dumb terminals. These terminals were

unable to do any independent computing and had to totally rely on the mainframe for

data processing. As the year passed, Development of personal computers led to the

replacement of dumb terminals. However, the main processing work continued to be

performed on the mainframe computer. The improved computing capability of

personal computer was ignored to great extent. After due course of time, many

organization started to realize the potential of personal computer started to think about

the possibility of using it either by haring, or by splitting some of the processing

demands between mainframe and the personal computers. Client-server technology is

the outcome of this development.

Page 5: Client server based computing

www.ithubpage.blogspot.com

Client/server describes the relationship between two computer programs in which one

program, the client, makes a service request from another program, the server, which

fulfils the request. Although the client/server idea can be used by programs within a

single computer, it is a more important idea in a network. In a network, the

client/server model provides a convenient way to interconnect programs that are

distributed efficiently across different locations. Computer transactions using the

client/server model are very common. For example, to check your bank account from

your computer, a client program in your computer forwards your request to a server

program at the bank. That program may in turn forwards the request to its own client

program that sends a request to a database server at another bank computer to retrieve

your account balance. The balance is returned back to the bank data client, which

displays the information for you.

The client/server model has become one of the central ides of network computing.

Most business applications being written today use the client/server model. So does

the internet’s main programs, TCP/IP.

In marking, the term has been used

Learn more.

1. Networking resources

2. Networking administration

3. Network design

To distinguish distributed computing by smaller dispersed computers form The

“monolithic” centralized computing of mainframe computer, But this Distinction has

largely disappeared as mainframes and their applications have also turned to the

client/server model and becomes part of network Computing. In the usual

client/server model, one server, sometimes called a daemon, is activated and awaits

client requests

Page 6: Client server based computing

www.ithubpage.blogspot.com

2. Introduction to server-based computing.

Server-based computing (SBC) is a technology whereby applications are deployed,

managed, supported and executed on the server and not on the client. Instead only the

screen information is Trans misted between the server and client. This architecture

solves the many fundamental problems that occur when executing the applications on

the client itself.

In SBC environments hardware & software upgrades, application deployment

technical support, and data storage & backup are simplified because only the servers

need to be managed. Data and application reside on a few servers rather than on

hundreds or the us ands of clients. PCs become terminals and can be replaced by

simpler, less expensive e and most importantly easier to manage devices called “thin

clients.

Page 7: Client server based computing

www.ithubpage.blogspot.com

2.1 Benefits of server-based computing

1. Management- Administrators can deploy, manage and support applications much

more easily because they are held on a central server (or central server farm) and are

managed from a single point, simplifying application access and administration.

2. Device independence – Users can access their desktop and indeed any enterprise

Application from any type of client device

3. Remote Access- Users can access their desktop and enterprise applications from

anywhere on the network, or from home, or on the road.

4. Performance – Server based computing performs better than a web application or

using a client server model. These types of application require a lot of data to be sent

back and forth between server and the client. Because of the advanced compression

ratios achieved by protocols such as ICA, NX and RDP, Sending just the screen

update between the server and client is much faster.

5. Security- Server-based computing keeps all the data on secure server without it

being ‘spread out’ and to the less secure client computers. Furthermore the server is in

the server room, which is far more secure than on the user’s desk.

6. Less prone to viruses and security breaches – Servers are by definition better

managed and because the server OS is more secure, it’s far more difficult for a

computer to get infected by a virus.

7. Eliminated patch management of clients- Clients are not running widows there is

no need to patch the desktop computer on a regular basis.

8. Server-based computing reduces Total Cost of ownership (TCO) by as much as

50%.

9. Scalability- New servers and clients can easily be added to the network.

10. increased a availability – it’s easy to make the terminal servers fault to learn and

to perform load balancing. In addition, servers are inherently designed to be

2. 2 Server-based computing advantages in a nutshell. Server-based computing is currently considered as the most Efficient, flexible and

cost-effective solution for application delivery and administration.

Page 8: Client server based computing

www.ithubpage.blogspot.com

It boasts the following advantages:

Reduces desktop hardware investment

Significantly red uses administration staffing costs

Significantly red uses desktop maintenance costs

Virtually removes the need for desktop upgrades

Removes desktop operating system upgrades

Removes viruses from the desktop

Reduces training costs

Reduces bandwidth costs

Reduces or eliminates the need for remote office servers

Reduces user downtime while waiting for help desk response

Reduces system downtime through better redundancy and disaster recovery

capabilities

Applications available to all users anytime and anywhere

Quick expansion through ease of deployment

Enables standardization of corporate applications

Reduces risk of data loss since data is centralized and can be more easily backed up

End users will experience improved support

Helps prevent theft of company data

Reduces/Eliminates installation of non productive software such as games

3. What is thin client computing? Thin-Client Computing is a model where software applications (Like Word, excel

and outlook) and your data are stored on a central server instead of on each end-

users machine. The end-user then accesses application and their data through

almost any type of computing device (the “Thin-Cline” itself) which can be a

monitor, laptop, palm device, and so on, on a traditional computer network like

the one you currently have (also called client-server architecture), you have a

server that may store and back up the files, but the use of application like word

and excel rely on the stability and performance of the PC itself to operate. This

Page 9: Client server based computing

www.ithubpage.blogspot.com

type of traditional architecture is what has resulted in the well-worn path of

expensive upgrades and replacement of

PCS (also called “Fat” clients) to run the latest version everyday office application

nether “fat” clients in turn also need “Fat” (or expensive) connection to their serves

contrary to his, thin=client architecture keeps all of the work of running applications

on the servers us inexpensive devices can be used to access application and data. This

also makes for easier network administration freeing.

Your IT staff from performing redundant maintenance and low-level end user

support tasks. This is why thin=client computing results in considerable sect

savings in hardware software, bandwidth, and IT support.

Here are just a few of the benefits of thin-client technology out your technology

coast from 30%- 80$ by eliminating the need for “Fat” (expensive) client

computer and servers.

Free up your IT staff for more strategic work by eliminating a number of low-

level end-user support issues and problems. Most problem-solving can be

performed remotely without having to go on-site through a feature called

“shadowing” Note dealing with end-user issues accounts for as much as 70% of

the average IT admistrator’s time.

Virtually eradicate virus threats, data loss, and security breaches. After all, which

makes more sense: Keeping your valuable data on pc hard drives scattered around

the worked or keeping that data in a central data center where its managed, backed

up, redundant, and accessible to user through a secure internet connection form

any where?

Provide secure reliable access to your network for remote offices, work from hoe

employees, and employees that are frequently on the road. Improve the reliability

of your network and reduce unexpected downtime and costly problems.

Dramatically increase the speed of your network and the productivity of your

workers. Stop and-user from getting themselves – ad your company – in trouble

Thin client server based solutions thin-client computing in quickly gain gin

acceptance because of its ability to solve some of the most vexing IT problems

facing business owner today

Page 10: Client server based computing

www.ithubpage.blogspot.com

3.1 What are thin clients?

A thin client is a general term for a device that relies on a server to operate .it

provides a display device keyboard and mouse And basic processing power in order

to interact with the server it does not store any of the data locally its very thin in

features And functionality hence the term thin client A thin client often does not have

local storage and requires little processing resources Thin client hardware can be a

converted old pc, a dedicated thin client device or simply a new low cost pc with a

thin Client OS installed. The fact that little processing power is needed and that the

hardware can be used for longer periods of time on a verge6years instead of 3 years

means that the capital expenses for desktops is significantly red used.

Most importantly the overhead cost associated with administration

Maintenance support security and installation are significantly lower than with a

traditional pc.

3. 2 how does it work?

The server –based computing technology revolves around 3 main components

A multi user operating system that allows multiple users to log on and work

concurrently using applications in separate Protected sessions on a single

server.

Examples of terminal server are Microsoft terminal service 2000/2003 citric

metafand 2X terminal server for Linux.

A thin client, which runs a minimal amount of software, but at least one

program that connect to the terminal server. The thin client and the terminal

server can be running completely different operating systems.

For example-Linux based thin client are currently the most popular way to

connect to a window terminal server on the thin client there will be program

such as desktop. (Linux) or remote desktop connection (window) to connect

the terminal server

Page 11: Client server based computing

www.ithubpage.blogspot.com

A protocol to allow to the terminal server terminal server and thin client to

connect to communicate and send only the key stroke, mouse click and screen

update across the network.

Typically, multiple client program share of service of a computer server program.

Both client program and server program are often part of a larger program of

application relative to the internet, your web browser is a client program that request

(the sending of web page files) from a web browser (which technically is called a

HTTP server) in another computer somewhere on the internet. Similarly, your

computer with TCP/IP installed allows you to make client request for files FTP

servers in other computer on the internet.

Other program relationship models include master/slave, with one program being in

charge of all other program, and peer to peer, with either of two programs able to

initial a transaction.

4. Client -server architecture client/server refers to a computing in which software component interact with each

other to provide a system that can be designed for and used by multiple users . Let

provides a way of separating the functions of an application into two or more

different parts . typically in client - server architecture ,the client is a personal

computer while the server is a high performance based mainframe machine

,however , the same machine can work both client and server. LAN practice, it is

common practice to install a server at one end of area network (LAN) and the clients

on other ends. the client is a requesting machine and the server works as

supplying machine.

client server technology allows distributed computation, analysis and presentation

between personal computers and one or more high computing machines on network

. LAN this architecture, each function of an application stays on the computer (client-

Sever) which is more competent of managing the particular function .many services

used

Nowadays over the internet are based on client server architecture. For example,

transfer

Protocol (FTP) uses client–server technology to exchange files between systems.

LAN this

Page 12: Client server based computing

www.ithubpage.blogspot.com

, aft client requests a file (that exists on another computer) and ftp server (the system where the file exists) handles the requested by supplying the file to the client Client-Server Architecture Is Generally of Two Types;

1. 2-Tier Architecture

2. 3-Rier Architecture

4.1. 2-Tier Architecture; Client –server application initially started with 2-tiered

architecture which composed of a client and an application server. Majority of first

generation client –server systems are built on 2- tier architectures, where a client

provides a front –end graphical user in terrace (Gull) to the user and work According

to the user’s action to perform requests of a server running on A different machine.

The window applications are generally developed using this technology. a common

implementation of 2- tier client server architecture is a fat client –thin architecture, in

which application logic resides in the client machine and server simply reports the

result of queries.

2-tier architecture is where a client talks directly to a server, with no intervening

server. Let is typically used in small environments (Less Than 50users).

The two–tier architecture is like client server application the direct communication

takes places between client and server. There is no intermediate between client

and server here the communication is one to one let see the concept of 2-Tier time

application.

For example: when a student wants to know his grades in 2-tier client-server

architecture, the client application formulates query fires to a database server. The

database server responds with the grades of all students. Now client application used

all the data to calculate the concerned student’s grade, and displays it as per his

request. The 2-tires of 2-tier architecture are.

Page 13: Client server based computing

www.ithubpage.blogspot.com

1. Database (Data tier): the database serves up data based on SQL queries submitted

by the application.

2. Client Application (Client tier): the application on the client computer son sums

the data and presents it in a readable format to the student.

So, in client application the client writes the program for saving the record in SQL

server and thereby saving the data in the database.

Advantages:

Understanding and maintenances is easier.

Disadvantages:-

Performance will be reduced when there is more users

A common error in client/server development is to prototype and application in a

small, two-tier environment, and then scale up by Simply adding more user to the

server. These approaches will usually result in an ineffective system, as the server

becomes over whelmed. To properly scale to hundreds or thousands of users, it is

usually necessary to move to three-tier architecture.

4.2 Three-tier architecture: 2-tier architecture work very well when database size is

very small but is performs very poorly in case of large database. This is due to the fact

that, for every query generated by a client, the data base server has to work out large

queries for the client, application to manipulate. This is a very large drain on network

resources. The 3-tier architecture attempts to overcome some of the limitations (Such

as poor utilization) of the 2-tier schemes by making presentation, processing, and data

separate and entities.

The component of 3-tier architecture can be thought in the form of 3-tier such as

1. presentation-tier (client)

Page 14: Client server based computing

www.ithubpage.blogspot.com

2. Functionality-tier (Application server)

3. Date-tier (Data server)

Presentation tier: client sits at presentation tire generates all requests.

Functionality tier: it is the middle tier and implements protocols used for processing

the

request. It has the functions for client layer and it is used to make communication

faster

between client and data layer. It provides the business processes logic and the data

access.

Data-tier: it has the database. It implement back-end database and send responses to

the client.

Typically, middle-tier functionality servers are multithreaded and can be accessed by

multiple clients simultaneously even thought the clients is running separate

applications. Web applications are good examples of 3-tier architecture.

Advantages:

1. Easy to modify without affecting other modules

2. Fast communication

3. Separating the application and database functionality means better load

balancing.

4. Adequate security policies can be enforced within the server tiers without

hindering the clients.

5. Performance will be good in three tier architecture

Page 15: Client server based computing

www.ithubpage.blogspot.com

4.3 Difference between Two tier architecture and three...

1. Server will have more processing power and disk space than the PC.

2. In three-tier architecture, the data and applications are split onto separate

servers, with the server-side distributed between a database server and an

application server. The client is a front end, simply requesting and

displaying data. Reason being that each in modern two-tier architecture,

the server holds both the application and the data. Server the application

resides on the server rather than the client, probably because the will be

dedicated to

processing either data or application requests, hence a more manageable

system and less contention for resources will occur.

5. Advantages of client/server computing The client/server computing model provides the means to integrate personal

productivity applications for an individual employee or manager to specific business

data processing needs to satisfy total information processing requirements for the

entire enterprise.

Page 16: Client server based computing

www.ithubpage.blogspot.com

5.1 Enhanced data sharing

Data that is collected as part of the normal business process and maintained on a

server is immediately available to all authorized users. The use of structured query

language (SQL) to define and manipulate the data provides support for open access

from all client processors and software.SQL grants all authorized users access to the

information through a view that is consistent with their business need. Transparent

network services ensure that the same data is available with the same currency to all

designated users.

5.2 Integrated services

In the client/server model, all information that the client (user) is entitled to use

available at the desktop. There is no need to change into terminal mode or log into

another processor to access information .all authorized information and processes are

directly available from the desktop interface. The desktop tools-e-mail, spreadsheet,

presentation graphics, and word processing – are available and can be used to deal

with the information provided by application and database server resident on the

network. Desktop users can use their desktop tools in conjunction with information

made available from the corporate system to produce new and useful information.

5.3 Sharing resources among diverse platforms

The client/server computing model provides opportunities to achieve true open system

computing. Application may be created and implemented without regard to the

hardware platforms or the technical characteristics of the software. Thus, users may

obtain client services and transparent access to the services provided by database,

communication, and applications servers. Operating systems software and platform

hardware are independent of the application and masked by the development tools

used to build the application.

5.4 Masked physical data access

When SQL is used for data access, users can access information from database

anywhere in the network. From the local PC, local server, or wide area network

(WAN) server, data access is supported with the developer and user using the same

data request. The only noticeable difference may be performance degradation if the

Page 17: Client server based computing

www.ithubpage.blogspot.com

network bandwidth is inadequate. Data may be accessed from dynamic random-

access memory (D-RAM), from magnetic disk, or from optical disk, with the same

SQL statements. Logical tables can be accessed-without any knowledge of the

ordering of columns in a table for application program manipulation, without regard

to its physical storage format

6. Client/Server Development Tools Many constructions projects fail because their developers assume that a person with

a tool box full of carpenter’s tools is a capable builder. To be a successful builder, a

person must be trained to build according to standards. The creation of standards to

define interfaces to the sewer, water, electrical utilities, road, school, and community

systems is essential for successful, cost-effective building. We do not expect a

carpenter to design such interfaces individually for every building. Rather pragmatism

discourages imagination in this regard. By reusing the models previously built to

accomplish integration, we all benefit from cost and risk reduction.

Computer systems development using an SDE takes advantage of these same

concepts: Let’s build on what we’ve learned. Let’s reuse as much as possible to save

development costs, reduce risk, and provide the users with a common “look and feel.”

Selecting a good set of tools affords an opportunity to be successful. Without the

implementation of a comprehensive SDE, developers will not achieve such success.

The introduction of a whole new generation of object technology based tools for

client/server development demands that proper standards be put in place to support

shared development, reusable code, and interfaces to existing systems, security, error

handling, and an organizational standard “look and feel”. As with any new

technology, there will be changes. Developers can build application systems closely

tied to today’s technology or use an SDE and develop application that can evolve

along with the technology platform.

7. Client/Server application For contrast it is worth mentioning client/server applications as a form of remote

client/server application is a piece of software that runs on a client computer and

makes requests to a remote server. Many such applications are written in high-level

visual programming languages where UI, forms, and most business logic reside in the

Page 18: Client server based computing

www.ithubpage.blogspot.com

client application. Often such applications are database applications that make

database queries computing, although strictly speaking they are not "remote guess" as

I have defined them here. the to a remote central database server (this can, however,

get much more complicated than that and involve other communication methods)

In a database application, data related number crunching can occur on the remote

database server where the processing is close to physical data. An example of a

database query might be to return the sum of a field named "dollar amount" where the

field name year is "2001". There may be hundreds of thousands of records but the

client computer does not have to worry about fetching or sorting through all of them

itself. The database server will sort through that and just return one small record with

the result to the client.

A client / server application can be cross platform if it is written in a cross platform

language, or it can be platform specific. In the case of a cross platform language there

is an advantage that the application can potentially provide a user interface that is

native in appearance to the OS or platform environment it is running under.

Client / server applications, either run locally on a client computer or through

something like Terminal Server, Citrix, or VNC, can work closely with the underlying

OS to provide a rich, powerful, robust, easy to use interface.

By running locally on a client computer applications can also work with other local

hardware such as scanners, bar code readers, modems, removable media, accelerated

video for multimedia, or 3d video acceleration.

Depending on the programming environment in use, applications can be very easy

to develop and maintain, often through a visual interface where commonly needed

functionality is provided through built in objects or properties.

The above screen shot is of Microsoft Access showing its built in table design, form

design, and report design modes. Even semi-complicated reports and forms can be

created with little or no coding and it is easy enough for just about anyone to use. This

is one reason why MS-Access is so popular in corporate environments (And why

Access databases tend to spring up like weeds). When linked to a remote database

server, such as an Oracle or MS-SQL server, it can act as a client / server application.

Multiple users can also open an MS-Access database file over a network share, but

this is not considered Client / Server (and due to performance and data integrity

issues, should be avoided).

Page 19: Client server based computing

www.ithubpage.blogspot.com

An issue of client/server is that the application must be installed on each user’s

computer. Depending on the complexity of the program, the environment it is written

in, and the care the developer took to package the program, this can be as easy as

creating a shortcut to an executable on a shared network drive or it can be as hard as

spending hours

Installing and configuring runtime software and components on each client computer.

7.1 Types of client/server applications Client/server application can be categorized by class, based on where most of the

processing is done. Each class requires different hardware and software capabilities

on the client, the server and the network.

7.1.1 Host based processing

The most basic class of client/server application has a presentation layer running on

the desktop machine with all the application processing running on the server/host.

The presentation layer provides the user with an easy-to-use interface the processing

power of the desktop machine is used to produce this interface, which requires a great

deal of machine resources.

Host-based processing application requires less functionality on the client than the

other classes of client/server applications. Because the server/host application is

Page 20: Client server based computing

www.ithubpage.blogspot.com

interacting with the client software in the same manner as the application interfaced

with a non-intelligent terminal these applications also needless coordination.

7.1.2 Client-Based Processing

The client-based processing classes of client/server applications put on the

applications logic on the client machine, with the exception of data validation

routines, which are coded into the DBMS on the server. These applications have been

designed to take advantage of the new technology and architecture, instead of just

simulating host/terminal interactions, as is the case with hosed-based processing

applications.

This type of environment requires coordination between the platforms and the

software running on the platforms. The use of the network becomes more

sophisticated. More planning for the entire information structure is required. User can

access data on any node. Many of the host functions, such as security and reliability,

must be built into these new client server applications. Networks, software, and

hardware from a variety of vendors need to communicate.

Most current client/server applications would be considered client-based processing

applications.

7.1.3 Cooperative Processing

The third class of client/server applications uses a fully cooperative peer-to-peer

processing approach. In a true cooperative approach, all components of the system are

equal and can request or provide services to each other. The processing is performed

wherever computing resources (devices, CPU, and memory) are available. A single

system could act as a client for other servers and a server for other clients.

Data manipulation may be performed on both the client and the server whichever is

more appropriate. For example to produce a report the data sort might be performed

on the server and the sorted data passed to the client. The client formats the data and

executes any run time calculations, such as row totals or column computations.

Application data may exist on both the client and the server. Local data, as well as

server data, might be used in generating a report. Cooperative processing requires a

great deal of coordination and there are many integrity and control issues that must be

dealt with.

Client-based processing applications do some cooperative processing because data

validation, stored procedures, and triggers may be executed on the server, the server

Page 21: Client server based computing

www.ithubpage.blogspot.com

handles only valid data requests. In addition, the transaction or request is sent over the

network only once, minimizing network traffic.

8. Disadvantages of client server based computing

Client-server architecture is as old as networking, but it has its disadvantages.

Client-server architecture is the original model for networked communications. It is a

simple, well-known procedure dictating the order or contact between two computers.

However, advancements in networking theory have created other models that offer

better performance than the traditional client-server architecture.

8.1Client-Server Procedures

The client-server architecture has a few simple rules. First, the client needs a resource

or service and the server provides it. The client always initiates contact with a request.

The server will not do anything unless it receives a request. The client sends a request

and the server replies with a response, which contains the requested service or

resource. Servers can be in contact with many clients simultaneously, whereas clients

contact only one server at a time.

8.2 Detractions

The client-server model optimizes the use of resources by centralizing facilities like

file storage, or applications. This means that failure of the server knocks out a lot of

the network's capabilities. The server owner needs to be vigilant about making

backups, because failure of the server could ruin the business. A client, dependent on

Page 22: Client server based computing

www.ithubpage.blogspot.com

the services of a server, is unusable without a network connection. This requires a

user to have extra expertise in another area of IT -- not only computing, but also

networking. The requirement for backup hardware and software, extra security

measures and specialist technicians can erode the cost benefit of the client-server

model.

8.3 Adaptation

The client-server architecture advanced into a three-tier client-server architecture and

then on into a multitier, or n-tier architecture. In this model, a server requires

reference to another server in order to serve the request of the client. An example is a

Web server that refers to a database server in order to deliver content. However, this

model is also vulnerable to failure as the client still only has contact with one server

and it is the responsibility of that server to glean necessary information or resources

form other servers. If the first server is out of action, the client does not get the server.

If the second server is down, the first server cannot complete its duties.

9. Introduction to Client Server Networks 9.1 Client and Server Devices

Page 23: Client server based computing

www.ithubpage.blogspot.com

Client/server networking grew in popularity many years ago as personal computers

(PCs) became the common alternative to older mainframe computers. Client devices

are typically PCs with network software applications installed that request and receive

information over the network. Mobile devices as well as desktop computers can both

function as clients.

A server device typically stores files and databases including more complex

applications like web sites. Server devices often feature higher-powered central

processors, more memory, and larger disk drives than clients.

9.2 Client-Server Applications

The client-server model distinguishes between applications as well as devices.

Network clients make requests to a server by sending messages, and servers respond

to their clients by acting on each request and returning results. One server generally

supports numerous clients, and multiple servers can be networked together in a pool

to handle the increased processing load as the number of clients grows.

A client computer and a server computer are usually two separate devices, each

customized for their designed purpose. For example, a Web client works best with a

large screen display, while a Web server does not need any display at all and can be

located anywhere in the world. However, in some cases a given device can function

both as a client and a server for the same application. Likewise, a device that is a

server for one

Application can simultaneously act as a client to other servers, for different

applications.

Some of the most popular applications on the Internet follow the client-server model

including email, FTP and Web services. Each of these clients features a user interface

(either graphic- or text-based) and a client application that allows the user to connect

to servers. In the case of email and FTP, users enter a computer name (or sometimes

an IP address) into the interface to set up connections to the server.

9.3Local Client-Server Networks

Many home networks utilize client-server systems without even realizing it.

Broadband routers, for example, contain DHCP servers that provide IP addresses to

Page 24: Client server based computing

www.ithubpage.blogspot.com

the home computers (DHCP clients). Other types of network servers found in home

include print servers and backup servers.

9.4 Client-Server vs. Peer-to-Peer and Other Models

The client-server model was originally developed to allow more users to share access

to database applications. Compared to the mainframe approach, client-server offers

improved scalability because connections can be made as needed rather than being

fixed. The client-server model also supports modular applications that can make the

job of creating software easier. In so-called "two-tier" and "three-tier" types of client-

server systems, software applications are separated into modular pieces, and each

piece is installed on clients or servers specialized for that subsystem.

Client-server is just one approach to managing network applications the primary

alternative, peer-to-peer networking, models all devices as having equivalent

capability rather than specialized client or server roles. Compared to client-server,

peer to peer networks offer some advantages such as more flexibility in growing the

system to handle large number of clients. Client-server networks generally offer

advantages in keeping data secure.

CONCLUSION

This essay is not meant to dissuade a CIO from client/server computing but rather to

encourage them to 'look before they leap,' to give it thought and research the available

options. Client/server technology is here to stay and it will change the way the

business world computes However it has to be thought through, as a badly designed

client/server computing environment will only realize the costs and not the benefits.

The clients in the above examples receive a subset of the temperature data collected

by the server application. The server only returns the temperature data currently

collected by the server. Therefore, it does not provide the client with any data between

the last transfers of data. To provide all data to a client, the server must buffer the

data, keep track of what data has been provided to each client, and transfer all the

buffered temperature data to each client.

The parts of the client requests service and the server process client requests and

responds to them. This basic principle remains constant throughout the different

Page 25: Client server based computing

www.ithubpage.blogspot.com

server architectures. However, the complexity of the server varies depending on the

particular application requirements of a client/server system are the client, server, and

the network.

The client can be a personnel computer (PC) or the soon to be released network

computer (NC.) The server can be anything from a mainframe to a PC but is usually a

platform suited for a specific application or task. The network could be as simple as

two computers connected by modem or as complicated as several thousand computers

linked by a combination of fiber optics, coaxial cable, and wireless communications.

The client and server might be in the same room (possibly even the same physical

machine) or half a world apart. The difference between client/server computing and

the mainframe computing that it often supersedes is that the client is not a dumb

terminal. The client has its own operating system and can manage inputs (keyboard,

mouse, etc..) and outputs (display, local printer, sound, etc..) without the server. The

server's role is to wait passively for a client to request a service. This distribution of

processing allows the client to offer a more user friendly environment (graphical user

interface, local applications, mouse, etc.) than a dumb terminal and allows the servers

to be less complex an expensive than current mainframe systems. Overall client/server

computing leads to a flexible and dynamic computing environment.

BIBLIOGRAPHY

1. Client server computing “Patrick smith Steve”

2. Client server computing “Guengerich”

www.webopedia.com/TERM/C/client_server_architecture.html

www.2x.com/.../thinclientserver/2XThinClientServer-Introduc.html www.neobit.ro/our-solutions/server-based-computing-sbc.html