The concept of shared resources among computing machines was initially introduced during the late 1980s and the early 1990s. Organizations used to work on mainframe centric systems before then. With time, the platform shifted to distributed client server systems. The client server model experienced popularity due to the fact that it made collaborative computing easier, manageable and practical. Additionally, the model also cut costs for organizations since it was cheaper than the older systems.
In a computer network, there are two or more computers or devices that share resources with each other. Organizations and individuals deploy different types of networks according to their requirements. In a client-server network system, there are two more computers or devices called clients that are connected to a central computer which acts as the server. The server shares its resources with the client computers. Both the server and client computers are installed with specialized operating systems and software to enable them to participate in the operations of the network.
Servers may be used for storing different programs, applications and information that make it easier for client machines to operate without much burden to their resources by freeing up computing resources at the client computers and by taking advantage of computing resources at the server. Organizations deploy different types of client computers and servers depending on their requirements. This paper discusses different client-server architectures and their potential application. The paper also highlights the way a client-server networking systems are being used in organizations and how they benefit those organizations.
There are a number of benefits of using client server networking systems over the older models such as peer to peer systems or mainframe centric systems. In peer to peer networks, all machines share equal responsibility of data processing whereas in the client server model, only the server machine has this responsibility. Also, the performance of the client server networking model is better than the peer to peer networking model because of the server acts dedicatedly instead of handling other tasks. Another benefit of the client server model is that it is easier and efficient to maintain backups than in the other models.
The best thing about the client server networking system is that the client computer does not have any concern about the performance of the other client computers, whether switched on or off. Client computers are only concerned with the centralized server system from where they can access files and other resources. In the event that the server goes down then the other client computers will also not be able to access the required resources. For this reason, organizations set up different servers for different tasks instead of relying wholly on one server. For instance, a single server may be used for email, another server used for database, application, and web and so on. Big organizations also keep a backup of resources in another server which can be switched on as an alternative in the event that such back up is needed. Another advantage of the client / server networking system is in security. Networking administrators can create, manage, and enforce security measures in the client server model and then require the users to provide login usernames and passwords to access the network. This limits access and creates a level of security in the network. Though this can be achieved in the other models of networking, in the client server model, it is easier to execute and track any security breaches that may occur and take corrective action.
There are different operating systems for the client server networking. The top among these operating systems are Linux, Apple, and Microsoft. There is a different version of operating system installed at client and server side. Following section will discuss the client and server sides separately.
For client side, computer systems with general specifications may be used. However such computers must have the capacity to run the necessary programs that they access from the server. A client computer that has to be used for specific purpose should be installed with the designated software, for example, email clients are meant to retrieve mails from mail servers, web clients connect to web servers and to get web pages and so on. An internet browser sends a request to web server to retrieve HTML page and thus acts a client application.
At an individual level, client computers may also be used for the purpose of playing online or multiplayer video games. Previously, dumb terminals were used as client computers and were incapable of running stand-alone programs. There are different types of clients currently being used at organizations and at the individual level. The main types of clients are thick, thin, and hybrid clients.
Thick or Fat client computers are those ones that are not dependent completely on the servers but perform most of the data processing operations by themselves. They have a large set of resources and are capable of storing and running programs. An example of this would be a client computer running an AutoCAD program and but only shares the solution over the network. The thick client usually carries out the development tasks.
A thin client mainly depends on the server and shares its resources. It only presents or displays the processed data that is provided by the application servers. A client computer using web applications like Office Web Apps lies under the category of thin clients.
Hybrid client is the blend of both types of client computers i.e. thick and thin. The hybrid client model processes some of the data by itself but at the same time also dependent on the server for storage. Hybrid client computers are mainly used for the online video games.
A server machine take requests from the client machine, processes the information and sends the requested information back to the client. Once the request processing has been done, then the server takes the request from the next client. The server machine is always on and ready to serve the client requests at all time. If the server machine goes down, then it cannot take on the requests of the clients and thus system stops working. Therefore, organizations should put in place several measures to keep the system functioning one of them being having alternative servers installed to avoid any risk.
The server computer may also be a regular computer with general specifications but having a fast processor, more storage space and a memory chosen specifically for a server. Because server machines may have to serve a large number of clients at a time, they are usually equipped with 2 to 8 processors and large memory installed. In addition server machines are equipped with a redundant array of independent drives, network interface cards and uninterrupted power supplies. Server machines are installed with dedicated software and an operating system specially developed for server machines. Usually server machines are installed with Windows Server, Linux or UNIX operating system. In order to choose an appropriate operating system, it is essential to establish that the machine fulfills hardware requirements of the operating system. For instance, it may require a specific range of processing speed, hard drive and a RAM.
After installation of an operating system, it is important to connect the server to the internet. For this, the server machine should be connected to a router. After connecting to the internet the operating system can be upgraded. Microsoft regularly upgrades its operating system and this is done through the internet thus the need for an internet connection for the server machine.
Different programs have to be installed on the server machines that act as resources to serve to the clients. In order to assign an IP address to each machine, the server should be installed with a DHCP program. This server automatically assigns IP addresses to each machine that is on the network. There are other options like the use of manual assignment of IP addresses.
Organizational Servers are placed in secured areas like data centers and locked closets or server rooms. It is because servers usually hold the most important information of the organization and therefore it is only fair that they are provided with extra protection. Since servers are not accessed on normal basis by the users they should be locked in secure locations. Servers carry out high levels of processing may heat up. Servers should therefore be placed in air conditioned area to keep them operating at the appropriate temperatures.
There are different types of servers, the major types being iterative servers and concurrent servers. An iterative server serves one client at a time. When a client sends a request to the iterative server, it processes it and responds back to the client accordingly. Meanwhile the other clients wait for the server to complete the request. Once the server is done with all the request processing it then takes on the request of the other client waiting in a queue. The concurrent servers provide an efficient processing of requests. They take on the multiple clients’ requests and process them concurrently. Processing one request at a time may take longer and so as to speed up the process, a server takes multiple requests at a time.
Types of client server architecture
There are mainly two types of Client / Server Architecture; the 2-tier and the 3-tier architecture.
In two tier architecture, the client directly connects with the server. The functioning in this type of architecture is very simple but it has some performance and security loop holes. For example, Web Server and the Internet Explorer use the two tier architecture but to resolve its security issues Secure Socket Layers or SSL are used.
In three tier architecture, there is intermediary software which is installed between the client and server machines. This software is also called the middleware. Organizations make use of middleware in order to make the model efficient and secure. Middleware performs security checks on the clients’ requests and also conducts load balancing when there is a heavy load on the server. In maintaining security, the middleware checks on the client’s request, authenticates it and then forwards it to the server. Similarly, when the server is done with the processing, it sends the response back to the middleware which then it forwards to the client. Web Sphere and Web Logic software are the middleware that are usually used between web browsers and web servers.
Small organizations intending to make use of a client server networking system can easily implement it and enjoy a number of advantages. This system provides a centralized backup, internet monitoring, and intranet capability. Small organizations may not even need to get separate server machines for these services since one server can manage. However, in medium sized and large organizations, many servers can be deployed for different tasks. For example, organizations can deploy separate servers for FTP, email, Web services, and applications.
Small, medium and large organizations make use of client server networking system because of the fact that it provides a tight system security and easy options to take on file backups. Organizations such as telecom companies, medical billing organizations, and many other businesses have to store data in bulk that various teams access at a time. Users or clients accessing a database server request for the information, the server processes the request and retrieves the data from the database and provides updated information to the client. If this data and applications were installed separately on every machine then it would require a lot of physical space and high processing speeds. Working over separate machines would also lead to discrepancies and redundant information. For example making updates and additions to the data would not be easily transferred to all the users and thus make the data inconsistent. This is one of the reasons why organizations are mainly dependent on servers for storing their files and applications.
Organizations install file and print servers in order to store users’ documents and files. Users or clients save their data and files on the shared network. Each user is allocated a dedicated storage space on server and they can access data from others as well depending upon the permission privileges set by the administrator. Organizations also install printer drivers on server and users or clients send their print requests to the printer server and thus it serves all of the clients in an organization.
Organizations using client server networking system also install their applications on the server. Thus, they do not need to install applications on individual client machines. The clients would only have to connect to the network and access the applications they want to use the same way they would if these applications were residing on their own machines. Clients can create new files, spreadsheets, documents and databases while being on the network.
Today, organizations have been able to achieve huge targets and this has become possible partly because of the advancements in technology. Client server networking system is one of these technologies. This model has given an opportunity to organizations to improve their productivity and efficiency without many technological issues. In past, organizations had to spend much on computing resources instead of focusing on their main goals. It was difficult for organizations to manage their data, secure it and use it productively but now with the client server central repository model, many of these issues have been resolved. Now organizations can focus more on their main goals. Organizations also do not need to spend much on hardware and software programs as they did in past. They only have to purchase programs for server systems and rest of the client machines share its resources. Thus, it saves much on organizational expenses.
Bestofmedia Team. LAN 101: Networking Basics. 14 September 2011. Web. 12 December 2013. <http://www.tomshardware.com/reviews/local-area-network-wi-fi-wireless,3020-2.html>.
CSC. Advantages of Client / Server Computing . n.d. web. 12 December 2013. <http://220.127.116.11/library/csc02.htm>.