Another type of related software architecture is known as peer-to-peer, because each host or application instance can simultaneously act as both a client and a server (unlike centralized servers of the client-server model) and because each has equivalent responsibilities and status. Peer-to-peer architectures are often abbreviated using the acronym P2P.
The client-server relationship describes the relation between the client and how it makes a service request from the server, and how the server can accept these requests, process them, and return the requested information to the client. The interaction between client and server is often described usingsequence diagrams. Sequence diagrams are standardized in the Unified Modeling Language.
Both client-server and P2P architectures are in wide usage today.
The basic type of client-server architecture employs only two types of hosts: clients and servers. This type of architecture is sometimes referred to astwo-tier. The two-tier architecture means that the client acts as one tier and server process acts as the other tier.
The client-server architecture has become one of the basic models of network computing. Many types of applications have being written using the client-server model. Standard networked functions such as E-mail exchange, web access and database access, are based on the client-server model. For example, a web browser is a client program at the user computer that may