OID_GEN_MAC_OPTIONS

作为查询,OID_GEN_MAC_OPTIONS OID 指定用于定义基础驱动程序或 NIC 的可选属性的位掩码。

版本信息

Windows Vista 和更高版本的 Windows
支持。

NDIS 6.0 及更高版本的微型端口驱动程序
未请求。

NDIS 5.1 微型端口驱动程序
命令的。

Windows XP
支持。

NDIS 5.1 微型端口驱动程序
命令的。

言论

NDIS 处理 NDIS 6.0 及更高版本的微型端口驱动程序的此 OID。

启动此查询的协议可以确定基础驱动程序集的哪些标志,并且可以选择性地利用它们。

当前定义了以下标志:

NDIS_MAC_OPTION_COPY_LOOKAHEAD_DATA
协议驱动程序可以随意访问指示的数据。 某些快速复制函数在访问板载设备内存时遇到问题。 指示映射设备内存外数据的微型端口驱动程序不应设置此标志。 如果微型端口驱动程序确实设置了此标志,则会放宽对快速复制函数的限制。

NDIS_MAC_OPTION_RECEIVE_SERIALIZED
微型端口驱动程序以串行方式指示数据包。 也就是说,在上一次接收(如果有)完成之前,此类驱动程序不会输入新的接收指示。

NDIS_MAC_OPTION_TRANSFERS_NOT_PEND
微型端口驱动程序永远不会异步接收指示。

指示使用 NdisMIndicateReceiveNetBufferLists 函数接收作的微型端口驱动程序应设置此标志。

NDIS_MAC_OPTION_NO_LOOPBACK
NIC 没有内部环回支持,因此 NDIS 将代表此驱动程序管理环回。 微型端口驱动程序无法像 NDIS 一样高效地提供自己的软件环回,因此,除非 NIC 具有硬件环回支持,否则每个微型端口驱动程序都应设置此标志。 WAN 微型端口驱动程序必须设置此标志。

NDIS_MAC_OPTION_FULL_DUPLEX
微型端口驱动程序支持 SMP 平台上的全双工传输和指示。

注意 此标志已被弃用,供 NDIS 5.0 及更高版本的微型端口驱动程序使用。 NDIS 5.0 及更高版本忽略此标志。

NDIS_MAC_OPTION_EOTX_INDICATION
此标志已过时。

NDIS_MAC_OPTION_8021P_PRIORITY
NIC 及其驱动程序支持 802.1p 数据包优先级。 有关详细信息,请参阅 数据包优先级。 数据包优先级值在来自较高层驱动程序的 NET_BUFFER 结构中接收。 相应的信息在数据包的 MAC 标头中生成,并通过网络传输。 此外,此 NIC 及其驱动程序支持从从网络收到的数据包的 MAC 标头中提取适当的信息。 此信息在NET_BUFFER结构中转发到较高层驱动程序。

注释 NDIS 6.0 及更高及更高版本微型端口驱动程序必须设置NDIS_MAC_OPTION_8021P_PRIORITY标志。

NDIS_MAC_OPTION_SUPPORTS_MAC_ADDRESS_OVERWRITE
当微型端口驱动程序调用 NdisReadNetworkAddress 函数时,NDIS 将设置此标志。

NDIS_MAC_OPTION_RECEIVE_AT_DPC
此标志已过时。

NDIS_MAC_OPTION_8021Q_VLAN
微型端口驱动程序可以在数据包的 MAC 标头中分配和删除 VLAN 标识符(ID)。 驱动程序为驱动程序处理的每个 NIC 维护配置的 VLAN ID。 驱动程序筛选出不属于 NIC 关联的 VLAN 的传入数据包,并使用 VLAN ID 标记传出数据包。 在驱动程序 特定 NIC 的 MiniportInitializeEx 函数期间,驱动程序最初将 NIC 的 VLAN ID 设置为零。 驱动程序的 MiniportInitializeEx 函数随后从注册表中读取以下配置参数,如果存在该参数,则将 NIC 的 VLAN ID 设置为参数的值。

VlanId, REG_DWORD

NDIS_MAC_OPTION_RESERVED
保留供 NDIS 内部使用。

注意 设置NDIS_MAC_OPTION_8021Q_VLAN标志的微型端口驱动程序还必须设置NDIS_MAC_OPTION_8021P_PRIORITY标志。 换句话说,支持 802.1Q 的微型端口驱动程序还必须支持 802.1p。

要求

页眉

Ntddndis.h (包括 Ndis.h)

另请参阅

MiniportInitializeEx

NdisReadNetworkAddress

NET_BUFFER