Skip to content
Search

Peer-to-peer

lastmod 2026-04-20created 2015-03-129 edits

P2P (peer-to-peer network), or a network of equal peers, is a network built on the computing power and bandwidth of the machines participating in it rather than concentrating on a relatively small number of servers. P2P networks are generally used to connect nodes to one another in large ad hoc fashion. Such networks are useful in many ways; sharing files in any digital format, such as audio, video, or data, is very common. Real-time data such as Internet telephony (VoIP) can also be exchanged via P2P technology.

In a pure P2P file transfer network, there is no concept of client or server; only equal peer nodes act simultaneously as both clients and servers to each other on the network. This network model is distinguished from the client-server model, in which communication usually goes through a central server. An FTP server is a prime counterexample, not a P2P file transfer form. One user uploads a file to an FTP server and other users download it, and the uploader and downloaders do not need to be connected at the same time.

Networks and channels such as Napster, OpenNap, and IRC @find) use a client-server structure for some functions such as search and a P2P structure for others. Networks such as Gnutella and Freenet use a P2P structure for all functions, and although they rely heavily on directory servers to provide the network addresses of other peers, they are sometimes cited as true P2P networks.

The P2P network architecture has recently come into prominence for sharing multimedia files over the Internet, but it has a long history: it was embedded as a core technology from the early versions of the Internet protocols called RFC (Request for Comments), established on April 7, 1969.

Recent P2P services have developed from pure file transfer networks and evolved into grid computing technology, offered in the form of web hard drives. Externally they look like web hard drives, but in reality files are transferred directly to each user's storage device, so like the pure early P2P networks they share the trait of putting load on users' systems. Grid computing P2P services in this web hard drive form include PDBox, Hwailai, and Aipap.

P2P that bypasses DNS

ICQ, released in 1996, was the first to open a way for personal computers, which unlike always-on Internet servers may connect and disconnect, to connect to one another. Facing the trend of everything gradually becoming mobile, ICQ bypassed DNS and created its own protocol-specific address directory. Through this, IP addresses could be updated in real time. Groove, Napster, Netmeeting, and others follow ICQ in using this method. (Of course, not every P2P system uses this trick. Gnutella and Freenet bypass DNS just like the earlier approach but differ in that they use numeric IP addresses. Popular Power and SETI@Home provide each node with a schedule for connecting to a fixed address, passing along the IP address at the time of connection.)

According to Whois, 23 million domain names were created in the 16 years since IP addresses first took root in 1984. But Napster alone created 23 million non-DNS addresses in 16 months. And if you count users signing up for all non-DNS instant messaging addresses, the number of P2P addresses reachable at dynamic IP addresses exceeds 200 million in total. Even assuming the average DNS host has 10 second-level addresses of the form second.first.com, the total number of P2P addresses today would equal the total number of DNS addresses in just four years, which means it will grow into a world far vaster than today's DNS world.

As new kinds of Internet access devices such as wireless PDAs and digital video recorders such as TiVo and Replay spread, they too will certainly become an important part of the Internet. For now, however, the PC itself holds the vast majority of untapped resources. The PC is the dark horse of the Internet. And the "under"-used resources of those PCs will further accelerate the P2P revolution.

Documentation

Soribada architecture and P2P implementation
Soribada_P2P_architecture_and_implementation.pdf

Projects

  • tinc - open-source P2P VPN daemon
  • Briar - P2P encrypted messaging app
  • iroh - open-source library for ultra-fast public-key-based P2P network connections

See also

Favorite site

author Zer0 sitemap