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
47 Some advanced NICs allow steering packets to queues based on
48 programmable filters. For example, webserver bound TCP port 80 packets
77 this to notify a CPU when new packets arrive on the given queue. The
141 RPS may enqueue packets for processing. For each received packet,
146 packets have been queued to their backlog queue. The IPI wakes backlog
147 processing on the remote CPU, and any queued packets are then processed
162 (the default), in which case packets are processed on the interrupting
187 reordering. The trade-off to sending all packets from the same flow
195 during CPU contention by dropping packets from large flows slightly
200 count over the last 256 packets. If a flow exceeds a set ratio (by
201 default, half) of these packets when a new packet arrives, then the
202 new packet is dropped. Packets from other flows are still only
204 No packets are dropped when the input packet queue length is below
250 While RPS steers packets solely based on hash, and thus generally
254 kernel processing of packets to the CPU where the application thread
256 to enqueue packets onto the backlog of another CPU and to wake up that
259 In RFS, packets are not forwarded directly by the value of their hash,
264 If an entry does not hold a valid CPU, then packets mapped to that entry
276 receive packets on the old CPU, packets may arrive out of order. To
277 avoid this, RFS uses a second flow table to track outstanding packets
280 counter. The CPU index represents the *current* CPU onto which packets
284 recently migrated a userspace thread while the kernel still has packets
296 And now the trick for avoiding out of order packets: when selecting the
312 there are no packets outstanding on the old CPU, as the outstanding
313 packets could arrive later than those about to be processed on the new
355 the application thread consuming the packets of each flow is running.
356 Accelerated RFS should perform better than RFS since packets are sent
363 queue for packets matching a particular flow. The network stack
366 method to program the NIC to steer the packets.
421 the common use case is a 1:1 mapping. This will enable sending packets
425 threads are not pinned to CPUs and each thread handles packets
427 socket for the connection. In this model, sending the packets on the same
432 application cleans up the packets during the busy poll, transmit completion
453 This transmit queue is used for subsequent packets sent on the flow to
454 prevent out of order (ooo) packets. The choice also amortizes the cost
455 of calling get_xps_queues() over all packets in the flow. To avoid
456 ooo packets, the queue for a flow can subsequently only be changed if
458 there are no outstanding packets in the flow, so the transmit queue can
459 change without the risk of generating out of order packets. The