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
