!ndiskd.netadapter

!ndiskd.netadapter 扩展显示系统上处于活动状态的 NDIS 微型端口或网络适配器的相关信息。 如果在没有参数的情况下运行此命令,!ndiskd 将显示所有网络适配器的列表。

     !ndiskd.netadapter [-handle <x>] [-basic] [-diag] [-state] [-bindings] 
        [-ports] [-offloads] [-filterdb] [-timers] [-rst]
        [-pm] [-ss] [-aoac] [-wol] [-protocoloffloads]
        [-rss] [-hw] [-device] [-wmi] [-customwmi]
        [-ndiswmi] [-ref] [-log] [-grovel] [-findname <any>]
        [-rcvfilter] [-nicswitch] [-rcvqueues] [-nicswitches] [-iov]
        [-vfs] [-vports] [-iftrace] [-ip]

参数

-handle
NDIS 微型端口的句柄。

-basic
显示有关微型端口的摘要信息。

-diag
显示自动诊断警报(如果有)。

-state
显示微型端口的当前状态。

-bindings
显示微型端口绑定。

-ports
显示 NDIS 端口的列表。

-offloads
显示任务卸载状态和功能。

-filterdb
显示当前数据包筛选器。

-timers
显示微型端口分配的计时器对象。

-rst
显示接收方限制状态。

-pm
显示电源管理状态和功能。

-ss
显示选择性暂停状态。

-aoac
显示 AOAC(连接待机)状态。

-wol
显示 LAN 唤醒(WoL)配置。

-protocoloffloads
显示主动电源管理协议卸载。

-rss
显示接收方缩放参数。

-hw
显示硬件资源。

-device
显示有关基础 NT 设备对象的信息。

-wmi
显示注册到适配器的 WMI GUID。

-customwmi
显示微型端口注册的自定义 WMI GUID。

-ndiswmi
显示 NDIS 提供的 WMI GUID。

-ref
显示微型端口上的引用明细。

-log
显示 PnP 和 Power 事件日志。

-grovel
强制搜索内存中的微型端口块。

-findname
按名称前缀筛选微型端口。

-rcvfilter
显示接收筛选功能。

-nicswitch
显示 NIC 切换功能。

-rcvqueues
显示接收队列。

-nicswitches
显示 NIC 开关。

-iov
显示 SR-IOV(单根 I/O 虚拟化)功能。

-vfs
显示 SR-IOV VF(虚拟筛选器)。

-vports
显示 Vports(虚拟端口)。

-ifrtrace
显示正在进行的记录器的跟踪。

-ip
显示网络接口上的 IP 地址。

DLL

Ndiskd.dll

示例

通过不带参数地运行 !ndiskd.netadapter,可以获取系统上所有网络适配器及其关联的微型端口驱动程序的列表。 在此示例输出中,查找 Microsoft 内核调试网络适配器,其句柄为 ffffdf80140c71a0。 有关何谓“内核调试网络适配器”的详细信息,请参阅 NDIS 博客上的通过网络调试内核

3: kd> !ndiskd.netadapter
    Driver             NetAdapter          Name                                 
    ffffdf8015a98380   ffffdf8015aa11a0    Microsoft ISATAP Adapter #2
    ffffdf801418d650   ffffdf80140c71a0    Microsoft Kernel Debug Network Adapter

通过单击微型端口驱动程序的句柄或输入 !ndiskd.netadapter -handle,现在可以在该设备上查看所有 NDIS 的状态。 这对于排除网络驱动程序故障或确定网络堆栈中的问题位置非常有帮助。 例如,可以看到驱动程序的数据路径状态,并查看它是否已连接。

在此网络适配器的报表底部,可以单击许多其他链接来浏览其他信息,例如任何挂起的 OID 和任务卸载状态。 这些链接对应于 !ndiskd.netadapter 的许多参数。

3: kd> !ndiskd.netadapter ffffdf80140c71a0


MINIPORT

    Microsoft Kernel Debug Network Adapter

    Ndis handle        ffffdf80140c71a0
    Ndis API version   v6.20
    Adapter context    ffffdf80147d7230
    Driver             ffffdf801418d650 - kdnic  v4.2
    Network interface  ffffdf80139b3a20

    Media type         802.3
    Physical medium    NdisPhysicalMediumOther
    Device instance    ROOT\KDNIC\0000
    Device object      ffffdf80140c7050    More information
    MAC address        18-03-73-c1-e8-72


STATE

    Miniport           Running
    Device PnP         Started             Show state history
    Datapath           Normal
    Interface          Up
    Media              Connected
    Power              D0
    References         0n10                Show detail
    Total resets       0
    Pending OID        None
    Flags              NOT_BUS_MASTER, ALLOW_BUGCHECK_CALLBACK,
                       BUGCHECK_CALLBACK_REGISTERED, DEFAULT_PORT_ACTIVATED,
                       SUPPORTS_MEDIA_SENSE, DOES_NOT_DO_LOOPBACK,
                       MEDIA_CONNECTED
    PnP flags          VIRTUAL_DEVICE, HIDDEN, NO_HALT_ON_SUSPEND,
                       RECEIVED_START


BINDINGS

    Protocol list      Driver              Open               Context           
    MSLLDP             ffffdf80120a5c10    ffffdf8015a749c0   ffffdf8015d325e0
    TCPIP              ffffdf80131cc010    ffffdf801494a650   ffffdf801494aa50
    NDISUIO            ffffdf8015a58140    ffffdf8015a78c10   ffffdf8015a77e00
    TCPIP6             ffffdf80131c9c10    ffffdf80147875a0   ffffdf801494f010
    (RASPPPOE)         Not running
    RSPNDR             ffffdf80120a0c10    ffffdf8015a79c10   ffffdf8015a79010
    LLTDIO             ffffdf8015a5f9b0    ffffdf801406f010   ffffdf8015a786c0
    (RDMANDK)          ffffdf801406d8f0    Declined with NDIS_STATUS_NOT_RECOGNIZED

    Filter list        Driver              Module             Context           
    WFP 802.3 MAC Layer LightWeight Filter-0000
                       ffffdf80139a5a70    ffffdf801494c670   ffffdf801494a010
    QoS Packet Scheduler-0000
                       ffffdf8014039d90    ffffdf801494dc70   ffffdf80147dc2b0
    WFP Native MAC Layer LightWeight Filter-0000
                       ffffdf80139fcd70    ffffdf8014950c70   ffffdf8014950880



MORE INFORMATION

    Driver handlers                        Task offloads
    Power management                       PM protocol offloads
    Pending OIDs                           Timers
    Pending NBLs                           Receive side throttling
    Wake-on-LAN (WoL)                      Packet filter
    Receive queues                         Receive filtering
    RSS                                    NIC switch
    Hardware resources                     Selective suspend
    NDIS ports                             WMI guids
    Diagnostic log

例如,使用 !ndiskd.netadapter 作为进一步调试的起始位置,请单击报告底部的“驱动程序处理程序”链接,以查看此网络适配器微型端口驱动程序的所有已注册驱动程序回调处理程序的列表。 在以下示例中,单击此链接会触发 !ndiskd 运行带有此网络适配器微型端口驱动程序句柄的 !ndiskd.minidriver 扩展。 微型端口驱动程序是 kdnic 4.2,其句柄为 ffffdf801418d650。

3: kd> !ndiskd.minidriver ffffdf801418d650 -handlers


HANDLERS

    NDIS Handler                           Function pointer   Symbol (if available)
    InitializeHandlerEx                    fffff80f1fd78230  bp
    SetOptionsHandler                      fffff80f1fd72800  bp
    HaltHandlerEx                          fffff80f1fd78040  bp
    ShutdownHandlerEx                      fffff80f1fd722c0  bp

    CheckForHangHandlerEx                  fffff80f1fd72810  bp
    ResetHandlerEx                         fffff80f1fd72f70  bp

    PauseHandler                           fffff80f1fd78000  bp
    RestartHandler                         fffff80f1fd78940  bp

    OidRequestHandler                      fffff80f1fd71c90  bp
    CancelOidRequestHandler                fffff80f1fd722c0  bp
    DirectOidRequestHandler                [None]
    CancelDirectOidRequestHandler          [None]
    DevicePnPEventNotifyHandler            fffff80f1fd789a0  bp

    SendNetBufferListsHandler              fffff80f1fd71870  bp
    ReturnNetBufferListsHandler            fffff80f1fd71b50  bp
    CancelSendHandler                      fffff80f1fd722c0  bp

现在可以单击每个处理程序右侧的“bp”链接,在该处理程序上设置断点以调试特定问题。 例如,如果数据路径中存在挂起,则可以调查驱动程序的 SendNetBufferListsHandler 或 ReturnNetBufferListsHandler。

另请参阅

网络驱动程序设计指南

Windows Vista 和更高版本的网络参考

调试网络堆栈

NDIS 扩展(Ndiskd.dll)

!ndiskd.help

通过网络调试内核

!ndiskd.minidriver