Hacker Newsnew | past | comments | ask | show | jobs | submitlogin

Email is absolutely federated.

"A federated protocol is a protocol (defined next) that makes it possible for servers to communicate with each other, regardless of who is running those servers."

Federated is not a synonym for Mastodon instance.



Federation implies delegation from a central authority, which makes Mastodon and ActivityPub more “confederated” than anything. Inasmuch that MX records stem from the root servers, email is federated that way, but otherwise it’s decentralized, with every MTA being its own authority. The line is fuzzy.


Words in natural languages develop different meanings. The most common term for a protocol resembling a political confederation is federated.


"possible for servers to communicate with each other, regardless of who is running those servers."

Wouldn't that definition include almost everything on the internet?


I think it's important to distinguish between application layer and lower layers of the stack here. For the lower layers (firmware updates for protocol changes notwithstanding) it is basically all federated, as you say. But at the application layer there are protocols that you can participate in just by knowing the protocol, and others which require knowing a secret or getting included in trusted peers or otherwise filtered to effectively make them proprietary and not federated.


No?

For a start, it wouldn't include virtually every online game, or any protocol that enforces user sign in, like Discord or MS Teams.


HTTP is a protocol that allow servers to communicate with each other, regardless of who is running those servers.


No. HTTP is Client/Server, not Server/Server.


My servers beg to differ.


If your servers are making HTTP requests, then they are clients in the context of those requests.


So send a request in the opposite direction.

Now both are servers, and they're communicating with servers. Server to server communication on http.

(What would "server/server" even mean if you're making that distinction? Two communicating parties that only receive data, never sending it?)


Something like database replication where they’re equal peers.

Or an IRC network (the server to server parts of it).


In whuch sense? Like my backend and my db communicate together, but they're both run by me, so arguably they don't correspond to that sentence




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: