SMUX
A stream multiplexing library for Golang with minimal memory usage
SMUX is a stream multiplexing library for Go that lets multiple logical streams share one reliable underlying connection. It is designed for transports such as TCP or KCP, where ordering and reliability are already provided by the lower layer. The library uses sessions, streams, and frames to manage many independent data flows over a single connection. It focuses on controlled memory usage, smooth receiving behavior, fair traffic shaping, and small protocol overhead. Its design includes a session-wide receive buffer, minimized 8-byte headers, and per-stream sliding windows in newer protocol versions. smux is especially useful for networking software that needs efficient connection management without opening a separate socket for every stream.