Fat protocols aren’t new: What blockchain can learn from p2p file sharing

3 minute read

If you find WORDS helpful, Bitcoin donations are unnecessary but appreciated. Our goal is to spread and preserve Bitcoin writings for future generations. Read more. Make a Donation

Fat protocols aren’t new: What blockchain can learn from p2p file sharing

By John Backus

Posted May 29, 2018

Starting in 1999, we saw an explosion of p2p file sharing technology. We had Gnutella (the protocol behind Limewire), FastTrack (Kazaa), eDonkey, and BitTorrent. Limewire, Kazaa, and eDonkey all died, but the protocols they helped create lived on!

People have speculated on what a future with fat protocols will look like. File sharing protocols aren’t exactly the same, but they have a lot of similarities we can learn from.

Looking at the p2p ecosystem, a few things are clear:

  • Fat protocol ecosystems have way more variety and experimentation when network effects don’t stop people from creating new clients
  • Protocols live on and evolve regardless of whether the original creators are working on them or not
  • The application layer seems to capture little value for the protocol creator,**but third party competition to build on top of the protocol may be a powerful force for finding product/market fit
  • While people weren’t able to figure out how to integrate a token into p2p file sharing technologies back in the day, it does seem like a properly calibrated token marketplace would have solved a lot of problems and accelerated p2p’s breakneck adoption even more.

Vibrant and competitive ecosystems

… by replicating and storing user data across an open and decentralized network

rather than individual applications controlling access to disparate silos of information, we

reduce the barriers to entry

for new players and create a

more vibrant and competitive ecosystem

of products and services on top.

Fat Protocols

from Union Square Ventures

What file sharing application did you use before BitTorrent? Was it LimeWire, BearShare, Shareaza, giFT, Morpheus, Phex, or Acquisition? All of those were separate applications made by different teams that all connected to Gnutella network! There was also FrostWire, LimeWire Pirate Edition, and WireShare which were forks of Limewire’s client.

I’m not going to do the same song and dance here listing a dozen clients for FastTrack and eDonkey, but I could. Every protocol had tons of clients. In fact, Limewire wasn’t the creator of the Gnutella protocol, their app was just really popular because they added a lot of features.

Features

People didn’t all just build near identical clients of course. Different companies competed to build clients to the Gnutella protocol that served different needs. BearShare seemed to focus on building a good client. It had a straightforward search, a “theater” to preview movies and music while they downloaded, and plenty of other features like a place to chat with other users.

BearShare provided a full featured experience

Quality

The eDonkey company developed their own network (“eDonkey2000 Network”) and a corresponding client. Even though they developed the protocol, they had to compete with a very popular open source client called eMule which many viewed as having a better user interface!

Which would you rather use?

Generalization

Some people tried to improving the user experience via better interfaces. Others tried to provide access to as much content as possible by creating clients that used multiple networks.

Shareaza became popular by supporting every file sharing protocol under the sun:

Shareaza … supports the Gnutella, Gnutella2, eDonkey, BitTorrent, FTP, HTTP and HTTPS network protocols and handles magnet links, ed2k links, and the now deprecated gnutella and Piolet links

Shareaza searcheseverything

Abstraction

The giFT project was similar to Shareaza in trying to implement every protocol, but it aimed to be a file sharing backend that others could build user interfaces for:

Two totally different frontends (GiFTcurs and Apollon) using giFT on the backend

giFT supported most protocols and was compatible with Windows, Linux, and Mac.


Subscribe to WORDS

* indicates required