RiV-mesh is an implementation of a fully end-to-end encrypted IPv6 network, created in the scope to produce the Transport Layer for RiV Chain Blockchain, also to facilitate secure conectivity between a wide spectrum of endpoint devices like IoT devices, desktop computers or even routers. It is lightweight, self-arranging, supported on multiple platforms and allows pretty much any IPv6-capable application to communicate securely with other RiV-mesh nodes. RiV-mesh does not require you to have IPv6 Internet connectivity - it also works over IPv4.
This project aims to transparently reduce latency of a connection over Yggdrasil network for such applications as online gaming, VoIP and others.
By default, yggdrasil-go routes data only through explicitly connected peers and doesn't attempt to reach other nodes accessible over the internet. Therefore, path usually contains 1-2 intermediary nodes, namely public peers of both sides. If both you and your peer use internet, you can send traffic directly (aka peer-to-peer), thus reducing latency.
Jumper connects to Admin API of the running router. And monitors active sessions (peers you have data exchange over Yggdrasil network with).
Once any such session appears, jumper tries to connect to associated peer, assuming it has another jumper running on the same listen_port.
Both jumpers exchange their external internet addresses and use NAT traversal technique to instantiate direct bridge over the internet.
If previous step was successful, jumper will relay all data passing the bridge to the router until session is closed or other error occurs.