Presentation: Next Gen Networking Infrastructure With Rust

Track: 21st Century Languages

Location: Pacific DEKJ

Day of week:

Slides: Download Slides

Level: Intermediate - Advanced

Persona: Backend Developer, Developer

Abstract

As the world becomes ever more connected, the scale and sophistication of network infrastructure software is increasing dramatically. However, the requirements for this software are as stringent as ever: it must not only be fast, it must be “safe”, i.e. able to process untrusted data without crashing or being vulnerable to security exploits. . Traditionally, these two requirements have been at odds: network programmers had to pick a language that either offered speed or safety.

Enter Rust, a new language that lets you have your cake and eat it too. Rust compiles to native code, while ensuring at compile time that the resulting  programs are memory safe.

But Rust provides even more: its higher-order abstractions enable expressive programs and powerful memory management techniques without imposing a runtime cost. In this talk, we’ll show how Rust’s “zero cost abstractions” can be leveraged to provide a networking platform that provides expressiveness, speed, and safety with tradeoffs between them. We describe how these techniques are used in Linkerd, a “service mesh” proxy for the next generation of cloud native applications.

Speaker: Carl Lerche

Software Engineer & Rust Contributor

Carl has authored and contributes to many open source Rust libraries, including Tokio, a platform for writing fast networking code. He is a software engineer at Buoyant.

Find Carl Lerche at