Что имеем: FreeBSD 8.0-RELEASE amd64, mpd v5.5 из портов. Погуглив по данной теме понял, что это тоже полезно будет: проц Intel E5320, 4GB оперативы, 8 сетевых Интерфейсов Intel(R) PRO/1000 Network Connection 6.9.14 (дрова родные от Фряхи). MTU1500. Ядро пересобрано без поддержки поллинга, с поддержкой нетграф и ipfw. Интересующие меня соединения проходят примерно через 6 правил ipfw. Поднимаю на сервере одно PPTP соединение (назовем его "главным"), в данном случае рассматриваемый сервер является клиентом, тем самым я объединяю две сети. По этому тоннелю должно проходить из одной сети на находящийся в другой сети ВПН-сервер еще порядка 500 PPTP-туннелей (назовем их ВПНы). Без какого-либо вмешательства в настройки ядра тоннель прекрасно поднимается, пакеты летят, но PPTP соединения созданные внутри "главного" разрываются каждые 5-10 минут, при этом по показаниям mpd сам "главный" линк висит и все в нем ОКе. По показаниям top -SIP ресурсов сервака до попы, а прерываний не более 15% (стоит учитывать что каждый из 7-ми сетевых Интерфейсов активен и смотрит в свою сетку). Меняю параметры ядра (в их значения не особо вчитывался, но судя по аналогичным постам в инете обычно их всегда и меняют, сами параметры будут указаны ниже) - в итоге получаю, что тоннели перестают разрываться (50 минут ждал), но появляются потери ~10-15% по "главному" линку и соответственно качество ВПНов также падает (потери), при этом сохраняется сама скорость ВПНов (они ограничены 512кбит/с другим раутером). Как это так выходит не совсем понятно мне, скорость проверял по speed.yoip.ru. Смотрю netstat -hw1 -Iem6, где em6 - ифейс на котором и поднят "главный" линк: ошибок 0, input bytes 3.0-3.5MB и не более (должно быть минимум 50мбит/сек)! Ну никак я не смог заставить это число подняться, я так понял, что что-то ограничивает, только что? Конфиги: mpd5.conf: main: create bundle static main_B set iface enable tcpmssfix set iface up-script /usr/local/bin/scripts/mpd-up-ng0 set iface down-script /usr/local/bin/scripts/mpd-down-ng0 set ipcp ranges 0.0.0.0/0 0.0.0.0/0 create link static main_L pptp set link enable multilink set link action bundle main_B set auth authname ... set auth password ... set link max-redial 0 set link keep-alive 5 40 set link yes passive set pptp peer ... set pptp self ... set pptp enable windowing open sysctl (которые менялись): net.inet.ip.fastforwarding: 0 net.inet.tcp.rfc1323: 1 net.inet.tcp.sendspace: 32768 net.inet.tcp.recvspace: 65536 net.inet.tcp.sendbuf_max: 262144 kern.ipc.maxsockbuf: 262144 kern.ipc.maxpipekva: 68415488 kern.ipc.maxsockets: 25600 Подскажите где искать проблему?
|