Collapse N TCP streams into 1.
Here's the pitch
You're building a product which needs to handle N connections; an
IoT app, a multiplayer game, a C&C server. You need performance, but you don't want a complex backend. You
realize that you will need at least N threads or a threadpool with N
tasks, you'll need to send messages between tasks. You need to handle reconnection, you need to handle state,
and somehow you need to keep your product's logic separate.
TL;DR:
- Concurrency: Every client demands a dedicated socket and a thread or task to go with it
- Reconnection: Network hops and drops mean you need to solve graceful reconnection
- Edge-layer attacks: Your public-facing raw sockets are magnets for attacks
The Solution
Voltlane is either 1) a single, native executable, or 2) a library you add to your server:
Nclients are multiplexed into a single TCP stream (a “firehose”) with minimal overhead, or a stream of messages if you use it as a library- Cryptographically secure reconnects: Reconnecting users are validated by solving a challenge via ECDH (k256) + XChaCha20-Poly1305 encryption.
- Packets or messages to- and from Voltlane are tagged with unique client IDs to keep server code simple
- Option to buffer missed packets while waiting for clients to reconnect
Convinced? Try Voltlane—open source, free forever, self-hosted.
Free & Open Source