“The BitTorrent DHT is an amazing engineering feat and one of the coolest ideas in computer science, I think, because it works without any central coordination.”

WebTorrent is a streaming torrent client for the browser that can be used without any additional plugins, extensions, or installations. It is written entirely in JavaScript, and uses WebRTC to handle peer-to-peer communication. There are some limitations to making BitTorrent work over the web using WebRTC, including the inability for a browser-based WebTorrent client or “web peer” to communicate directly with a torrent client.

However, the potential for every browser to contribute to the hosting and streaming of files is unprecedented. Imagine if large content sites like Netflix or YouTube did not have centralized hosting, and instead relied on its users to seed the content to each other using their web clients. This enables not only more efficient networks, but also the ability for each user to contribute to and be part of the content delivery network.

Feross Aboukhadijeh is the creator of WebTorrent. Previously he built PeerCDN, a peer-to-peer content delivery network, which was acquired by Yahoo in 2013.

Questions

Could you define what a peer-to-peer technology is?

What is the model for the distributed hash table across the network?

What were the problems with the traditional BitTorrent user experience?

How does npm embody the best way to break components into small reusable parts?

What is Browserify and why is it useful for WebTorrent?

How does WebRTC play an important role in enabling WebTorrent?

What are the engineering problems that are still unsolved in WebTorrent, and what are you working on now?

Links

Sponsors