Networking

Getting packets between machines, and finding out why they are not arriving.

3 subjects · 16 topics · 2 areas

Subjects covering this category

3 subjects
  • Subject · Beginner to Advanced

    Following a request from an application down through the network layers and back, and naming the layer where a network problem lives.

    • Getting a Packet There
    • Between Two Programs
    • Applications and Debugging
    11 topics · 106 cardsnot started
  • Subject · Beginner to Advanced

    Turning a product's requirements into a first design for a web system, and knowing what each part is there for.

    • Starting a Design
    • The Parts of a System
    • Moving Data Around
    11 topics · 100 cardsnot started
  • Subject · Beginner to Advanced

    Running software in containers, and building images that other people can run.

    • Running Containers
    • Building Images
    5 topics · 29 cardsnot started

TCP/IP

8 topics
  • The OSI Model and Network Protocols

    How TCP delivers reliably: the handshake, sequence numbers, flow and congestion control, and what one lost segment costs.

    Beginner to Advanced11 cards · 6 qnot started

  • The OSI Model and Network Protocols

    IP addresses and subnets: reading CIDR blocks, telling private addresses from public ones, and dividing a range into networks that do not overlap.

    Beginner to Advanced10 cards · 7 qnot started

  • The OSI Model and Network Protocols

    Routing: how routers choose the next hop for a packet, how ping and traceroute see the path, and how the internet routes between networks.

    Beginner to Intermediate10 cards · 6 qnot started

  • The OSI Model and Network Protocols

    The OSI model: the seven network layers from cable to application, and how each wraps the data of the layer above it.

    Beginner to Intermediate9 cards · 7 qnot started

  • The OSI Model and Network Protocols

    The physical and data link layers: how bits cross one cable or radio link, and how MAC addresses, switches and ARP deliver a frame to the next device.

    Beginner to Intermediate9 cards · 6 qnot started

  • The OSI Model and Network Protocols

    Ports, TCP and UDP: how the transport layer delivers data to the right program, and when to choose a reliable stream or a fast datagram.

    Beginner to Intermediate9 cards · 5 qnot started

  • The OSI Model and Network Protocols

    A network request end to end: every step of opening a web page, and how to find the layer where a failing request breaks.

    Beginner to Advanced9 cards · 7 qnot started

  • System Design

    Load balancers, reverse proxies and API gateways: the three kinds of server that sit in front of yours, and the one job each is for.

    Beginner to Intermediate10 cards · 5 qnot started

DNS

2 topics
  • The OSI Model and Network Protocols

    DNS: how a domain name becomes an IP address, which record types exist, and why a change takes time to reach everyone.

    Beginner to Intermediate9 cards · 6 qnot started

  • System Design

    The building blocks of a web system: DNS, CDNs, application servers and databases, and the path a request takes through them.

    Beginner to Intermediate11 cards · 8 qnot started

In Networking itself

6 topics
  • The OSI Model and Network Protocols

    TLS: how HTTPS encrypts a connection and proves the server's identity, and how to read a certificate error.

    Beginner to Advanced10 cards · 6 qnot started

  • The OSI Model and Network Protocols

    HTTP on the wire: what a request and response look like, and what HTTP/2 and HTTP/3 change about the connection under them.

    Beginner to Advanced10 cards · 6 qnot started

  • The OSI Model and Network Protocols

    How WebSocket, server-sent events and WebRTC keep a connection open, who may send on it, and how each one survives a drop.

    Beginner to Advanced10 cards · 6 qnot started

  • System Design

    Client-server communication: polling, server-sent events, WebSockets and webhooks, chosen by who sends and how often.

    Beginner to Intermediate10 cards · 5 qnot started

  • Docker

    Running a container from an image: docker run, publishing a port, and finding out why a container stopped.

    Beginner to Intermediate6 cards · 5 qnot started

  • System Design

    Back-of-the-envelope estimation: turning users and their actions into requests a second, storage and downtime, before choosing a single part.

    Beginner to Intermediate8 cards · 6 qnot started