Browse Topics

Services

Programs

The 'Net After Napster
How It Works: A Visual Primer for Sharing Files

Central server model
Peer-to-peer model
Supernode model

The Central Server Model
This system was used by Napster and is currently used by AudioGalaxy Satellite and iMesh. It's fast and efficient, but it makes an easy target for lawsuits, because a court can order the company running the system to turn off the computer that runs it all.

Central server model diagram
Central server model
Illustration: Erik Dunham, NPR

In a central server system, one computer -- represented here as "d" -- keeps track of all the files being made available for sharing by everyone who's logged on. When user "a" asks for song "s", that request goes to the central server, which replies that the song can be obtained from user "c". User "a" then asks "c" directly for a copy of "s", and "c" sends it along.

Web Resources:

AudioGalaxy Satellite -- Available for Windows and Linux.
iMesh -- Available for Windows only.
Back to top of page



The Peer-To-Peer System
Technically speaking, all file sharing systems are "peer-to-peer networks," so perhaps this type of system should be called the true peer-to-peer system. That's because there's no central computer -- everyone who's using the system is equal to everyone else. It can be slow, because a user with a pokey 56K modem will limit the flow of data to users who are on speedier connections. But it's immune from lawsuits because the whole system is nothing more than a collection of users who all happen to be running the same computer program. The Gnutella system is a peer-to-peer network.
Peer-to-peer model diagram
Peer-to-peer model
Illustration: Erik Dunham, NPR

In a peer-to-peer system, when user "a" asks for song "S", that request is passed along to the nearest neighbor. User "b" doesn't have the song, so the request is passed along to user "c", and so it reaches user "e", who has the song. At that point, "e" sends the song directly to "a".

Web Resources:

Bearshare -- A Windows-only Gnutella program.
Limewire -- A Gnutella program for Windows, Mac and Linux.
Back to top of page



The "Supernode" System
This is the system behind the popular KaZaA and Morpheus programs. It's a cross between peer-to-peer and central server systems. Users with powerful computers and fast Internet connections automatically become central servers for their own little corners of the Web. They are the "supernodes": Their computers automatically compile directories of what's being offered for sharing by their virtual network. This makes it quick and easy to find popular music, while still offering the advantages of peer-to-peer systems.
Supernode model diagram
Supernode model
Illustration: Erik Dunham, NPR

In a supernode system, user "e" asks for song "S". That request goes to the local supernode, "b", which can't find it in its local Web domain. So "b" asks neighboring supernodes "c" and "d", which can't find it either. So the request is kicked up one level to a "super-supernode", "a", which sends the request around the network. Finally, the song is found in a directory at supernode "o", which instructs user "r" to send the song to "e".

Back to top of page

Go back to the main story.