Napster. Napster. Napster. Youre probably sick of hearing about the latest hot software and how much easier it makes it to share MP3 online music files. And about how thats why the Recording Industry Association of America (RIAA) is suing the San Mateo, California, company. And about how the software has been choking up college servers, so admins are banning it, spurring student protests. (Uh, what ever happened to affirmative action and tuition hikes?)
But if youre sick of hearing about Napster, thats unfortunate. Because whats missing in the Great Satan (the RIAA) vs. Exalted Liberator (anyone whos ever paid 15 bucks for a CD) Napster debate is that the technology is a computing breakthrough on the level of the World Wide Web. Someone at the Human Genome Project is using Napster technology, and its not because he has a thing for Fiona Apple. Dr. Lincoln Stein, part of the project at the Cold Spring Harbor Laboratory in New York, is exploring how to use Napster-style automated resource discovery to enable scientists to publish their discoveries in the genome. The reason Stein and other experts are so excited is that Napster turns the prevailing computer technology of client-server on its side. (If you already know client-server, skip the next two paragraphs.)
What makes the World Wide Web work, ditto your offices LAN (local area network), is client-server computing. Your desktop computer (called, in this context, the client) is networked to a larger computer (the server). Generally, in most offices, youll be able to run your word-processing or spreadsheet programs at your own computer, but you must go on the network in order to print or e-mail. The usual configuration looks like the spokes of a wheel, with the server as the hub, and the PCs at the end of the spokes. Rarely, there is whats called a peer-to-peer configuration, where all PCs are linked together, and then hooked up to the server. Keep that term in mind.
The World Wide Web is a giant client-server system. You at your PC (or Mac, forgive me) log on to the Internet (the network) and, through it, to a favorite site. The sites computer (a server) sends the information you requested back to you. Heres the important part: Even if you e-mail someone, youre still going through a server -- theres no direct contact between your computer and someone elses computer. If you want an MP3, you go to a site like MP3.com, request a song, and the sites server sends it to your computer.
(Welcome back, networking geeks. Youre gonna love this part.) What makes Napster a programming breakthrough, rather than merely a bonanza for intellectual-property attorneys, is that it is the first widespread use of a peer-to-peer system on the World Wide Web. You download and install the Napster software, which runs on your client. Once youre connected, the software indexes the MP3s youve got on your hard drive, then connects to the Napster server and makes your tracks available to anybody whos hooked up at the time -- from your hard drive, not from the Napster server. Your computer is directly linked to someone elses computer, without a server in between. That is why it only works for as long as youre connected, and why its great with always on broadband systems, and a pain with a dial-up connection. Napster allows very fat clients, todays superfast, application-stuffed PCs, to interact in a peer-to-peer climate.
Its a true hybrid computing environment, says Tristan Louis, CEO of Movable Media, who has discussed Napster in his influential online newsletter, TNL.NET (www.tnl.netnewsletter). For the first time since the creation of the Web, Louis wrote, you have an application that allows for the widespread distribution of files across a network. It could allow for a new set of cooperative tools in corporate environments. What if I could work on a presentation and immediately share it with other people in my office?
According to Eddie Kessler, V.P. of engineering at Napster, Napster creator and company founder Shawn Fanning had cooperative work tools in mind from the start. Shawn was enamored with the distributed nature of the IRC (Internet Relay Chat) peer-to-peer communication paradigm that allows for chat and file sharing, but which [lacks] the effective indexed search capabilities of a Web search engine, says Kessler.
So stop thinking of Napster as a way to score a dubiously legal copy of Charm Attack and realize that the product of then--college freshman Fanning could be one of the best networking innovations in years. Napster has made it easier by orders of magnitude to transfer entire files from one computer to another. Stein explains why:
Weve been stuck in a client-server paradigm for many, many years. People who had stuff to share had to learn arcane knowledge, like FTP, static IP addresses -- there were a lot of technical hurdles. The beauty of this system is, it does automatic resource discovery. Napster publishes the route to the users information. Not just the IP address, which may change, but the port. (IP addresses are the unique identifiers of the computer you wish to connect with; port numbers are used to identify services within the computers, such as mail.) The client, when it connects, tells the server what IP address and port number the music can be downloaded from. Both numbers may change from session to session, and the port number may change during a session in order to work around firewall blocks and the like. This is very different from conventional Web and FTP servers, in which you have to know the IP address and port numbers in advance.