4 ms·
Sidenote: I find it interesting that Syncthing kind of implements a purpose-specific software defined network by itself with its discovery and relay protocols.
by t0astbread 4y ago
Sidenote: I find it interesting that Syncthing kind of implements a purpose-specific software defined network by itself with its discovery and relay protocols. I'm guessing that's because Syncthing has been around for longer than accessible SDN solutions have existed?
Also makes me wonder how much Syncthing could be simplified if it could assume all devices have a fixed IP address and direct connectivity.
- yababa_y 4y agopretty much every p2p project ends up with a layer that does this to circumvent routing issues. what are the accessible SDN solutions you have in mind? for mina, i chose to use libp2p, although we haven’t enabled relay because the security and cost model is a bit scary. it will happen for the browser implementation i think.
- t0astbread 4y agoWhat I meant with "accessible SDN solutions" are things like Tailscale, ZeroTier, Nebula or one of those WireGuard key/route distribution servers which a few people have implemented in slightly different ways. (There used to be a good comparison of some of those but I can't find it anymore.) P2P programs where connections between devices with no common ownership/coordination don't matter (i.e. Syncthing if you're not sharing with other people) could ditch that layer and rely on an external SDN now that they've become easier to use. Of course, that makes those programs potentially less flexible and it requires users to set up another thing™ so I understand why developers of P2P programs might not wanna do that. But in theory it would be nice because we could have all SDN concerns in one system and not duplicated in every program that needs global discovery/connections.