0

Linux マシンでイーサネット フレーム スニッフィング/転送プログラムを作成しています。これを使用して、コンピュータからイーサネットに、またはその逆に送信されるフレームをスニッフィングします。

ルーターへの 2 段階の送信により遅延が発生する可能性があるため、パケットを失わないように一時停止フレームをアクティブにしようとしています。

これを行う唯一の方法は、ethtool を使用して、たとえば、受信側からの一時停止フレームをオンにすることです。

ethtool -A eth0 rx on

私はこれについて疑問を持っていますが、ethtool の専門家が安心してくれることを願っています.

「ethtool -A」を使用して利用できるオプションは、自動ネゴシエーションをオンまたはオフにすることです。私の知る限り、自動ネゴシエーションはポーズ フレームとはほとんど関係がありません。また、一時停止フレームに関して ethtool で使用できるオプションがないことは、少し当惑させられます。たとえば、フレーム送信者によって要求された一時停止時間を管理することは、ethtool ではオプションではありません。

では、ポーズ フレームを構成するために ethtool が本当に最適な方法なのか、それとも唯一の方法なのか? 理想的には、C コードを使用して構成したいと考えていますが、ethtool がそうする唯一の方法である場合は、ethtool でポーズ フレームを構成することによって、正しいことを行っていることを確認したいと思います。

また、誰かが C でポーズ フレームを構成する方法の正しい方向を教えてくれたら、さらに感謝します。

ありがとうございました。

4

1 に答える 1

0

なぜ車輪を再発明したいのですか?たとえばlibpcapnetfilter フックを使用してパケットを傍受しないのはなぜですか?

于 2012-02-07T08:03:46.070 に答える