Simplifying the Client-Server Model For You!

Anamika Kalwan
TechGeekBuzz
Published in
4 min readDec 3, 2022

The simple meaning of a client-server model is wherein a program sends a request to another program and waits for a response.

The program that makes a request is known as the client; the other that answers is the server.

Some important pointers to understand the basics:

  • Client: A client is often a person or an organization that uses any service. When we talk about networking, a client is a computer or a host that has the ability to receive information or use a service from the servers.
  • Servers: It means a person or medium that provides a service to the users. In networking, a server is a remote computer providing data or access to multiple services.
  • A client-server is also known as a many-to-one relationship, as one server provides services to multiple clients instead of a single one. On the other hand, various clients can use services from a single server.
  • A client program runs on the local machine requesting service from a server program running on a remote machine. On the other hand, a server program runs constantly because it is unaware of when its service is needed.
  • A client program runs only when it requests a particular service from the server.

After grasping the basics, let’s go into the details. 👇

How does the browser interact with the servers?

You can understand the entire process of interaction of a browser with the servers in the below-mentioned steps:

  1. As soon as the user enters a specific URL in the browser, at the same time, the browser immediately requests the DNS server.
  2. Now, the DNS server matches the address of this URL on the web and responds with the IP address.
  3. The browser sends an HTTP/HTTPS request to the web server’s IP address.
  4. After receiving this request, the server provides the site files.
  5. The browser starts rendering the files and shows the website on the screen.

So, when you hit enter after typing on the browser, this is what happens in the background! 😃

Advantages of the client-server model

1. Centralization

A client-server model provides centralized control. It means that the information is stored in one location.

Hence, it is highly advantageous for the network administrator to have full authority over the management. It is also easier to update the data and resources.

2. Scalability

Client/server networks are immensely scalable. How?

Client-server networks can be scaled horizontally or vertically. Vertical scaling means adding more server machines or migrating to a faster server machine. In contrast, horizontal scaling removes client workstations. Hence, it is easier to add clients and servers and allows scaling.

3. Security

As mentioned above, the network is centralized, providing adequate user security. Only the users with credentials can access their data. Moreover, the recovery of any lost data is quick and simple.

4. Management

The client-server network has excellent management as the entire data is stored in the central server. Moreover, joint access helps provide freedom to each member of the network to make changes without interrupting other tasks. It is also possible to handle multiple requests simultaneously with the help of a scheduling system that prioritizes the messages of clients.

5. Accessibility

Due to data centralization, client-server networks provide incredible accessibility. Further, only authenticated users can access the users using login credentials.

It is also possible to access the network remotely; all you require is a good internet connection.

Disadvantages

1. Cost

Setting up and maintaining a server on the client-side network is quite costly. Not every user can easily afford it.

2. Maintenance

As obvious, once a server is set, it will run 24x7. You must hire a network manager as it’s quite a challenge to maintain the server continually. Further, you must stay on your toes in case of any error or problem.

3. Traffic Congestion

When a server overloads, it disrupts the normal functioning of a network.

As mentioned above, the client-server is also known as a many-to-one relationship. Hence, a server gets multiple requests from the client. Due to this factor, there may arise a situation that we call traffic congestion. The server may crash or slow down if numerous clients make requests simultaneously.

4. Robust

Due to the centralized nature of this model, if the main server undergoes failure or any error, it will take down the entire network. Therefore, this is a big disadvantage of the client-server model.

Wrapping Up

I hope the client-server model's basics help you understand this concept easily. As you can see, it has various advantages and disadvantages. However, it fulfills some important requirements.

If you have any doubts, feel free to drop me a comment below.

Meet you soon with some more content! 😄👋

--

--

Anamika Kalwan
TechGeekBuzz

Creating multiple genres of content including technical, non-technical, and generic topics everyday! Let’s share and strengthen our knowledge.