DSCP / ToSを使用して特定のアプリケーションのトラフィックを表示する方法はありますか?

DSCP / ToSを使用して特定のアプリケーションのトラフィックを表示する方法はありますか?

最近WindowsからLinux(Manjaro)に切り替えました。

トラフィックを管理するために、ネットワークトラフィックが特定のコード(DSCP)でタグ付けされるようにアプリケーション名を指定できるWindows機能を使用してきました。その後、私のルーター(pfsense)はそれを調べて優先順位を付けます。それに応じてトラフィックが発生します。

次の優先順位を設定します。

  1. オンラインゲーム
  2. 分類されていないすべてのトラフィック(主にネットワークトラフィック)
  3. スチーム/オリジン/ウィンドウアップデート

これにより、私の兄と私は急流を使ってオンラインゲームをプレイでき、両親はいつでもYouTubeビデオを開くことができます。急流/更新はルータによって自動的に制限され、最悪の場合は5msの遅延が発生します。全体のプロセス中にジッタが発生し、さらに10〜20個のpingが発生します。

Linuxに切り替えようと思ったときにこの設定をコピーすることが問題になるとは思わなかった。 iptablesや他のLinuxファイアウォールの基本機能だと思いましたが、2002年頃にもその機能が存在していたことがわかりました。 / 2003 1999年の損傷により廃棄され、修理が煩わしいと判断されました。

iptablesを使用すると、プロセスpidに基づいてトラフィックにタグを付けることができますが、pfsenseがトラフィックを優先する方法のためにアプリケーションが送信した最初のパケットにタグを付ける必要があるため、この方法は私には適していません。

そのため、解決策を決定する前に、数週間にわたってさまざまなクエリを試して、次のオプションを使用して進展しました。

SElinux/Aparmor - 私が望むもの/必要なものよりはるかに多くの機能を実行します。

systemtap - (カーネルデバッグツール)一種のライブカーネルパッチからpid /プロセス名を読み込んでいる間にiptablesルールを作成するスクリプトを見つけようとしています(理想的ではありません)。

anfd/lpfw - このファイアウォールはデフォルトですべてをブロックし、アプリケーションのコマンド名に基づいてトラフィックを許可するルールを設定できます。

私は誰かがこれを理解できることを願ってこれを投稿しています。そうでなければ、私のニーズに合わせてlpfwまたはandfを変更する必要があるからです。

TL; DR ルータが適切に優先順位を付けられるように、特定のアプリケーションからのトラフィックがコマンド名に基づいて表示(ToS/DSCP)されるようにします。

Linuxでこの機能を複製する方法についての情報をお寄せいただきありがとうございます。

関連情報