Управление связями безопасности в разгрузке IPsec версии 2
[Функция разгрузки задач IPsec является устаревшей и не должна использоваться.]
После того как транспорт TCP/IP определит, что сетевой адаптер может выполнять операции разгрузки IPsec версии 2 (IPsecOV2) (см. статью Отчеты о возможностях разгрузки IPsec 2 сетевого адаптера), транспорт запрашивает, чтобы драйвер мини-порта сетевой карты добавил одну или несколько сопоставлений безопасности (SAS) в сетевой адаптер, прежде чем транспорт сможет разгрузить задачи IPsec на сетевой адаптер. После добавления SAs транспорт TCP/IP также может удалить или обновить их. Интерфейс IPsecOV2 требует прямого интерфейса NDIS OID для добавления, удаления и обновления OID.
Примечание NDIS предоставляет прямой интерфейс запроса OID для драйверов NDIS 6.1 и более поздних версий. Прямой путь запроса OID поддерживает запросы OID, которые часто запрашиваются или задаются.
Чтобы запросить добавление драйвера мини-порта одного или нескольких SAS в сетевой адаптер, транспорт TCP/IP задает OID_TCP_TASK_IPSEC_OFFLOAD_V2_ADD_SA OID. Драйвер мини-порта получает структуру IPSEC_OFFLOAD_V2_ADD_SA и настраивает сетевой адаптер для обработки IPsecOV2 в SA. При успешном OID_TCP_TASK_IPSEC_OFFLOAD_V2_ADD_SA драйвер мини-порта инициализирует дескриптор, определяющий разгрузку sa в структуре IPSEC_OFFLOAD_V2_ADD_SA. Транспорт использует этот дескриптор в последующих запросах к драйверу мини-порта (т. е. в пути отправки или в вызовах для изменения или удаления sa). Дополнительные сведения об использовании дескриптора SA в пути отправки см. в разделе Отправка сетевых данных с разгрузкой IPsec версии 2.
Драйвер мини-порта сообщает количество SAS, которые может поддерживать сетевой адаптер в элементе SaOffloadCapacityструктуры NDIS_IPSEC_OFFLOAD_V2 .
Драйвер мини-порта может установить флаг SaDeleteReq в структуре NDIS_IPSEC_OFFLOAD_V2_NET_BUFFER_LIST_INFO для пакета получения. Затем транспорт TCP/IP выдает OID_TCP_TASK_IPSEC_OFFLOAD_V2_DELETE_SA один раз для удаления входящего sa, который был получен пакетом, и еще раз для удаления исходящего sa, соответствующего удаленному входящие sa.
Проблемы с транспортировкой TCP/IP OID_TCP_TASK_IPSEC_OFFLOAD_V2_DELETE_SA для удаления входящих SAS, по которым был получен пакет, и удаления исходящих SAS, соответствующих удаленным входящим SAs. Сетевой адаптер не должен удалять эти SAS до получения соответствующего запроса OID_TCP_TASK_IPSEC_OFFLOAD_V2_DELETE_SA.
Транспорт TCP/IP задает OID_TCP_TASK_IPSEC_OFFLOAD_V2_UPDATE_SA OID, чтобы запросить обновление драйвера мини-порта сетевой карты с битами более высокого порядка для SA с расширенными порядковые номера (ESN). Для сетевых адаптеров, поддерживающих ESN, когда драйвер мини-порта получает этот запрос, драйвер должен обновить порядковый номер указанного sa в сетевом адаптере в соответствии со значением перечисления IPSEC_OFFLOAD_V2_OPERATION , указанным в элементе Operation структуры IPSEC_OFFLOAD_V2_UPDATE_SA .