1This target is an extension of the QUEUE target. As opposed to QUEUE, it allows
2you to put a packet into any specific queue, identified by its 16-bit queue
3number.
4It can only be used with Kernel versions 2.6.14 or later, since it requires
5the
6.B
7nfnetlink_queue
8kernel support. The \fBqueue-balance\fP option was added in Linux 2.6.31,
9\fBqueue-bypass\fP in 2.6.39.
10.TP
11\fB\-\-queue\-num\fP \fIvalue\fP
12This specifies the QUEUE number to use. Valid queue numbers are 0 to 65535. The default value is 0.
13.PP
14.TP
15\fB\-\-queue\-balance\fP \fIvalue\fP\fB:\fP\fIvalue\fP
16This specifies a range of queues to use. Packets are then balanced across the given queues.
17This is useful for multicore systems: start multiple instances of the userspace program on
18queues x, x+1, .. x+n and use "\-\-queue\-balance \fIx\fP\fB:\fP\fIx+n\fP".
19Packets belonging to the same connection are put into the same nfqueue.
20.PP
21.TP
22\fB\-\-queue\-bypass\fP
23By default, if no userspace program is listening on an NFQUEUE, then all packets that are to be queued
24are dropped.  When this option is used, the NFQUEUE rule behaves like ACCEPT instead, and the packet
25will move on to the next table.
26.PP
27.TP
28\fB\-\-queue\-cpu-fanout\fP
29Available starting Linux kernel 3.10. When used together with
30\fB--queue-balance\fP this will use the CPU ID as an index to map packets to
31the queues. The idea is that you can improve performance if there's a queue
32per CPU. This requires \fB--queue-balance\fP to be specified.
33