In this course, you will learn how to work with the UDP and TCP internet protocols in real-world scenarios. You will apply your skills to build small, fun networking applications in Rust — right in your browser!
No previous knowledge of network programming is required, but we assume that you are familiar with Rust syntax. If you’re not, that's fine too! You can read The Rust Book and learn by practicing without any setup beforehand.
Introduction to UDP: sockets, frames, and data encoding. We build a client for a simple name server that converts domain names into IP addresses.
Learn how to deal with unreliable networks.
Learn how to work with larger networks. As you might have guessed, we also build our own router.
Learn techniques to deal with multiple clients simultaneously. Remember the name service from the first lesson? Now we rebuild it again from scratch!
Learn about TCP connections and streams.
Putting everything we have learned so far into practice: let's create a web server!