Communications

Pushing Peer-to-Peer

The networking approach that threatens to make the recording industry obsolete could also bring about a more reliable Internet.

  • October 3, 2003
  • By Simson Garfinkel

If I say peer-to-peer, you probably start thinking about those file-sharing services that let you get free music, movies, and pornography over the Internet. But peer-to-peer is about much more than violating the copyright of big record labels.

Indeed, although the term was coined just a few years ago, peer-to-peer is really how the Internet was originally designed to work. The theory was that all of the computers on the network would be first-class citizens, each capable of sharing resources or exchanging information with one another. Back then, a student at MIT might start typing on a computer in Cambridge and use it to log into a computer at Stanford. Meanwhile, another student at Stanford might use that same computer to log into the first system at MIT. Both computers would be simultaneously using and offering services to the network. The connections between them would be links between equals-that is, peer-to-peer.

As it turns out, most of the Internet didn't become a peer-to-peer system. Instead, the Net evolved along a different model. Low-cost computers, called clients, were distributed onto people's desks. These machines were used to access services offered by more expensive centralized computers-called, for lack of a better word, servers. Some of the earliest client-server systems let people share files by placing them on centralized file servers. The servers were also an ideal place to put electronic mail.

These days, the Internet's clients are the desktop and laptop computers that we are all so familiar with. The servers are the Web servers, mail servers, instant messaging servers, and other servers that our clients rely upon. There are even more servers operating behind the scenes-things like DNS servers that operate the Internet's Domain Name System, routing servers used for sending voice traffic through the Net (so-called voice-over-IP systems), and even servers for companies that want to back up their computers over the network. The client-server model has been so successful because it's fairly easy to understand, set up, and maintain.

But there is a big problem with client-server architecture: it's vulnerable. When a single server goes down, all the clients that rely on it essentially go down with it. You can minimize this problem by having multiple servers, but then you have to make sure that they all stay synchronized. In fact, the server doesn't even have to go down-all you need is a break in the network.

Peer-to-peer is a fundamentally different way of thinking about the network-based not on the notions of clients and servers but on cooperation and collaboration. A peer-to-peer backup system might use all of the extra space on the hard drives throughout an organization to store extra copies of critical documents and personal e-mail; a peer-to-peer Web publishing system might use those same hard drives to store copies of Web sites. The theory here is that a thousand underpowered clients are still faster than the world's fastest server.

Unfortunately, peer-to-peer systems can be difficult to put together. The simplistic way to build one is to have each node report its presence to a central server. People who want to join the network then log in to the central machine use it to find their peers. While this works, it's not true peer-to-peer: shut down the central server, and the system collapses.

That's why most of the academic research on peer-to-peer systems has concentrated on building systems that work without any centralized control. This is harder stuff! Computers need to be able to discover new peers showing up, and be tolerant of peers that crash. Sometimes the network breaks into two or more pieces. Data needs to be stored in multiple locations. For an added challenge, try to handle potentially hostile peers that pretend to be good ones.

Print

Related Articles

Supercharged File Sharing

Cooperating with file-sharing networks could avert congestion.

Advertisement

MAGAZINE

People Power 2.0

How civilians helped win the Libyan information war.

Advertisement
Advertisement
Advertisement