web-dev-qa-db-ja.com

Linuxトラフィック制御:qdisc mq

私の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 noopqdisc noqueueもありますが、それらの詳細はありません。

2
Zak

グーグル検索は簡単に得られたでしょう vgerカーネルメーリングリストからのこの記事

これらのパッチには、現在のマルチキューTC API統合に関するいくつかの問題を修正するためのクラスフルマルチキュー( "mq")ダミースケジューラが含まれています。パッチ05および07の変更ログには、詳細が含まれています。

Mqスケジューラーは2つのことを行います。

  • デバイスのTXキューをクラスとして提示し、TXキューに移植されたさまざまなqdiscをそれらにアタッチできるようにします

  • すべてのデバイスキュールートqdiscsの累積統計を表示します

通常のpfifo_fastqdiscの代わりにマルチキューデバイスにデフォルトで使用されますが、非マルチキュー(共有)qdiscを接続した後、手動で接続してマルチキューの動作を復元することもできます。

マルチキューは、RSS(Receive-Side-Scaling)と呼ばれる機能であり、基本的にパケット処理の負荷を複数のコアに分散します。さらに読む: http://lxr.free-electrons.com/source/Documentation/networking/scaling.txt

4
the-wabbit