私はtcに関して有用な実行時計を見つけました。たとえば、次のようになります。
[root@router ~]# watch -dc tc -p -s -d qdisc show dev eth0
Every 2,0s: tc -p -s -d qdisc show dev eth0 Sat Oct 19 21:22:26 2013
qdisc prio 1: root refcnt 2 bands 3 priomap 1 2 2 2 1 2 0 0 1 1 1 1 1 1 1 1
Sent 130714882 bytes 1107132 pkt (dropped 20379, overlimits 0 requeues 0)
rate 0bit 0pps backlog 0b 0p requeues 0
qdisc sfq 30: parent 1:2 limit 127p quantum 1514b flows 127/1024
Sent 775116 bytes 1466 pkt (dropped 0, overlimits 0 requeues 0)
rate 0bit 0pps backlog 0b 0p requeues 0
qdisc tbf 20: parent 1:3 rate 100000bit burst 1600b/8 mpu 0b lat 70.0ms
Sent 30679 bytes 119 pkt (dropped 170, overlimits 0 requeues 0)
rate 0bit 0pps backlog 0b 0p requeues 0
すべての場合に比率が0である理由を知りたいのですが…。なぜでしょうか? tc showの出力を説明するドキュメントをお勧めしますか?
また、表示出力が少し変です。次の内容を説明する文書をお勧めしますか?
答え1
トピックに関する十分なドメイン知識を得るのに役立つフロー制御リソースのリストが見つかりました。記事のタイトルは次のとおりです。交通制御。
次のようなQoSとトラフィック制御のための素晴らしいチュートリアルもあります。Linuxカーネルの中核への旅:トラフィック制御、形成、QoS。
次のタイトルのOpenWRTドキュメントを見ることもできます。ネットワークトラフィック制御。具体的には、このセクションは次のとおりです。構成。フロー制御の仕組みと構成方法を議論し、すべての仕組みをよりよく理解するのに役立つ用語と例の良い基礎を提供します。
最後に、次のタイトルの記事も見つかりました。HTB Linux キューマニュアル - ユーザーガイド、速度については、次の説明を提供します。ここでは授業料について話していますが、2つは十分似ていると思います。
抜粋
$ tc -s -d class show dev eth0
class htb 1:1 root prio 0 rate 800Kbit ceil 800Kbit burst 2Kb/8 mpu 0b
cburst 2Kb/8 mpu 0b quantum 10240 level 3
Sent 5914000 bytes 11828 pkts (dropped 0, overlimits 0)
rate 70196bps 141pps
lended: 6872 borrowed: 0 giants: 0
class htb 1:2 parent 1:1 prio 0 rate 320Kbit ceil 4000Kbit burst 2Kb/8 mpu 0b
cburst 2Kb/8 mpu 0b quantum 4096 level 2
Sent 5914000 bytes 11828 pkts (dropped 0, overlimits 0)
rate 70196bps 141pps
lended: 1017 borrowed: 6872 giants: 0
class htb 1:10 parent 1:2 leaf 20: prio 1 rate 224Kbit ceil 800Kbit burst 2Kb/8 mpu 0b
cburst 2Kb/8 mpu 0b quantum 2867 level 0
Sent 2269000 bytes 4538 pkts (dropped 4400, overlimits 36358)
rate 14635bps 29pps
lended: 2939 borrowed: 1599 giants: 0
次に、レートとppsの説明は次のとおりです。
Rate、ppsは授業の実際の割合(平均10秒)を知らせます。ゲーティングに使用されるのと同じ速度です。
引用する
答え2
Ubuntu 12.04リリース以降、速度とバックログの統計はhtb
常にゼロのようです。 HTBクラスが多すぎると、CPUリソースを大量に消費する可能性があるため、これらのディストリビューションの速度推定器はデフォルトで有効になっていないと思います。
sch_htb
モジュールがロードされたら、rootとして実行してみてください。
echo 1 > /sys/module/sch_htb/parameters/htb_rate_est
上記のコマンドを実行したら、htb
ツリーを交換してください。これは私にとって効果的です。