Client-Server Architecture is a computing model in which the server hosts, delivers, and manages most of the resources and services to be consumed by the client. As the starter architecture diagram illustrates, the client-server model describes how a server provides resources and services to one or more clients. Examples of servers include web servers, mail servers, and file servers. These servers provide resources to client devices, such as desktop computers, laptops, tablets, and smartphones. The client sends a request to the server, and the server responds with the desired information. The client and server should follow a common communication protocol to interact with each other easily.