• can@sh.itjust.works
      link
      fedilink
      English
      arrow-up
      30
      ·
      edit-2
      1 year ago

      You’re on lemmy.ca, I’m not, but I can still see and reply to your comment

      To add to that we’re commenting on a post from a third instance neither one of us are registered at.

    • Lilium (She/Her)@lemmy.blahaj.zone
      link
      fedilink
      English
      arrow-up
      8
      ·
      1 year ago

      Imagine if [Thing™] was like email, that’s federation. Different servers with their own rules that all connect with each other to provide the same service

    • Resonosity@lemmy.world
      link
      fedilink
      English
      arrow-up
      3
      ·
      1 year ago

      Disclaimer: see the bottom of the post for any corrections.

      Imagine two spheres: me and you. Now, say we can talk between each other by uploading and downloading data back and forth with each other, like what you see when you check your internet speed on Speednet. I say “hello” in a text chat, and you say “hey” back. We can both see these messages. This is mutual federation: you and I both agree to communicate with each other.

      Now imagine you defederate from me. I can no longer download data from you, data either in the form of comments, posts, etc., nor can I upload my responses to those comments, posts, etc. I’m blind to you, and you’re blind to me. This is 2-body defederation.

      Now imagine a third sphere: some stranger that creates a post. Say I comment on the stranger’s post, and you respond to my comment. If we’re all federated, we’re all downloading and uploading each other’s data, meaning everyone can see every interaction: 3-body federation.

      Let’s say now that I defederate from you. I can’t see your activity and you can’t see mine. I can comment on the stranger’s post, as can you. We may be the only commenters on the stranger’s post. The stranger can see that 2 other Lemmy users interacted with their post, but on our side it looks like only one comment was made by you or me. This is an example of 3-body “relative” federation (quotes are mine).

      Now let’s imagine that I know that the stranger hasn’t defederated from you, and that bothers me. Maybe I don’t appreciate your data and don’t want to associate myself with you or any other actors that tolerate you. I may want to close myself off and save my effort for other Lemmy users. In this situation, it would make sense for me to defederate from both you and our mutual stranger. After defederation, I’ve completely cut myself off from your network. I can’t see your guy’s interactions, and you can’t see mine. This is a case of 3-body “absolute” or “total” defederation.

      Of course you can extend this idea to a server/instance/community that has thousands of users. Within an instance you can create little blobs of users that can and can’t communicate with each other. This activity happens at the user level as users choose who to block or defederate from.

      The next step would be extending this idea to multiple instances that each have thousands of any number of users. The communications between entire instances on Lemmy are dictated at an admin level, but the capabilities are essentially the same as those at a user level. Admins can defederate from other instances relatively, or even absolutely.

      When relative instance defederation happens, the entire user base of the subject instance can’t communicate with the entire user base of the admin’s instance. Notice that here we may have a third sphere in the form of a stranger instance that both communities can interact with. The admin’s instance can’t see the defederated instance, but the stranger instance can see both.

      Lastly, if we take this system to its final conclusion, then admin’s can absolutely instance defederate from other instances that they deem counterproductive, a threat, or for any other reason. The admin’s instance is blind to both your instance, and the other instances that federate with you.

      You can imagine that doing this can greatly fracture the global user base of the fediverse. However, Lemmy users are free to make accounts on any instance, and in doing so can bypass the decisions of admins of other instances to absolutely defederate.

      I guess a final case with absolute defederation would be to do a global instance defederation where one instance’s admin cuts off all communication with all other instances and fully insulates their community. They can do this, but it might not be sustainable depending on the size of the cut-off community and whether that user base can tolerate the amount of traffic hitting their news feeds given the population size (Facebook and Twitter might be examples of this - since they aren’t part of the fediverse, they’re technically globally defederated). A user can do something similar on their level by defederating from all other users on the fediverse, but that would be very impractical. Ideally, though, you would want every instance to federate with all other instances. In reality, there are islands and continents of social networks all throughout the fediverse.

      If this doesn’t explain it, there are lots of YouTube vids out there on this concept. I’d watch the ones that explain the recent Beehaw defederation as well as the one case that happened in like 2019 with Gab.

      Good luck! Stay Fediversal yo 😎🤙

      Edit: After writing this, I think I misunderstood defederation. I believe in relative defederation, either at the user or admin level, you can still see the other user’s/instance’s activity, but you can’t engage with that activity. You’re like a ghost that can see other people around you, but you can’t interact with them. Absolute and global defederation I think still makes sense.

      Also, I didn’t mention the idea of parent users/instances, but someone else might have explained it already for you. Basically parent = stranger in my examples above, but that the way information moves is different than what I imply.

      Cheers