URL: https://www.opennet.me/cgi-bin/openforum/vsluhboard.cgi
Форум: vsluhforumID13
Нить номер: 461
[ Назад ]

Исходное сообщение
"Linux - проблемма с ksoftirqd "

Отправлено torik , 26-Фев-08 19:35 
Здравствуйте!
Есть проблема которую никак не могу решить самостоятельно. :(

Есть сервер:
MB: Supermicro Server 5015M-MF+
CPU: Intel Pentium 4 CPU 3.20GHz 2048 Kb cashe
RAM: ECC DDR2 2048Mb 667MHz unbuffered
LAN: Intel(R) PRO/1000 PT Dualport Server Adapter (PCI Express:2.5Gb/s:Width x4)

На сервере Linux Fedora Core 7.0, ядро 2.6.23.1.
Функционально сервер работает как обычный роутер, держит bgp и firewall на iptables.

Проблема заключается в том, что при увеличении скорости потока сквозь сервер выше 180 МБит/с, сервер начинает тормозить, пинг через него прыгает до 50 ms. Соответственно скорость потока выше 180-190 МБит/с сервер не пропускает.

Командой top увидел:
PID USER      PR  NI  VIRT  RES  SHR S %CPU %MEM    TIME+  COMMAND
   4 root      15  -5     0    0    0 R  100  0.0  18395:45 ksoftirqd/0

Насколько я понимаю ядро ksoftirqd/0 использует все процессорное время, из-за чего и начинаются тормоза.

Подскажите, может можно как то оптимизировать ядро, или в чем то еще может быть проблема?



Содержание

Сообщения в этом обсуждении
"Linux - проблемма с ksoftirqd "
Отправлено Serge , 26-Фев-08 20:58 

>
>Проблема заключается в том, что при увеличении скорости потока сквозь сервер выше
>180 МБит/с, сервер начинает тормозить, пинг через него прыгает до 50
>ms. Соответственно скорость потока выше 180-190 МБит/с сервер не пропускает.
>
>
>Подскажите, может можно как то оптимизировать ядро, или в чем то еще
>может быть проблема?

проблема в драйвере сетевой карты, вернее в отсутствие поддержки NAPI - генерится слишком много прерываний. Что само по себе  странно, т.к. е1000 имеет NAPI.


"Linux - проблемма с ksoftirqd "
Отправлено torik , 27-Фев-08 13:06 
>>Проблема заключается в том, что при увеличении скорости потока сквозь сервер выше
>>180 МБит/с, сервер начинает тормозить, пинг через него прыгает до 50
>>ms. Соответственно скорость потока выше 180-190 МБит/с сервер не пропускает.
>проблема в драйвере сетевой карты, вернее в отсутствие поддержки NAPI - генерится
>слишком много прерываний. Что само по себе  странно, т.к. е1000
>имеет NAPI.

Использую драйвер e1000 который был с ядром 2.6.23.1
Драйвер вкомпилирован в ядро.

Может проблема в том, что на сервере 4 сетевые карты intel на разных чипах:
- интегрированые:
  Intel® 82573L PCI-e Gigabit LAN
  Intel® 82573V PCI-e Gigabit LAN
- внешняя Intel(R) PRO/1000 PT Dualport Server Adapter (PCI Express:2.5Gb/s:Width x4)
  Intel® 82571GB PCI-e Gigabit LAN
  Intel® 82571GB PCI-e Gigabit LAN

Использую реально 3 последние а драйвер общий e1000 на все 4 сетевухи.
Может проблема в этом и есть смысл включить vlan`ы и повесить все на 1 сетевую?


"Linux - проблемма с ksoftirqd "
Отправлено torik , 04-Мрт-08 13:59 
Все, проблема решена!

Дело было не в драйверах сетевой карты а в firewall`е.
Пропатчил ядро под ipset, перекомпилировал ядро и iptables, переделал правила firewall`а под использование модуля ipset в iptables и проблема решилась (http://ipset.netfilter.org). Теперь ksoftirqd  использует не более 1% процессорного времени. :)

Спасибо всем за помощь!


"Linux - проблемма с ksoftirqd "
Отправлено taric , 09-Фев-09 03:25 
Ув. torik. Не могли Бы Вы отписать на demtaric@gmail.com
У меня схожая проблема.

"Linux - проблемма с ksoftirqd "
Отправлено vadislaus , 19-Фев-09 21:09 
>Ув. torik. Не могли Бы Вы отписать на demtaric@gmail.com
>У меня схожая проблема.

Присоединяюсь, та же трабла.


"Linux - проблемма с ksoftirqd "
Отправлено vadislaus , 23-Фев-09 00:36 
Уважаемые, подскажите плз, чем так хорош этот ipset? Если в файрволе не более 30 правил имеет смысл его ставить? Почитав http://ipset.netfilter.org так и не понял, как его правильно "готовить".