Страницы

Поиск по вопросам

воскресенье, 9 февраля 2020 г.

Выделить ещё ядер на обработку сети(sysctl)

#linux #сеть #kernel


При нагрузке на сеть(много соединений и дудос) у меня нагружается только ядро №5.
 Как можно распределить нагрузку на все ядра?(настраивал sysctl, irqbalance нет)
    


Ответы

Ответ 1



Для начала, тебе нужно узнать, работает ли на твоем сервере механизм ядра, называющийся RPS: watch -n1 cat /proc/softirqs Если NET_RX и NET_TX прерывания идут только на одно ядро, значит RPS не включен, и его необходимо сконфигурировать, с помощью установки битовых масок в: /sys/class/net/DEVICE/queues/QUEUE/rps_cpus Битовые маски, в HEX формате означают, на каких cpu будут обрабатываться сетевые прерывания, и для каждой системы они будут разные. Статья с примером установки таких масок: https://habrahabr.ru/company/flant/blog/332432/ Подробнее об RPS можно прочитать тут: https://github.com/torvalds/linux/blob/v3.13/Documentation/networking/scaling.txt#L138-L164

Комментариев нет:

Отправить комментарий