Next Step for P2P? Open Servicesby Gene Kan
There is a growing movement among the technology-aware to share access to some of their valuable network and computing resources. Rael Dornfest came up with a name for this some time ago: "Open Services." Think Open Source, but for networked computing resources, instead of source code.
I'll use four examples to mark out the landscape:
- SETI@Home. One of the first to formally enable resource sharing, UC
Berkeley's SETI@Home project enabled millions of computers
worldwide to contribute their spare time to help sift for
signs of life in the signals gathered by radio telescopes. The
system's users download a screen saver which speeds through the
numbers looking for little green men while you're not paying
Napster. At its peak, Napster
had approximately 70 million subscribers sharing
not just data, but also bandwidth. Napster users gave away the very currency of the
Internet: the network itself. Napster itself has been nonoperational for weeks, but this network sharing continues in countless other file-sharing apps.
- Gnutella. Participants in Gnutella networks
commit not only their network capacity but their computing
resources as well. Because the Gnutella network is totally
decentralized (where every node acts as the router and the
application), Gnutella nodes devote some of their CPU power
to making routing decisions, in addition to donating
substantial tracts of their network capacity to carrying
traffic, bucket-brigade-style, to other nodes on the
network. Not to mention the "out-of-band" HTTP
connections used to share actual file data between the
- 802.11b networks. This is a funny example, because not all 802.11b networks are intentionally open. But, as many recent news stories have made light of, even many "closed" 802.11b networks are in fact free packet-faucets for all. Well, let's focus on the intentionally open ones, since they are more interesting once we're done cracking security jokes. Open 802.11b networks are put out there by community-minded folks who want to make sure you can check your email when you're driving by their house. Or maybe you and your neighbor want to share the cost of a T1, but you don't want that unsightly CAT5 running between your houses. (One San Jose resident to another: "What is that, a laundry line?" "No, it's our hicap."). Either way, the rationale is pretty simple: "I paid for all this bandwidth and not using 100% of it is wasteful. Since I can't soak it all up, particularly when I'm not home, let me open up my cable-modem/DSL/T1 to others who can." You can't exactly put bandwidth in the bank; might as well give it away. (Hmm...maybe I should do the same with the unused fixed-rate minutes on my mobile phone.)
Taken together, these innovations show that Open Services are real and happening right now. From looking for Jovian television to swapping recipes, we're getting pretty comfortable with the idea of sharing on the Internet. Or even of sharing the Internet itself.
Making Open Services a Reality
There are a few obvious things that are making this happen now:
- decline in computer prices and increase in computing power,
- decline in bandwidth prices and increase in broadband availability,
- general increase in computer experience and decline in experience necessary to operate a network-based service.
The price of performance is decreasing constantly while the performance itself is increasing ridiculously. That means I'm pretty happy to share my Pentium 8 50gHz with you because I only need all that horsepower while Windows boots. After that, the CPU is hardly utilized because I can't hit 50 billion keys in a second. Between keys, my computer could be cracking RC5 or musing on colon cancer.
Networks are getting faster and cheaper. Access to the Internet is getting fast and cheap everywhere. And since we're all pretty much underutilizing our Internet connections, why not share? Even in the most aggressive of cases, only 25% of the network is utilized. Here's how I arrive at that statistic: Suppose I'm home 12 hours a day (50%). While I'm there, I'm mostly downloading (50%). So, figure 25% used, 75% wasted, 100% paid for. It's like having a hole in the bottom of your gas tank.
Finally, maybe one of the most unnoticed but most important axes: the increase in computer experience among our populace coupled with the simultaneous decrease in the amount of knowledge required to join the production side of the Internet. Anyone running Napster: welcome to the world of server operations. You never thought you'd be here after ditching MCSE school, but in fact, you are running a full-on Internet server. You're uncertified, sure, but you don't need training to fly that mouse.
It is often lost upon us Unix hacks that it is a serious pain to operate a network-based service. Remember how much cursing was involved in setting up an FTP daemon or HTTP server? You needed Unix. You needed vi. You needed a fixed IP address. That is all just a point-and-click away in Napster- and Gnutella-land. It is now so easy to set up a server and so many people use these systems, that just about everyone you know is running an Internet service. That's the best part: one can run a server without even having to think about it.
The point is that everyday users are finally empowered to do many of the things that were once the exclusive domain of highly trained system administrators using highly expensive equipment and pipes. And the systems are engineered to simplify tasks such as routing around NAT and firewalls to the point of transparency (or opacity, depending upon how you view it). End users are no longer second-class citizens.
Pages: 1, 2