8.2 Types of Networks
8.2.1 Peer-to-Peer networks
By using Local Area Network (LAN) and Wide Area Network (WAN) technologies, many computers are interconnected to provide services to their users. In providing services, networked computers take on different roles or functions in relation to each other. Some types of applications require computers to function as equal partners. Other types of applications distribute work so that one computer functions to serve a number of others in an unequal relationship. In either case, two computers typically communicate with each other by using request/response protocols. One computer issues a request for a service, and a second computer receives and responds to that request. The requester takes on the role of a client, and the responder takes on the role of a server.

In a peer-to-peer network, the networked computers act as equal partners, or peers, to each other. As peers, each computer can take on the client function or the server function alternately. At one time computer A, for example, may make a request for a file from computer B, which responds by serving the file to computer A. Computer A functions as client, while B functions as the server. At a later time, computers A and B can reverse roles. Computer B could be the client, making a request of A, and A, as server, responds to B's request. Computers A and B stand in a reciprocal, or peer, relationship to each other.

In a peer-to-peer network, individual users control their own resources. They may decide to share certain files with other users and may require passwords before they allow others to access their resources. Since individual users make these decisions, there is no central point of control or administration in the network. In addition, individual users must back up their own systems to be able to recover from data loss in case of failures. When a computer acts as a server, the user of that machine may experience reduced performance as the machine serves the requests made by other systems.

Peer-to-peer networks are relatively easy to install and operate. No additional equipment is necessary beyond a suitable operating system in each computer. Since users control their own resources, no dedicated administrators are needed. A peer-to-peer network works well with a small number of computers, perhaps 10 or fewer.

As networks grow larger, peer-to-peer relationships become increasingly difficult to coordinate. They do not scale well, since their efficiency decreases rapidly as the number of computers on the network increases. Since individual users control access to the resources on their computers, security may be difficult to maintain. Client/server networks address these limitations of the peer-to-peer arrangement.