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

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

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

Синтаксис

NDIS_STATUS NdisOffloadTcpReceive(
  [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_LIST и связанные структуры блокируются, чтобы они оставались в физической памяти. Однако они не сопоставляются с системной памятью.

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

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

Комментарии

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

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

  • Функция NdisOffloadHandle , которая ссылается на структуру NDIS_OFFLOAD_HANDLE, хранящуюся в контексте промежуточного драйвера для разгруженного TCP-подключения. Дополнительные сведения см. в разделе Ссылка на состояние разгрузки через промежуточный драйвер.
  • Тот же PNET_BUFFER_LIST указатель, который NDIS передал функции MiniportTcpOffloadReceive промежуточного драйвера.
Когда базовый драйвер или целевой объект разгрузки впоследствии завершает операцию получения путем вызова функции NdisTcpOffloadReceiveComplete , NDIS вызывает функцию ProtocolOffloadReceiveComplete промежуточного драйвера. Затем промежуточный драйвер вызывает функцию NdisTcpOffloadReceiveComplete , чтобы распространить завершение операции пересылки.

Требования

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

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

MiniportTcpOffloadReceive

NDIS_OFFLOAD_HANDLE

NET_BUFFER

NET_BUFFER_LIST

Протокол NdisTcpOffloadReceiveCompleteTcpOffloadReceiveComplete