wgetのtcクラス速度は50Kbpsです! = 50K/秒?

wgetのtcクラス速度は50Kbpsです! = 50K/秒?

次のテストルール設定を取得します。

tc qdisc add dev wlan0 root handle 1: htb
tc class add dev wlan0 parent 1: classid 1:1 htb rate 1000Mbps
tc class add dev wlan0 parent 1:1 classid 1:5 htb rate 50Kbps ceil 50Kbps burst 1kbit cburst 1kbit
tc qdisc add dev wlan0 parent 1:5 handle 5:0 sfq perturb 5
tc filter add dev wlan0 parent 1:0 protocol ip u32 match ip dport 80 0xffff classid 1:5
tc filter add dev wlan0 parent 1:0 protocol ip u32 match ip sport 80 0xffff classid 1:5

(私はまた幸運なしでiptables --set-markを使ってみました。だから基本的に単純な「簡単な」tcルールに戻りました。)

この例働くある意味では、私:80パッケージを表示しました。そしてそれらを制限するしかし、50Kbps未満...

  • wget説明する:

    0% [ ] 4,142,336    490K/s
    
  • tc -s class show dev wlan0説明する:

    root@bt:~/Desktop/tk_net# tc -s class show dev wlan0
    class htb 1:5 parent 1:1 leaf 5: prio 0 rate 400000bit ceil 400000bit burst 128b cburst 128b 
     Sent 7234 bytes 113 pkt (dropped 0, overlimits 0 requeues 0) 
     rate 3584bit 7pps backlog 0b 0p requeues 0 
     lended: 113 borrowed: 0 giants: 0
     tokens: 17500 ctokens: 17500
    
    class htb 1:1 root rate 8000Mbit ceil 8000Mbit burst 0b cburst 0b 
     Sent 7234 bytes 113 pkt (dropped 0, overlimits 0 requeues 0) 
     rate 3584bit 7pps backlog 0b 0p requeues 0 
     lended: 0 borrowed: 0 giants: 0
     tokens: 15 ctokens: 15
    
  • 変更:

    classid 1:5 htb rate 50Kbps ceil 50Kbps
    

    到着

    classid 1:5 htb rate 1Kbps ceil 1Kbps
    

    wgetで作成〜34.7K / s

  • そしてtc言った:

    root@bt:~/Desktop/tk_net# tc -s class show dev wlan0
    class htb 1:5 parent 1:1 leaf 5: prio 0 rate 8000bit ceil 8000bit burst 127b cburst 127b 
     Sent 44799 bytes 644 pkt (dropped 112, overlimits 0 requeues 0) 
     rate 2544bit 4pps backlog 0b 0p requeues 0 
     lended: 641 borrowed: 0 giants: 0
     tokens: 1124984 ctokens: 1124984
    
    class htb 1:1 root rate 8000Mbit ceil 8000Mbit burst 0b cburst 0b 
     Sent 44601 bytes 641 pkt (dropped 0, overlimits 0 requeues 0) 
     rate 4208bit 7pps backlog 0b 0p requeues 0 
     lended: 0 borrowed: 0 giants: 0
     tokens: 15 ctokens: 15
    

私は次の指示に従いました。

インバウンド/アウトバウンド:80トラフィックを制限しようとしたときに何が間違っていますか?

ベストアンサー1

シェーピングを使用して着信トラフィックの速度を制限することはできません。これを行うには、監督機能を使用する必要がありますが、その効果は制限される可能性があります。

シェーピングは、ネットワークインターフェイスでパケットが送信される速度を制御します。設定したルールはネットワークの送信を制御します。

パケットは相手が送信した速度で到着します。ポリシーは、指定された速度を超えるパケットを破棄して、パケットが入力キューに供給される速度を制限できます。その後、TCPは転送速度を調整する必要があります。輻輳制御のないプロトコル(UDPおよびそれに基づくプロトコル)は、パケットが失われても速度が遅くないため、ポリシーは送信者の速度に影響を与えません。

Linuxトラフィックシェーピングの規制は、受信フィルタを介して行われます。から始まるhttp://lartc.org/howto/lartc.adv-qdisc.ingress.html

おすすめ記事