The client server model is one of the most common ar­chi­tec­ture concepts in network tech­nol­o­gy. It regulates the in­ter­ac­tion between the client and server. It sim­pli­fies everyday tasks such as sending HTTP requests to web servers or trans­fer­ring files via FTP.

What is a client server model?

The client server model, also known as the “client server principle”, is a com­mu­ni­ca­tion model that enables the dis­tri­b­u­tion of tasks within a network.

A server is hardware that provides the necessary resources for other computers or programs but can also be a computer program com­mu­ni­cat­ing with the clients. A server accepts the client’s requests, processes them and provides the required response. Different types of clients exist. The computer or a software program com­mu­ni­cate with the server. The client sends requests and receives responses from the server. The in­ter­ac­tion between server and client is depicted in the client server model.

Tip

Looking for a server? Consider renting a server from IONOS and choose between Virtual Private Servers, Cloud Servers and Dedicated Servers.

What are the features of the client server principle?

The client server model has some char­ac­ter­is­tic features. There is a clear dis­tri­b­u­tion of tasks between the clients and the servers. The server is re­spon­si­ble for providing services. It executes the requested services and delivers the expected response. The client uses and requests the provided services. It thus receives the response from the server

In the client server model, one server serves multiple clients. The server thus processes multiple requests from different clients. To do this, it provides its service per­ma­nent­ly and passively. A client actively requests the services from the server and initiates the server tasks.

Here, a physical computer can be both a client and a server. The only decisive factor is its role within a network and whether the computer sends or receives requests for services and resources.

The rules according to which com­mu­ni­ca­tion between clients and servers takes place are defined in the form of protocols. Depending on the task, different network protocols for data exchange are used. Depending on the area of ap­pli­ca­tion, different network types exist.

What are the pros and cons of the client server model?

The concept of dis­trib­ut­ing tasks and services within a network through the client server model has some pros and cons.

Pros

Central ad­min­is­tra­tion

A major pro follows from the central ad­min­is­tra­tion. The server is at the center of the network. All users or clients use it. Important resources such as databases are located on the server and centrally ac­ces­si­ble. This sim­pli­fies ad­min­is­tra­tion and main­te­nance of important resources that require pro­tec­tion. The central location of the server means it’s con­ve­nient and low-risk to perform updates.

Access rights con­trolled globally

The central storage of important resources allows for secure and global man­age­ment of access rights. With sensitive data, it’s important to know who can view data and who’s allowed to ma­nip­u­late it. In order to protect data, access rights can be set.

Single server for many clients

The number of clients can be expanded. Several clients work si­mul­ta­ne­ous­ly using a single server. The clients share the resources of the server. It’s also possible for the server to be located on a different site to the clients. The decisive factor is for the server and clients to be connected via a network. It’s not necessary to have the resources on-site.

Cons

Server outage

Because of cen­tral­ized attitude and de­pen­den­cy in a client server model, failure of the server leads to the failure of the entire system. If the server is down, the clients no longer function because they can’t receive the necessary responses from the server.

Resources of a server

The server performs the resource-intensive tasks. Demands on client resources are sig­nif­i­cant­ly lower. If the server has too few resources, this affects all clients. It’s therefore important to choose a provider that reliably provides these resources.

Time in­vest­ment

Another factor that shouldn’t be un­der­es­ti­mat­ed is the time required to operate your server. In addition to the cor­re­spond­ing know-how, for example, to secure and configure servers, its use requires con­sid­er­able time in­vest­ment.

What are the al­ter­na­tives to a client server model?

Although the client server model is often used to dis­trib­ute tasks within networks, there are al­ter­na­tive ar­chi­tec­tures and concepts.

One al­ter­na­tive is the peer-to-peer model. In this model, a so-called peer program rep­re­sents servers and clients si­mul­ta­ne­ous­ly and fulfills both tasks. This model forms the basis of the blockchain.

The primary-secondary model, formerly known as the “master slave model”, is another good example. In this model, the primary part leads the secondary parts and co­or­di­nates them. The primary part releases usable resources for the secondary parts and decides when they take over which tasks.

What are typical client server ap­pli­ca­tions and protocols?

A typical client server ap­pli­ca­tion is a web server. Here, the client sends a request to the web server to launch a specific web page. The server sends the requested data back to the client. The web page is displayed in the client’s browser. The Hypertext Transfer Protocol is used for sending HTTP requests.

An email server also works according to the client server principle. When an email client com­mu­ni­cates with a server, the client requests and retrieves the emails that are on the server. The server makes the emails available to the client. The protocols used include SMTP, IMAP or POP and TLS.

Another very common ap­pli­ca­tion is the transfer of data between a client and web server using the File Transfer Protocols (FTP). This protocol enables uploading and down­load­ing of files.

Go to Main Menu