数据中心桥接(DCB)组件(Msdcb.sys)发出OID_QOS_PARAMETERS的对象标识符(OID)方法请求,以在网络适配器上配置本地 NDIS 服务质量(QoS)参数。
NDIS_OID_REQUEST 结构的 InformationBuffer 成员包含指向 NDIS_QOS_PARAMETERS 结构的指针。
注意 此 OID 方法请求对于支持 IEEE 802.1 数据中心桥接 (DCB) 接口的 NDIS QoS 的微型端口驱动程序是必需的。
言论
微型端口驱动程序通过 OID_QOS_PARAMETERS 的 OID 方法请求获取本地 NDIS QoS 参数。 这些参数定义网络适配器如何优先传输或 出口数据包。 有关这些参数的详细信息,请参阅 NDIS QoS 参数概述。
注意 只有 DCB 组件才能发出OID_QOS_PARAMETERS的 OID 方法请求。 过度的协议或筛选器驱动程序不得颁发此 OID。 有关 DCB 组件的详细信息,请参阅 数据中心桥接的 NDIS QoS 体系结构。
DCB 组件在以下情况下发出OID_QOS_PARAMETERS请求:
系统管理员安装或卸载 Microsoft DCB 服务器功能。
有关 DCB 服务器功能的详细信息,请参阅 System-Provided DCB 组件。
在安装该功能时,系统管理员启用或禁用 DCB 服务器功能。
系统管理员更改任何 DCB 服务器功能参数。
安装 DCB 服务器功能时,作系统将启动或重启。
当微型端口驱动程序处理 OID_QOS_PARAMETERS 的 OID 方法请求时,它必须遵循以下准则:
微型端口驱动程序将 NDIS_QOS_PARAMETERS 结构中的数据复制到其本地 NDIS QoS 参数的缓存中。 然后,驱动程序会根据本地 NDIS QoS 参数的缓存以及从远程对等方接收的 NDIS QoS 参数的缓存来解析其作 NDIS QoS 参数。
有关微型端口驱动程序如何解析其作参数的详细信息,请参阅 解析作 NDIS QoS 参数。
微型端口驱动程序不得修改 NDIS_QOS_PARAMETERS 结构中包含的任何数据。 驱动程序必须完成 OID 方法请求,并返回 NDIS_QOS_PARAMETERS 结构中的原始数据。
NDIS_QOS_PARAMETERS_WILLING 标志指定微型端口驱动程序是启用或禁用本地数据中心桥接 Exchange (DCBX) 愿意状态。 驱动程序通过以下方式处理此标志:
如果设置了此标志,微型端口驱动程序必须启用本地 DCBX 愿意状态。 这允许使用 QoS 设置远程配置驱动程序。 在这种情况下,驱动程序会根据远程 QoS 参数解析其作 QoS 参数。 微型端口驱动程序还可以根据独立硬件供应商(IHV)定义的任何专有 QoS 设置解析其作 QoS 参数。
如果未设置此标志,微型端口驱动程序必须禁用本地 DCBX 愿意状态。 这样,驱动程序就可以从本地 QoS 参数而不是远程 QoS 参数解析其作 QoS 参数。 微型端口驱动程序还必须禁用或替代未设置相关 NDIS_QOS_PARAMETERS_Xxx_CONFIGURED 标志的任何本地 QoS 参数。
例如,微型端口驱动程序可以使用 IHV 定义的 QoS 参数的专有设置替代未配置的本地 QoS 参数。 如果未使用 NDIS_QOS_PARAMETERS_Xxx_CONFIGURED 标志指定本地 QoS 参数的专有设置,驱动程序必须在网络适配器上禁用这些 QoS 参数的使用。
注意 如果驱动程序损害了在网络适配器上启用的协议或技术使用的 QoS 参数,驱动程序还可以替代配置的本地 QoS 参数。 例如,如果通过以太网(FCoE)协议通过光纤通道(FCoE)协议启用网络适配器,则驱动程序可以替代本地 QoS 参数。
有关本地 DCBX 愿意状态的详细信息,请参阅 管理本地 DCBX 愿意状态。
有关微型端口驱动程序如何替代本地 QoS 参数的详细信息,请参阅 管理 NDIS QoS 参数。
注意 重写本地 QoS 参数不应导致微型端口驱动程序失败OID_QOS_PARAMETERS的 OID 方法请求。
有关如何管理本地 QoS 参数的微型端口驱动程序的详细信息,请参阅 设置本地 NDIS QoS 参数。
返回状态代码
微型端口驱动程序返回以下状态代码之一。
| 状态代码 | 描述 |
|---|---|
NDIS_STATUS_SUCCESS |
OID 请求已成功完成。 |
NDIS_STATUS_PENDING |
OID 请求正在等待完成。 当微型端口驱动程序调用 NdisMOidRequestComplete时,NDIS 将在请求完成后将最终状态代码和结果传递给调用方 OID 请求完成处理程序。 |
NDIS_STATUS_NOT_SUPPORTED |
微型端口驱动程序不支持 NDIS QoS 接口。 |
NDIS_STATUS_INVALID_PARAMETER |
NDIS_QOS_PARAMETERS 结构的一个或多个成员包含不正确的值。 |
NDIS_STATUS_INVALID_LENGTH |
信息缓冲区的长度小于 (NDIS_QOS_PARAMETERS) 的大小。 NDIS 设置 数据。QUERY_INFORMATION。NDIS_OID_REQUEST 结构中的 BytesNeeded 成员达到所需的最小缓冲区大小。 |
NDIS_STATUS_FAILURE |
由于其他原因,请求失败。 |
要求
版本 |
NDIS 6.30 及更高版本中受支持。 |
页眉 |
Ntddndis.h (包括 Ndis.h) |