this post was submitted on 06 Nov 2023
185 points (95.6% liked)

Open Source

31175 readers
165 users here now

All about open source! Feel free to ask questions, and share news, and interesting stuff!

Useful Links

Rules

Related Communities

Community icon from opensource.org, but we are not affiliated with them.

founded 5 years ago
MODERATORS
 

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.

you are viewing a single comment's thread
view the rest of the comments
[–] [email protected] 3 points 1 year ago (1 children)

The instance is the aggregator, if it's P2P then the aggregation is done by the client. In a torrent swarm you contribute bandwidth, not processing power

[–] [email protected] 2 points 1 year ago (2 children)

I'm not necessarily experienced with server hosting, but isnt bandwidth the primary cost of fediverse instances for example? There shouldn't be to much logical work compared to delivering content?

[–] [email protected] 5 points 1 year ago (1 children)

Fediverse instances with image hosting are bandwidth limited, but that's just a normal result of image hosting. If you remove image hosting then the bottleneck becomes processing power again.

[–] [email protected] 2 points 1 year ago (1 children)

AFAIK, the main bottleneck is data storage. Related to processing power, but also IO and having a central source of truth.

[–] [email protected] 2 points 1 year ago

Sure, but data storage is quite cheap these days. I'm not saying it isn't a problem, but a 12 Tb raid goes a really long way, or AWS s3 charges pennies per GB per month and solves all your problems if you're prepared to spend tens of dollars per month.

Bandwidth on the other hand is either inaccessible (read: you have a normie ISP that has at most 2 speeds to sell you and neither of them have guarantees), or extremely expensive, on the order of thousands per month. On top of that, if you happen to pay AWS for storage, each request must be forwarded to AWS, converted in some way by your server then sent to the client, which means it eats both up and down bandwidth. Of course, if you know what you're doing you can use Amazon's CDN but at this point administering your instance is a full time job and your expenses are that of small company.

[–] [email protected] 3 points 1 year ago* (last edited 1 year ago)

Sure, but this is largely because currently each client doesn't need to aggregate the whole fediverse. In a decentralised network, you can't split the sum total of processing required to run the fediverse equally amongst peers. Each peer would need to do more or less the same aggregation job, so the total processing required would be exponentially more than with the current setup. You could still argue it's a negligible processing cost per client, but it's certainly way less efficient overall even if we assume perfect i/o etc in the p2p system and even if the client only needs to federate the user selected content

Also just practically deploying a client app that can federate/aggregate constantly in the background (kinda required for full participation) and scale with the growth of fedi without becoming a resource hog I imagine would be pretty tough, like maybe possible yeah but I feel like it makes sense why it isn't like that also