Why do some multiqueue (qdisc mq) have n tx / 1 rx, while others have 1 tx / n rx?
0
votes
1
answer
1112
views
While trying to understand multiqueue queuing disciplines (mq qdisc), I stumbled across the following configs :
On my laptop, my WiFi interface implements a mq qdisc with 1 rx and 4 tx :
$ sudo tc qdisc list dev wlp2s0
qdisc mq 0: root
qdisc pfifo_fast 0: parent :4 bands 3 priomap 1 2 2 2 1 2 0 0 1 1 1 1 1 1 1 1
qdisc pfifo_fast 0: parent :3 bands 3 priomap 1 2 2 2 1 2 0 0 1 1 1 1 1 1 1 1
qdisc pfifo_fast 0: parent :2 bands 3 priomap 1 2 2 2 1 2 0 0 1 1 1 1 1 1 1 1
qdisc pfifo_fast 0: parent :1 bands 3 priomap 1 2 2 2 1 2 0 0 1 1 1 1 1 1 1 1
$ sudo ll /sys/class/net/wlp2s0/queues/
total 0
33458 0 drwxr-xr-x 2 root root 0 août 18 05:54 rx-0/
33461 0 drwxr-xr-x 3 root root 0 août 18 05:54 tx-0/
33472 0 drwxr-xr-x 3 root root 0 août 18 05:54 tx-1/
33483 0 drwxr-xr-x 3 root root 0 août 18 05:54 tx-2/
33494 0 drwxr-xr-x 3 root root 0 août 18 05:54 tx-3/
On the other hand, on an HP ProLiant server, each NIC implements a mq qdisc with 4 rx and 1 tx :
$ sudo tc qdisc show dev eno3
qdisc mq 0: root
qdisc pfifo_fast 0: parent :1 bands 3 priomap 1 2 2 2 1 2 0 0 1 1 1 1 1 1 1 1
$ sudo ll /sys/class/net/eno3/queues/
total 0
41241 0 drwxr-xr-x 2 root root 0 août 12 23:17 rx-0/
41244 0 drwxr-xr-x 2 root root 0 août 12 23:17 rx-1/
41247 0 drwxr-xr-x 2 root root 0 août 12 23:17 rx-2/
41250 0 drwxr-xr-x 2 root root 0 août 12 23:17 rx-3/
41256 0 drwxr-xr-x 3 root root 0 août 12 23:17 tx-0/
I guess the point of multiqueuing is performance, so what's the reasoning behind this ? Why does a WiFi card implement "tx multiqueuing", while a NIC implements "rx multiqueuing" ?
Asked by ChennyStar
(1969 rep)
Aug 18, 2019, 05:26 AM
Last activity: Dec 18, 2019, 08:09 PM
Last activity: Dec 18, 2019, 08:09 PM