Стандартные ключевые слова INF для RSS
Интерфейс RSS поддерживает стандартизированные ключевые слова INF, которые отображаются в реестре и указаны в INF-файлах.
В следующем списке показаны стандартные ключевые слова INF для RSS:
*RSS
Включение или отключение поддержки RSS для мини-адаптеров.
*RSSProfile
Профиль выбора процессора и балансировки нагрузки.
Примечание. Для изменения параметра *RSSProfile требуется перезапуск адаптера.
Примечание. Если для параметра *RSSProfile задано значение NdisRssProfileBalanced, невозможно настроить дополнительные ключевые слова, такие как *RssBaseProcNumber, *RssBaseProcGroup, *RssMaxProcNumber, *RssMaxProcGroup или *NumaNodeId. Вы можете настроить *MaxRssProcessors и *NumRSSQueues.
NDIS 6.30 добавил поддержку *RSSProfile.
Стандартные ключевые слова INF для перечисления имеют следующие атрибуты:
SubkeyName
Имя ключевого слова, которое необходимо указать в INF-файле и которое отображается в реестре.
ParamDesc
Отображаемый текст, связанный с SubkeyName.
Значение
Целочисленное значение перечисления, связанное с каждым параметром в списке. Это значение хранится в значении NDI\params\ SubkeyName\.
EnumDesc
Отображаемый текст, связанный с каждым значением, отображаемым в меню.
По умолчанию.
Значение по умолчанию для меню.
В следующей таблице описаны возможные записи INF для ключевых слов перечисления RSS.
SubkeyName | ParamDesc | Значение | EnumDesc |
---|---|---|---|
*RSS | Масштабирование на стороне приема | 0 | Выключено |
1 (по умолчанию) | Включен | ||
*RSSProfile | Профиль балансировки нагрузки RSS | 1 | Ближайшееprocessor: поведение по умолчанию соответствует поведению Windows Server 2008 R2. |
2 | БлижайшееprocessorStatic: нет динамической балансировки нагрузки. Распределение, но не балансируйте нагрузку во время выполнения. | ||
3 | NUMAScaling: назначение ЦП RSS на основе циклического перебора на каждом узле NUMA, чтобы приложения, работающие на серверах NUMA, хорошо масштабируются. | ||
4 (по умолчанию) | NUMAScalingStatic: выбор процессора RSS совпадает с масштабируемостью NUMA без динамической балансировки нагрузки. | ||
5 | Консервативное масштабирование: RSS использует как можно меньше процессоров для поддержания нагрузки. Этот параметр помогает уменьшить количество прерываний. | ||
6 (по умолчанию для разнородных систем ЦП) | NdisRssProfileBalanced: выбор процессора RSS основан на рабочей нагрузке трафика. Доступно только в NetAdapterCx, начиная с предварительной версии WDK версии 25197. |
В следующем списке показаны стандартные ключевые слова INF для RSS, которые можно изменить:
*RssBaseProcGroup
Число группы процессоров для номера процессора, указанного в ключевом слове *RssBaseProcNumber .
*NumaNodeId
Предпочтительный узел NUMA, используемый для выделения памяти сетевого адаптера. Кроме того, операционная система пытается использовать ЦП из предпочтительного узла NUMA сначала для RSS.
Драйвер для карточки расширения PCI не должен указывать идентификатор узла NUMA статически в INF, так как ближайший узел зависит от того, в какой слот PCI подключена карта. Укажите *NumaNodeId , если сетевой адаптер интегрирован в систему, узел NUMA известен заранее, и узел не может быть определен во время выполнения путем запроса ACPI.
Примечание. Если это ключевое слово присутствует и его значение меньше числа узлов NUMA на компьютере, NDIS использует это значение в элементе PreferredNumaNode в структуре NDIS_RSS_PROCESSOR_INFO .
Примечание. В Windows 8 значение *NumaNodeId игнорируется, если для профиля RSS сетевого адаптера задано значение NUMAScaling(2) или NUMAScalingStatic(3).
*RssBaseProcNumber
Число базового процессора RSS в указанной группе.
*MaxRssProcessors
Максимальное количество процессоров RSS.
*RssMaxProcNumber
Максимальное число процессоров интерфейса RSS.
Если указан параметр *RssMaxProcNumber , необходимо также указать *RssMaxProcGroup .
*NumRSSQueues
Количество очередей RSS.
*RssMaxProcGroup — максимальная группа процессоров интерфейса RSS.
*RssBaseProcGroup вместе с *RssBaseProcNumber формирует структуру PROCESSOR_NUMBER, которая определяет наименьший номер процессора, который можно использовать с RSS. *RssMaxProcGroup вместе с *RssMaxProcNumber формирует структуру PROCESSOR_NUMBER, которая определяет максимальный номер процессора, который можно использовать с RSS.
Например, предположим , что *RssBaseProcGroup имеет значение 1, *RssBaseProcNumber имеет значение 16, *RssMaxProcGroup имеет значение 3, а *RssMaxProcNumber имеет значение 8.
При использовании <group>:<processor>
нотации базовый процессор равен 1:16, а максимальный процессор — 3:8.
Затем процессоры 0:0, 0:32, 1:0 и 1:15 не будут считаться кандидатами на RSS, так как они ниже базового номера процессора.
Процессоры 1:16, 1:31, 2:0, 2:63, 3:0 и 3:8 будут считаться кандидатами на RSS, потому что они попадают в диапазон 1:16 до 3:8.
Процессоры 3:9, 3:31 и 4:0 не будут считаться кандидатами на RSS, так как они выходят за пределы максимального числа процессора.
NDIS 6.20 добавил поддержку для ключевых слов *RssBaseProcGroup, *NumaNodeId, *RssBaseProcNumber и *MaxRssProcessors .
NDIS 6.30 добавил поддержку ключевых слов *RssMaxProcNumber и *NumRSSQueues .
Стандартные ключевые слова INF, которые можно изменить, имеют следующие атрибуты :
SubkeyName
Имя ключевого слова, которое необходимо указать в INF-файле и которое отображается в реестре.
ParamDesc
Отображаемый текст, связанный с SubkeyName.
Тип
Тип значения, которое можно изменить. Значение может быть числовым (Int) или текстом, которые можно изменить (изменить).
Default value
Значение по умолчанию для целого или текста. <Определяемый> IHV указывает, что значение связано с конкретными требованиями независимого поставщика оборудования (IHV).
Мин.
Минимальное значение, допустимое для целого числа. <Определяемый> IHV указывает, что минимальное значение связано с конкретными требованиями IHV.
Макс.
Максимальное значение, допустимое для целого числа. <Определяемый> IHV указывает, что минимальное значение связано с конкретными требованиями IHV.
В следующей таблице описаны все ключевые слова RSS, которые можно изменить.
SubkeyName | ParamDesc | Тип | Default value | Min | Max |
---|---|---|---|---|---|
*RssBaseProcGroup | Группа базовых процессоров RSS | Int | 0 | 0 | MAXIMUM_GROUPS-1 |
*NumaNodeId | Предпочтительный узел NUMA | Int | 65535 (любой узел) | 0 | Определенный системой — не может превышать 65535 |
*RssBaseProcNumber | Номер базового процессора RSS | Int | 0 | 0 | MAXIMUM_PROC_PER_GROUP-1 |
*MaxRssProcessors | Максимальное количество процессоров RSS | Int | 16 | 1 | MAXIMUM_PROC_PER_SYSTEM |
*RssMaxProcNumber | Максимальный номер процессора RSS | Int | MAXIMUM_PROC_PER_GROUP-1 (по умолчанию) | 0 | MAXIMUM_PROC_PER_GROUP-1 |
*NumRSSQueues | Максимальное количество очередей RSS | Int | 16 | 1 | Устройство, зависяющее от устройства |
*RSSMaxProcGroup | Группа обработчиков RSS Max | Int | 0 | 0 | MAXIMUM_GROUPS-1 |
Примечание. Хотя допустимый диапазон для *RssBaseProcGroup равен нулю до MAXIMUM_GROUPS-1, в Windows 7 он должен быть равен нулю. В противном случае протокол TCP/IP не будет использовать процессоры для RSS.
Примечание. Значение по умолчанию для *NumaNodeId (65535) означает, что сетевой адаптер не зависит от узла NUMA, а NDIS не должен пытаться предпочесть любой узел другому. Если ключевое слово *NumaNodeId отсутствует, NDIS автоматически выбирает ближайший узел на основе подсказок из ACPI.
Примечание. Максимальное значение для *MaxRssProcessors может иметь максимальное количество процессоров , которые может поддерживать сетевой адаптер. NDIS автоматически закроет это значение максимальное количество процессоров в текущей системе.
Дополнительные сведения о стандартных ключевых словах INF см. в разделе "Стандартные INF-ключевые слова" для сетевых устройств.