~/talk

Pushing the limits of JavaScript with P2P and streaming BitTorrent

Talkat ColdFront 2014 · on Thursday, 2014-09-04· [javascript, web-platform]
slides:none on file

Shows a concrete system using nodejs + torrent-stream + WebTorrent and VLC to stream BitTorrent content on demand, with a concurrent piece fetching strategy (fetch critical pieces from multiple peers and drop slow ones — “house shopping”), uses DHT/magnet links for peer discovery (network ~10 million nodes), and implements pure-flix and peer-wiki (browse Wikipedia over torrents) plus a FUSE-backed torrent filesystem. Demonstrations work but are bleeding edge; claim is real-time P2P streaming is practical despite overhead and occasional instability.

AI-written summary · about

  1. 0:00Intro
  2. 2:44javascript and bittorrent
  3. 3:25how does bittorrent work?
  4. 3:38when people think of bittorent they usually think
  5. 3:48PIRACY
  6. 4:04bittorent is way more than this
  7. 4:49nice and simple
  8. 6:05what if clients just share data between each other instead?
  9. 6:46THIS IS P2P
  10. 8:05split the file into pieces ~(512kb - 10mb) and hash each of them
  11. 9:20we could just store the list of hashes on a trusted server
  12. 10:08list of hashes (torrent file) can be large though...
  13. 10:54RECURSION TO THE RESCUE!
  14. 11:42use the info hash (magnet link) to verify the hashes
  15. 12:16this is basically how bittorrent downloads data
  16. 13:05DISTRUBED HASH TABLE
  17. 15:03PRETTY SIMPLE
  18. 15:47bittorrent can distribute A LOT of content
  19. 17:32high latency
  20. 18:01improvement: fetch important piece from many peers
  21. 20:05IMPLEMENTED THIS
  22. 20:21torrent stream is a node module that does this
  23. 21:19this is not a gimmick
  24. 22:00netflix uses ~1/3 of internet traffic during peak hours source
  25. 23:08Mathias, show demo of peerflix
  26. 27:47MAD SCIENCE
  27. 29:12all of wikipedia is
  28. 29:30peerwiki browses wikipedia using bittorrent
  29. 34:25FUSE + bittorrent streaming
  30. 36:40the P2P space in node is moving rapidly
~/search
type to search 6,249 conferences, 138,987 speakers and 185,172 talks
~/help
cmdctrl k
search every conference, speaker and series
/
focus the filter search
h
home
c
conferences
s
speakers
e
series
t
light / dark — the status bar button does the same
?
this help
esc
close this, then clear every filter — or just the search, while you are typing in it

Ignored while you are typing. Pages without a filter rail have no search to focus.