カーネルモジュールを変更して、マシンがLinux2.6カーネル用のワイヤレスアダプターを介して送受信したパケットの数をカウントする必要があります。どのモジュールを変更する必要があるか教えてください。どんな参考文献も役に立ちます。
3 に答える
IP パケットに関心がある場合は、netfilter フックを使用するカーネル モジュールの作成を検討する必要があります。それは非常に簡単です、ここでこれを見てください:
http://www.netfilter.org/documentation/HOWTO/netfilter-hacking-HOWTO-3.html
Netfilter は主にファイアウォールを目的としていますが、必要なことを行うことができ、他のカーネル モジュールをいじる必要はありません。それが役に立てば幸い。
無線アダプタについてはよくわかりませんが、有線のものと似ていると思います。有線および無線 NIC の場合、ifconfig eth0 コマンドを使用すると、出力に、送信 (TX) または受信 (RX) されたパケットの数を示す 1 つまたは 2 つの行が表示されます。
カーネル モジュールから同じ情報を取得する方法の 1 つは、ネットワーク カードのデバイス ドライバーを変更することです。rtl8139 (有線のもの) に関するチュートリアルの 1 つがここにあります: http://linuxgazette.net/156/jangir.html
また、同じ情報を取得するために使用できる標準のカーネル インターフェイスがいくつかあると思います。たとえばtp->stats.tx_packets
、上記のリンクに記載されています。
cat /proc/net/dev
おそらくあなたが望むものではありませんが、その理由を説明してください。