структура NDIS_IPSEC_OFFLOAD_V2 (ntddndis.h)
[Функция разгрузки задачи IPsec устарела и не должна использоваться.]
Структура NDIS_IPSEC_OFFLOAD_V2 предоставляет сведения о возможностях разгрузки задач безопасности протокола Интернета (IPsec) версии 2 в структуре NDIS_OFFLOAD.
Синтаксис
typedef struct _NDIS_IPSEC_OFFLOAD_V2 {
ULONG Encapsulation;
BOOLEAN IPv6Supported;
BOOLEAN IPv4Options;
BOOLEAN IPv6NonIPsecExtensionHeaders;
BOOLEAN Ah;
BOOLEAN Esp;
BOOLEAN AhEspCombined;
BOOLEAN Transport;
BOOLEAN Tunnel;
BOOLEAN TransportTunnelCombined;
BOOLEAN LsoSupported;
BOOLEAN ExtendedSequenceNumbers;
ULONG UdpEsp;
ULONG AuthenticationAlgorithms;
ULONG EncryptionAlgorithms;
ULONG SaOffloadCapacity;
} NDIS_IPSEC_OFFLOAD_V2, *PNDIS_IPSEC_OFFLOAD_V2;
Члены
Encapsulation
Типы инкапсуляции MAC, поддерживаемые для разгрузки IPsec. Дополнительные сведения об этом члене см. в следующем разделе "Примечания".
IPv6Supported
Значение BOOLEAN, которое имеет значение TRUE, если поддерживается обработка разгрузки IPsec в трафике IPv6. В противном случае этот элемент false.
IPv4Options
Значение BOOLEAN, которое имеет значение TRUE,, если сетевой адаптер поддерживает разгрузку пакетов IPsec с параметрами IPv4. В противном случае этот элемент false.
IPv6NonIPsecExtensionHeaders
Значение BOOLEAN, которое имеет значение TRUE, если сетевой адаптер поддерживает обработку разгрузки IPsec для пакетов с заголовками расширения IPsec, отличной от IPsec IPv6, помимо заголовков IPsec. В противном случае этот элемент false.
Ah
Значение BOOLEAN, которое имеет значение TRUE, если сетевой адаптер может выполнять операции разгрузки IPsec при отправке и получении пакетов, содержащих полезные данные безопасности заголовка проверки подлинности (AH). В противном случае этот элемент false.
Esp
Значение BOOLEAN, которое имеет значение TRUE, если сетевой адаптер может выполнять операции разгрузки IPsec при отправке и получении пакетов, содержащих полезные данные безопасности (ESP). В противном случае этот элемент false.
AhEspCombined
Значение BOOLEAN, которое имеет значение TRUE,, если сетевой адаптер может выполнять операции разгрузки IPsec при отправке и получении пакетов, содержащих полезные данные AH и полезные данные ESP. В противном случае этот элемент false.
Transport
Значение BOOLEAN, которое имеет значение TRUE,, если сетевой адаптер может обрабатывать полезные данные безопасности для части отправки и получения пакетов в режиме транспорта. (Часть пакета в режиме транспорта относится к сквозном подключению.) В противном случае этот элемент false.
Tunnel
Значение BOOLEAN, заданное для TRUE,, если сетевой адаптер может обрабатывать полезные данные безопасности для части отправки и получения пакетов в режиме туннеля. (Часть пакета в режиме туннеля относится к подключению к туннелю.) В противном случае этот элемент false.
TransportTunnelCombined
Значение BOOLEAN, заданное для TRUE,, если сетевой адаптер может обрабатывать полезные данные безопасности как для части транспортного режима, так и для части режима туннеля отправки и получения пакетов. В противном случае этот элемент false. Часть транспортного режима пакета относится к сквозном подключению. Часть пакета в режиме туннеля относится к подключению к туннелю.
LsoSupported
Значение BOOLEAN, которое имеет значение TRUE, если сетевой адаптер поддерживает большую разгрузку отправки (LSO). В противном случае этот элемент false. Обратите внимание, что возможности LSO сетевого адаптера указываются в LsoV1 или LsoV2 членов структуры NDIS_OFFLOAD. Флаг LsoSupported указывает, что возможности, указанные в этих элементах, также допустимы, если подключение безопасно с помощью IPsec.
ExtendedSequenceNumbers
Значение BOOLEAN, задающее значение TRUE, если сетевой адаптер поддерживает расширенные порядковые номера IPsec. В противном случае этот элемент false.
UdpEsp
Типы пакетов данных UDP, инкапсулированных ESP, которые сетевой адаптер может анализировать. Описание типов инкапсуляции UDP см. в UDP-ESP типах инкапсуляции. Этот элемент может быть одним или несколькими из следующих флагов:
IPSEC_OFFLOAD_V2_UDP_ESP_ENCAPSULATION_NONE
Обработка разгрузки IPsec недоступна для любого типа инкапсуляции UDP.
IPSEC_OFFLOAD_V2_UDP_ESP_ENCAPSULATION_TRANSPORT
Разгрузка IPsec поддерживается для инкапсулированного пакета режима транспорта ESP, который инкапсулируется UDP.
IPSEC_OFFLOAD_V2_UDP_ESP_ENCAPSULATION_TUNNEL
Разгрузка IPsec поддерживается для части пакета, инкапсулированного в режиме туннеля. Часть пакета в режиме транспорта не инкапсулирована инкапсулирована и не защищается ОТ ESP.
IPSEC_OFFLOAD_V2_TRANSPORT_OVER_UDP_ESP_ENCAPSULATION_TUNNEL
Разгрузка IPsec поддерживается для части пакета, инкапсулированного в режиме туннеля. Часть транспортного режима пакета не является инкапсулированной, но защищенной ESP.
IPSEC_OFFLOAD_V2_UDP_ESP_ENCAPSULATION_TRANSPORT_OVER_TUNNEL
Разгрузка IPsec поддерживается для части пакета в режиме туннеля, который не является инкапсулированным. Часть транспортного режима пакета инкапсулируется инкапсулируется и защищает ESP.
AuthenticationAlgorithms
Битовая маска, определяющая алгоритмы проверки подлинности IPsec, поддерживаемые сетевой картой. Драйверы минипорта указывают битовую или из следующих значений:
IPSEC_OFFLOAD_V2_AUTHENTICATION_MD5
Сетевой адаптер может использовать алгоритм дайджеста с ключами 5 (MD5) для вычислений или проверки криптографической контрольной суммы.
IPSEC_OFFLOAD_V2_AUTHENTICATION_SHA_1
Сетевой адаптер может использовать безопасный алгоритм хэширования (SHA) 1 для вычислений или проверки криптографической контрольной суммы.
IPSEC_OFFLOAD_V2_AUTHENTICATION_SHA_256
Сетевой адаптер может использовать алгоритм SHA 256 для вычисления или проверки криптографической контрольной суммы.
IPSEC_OFFLOAD_V2_AUTHENTICATION_AES_GCM_128
Сетевой адаптер может использовать алгоритм Расширенного шифрования ( Galois/Counter Mode (AES-GMAC) 128 для вычислений или проверки криптографической контрольной суммы.
IPSEC_OFFLOAD_V2_AUTHENTICATION_AES_GCM_192
Сетевой адаптер может использовать алгоритм AES-GMAC 192 для вычисления или проверки криптографической контрольной суммы.
IPSEC_OFFLOAD_V2_AUTHENTICATION_AES_GCM_256
Сетевой адаптер может использовать алгоритм AES-GMAC 256 для вычисления или проверки криптографической контрольной суммы.
EncryptionAlgorithms
Битовая маска, определяющая алгоритмы шифрования IPsec, поддерживаемые сетевой картой. Эта битовая маска представляет собой битовую или из следующих значений:
IPSEC_OFFLOAD_V2_ENCRYPTION_NONE
Сетевой адаптер может использовать шифрование NULL, т. е. полезные данные ESP без шифрования, но с информацией о проверке подлинности.
IPSEC_OFFLOAD_V2_ENCRYPTION_DES_CBC
Сетевой адаптер может использовать алгоритм DES для шифрования и расшифровки полезных данных ESP.
IPSEC_OFFLOAD_V2_ENCRYPTION_3_DES_CBC
Сетевой адаптер может использовать алгоритм triple-DES для шифрования и расшифровки полезных данных ESP.
IPSEC_OFFLOAD_V2_ENCRYPTION_AES_GCM_128
Сетевой адаптер может использовать алгоритм AES-GCM 128 для шифрования и вычисления криптографической контрольной суммы или расшифровки и проверки криптографической контрольной суммы для полезных данных ESP. Обратите внимание, что этот алгоритм является алгоритмом объединенного режима.
IPSEC_OFFLOAD_V2_ENCRYPTION_AES_GCM_192
Сетевой адаптер может использовать алгоритм AES-GCM 192 для шифрования и вычисления криптографической контрольной суммы или расшифровки и проверки криптографической контрольной суммы для полезных данных ESP. Обратите внимание, что этот алгоритм является алгоритмом объединенного режима.
IPSEC_OFFLOAD_V2_ENCRYPTION_AES_GCM_256
Сетевой адаптер может использовать алгоритм AES-GCM 256 для шифрования и вычисления криптографической контрольной суммы или расшифровки и проверки криптографической контрольной суммы для полезных данных ESP. Обратите внимание, что этот алгоритм является алгоритмом объединенного режима.
IPSEC_OFFLOAD_V2_ENCRYPTION_AES_CBC_128
Сетевой адаптер может использовать режим цепочки цепочки шифров (AES-CBC) 128 для шифрования и расшифровки полезных данных ESP.
IPSEC_OFFLOAD_V2_ENCRYPTION_AES_CBC_192
Сетевой адаптер может использовать алгоритм AES-CBC 192 для шифрования и расшифровки полезных данных ESP.
IPSEC_OFFLOAD_V2_ENCRYPTION_AES_CBC_256
Сетевой адаптер может использовать алгоритм AES-CBC 256 для шифрования и расшифровки полезных данных ESP.
SaOffloadCapacity
Количество пакетов SA, которые могут включать ESP или AH или оба, которые можно выгрузить в сетевой адаптер. TCP/IP поддерживает количество выгруженных пакетов SA и не должно добавлять больше максимального количества пакетов SA, сообщаемых мини-драйвером.
Замечания
В NDIS 6.1 и более поздних версиях структура NDIS_IPSEC_OFFLOAD_V2 используется в элементе IPsecV2 структуры NDIS_OFFLOAD. Структура NDIS_IPSEC_OFFLOAD_V2 указывает текущие или поддерживаемые возможности, которые адаптер минипорта предоставляет для обработки разгрузки IPsec.
Для OID_TCP_OFFLOAD_CURRENT_CONFIGструктура NDIS_OFFLOAD указывает возможности разгрузки задачи, поддерживаемые мини-адаптером. Если текущие возможности разгрузки изменяются, драйвер минипорта сообщает о новых возможностях в NDIS_STATUS_TASK_OFFLOAD_CURRENT_CONFIG указание состояния.
Элемент инкапсуляции члена NDIS_IPSEC_OFFLOAD_V2 определяет инкапсулы MAC, которые мини-адаптер поддерживает для разгрузки IPsec.
В ответ на OID_TCP_OFFLOAD_CURRENT_CONFIG запросе NDIS предоставляет побитовую ИЛИ флаги инкапсуляции, указывающие поддерживаемые параметры инкапсуляции в элементе инкапсуляции. Драйверы минипорта должны предоставлять инкапсуляцию Ethernet (NDIS_ENCAPSULATION_IEEE_802_3). Другие типы инкапсуляции являются необязательными.
Для NDIS_STATUS_TASK_OFFLOAD_CURRENT_CONFIG указание состояния, минипорт-драйвер предоставляет побитовую ИЛИ флаги инкапсуляции, указывающие текущие возможности в элементе инкапсуляции.
Для элемента инкапсуляции определены следующие флаги:
Требования
Требование | Ценность |
---|---|
минимальные поддерживаемые клиентские | Поддерживается в NDIS 6.1 и более поздних версиях. |
заголовка | ntddndis.h (include Ndis.h) |