There are different networking models for how to connect computers over a network. Computers that request information are called clients and computers that provide information are servers. But the client and server relationship can be organised in different ways.
The client-server model is the relationship between two computers in which one, the client, makes a service request from another, the server. The key point about a client-server model is that the client is dependent on the server to provide and manage the information.
Popular websites need powerful servers to serve thousands or millions of clients, all making requests at the same time. The client side of a web application is often referred to as the front end. The server side is referred to as the back end.
In a P2P network, no single provider is responsible for being the server. Each computer stores files and acts as a server. Each computer has equal responsibility for providing data.
In the client-server model, many users trying to access a large file, such as a film, would put strain on one server. In the peer-to-peer model, many users on the network could store the same file. Each computer can then send sections of the file, sharing the workload. Each client can download and share files with other users.
P2P is ideal for sharing files. P2P would be unsuitable for a service such as booking tickets, as one server needs to keep track of how many tickets are left. Also, on P2P networks no single computer is responsible for storing a file - anyone can delete files as they wish.
|Security||The server controls security of the network.||No central control over security.|
|Management||The server manages the network. Needs a dedicated team of people to manage the server.||No central control over the network. Anyone can set up.|
|Dependency||Clients are dependent on the server.||Clients are not dependent on a central server.|
|Performance||The server can be upgraded to be made more powerful to cope with high demand.||If machines on the network are slow they will slow down other machines.|
|Backups||Data is all backed up on the main server.||Each computer has to be backed up. Data can easily be deleted by users.|