Поделиться через


Модерация прерываний

Чтобы уменьшить количество прерываний, многие сетевые адаптеры используют модерацию прерываний. При модерации прерываний оборудование сетевой карты не создает прерывание сразу после получения пакета. Вместо этого оборудование ожидает поступления дополнительных пакетов или истечения времени ожидания, прежде чем создавать прерывание. Поставщик оборудования указывает максимальное количество пакетов, интервал времени ожидания или другой алгоритм модерации прерываний.

Измеряемое время кругового пути для пакета является одним из наиболее часто используемых методов определения пропускной способности сети между двумя конечными точками. Однако если включена модерация прерываний, получение пакета не приводит к немедленному прерыванию, поэтому предполагаемое время кругового пути для определенного пакета становится больше среднего. Чтобы обеспечить точное измерение времени кругового пути для пакета, NDIS предоставляет возможность отключить и включить модерацию прерываний по требованию.

Все драйверы NDIS 6.0 и более поздних версий должны поддерживать OID_GEN_INTERRUPT_MODERATION OID. Если драйвер мини-порта не поддерживает модерацию прерываний, драйвер должен указать NdisInterruptModerationNotSupported в элементе InterruptModerationструктуры NDIS_INTERRUPT_MODERATION_PARAMETERS .

Драйверы NDIS 6.0 и более поздних версий должны поддерживать как OID_GEN_INTERRUPT_MODERATION набор OID, так и запросы запросов. Запрос на набор указывает драйверу мини-порта включить или отключить модерацию прерываний, а запрос запроса сообщает о текущем состоянии модерации прерываний.

Драйвер минипорта, поддерживающий модерацию прерываний, должен включать эту возможность по умолчанию, если только стандарт InterruptModeration ключевое слово в реестре не отключает ее. Дополнительные сведения о стандартных ключевых словах см. в разделе Стандартизированные ключевые слова INF для сетевых устройств.