You will the following topic through this blog –
What is client server architecture?
Before we explain client server architecture and you start reading words such as servers, service, network, data, and files, and start feeling overwhelmed with jargon, let us first understand about this architecture in layperson’s terms.
The notion of client-server architecture can be understood by the analogy of ordering a pizza for delivery. You call the store to order a pizza and someone picks up the call, takes your order, and then delivers it. Simple, right? Yes, this analogy pretty much answers the fundamental principle of client server architecture.
Simply put, two factors are involved :
- A server is the one who provides requested services.
- Clients are the ones who request services.
Client server architecture is a computing model in which the server hosts, delivers, and manages most of the resources and services requested by the client. It is also known as the networking computing model or client server network as all requests and services are delivered over a network. The client-server architecture or model has other systems connected over a network where resources are shared among the different computers.
Typically, client server architecture is arranged in a way that clients are often situated at workstations or on personal computers, while servers are located elsewhere on the network, usually on more powerful machines. Such a model is especially beneficial when the clients and server perform routine tasks. For example, in hospital data processing, a client computer can be busy running an application program for entering patient information, meanwhile the server computer can be running another program to fetch and manage the database in which the information is permanently stored.
Want to know more about Cyber Security. Check out our Cyber Security Tutorial on Intellipaat!
Get 100% Hike!
Master Most in Demand Skills Now !
Client server architecture example
Here are some of the client server model architecture examples from our daily life. Hope it helps you to understand the concept better.
- Mail servers: Email servers are used for sending and receiving emails. There are different software that allow email handling.
- File servers: File servers act as a centralized location for files. One of the daily life examples to understand this is the files that we store in Google Docs. The cloud services for Microsoft Office and Google Docs can be accessed from your devices; the files that you save from your computer, can be accessed from your phone. So, the centrally stored files can be accessed by multiple users.
- Web servers: Web servers are high-performance computers that host different websites. The server site data is requested by the client through high-speed internet.
Check out our Cybersecurity youtube Tutorial for getting in-depth Knowledge:
Components of client server architecture:
Essentially, three components are required to make client server architecture work. The three components are workstations, servers, and networking devices. Let us, now, discuss them in detail:
- Workstations: Workstations are also called client computers. Workstations work as subordinates to servers and send them requests to access shared files and databases. A server requests information from the workstation and performs several functions as a central repository of files, programs, databases, and management policies. Workstations are governed by server-defined policies.
- Servers: Servers are defined as fast processing devices that act as centralized repositories of network files, programs, databases, and policies. Servers have huge storage space and robust memory to deal with multiple requests, approaching simultaneously from various workstations. Servers can perform many roles, such as mail server, database server, file server, and domain controller, in client server architecture at the same time.
- Networking devices: Now that we know about the roles that workstations and servers play, let us learn about what connects them, networking devices. Networking devices are a medium that connects workstations and servers in client server architecture. Many networking devices are used to perform various operations across the network. For example, a hub is used for connecting a server to various workstations . Repeaters are used to effectively transfer data between two devices. Bridges are used to isolate network segmentation.
Also learn the difference between client-server architecture and Peer-to-Peer network from our blog.
How does client server architecture work?
So far, we have understood that client server architecture is made up of two elements, one that provides services and the other that consumes those services.
To get a clearer picture of the process, let us learn how the browser interacts with the server.
Please read the following steps for a better understanding of the process:
- The user enters the uniform resource locator (URL) of the website or file and the browser sends a request to the domain name system (DNS) server.
- The DNS server looks for the address of the web server and the DNS server responds with the IP address of the web server.
- After the DNS server responds, the browser sends over an HTTP or HTTPS request to the web server’s IP, which was provided by the DNS server.
- The server then sends over the necessary files of the website.
- Finally, the browser renders the files and the website is displayed.
To get in-depth knowledge about networking, join Intellipaat’s Cyber Security Certification to learn the basic concepts of networking, networking infrastructure, operations and many more!
Types of client server architecture
The functionality of client server architecture is in various tiers.
In this category of client server architecture, the architecture contains all kinds of settings, such as configuration setting and marketing logic, on a single device. While the diversity of services offered by 1-tier architecture makes it one of the reliable sources, handling such an architecture is difficult. This is primarily due to the data variance. It often results in replication of work. 1-tier architecture consists of several layers, such as presentation layer, business layer, and data layer, that are combined with the help of a unique software package. The data present in this layer is usually stored in local systems or on a shared drive.
This architecture has the best environment. In this architecture, the user interface is stored on the client’s side and the database is stored on the server, while database logic and business logic is maintained either on the client’s side or on the server’s side.
The 2-tier architecture is faster in comparison to the 1-tier architecture; this is because the 2-tier architecture does not have any intermediary between the client and the server. It is often utilized to avoid confusion between clients. One of the popular examples of 2-tier architecture is the online ticket reservation system.
Unlike 2-tier architecture that has no intermediary, in 3-tier client server architecture, a middleware lies between the client and the server. If the client places a request to fetch specific information from the server, the request will first be received by the middleware. It will then be dispatched to the server for further actions. The same pattern will be followed when the server sends a response to the client. The framework of 3-tier architecture is categorized into three main layers, presentation layer, application layer, and database tier.
All three layers are controlled at different ends. While the presentation layer is controlled at the client’s device, the middleware and the server handle the application layer and the database tier respectively. Due to the presence of a third layer that provides data control, 3-tier architecture is more secure, has invisible database structure, and provides data integrity.
N-tier architecture is also called multi-tier architecture. It is the scaled form of the other three types of architecture. This architecture has a provision for locating each function as an isolated layer that includes presentation, application processing, and management of data functionalities.
Preparing for a job interview. Check out our Top 50 Cyber Security Interview Questions!
Difference between peer-to-peer network and client server architecture
The following table lists five major differences between peer-to-peer architecture and client server architecture:
|Client server architecture||Peer-to-peer architecture|
|It has specific clients and servers.||There is no differentiation between clients and servers.|
|It has centralized data management.||It has its own data and applications.|
|The purpose is to share information.||Its main goal is to maintain connection among peers.|
|Data is provided only in response to a request.||In this network, peers have the authority to request as well as provide a service.|
|It is suitable for small as well as large networks.||It is suitable for less users, less than 10 devices.|
Enroll in our Ethical Hacking training course and learn Ethical Hacking from industry experts!
Advantages and disadvantages of client-server architecture
The advantages and disadvantages of client-server architecture are mentioned below:
|The centralized network has complete leverage to control the processes and activities.||If the primary server goes down, the entire architecture is disrupted.|
|All devices in the network can be controlled centrally.||It is expensive to operate because of the cost of heavy hardware and software tools.|
|Users have the authority to access any file, residing in the central storage, at any time.||This architecture requires particular OSs related to networking.|
|It provides a good user interface, easy file finding procedure, and management system for organizing files.||Too many users at once can cause the problem of traffic congestion.|
|Easy sharing of resources across various platforms is possible.||It requires highly technical stuff, such as server machines, for maintenance of the network.|
This article described how networking is an act of establishing strategic alliances by communicating and exchanging data with other individuals, computers, or organizations. Client server architecture is a part of a networking model that allows multi-user updates through a graphical user interface to a shared database. Organizations, big or small, use the power of networking to scale and digitize their businesses, market their products, and improve their knowledge of news and events in their particular industries.
If you have any questions, feel free to reach out to us in our Cyber Security Community!