Lines Matching full:packets
28 (multi-queue). On reception, a NIC can send different packets to different
29 queues to distribute processing among CPUs. The NIC distributes packets by
31 of logical flows. Packets for each flow are steered to a separate receive
62 Some advanced NICs allow steering packets to queues based on
63 programmable filters. For example, webserver bound TCP port 80 packets
92 this to notify a CPU when new packets arrive on the given queue. The
198 RPS may enqueue packets for processing. For each received packet,
203 packets have been queued to their backlog queue. The IPI wakes backlog
204 processing on the remote CPU, and any queued packets are then processed
219 (the default), in which case packets are processed on the interrupting
244 reordering. The trade-off to sending all packets from the same flow
252 during CPU contention by dropping packets from large flows slightly
257 count over the last 256 packets. If a flow exceeds a set ratio (by
258 default, half) of these packets when a new packet arrives, then the
259 new packet is dropped. Packets from other flows are still only
261 No packets are dropped when the input packet queue length is below
307 While RPS steers packets solely based on hash, and thus generally
311 kernel processing of packets to the CPU where the application thread
313 to enqueue packets onto the backlog of another CPU and to wake up that
316 In RFS, packets are not forwarded directly by the value of their hash,
321 If an entry does not hold a valid CPU, then packets mapped to that entry
333 receive packets on the old CPU, packets may arrive out of order. To
334 avoid this, RFS uses a second flow table to track outstanding packets
337 counter. The CPU index represents the *current* CPU onto which packets
341 recently migrated a userspace thread while the kernel still has packets
353 And now the trick for avoiding out of order packets: when selecting the
369 there are no packets outstanding on the old CPU, as the outstanding
370 packets could arrive later than those about to be processed on the new
412 the application thread consuming the packets of each flow is running.
413 Accelerated RFS should perform better than RFS since packets are sent
420 queue for packets matching a particular flow. The network stack
423 method to program the NIC to steer the packets.
478 the common use case is a 1:1 mapping. This will enable sending packets
482 threads are not pinned to CPUs and each thread handles packets
484 socket for the connection. In this model, sending the packets on the same
489 application cleans up the packets during the busy poll, transmit completion
510 This transmit queue is used for subsequent packets sent on the flow to
511 prevent out of order (ooo) packets. The choice also amortizes the cost
512 of calling get_xps_queues() over all packets in the flow. To avoid
513 ooo packets, the queue for a flow can subsequently only be changed if
515 there are no outstanding packets in the flow, so the transmit queue can
516 change without the risk of generating out of order packets. The