В моей системе Linux я вижу это:
# ip link list
....
2: eth2: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc mq state UP mode DEFAULT qlen 1000
....
Что qdisc mq
? В http://lartc.org/lartc.html Нахожу информацию только по IMQ.
В примерах из инструкции также есть qdisc noop
и qdisc noqueue
, но подробностей о них нет.
Поиск в Google легко дал бы эта статья из списка рассылки ядра vger:
Эти исправления содержат фиктивный планировщик с множеством очередей («mq»), который исправляет несколько проблем с текущей интеграцией с несколькими очередями TC API. Журналы изменений патчей 05 и 07 содержат более подробную информацию.
Планировщик mq выполняет две функции:
представлять очереди передачи устройств как классы, позволяя присоединять к ним различные qdiscs, которые привиты к очередям передачи
представляет накопленную статистику всех корневых qdiscs очереди устройств
Он используется по умолчанию для устройств с несколькими очередями вместо обычного qdisc pfifo_fast, но также может быть присоединен вручную для восстановления поведения нескольких очередей после присоединения qdisc без нескольких очередей (общего доступа).
Multiqueue - это функция, иначе называемая RSS (масштабирование на стороне приема), которая в основном распределяет нагрузку обработки пакетов между несколькими ядрами. Дальнейшее чтение: http://lxr.free-electrons.com/source/Documentation/networking/scaling.txt