Назад | Перейти на главную страницу

В официальном документе поставщика говорится: 5 млн пакетов в секунду без проблем. Я уже упираюсь в стену со скоростью 120 кбит / с. Где узкое место?

HP технический документ об их адаптерах QLogic (fka Broadcom) NetXtreme II, который включает конкретную сетевую карту, которую я тестирую, утверждает (стр. 7), что производительность их малых пакетов для пакетов размером до 256 байт / пакет превышает 5 000 000 пакетов / сек.

В моих тестах с приложением, в котором я отключил всю обработку, за исключением простой части приема UDP, я смог достичь только 120000 пакетов / сек. Пакеты равномерно распределяются по 12 группам многоадресной рассылки.

Я заметил что есть одно ядро (из 12 ядер на 2 сокета), нагрузка которых постепенно увеличивается, когда я увеличиваю скорость отправки UDP и достигает примерно 120 000. Но я не знаю, что делает это ядро ​​и почему. В моем приложении это не узкое место с одним потоком, потому что не имеет значения, запускаю ли я один экземпляр приложения для всех групп многоадресной рассылки или 12 экземпляров, каждый из которых обрабатывает 1 группу многоадресной рассылки. Таким образом, проблема не в моем приложении-приемнике.

MSI включен (проверяется через представление "ресурсы по типу" в диспетчере устройств) и RSS тоже включен в настройках NIC, с 8 очередями. Так что же цепляется за это ядро? Все функции разгрузки сетевых карт в настоящее время включены, но их отключение не помогло.

Так где же может быть узкое место?

Детали системы:

RSS тоже включен в настройках сетевого адаптера с 8 очередями.

К сожалению, это не означало, что RSS используется, поскольку

netsh int tcp show global

показал:

TCP Global Parameters
----------------------------------------------
Receive-Side Scaling State : disabled

После запуска (кстати без перезагрузки)

netsh int tcp set global rss=enabled

RSS начал работать, и нагрузка, которая раньше была на этом бедном ядре, теперь равномерно распределяется по многим ядрам на одном из двух узлов NUMA.

Я не проверял, позволит ли это мне справиться с объявленной нагрузкой Mpps, но потолок был поднят в достаточной степени, чтобы сравнить то, что мне нужно.