breusovok Posted April 30, 2014 (edited) Здраствуйте! Есть 4 NAS на FreeBSD ppp-XXXXXXXXXXXXXXX 8.3-RELEASE FreeBSD 8.3-RELEASE 3 работают нормально, на 1-ом странности. Ipfw shaper - настроен на 70 мбит/с, получаю около 20 всего, на остальных все нормально с такими же настройки. Все 4 машины получены путем тупого копирования винтов, и правления конфигов сети/интерфесов шейпера. Сетевая 4-х портовая 82576. проц Xeon 3.4 ГГЦ E3-1240 V2. Мать asus P8B-E. top -PSH показывает кучу свободных ресурсов. netstat -w1 тоже криминала не показывает. Как только убераю шейпер - скорость возрастает до 150-170 мбит/с. Ошибок на интерфейсе нет, на коммутаторе тоже. Куда дальше смотреть не знаю! Есть у кого идеи? Edited April 30, 2014 by breusovok Вставить ник Quote Ответить с цитированием Share this post Link to post Share on other sites More sharing options...
vlad11 Posted April 30, 2014 Переходите на 10-ку STABLE. + покажите свой netstat -m cat /etc/sysctl.conf cat /boot/loader.conf Вставить ник Quote Ответить с цитированием Share this post Link to post Share on other sites More sharing options...
breusovok Posted April 30, 2014 Да вроде и 8.3 работает без проблем на остальных серверах. netstat -m 17504/8746/26250 mbufs in use (current/cache/total) 17491/6323/23814/512000 mbuf clusters in use (current/cache/total/max) 17491/6317 mbuf+clusters out of packet secondary zone in use (current/cache) 0/247/247/12800 4k (page size) jumbo clusters in use (current/cache/total/max) 0/0/0/6400 9k jumbo clusters in use (current/cache/total/max) 0/0/0/3200 16k jumbo clusters in use (current/cache/total/max) 39375K/15820K/55196K bytes allocated to network (current/cache/total) 0/0/0 requests for mbufs denied (mbufs/clusters/mbuf+clusters) 0/0/0 requests for jumbo clusters denied (4k/9k/16k) 0/0/0 sfbufs in use (current/peak/max) 0 requests for sfbufs denied 0 requests for sfbufs delayed 0 requests for I/O initiated by sendfile 0 calls to protocol drain routines cat /etc/sysctl.conf kern.maxfiles=204800 kern.maxfilesperproc=200000 kern.maxvnodes=200000 kern.ipc.somaxconn=16384 kern.ipc.nmbclusters=512000 kern.ipc.maxsockbuf=84886080 net.inet.udp.recvspace=20971520 net.inet.udp.checksum=0 net.local.dgram.recvspace=20971520 net.local.stream.recvspace=20971520 net.inet.tcp.delayed_ack=0 net.inet.tcp.rfc1323=1 # Security net.inet.ip.sourceroute=0 net.inet.icmp.maskrepl=0 net.inet.icmp.log_redirect=0 net.inet.icmp.drop_redirect=1 net.inet.tcp.drop_synfin=1 net.link.ether.inet.max_age=3600 net.inet.tcp.blackhole=2 net.inet.udp.blackhole=1 net.inet.ip.redirect=0 net.inet.ip.random_id=1 net.inet.icmp.icmplim=4096 net.inet.udp.log_in_vain=0 net.local.stream.sendspace=10485760 net.inet.tcp.recvspace=10485760 net.inet.tcp.sendspace=10485760 net.local.stream.sendspace=10485760 net.inet.tcp.recvspace=10485760 net.inet.tcp.sendspace=10485760 net.inet.ip.portrange.first=1024 net.inet.ip.portrange.last=65535 net.inet.ip.portrange.randomized=0 net.inet.ip.ttl=253 # Lessen max segment life to conserve resources # ACK waiting time in miliseconds (default: 30000 from RFC) net.inet.tcp.msl=5000 # Explicit Congestion Notification (see http://en.wikipedia.org/wiki/Explicit_C net.inet.tcp.ecn.enable=1 # IPFW dynamic rules and timeouts tuning # Increase dyn_buckets till net.inet.ip.fw.curr_dyn_buckets is lower net.inet.ip.fw.dyn_buckets=65536 net.inet.ip.fw.dyn_max=65536 net.inet.ip.fw.dyn_ack_lifetime=120 net.inet.ip.fw.dyn_syn_lifetime=10 net.inet.ip.fw.dyn_fin_lifetime=2 net.inet.ip.fw.dyn_short_lifetime=10 # Flowtable - flow caching mechanism # Useful for routers #net.inet.flowtable.enable=1 #net.inet.flowtable.nmbflows=65535 security.bsd.see_other_uids=0 net.inet.ip.fw.one_pass=1 #net.inet.carp.preempt=1 net.inet.ip.same_prefix_carp_only=0 net.inet.tcp.nolocaltimewait=1 net.graph.maxdgram=8388608 net.graph.recvspace=8388608 net.inet.ip.dummynet.hash_size=2048 # Experimental net.inet.ip.dummynet.io_fast=1 net.inet.ip.fastforwarding=1 net.inet.ip.dummynet.pipe_slot_limit=1000 # isr tuning net.isr.direct=0 net.isr.direct_force=0 net.route.netisr_maxqlen=4096 net.inet.ip.intr_queue_maxlen=10240 # em tuning dev.em.1.rx_int_delay=200 dev.em.1.tx_int_delay=200 dev.em.1.rx_abs_int_delay=4000 dev.em.1.tx_abs_int_delay=4000 dev.em.1.rx_processing_limit=4096 #dev.em.0.stats=1 dev.em.2.rx_int_delay=200 dev.em.2.tx_int_delay=200 dev.em.2.rx_abs_int_delay=4000 dev.em.2.tx_abs_int_delay=4000 dev.em.2.rx_processing_limit=4096 # Increase max command-line length showed in `ps` (e.g for Tomcat/Java) # Default is PAGE_SIZE / 16 or 256 on x86 # For more info see: http://www.freebsd.org/cgi/query-pr.cgi?pr=120749 kern.ps_arg_cache_limit=4096 # Turn off receive autotuning #net.inet.tcp.recvbuf_auto=0 # Note from commit http://svn.freebsd.org/base/head@211031 : # For systems with RAID volumes and/or virtualization envirnments, where # read performance is very important, increasing this sysctl tunable to 32 ## or even more will demonstratively yield additional performance benefits. vfs.read_max=32 # Should be increased when you have A LOT of files on server # (Increase until vfs.ufs.dirhash_mem becomes lower) #vfs.ufs.dirhash_maxmem=67108864 kern.corefile="/tmp/%U.%N.core" kern.coredump=1 # FOR TEST #sysctl net.inet.flowtable.enable=0 # IPv6 net.inet6.ip6.redirect=0 #kern.geom.part.check_integrity=0 cat /boot/loader.conf net.isr.maxthreads=8 Даст ли переход на 10-ку прирост в производительности? не потеряю ли в стабильности? Вставить ник Quote Ответить с цитированием Share this post Link to post Share on other sites More sharing options...
vlad11 Posted April 30, 2014 (edited) Еще есть net.isr.dispatch net.link.ifqmaxlen=10240 net.inet.tcp.tcbhashsize=524288 и поиграйтесь с режимами ACPI. Edited April 30, 2014 by vlad11 Вставить ник Quote Ответить с цитированием Share this post Link to post Share on other sites More sharing options...
Hawk128 Posted April 30, 2014 HT случаем не включен? У меня похожую ситуацию создавал, пока в БИОСе не вырубил. Вставить ник Quote Ответить с цитированием Share this post Link to post Share on other sites More sharing options...
breusovok Posted April 30, 2014 (edited) HT случаем не включен? У меня похожую ситуацию создавал, пока в БИОСе не вырубил. Есть такое, включен sysctl net.isr.dispatch sysctl: unknown oid 'net.isr.dispatch' Остальное сделал, ночью ребут будет. Если не поможет, завтра выключу HT, вот только абонов всех с него скинуть надо! Edited April 30, 2014 by breusovok Вставить ник Quote Ответить с цитированием Share this post Link to post Share on other sites More sharing options...
Ivan_83 Posted April 30, 2014 sysctl kern.eventtimer sysctl kern.timecounter что показывают? Подозреваю что на хороших тазиках HPET а на проблемном что то другое. Вставить ник Quote Ответить с цитированием Share this post Link to post Share on other sites More sharing options...
breusovok Posted April 30, 2014 (edited) Нет ни того, ни другого. Edited April 30, 2014 by breusovok Вставить ник Quote Ответить с цитированием Share this post Link to post Share on other sites More sharing options...
Ivan_83 Posted April 30, 2014 kern.hz ? Вставить ник Quote Ответить с цитированием Share this post Link to post Share on other sites More sharing options...
breusovok Posted May 1, 2014 sysctl kern.hz kern.hz: 1000 Вставить ник Quote Ответить с цитированием Share this post Link to post Share on other sites More sharing options...
breusovok Posted May 2, 2014 Хм. Новые странности. После отключения HT фряха падает в kernel panic. Включаю HT- грузится нормально, выключаю - падает где-то на этапе инициализации сети? Как с этим бороться? переходить на 10 версию? переустанавливать текущую версию? Вставить ник Quote Ответить с цитированием Share this post Link to post Share on other sites More sharing options...
Ivan_83 Posted May 2, 2014 0/247/247/12800 4k (page size) jumbo clusters in use (current/cache/total/max) Плохо крутили kern.ipc.nmbjumbop=262144 # Maximum number of mbuf page size jumbo clusters allowed. pagesize(4k/8k) kern.ipc.nmbclusters=262144 # Maximum number of mbuf clusters allowed // netstat -m kern.ipc.nmbjumbo9=262144 # Maximum number of mbuf 9k jumbo clusters allowed kern.ipc.nmbjumbo16=262144 # Maximum number of mbuf 16k jumbo clusters allowed Вставить ник Quote Ответить с цитированием Share this post Link to post Share on other sites More sharing options...
breusovok Posted May 2, 2014 прикрутил. про вторую строчку ругнулось, остальное прошло. Скорость не поменялась. Грешу все -таки на НТ, действительно это единственный сервер с Нт, на остальных нет. Вставить ник Quote Ответить с цитированием Share this post Link to post Share on other sites More sharing options...
nuclearcat Posted May 3, 2014 Поимитирую Saab: В соседней теме фрю поменяли на линукс - и все подземные стуки решились :) Вставить ник Quote Ответить с цитированием Share this post Link to post Share on other sites More sharing options...
breusovok Posted May 3, 2014 c accel-ppp у меня как-то не сложилось, демон авторизации биллинга падал... полтора года назад все эти 4 сервера были на ubuntu, да и pbr на линуксе сложнее реализовать. ipfw мне как-то ближе, чтоли. Вставить ник Quote Ответить с цитированием Share this post Link to post Share on other sites More sharing options...
breusovok Posted May 3, 2014 И еще вопрос возник, точнее теория. На материнской плате есть 4 интегрированных сетевых, на intel 82574 и 4-х ядерный процессор. На сколько я понимаю, там по одной очереди прерываний на порт. т.е. если я использую всего 2 порта - один в стороны клиентов, на котором pptp висит, а второй в сторону интернета, то и загружается у меня всего 2 ядра. А если из 4-х портов собрать 2 транка, один на вход, один на выход, то у меня будет по 2 очереди на вход, и 2 очереди на выход и будут задейстоваться все 4 ядра? Это так или я где-то ошибаюсь? Вставить ник Quote Ответить с цитированием Share this post Link to post Share on other sites More sharing options...
Ivan_83 Posted May 3, 2014 Если руками прибить то будет. Прерывания на отправку более легковесные в плане обработки. Вставить ник Quote Ответить с цитированием Share this post Link to post Share on other sites More sharing options...
vlad11 Posted May 3, 2014 Поимитирую Saab: В соседней теме фрю поменяли на линукс - и все подземные стуки решились :) И появились другие. :) Вставить ник Quote Ответить с цитированием Share this post Link to post Share on other sites More sharing options...
breusovok Posted May 5, 2014 Вот-вот и я того же мнения! Вставить ник Quote Ответить с цитированием Share this post Link to post Share on other sites More sharing options...
breusovok Posted May 5, 2014 Поставил на тестовой машине freebsd-10.0 поставил mpd, настроил как на остальных. Пытаюсь подключится по пптп, не подключается. В тспдампе с интерфейса, где радиус видно что mpd даже не пытется подключится к радиус серверу. У 10-ой версии есть какие-либо особенности работы с mpd5? Вставить ник Quote Ответить с цитированием Share this post Link to post Share on other sites More sharing options...
Hawk128 Posted May 5, 2014 (edited) Нет. Работает на 10-ке без проблем. Конфиги от 9-ки перешли без переделок. Edited May 5, 2014 by Hawk128 Вставить ник Quote Ответить с цитированием Share this post Link to post Share on other sites More sharing options...
vlad11 Posted May 5, 2014 Проблема закрыта :) Вставить ник Quote Ответить с цитированием Share this post Link to post Share on other sites More sharing options...
Hawk128 Posted May 5, 2014 И что же в итоге было? Вставить ник Quote Ответить с цитированием Share this post Link to post Share on other sites More sharing options...
breusovok Posted May 6, 2014 Ну почему же закрыта. Перепробовал и 10, и 9 версию - одна и та же фигня, нет ни одного запроса к радиус серверу. Подозреваю свои кривые руки но в чем именно ошибаюсь - найти не могу. Сейчас ради чистоты эксперемента качаю 8.3, поставлю, попробую сделать тоже самое Вставить ник Quote Ответить с цитированием Share this post Link to post Share on other sites More sharing options...
breusovok Posted May 6, 2014 На 8.3 тоже самое. Есть мысль что это каким-то образом связано с тем, что сервак поднят на виртуалке. Удалось выяснить вот что: сравнивал дампы с рабочего сервера и с не рабочего. на рабочем серваке клиент после challenge отвечает response c именем пользователем, а на не рабочем клиент response не отсылает, проверено на нескольких клиентах. Почему - для меня загадка. Вставить ник Quote Ответить с цитированием Share this post Link to post Share on other sites More sharing options...