Networking

How the Linux Network Transmit Path Works: sk_buffs, qdiscs, and Why send() Returns Before the Packet Leaves

A process that calls send() on a TCP socket expects the bytes to leave the machine eventually. It does not expect the call to wait until the...

Sarthak Bystander 24 Oct, 2026

How the Linux Network Transmit Path Works: sk_buffs, qdiscs, and Why send() Returns Before the Packet Leaves

Draft placeholder for the full transmit path article. Full content will be updated.

Sarthak Bystander 24 Oct, 2026

How the Linux Network Receive Path Works: NAPI Polling, sk_buffs, Softirqs, and Why the Hard IRQ Never Copies the Payload

A NIC that has just finished DMA-ing a frame into a host ring buffer does not copy the payload in its hard interrupt handler. The handler do...

Sarthak Bystander 16 Oct, 2026

How BGP Works: AS Paths, Path Attributes, and Why the Internet Is Not Shortest-Path

A packet from a laptop in Mumbai to a server in Frankfurt does not ask the Internet for the shortest path. It follows a route that some netw...

Sarthak Bystander 9 Oct, 2026

How epoll Works: Readiness, Level vs Edge Trigger, and Why select Doesn't Scale

A process that accepts ten thousand TCP connections cannot afford to ask the kernel about each socket in turn. select(2) and poll(2) copy ...

Sarthak Bystander 24 Sept, 2026

How eBPF Works: Verifier, Maps, JIT, and Why the Kernel Runs Your Code

A kernel module can do almost anything. That is why loading one is a privileged act and why a bug in one can take the machine with it. eBPF ...

Sarthak Bystander 21 Sept, 2026

How TLS 1.3 Works: Certificates, 1-RTT Handshakes, and Why 0-RTT Is Replayable

TCP can carry bytes in order. It cannot tell you who is on the other end, and it cannot stop a path observer from reading those bytes. HTTPS...

Sarthak Bystander 20 Sept, 2026

How QUIC Works: Streams, Connection IDs, and Why HTTP/3 Left TCP

TCP names a connection by four numbers: two addresses and two ports. Change any of them and the connection is gone. It also delivers one ord...

Sarthak Bystander 9 Sept, 2026

How UDP Works: Datagrams, Checksums, and Why Loss Can Be Acceptable

TCP can deliver a reliable byte stream. That is useful when a file must arrive complete and in order. It is the wrong contract when a late p...

Sarthak Bystander 7 Sept, 2026

How WebSockets Work: Handshake, Frames, and Persistent Connections

HTTP can fetch a page. TCP can keep a reliable byte stream open. Neither explains why a live chat box updates without a refresh or why a tra...

Sarthak Bystander 7 Sept, 2026

How TCP Works: Handshake, Reliability, and Congestion Control

HTTP can describe a request. DNS can find an address. Neither of those steps moves a single reliable byte across an unreliable network. That...

Sarthak Bystander 4 Sept, 2026