Discover
netstack.fm
netstack.fm
Author: Plabayo BV
Subscribed: 18Played: 131Subscribe
Share
© 2025 Plabayo BV
Description
A podcast about networking, Rust, and everything in between. Join us as we explore the stack: from protocols and packet flows to the people and projects building the modern internet — all through the lens of Rust. Featuring deep dives, crate spotlights, and expert interviews.
29 Episodes
Reverse
Episode 29 – Hyper with Sean McArthur (Ep 2 Remastered).In this remastered episode, Glen interviews Sean McArthur, the creator and maintainer of the Hyper ecosystem. They discuss Sean's journey in software engineering, the evolution of Rust and asynchronous programming, and the growth of Hyper from its inception at Mozilla to its current status in the web development landscape. Sean shares insights on the creation of hyper, hyper-util, http, headers, the Warp framework, and the challenges of integrating HTTP/3 and QUIC. The conversation also touches on collaboration with cURL, the FFI layer, and Sean's aspirations for the future of Hyper and the broader ecosystem.Learn more about Sean McArthur, Hyper and Warp:https://seanmonstar.com/https://seanmonstar.com/sponsor/https://hyper.rs/https://seanmonstar.com/blog/async-hyper/https://github.com/hyperium/hyperhttps://github.com/seanmonstar/warphttps://seanmonstar.com/blog/warp/RamaIf you like this podcast you might also like our modular network framework in Rust: https://ramaproxy.orgChapters00:00 Episode remaster notes00:37 Intro01:21 Get to know Sean McArthur and his origins in Rust08:32 The Impact of Mozilla on Sean's Career10:47 A short history of Hyper21:52 hyper-util, http and headers crates33:46 Warp36:14 Hyper's Core Focus and Future Directions38:21 Integrating HTTP/2 and HTTP/3 Support40:19 The reqwest crate45:04 The Complexities of HTTP/3 Integration48:40 Reflections on the cURL and Hyper Collaboration55:51 Future Aspirations for Hyper59:21 Encouraging Community Engagement in Open Source01:02:40 OutroNetstack.FMMore information: https://netstack.fm/#episode-29Original episode was: https://netstack.fm/#episode-2Join our Discord: https://discord.gg/VN77rKHRReach out to us: hello@netstack.fmMusic for this episode was composed by Dj Mailbox. Listen to his music at https://on.soundcloud.com/4MRyPSNj8FZoVGpytj.
episode 28: socketioxide with Théodore Prévot.This episode features an in-depth conversation with Théodore Prévot, creator and maintainer of the Rust crate socketioxide. We explore the origins of the project, how a personal writing app led to implementing a full Socket.IO server in Rust, and what it takes to build and maintain a high-level real-time protocol on top of Tokio, Tower, and the Rust HTTP ecosystem.Théodore walks us through the layered architecture of Engine.IO and Socket.IO, explains concepts like rooms, namespaces, acknowledgements, adapters, and connection recovery, and reflects on protocol versioning and compatibility challenges. We also dive into one of the hardest technical problems behind socketioxide: building a custom lazy JSON deserializer wrapper around Serde to efficiently route and decode mixed JSON and binary payloads.Finally, we discuss abstraction boundaries, async runtime considerations, integration testing strategies, the possibility of a Rust client implementation, and what motivates long-term open source maintenance.Learn more:https://docs.rs/socketioxide/latest/socketioxide/ — socketioxide documentationhttps://github.com/Totodore/socketioxide — socketioxide GitHub repositoryhttps://totodore.github.io/serde-wrapper/ — Custom Serde deserializer articlehttps://socket.io/docs/v4/ — Official Socket.IO documentationhttps://github.com/socketio/engine.io-protocol — Engine.IO protocol referencehttps://www.youtube.com/watch?v=HEhhWL1oUTM — Talk featuring Théodore PrévotRamaIf you like this podcast you might also like our modular network framework in Rust: https://ramaproxy.orgChapters00:00 Intro01:04 Get to know Théodore Prévot06:43 The origins of socketioxide08:50 Understanding Engine.IO and Its Role11:43 The Evolution of Socket.IO and Its Features22:49 Integration with Other Protocols and Frameworks25:45 Understanding the boundaries of Socket.IO vs Engine.IO35:38 Custom JSON Deserialization Challenges40:54 Navigating Socket.IO Versioning47:02 Abstraction in socketioxide57:04 Future Directions for socketioxide01:05:26 OutroNetstack.FMMore information: https://netstack.fm/#episode-28Join our Discord: https://discord.gg/29EetaSYCDReach out to us: hello@netstack.fmMusic for this episode was composed by Dj Mailbox. Listen to his music at https://on.soundcloud.com/4MRyPSNj8FZoVGpytj
episode 27: AI Policies, OSS Maintenance and EU Open Source Academy with Daniel Stenberg.This episode features a deep and pragmatic conversation with Daniel Stenberg, founder of cURL and president of the European Open Source Academy, reflecting on FOSDEM 2026, the growing role of open source in European policy, and what digital sovereignty means in practice; Daniel shares the motivation behind the EU funded Open Source Academy, discusses how maintainers are dealing with the rise of AI generated security reports, explains why cURL shut down its bug bounty program, and offers a balanced view on where LLM tools genuinely help in code review and security research versus where they create noise, all while highlighting the long term realities of maintaining critical infrastructure software for decades.Learn more:https://curl.se — cURL websitehttps://daniel.haxx.se/blog/ — Daniel Stenberg bloghttps://fosdem.org — FOSDEMhttps://github.com/bagder/fosdem — FOSDEM tips repositoryhttps://europeanopensource.academy — European Open Source AcademyRamaIf you like this podcast you might also like our modular network framework in Rust: https://ramaproxy.orgChapters00:00 Intro01:21 Navigating FOSDEM: Insights and Experiences06:16 The Role of Open Source in Policy and Society10:53 Polhemsrådet and European Open Source Aacademy23:19 The Future of Bug Bounty Programs and AI's Role32:35 Good use of LLM technologies in context of cURL42:32 Daniel's personal LLM usage47:28 how AI might evolve and impact cURL in future53:08 The Future of AI in Software Development56:02 Continuous Improvement in Curl01:02:12 Mentorship and Community in Open Source01:07:41 Very quick intro to some more obscure protocols supported by cURL01:18:54 OutroNetstack.FMMore information: https://netstack.fm/#episode-27Join our Discord: https://discord.gg/29EetaSYCDReach out to us: hello@netstack.fmMusic for this episode was composed by Dj Mailbox. Listen to his music at https://on.soundcloud.com/4MRyPSNj8FZoVGpytj
episode 26: Email protocols with Mauro De Gennaro from Stalwart Labs.This episode features an in depth conversation with Mauro De Gennaro of Stalwart Labs that demystifies how email actually works in practice, from SMTP delivery and DNS based routing to IMAP, JMAP, spam filtering, encryption, and authentication standards like DKIM, SPF, and DMARC, all through the lens of building and operating a modern mail and collaboration server in Rust; Mauro shares his long personal journey from early BBS systems to founding Stalwart, explains why email protocols have evolved the way they have, how self hosting email can be practical and secure today, and why open standards, automation, and memory safety are key to reclaiming control over critical communication infrastructure.Learn more:https://stalw.art — Websitehttps://github.com/stalwartlabs — GitHub orghttps://github.com/stalwartlabs/stalwart — GitHub repositoryhttps://stalw.art/docs — Documentation (including installation instructions)https://stalw.art/slides — Product presentation slideshttps://fosdem.org/2026/schedule/event/FP8EFX-scaling-email/ — FOSDEM 2026 talkhttps://www.ietf.org/meeting/125/ — IETF 125 ShenzenRamaIf you like this podcast you might also like our modular network framework in Rust: https://ramaproxy.orgChapters00:00 Intro00:50 Get to know Mauro De Gennaro08:44 Origins of Stalwart12:24 The Evolution of Stalwart and Its Features14:59 Life of a mail sent to a Stalwart server18:14 Understanding Email Transmission and Protocols22:54 Combination of Email with Calendar and Contacts26:37 Email File Attachments31:56 Stalwart and ACME39:44 Email Address validation44:47 Exploring the Sieve Protocol for Mail Filtering47:54 Email RFCs and standarization54:39 Experiences at FOSDEM and the Future of Email56:50 The Case for Self-Hosting Email Solutions01:00:27 Backup Strategies for Self-Hosted Email Servers01:04:35 Ensuring Redundancy and Reliability in Email Hosting01:12:38 Comparing Email Protocols: SMTP, POP3, and IMAP01:16:25 Shared Inboxes and Automated Email01:24:26 Understanding Email Authentication Standards01:27:54 ARC, SPF, DKIM and DMARC01:33:24 Integrating AI with Email Systems01:36:03 Self-Hosting Considerations01:39:31 Getting Started with Stalwart01:41:54 OutroNetstack.FMMore information: https://netstack.fm/#episode-26Join our Discord: https://discord.gg/29EetaSYCDReach out to us: hello@netstack.fmMusic for this episode was composed by Dj Mailbox. Listen to his music at https://on.soundcloud.com/4MRyPSNj8FZoVGpytj
episode 25: FOSDEM 2026 special.Recorded live from FOSDEM 2026.Learn more:https://fosdem.org/2026/ — FOSDEM 2026 websitehttps://fosdem.org/2026/schedule/event/CKANPK-programmable_networking_with_rama/ — FOSDEM 2026 rama talkhttps://www.nlnetlabs.nl/ — NLnet Labs websitehttps://github.com/NLnetLabs/roto — roto github repohttps://fosdem.org/2026/schedule/event/DS7LFX-rust-roto-calling-jit-compiled-scripts/ — FOSDEM 2026 roto talkhttps://ratatui.rs/ — ratatui websitehttps://orhun.dev/ — website from OrhunRamaIf you like this podcast you might also like our modular network framework in Rust: https://ramaproxy.orgChapters00:00 Intro00:47 Intro interview Terts (NLNetLabs)02:00 Roto04:06 What's next for Roto06:56 Tert's reflections on FOSDEM09:49 Networking and Community Building11:28 Rust Week (NL)12:32 Closing Thoughts and Community Encouragement13:45 Intro Interview Orhun (Ratatui)21:13 Reflections on FOSDEM 202622:47 Preview of next week's episode23:26 OutroNetstack.FMMore information: https://netstack.fm/#episode-25Join our Discord: https://discord.gg/29EetaSYCDReach out to us: hello@netstack.fmMusic for this episode was composed by Dj Mailbox. Listen to his music at https://on.soundcloud.com/4MRyPSNj8FZoVGpytj
episode 24: WebAssembly and Rust in Practice, A Conversation with Alex Crichton.In this episode we sit down with Alex Crichton to talk about WebAssembly and Rust in practice. We discuss how Wasm grew beyond the browser into a serious runtime for servers and plugins, and why Rust fits so well in this space.We also explore WASI, the component model, and lessons from building Wasmtime, covering performance, security, and what it takes to run Wasm in production.Learn more:https://github.com/alexcrichton — Alex Crichtton on GitHubhttps://webassembly.org/ — WebAssembly overview and introductionhttps://wasi.dev/ — WASI introduction and goalshttps://component-model.bytecodealliance.org/ — WebAssembly component model documentationhttps://bytecodealliance.org/ — Bytecode Alliance home pagehttps://wasmtime.dev/ — Wasmtime runtime home pagehttps://docs.wasmtime.dev/ — Wasmtime documentationhttps://docs.rs/wasmtime/latest/wasmtime/ — Wasmtime Rust API documentationhttps://github.com/bytecodealliance/wasmtime — Wasmtime source codehttps://github.com/bytecodealliance/wasm-tools — wasm tools used throughout the Wasmtime ecosystemhttps://github.com/bytecodealliance/wit-bindgen/ — wit bindgen tooling for the component modelhttps://webassembly.github.io/spec/ — WebAssembly specification renderinghttps://github.com/WebAssembly/WASI — WASI specification repositoryhttps://github.com/WebAssembly/proposals/ — Active WebAssembly proposalshttps://bytecodealliance.org/articles/ — Bytecode Alliance blog and technical articlesRamaIf you like this podcast you might also like our modular network framework in Rust: https://ramaproxy.orgChapters00:00 Intro00:42 Introduction to Alex Crichton and His Journey04:14 Understanding WebAssembly: Basics and Benefits07:35 Challenges of WebAssembly and DOM Access16:29 Exploring WASI: The WebAssembly System Interface31:11 The Relationship Between WebAssembly and WASI34:43 Understanding WebAssembly Instructions37:09 The Role of Compilers in WebAssembly40:07 Exploring Roto and WebAssembly Integration42:19 Garbage Collection in WebAssembly44:17 Dynamic Libraries and Code Sharing in WebAssembly45:49 Core WebAssembly and Its Layers48:39 The Component Model's Evolution51:25 String Handling in WebAssembly54:26 Simplifying WebAssembly for Developers55:30 Specifications and Documentation in WebAssembly57:31 Asynchronous Support in the Component Model01:01:29 Exploring WASI P3 and Async Support01:10:36 More about the Component Model01:22:39 The Role of the Bytecode Alliance01:26:57 Akamai's Interest in WebAssembly01:31:29 Exploring WebAssembly Use Cases01:37:27 Future of WasmTime Development01:40:24 Understanding WasmTime's Architecture01:44:34 Getting Started with WasmTime01:51:19 Security and Testing in WasmTime01:56:11 OutroNetstack.FMMore information: https://netstack.fm/#episode-24Join our Discord: https://discord.gg/29EetaSYCDReach out to us: hello@netstack.fmMusic for this episode was composed by Dj Mailbox. Listen to his music at https://on.soundcloud.com/4MRyPSNj8FZoVGpytj
episode 23 — Protocol Shorts: HTTP as an Application Bus.This is the debut of our "Protocol Shorts" series: fast-paced, high-density conversations with one or more expert guests centered around a common theme. In the "HTTP as an application bus" episode, we’re breaking down the tunneling renaissance—specifically the clever 'protocol-within-a-protocol' hacks that are changing the game.From hijacking H2 CONNECT to run full-duplex WebSockets, to the subtle ways we’re now nesting modern traffic inside older transports, we’re looking at how the network layer is being rewritten from the inside out.Learn more:https://grpc.io — Official gRPC website.https://grpc.io/docs/platforms/web/ — Overview of gRPC Webhttps://github.com/hyperium/tonic — Tonic, the most popular gRPC implementation in Rusthttps://developers.google.com/protocol-buffers — Protocol Buffers documentation explaining the IDL, encoding, and ecosystem behind gRPC.https://datatracker.ietf.org/doc/html/rfc7540 — HTTP/2 specificationhttps://developer.mozilla.org/en-US/docs/Web/API/WebSockets_API — WebSockets API overview, including framing, duplex communication, and browser support.https://datatracker.ietf.org/doc/html/rfc6455 — WebSocket protocol specification describing frames, ping pong, and connection upgrade.RamaIf you like this podcast you might also like our modular network framework in Rust: https://ramaproxy.orgChapters00:00 Welcome Lucio, 1st guest of this protocol shorts episode01:52 Understanding HTTP/2 and Metadata Frames05:32 Limitations of gRPC Web and Client Streaming08:28 Encoding Formats: Protobuf vs JSON11:18 gRPC in Browser Contexts14:16 The Future of gRPC with HTTP/3 and QUIC18:03 Introduction to Brecht, 2nd guest of this episode20:00 Understanding HTTP/2: Features and Use Cases26:34 Custom Protocols Over HTTP/231:52 Exploring WebSockets: Basics and Applications37:05 WebSockets: Advanced Use Cases and Multiplexing41:40 OutroNetstack.FMMore information: https://netstack.fm/#episode-23Join our Discord: https://discord.gg/29EetaSYCDReach out to us: hello@netstack.fmMusic for this episode was composed by Dj Mailbox. Listen to his music at https://on.soundcloud.com/4MRyPSNj8FZoVGpytj
episode 22 — Rust URL with Simon Sapin.In this episode of Netstack.fm, Simon Sapin discusses building the rust-url crate based on the WHATWG URL specification. He also highlights that IDNA support was integrated to handle internationalized domain names, which includes critical security checks to prevent phishing from "confusable" characters that look identical to users.Learn more:https://docs.rs/url — rust-url is an implementation of the URL Standard for the Rust programming languagehttps://docs.rs/idna — IDNA (Internationalizing Domain Names in Applications) and Punycodehttps://docs.rs/idna_adapter — unicode back end for the idna cratehttps://docs.rs/form_urlencoded — Parser and serializer for the application/x-www-form-urlencoded syntax, as used by HTML formshttps://docs.rs/percent-encoding — Percent encoding and decodinghttps://servo.org/ — official servo websitehttps://url.spec.whatwg.org/ — WHATWG URL Specificatonhttps://datatracker.ietf.org/doc/html/rfc5890 — Internationalized Domain Names for Applications (IDNA) (RFC)https://exyr.org/ — official website of Simon SapinRamaIf you like this podcast you might also like our modular network framework in Rust: https://ramaproxy.orgChapters00:00 Intro00:50 Get to know Simon Sapin05:35 Origin of rust-url07:19 Implementing Specifications in Rust10:05 Understanding IDNA and Its Importance11:17 Origins of form-url / percent encoding crates12:36 The Role of Percent Encoding in URLs13:21 IDNA Crate Origin15:41 Challenges with IDNA and Usability30:13 unpacking the rust-url crate39:25 Understanding URL Specifications and Compatibility45:10 Url Crate Parser52:41 Surprising Insights into URL Implementation01:01:41 Final words01:14:07 OutroNetstack.FMMore information: https://netstack.fm/#episode-22Join our Discord: https://discord.gg/29EetaSYCDReach out to us: hello@netstack.fmMusic for this episode was composed by Dj Mailbox. Listen to his music at https://on.soundcloud.com/4MRyPSNj8FZoVGpytj
episode 21 — GraphQL and Rust with Tom Houlé.In this episode of Netstack.fm, Glen and Tom Houlé discuss GraphQL's transition from a high-hype mobile data solution at Facebook to a mature enterprise technology. They explore technical challenges like the N+1 problem and persisted queries, as well as the rise of GraphQL Federation for unifying microservices in Rust-based gateways. Tom also highlights GraphQL’s future potential as a self-documenting interface for LLMs and its healthy, community-driven development.Learn more:https://www.tomhoule.com — Personal website of Tom Houléhttps://graphql.org/learn/ — Learn GraphQLhttps://www.jovidecroock.com/blog/graphql-myths/ — GraphQL Myths (about trusted documents — Jovi De Croock)https://benjie.dev/graphql/trusted-documents — Another great blog post about trusted documents, by Benjiehttps://www.apollographql.com/docs/graphos/schema-design/federated-schemas/federation — Introduction to GraphQL Federation (Apollo)https://github.com/graphql/composite-schemas-spec/ — The Composite Schemas specification, the vendor neutral next iteration of federationhttps://www.youtube.com/watch?v=E_RETbpPogw — Transforming Capital One’s Data Marketplace with Embedded Governance and a Product Mindset (enterprise adoption)https://relay.dev/docs/ — Relay docsRust Crates:https://github.com/async-graphql/async-graphql — async-graphql, the server frameworkhttps://github.com/graphql-rust/graphql-client/ — graphql-clienthttps://github.com/obmarg/cynic — cynichttps://www.youtube.com/@GraphQLFoundation — @GraphQLFoundation on YouTubehttps://www.youtube.com/@graphqltv — @GraphQL TV on YouTubehttps://grafbase.com/blog/seamless-grpc-subgraphs-with-extensions-and-composite-schemas — Seamless gRPC subgraphs with extensions and composite schemasRamaIf you like this podcast you might also like our modular network framework in Rust: https://ramaproxy.orgChapters00:00 Intro00:39 Meet Tom Houlé03:24 Origins of GraphQL10:05 The Shift to Persistent Queries in GraphQL18:09 GraphQL's Role in Frontend and Backend Development21:11 Challenges and Criticisms of GraphQL24:07 Optimizing GraphQL for Performance35:06 Schema first vs Code first40:44 Optimizing GraphQL Server Query Implementations44:39 GraphQL Federation: A Unified Approach51:08 Authentication in GraphQL: Challenges and Solutions01:05:23 The Future of GraphQL: Trends and Innovations01:16:03 OutroNetstack.FMMore information: https://netstack.fm/#episode-21Join our Discord: https://discord.gg/29EetaSYCDReach out to us: hello@netstack.fmMusic for this episode was composed by Dj Mailbox. Listen to his music at https://on.soundcloud.com/4MRyPSNj8FZoVGpytj
episode 20 — Netstack.FM New Year Special, 2025 Wrap-Up.This New Year special reflects on the first nineteen episodes of netstack.fm, highlighting key lessons about networking, Rust, open source, and the people behind the protocols and systems that power the internet. It also looks at the evolution of the Rama framework and sets the stage for continued learning, collaboration, and new conversations in the year ahead.Learn more:https://github.com/plabayo/rama — rama repositoryhttps://github.com/plabayo/rama/discussions/782 — rama-0.3.0-alpha.4 releasehttps://ramaproxy.org/ — rama official websitehttps://ikorason.dev/posts/from-frontend-to-low-level-networking-my-journey-to-contributing-to-open-source — irfan's blog articleChapters00:00 Intro00:54 Introduction and Year In Review03:28 Insights from Guests and the 2025 episodes22:21 Rama Testimonials27:28 Rama in 202631:07 Closing Message32:07 OutroNetstack.FMMore information: https://netstack.fm/#episode-20Join our Discord: https://discord.gg/29EetaSYCDReach out to us: hello@netstack.fmMusic for this episode was composed by Dj Mailbox. Listen to his music at https://on.soundcloud.com/4MRyPSNj8FZoVGpytj
episode 19 — Firezone and Zero-Trust Network Security with Thomas Eizinger.In this episode of Netstack.fm, Glen talks with Thomas Eizinger from Firezone about designing a zero trust enterprise VPN built on top of WireGuard. They break down how modern VPNs work in practice, covering virtual network adapters, split tunneling, DNS interception, policy based access, and secure packet routing using WireGuard, ICE, and TURN relays.The discussion highlights how Firezone differs from legacy VPNs by focusing on performance, reliability, and minimal user friction, while also touching on the role of Rust and Elixir in Firezone’s architecture and the long term importance of IPv6 adoption.Learn more:https://github.com/firezone/firezone — Firezone main repositoryhttps://github.com/firezone/firezone/tree/main/rust/relay/ebpf-turn-router — Firezone eBPF in kernel relay routerhttps://www.firezone.dev/kb/architecture/critical-sequences#detailed-connection-setup — Firezone Connection Setuphttps://www.wireguard.com/papers/wireguard.pdf — WireGuard whitepaperhttps://github.com/firezone/boringtun — Firezone fork of boringtun user space WireGuardhttps://www.rfc-editor.org/rfc/rfc8656 — TURN RFC 8656https://x.com/firezonehq — Firezone on Xhttps://x.com/oetzn — Thomas Eizinger on Xhttps://hachyderm.io/@wheezle — Thomas Eizinger on Mastodonhttps://github.com/thomaseizinger — Thomas Eizinger on GitHubRamaIf you like this podcast you might also like our modular network framework in Rust: https://ramaproxy.orgChapters00:00 Intro00:42 Introduction to Thomas Eizinger05:19 Firezone's Turn implementation11:00 Understanding VPNs and Firezone's Approach29:27 Legacy VPNs vs. Firezone: A New Era of Networking36:19 Firezone is opensource37:27 Zero-Trust VPNs40:28 What is WireGuard43:36 Firezone's Integration with WireGuard50:19 Handling Connection Failures58:00 Geolocation and Relay Selection01:04:45 Elixir Developer Experience (DX)01:10:19 IPv6 Adoption and Future Considerations01:15:03 OutroNetstack.FMMore information: https://netstack.fm/#episode-19Join our Discord: https://discord.gg/29EetaSYCDReach out to us: hello@netstack.fmMusic for this episode was composed by Dj Mailbox. Listen to his music at https://on.soundcloud.com/4MRyPSNj8FZoVGpytj
episode 18 — Curiosity, Quake, and Networking with Fabien Sanglard.Glen talks with Fabien Sanglard about curiosity driven engineering, from early computers and classic games like Doom and Quake to modern Android development and ADB. They discuss how networking evolved in games, why latency shaped multiplayer design, how Rust improves reliability in large systems, and why writing and diagrams are powerful tools for truly understanding complex technologies.Learn more:https://fabiensanglard.net/ — Fabien Sanglard’s Bloghttps://fabiensanglard.net/quake_chunnel/ — How quake.exe got its TCP/IP stackRamaIf you like this podcast you might also like our modular network framework in Rust: https://ramaproxy.orgChapters00:00 Intro01:19 Fabien's background07:02 Android Debug Bridge (ADB)11:05 Fabien's Blog16:45 mDNS and Blog Target Audience24:23 Quake TCP/IP32:37 Nostalgia with Pink Glasses37:58 Later Quake Versions39:58 Fabien's books41:53 The importance of Diagrams in documentation47:19 Lessons that can be learned from ADB51:58 Rust Iteration Speed59:22 OutroNetstack.FMMore information: https://netstack.fm/#episode-18Join our Discord: https://discord.gg/29EetaSYCDReach out to us: hello@netstack.fmMusic for this episode was composed by Dj Mailbox. Listen to his music at https://on.soundcloud.com/4MRyPSNj8FZoVGpytj
episode 17 — Early Web History and Interlisp with Larry Masinter.We sit down with internet pioneer and longtime IETF contributor Larry Masinter to revisit the origins of many technologies developers use every day. From his early days at Xerox PARC to co-authoring foundational RFCs on HTTP, URIs, and more, Larry shares first-hand stories that connect the early web to the world we build in now. The conversation also explores his current passion project: reviving the Interlisp environment as a living historical system.Learn more:https://larrymasinter.net/ — Official website from Larry Masinterhttps://www.rfc-editor.org/rfc/rfc2616 — RFC 2616 – HTTP/1.1 Specificationhttps://www.rfc-editor.org/rfc/rfc3986 — RFC 3986 – URI Generic Syntaxhttps://www.rfc-editor.org/rfc/rfc2324 — RFC 2324 – Hypertext Coffee Pot Control Protocolhttps://www.rfc-editor.org/rfc/rfc2732 — RFC 2732 – Literal IPv6 Addresses in URLshttps://datatracker.ietf.org/doc/html/draft-masinter-dated-uri — Draft: the 'tdb' and 'duri' URI schemes, based on dated URIshttps://interlisp.org — The Interlisp Revival ProjectRamaIf you like this podcast you might also like our modular network framework in Rust: https://ramaproxy.orgChapters00:00 Intro00:34 Introduction to Larry Masinter05:32 The Intellectual Environment at Xerox PARC06:49 The Interlisp Project and Its Impact10:05 Transitioning to Document Servers and HTTP12:02 Resources, Gopher and the Early Web15:45 Why did HTTP succeed where Gopher faded away20:56 Larry's Involvement in Web Standards and Protocols25:11 Reviving Interlisp post-pandemic27:13 interlisp.org, 5 years later32:57 The Tradition of April 1st RFCs33:51 Invention of Hypertext Coffee Pot Control Protocol (1998)37:04 The Invention of HTCPCP40:55 Exploring URI Schemes47:58 Form-Based File Upload49:12 The Politics of Web Standards01:05:12 The Evolution of Web Protocols01:05:53 Developing in the Interlisp Environment01:14:03 Goals of the Interlisp Revival Project01:23:39 Collaborations and Future Aspirations01:25:09 OutroNetstack.FMMore information: https://netstack.fm/#episode-17Join our Discord: https://discord.gg/29EetaSYCDReach out to us: hello@netstack.fmMusic for this episode was composed by Dj Mailbox. Listen to his music at https://on.soundcloud.com/4MRyPSNj8FZoVGpytj
episode 16 — WebRTC and Sans IO with Martin Algesten.We sit down with Rust developer Martin Algesten for a deep dive into WebRTC and the Sans IO approach to protocol design. Martin traces the surprising origins of WebRTC, explains why real time media over UDP is both powerful and painfully complex, and walks through how peer to peer connections work under the hood. The conversation then shifts to Sans IO design, why it matters for clean protocol implementations in Rust, and how Martin applies it in his own WebRTC stack, str0m.Learn more:https://github.com/algesten — Github profile of Martin Algestenhttps://github.com/algesten/str0m — A Sans I/O WebRTC implementation in Rusthttps://github.com/algesten/dimpl — DTLS 1.2 implementation (Sans‑IO, Sync)https://datatracker.ietf.org/doc/rfc8489/ — Session Traversal Utilities for NAT (STUN)https://datatracker.ietf.org/doc/rfc8656/ — Traversal Using Relays around NAT (TURN)https://www.w3.org/TR/webrtc/ — WebRTC: Real-Time Communication in BrowsersRamaIf you like this podcast you might also like our modular network framework in Rust: https://ramaproxy.orgChapters00:00 Intro00:40 Get to know Martin Algensten06:16 A bit of WebRTC history09:38 WebRTC 10130:05 P2P and Stun36:00 WebRTC: stages and flow from start to finish45:43 How Martin got into WebRTC and started the str0m project52:36 What is Sans IO?01:06:36 Why DTLS is not Sans IO in Str0m, but Str0m is01:18:34 OutroNetstack.FMMore information: https://netstack.fm/#episode-16Join our Discord: https://discord.gg/29EetaSYCDReach out to us: hello@netstack.fmMusic for this episode was composed by Dj Mailbox. Listen to his music at https://on.soundcloud.com/4MRyPSNj8FZoVGpytj
episode 15 — Pingora with Edward and Noah from Cloudflare.In Episode 15 of netstack.fm, Glen sits down with Edward and Noah from Cloudflare to unpack the design of Pingora, the Rust based proxy framework that now powers Cloudflare’s origin facing traffic. The discussion covers why Cloudflare moved away from NGINX, how Pingora differs from Oxy, and what it takes to operate a high performance global proxy at massive scale. Listeners will learn about connection reuse strategies, dynamic traffic handling, gRPC and protocol translation, custom HTTP implementations, TLS backend choices, and the practical trade offs of Rust, Tokio, and work stealing in real production systems. It is an episode full of deep technical insights into building and operating modern networking infrastructure.Learn more:https://blog.cloudflare.com/how-we-built-pingora-the-proxy-that-connects-cloudflare-to-the-internet/ — Pingora's introduction bloghttps://blog.cloudflare.com/pingora-open-source/ — Pingora launch blog post (Cloudflare)https://github.com/vicanso/pingap — pingap, built on top of pingorahttps://blog.cloudflare.com/road-to-grpc/ — Cloudflare gRPC and gRPC Web articlehttps://github.com/hyperium/h2 — Hyperium h2 cratehttps://github.com/cloudflare/quiche — Quiche (QUIC and HTTP3 implementation)https://blog.cloudflare.com/technical-breakdown-http2-rapid-reset-ddos-attack/ — Cloudflare Rapid Reset HTTP2 attack analysishttps://csrc.nist.gov/pubs/fips/140-3/final — NIST FIPS 140-3 publicationhttps://blog.cloudflare.com/introducing-oxy/ — Introducing Oxy (Cloudflare)https://blog.cloudflare.com/oxy-extensibility/ — Oxy's extensions via genericshttps://blog.cloudflare.com/20-percent-internet-upgrade/ — Oxidizing other CDN components for performancehttps://github.com/cloudflare/foundations — Cloudflare's foundations crateRamaIf you like this podcast you might also like our modular network framework in Rust: https://ramaproxy.orgChapters00:00 Intro00:37 A bit of background on the episode and our guests03:18 The Evolution of Proxy Frameworks: Oxy vs. Pingora14:59 The Philosophy Behind Pingora's Design20:53 Understanding Pingora's Bare Bones Structure27:50 Metrics and Observability in Pingora39:19 Caching Strategies and Backend Structures42:56 Usage of OnceCell45:39 TLS Implementations and Their Importance50:51 Dynamic Traffic Management and gRPC Support01:02:10 Optimizing Connection Reuse with Pingora01:07:10 The Importance of Layer 7 Processing01:11:16 The Shift from Static to Dynamic Web Traffic01:18:48 Performance Improvements with Rust and Tokio01:26:00 Memory Management and Allocation Strategies01:37:59 OutroNetstack.FMMore information: https://netstack.fm/#episode-15Join our Discord: https://discord.gg/29EetaSYCDReach out to us: hello@netstack.fmMusic for this episode was composed by Dj Mailbox. Listen to his music at https://on.soundcloud.com/4MRyPSNj8FZoVGpytj
Episode 14 – Roto And Cascade with Terts and Arya from NLnet Labs.In this episode we have a conversation with Terts and Arya from NLnet Labs. Together we explore their paths into systems programming, the mission of NLnet Labs, and the critical internet infrastructure the organization maintains. The discussion spans DNSSEC, large scale DNS operations, Rotonda, and the Roto scripting language, with deep dives into performance engineering, zero copy design, and building resilient open source networking software. It is a technical episode that highlights the people and ideas behind essential internet protocols.Learn more:https://www.nlnetlabs.nl/ — NLnet Labs websitehttps://github.com/NLnetLabs/cascade — A friendly DNSSEC signing solutionhttps://indico.dns-oarc.net/event/55/contributions/1186 — slides of conference talk introducing Cascadehttps://github.com/NLnetLabs/rotonda — Modular, programmable BGP Enginehttps://github.com/NLnetLabs/roto — strongly-typed, compiled embedded scripting language for Rusthttps://www.youtube.com/watch?v=7xJEFPlfy7Y — EuroRust 2025 talk by Terts on Rotohttps://docs.rs/domain/latest/domain/new/base/wire/index.html — domain's zerocopy modulehttps://bal-e.org/blog/ — Blog from Aryahttps://2026.rustweek.org/ — RustWeek 2026 (with open CFP until EOY 2025)RamaIf you like this podcast you might also like our modular network framework in Rust: https://ramaproxy.orgChapters00:00 Intro01:14 Backgrounds of Terts and Arya10:37 Overview of NLnet Labs17:43 Understanding DNSSEC25:29 The Role of Cascade in DNSSEC41:06 Understanding Roto and Rotonda45:55 The Evolution of Roto's Scripting Language49:34 Integration and Efficiency in Roto52:05 Real-World Applications of Roto01:00:36 The Importance of Data Structures in Performance01:06:34 Optimization Strategies for High Performance01:17:14 Zero-Copy Techniques in DNS Handling01:26:06 OutroNetstack.FMMore information: https://netstack.fm/#episode-14Join our Discord: https://discord.gg/29EetaSYCDReach out to us: hello@netstack.fmMusic for this episode was composed by Dj Mailbox. Listen to his music at https://on.soundcloud.com/4MRyPSNj8FZoVGpytj
Episode 13 – Inside Ping Proxies with Joseph Dye.In this episode of Netstack.fm, Glen from Plabayo talks with Joseph Dye (Joe), founding engineer at Ping Proxies, about building large-scale proxy infrastructure in Rust. Joe shares how he went from art student to programmer, joining Ping when it was a tiny startup running on Python and Squid. He explains how they rebuilt everything in Rust, creating performant HTTP and SOCKS5 proxies and managing massive IP networks for web scraping. The conversation covers the evolution of their stack, challenges with HTTP versions, TCP/IP fingerprinting, user-space networking with DPDK, and the adoption of MASQUE and HTTP/3. Joe also reflects on Rust’s safety benefits, being the only Rust engineer at Ping, and how the company stays competitive through technical innovation rather than size.Learn more:https://github.com/smoltcp-rs/smoltcp — A Rust-based user-space TCP/IP stackhttps://dpdk.org — The Data Plane Development Kit for high-performance packet processing and kernel bypasshttps://github.com/cloudflare/quiche — Cloudflare’s QUIC and HTTP/3 implementation, mentioned for MASQUE support w/ tokio supporthttps://github.com/tokio-rs/tokio — The asynchronous runtime used by Ping Proxies for concurrencyhttps://github.com/hyperium/h2 — Rust’s HTTP/2 library, referenced as part of Ping Proxies’ stackhttps://github.com/hyperium/h3 — Rust’s HTTP/3 library, used for advanced proxy tunnelinghttps://datatracker.ietf.org/doc/rfc9298 — Proxying UDP in HTTP (MASQUE)https://ipxo.com — Marketplace for leasing IP addresses, discussed in how Ping acquires IP rangeshttps://pawns.app/sdk/ — Example of SDK-based residential proxy provider referenced in the episodeRamaIf you like this podcast you might also like our modular network framework in Rust: https://ramaproxy.orgChapters00:00 Intro00:41 Introduction to Proxies and Joe's background03:42 Understanding Pink Proxies and Their Offerings06:52 The Technical Journey: From Squid to Rust09:47 Proxy Types: Data Center vs. Residential12:42 Building a Proxy Infrastructure15:44 Challenges with HTTP Protocols18:39 The Importance of Customization in Proxy Development21:38 Team Dynamics and Future Growth29:32 Transitioning to Rust Development30:59 Understanding HTTP Protocols32:40 Exploring HTTP/2 and HTTP/334:05 The Future of Proxying with Mask36:14 Evaluating New Technologies for Proxies37:51 Developing for End User Devices39:49 Challenges in Network Stack Development41:15 Proxying Non-HTTP Traffic42:51 TCP/IP Fingerprinting Explained47:57 The Importance of TCP/IP Fingerprinting53:28 Performance Considerations in User Space TCP58:22 Competing in the Proxy Market01:00:05 Cancellation Safety in Rust Concurrency01:03:53 OutroNetstack.FMMore information: https://netstack.fm/#episode-13Join our Discord: https://discord.gg/29EetaSYCDReach out to us: hello@netstack.fmMusic for this episode was composed by Dj Mailbox. Listen to his music at https://on.soundcloud.com/4MRyPSNj8FZoVGpytj.
Episode 12 – Oxide Networking with Ryan Goodfellow.A conversation with Ryan Goodfellow about Rust networking at Oxide. We will explore the Oxide computer stack with a focus on network, including their fully integrated cloud computer, programmable networking with P4 and Dendrite, the Maghemite routing stack, and OPTE — a Rust-based packet engine running inside the kernel. Ryan also shares how his background in large-scale network testbeds led him to help design Oxide’s rack-scale system and its modern approach to routing, observability, and hardware–software co-design.Learn more:https://oxide.computer/ — Oxide Computer Companyhttps://github.com/oxidecomputer/opte — OPTE (Oxide Packet Transformation Engine)https://github.com/oxidecomputer/maghemite — Maghemite (Routing Stack)https://github.com/oxidecomputer/dendrite — Dendrite (P4 Switch Control)https://github.com/oxidecomputer/hubris — Hubris (Rust OS for Microcontrollers)https://github.com/oxidecomputer/falcon — Falcon (Virtual Rack Testbed)https://rfd.shared.oxide.computer/rfd/0347 — RFD 347 (Delay-Driven Multipath Routing (DDM))https://groups.csail.mit.edu/ana/Publications/PubPDFs/Tussle2002.pdf — The Tussle in Cyberspace (Paper)https://named-data.net/project/ndn/ — Named Data Networking Projecthttps://www.sigcomm.org/ — ACM SIGCOMM Conferencehttps://www.usenix.org/conference/nsdi26 — USENIX NSDI Symposiumhttps://oxide-and-friends.transistor.fm/episodes/the-frontend-of-the-computer — Oxide & Friends (Dropshot Episode)RamaIf you like this podcast you might also like our modular network framework in Rust: https://ramaproxy.orgChapters00:00 Intro00:44 Meet Ryan Goodfellow06:23 Building Large-Scale Test Beds07:46 The future of the internet10:54 Overview of Oxide's Rack Scale Computer19:36 Exploring BGP and Routing Protocols26:02 The X4C Compiler and Its Origins39:43 Programming for Tofino and Observability45:10 Life of packets of an HTTP Web (Oxide Rack) server01:01:58 Exploring Maghemite: The Routing Stack01:12:45 Future Directions: Rust-Based Operating Systems01:19:28 Testing Strategies and the Falcon Framework01:27:25 OutroNetstack.FMMore information: https://netstack.fm/#episode-12Join our Discord: https://discord.gg/29EetaSYCDReach out to us: hello@netstack.fmMusic for this episode was composed by Dj Mailbox. Listen to his music at https://on.soundcloud.com/4MRyPSNj8FZoVGpytj.
Episode 11 – Modern networking in Firefox with Max Inden.A conversation with Max Inden, Staff Software Engineer at Mozilla, about modernizing Firefox’s networking stack in Rust. We cover his work on the QUIC and HTTP/3 stack — improving UDP I/O, congestion control, and overall performance — and why QUIC matters as a fast, encrypted, and evolvable transport for HTTP/3, WebTransport, and beyond.Learn more:https://max-inden.de/ — Personal website of Max Indenhttps://max-inden.de/post/fast-udp-io-in-firefox/ — Fast UDP I/O for Firefox in Rust — by Max Indenhttps://archive.fosdem.org/2025/schedule/event/fosdem-2025-4229-getaddrinfo-sucks-everything-else-is-much-worse/ — getaddrinfo sucks, everything else is much worse — Talk by Valentin Gosuhttps://github.com/mozilla/neqo — Mozilla Neqo (HTTP/3 and QUIC stack)https://datatracker.ietf.org/doc/html/rfc9000 — RFC 9000 – QUIC: A UDP-Based Multiplexed and Secure Transporthttps://datatracker.ietf.org/doc/html/rfc9114 — RFC 9114 – HTTP/3https://datatracker.ietf.org/doc/html/rfc9462 — RFC 9462 – Discovery of Designated Resolvershttps://www.rfc-editor.org/rfc/rfc8484.html — RFC 8484 – DNS Queries over HTTPS (DoH)https://datatracker.ietf.org/doc/draft-ietf-happy-happyeyeballs-v3/ — Happy Eyeballs Version 3 (Draft)https://github.com/microsoft/msquic — Microsoft MsQuichttps://developer.mozilla.org/en-US/docs/Web/API/WebTransport — WebTransport API documentationhttps://datatracker.ietf.org/wg/masque/about/ — MASQUE (Proxy) protocol introductionhttps://www.ietf.org/ — Internet Engineering Task Force (IETF)https://www.ietf.org/meeting/ — IETF MeetingsRamaIf you like this podcast you might also like our modular network framework in Rust: https://ramaproxy.orgChapters00:00 Intro00:38 Introduction to Max Inden03:27 Max Inden's Journey to Mozilla06:32 The Role of IETF in Internet Design09:42 QUIC and HTTP/3 in Firefox12:27 Understanding HTTP/3 Upgrade Mechanisms15:15 Challenges with UDP and Firefox's Networking Stack18:15 Optimizing UDP I/O for Performance21:36 Cross-Platform Performance Considerations24:23 Network Drivers and Their Impact27:18 Exploring Happy Eyeballs and Connection Strategies30:07 WebTransport and Future of QUIC32:56 Contributions to Firefox and Open Source36:05 Happy Eyeballs and related56:15 Github Git Hosting57:24 Quic Usage within Firefox01:03:02 Closing Thoughts and call to Action01:06:44 OutroNetstack.FMMore information: https://netstack.fm/#episode-11Join our Discord: https://discord.gg/29EetaSYCDReach out to us: hello@netstack.fmMusic for this episode was composed by Dj Mailbox. Listen to his music at https://on.soundcloud.com/4MRyPSNj8FZoVGpytj.
Episode 10 – zerocopy with Joshua Liebow-Feeser.A conversation with Joshua Liebow-Feeser, the developer behind netstack3 and the creator of zerocopy, a crate that makes zero-cost memory manipulation effortless. Originally built for Fuchsia, zerocopy is now used by over 400 crates on crates.io, with nearly 300 million downloads.We explore the origins of Fuchsia, the creation and purpose of zerocopy, how it works, and why you might want to use it. And of course, we get to know Joshua and his journey so far.Learn more:https://model-checking.github.io/kani/ — Kani verifierhttps://github.com/rust-lang/rust/issues/99571 — Safe Transmute tracking issuehttps://github.com/rust-lang/unsafe-code-guidelines — Unsafe Code Guidelines WGhttps://docs.rs/zerocopy/latest/zerocopy/ — ZeroCopy documentationhttps://docs.rs/zerocopy-derive/latest/zerocopy_derive/ — ZeroCopy derive macroshttps://fuchsia.dev/fuchsia-src/get-started/learn/intro/architecture — Fuchsia networking architecturehttps://docs.kernel.org/networking/scaling.html — Scaling in the Linux Networking Stackhttps://www.youtube.com/watch?v=rFejpH_tAHM — dotGo 2015 - Rob Pike - Simplicity is ComplicatedRamaIf you like this podcast you might also like our modular network framework in Rust: https://ramaproxy.orgChapters00:00 Intro00:39 Introduction to Joshua Liebow-Feeser01:34 Joshua's Journey into Software Development11:41 The Origins of Netstack 317:21 The Philosophy Behind Netstack 323:03 The Role of Rust in Networking42:57 The Concept and Development of ZeroCopy53:10 Understanding Zero Copy and Its Constraints55:11 Exploring Memory Management in Networking59:23 Challenges with Variable Length Data Formats01:04:20 Async Programming and Its Implications01:11:13 Performance Considerations in Networking01:16:50 Ambition in Software Design and API Simplicity01:32:13 The Future of Networking and Rust's Role01:42:42 OutroNetstack.FMMore information: https://netstack.fm/#episode-10Join our Discord: https://discord.gg/29EetaSYCDReach out to us: hello@netstack.fmMusic for this episode was composed by Dj Mailbox. Listen to his music at https://on.soundcloud.com/4MRyPSNj8FZoVGpytj.




