Most of the problems in the current internet landscape is caused by the cost of centralized servers. What problems are stopping us from running the fediverse on a peer to peer torrent based network? I would assume latency, but couldn’t that be solved by larger pre caching in clients? Of course interaction and authentication should be handled centrally, but media sharing which is the largest strain on servers could be eased by clients sending media between each other. What am I missing? Torrenting seems to be such an elegant solution.

  • Bobby Turkalino
    link
    English
    148 months ago

    Torrenting requires way more resources than people realize. It’s easy to look at your torrents’ download speeds and think “oh, that’s less than a normal download, like from Steam, so it must not take nearly as many resources” – it’s not all about bandwidth. The amount of encryption and hashing involved in torrenting is fairly CPU heavy (every ~4 MB piece has to be hashed and verified), especially if your CPU doesn’t have onboard encryption hardware (think mobile devices). The sheer number of connections involved even in just one torrent can also bog down a network like you wouldn’t believe – anyone who runs a home seedbox can attest.

    • @[email protected]
      link
      fedilink
      38 months ago

      “oh, that’s less than a normal download, like from Steam, so it must not take nearly as many resources”

      For me it’s always more.

      The amount of encryption and hashing involved in torrenting is fairly CPU heavy

      Same amount of encryption https requires. Hashing is completely optional and is not required for operation, encription is optional too, but other peers may require it.

      every ~4 MB piece has to be hashed and verified

      Which is same. I’m not sure, but steam probably verifies file at some stage too.

      The sheer number of connections involved even in just one torrent can also bog down a network like you wouldn’t believe – anyone who runs a home seedbox can attest.

      There is not difference between 4kpkts for 500 connections vs 4kpkts for 1 connection for network itself. IP and UDP don’t even have such concept. Network is stateless. But shitty routers with small conntrack table on the other hand…