私はtcpreplayとtcpdumpを使用してあるマシンから別のマシンにパケットを送信しようとしています。パケットを最初にキャプチャするのは誰ですか?カーネルまたはドライバですか?
NICから直接パケットをキャプチャするためのドライバを作成すると、どのパスが追跡されますか?
1)N/Wパケット----> NICカード---->アプリケーション(カーネルの役割なし)
2)N/Wパケット----->カーネル---- - > NICカード--->アプリ
おかげ
私はtcpreplayとtcpdumpを使用してあるマシンから別のマシンにパケットを送信しようとしています。パケットを最初にキャプチャするのは誰ですか?カーネルまたはドライバですか?
NICから直接パケットをキャプチャするためのドライバを作成すると、どのパスが追跡されますか?
1)N/Wパケット----> NICカード---->アプリケーション(カーネルの役割なし)
2)N/Wパケット----->カーネル---- - > NICカード--->アプリ
おかげ
それがこの順に通常は次のとおり
次に、d特定のハードウェア/ OSの特殊なケースです。ハードウェアへのユーザ直接接続を行うベンダーの1つはSolarflareです。
これはあまりにも明確な質問に答えるためにタイムアウトを取ってくれてありがとう。あなたの説明は詳細です。あなたはそれについてもっと読むことができるリソース/チュートリアルを知っていますか?そのような質問をすることによって恥ずかしいことをやめますか? – Anon
参照は1つだけありません。 OSの内部およびネットワークに関するすべての書籍(特にStevens)が役立ちます。あなたがLinuxにいるなら、 "Linux Device Drivers"(http://lwn.net/Kernel/LDD3/)が非常に教育的かもしれません。 –
ドライバは、ハードウェアと直接対話するコードの一部です。パケットを見る最初のコードです。
ただし、ドライバはカーネル空間で動作します。それ自体はカーネルの一部です。そして、それは確かにその仕事をするためにカーネル施設(例えばメモリ管理)に依存するでしょう。したがって、「カーネルの役割はありません」は真実ではないでしょう。
ありがとうございます。はい、私の質問はあまり明確ではありません、私は同意します、申し訳ありません。 – Anon
どのオペレーティングシステムですか?また、あなたの質問は貧弱です。ドライバは、カーネル内の他のものと同じくらいカーネルの一部です。 – Nemo
@Nemoカーネルの一部であるドライバに関するあなたのコメントは、私をこの質問に導いたものです。私は同じ欠陥を指摘するつもりでした。 –