liveBook · Manning

Packet processing latency

As explained in Latency

Packet processing latency is the delay between a network packet arriving at a network interface and becoming available to a userspace thread for processing.

Packet processing latency is the delay between a packet arriving at a network interface and becoming available to a userspace thread for processing. section 1.1

A packet typically traverses this path:

  • The NIC converts network signals into binary data and places the packet in a receive queue. section 1.1
  • The operating system observes the packet, forwards it through the kernel network stack, and notifies a userspace application thread. section 1.1
  • The userspace thread initiates recvmsg to read the newly arrived data. section 1.1

Where latency grows

If the kernel network-stack thread and userspace thread run on different CPUs, an inter-process interrupt adds delay. If packets concentrate on one receive queue, packet processing may not use all available CPU cores. section 1.1

How Latency covers it

How deep it goes
Traces packet movement from NIC ingress through kernel notification to recvmsg, while deferring detailed measurement procedures.
Examples
Uses differing CPU assignments and packets concentrated on one receive queue as latency examples.
What you can do after
Evaluate likely packet-processing delay contributors across CPU placement, receive-queue distribution, and kernel traversal.
How it connects
Connects network interfaces, receive queues, the Linux kernel network stack, CPU cores, userspace threads, and recvmsg.

Related concepts

This explainer was generated by Manning's knowledge graph from the text of Latency. The section links point to the parts of the book it draws on.