The concept of shared resources among the machines was first introduced during an era of late 1980s and early 1990s. First, organizations used to work on mainframe-centric systems but with time, the platform shifted to distributed client server systems. Client Server model experienced popularity due to the reason that they makes collaborative computing easier, manageable and practical. In addition to their working benefits, client server model also cut costs for the organization in comparison to 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 as according to their requirements. In a client/ server network system, there are two or more computers called as clients are connected with the central computer that acts as a server. As the name depicts, server computer serves the client computers. Server computer share its resources with the client computers. Server and client computes are installed with specialized operating systems and softwares in order to participate in a network.
Servers may be used for storing different programs, applications, and database that makes it easier for client machines to operate without much burden. Organizations deploy different types of client computers and servers depending upon their requirements. This paper discuss about different client server architectures, and where they can be used. Moreover, it also highlights the way client server networking system is being used at organizations and how they are beneficial for them.
There are number of benefits of client server networking system as compared to the older models like peer to peer or mainframe centric systems. In a peer to peer network, all machines share equal responsibility of data processing whereas in client server model, only server machines have this responsibility. Client server networking system is better than peer networking from aspect of security. CS model provides high security whereas peer networking lacks. Moreover, the performance of client server model is better than the peer model because in prior model, server acts dedicatedly instead of handling other tasks. Maintaining backups is also easier and efficient in client server model.
The best thing about the client / server networking system is that, client computer do not have any concern about other computers or clients whether they are switched on or off. Client computers only have their concern with the centralized server system from where they can access files and other resources. However, if the server goes down, then other client computer would 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 example, different server for email, database, application, and web and so on. Big organizations also keep a backup of resources over another server which can be switched on as an alternative. Another plus point of the client / server networking system is the security. Networking administrators can create, manage, and enforce security measures. The user then would have to enter login and password credentials before accessing the network. If it is wrong then access is denied.
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, it must have the capacity to run necessary programs that they access, offered by the server computer. A client computer that has to be used for specific purpose is 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, the dumb terminals were used as client computers which were incapable of running stand-along programs. These dumb terminals were used as clients for time sharing mainframe computers. There are different types of clients now being used at organizations and an individual level. The main types of clients are thick, thin, and hybrid clients.
Thick or Fat client computers are the one that are not mainly dependent on the servers but performs most of the data processing operations by itself. It has large set of resources and capable of storing and running programs. For example, a client computer running an AutoCad program and only shares the solution over the network is a thick client. Thick client usually does the development tasks.
Thin client mainly depends on the server and share its resources. It only presents or display 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.
Server Computing
Server machines takes request from the client machine, process the information and send the requested information back to the client. Once the request processing has be done then the server takes request of the next client. Server machine is always on and ready to serve the client requests 24/7. If server machine goes down, then it cannot take on the requests of the clients and thus system stops working. Therefore, the organizations take on several measures to keep the system functioning. Alternative servers are installed to avoid any risk.
Server Computer may also be a regular computer with general specifications but usually machines with fast processors, more storage space, and memory are chosen for the servers. Because server machines have to serve hundreds of clients at a time, therefore usually server machines with 2 to 8 processors and large memory that is about in gigabytes is installed. In addition server machines are equipped with Redundant Array of Independent Drives, Network Interface Cards, and redundant power supplies. Server machines are installed with dedicated software and an operating system that are 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, first it has to be checked whether the machine fulfills hardware requirements of the operating system for example, it needs 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 an internet. For this, the server machine should be connected to the router. After connecting to an internet, an operating system is upgraded. Microsoft regularly upgrades its operating system so for example if the server machine is installed with Microsoft Windows Server 2008 then it may also be upgraded by connecting to the website .
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 DHCP program. This server automatically assigns IP addresses to each machine that is on the network. There are other options as well like manual assignment of IP addresses.
Organizational Servers are placed in secured areas like data centers and locked closets or server rooms. It is because of the reason; servers hold most important information of the organization and therefore they are provided with extra protection. Moreover, they are not accessed on normal basis by the users therefore locked closets are reserved only for servers. Servers does lots of processing as they serve number of clients therefore the machines may warm up; for this reason, servers are placed in air conditioned rooms that keeps the system under low temperature.
There are different types of servers mainly including Iterative servers and Concurrent servers. Iterative server is the simplest types of servers. This type of server serves one client at a time. When the client sends request to server, it processes it and responds back to the client accordingly. Meanwhile the other clients wait for the server to complete one request. Once, the server is done with all request processing then it takes on request of the other client waiting in a queue. In contrast to the iterative server, concurrent servers provide an efficient processing of the request. They take on the multiple clients’ requests and process them concurrently. Since, processing one request may take longer so in order to speed up process, server takes on more number of requests at a time.
Types of Client / Server Architecture
There are mainly two types of Client / Server Architecture including 2-tier and 3-tier architecture.
- In two tier architecture, client directly connects with the server. Though, the functioning in this type of architecture is very simple but it has some performance and security loop holes. For example, Web Server and an Internet Explorer uses two tier architecture but to resolve its security issues, Secure Socket Layers or SSL are being installed.
- In three tier architecture, there is intermediary software being installed between the client and server machines. This software is also called as 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 does load balancing when there is heavy load on the server. For maintaining the security, the middleware checks on the client request, authenticate it and then forward it to the server. Similarly, when the server does all the processing it sends back the response to the middleware and then it forwards to the client. WebSphere and WebLogic softwares are the middleware that are usually used between the Web browsers and Web server.
Small organizations intending to deploy client/ server networking system can easily implement it and have number of advantages. This system provides centralized backup, internet monitoring, and intranet capability. Small organizations even do not need to get separate server machines for these services but one server may also manage them all. However, in medium to large organizations, many servers can be deployed for different tasks, for example organizations 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 tight system security and easy options to take on file backups. Organizations like telecom companies, medical billing organizations, and many other businesses have to store bulk of data that various teams access at a time. Users or clients accessing database server, requests for the information, server processes the request and retrieve 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 have required lots of space and high processing speed. Moreover, working over separate machines would also lead to discrepancies and redundant information; for example users making updates and additions to the data would not be easily transferred to all the users and thus makes the data inconsistent. That’s the reason 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 with the dedicated storage space on server and they can access others data 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 just like the way they are residing on their own machines. Clients can create new files, spreadsheets, documents and databases while being on the network.
Conclusion
Today, organizations have been able to achieve big targets and this has become possible only because of the advancements in technology. Client server networking system is one of the examples set by technology. This model has given an opportunity to organizations to speed up their productivity and efficiency without caring much for the technological issues. In past, organizations had to spend much on other tasks as well instead of main goals. It was difficult for organizations to manage their data, secure it and uses it productively but now with client server central repository model, many issues have been resolved. Now organizations can focus more towards their main goals. Moreover, organizations also do not need to spend much on hardware tools and software programs as like in past. They only have to purchase programs for server systems and rest of the client machines share its resources. Thus, it saves much of the organization expenses. Technology is advancing and bringing improvement in client server model. So it is recommended that organizations, which have yet not deployed client server networking system, just go for it.
Works Cited
Bestofmedia Team. LAN 101: Networking Basics. 14 September 2011. <http://www.tomshardware.com/reviews/local-area-network-wi-fi-wireless,3020-2.html>.
CSC. Advantages of Client / Server Computing . n.d. <http://117.55.241.6/library/csc02.htm>.