帯域幅の優先順位を指定するために、NICへのアプリケーションアクセスの優先順位/適合値を変更できますか?

帯域幅の優先順位を指定するために、NICへのアプリケーションアクセスの優先順位/適合値を変更できますか?

-20から+20 Niceの値など、NICで最も多くの帯域幅を受信するアプリケーションを調整できますが、プロセッサ時間ではなく帯域幅を調整できますか?

転送によって他のアプリケーションがブロックされるようです。オプションを使用してアプリケーションを遅らせることができますが、ネットワークアクセスを介してすべてを表示および調整できるLinux/非アプリケーション固有のソリューションがあるかどうか疑問に思います。

修正する: 問題は以下の出力にあるようです。現在、すべてのWebおよびトランスポートトラフィックはTCPソースポート80と動的宛先ポートであり、クラス0:3(16810552バイトおよび171075パケット)に集中しています。そのため、インターネット接続速度がそれほど速くないため、転送速度がタイムアウトするほど高速です。出力は、キュー・ルールがパケットをドロップしていないことを示します。

私が見ています。tcng構成はすでに存在するため、可能な解決策として使用されます。

$ tc qdisc show dev wlp2s0
qdisc mq 0: root 
qdisc fq_codel 0: parent :4 limit 10240p flows 1024 quantum 1514 target 5.0ms interval 100.0ms memory_limit 32Mb ecn 
qdisc fq_codel 0: parent :3 limit 10240p flows 1024 quantum 1514 target 5.0ms interval 100.0ms memory_limit 32Mb ecn 
qdisc fq_codel 0: parent :2 limit 10240p flows 1024 quantum 1514 target 5.0ms interval 100.0ms memory_limit 32Mb ecn 
qdisc fq_codel 0: parent :1 limit 10240p flows 1024 quantum 1514 target 5.0ms interval 100.0ms memory_limit 32Mb ecn 

$ tc -g -s class show dev wlp2s0
+---(:4) mq 
|       Sent 5670 bytes 105 pkt (dropped 0, overlimits 0 requeues 1) 
|       backlog 0b 0p requeues 1
|   
+---(:3) mq 
|       Sent 16810552 bytes 171075 pkt (dropped 0, overlimits 0 requeues 0) 
|       backlog 0b 0p requeues 0   competing for bandwidth
|     
+---(:2) mq 
|       Sent 2538 bytes 31 pkt (dropped 0, overlimits 0 requeues 1) 
|       backlog 0b 0p requeues 1
|     
+---(:1) mq 
        Sent 13432 bytes 76 pkt (dropped 0, overlimits 0 requeues 0) 
        backlog 0b 0p requeues 0

答え1

トラフィック形成QoS

私は次のようなものを使用しました奇跡のシェイパー水滴またはネットワークトラフィックを制限するpyshaper。

はい

水滴

アップロード/ダウンロード速度を20Kbpsに制限します。

$ trickle -d 20 wget -c http://download1.rpmfusion.org/free/fedora/rpmfusion-free-release-stable.noarch.rpm

上記のシナリオでは、これを個別に設定することもできます。このように、これらの設定をデフォルト値に設定することもできます。

$ trickled -d 50 -u 10

奇跡のシェイパー

Wondershaperを使用してネットワークレベルで帯域幅を制御することもできます。たとえば、自分のデバイスを制限したいとしますeth1

$ sudo wondershaper eth1 1024 256

これにより、ダウンロード速度は1024Kbits、アップロード速度は256Kbitsになります。それぞれ128KBと16KBです。

ふたを開けたいとき。

$ sudo wondershaper clear eth1

パイシェーパー

以前はこのサイトを広く扱ったことがpyshaperあります。次のU&L Q&Aタイトルをご覧ください。

これは非常に強力なツールなので、可能性を実証するためのものです。

引用する

答え2

おそらくあなたが探しているのはサービス品質(QoS)です。これはあなたが好むファイアウォール(例えばiptables、、、、など)では簡単には利用できませんが、最新のルータでは簡単でnftables次にpf実行する必要があります。ufwIP/ポート

iptablesの例。 https://serverfault.com/questions/762921/qos-with-iptables-and-tc-with-unstable-wan

slmが述べたように、trickleこれは起動時に次のように行うことができます。プロセス組み込みオプションで速度制限のあるコマンドを使用しない場合(例rsync:、、、curlwget

wondershaper制限に使用できます。[仮想]インターフェースこれは、ネットワークカード(たとえば、、、rsynccurlwgetバインドできるコマンドや仮想マシンに役立ちます。

関連情報