По поводу думминета. Что за архитектура на насе? Атлоны или интелы, ппое или айпиое? Я где-то год назад игрался с тонким тюнингом наса. Была похожая ситуация на 7.2 фре.
в данный момент
top -SPH
0 root -92 0 0K 288K - 1 122.6H 0.00% kernel{dummynet}
3743 root 20 0 2191M 2122M select 2 500:20 0.00% mpd5{mpd5}
0 root -92 0 0K 288K - 3 442:11 0.00% kernel{igb0 que}
при
nas5# ifconfig |grep ng| wc -l
420
шейпы все по 100 мб.
А вобще я прихожу к мнению что пора переходить на нжикар.
Насчет линукса, там проблем с распараллеливанием процессов нету, но есть проблема другого характера. Там нету мпд. На каждое ппое соединение создается отдельный процесс, и оно работает крайне паршиво, по отзывам, в сравнении с мпд при 500+ интерфейсов. Так что, тут шило на мыло меняется, решив грабли с тем что ппое траффик вешается по умолчаню на 1 ядро во фрихе, получим геморой с процессами. Решается двумя способами, либо патчем ядра, когда ядерный планировщик анализирует не заголовок айпи пакета а мак, при выборе ядра для обработки, либо статическим прибиванием к 0 ядру и переходом на сандибокс архитектуру. Тогда получаем 0 ядро нагруженное в полку, обработкой приходящего трафика, но жует гиг в легкую без лагов. Больше не пробовал, так как не было нужды.
в общем для 7й фрихи я сделал след
[root@nas1 /etc]# cat /etc/rc.local
/usr/bin/cpuset -l 0-2 -p $(ps ax|grep swi1|awk 'NR % 2{print $1}')
/usr/bin/cpuset -l 0 -p $(ps ax|grep dummynet|awk 'NR % 2{print $1}')
/sbin/sysctl dev.igb.0.rx_processing_limit=4096
/sbin/sysctl dev.igb.1.rx_processing_limit=4096
/sbin/sysctl dev.igb.0.enable_aim=0
/sbin/sysctl dev.igb.1.enable_aim=0
/sbin/sysctl dev.igb.0.flow_control=0
/sbin/sysctl dev.igb.1.flow_control=0
#/sbin/sysctl net.inet.ip.dummynet.io_fast=1
/sbin/sysctl net.inet.ip.dummynet.hash_size=256
/sbin/sysctl net.isr.direct=1