Client-Server Model

Sadeed Ameen
3 min readOct 13, 2020

The Client-server model is a distributed application structure that partitions task or workload between the providers of a resource or service, called servers, and service requesters called clients. In the client-server architecture, when the client computer sends a request for data to the server through the internet, the server accepts the requested process and deliver the data packets requested back to the client. Clients do not share any of their resources. Examples of Client-Server Model are Email, World Wide Web, etc.

How does the Client-Server Model work?

In this article, we are going to take a dive into the Client-Server model and have a look at how the Internet works via, web browsers. This article will help us in having a solid foundation of the WEB and help in working with WEB technologies with ease.

  • Client: When we talk the word Client, it means to talk of a person or an organization using a particular service. Similarly in the digital world, a Client is a computer (Host) i.e. capable of receiving information or using a particular service from the service providers (Servers).
  • Servers: Similarly, when we talk the word Servers, It means a person or medium that serves something. Similarly in this digital world, a Server is a remote computer which provides information (data) or access to particular services.

So, its basically the Client requesting something and the Server serving it as long as its presence in the database.

How the browser interacts with the servers?

There are few steps to follow to interacts with the servers a client.

  • The user enters the URL(Uniform Resource Locator) of the website or file. The Browser then requests the DNS(DOMAIN NAME SYSTEM) Server.
  • DNS Server lookup for the address of the Web Server.
  • DNS Server responds with the IP address of the WEB Server.
  • The browser sends over an HTTP/HTTPS request to WEB Server’s IP (provided by DNS server).
  • The server sends over the necessary files of the website.
  • The browser then renders the files and the website is displayed. This rendering is done with the help of DOM (Document Object Model) interpreter, CSS interpreter and JS Engine is collectively known as the JIT or (Just in Time) Compilers.

Advantages of the Client-Server model:

  • Centralized system with all data in a single place.
  • Cost-efficient requires less maintenance cost and Data recovery is possible.
  • The capacity of the Client and Servers can be changed separately.

Disadvantages of the Client-Server model:

  • Clients are prone to viruses, Trojans and worms if present in the Server or uploaded into the Server.
  • The server is prone to Denial of Service (DOS) attacks.
  • Data packets may be spoofed or modified during transmission.
  • Phishing or capturing login credentials or other useful information of the user is common and MITM(Man in the Middle) attacks are common.

--

--