!ndiskd.netpacket 拡張機能は、NET_PACKET構造体に関する情報を表示します。
ネットワーク アダプター WDF クラス拡張機能 (NetAdapterCx) の詳細については、「 ネットワーク アダプター WDF クラス拡張 (Cx)」を参照してください。
!ndiskd.netpacket -handle <x> [-basic] [-layout] [-checksum] [-data]
パラメーター
-ハンドル
必須。 NET_PACKETのアドレス。
-基本的な
基本情報を表示します。
-レイアウト
パケット プロトコルのレイアウトを表示します。
-チェックサム
パケット チェックサム情報を表示します。
-データ
ペイロード メモリをダンプします。
DLL
Ndiskd.dll
例示
手記 NetAdapterCx 内の他のオブジェクト とNET_PACKET オブジェクトの関係を説明する図を表示するには、オブジェクトの概要を参照してください。
NET_PACKETのハンドルを取得するには、次の手順に従います。
- !ndiskd.netadapter 拡張機能を実行します。
- NetAdapterCx ドライバーがインストールされている NetAdapter のハンドルをクリックします。
- NetAdapter の NETADAPTER オブジェクトの右側にある [詳細情報] リンクをクリックして 、!ndiskd.cxadapter 拡張機能を実行します。
- NETADAPTER のデータパス キューを確認するには、-datapath パラメーターを指定して !ndiskd.cxadapter コマンドを入力します。
- いずれかのデータパス キューのハンドルをクリックします。
- そのデータパス キューのリング バッファーのハンドルをクリックします。
- リング バッファーの詳細の下部にある [List all elements]\(すべての要素を一覧表示する\) リンクをクリックして、含まれている要素を確認します。
この手順の手順 1 から 4 の詳細については、 !ndiskd.cxadapter トピックの例を参照してください。 この手順の手順 5 の詳細については、 !ndiskd.netqueue トピックの例を参照してください。 この手順の手順 6 から 7 の詳細については、 !ndiskd.netrb トピックの例を参照してください。 次の例では、最初のNET_PACKET ffffd1022d000040 のハンドルを探します。
0: kd> !ndiskd.netrb ffffd1022d000000 -dump
[000] ffffd1022d000040 - NET_PACKET
[001] ffffd1022d0000c0 - NET_PACKET
[002] ffffd1022d000140 - NET_PACKET
[003] ffffd1022d0001c0 - NET_PACKET
[004] ffffd1022d000240 - NET_PACKET
[005] ffffd1022d0002c0 - NET_PACKET
...
[07b] ffffd1022d003dc0 - NET_PACKET
[07c] ffffd1022d003e40 - NET_PACKET
[07d] ffffd1022d003ec0 - NET_PACKET
[07e] ffffd1022d003f40 - NET_PACKET
[07f] ffffd1022d003fc0 - NET_PACKET
このNET_PACKETのハンドルをクリックするか、コマンド ラインで !ndiskd.netpacket -handle を入力すると、このNET_PACKETの詳細 (リング バッファーを含むリング バッファー、リング バッファーを含むデータパス キュー、最初のフラグメントのハンドルなど) を確認できます。
0: kd> !ndiskd.netpacket ffffd1022d000040
NET_PACKET ffffd1022d000040 Ring Buffer ffffd1022d000000
First fragment ffffd1022d000040 NETTXQUEUE ffffd1022f512700
Client Context ffffd1022d000090
Show protocol layout
Show checksum information
Dump data payload
基本的な説明を他の !ndiskd.netpacket パラメーターのいずれか、またはそのすべてと組み合わせて、このフラグメントの特定の情報を表示できるようになりました。 次の例では、すべてのパラメーターを使用します。
0: kd> !ndiskd.netpacket ffffd1022d000040 -basic -layout -checksum -data
NET_PACKET ffffd1022d000040 Ring Buffer ffffd1022d000000
First fragment ffffd1022d000040 NETTXQUEUE ffffd1022f512700
Client Context ffffd1022d000090
Protocol Layout
Layer 2 Type ETHERNET
Header Length 0n14
Layer 3 Type IPV4_NO_OPTIONS
Header Length 0n20
Layer 4 Type UDP
Header Length 8
Checksum Information
Layer 2 TX_PASSTHROUGH
Layer 3 TX_REQUIRED
Layer 4 TX_PASSTHROUGH
Payload data
Fragment ffffd1022d000040
ffffd102303e8332 00 00 01 02 71 68 0a 89-be 39 e0 00 00 16 94 04 ····qh···9······
ffffd102303e8342 00 00 22 00 fa 01 00 00-00 01 03 00 00 00 e0 00 ··"·············
ffffd102303e8352 00 fc