Поделиться через


перечисление NDIS_NET_BUFFER_LIST_INFO (ndis/nblinfo.h)

Перечисление NDIS_NET_BUFFER_LIST_INFO определяет сведения, общие для всех NET_BUFFER структур в структуре NET_BUFFER_LIST.

Синтаксис

typedef enum _NDIS_NET_BUFFER_LIST_INFO {
  TcpIpChecksumNetBufferListInfo,
  TcpOffloadBytesTransferred,
  IPsecOffloadV1NetBufferListInfo,
  IPsecOffloadV2NetBufferListInfo,
  TcpLargeSendNetBufferListInfo,
  TcpReceiveNoPush,
  ClassificationHandleNetBufferListInfo,
  Ieee8021QNetBufferListInfo,
  NetBufferListCancelId,
  MediaSpecificInformation,
  NetBufferListFrameType,
  NetBufferListProtocolId,
  NetBufferListHashValue,
  NetBufferListHashInfo,
  WfpNetBufferListInfo,
  IPsecOffloadV2TunnelNetBufferListInfo,
  IPsecOffloadV2HeaderNetBufferListInfo,
  NetBufferListCorrelationId,
  NetBufferListFilteringInfo,
  MediaSpecificInformationEx,
  NblOriginalInterfaceIfIndex,
  NblReAuthWfpFlowContext,
  TcpReceiveBytesTransferred,
  NrtNameResolutionId,
  UdpRecvSegCoalesceOffloadInfo,
  SwitchForwardingReserved,
  SwitchForwardingDetail,
  VirtualSubnetInfo,
  IMReserved,
  TcpRecvSegCoalesceInfo,
  UdpSegmentationOffloadInfo,
  RscTcpTimestampDelta,
  TcpSendOffloadsSupplementalNetBufferListInfo,
  GftOffloadInformation,
  GftFlowEntryId,
  NetBufferListInfoReserved3,
  SwitchForwardingReserved,
  SwitchForwardingDetail_b0_to_b31,
  SwitchForwardingDetail_b32_to_b63,
  VirtualSubnetInfo,
  NetBufferListInfoReserved1,
  NetBufferListInfoReserved2,
  MaxNetBufferListInfo
} NDIS_NET_BUFFER_LIST_INFO, *PNDIS_NET_BUFFER_LIST_INFO;

Константы

 
TcpIpChecksumNetBufferListInfo
Определяет сведения контрольной суммы, используемые при разгрузке задач контрольной суммы из протокола TCP/IP
в минипорт-драйвер. Когда
указан TcpIpChecksumNetBufferListInfo, макрос NET_BUFFER_LIST_INFO возвращает

структура NDIS_TCP_IP_CHECKSUM_NET_BUFFER_LIST_INFO
. Эта структура содержит объединение, позволяющее
Сведения контрольной суммы, к которые необходимо получить доступ в виде одного pvOID значения или битовых полей.
TcpOffloadBytesTransferred
Определяет значение ULONG, которое является числом байтов данных, передаваемых в трубе TCP
выгрузить операцию отправки, получения или отключения.
IPsecOffloadV1NetBufferListInfo
Определяет сведения о безопасности протокола Интернета (IPsec), которые используются в разгрузке задач IPsec
от протокола TCP/IP до мини-порта драйвера. Когда
указан указана IPsecOffloadV1NetBufferListInfo, NET_BUFFER_LIST_INFO возвращает значение

структура NDIS_IPSEC_OFFLOAD_V1_NET_BUFFER_LIST_INFO
.
IPsecOffloadV2NetBufferListInfo
Указывает сведения о разгрузке безопасности протокола Интернета версии 2 (IPsecV2), которые используются в
разгрузка задач IPsec из протокола TCP/IP на мини-порт. При указании
IPsecOffloadV2NetBufferListInfo, NET_BUFFER_LIST_INFO возвращает значение

NDIS_IPSEC_OFFLOAD_V2_NET_BUFFER_LIST_INFO
структура.
TcpLargeSendNetBufferListInfo
Определяет сведения, используемые при разгрузке сегментации большого TCP-пакета из
Протокол TCP/IP для мини-адаптера для разгрузки больших объемов отправки версии 1 (LSOV1) и большой разгрузки отправки
версия 2 (LSOV2). Когда
указан tcpLargeSendNetBufferListInfo, NET_BUFFER_LIST_INFO возвращает значение

NDIS_TCP_LARGE_SEND_OFFLOAD_NET_BUFFER_LIST_INFO
структура. Эта структура содержит объединение, которое
позволяет получить доступ к данным в виде одного значения PVOID или в виде битовых полей.

Перед передачей большого TCP-пакета в мини-драйвер для сегментации протокол TCP/IP записывается
значения в
LsoV1Transmit члена
структура NDIS_TCP_LARGE_SEND_OFFLOAD_NET_BUFFER_LIST_INFO
для LSOV1
или
LsoV2Transmit член LSOV2. Перед завершением отправки большого TCP-пакета, который он имеет
сегментирован на небольшие пакеты, минипорт-драйвер записывает значения в
LsoV1TransmitComplete члена
структура NDIS_TCP_LARGE_SEND_OFFLOAD_NET_BUFFER_LIST_INFO
для
LSOV1 или LSOV1 или
LsoV2TransmitComplete член LSOV2. Для LSOV1 значение, которое записывает драйвер минипорта
включает общее количество полезных данных TCP, отправленных драйвером мини-порта в пакетах, которые он отправляет.
сегментирован из большого TCP-пакета.
TcpReceiveNoPush
Определяет значение логического , представляющее режим отправки запроса на получение отгрузки tcp-трубы.
Если TRUE, запрос на получение находится в режиме без принудительной отправки. В противном случае запрос на получение находится в режиме push-отправки.
ClassificationHandleNetBufferListInfo
Скрытный.
Ieee8021QNetBufferListInfo
Определяет сведения о пакете 802.1Q. Когда
указан Ieee8021QNetBufferListInfo,
NET_BUFFER_LIST_INFO возвращает значение
значение члена

структура NDIS_NET_BUFFER_LIST_8021Q_INFO
. Эта структура может указать приоритет 802.1p и виртуальную локальную сеть
сведения об идентификаторе. Сведения о приоритете 802.1p используются для установления приоритета пакетов в общих носителях
802 сети. Минипорт драйверы, поддерживающие тег 802.1Q в оборудовании, должны использовать

NDIS_NET_BUFFER_LIST_8021Q_INFO
структуру для операций передачи и получения.
NetBufferListCancelId
Определяет значение ULONG_PTR, которое является идентификатором отмены для
структура NET_BUFFER_LIST. Отмена
ожидающая передача помеченной NET_BUFFER_LIST структуры, драйвер протокола передает пакет
Идентификатор отмены

NdisCancelSendNetBufferLists
. Драйверы должны вызываться

NdisGeneratePartialCancelId
для получения значения, которое драйвер должен использовать в качестве байта высокого порядка
идентификатор отмены.
MediaSpecificInformation
Определяет значение PVOID, которое является адресом выделенного драйвером буфера. Этот буфер содержит
любые данные вне диапазона мультимедиа, сопровождающие данные, сопровождающие
NET_BUFFER структуры, связанные с
структура NET_BUFFER_LIST. Если драйвер протокола выделил данные вне диапазона, он настроит
данные для операции отправки. Если минипорт драйвер выделил данные, он настроит данные для получения
указание.
NetBufferListFrameType
Определяет значение USHORT, которое является типом кадра полученных пакетов Ethernet.
NetBufferListProtocolId
Определяет значение UCHAR, которое является идентификатором протокола в качестве одного из следующих значений:


  • NDIS_PROTOCOL_ID_DEFAULT
    • Идентификатор драйвера протокола по умолчанию.

  • NDIS_PROTOCOL_ID_TCP_IP
    • Протокол TCP/IP.

  • NDIS_PROTOCOL_ID_IPX
    • Протокол IPX.

  • NDIS_PROTOCOL_ID_NBF
    • Протокол NetBEUI.

NetBufferListHashValue
По пути получения
NetBufferListHashValue определяет значение ULONG, которое является хэш-значением RSS, вычисляемым сетевым адаптером,
Если таковые есть.

На пути передачи
NetBufferListHashValue определяет значение ULONG, которое является хэш-значением RSS, вычисляемым TCP/IP,
Если таковые есть. В этом случае все структуры NET_BUFFER в NET_BUFFER_LIST структуре, отправленной TCP/IP
принадлежат к одному и тому же UDP или TCP-подключению. Таким образом, это хэш-значение применяется ко всем NET_BUFFER
структуры, которые находятся в NET_BUFFER_LIST структуре.

Дополнительные сведения см. в разделе
, указывающее получение RSS
Данные
.
NetBufferListHashInfo
Определяет значение ULONG, которое является хэш-информацией RSS, которая включает хэш-функцию и
хэш-тип. Дополнительные сведения см. в разделе
, указывающее получение RSS
Данные
.
WfpNetBufferListInfo
Зарезервировано для использования платформой фильтрации Windows (МПП). Нет водителей, включая выноску МПП
драйверы могут хранить сведения с помощью этого значения.
IPsecOffloadV2TunnelNetBufferListInfo
Указывает сведения о туннелье IPsecV2, используемые при разгрузке задач IPsec из протокола TCP/IP
в минипорт-драйвер. При указании
IPsecOffloadV2TunnelNetBufferListInfo, NET_BUFFER_LIST_INFO возвращает значение

структура NDIS_IPSEC_OFFLOAD_V2_TUNNEL_NET_BUFFER_LIST_INFO
.
IPsecOffloadV2HeaderNetBufferListInfo
Указывает сведения о заголовке IPsecV2, используемые при разгрузке задач IPsec из протокола TCP/IP
в минипорт-драйвер. При указании IPsecOffloadV2HeaderNetBufferListInfoNET_BUFFER_LIST_INFO возвращается

NDIS_IPSEC_OFFLOAD_V2_HEADER_NET_BUFFER_LIST_INFO
структура.
NetBufferListCorrelationId
Скрытный.
NetBufferListFilteringInfo
Указывает сведения о фильтрации, используемые в интерфейсе очереди виртуальных машин (VMQ), интерфейсе виртуализации одно корневых операций ввода-вывода (SR-IOV) и объединения пакетов NDIS. При указании
NetBufferListFilteringInfo, NET_BUFFER_LIST_INFO возвращает значение

структура NDIS_NET_BUFFER_LIST_FILTERING_INFO
.

Начиная с версии NDIS 6.20, получение признаков, сделанных драйверами минипорта, поддерживающими vmQ, SR-IOV или объединение пакетов, должно включать структуру NDIS_NET_BUFFER_LIST_FILTERING_INFO. Драйверы минипорта должны задать идентификатор очереди VMQ в файле
queueId члена
структура NDIS_NET_BUFFER_LIST_FILTERING_INFO
. Драйвер также задает FilterId член структуры NDIS_NET_BUFFER_LIST_FILTERING_INFO равным нулю.

Примечание начиная с NDIS 6.30, минипорт-драйвер, поддерживающий объединение SR-IOV или пакетов, должен задать для QueueId значение NDIS_DEFAULT_RECEIVE_QUEUE_ID, а элемент filterId равным нулю.

 
MediaSpecificInformationEx
Определяет указатель на выделенный драйвером

NDIS_NBL_MEDIA_SPECIFIC_INFORMATION_EX
структура. Эта структура определяет любой носитель
внеполосные данные, сопровождающие структуры NET_BUFFER, связанные с NET_BUFFER_LIST
структура. Драйверы NDIS 6.20 и более поздних версий должны использовать
структура NDIS_NBL_MEDIA_SPECIFIC_INFORMATION_EX

для указания конкретных сведений о носителе. Любой драйвер в стеке драйверов NDIS может выделять и управлять ими
Сведения, относящиеся к носителям.
NblOriginalInterfaceIfIndex
Скрытный.
NblReAuthWfpFlowContext
Скрытный.
TcpReceiveBytesTransferred
Определяет значение ULONG, которое является числом байтов данных, полученных стеком узлов и
заполнен запрос на получение, который обрабатывается как операция разгрузки химни TCP.
NrtNameResolutionId
Скрытный.
UdpRecvSegCoalesceOffloadInfo
Идентифицирует сведения о отключении отгрузки сегмента UDP(URI). Если указан UdpRecvSegCoalesceOffloadInfo, NET_BUFFER_LIST_INFO возвращает структуру NDIS_UDP_RSC_OFFLOAD_NET_BUFFER_LIST_INFO. Эта структура содержит объединение, которое позволяет драйверам получать доступ к данным в виде одного значения PVOID.
SwitchForwardingReserved
Зарезервировано для NDIS.
SwitchForwardingDetail
Определяет указатель на структуру, выделенную драйвером NDIS_SWITCH_FORWARDING_DETAIL_NET_BUFFER_LIST_INFO. Эта структура указывает сведения о переадресации пакета на один или несколько портов Hyper-V расширяемого коммутатора. Драйвер выделяет эту структуру путем вызова AllocateNetBufferListForwardingContext и освобождает структуру путем вызова FreeNetBufferListForwardingContext.
VirtualSubnetInfo
Определяет указатель на выделенную драйвером структуру NDIS_NET_BUFFER_LIST_VIRTUAL_SUBNET_INFO.
IMReserved
Зарезервировано для NDIS.
TcpRecvSegCoalesceInfo
Определяет сведения о объединениях сегментов (RSC). Если указан TcpRecvSegCoalesceInfo, NET_BUFFER_LIST_INFO возвращает объединение NDIS_RSC_NBL_INFO. Этот союз позволяет драйверам получать доступ к данным в виде одного значения PVOID.
UdpSegmentationOffloadInfo
Определяет сведения, используемые при разгрузке сегментации большого пакета UDP из протокола TCP/IP в мини-адаптер для разгрузки сегментации UDP (USO). Если указан UdpSegmentationOffloadInfo, NET_BUFFER_LIST_INFO возвращает структуру NDIS_UDP_SEGMENTATION_OFFLOAD_NET_BUFFER_LIST_INFO. Эта структура содержит объединение, позволяющее драйверам получать доступ к данным в виде одного значения PVOID или битовых полей.
RscTcpTimestampDelta
Определяет значение ULONG со сведениями о метке времени RSC. Дополнительные сведения см. в документации по NDIS_RSC_NBL_INFO.
TcpSendOffloadsSupplementalNetBufferListInfo
Определяет указатель на структуру, выделенную драйвером, NDIS_TCP_SEND_OFFLOADS_SUPPLEMENTAL_NET_BUFFER_LIST_INFO, содержащую дополнительные сведения вне диапазона для инкапсулированных пакетов.
GftOffloadInformation
Сведения о разгрузке универсальной таблицы потоков (GFT).
GftFlowEntryId
Идентификатор записи потока для GFT.
NetBufferListInfoReserved3
Скрытный.
SwitchForwardingReserved
Зарезервировано для NDIS.
SwitchForwardingDetail_b0_to_b31
Определяет указатель на структуру, выделенную драйвером NDIS_SWITCH_FORWARDING_DETAIL_NET_BUFFER_LIST_INFO. SwitchForwardingDetail_b0_to_b31 и SwitchForwardingDetail_b32_to_b63 используются для 64b данных OOB в режиме 32b. Доступно в NDIS 6.82 и более поздних версиях.
SwitchForwardingDetail_b32_to_b63
См. SwitchForwardingDetail_b0_to_b31.
VirtualSubnetInfo
Определяет указатель на выделенную драйвером структуру NDIS_NET_BUFFER_LIST_VIRTUAL_SUBNET_INFO.
NetBufferListInfoReserved1
Зарезервировано для NDIS.
NetBufferListInfoReserved2
Зарезервировано для NDIS.
MaxNetBufferListInfo
Максимальное значение для этого перечисления. Это значение может измениться в будущих версиях файлов заголовков и двоичных файлов NDIS.

Замечания

Перечисление NDIS_NET_BUFFER_LIST_INFO используется в структуре NET_BUFFER_LIST.

Используйте эти значения перечисления с макросом NET_BUFFER_LIST_INFO, чтобы задать и получить значения в массиве NetBufferListInfo в NET_BUFFER_LIST.

Требования

Требование Ценность
минимальные поддерживаемые клиентские Поддерживается в NDIS 6.0 и более поздних версиях.
заголовка ndis/nblinfo.h (include ndis.h)

См. также

NDIS_IPSEC_OFFLOAD_V1_NET_BUFFER_LIST_INFO NDIS_IPSEC_OFFLOAD_V2_HEADER_NET_BUFFER_LIST_INFO NDIS_IPSEC_OFFLOAD_V2_NET_BUFFER_LIST_INFO NDIS_IPSEC_OFFLOAD_V2_TUNNEL_NET_BUFFER_LIST_INFO NDIS_NBL_MEDIA_SPECIFIC_INFORMATION_EX NDIS_NET_BUFFER_LIST_8021Q_INFO NDIS_NET_BUFFER_LIST_FILTERING_INFO

NDIS_NET_BUFFER_LIST_VIRTUAL_SUBNET_INFO

NDIS_SWITCH_FORWARDING_DETAIL_NET_BUFFER_LIST_INFO

NDIS_TCP_IP_CHECKSUM_NET_BUFFER_LIST_INFO NDIS_TCP_LARGE_SEND_OFFLOAD_NET_BUFFER_LIST_INFO

NET_BUFFER

NET_BUFFER_LIST

NET_BUFFER_LIST_INFO

NdisCancelSendNetBufferLists

NdisGeneratePartialCancelId

NDIS_UDP_RSC_OFFLOAD_NET_BUFFER_LIST_INFO