структура NDIS_RECEIVE_HASH_PARAMETERS (ntddndis.h)
Структура NDIS_RECEIVE_HASH_PARAMETERS задает хэш-параметры получения для мини-адаптера, поддерживающего вычисления хэша.
Синтаксис
typedef struct _NDIS_RECEIVE_HASH_PARAMETERS {
NDIS_OBJECT_HEADER Header;
ULONG Flags;
ULONG HashInformation;
USHORT HashSecretKeySize;
ULONG HashSecretKeyOffset;
} NDIS_RECEIVE_HASH_PARAMETERS, *PNDIS_RECEIVE_HASH_PARAMETERS;
Члены
Header
Структура NDIS_OBJECT_HEADER для структуры NDIS_RECEIVE_HASH_PARAMETERS. Задайте элемент типа структуры, заголовка, указывает NDIS_OBJECT_TYPE_DEFAULT, элемент редакции NDIS_RECEIVE_HASH_PARAMETERS_REVISION_1 и NDIS_SIZEOF_RECEIVE_HASH_PARAMETERS_REVISION_1 размер.
Flags
Значение USHORT, указывающее, что должен делать драйвер минипорта с хэш-параметрами. Минипорт-драйвер может использовать эти флаги, чтобы быстро определить, какие параметры изменились и обновляют хэш-параметры соответствующим образом.
В запросе набора флаги определяются следующим образом:
NDIS_RECEIVE_HASH_FLAG_ENABLE_HASH
Если этот флаг задан, включите вычисление хэш-значений на полученных кадрах и поместите вычисляемое хэш-значение в NetBufferListHashValue сведения ОOB в структуре NET_BUFFER_LIST.
Если этот флаг неактивен, отключите вычисление хэш-значений на полученных кадрах.
Если включен хэш-расчет получения, драйвер минипорта должен задать этот флаг; в противном случае этот флаг должен быть снят.
NDIS_RECEIVE_HASH_FLAG_HASH_INFO_UNCHANGED
Элемент HashInformation не изменился. Хэш-сведения включают хэш-типы и хэш-функцию.
Если этот флаг задан, следует игнорировать элемент HashInformation структуры NDIS_RECEIVE_HASH_PARAMETERS.
Если этот флаг снят, член HashInformation содержит новое значение, которое драйвер минипорта должен использовать для вычисления хэш-значений на полученных кадрах.
NDIS_RECEIVE_HASH_FLAG_HASH_KEY_UNCHANGED
Секретный ключ и связанные элементы данных не изменились.
Если этот флаг задан, следует игнорировать секретный ключ и связанные члены данных.
Если этот флаг снят, секретный ключ или связанные члены данных изменились, а драйвер минипорта должен использовать новые сведения.
В запросе флаги определяются следующим образом:
HashInformation
В запросе набора хэш-тип и хэш-функция, которую сетевой адаптер должен использовать для вычисления хэш-значений входящих пакетов.
В запросе хэш-тип и хэш-функция, которую использует сетевой адаптер.
Чрезмерное использование драйверов и NDIS NDIS_RSS_HASH_INFO_FROM_TYPE_AND_FUNC макрос для объединения хэш-типа и хэш-функции в хэш-сведения и задания элемента HashInformation.
Мини-порты могут использовать драйверы мини-порта макрос NDIS_RSS_HASH_TYPE_FROM_HASH_INFO, чтобы получить хэш-тип из HashInformation и NDIS_RSS_HASH_FUNC_FROM_HASH_INFO макрос для получения хэш-функции.
HashSecretKeySize
Размер массива секретных ключей функции хэша в байтах. Размер массива составляет 40 байт для NdisHashFunctionToeplitz.
HashSecretKeyOffset
Смещение массива ключей секрета хэш-функции с начала структуры NDIS_RECEIVE_HASH_PARAMETERS. Используйте это смещение, чтобы получить 320-разрядный (40 байт) секретный ключ.
В запросе набора секретный ключ может содержать любые данные, которые выбирает слишком большой драйвер.
В запросе секретный ключ содержит данные, которые использует сетевой адаптер.
Замечания
Структура NDIS_RECEIVE_HASH_PARAMETERS определяет хэш-параметры для OID_GEN_RECEIVE_HASH OID.
Требования
Требование | Ценность |
---|---|
минимальные поддерживаемые клиентские | Поддерживается в NDIS 6.0 и более поздних версиях. |
заголовка | ntddndis.h (include Ndis.h) |