NDIS_NDK_LOCAL_ENDPOINTS 结构 (ntddndis.h)

NDIS_NDK_LOCAL_ENDPOINTS结构描述微型端口适配器上的 NDK 本地终结点。

语法

typedef struct _NDIS_NDK_LOCAL_ENDPOINTS {
  NDIS_OBJECT_HEADER            Header;
  ULONG                         Flags;
  ULONG                         Count;
  BOOLEAN                       NDLocalEndpointsMappedtoTCPLocalEndpoints;
  NDIS_NDK_LOCAL_ENDPOINT_ENTRY LocalEndpoints[1];
} NDIS_NDK_LOCAL_ENDPOINTS;

成员

Header

描述此 NDIS_NDK_LOCAL_ENDPOINTS 结构的 NDIS_OBJECT_HEADER 结构。 按如下所示设置 NDIS_OBJECT_HEADER 结构的成员:

  • Type 成员设置为 NDIS_OBJECT_TYPE_DEFAULT
  • Revision 成员设置为 NDIS_NDK_LOCAL_ENDPOINTS_REVISION_1
  • “大小成员 ”设置为 (USHORT) min (MAXUSHORT,NDIS_SIZEOF_NDK_ENDPOINTS_REVISION_1 (n) ) 。

Flags

Count

在 LocalEndpoints 成员中传递的 endpoints 数组中的元素数。 数组中的每个元素都是 NDIS_NDK_LOCAL_ENDPOINT_ENTRY 结构。

NDLocalEndpointsMappedtoTCPLocalEndpoints

一个 BOOLEAN 值,指定终结点的映射方式。 如果 NDK 提供程序的 RDMA 技术要求提供程序将 ND 本地终结点映射到 TCP 本地终结点,则 NDK 提供程序必须将 NDLocalEndpointsMappedtoTCPLocalEndpoints 成员设置为 TRUE。 否则, NDLocalEndpointsMappedtoTCPLocalEndpoints 为 FALSE。

LocalEndpoints[1]

NDIS_NDK_LOCAL_ENDPOINT_ENTRY 结构的可变大小数组,其中数组的大小由返回的本地终结点数决定。 Count 成员指定本地终结点数组中的元素数。

注解

NDIS_NDK_LOCAL_ENDPOINTS 结构随 OID_NDK_LOCAL_ENDPOINTS OID 一起返回。 NDIS_OID_REQUEST 结构的 InformationBuffer 成员包含指向此结构的指针。

此结构大小可变,包含与返回的本地终结点数相等的元素。 作为元素计数的本地终结点数组的实际大小由 Count 成员指示。

如果 NDK 提供程序的 RDMA 技术要求提供程序将 ND 本地终结点映射到 TCP 本地终结点,则 NDK 提供程序还必须报告每个 ND 本地终结点的基础 TCP 本地终结点,如下所示:

  • NDLocalEndpointsMappedtoTCPLocalEndpoints 成员设置为 TRUE。
  • 为每个 ND 本地终结点使用两个连续条目。 第一个条目包含本地 IP 地址 (ND 寻址信息,ND 端口号) 紧接着的条目包含相应的 TCP 本地终结点的寻址信息 (本地 IP 地址,TCP 端口号) 。
  • 除寻址信息以外的成员 (例如, UserModeOwnerListenerOwnerPid) 必须仅在第一个条目中设置,在下一个条目中保持不变。 因此,索引 0、2、4 等的条目包含 ND 寻址信息 (加上正确填充的其他成员) ,索引 1、3、5 等,包含 TCP 寻址信息 (,其中其他成员) 保持不变。

要求

要求
最低受支持的客户端 不支持,在 NDIS 6.30 及更高版本中受支持。
最低受支持的服务器 Windows Server 2012
标头 ntddndis.h (包括 Ndis.h)

另请参阅

NDIS_NDK_LOCAL_ENDPOINT_ENTRY

NDIS_OBJECT_HEADER

NDIS_OID_REQUEST

OID_NDK_LOCAL_ENDPOINTS