Linux マシンでイーサネット フレーム スニッフィング/転送プログラムを作成しています。これを使用して、コンピュータからイーサネットに、またはその逆に送信されるフレームをスニッフィングします。
ルーターへの 2 段階の送信により遅延が発生する可能性があるため、パケットを失わないように一時停止フレームをアクティブにしようとしています。
これを行う唯一の方法は、ethtool を使用して、たとえば、受信側からの一時停止フレームをオンにすることです。
ethtool -A eth0 rx on
私はこれについて疑問を持っていますが、ethtool の専門家が安心してくれることを願っています.
「ethtool -A」を使用して利用できるオプションは、自動ネゴシエーションをオンまたはオフにすることです。私の知る限り、自動ネゴシエーションはポーズ フレームとはほとんど関係がありません。また、一時停止フレームに関して ethtool で使用できるオプションがないことは、少し当惑させられます。たとえば、フレーム送信者によって要求された一時停止時間を管理することは、ethtool ではオプションではありません。
では、ポーズ フレームを構成するために ethtool が本当に最適な方法なのか、それとも唯一の方法なのか? 理想的には、C コードを使用して構成したいと考えていますが、ethtool がそうする唯一の方法である場合は、ethtool でポーズ フレームを構成することによって、正しいことを行っていることを確認したいと思います。
また、誰かが C でポーズ フレームを構成する方法の正しい方向を教えてくれたら、さらに感謝します。
ありがとうございました。