Расширения NDIS (Ndiskd.dll)
В этом разделе описываются команды, доступные в !ndiskd, расширение отладчика, полезное для отладки драйверов NDIS (спецификация интерфейса сетевого устройства). Эти команды позволяют разработчикам сетевых драйверов видеть более широкий вид сетевого стека Windows и взаимодействие их драйверов с ним. С помощью !ndiskd можно просмотреть состояние всех сетевых адаптеров (!ndiskd.netadapter), визуальную схему сетевого стека компьютера (!ndiskd.netreport), журнал трафика на сетевых адаптерах (!ndiskd.nbllog) или список всех ожидающих запросов OID (!ndiskd.oid).
Команды можно найти в Ndiskd.dll. Чтобы загрузить символы, введите reload /f ndis.sys в командном окне отладчика. Чтобы убедиться, что символы загружены успешно, используйте расширение !lmi ndis и найдите фразу "Символы загружены успешно" в нижней части. Результат должен выглядеть примерно следующим образом:
0: kd> !lmi ndis
Loaded Module Info: [ndis]
Module: ndis
Base Address: fffff80174570000
Image Name: ndis.sys
Machine Type: 34404 (X64)
Time Stamp: 938f9f4e (This is a reproducible build file hash, not a true timestamp)
Size: 16f000
CheckSum: 167a05
Characteristics: 22
Debug Data Dirs: Type Size VA Pointer
CODEVIEW 21, d4060, d2c60 RSDS - GUID: {9CC82DBE-96A0-773D-29E0-62B698C4C3A8}
Age: 1, Pdb: ndis.pdb
POGO 988, d4084, d2c84 [Data not mapped]
REPRO 24, d4a0c, d360c Reproducible build[Data not mapped]
Image Type: MEMORY - Image read successfully from loaded memory.
Symbol Type: PDB - Symbols loaded successfully from symbol server.
C:\ProgramData\Dbg\sym\ndis.pdb\9CC82DBE96A0773D29E062B698C4C3A81\ndis.pdb
Load Report: public symbols , not source indexed
C:\ProgramData\Dbg\sym\ndis.pdb\9CC82DBE96A0773D29E062B698C4C3A81\ndis.pdb
Гиперссылки !ndiskd
Многие команды расширения в !ndiskd представляют гиперссылки в результатах, которые они отображаются в окне отладчика. Текст этих гиперссылок был оставлен в примерах, предоставленных для иллюстрации точного формата того, что вы увидите при выполнении команды на компьютере отладочного пользователя. Некоторые из примеров также ссылаются на явное нажатие этих ссылок, чтобы понять типичные потоки использования, хотя примеры также предоставляют альтернативные формы командной строки каждой команды.
Общие параметры
Все команды !ndiskd поддерживают следующие универсальные параметры.
-многословный
Отображает дополнительные сведения.
-сжатый
Подавляет некоторые стандартные выходные данные.
-статический
Подавляет некоторые интерактивные выходные данные.
-dml 0|1
Определяет, включены ли выходные данные DML (язык разметки отладчика).
-юникод 0|1
Определяет, разрешен ли вывод символов Юникода.
-indent N
Использует N пробелов на уровне отступа.
-сила
Переопределяет некоторые проверки безопасности на удаленных данных.
-tracedata
Отображает подробные сообщения трассировки для отладки !ndiskd.
Net Adapter, NDIS Driver и General Commands
В следующих командах отображаются сведения о сетевых адаптерах компьютера, сетевых драйверах и общих командах, связанных с сетевым стеком (например, rcvqueues, открытие, фильтры, OID и блокировки RW).
- !ndiskd.netadapter
- !ndiskd.minidriver
- !ndiskd.rcvqueue
- !ndiskd.protocol
- !ndiskd.mopen
- !ndiskd.filter
- !ndiskd.filterdriver
- !ndiskd.oid
- !ndiskd.ndisrwlock
- !ndiskd.netreport
команды NET_BUFFER_LIST и NET_BUFFER
В следующих командах отображаются сведения о NET_BUFFER_LIST и структурах NET_BUFFER.
Команды NetAdapterCx
В следующих командах отображаются сведения, связанные с расширением класса WDF WDF NetAdapterCx и связанными с ней структурами, NET_RING_BUFFER и NET_PACKET.
- !ndiskd.cxadapter
- !ndiskd.netqueue
- !ndiskd.netrb
- !ndiskd.netpacket
- !ndiskd.netfragment
- !ndiskd.nrc
- !ndiskd.netring
Команды сетевого интерфейса
В следующих командах отображаются сведения, относящиеся к сетевым интерфейсам.
Команды NDIS_PACKET
В следующих командах отображаются сведения о структурах NDIS_PACKET . Эти расширения предназначены для устаревших драйверов NDIS 5.x. Структура NDIS_PACKET и связанная с ней архитектура устарели.
Команды CoNDIS
В следующих командах отображаются сведения о подключениях NDIS, ориентированных на подключение.
Команды отладки NDIS
В следующих командах отображаются сведения, касающиеся ссылок NDIS, журналов событий, трассировок стека и отладки трассировок.
Команды WDI
В следующих командах отображаются сведения о драйверах минипорта WDI.
Команды NDIS и !ndiskd Information Commands
Следующие команды отображают сведения о NDIS.sys и ndiskd.dll.
Другие команды
Связанные разделы
Дополнительные сведения о разработке драйверов NDIS для Windows Vista и более поздних версий см. в руководстве по проектированию сетевых драйверов.
Дополнительные сведения о справочнике по драйверам NDIS для Windows Vista и более поздних версий см. в справочнике по сети Windows Vista и более поздних версий.
Демонстрация использования команд отладчика !ndiskd для отладки сетевого стека см. в видео отладке канала Network Stack 9.