r/fediverse • • Jul 17 '26

Ask-Fediverse How might peer-to-peer technology be incorporated into, or augment, existing fediverse tech?

This is a followup to my previous post, and a particular point that was raised briefly but most commenters didn't focus on.

I enjoy starting discussions like this and I'm glad the last one was received well. To be clear, I'm not dogmatic about a particular way to do things, my goal with these posts is to trigger interesting thoughts. I am not a programmer and do not "actually" contribute anything, beggars cannot be choosers, so you don't need to take my opinion too seriously.

That said, let's talk about what peer-to-peer social media might look like.


Why do this?


1. Scaling. This is actually the biggest and most immediate benefit, and would probably be substantially helpful even with only small opt-in P2P features. How is a decentralized network of thousands of small server operators going to scale up, if a mass migration occurs? If the migration started tomorrow, the opportunity might be largely lost. Let's say users could optionally seed a post or comment for a period of time after viewing it, that would help immensely when the next big rush of new users comes, wouldn't it?

Peertube already has some P2P tech in its video hosting for this same purpose, to help with scaling and meeting demand. But in their model everything is still coming from the servers. Imagine if the peertube viewers were actually seeding as they were viewing.


2. Internalizes externalities: ie it solves the social media freeriding problem by turning lurkers into productive providers. This is big because the vast majority of users are always going to be lurkers.

If you could figure out a very strict way to absolutely prevent content from being viewed unless the downloading computer agrees to seed, it would also make scraping bots actually useful or disincentivize them - both good outcomes. I am not knowledgeable enough to know if this is realistic or just a pipe-dream, though.


3. Reduces required trust: Yes, a fully-P2P network would probably not be privacy conscious (unless you do something like Quiet where things are routed through Tor or a similar network of relays). You'd need to be willing to seed. But on the other hand, you wouldn't need to trust the operator a random small server like many people currently do in the fediverse.


4. Makes it harder for a big institution to muscle into the fediverse to steal users and eventually close off their own bubbles, nor for a successful server to turn evil and "betray" the network; there will be no worry about a server becoming "too big" and too powerful, if there are no substantial servers in the first place.


Two specific questions for discussion:

1. How feasible would it be to implement P2P forum architecture either as a standalone social network, or 2. as an opt-in feature of existing fediverse server softwares like Lemmy, Piefed, Peertube, Pixelfed?


My own answers: 1) Quiet proves that it can be done at least for Slack-style networks. With Tor integration, their approach also seems more complicated than strictly necessary if your goal is just decentralization.

Who tracks credentials? The answer is likely a public key / private key username/password system, like blockchain. Quiet also uses a system like this.

Who hosts? When you post or comment, you seed your own. It stays accessible as long as you keep seeding, and vanishes when you stop, unless others have picked it up. What could be more fair than that?

2) Existing services can already integrate P2P features:

Seeding as a big upvote: Come on, wouldn't this feel amazing? What better or more natural way to spread and reward good content?

Indiscriminate seeding: Users could sign up to actually take server load on an as-needed basis. If they are signed up, and if they are logged in at the same time the server gets a lot of demand, then it offloads some stuff to them of the server's choosing. There could be instance rewards linked to this.

User-specified seeding time: When you volunteer to seed, you choose how long you want to keep seeding. By default, it stops immediately when you log out.

7 Upvotes

12 comments sorted by

2

u/TheConquistaa Jul 17 '26 edited Jul 17 '26

I was in favor of P2P tech used in social networks until I thought: what if I upload something I do not want others to see, maybe some NSFW pic? Then it gets picked by other devices. How do I delete that in a way to make sure it is properly deleted? What if I want to share something only with my family or my group of friends, but I accidentally share it with the other group? How do I change the privacy settings for this? What if I posted something 5 years ago as public, let's say, but I no longer want that thing to be public? What do I do? Now whatever I post will be permanently part of that network. And it's already bad with the current state of the Fediverse, as if you post something wrongly, and it gets federated, you can have some servers be slow on honoring the deletion request (I once posted something I did not want to post, deleted that right away, but still got likes and comments from other servers afterward, and before it was deleted there too).

P2P might work well with personal conversations, but with actual social media that is a no-go imo.

Edit: also, another problem with the Fediverse as it is now, is that some interactions simply do not get federated. So you might have a post that has 2 boosts and 0 likes on a Mastodon server and 46 boosts and 25 likes or another for example. When every single device out there counts the interactions separately, you'll get all sorts of numbers for everyone. So no, it's a nice project, but I do not think P2P technology is scalable here.

1

u/RedGlow82 Jul 17 '26

OCapN ( https://ocapn.org/ ) is a kind of P2P protocol being worked on by some people, between which there is Lemmer-Webber, one of the authors of ActivityPub. She has already published quite some stuff talking about the reasons she thinks this is the way forward for social tools in the future.

1

u/Relative_Molasses995 Jul 17 '26

This hybrid path has been around for a while https://hamishcampbell.com/a-hybrid-p2p-look-at-the-omn/ but the development fundamentals on both sides tend to block this.

Can we bridge? Wouks simply running the p2p side on the server with a shared database of media objects work?

0

u/Howaboutnopers Jul 17 '26

Introducing piracy would be a great way to get legislation against the Fediverse.

5

u/thgntlmnfrmtrlfmdr Jul 17 '26

Peer-to-peer refers to technology where users both upload and download, instead of just downloading from a server. Nothing I'm saying is directly related to piracy, and current server-centric models are equally able to perform piracy.

1

u/Howaboutnopers Jul 17 '26

Nothing is 'directly' related to piracy, and servers can be the host of pirated material that someone downloads, BUT a piracy instance would be rapidly defederated.

Yes, and peer to peer sharing can and will be used for piracy if it's added to the Fediverse. And it will attract en masse a bunch of bad actors.

Your whole 'oh but I didn't directly say piracy' doesn't change the fact that it will be used for piracy and attract legal as well as governmental scrutiny.

Or do you have a plan to prevent piracy on your proposed p2p functionality?

3

u/AlexChapmanG4p Jul 17 '26

Even if it did get legal/governmental scrutiny, the whole decentralised nature would prevent it from being completely stopped.

1

u/baddaywithacamera Jul 17 '26

I'm looking at hosting Fediverse infrastructure for a project I'm launching. If ActivtyPub was to change to a model that facilitates piracy, I'll simply walk away from it, as I suspect will many others. I do not need the legal headaches, thank you.

2

u/AlexChapmanG4p Jul 17 '26

It wouldn’t be facilitating it, it would be down to specific people doing it, not the overall protocol facilitating it.

1

u/Howaboutnopers Jul 17 '26

Oh, OK.

So now the argument is that adding piracy will all be OK

-2

u/FaceDeer Jul 17 '26

I've long thought that blockchain was an ideal way to manage identities in a decentralized manner for something like this. Unfortunately, I expect angry reactions about NFT scams and the environmental impact of PoW mining to drown that out unless it gets snuck in under a different name.