Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.

Client server based computing


Published on

Published in: Technology
  • Be the first to comment

Client server based computing

  1. 1. [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
  2. 2. 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 Asst. Professor, Deptt. Of Computer Applications I.F.T.M, Moradabad Date: xxx H.O.D, Deptt. Of ComputerApplications I.F.T.M , Moradabad
  3. 3. 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 PCbased 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.
  4. 4. 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.
  5. 5. 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
  6. 6. 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.
  7. 7. 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.
  8. 8. 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 endusers 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
  9. 9. 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 lowlevel 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
  10. 10. 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
  11. 11.  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 (clientSever) 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
  12. 12. , 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.
  13. 13. 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)
  14. 14. 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
  15. 15. 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.
  16. 16. 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
  17. 17. network bandwidth is inadequate. Data may be accessed from dynamic randomaccess 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
  18. 18. 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).
  19. 19. 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
  20. 20. 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
  21. 21. 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
  22. 22. 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
  23. 23. 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
  24. 24. 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 clientserver 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
  25. 25. 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”   