The return of peer-to-peer came by way of a messaging platform. In 1996, a young Israeli firm called Mirabilis launched its popular ICQ (“I seek you”) instant-messenger service using a peer-to-peer architecture to send messages between PCs connected to the Internet. Napster went several steps further, thanks to the faster microprocessors, greater storage capacity and faster connection speeds that had then become available, tying PCs together to share files over the Internet.
The most important lesson of Napster is that, surprisingly, people are willing to open their computers to, and share files with, complete strangers when they see value in doing so. In the process, they have shown how really large computer networks can be created rapidly through the piecemeal contribution of millions of individual PCs, each of which functions as a server as well as a client. Looked at this way, Napster has, in effect, 40m servers and systems administrators, keeping the network’s management and infrastructure costs to a minimum.
Compared with corporate software, however, Napster is a simple program that does one thing — sharing music files. It is also not a pure P2P system. It uses a central server to link computers together to avoid the complexity of other peer-to-peer programs such as Gnutella, a file-sharing program popular among the high-tech community. Compared with Napster, Gnutella is nowhere near as easy to use and illustrates the danger of sharing files, including viruses that can spread quickly throughout a network.
But what exactly is peer-to-peer computing? Like many other networking ideas, peer-to-peer is not a single concept, but a wide array of technologies. For some, peer-to-peer means that the PC and the server are one and the same thing. For others, it means that each PC’s resources are shared with all other PCs. And for still others, it means that the network is itself the “computer”. Purists define peer-to-peer as an architecture devoid of any form of centralisation. Pragmatists say it is simply a computer architecture that uses a central server but with peers that are all independent.
Perhaps the most articulate definition is offered by Clay Shirky, a venture capitalist and leading light in the peer-to-peer community. Mr Shirky links peer-to-peer’s rise to the constraints of the DNS, the database that assigns addresses for computers connected to the Internet. At its most basic, says Mr Shirky, peer-to-peer is a swathe of applications that harness resources at the far edges of the Internet, where the machines have complete freedom (or, at least, significant autonomy) from the central servers. However, because such resources — PCs today, but mobile phones, PDAs (personal digital assistants) and other appliances in the near future — are often attached to modems that are allocated new addresses each time they dial their Internet service providers, Mr Shirky insists that P2P systems must use something other than DNS to link their machines together.
Under this definition, Napster is peer-to-peer because of the alternative DNS arrangement it employs (essentially the user’s login name) and because of the independence of the computers involved. So, too, are instant-messenger services such as ICQ and America Online’s Instant Messenger (AOL acquired ICQ in 1998), both of which transcend the traditional DNS architecture and devolve connection management to the individual machines. E-mail, by contrast, is not a P2P system because it relies on a central server.