kanocz/lcvpn

Not only UDP

nejtr0n opened this issue · 4 comments

It would be grate to use not only UDP, but TCP/ip protocol.

It's possible to implement communication also by TCP, but in case if you have more servers connected, each server will connected to all of other servers + any lost packet will affect whole delivery within this connection. If you need it for some special situation (for example some of endpoints are behind NAT) I can implement this

Unfortunately, I don't know golang, and could not understand, how your program works =(
I'll try to explain my case.
I'm trying to make cluster of docker-swarm nodes. (https://docs.docker.com/swarm/). Main component of system - decentralized key/value storage (https://www.consul.io/intro/) This technology
has internal failover system. (Like replication and election of master, when some node is down)
I think lcvpn is the best solution for my case. (If some node is down - neighbours elcting new master and life is go on)
But you have wrote, that lcvpn "Communicates via UDP directly to selected host (no central server)" in readme.
It means no tcp connections between nodes. Am I right?

Yes, you're right, no tcp connection, but there is "udp connection", but it's only about connection between lcvpn instances. Using lcvpn you can create encrypted network between more servers and within this network applications can use both udp and tcp connections without any limitation, so you can use docker-swarm on it

Oh, it's great!! Thank you for this tool!