Client and Server

Introduction

In the previous article we have discussed the working mechanism of a website. Client and Server plays an important role in the functioning of a website.

In general, Client-Server is a software architecture Model designed to enable the communication between multiple computer systems. In this article we will also explore the different types of software and protocols running behind this model.

What is a Client

Clients are the devices that are used by a user, i.e. our personal computers, mobiles, tablets, etc. These devices have web browsing software pre-installed in it (i.e. browsers like chrome or Firefox).

Protocols used by Client

Web browser mainly use HTTP/HTTPS protocols to request information from a website on a server.

Characteristics of a Client

  • It always initiates a request to server
  • It awaits and receives replies from a server
  • Its visibility and response is highly dependent upon the server system

Client-Side Software

The software or programming languages that run over the browser are called Client-Side Software. E.g. HTML, CSS, JavaScript are the famous client-side languages.

What is a Server

Servers are the devices that are directly connected to the internet and are used to store webpages, sites, apps and files. Whenever a user opens a website, it is downloaded from these servers.

Protocols used by Server

A server mainly runs over TCP/IP protocols. It also utilizes many other protocols such as FTP (to transfer files), SMTP (to send mails). You can read the full list of protocols here.

Characteristics of a Server

  • It always awaits request from a Client
  • It responds a Client with a reply with a status code representing success or error
  • Based on request from a client, a server can even perform many operations like transferring file, sending mail and saving data
  • End user usually do not interact with a server directly

Server-Side Software

The software or programming languages that run at server side to perform operations that can be either not run by client-side or it is too slow to run from web browsers or due to security measures. The famous server-side languages are PHP, Node.js, Python and Java.

Difference between Client and Server

As discussed earlier, there are two types of computers connected to the internet, called clients and servers. A simplified diagram of how a server and a client communicate with each other is shown below:

client and server

ClientServer
Clients are the devices that are used by a user, i.e. our personal computers, mobiles, tablets, etc.Servers are the devices that are directly connected to the internet and are used to store webpages, sites, apps and files.
It always initiates a request to server

 

It always awaits request from a Client

 

Ex. Our personal computers, mobiles, tabletsEx. Apache Server, Cloud Servers at SAP HANA, Google Cloud Platform, Amazon Web Services

 

Leave a comment

This site uses Akismet to reduce spam. Learn how your comment data is processed.