Предварительные требования для тестирования локальной сети
В этом разделе описаны предварительные требования для тестирования локальной сети (Ethernet), которые необходимо выполнить перед тестированием сетевого адаптера с помощью комплекта Windows Hardware Lab Kit (Windows HLK).
Примечание
Это содержимое относится как к автономным сетевым адаптерам, так и к интегрированным сетевым устройствам.
Условия документа
Роль устройства | Псевдоним интерфейса |
---|---|
Тестовый компьютер, целевой объект тестирования (DUT) |
Имя не требуется, задания HLK будут автоматически выбирать его |
Тестовый компьютер, устройство сообщений |
MessageDevice |
Компьютер поддержки, устройство поддержки |
SupportDevice0 |
Компьютер поддержки, устройство сообщений |
MessageDevice |
Драйвер LWF |
Драйвер легковесового фильтра NDIS |
Топология компьютера
На следующей схеме показана рекомендуемая топология компьютера. Топологии, которые отличаются от этого, настоятельно не рекомендуется, так как они могут потребовать дополнительных усилий для правильной работы тестов.
Это топология, которая применяется ко всем устройствам локальной сети (включая устройства, поддерживающие QoS и Chimney).
Топология компьютера для тестов сетевого адаптера
Недавно разработанные тесты HLK с префиксом "[Сетевой адаптер]" или "[имя теста]" в заголовке являются тестами на одном компьютере и требуют 3 сетевых адаптера на этом компьютере. Имена псевдонимов интерфейса:
- TestDevice: это тестируемое сетевое устройство.
- SupportDevice0: требуется дополнительная поддержка сетевых карта, подключенных к сети с помощью TestDevice.
- MessageDevice: используется для взаимодействия с контроллером HLK.
На следующей схеме показана рекомендуемая топология:
Тестирование подключений
Подключение "спина к спине" является предпочтительным в целом, так как оно исключает возможность того, что переключение не помешает тесту (неправильные настройки виртуальной локальной сети, пакеты управления потоком и т. д.)
Подключение "спина к спине" требуется для тестов, которые сетевой коммутатор может помешать результату. К таким тестам относятся:
QoS (aka. DCB) (управление потоком приоритета, взаимодействие LLDP/DCBX, ETS (так как некоторые коммутаторы могут удалять теги 802.1p)
Управление потоком Tx
Тесты, которые отправляют 802.1q с тегами (VlanSendRecv, VMQ, 1c_priority, может быть, другие);
Backchannel/корпоративная сеть
Рекомендуется, чтобы коммутатор обратного канала был той же сетью, которую тестовые компьютеры будут использовать для взаимодействия с контроллером HLK. Рекомендуется включить dhcp для этой сети.
Требования к компьютеру
Требования к компьютеру часто определяются функциями, поддерживаемыми целевым объектом тестирования. Для сертификации по номерам SKU клиента потребуется 2 ядра обработки, а для сертификации на серверных SKU — 4 ядра обработки.
Примечание
Термин ядра относится к ядрам физической обработки (а не к виртуальным ядрам или ядрам с гиперпотоками). Если устройство поддерживает расширенные функции, такие как приведенные ниже, минимальные требования к системе могут быть увеличены.
Пробуждение по локальной сети: система должна поддерживать управление питанием (S3)
RSS: не более 4 физических ядер или число очередей RSS по умолчанию, поддерживаемых устройством.
Пример: если сетевой адаптер 1G поддерживает 2 очереди, количество необходимых ядер будет равно 4
Пример: если сетевой адаптер 10G поддерживает 8 очередей, количество необходимых ядер будет равно 8.
Сервер или QoS: системы должны быть способны насыщать 90 % от максимальной скорости канала
QoS: целевой объект хранилища записывает 20 % от максимальной скорости канала
Примечание
Если проблемы с потерей пакетов отправки и получения возникают часто и на протяжении всего теста, скорее всего, это проблема выборочной приостановки.
Примечание
Чтобы сертифицировать продукт для использования на серверах, тестовый компьютер должен поддерживать четыре процессора и не менее 1 ГБ ОЗУ. Эти возможности системы необходимы для тестирования функций перебалансирования, состояния D3 и группы нескольких процессоров устройства и драйвера. Для тестирования устройства не требуется компьютер с более чем 64 процессорами. Кроме того, серверные системы, используемые для тестирования устройств или драйверов, должны быть установлены server Core перед тестированием. Дополнительные сведения см. в разделе Параметры установки Windows Server.
Если для тестирования устройств используется пул тестовых компьютеров, по крайней мере один компьютер в пуле должен содержать четыре процессора и не менее 1 ГБ ОЗУ. Кроме того, этот компьютер должен содержать устройство и драйвер, который требуется протестировать. Если драйвер одинаковый на всех компьютерах в пуле, система создает расписание для выполнения на всех тестовых компьютерах.
Для тестов, которые не включают драйвер для тестирования, например тесты жестких дисков, планировщик Windows HLK ограничивает тесты, которые проверяют перебалансацию устройства и драйвера, состояние D3 и функциональные возможности нескольких групп процессоров, выполняемые на тестовом компьютере по умолчанию. Необходимо вручную настроить на этом компьютере несколько групп процессоров. Компьютер по умолчанию — это первый тестовый компьютер в списке. Тестовый персонал должен убедиться, что первый тестовый компьютер в списке соответствует минимальным требованиям к оборудованию.
Примечание
За исключением драйверов пара-виртуализации (как определено в документе политики и процессы WHCP ), вы не можете использовать какую-либо форму виртуализации при тестировании физических устройств и связанных с ними драйверов для сертификации сервера или подписи. Все продукты виртуализации не поддерживают базовые функциональные возможности, необходимые для прохождения тестов, связанных с несколькими группами процессоров, управлением питанием устройств, функциями PCI устройства и другими тестами.
Примечание
Параметр Несколько групп процессоров. Для сертификации необходимо задать значение размера группы процессоров для тестирования аппаратного лабораторного комплекта драйверов устройств Windows Server 2008 R2 и более поздних версий. Это делается путем запуска bcdedit в окне командной строки с повышенными привилегиями с помощью параметра /set.
Ниже приведены команды для добавления параметров группы и перезапуска.
bcdedit.exe /set groupsize 2
bcdedit.exe /set groupaware on
shutdown.exe -r -t 0 -f
Ниже приведены команды для удаления параметров группы и перезагрузки.
bcdedit.exe /deletevalue groupsize
bcdedit.exe /deletevalue groupaware
shutdown.exe -r -t 0 -f
Примечание
Параметр целостности кода
Сначала необходимо включить функцию безопасности на основе виртуализации (VBS) Windows Server 2016 с помощью диспетчер сервера.
После этого необходимо создать и задать следующий раздел реестра:
HKLM\System\CurrentControlSet\Control\DeviceGuard
HypervisorEnforcedCodeIntegrity:REG_DWORD
0 or 1 (disabled, enabled)
Конфигурация компьютера
Для некоторых тестов требуется уникальная конфигурация, которая не поддерживается или не может автоматически выполняться тестовых заданий. В приведенном ниже списке показано, какие тесты требуют уникальных конфигураций.
QosStorageInterop
Целевой объект тестирования на компьютере DUT должен иметь подключение к сетевому хранилищу с помощью iSCSI или SMB. Топология тестового компьютера такова, что тестовая сеть находится в обратном режиме, что означает, что компьютер поддержки также должен служить целевым объектом хранилища. Это означает, что в SUT необходимо настроить целевой объект iSCSI для программного обеспечения или общий ресурс SMB. Компьютер DUT должен сопоставить целевой объект хранилища с буквой диска, а пользователь должен убедиться, что это подключение проходит по тестовой сети, а не по сети обратного канала. После настройки необходимо ввести два дополнительных параметра для этого задания по расписанию:
Буква диска
Режим хранения (iSCSI или ND (сетевая прямая сеть))
Выборочная приостановка
Функция выборочной приостановки NDIS может негативно повлиять на результаты тестирования. Многие тесты сертификации сети предполагают, что устройство находится в состоянии "включено" и готово к использованию. Таким образом, многие тесты могут быстро отправлять или получать трафик и ожидать, что все пакеты будут отправлены или получены соответствующим образом. Если устройство находится в низком энергопотреблении (выборочная приостановка), его возобновление может занять некоторое время, что может привести к потере пакетов в течение периода возобновления.
Корпорация Майкрософт рекомендует настроить параметр *SelectiveSuspend как отключенный (для драйверов NDIS) или параметр *IdleRestriction для включения (для драйверов NetAdapterCx 2.2+), если выполняются следующие условия (примечание. Не изменяйте значение по умолчанию, а только рабочее значение при выполнении сертификационных тестов):
У клиента есть устройство с поддержкой выборочной приостановки
Тесты отправки и получения испытывают проблемы с потерей пакетов
Проблемы с потерей тестового пакета отправки и получения относятся только к первому варианту данного теста.
Кроме того, можно снять флажок "Разрешить компьютеру выключать это устройство для экономии электроэнергии" на вкладке диспетчер устройств свойств мини-порта Управление питанием.
Тесты QOS HW
Тесты "QoS* HW" требуют, чтобы SR-IOV был активен с доступными виртуальными портами VF. На некотором оборудовании необходимо установить Hyper-V для сетевого адаптера, чтобы включить SR-IOV и объявить о доступности VF vPort. Поэтому перед выполнением тестов QoS HW рекомендуется установить Hyper-V.
Обзор изменений в выборе сетевых устройств
Для тестирования устройств локальной сети адаптеры сообщений и поддержки больше не выбираются с помощью пользовательского интерфейса— они автоматически обнаруживаются на основе топологии сети. Если автоматическое обнаружение завершается сбоем, так как топология сети отличается от рекомендуемой топологии, устройства должны быть переименованы на тестовых компьютерах и поддерживать их перед выполнением тестов. Переименование относится к "ifAlias" устройства, которое отображается в окне Сетевые подключения среди других мест.
Если требуется переименование, устройство поддержки на компьютере поддержки должно быть переименовано в SupportDevice0. Устройства сообщений на тестовых и вспомогательных компьютерах должны быть переименованы в MessageDevice.
Критерии автоматического выбора устройств
Тестовые и вспомогательные компьютеры должны быть настроены в той же конфигурации, что и на рис. 4, а все остальные устройства и порты Ethernet, не участвующие в тестировании, должны быть отключены или отключены. Тестовые задания используют следующие критерии для поиска устройства с сообщением: устройство Ethernet, подключение по каналу, включение, привязка TCP, IP-адрес, назначенный с помощью DHCP. Обнаружение будет включать адаптеры со статическими IP-адресами, если не найдены адаптеры с назначенными DHCP-адресами. Адаптер сообщений обычно подключается к контроллеру HLK и обычной корпоративной сети. После того как устройство сообщения будет найдено, задание выполняет поиск у оставшихся адаптеров устройства поддержки, которое является устройством Ethernet, подключенным к каналу и включенным.
Выполнение тестов локальной сети в HLK
Сведения о настройке контроллера и клиентских компьютеров см. в справке по HLK. В этом документе рассматривается только выполнение содержимого локальной сети в HLK.
После настройки контроллера и клиентских компьютеров выполните следующие действия для запуска тестов локальной сети.
Создайте проект в HLK Studio.
Создайте новый пул компьютеров и добавьте клиентские компьютеры, которые были настроены в только что созданный пул, и пометьте состояние компьютера как готовое.
Убедитесь, что тестовый компьютер и компьютер поддержки подключены, как описано в разделе Критерии выбора устройств выше.
Выберите только устройство или драйвер для тестирования (например , диспетчер устройств или устройство программного обеспечения) на вкладке Выбор студии HLK.
Выберите задания, которые отображаются в списке на вкладке Тесты студии HLK.
Щелкните Выполнить выбрано, выберите компьютер службы поддержки для тестового запуска и нажмите кнопку ОК.
Выполнение тестов логотипа фильтра
Выполните следующие действия, чтобы запустить тесты логотипов упрощенного фильтра (LWF):
Настройка и настройка сервера DTM и компьютеров клиента DTM. Для проверки логотипа фильтра требуется только один клиентский компьютер.
Установите драйвер LWF на клиентском компьютере.
Перезапустите клиентский компьютер.
На сервере DTM добавьте клиент, на котором установлен LWF, в новый пул компьютеров и измените состояние компьютера на "Готово".
В HLK Studio создайте проект на вкладке "Проект" в HLK Studio.
На вкладке "Выбор" студии HLK выберите пул компьютеров, созданный на предыдущих шагах из раскрывающегося списка.
Щелкните программное устройство и выберите установленный драйвер LWF, который вы хотите протестировать.
Запустите все тесты (NDISTest 6.5 — LWF Logo Test проверяет все требования LWF), перечисленные на вкладке Тесты , для драйвера LWF.
NDISTest 6.5 — тест логотипа LWF
Этот тест предназначен для LWF, гарантируя, что фильтр может обрабатывать пакеты, размер которых превышает размер MTU мини-порта.
При этом также выполняется нагрузочный тест фильтра, чтобы подчеркнуть путь к данным и пути PNP драйверов фильтров NDIS. Тест ограничит дескрипторы приема виртуальных минипортов, чтобы с флагом ресурсов получения произошло значительное количество указаний на получение. Затем тест будет выполнять следующие действия в многопотоковом режиме:
Нагрузочный трафик из минипорта поддержки направляется в тестовый минипорт.
Напряженный трафик из тестового минипорта, направленный на мини-порт поддержки
Остановите или запустите тестовый минипорт (который активирует приостановку и последующие операции перезапуска).
Адаптер тестирования, указывающий, что носитель отключен или подключен.
Сброс адаптера теста.
Наконец, между адаптерами тестирования и поддержки будет проверено базовое подключение для отправки и получения.
NdkPerfLogoTests
Этот тест гарантирует, что трафик RDMA может быть отправлен и получен в зависимости от DUT и компьютера службы поддержки. Для этого теста требуется, чтобы сетевой интерфейс в DUT и поддержке был включен для трафика RDMA.
Тест выполняет NdkPerfCmd.exe как на компьютере DUT, так и на компьютере поддержки. Это загрузит драйвер ndkperf.sys который вызовет API NDK для отправки трафика RDMA из DUT на компьютер поддержки.
Параметры
Параметр | Описание |
---|---|
ClientIf |
Идентификатор интерфейса сетевого адаптера с поддержкой RDMA в DUT. Получение идентификатора с помощью Get-NetAdapter |
ClientAddr |
IP-адрес сетевой карты с поддержкой RDMA в DUT. Получение IP-адреса с помощью ipconfig или Get-NetIpAddress |
SupportIf |
Идентификатор интерфейса сетевого адаптера с поддержкой RDMA на компьютере службы поддержки. Получение идентификатора с помощью Get-NetAdapter |
SupportAddr |
IP-адрес сетевой карты с поддержкой RDMA на компьютере службы поддержки. Получение IP-адреса с помощью ipconfig или Get-NetIpAddress |
Советы по сбоям в инвестировании:
Убедитесь, что обе сетевые карты включены RDMA (Get-NetAdapterRdma)
Убедитесь, что счетчики производительности действий RDMA увеличиваются при отправке трафика RDMA.
Попробуйте запустить NdkPerfCmd.exe вручную на компьютере DUT/поддержки. Если произойдет сбой, скорее всего, возникла проблема с параметрами или с неисправным сетевым драйвером API NDK.