Функция NdisOffloadTcpForward (ndischimney.h)

[Функция разгрузки tcp chimney является устаревшей и не должна использоваться.]

Драйвер протокола или промежуточный драйвер вызывает функцию NdisOffloadTcpForward для пересылки непризнанных полученных сегментов TCP в базовый драйвер или целевой объект разгрузки.

Синтаксис

NDIS_STATUS NdisOffloadTcpForward(
  [in] IN PNDIS_OFFLOAD_HANDLE NdisOffloadHandle,
  [in] IN PNET_BUFFER_LIST     NetBufferList
);

Параметры

[in] NdisOffloadHandle

Дескриптор структуры NDIS_OFFLOAD_HANDLE в контексте вызывающего объекта для разгруженного TCP-подключения. Дополнительные сведения см. в разделе Ссылка на состояние разгрузки через промежуточный драйвер.

[in] NetBufferList

Указатель на структуру NET_BUFFER_LIST . Эта структура может быть автономной или первой структурой в связанном списке NET_BUFFER_LIST структур. Каждая структура NET_BUFFER_LIST в списке описывает одну NET_BUFFER структуру. Каждая структура NET_BUFFER указывает на цепочку списков дескрипторов памяти (MDL). Многомерные списки, связанные со структурой NET_BUFFER, содержат только один сегмент TCP, который пересылается в целевой объект разгрузки. Первый байт первого MDL является первым байтом заголовка TCP. NET_BUFFER_LIST и связанные структуры блокируются, чтобы они оставались в физической памяти. Однако они не сопоставляются с системной памятью.

Возвращаемое значение

Функция NdisOffloadTcpForward всегда возвращает NDIS_STATUS_PENDING. Операция переадресации всегда выполняется асинхронно.

Комментарии

В ответ на вызов функции MiniportTcpOffloadForward промежуточный драйвер вызывает функцию NdisOffloadTcpForward для распространения операции пересылки на базовый драйвер или целевой объект разгрузки. Дополнительные сведения см. в разделе Распространение операций ввода-вывода.

В функцию NdisOffloadTcpForward промежуточный драйвер передает следующее:

Когда базовый драйвер или целевой объект разгрузки впоследствии завершает операцию переадресации путем вызова функции NdisTcpOffloadForwardComplete , NDIS вызывает функцию ProtocolOffloadForwardComplete промежуточного драйвера. Затем промежуточный драйвер вызывает функцию NdisTcpOffloadForwardComplete , чтобы распространить завершение операции переадресации.

Требования

Требование Значение
Целевая платформа Универсальное
Верхняя часть ndischimney.h (включая Ndischimney.h)
Библиотека Ndis.lib

См. также раздел

MiniportTcpOffloadForward

NDIS_OFFLOAD_HANDLE

NET_BUFFER

NET_BUFFER_LIST

Протокол NdisTcpOffloadForwardCompleteTcpOffloadForwardComplete