Does federation connect to a single lemmy network, or can there be multiple?
When a lemmy instance federates, does it connect to one big lemmy network, or can there be multiple disconnected, yet locally federated instances? What I'd like to know is, can I simply join any Lemmy server and choose "All" to view everything Lemmy has to offer, or is there still hidden content?
I understand that some servers are unfederated. I guess I'm curious about the reach of the "All" mode.
Your instance connects directly to other instances. All of the lemmy instances doing that with each other is the lemmy network.
Each instance can connect with any other instance unless blocked, but will not do so until someone on your instance follows a community on the remote instance.
In short, there is no way to see everything, and there is no one true view
I think what many find confusing is that there is no master lemmy server to facilitate instances finding each other. I know they use the Activitypub protocol, but I dont know what it does.
I also dont understand how torrent clients find each other.
The way I think it works is that your local instance hosts its own communities, and then it will reach out to other instances to grab content from every external community that at least one local user has subscribed to. "All" mode is limited to that set of content.
So I think the only way to see the entire set of all content on lemmy would be to meticulously subscribe to every single community on every single instance.
And someone can correct me if I'm wrong, but I think you can still subscribe to subs on defederated instances, it's just the interactions that don't get passed back and forth.
and then it will reach out to other instances to grab content from every external community that at least one local user has subscribed to
It's the other way around. The local user subscribes to the community on the remote instance, which causes the remote instance to then push you every action that occurs on that community as it happens. The pull method is only used once and doesn't bring in comments, it's meant as a preview for when a remote community is used for the first time.
And this is why their content won't make it to your instance: it expects the other instance to send it to you, but they're refusing to. Similarly, they won't accept content from your instance, even though it's trying to.
Local and remote communities are pretty similar internally, federation happens as a separate process in a queue system.
This leads to this:
you can still subscribe to subs on defederated instances, it's just the interactions that don't get passed back and forth.
Yes, there can be two or more networks that just about completely defederate each other. However, you can host a Lemmy instance and federate with whomever you see fit unless they block you.