Общие сведения о драйверах мини-порта с поддержкой разгрузки
Чтобы повысить производительность, транспорт Microsoft TCP/IP может выгрузить задачи или подключения к сетевому интерфейсу карта (сетевой адаптер), который имеет соответствующие возможности tcp/IP-разгрузки. Разгрузка задач сетевого обмена данными TCP/IP выполняется в оборудовании сетевого адаптера. Драйверы минипорта объявляют различные возможности разгрузки оборудования сетевого адаптера в операционную систему и настраивают оборудование сетевого адаптера. Оборудование сетевого адаптера выполняет объявленные задачи разгрузки для исходящих и входящих пакетов в обработчиках отправки и получения. Оборудование выполняет такие операции, как вычисление заголовка IP-адресов проверка sum и т. д.
Чтобы обеспечить безопасную среду, минипорт-драйвер должен объявлять только те возможности разгрузки, которые оборудование сетевого адаптера может предоставлять, и никакие другие. Минипорт-драйвер должен настроить оборудование для разгрузки объявленных задач на пакеты, соответствующие объявленным критериям. В пути отправки операционная система не требует, чтобы драйвер выгрузил задачу, которую драйвер минипорта не объявлял. На пути получения минипорт-драйвер и сетевой адаптер не должны выполнять какие-либо задачи, не включенные в возможности аппаратного адаптера сетевого адаптера, объявленного драйвером минипорта.
Если мини-драйвер или сетевой адаптер не может выполнить задачу разгрузки в полученном пакете, минипорт-драйвер должен указать такой пакет в стеке драйверов без каких-либо действий. В этом случае драйверы чрезмерного размера обрабатывают пакет как обычный пакет.
Минипорт-драйвер никогда не должен объявлять возможности, которые оборудование сетевого адаптера не поддерживает. Минипорт-драйвер никогда не должен использовать обработчики отправки или получения для выполнения программных эмуляции операций разгрузки, которые оборудование не может предоставить. Если мини-драйвер предоставляет такую эмуляцию программного обеспечения, драйвер должен проверить данные пакета в программном обеспечении. Если драйвер проверяет данные пакета в программном обеспечении, компьютер может быть подвержен атакам безопасности.
В следующих разделах содержатся дополнительные сведения о атаках безопасности и о том, как избежать проблем безопасности в драйверах NDIS:
Уязвимость к атакам безопасности в драйверах NDIS
Снижение производительности и атаки типа "Отказ в обслуживании" в драйверах NDIS