Модерация прерываний
Чтобы уменьшить количество прерываний, многие сетевые интерфейсные карты (NIC) используют управление прерываниями. При модерации прерываний оборудование сетевой карты не создает прерывание сразу после получения пакета. Вместо этого оборудование ожидает получения дополнительных пакетов или истечения времени ожидания, прежде чем обрабатывать прерывание. Поставщик оборудования указывает максимальное количество пакетов, интервал времени ожидания или другой алгоритм модерации прерываний.
Время прохождения пакета является одной из наиболее часто используемых мер для определения пропускной способности сети между двумя конечными точками. Однако при включении модерации прерываний получение пакета не создает немедленного прерывания, поэтому воспринимаемое время задержки для определенного пакета становится больше среднего времени. Чтобы обеспечить точное измерение времени кругового маршрута для пакета, NDIS предоставляет возможность отключения и включения модерации прерываний по требованию.
Все драйверы минипорта NDIS версии 6.0 и более поздних версий должны поддерживать OID_GEN_INTERRUPT_MODERATION OID. Если минипорт-драйвер не поддерживает модерацию прерываний, драйвер должен указать NdisInterruptModerationNotSupported
в элементе InterruptModeration
структуры NDIS_INTERRUPT_MODERATION_PARAMETERS.
Драйверы минипорта NDIS 6.0 и более поздних версий должны поддерживать и установку OID OID_GEN_INTERRUPT_MODERATION, и запросы OID. Запрос на установку используется минипорт-драйвером для включения или отключения модерации прерываний, а информационный запрос сообщает о текущем состоянии модерации прерываний.
Минипорт-драйвер, поддерживающий модерацию прерываний, должен включить эту возможность по умолчанию, если только ключевое слово InterruptModeration
стандартного значения в реестре не отключает его. Дополнительные сведения о стандартных ключевых словах см. в разделе Стандартные ключевые слова INF для сетевых устройств.