Peer-to-Peer (P2P) Model
The Peer-to-Peer (P2P) Model is a networking model in which each computer on the network can act as both a client and a server. In a P2P network, there is no central server, and all computers can communicate with each other directly.

Types of P2P networks:
Unstructured P2P networks: In this type of P2P network, each device is able to make an equal contribution. This network is easy to build as devices can be connected randomly in the network. But being unstructured, it becomes difficult to find content. For example, Napster, Gnutella, etc.Structured P2P networks: It is designed using software that creates a virtual layer in order to put the nodes in a specific structure. These are not easy to set up but can give easy access to users to the content. For example, P-Grid, Kademlia, etc.
Hybrid P2P networks: It combines the features of both P2P networks and client-server architecture. An example of such a network is to find a node using the central server.
Advantages of Peer-to-Peer Networks:
- Decentralized: P2P networks are decentralized, which means that there is no single point of failure. If one computer goes down, the network can still function as long as there are other computers available.
- Scalability: P2P networks can scale easily, as new computers can be added to the network at any time.
- Resource Sharing: P2P networks allow for easy sharing of resources, such as files, printers, and Internet connections, among all the computers on the network.
- Cost-Effective: P2P networks are often more cost-effective than client-server networks, as they do not require the use of dedicated servers.
Disadvantages of Peer-to-Peer Networks:
- Security: P2P networks can be less secure than client-server networks, as all computers on the network are potentially vulnerable to attacks.
- Performance: P2P networks can suffer from performance issues, especially when a large number of computers are connected to the network.
- Reliability: P2P networks can be less reliable than client-server networks, as there is no central authority to ensure that all computers on the network are functioning properly.
- Complexity: P2P networks can be more complex to set up and maintain than client-server networks, especially as the number of computers on the network grows.