The Client - Server model describes how a server provides resources and services to one or more clients. Most servers have a one-to-many relationship with clients, meaning a single server can provide resources to multiple clients at one time.
When a client requests a connection to a server, the server can either accept or reject the connection. If the connection is accepted, the server established and maintains a connection with the client over a specific protocol.
Clients and servers exchange messages in a request - response messaging pattern. The client sends a request, the server returns a response. To communicate, the computers must have a common language, and they must follow the rules so that both client and server know what to expect. The language and rules of communication are defined in communications protocol. All client-server protocols operate in the application layer. The application layer protocol defines the basic patterns of the dialogue.