Backend development

Stage 1 · Lesson 8 of 10

TCP connections and TLS

Your language and how HTTP works

Once the client knows your server's , it opens a connection to a port, usually 443. TCP delivers bytes in order and resends any that get lost on the way. Setting it up takes a short three-way greeting called the (SYN, SYN-ACK, ACK).

TLS then runs on top of TCP, and it is what puts the S in HTTPS. The server shows a that proves it owns the domain. Both sides agree on secret keys, and from then on everything is encrypted, and any tampering is detected.

TLS 1.3 needs one for this. Every handshake adds waiting time (latency). That is why clients reuse connections, and why opening a new connection for every request is slow.

Common trapthinking HTTPS hides everything: the server's IP address, and usually its hostname, are still visible on the network.

A question to check yourself, an AI practice session and 1 cheat sheet entry come with the full roadmap. Unlock

Resources for this stage

Start with· follow one of these

  • BookFree
    The Rust Programming Language

    The Rust Project · Beginner

    The official book, free online: read ownership, enums, error handling and traits slowly

  • GuideFree
    Tokio Tutorial

    Tokio · Intermediate

    The official Tokio tutorial: tasks, shared state, channels and the async model Axum runs on

Practise

  • Small exercises that follow the book chapter by chapter, checked in your terminal

  • Your language track: small exercises with free mentor feedback on idiomatic code

Keep handy

  • Runnable examples to look up while you write: traits, generics, errors and Cargo

  • Read the HTTP overview, methods, headers and status code pages until they feel obvious

Also worth your time

Mark this stage as not done?