Skip Navigation

Can you explain how federation works on protocol level?

Let's say we have lemmy instances A, B, C.

alice from A makes a post "Hello, world" to B. What happens? How is it processed on servers A, B, C and how do users from A, B, C receive her post?

46 comments
  • Think of it this way, when you make a post that post will be automatically distributed by your server to everyone who is a subscriber, depending on the type of platform that could mean subscriber to the community, or it could mean to your user account in the case of things like Mastodon. When the post is received it will be copied and re-hosted on all the servers which have subscribers.

    Exceptions to this happening are in the case of a user being banned or server being defederated, in which case the request is denied and the post isn't re-hosted by the instance with the ban or defederation against the user or server who made the post. It should be known that bans and defederation only typically happen in extreme cases such as defending against spam, hate speech, or abusive users.

    Might be a more simple explanation but I'm trying to keep it more simple since it helps people better understand the process.

  • It helps when you understand that you only ever directly interact with your instance.

    • Alice posts to A (in some community hosted on B)
    • B is federated with A so will eventually receive the post
    • C is federated with B so will eventually get the post
46 comments