Client-Server Architecture


A Client-Server Architecture consists of two types of components: clients and servers. A server component perpetually listens for requests from client components. When a request is received, the server processes the request, and then sends a response back to the client. Servers may be further classified as stateless or stateful. Clients of a stateful server may make composite requests that consist of multiple atomic requests. This enables a more conversational or transactional interactions between client and server. To accomplish this, a stateful server keeps a record of the requests from each current client. This record is called a session.

Client–server model - Wikipedia
Ex: Email

Email working follows the client server approach. In this client is the mailer i.e. the mail application or mail program and server is a device that manages emails.

Following example will take you through the basic steps involved in sending and receiving emails and will give you a better understanding of working of email system:

  • Suppose person A wants to send an email message to person B.

  • Person A composes the messages using a mailer program i.e. mail client and then select Send option.

  • The message is routed to Simple Mail Transfer Protocol to person B’s mail server.

  • The mail server stores the email message on disk in an area designated for person B.


  • Now, suppose person B is running a POP client and knows how to communicate with B’s mail server.

  • It will periodically poll the POP server to check if any new email has arrived for B.As in this case, person B has sent an email for person B, so email is forwarded over the network to B’s PC. This is message is now stored on person B’s PC.



Comments