!ndiskd.netpacket
The !ndiskd.netpacket extension displays information about a NET_PACKET structure.
For more information about the Network Adapter WDF Class Extension (NetAdapterCx), see Network Adapter WDF Class Extension (Cx).
!ndiskd.netpacket -handle <x> [-basic] [-layout] [-checksum] [-data]
Parameters
-handle
Required. Address of a NET_PACKET.
-basic
Displays basic information.
-layout
Displays packet protocol layout.
-checksum
Displays packet checksum information.
-data
Dumps the payload memory.
DLL
Ndiskd.dll
Examples
Note See Summary of Objects to see a diagram explaining the relationship of the NET_PACKET object with other objects in the NetAdapterCx.
To obtain a handle for a NET_PACKET, follow these steps:
- Run the !ndiskd.netadapter extension.
- Click on the handle for a NetAdapter that has a NetAdapterCx driver installed.
- Click the "More Information" link to the right of the NetAdapter's NETADAPTER object to run the !ndiskd.cxadapter extension.
- Enter the !ndiskd.cxadapter command with the -datapath parameter to see that NETADAPTER's datapath queues.
- Click on the handle for one of the datapath queues.
- Click on the handle for that datapath queue's ring buffer.
- Click on the "List all elements" link at the bottom of the ring buffer details to see the elements it contains.
For details on Steps 1-4 of this procedure, see the examples on the !ndiskd.cxadapter topic. For details on Step 5 of this procedure, see the examples on the !ndiskd.netqueue topic. For details on Steps 6-7 of this procedure, see the examples on the !ndiskd.netrb topic. In the following example, look for the handle for the first 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
By clicking on the handle for this NET_PACKET or by entering !ndiskd.netpacket -handle on the command line, you can see details for this NET_PACKET, including the ring buffer that contains it, the datapath queue that contains its ring buffer, and the handle for its first fragment.
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
You can now combine the basic description with any of the other !ndiskd.netpacket parameters, or all of them, to see specific information for this fragment. The following example uses all parameters.
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
See also
Windows Vista and Later Networking Reference