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


перечисление 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.
в драйвер мини-порта. When
Указан параметр TcpIpChecksumNetBufferListInfo, макрос NET_BUFFER_LIST_INFO возвращает

структура NDIS_TCP_IP_CHECKSUM_NET_BUFFER_LIST_INFO. Эта структура содержит объединение, которое позволяет
сведения о контрольной сумме для доступа к одному значению PVOID или в виде битовых полей.
TcpOffloadBytesTransferred
Определяет значение ULONG , представляющее количество байтов данных, переданных в трубе TCP.
разгрузка операции отправки, получения или отключения.
IPsecOffloadV1NetBufferListInfo
Определяет сведения о безопасности протокола IPsec, используемые при разгрузке задач IPsec.
из протокола TCP/IP в драйвер мини-порта. When
Указан параметр 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). When
Указан параметр 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 или
Член LsoV2TransmitComplete для LSOV2. Для LSOV1 — значение, которое записывает драйвер мини-порта.
содержит общее количество байтов полезных данных TCP, отправленных драйвером мини-порта в пакетах, которые он отправил.
сегментировано из большого TCP-пакета.
TcpReceiveNoPush
Определяет логическое значение, представляющее режим отправки запроса получения разгрузки tcp chimney.
Если задано значение TRUE, запрос на получение находится в режиме без отправки. В противном случае запрос на получение находится в режиме принудительной отправки.
ClassificationHandleNetBufferListInfo
Зарезервировано.
Ieee8021QNetBufferListInfo
Определяет сведения 802.1Q о пакете. When
Указан ieee8021QNetBufferListInfo,
NET_BUFFER_LIST_INFO возвращает
Элемент value объекта

структура NDIS_NET_BUFFER_LIST_8021Q_INFO. В этой структуре можно указать приоритет 802.1p и виртуальную локальную сеть.
сведения об идентификаторе. Сведения о приоритете 802.1p используются для определения приоритета пакетов в общем носителе
802 сети. Драйверы miniport, поддерживающие тег 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 значение 0.

Примечание Начиная с версии NDIS 6.30 драйвер miniport, поддерживающий 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-получения (URO). Если указан параметр 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 используются для размещения данных OOB размером 64b в режиме 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 (включая 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_LARGE_SEND_OFFLOAD_NET_BUFFER_LIST_INFO NDIS_TCP_IP_CHECKSUM_NET_BUFFER_LIST_INFO

NET_BUFFER

NET_BUFFER_LIST

NET_BUFFER_LIST_INFO

NdisCancelSendNetBufferLists

NdisGeneratePartialCancelId

NDIS_UDP_RSC_OFFLOAD_NET_BUFFER_LIST_INFO