Episode 38: Building and testing network stacks with Rama.
In this Protocol Shorts episode of Netstack.fm, Glen talks with Brecht Stamper about Rama, the modular Rust framework for building clients, servers, proxies, and other network systems. Brecht shares how he came to understand Rama’s core idea that everything is a service, and why that simple input to output contract makes it easier to compose complex stacks without constantly inventing new traits or glue code.
They also discuss how Rama helps with testing, including gRPC client and server logic without spinning up real HTTP or TCP infrastructure. The conversation then moves into practical production lessons, such as gRPC latency caused by TCP_NODELAY, the role of OpenTelemetry and logging, and how Rama can provide better abstractions while still allowing low level control.
Later in the episode, Glen and Brecht explore Rama’s evolving extension system, including the move toward append only extensions, clearer separation between request and connection state, and support for complex scenarios such as HTTP/2 streams and protocol upgrades.
They close with thoughts on where Rama is heading next, including HTTP/3, QUIC, better developer tooling, performance work, and making more hard won network fixes available to everyone through the framework.
Learn more
https://ramaproxy.org/ — Rama homepage: modular Rust framework for proxies, clients, servers, inspection, tunneling, and network diagnostics.
https://ramaproxy.org/book/ — Rama book: broader introduction to Rama and its approach to fine grained programmable control over network stacks.
https://ramaproxy.org/docs/rama/index.html — Rama API documentation: generated Rust docs for the main Rama crate.
https://github.com/plabayo/rama — Rama source code on GitHub.
Chapters
00:00 Intro
00:48 Introduction to Rama and Brecht's Role
02:46 Understanding Services in Rama
08:22 Testing and Mocking in Rama
10:23 gRPC and TCP Configuration Issues
15:35 Evolution of Extensions in Rama
24:58 Building with Rama and Rama's Horizon
31:52 Outro
Netstack.FM
More information: https://netstack.fm/#episode-38
Join our Discord: https://discord.gg/29EetaSYCD
Reach out to us: hello@netstack.fm
Music for this episode was composed by Dj Mailbox. Listen to his music at https://on.soundcloud.com/4MRyPSNj8FZoVGpytj