1. A tangible non-transitory machine-readable medium storing instructions that when executed by a data processing apparatus cause the data processing apparatus to perform operations comprising: writing network data from a network interface to a buffer in a system memory, wherein the buffer comprises a plurality of sub-buffers arranged in a circular sequence and writing the network data from the network interface to the buffer in the system memory comprises: writing the network data to an active unlocked sub-buffer among the plurality of sub-buffers, locking the active sub-buffer, designating an unlocked sub-buffer as the active sub-buffer, and after ascertaining that the network data stored in the locked sub-buffer has been written to system storage, unlocking the locked sub-buffer; and concurrent with writing the network data to the buffer in the system memory, writing the network data from the buffer in the system memory to the system storage.