Packets arrive at the NIC NIC will verify MAC (if not on promiscuous mode) and FCS and decide to drop or to continue NIC will DMA packets at RAM, in a region previously prepared (mapped) by the driver NIC will enqueue references to the packets at receive ring buffer queue rx until rx-usecs timeout or rx-frames NIC will raise a hard IRQ CPU will run the IRQ handler that runs the driver's code Drive