Follow

@silverpill@mitra.social Ah, I think I sorta get what you mean -- similar to how WebTorrent in the browser can't talk to normal BitTorrent peers, but WebTorrent peers running on node.js can talk to both...?

Basically a p2p extension could be developed for ActivityPub so that any ActivityPub server which both supports that extension AND is TCP-dialable could act as a relay for all the servers which support that extension but are NOT dial-able.

I might be ignorant of ActivityPub and how it works but I suspect this would run into issues because most implementations will want to hear about activity on Server A coming directly from the URL they have for Server A -- Every entity in ActivityPub has an ID and as far as I can tell that ID always starts with `https://<domainname>/

Surely there is a way to make it work, but at least from my (admittedly somewhat ignorant) understanding, it feels like trying to shoe-horn p2p into a protocol which was hard locked into requiring TCP dial-able servers very early on in its design. I have seen some p2p activitypub extensions in a similar vein like trustbloc.github.io/activityan but how many implementations are actually going to support things like that ? I suspect most of the activitypub developers would push back against such specs, calling them bloated and too burdensome to implement correctly.

But also, such a p2p activitypub project could also include a TCP reverse tunnel gateway feature similar to greenhouse, ngrok, or pagekite. This way the ActivityPub application layer protocol can stay as-is and keep its precious ubiquitous `https://` URLs, but at the same time someone might be able to host a homeserver in their dorm room where they can't configure port forwarding.

IDK. at least thats how I see it. The application protocols (specifically web browsers) have too much inertia and wont move, so we have to move the network for them.

Sign in to participate in the conversation
Pixietown

Small server part of the pixie.town infrastructure. Registration is closed.