Здравствуйте!
Есть 2 машинки,одна duron 800mhz,512mb RAM DDR (x); вторая Celeron 2.53ghz, 512mb RAM DDR (root).
Поставил гигабитную сетку между ними, но скорость была где-то 20-25мбайт/с.
Начал рыть,выяснилось,что дело не в карточках и не в сетке,а в самой оси...
Замерил скорость dd+netcat:
root# nc -l 127.0.0.1 80>/dev/null
root# dd if=/dev/zero bs=256k count=8192 | nc 127.0.0.1 80
8192+0 records in
8192+0 records out
2147483648 bytes transferred in 55.636119 secs (38598732 bytes/sec)
при этом топ показывал:
CPU states: 7.5% user, 0.0% nice, 72.1% system, 20.4% interrupt, 0.0% idle
pf был вкючен,но без pf скорость поднималась не сильно,а по сетке даже падала...Вот по сетке с pf-ом,только на одной машине - на сервере(celeron):
root# nc -l root 80
x# dd if=/dev/zero bs=256k count=2048 | nc root 80
2048+0 records in
2048+0 records out
536870912 bytes transferred in 23.798705 secs (22558829 bytes/sec)
TOP на root-e:
CPU states: 0.8% user, 0.0% nice, 1.9% system, 0.0% interrupt, 97.4% idle
TOP на x-е:
CPU states: 1.9% user, 0.0% nice, 63.8% system, 31.9% interrupt, 2.3% idle
Поменялись ролями:
x# nc -l x 80
root# dd if=/dev/zero bs=256k count=2048 | nc x 80
2048+0 records in
2048+0 records out
536870912 bytes transferred in 17.875630 secs (30033678 bytes/sec)
TOP на root-e:
CPU states: 5.6% user, 0.0% nice, 45.9% system, 0.0% interrupt, 48.5% idle
TOP на x-е:
CPU states: 2.7% user, 0.0% nice, 24.2% system, 49.6% interrupt, 23.4% idle
Вот такие пироги..
На root-е включен device-polling,потому и IRQ хавает мало, на x-е драйвер сетевухи не поддерживает polling (skc0: DGE-530T Gigabit Ethernet Adapter rev. (0x9))
Пробовал также тестить loopback на:
hw.model: Intel(R) Pentium(R) D CPU 2.80GHz hw.physmem: 2137337856
серверная мамка supermicro какая-то..
там другое дело,скорость по lo0 в раене 150mbyte/сек, уже приемлемо..
Можно ли как-то заставить tcp/ip FreeBSD работать на обычных десктоповых машинах так же быстро?
Пробовал это: http://www.opennet.me/docs/RUS/GigabitEthernet/ - не помогло...
Скорость сильно не зависит в лучшую сторону от правки буфферов..
все тесты проводились на FreeBSD 6.2-STABLE #0: Tue May 15 08:24:11 EEST 2007
Ядро GENERIC,но немного поправлен конфиг. с чистым GENERIC результаты примерно такие же
Пробовал на своей десктопке(root) NetBSD,там получилось 100myte/s по lo0,без всяких настроек. уже лучше.но мне NetBSD многими вещами не нравится.надо кучу времени убить,чтобы ее пропатчить..
Стоит ли дальше копать фряху или лучше пересесть на что-то другое?