Peer-to-peer
Jump to navigation
Jump to search
A peer-to-peer network is a type of distributed system for which clients and servers are not distinguished from each other. All computers in the network are considered peers and can act as both clients and servers. Computers act as clients when requesting services from their peers and as servers when providing services. As opposed to traditional client-server systems in which the server can create a bottleneck, peer-to-peer systems are more versatile in satisfying service requests as all nodes in such a system can act as servers.
To request or provide services in a peer-to-peer network, all nodes must first join the network. Once a node is part of the network, service requests can be performed in two common ways.
- On joining a network, all nodes register the services they provide with a centralized lookup service. When a node, acting as a client, desires a service, it contacts the centralized lookup service to find out which node provides this service. On response, the client node continues all communication with it's servicing (server) peer
- When a node desires a service, it broadcasts this request to all other nodes on the network. Any nodes that provide this service then respond to the requesting node. A discovery protocol is required to support this approach.