!ndiskd.nbllog
Расширение !ndiskd.nbllog отображает журнал всех действий NBL (NET_BUFFER_LIST) в системе.
!ndiskd.nbllog [-stacks]
Параметры
-Стеки
Включите вызовы.
DLL-библиотеки
Ndiskd.dll
Замечания
Важно!ndiskd.nbllog требует включения отслеживания NBL на целевом компьютере отладочного компьютера. Отслеживание NBL по умолчанию не включено во всех конфигурациях Windows. Если отслеживание NBL не включено, !ndiskd предоставит инструкции по его включению, как показано в следующем фрагменте кода.
0: kd> !ndiskd.nbllog
This command requires NBL tracking to be enabled on the debugee target
machine. (By default, client operating systems have level 1, and servers
have level 0). To enable, set this REG_DWORD value to a nonzero value on
the target machine and reboot the target machine:
HKLM\SYSTEM\CurrentControlSet\Services\NDIS\Parameters ! TrackNblOwner
Possible Values (features are cumulative)
* 0: Disable all tracking.
* 1: Track the most recent owner of each NBL (enables !ndiskd.pendingnbls)
* 2: Scan for leaks at runtime (use with StuckNblReaction)
* 3: Keep a full history of all activity (enables !ndiskd.nbl -log)
* 4: Take stack capture snapshots (enables !ndiskd.nbl -log -stacks)
This command requires level 3 or higher.
В журнале NBL отображается сетевой трафик в системе. !ndiskd.netreport анализирует журнал отслеживания NBL для визуального отображения этого сетевого трафика. Таким образом, если отслеживание NBL не включено, !ndiskd.netreport не сможет отобразить эти сведения.
Примеры
После включения отслеживания NBL на целевом компьютере отладочного компьютера введите команду !ndiskd.nbllog , чтобы просмотреть журнал всего трафика NBL в системе. Как показано в приведенном ниже примере, запуск !ndiskd.nbllog без параметров не ограничивает выходные данные до 200 событий, которые можно обойти, повторно выполнив команду с параметром -force . Середина выходных данных в этом примере была обрезана для краткости.
0: kd> !ndiskd.nbllog
NBLs Processor Event Detail
ffffe00bc71453f0 CPU 0 Freed
ffffe00bc7163b40 CPU 2 Allocated
ffffe00bc7163b40 CPU 2 ProtocolSent ffffe00bc5ac4880 - QoS Packet Scheduler-0000
ffffe00bc7163b40 CPU 2 FilterSent ffffe00bc5ac5c70 - WFP Native MAC Layer LightWeight Filter-0000
ffffe00bc7163b40 CPU 2, IRQL=DPC FilterSent ffffe00bc3f701a0 - Microsoft Kernel Debug Network Adapter
ffffe00bc7163b40 CPU 2, IRQL=DPC SentToMiniport ffffe00bc3f701a0 - Microsoft Kernel Debug Network Adapter
ffffe00bc7163b40 CPU 0, IRQL=DPC MiniportSendCompleted ffffe00bc5ac5c70 - WFP Native MAC Layer LightWeight Filter-0000
ffffe00bc7163b40 CPU 0, IRQL=DPC FilterSendCompleted ffffe00bc5ac4880 - QoS Packet Scheduler-0000
ffffe00bc7163b40 CPU 0, IRQL=DPC FilterSendCompleted send complete in NDIS, sorting to Opens
ffffe00bc7163b40 CPU 0, IRQL=DPC SendCompleted ffffe00bc5ab7c10 - TCPIP6
...
ffffe00bc6b469b0 CPU 2 Allocated
ffffe00bc6b469b0 CPU 2 Freed
ffffe00bc64a3690 CPU 2 Allocated
ffffe00bc64a3690 CPU 2 ProtocolSent ffffe00bc5ac4880 - QoS Packet Scheduler-0000
ffffe00bc64a3690 CPU 2 FilterSent ffffe00bc5ac5c70 - WFP Native MAC Layer LightWeight Filter-0000
ffffe00bc64a3690 CPU 2, IRQL=DPC FilterSent ffffe00bc3f701a0 - Microsoft Kernel Debug Network Adapter
ffffe00bc64a3690 CPU 2, IRQL=DPC SentToMiniport ffffe00bc3f701a0 - Microsoft Kernel Debug Network Adapter
ffffe00bc3cf2d10 CPU 1 Allocated
ffffe00bc7bc6030 CPU 1 Allocated
ffffe00bc3cf2d10 CPU 1 ProtocolSent ffffe00bc5ac4880 - QoS Packet Scheduler-0000
Maximum of 200 events printed; quitting early.
Rerun with the '-force' option to bypass this limit.
Более подробное описание интерпретации результатов !ndiskd.nbllog см . в блоге !ndiskd.nbl -log в блоге NDIS.
См. также
Руководство по проектированию сетевого драйвера