Tooreagen Posted January 15, 2023 · Report post Всем привет! Ребят помогите решить проблему увеличение пинга и падения скорости у абонентов. В инете куча инфы, но не могу систематизировать и подобрать для своей конфигурации: Система: FreeBSD 9.3-RELEASE-p20 Сетевая карта: 2-х портовая 82599EB 10-Gigabit SFI/SFP+ Процессор: Intel(R) Xeon(R) CPU E5-2670 v2 @ 2.50GHz ОЗУ: Всего 32Gb, использовано 4Gb. ПО: dummynet нет, PF NAT, фаервол IPFW, абоненты подключаются по PPPoE mpd5 Трафика 1,5G, надо прожевать 5G Подскажите какие мне параметры loader.conf и sysctl установить чтобы более-менее заработало. Спасибо. Про обновить систему знаю, это будет позже, есть нюансы в подготовке, сейчас главное чтобы работало. Вставить ник Quote Ответить с цитированием Share this post Link to post Share on other sites More sharing options...
jffulcrum Posted January 15, 2023 · Report post 1. Вы сидите на очень древней ОС. 9 была актуальна 10 лет назад 2. Надо понять, а какая нагрузка сейчас. vmstat -i, vmstat -s хоты бы вывод 3. Такой трафик ваши процессор и карта должны есть на завтрак без нужды каких-то ковыряний. Скорее, эти ковыряния были сделаны по мануалам 10-летней давности, от них и проблемы. Выложите, что сейчас в sysctl.conf и loader.conf Вставить ник Quote Ответить с цитированием Share this post Link to post Share on other sites More sharing options...
Tooreagen Posted January 15, 2023 · Report post Не спорю, готовимся обновится но есть нюансы с сетевой инфракструктурой. $ vmstat -i interrupt total rate irq1: atkbd0 18 0 irq20: ehci1 157764 2 irq21: ehci0 94710 1 cpu0:timer 70492377 1117 irq274: ciss0 116180 1 irq275: ix0:que 0 295666673 4687 irq276: ix0:que 1 180242852 2857 irq277: ix0:que 2 175591722 2784 irq278: ix0:que 3 175189421 2777 irq279: ix0:que 4 176534141 2799 irq280: ix0:que 5 170624791 2705 irq281: ix0:que 6 174998688 2774 irq282: ix0:que 7 173487851 2750 irq283: ix0:link 10 0 irq284: ix1:que 0 349903662 5547 irq285: ix1:que 1 248295010 3936 irq286: ix1:que 2 249385356 3954 irq287: ix1:que 3 241537219 3829 irq288: ix1:que 4 256050523 4059 irq289: ix1:que 5 249567367 3957 irq290: ix1:que 6 250770039 3976 irq291: ix1:que 7 251223797 3983 irq292: ix1:link 10 0 cpu14:timer 7722295 122 cpu8:timer 2722222 43 cpu17:timer 7435385 117 cpu5:timer 46199162 732 cpu16:timer 7448187 118 cpu4:timer 46063140 730 cpu19:timer 7403627 117 cpu1:timer 46223095 732 cpu11:timer 7712094 122 cpu3:timer 46197136 732 cpu15:timer 7506871 119 cpu12:timer 7669605 121 cpu2:timer 45953506 728 cpu18:timer 7417658 117 cpu13:timer 7619743 120 cpu6:timer 46082493 730 cpu10:timer 7848101 124 cpu7:timer 45808696 726 cpu9:timer 2722975 43 Total 4093686172 64908 vmstat -s 2069284061 cpu context switches 3626848245 device interrupts 65982691 software interrupts 28048034 traps 4039617000 system calls 21 kernel threads created 81578 fork() calls 24892 vfork() calls 0 rfork() calls 0 swap pager pageins 0 swap pager pages paged in 0 swap pager pageouts 0 swap pager pages paged out 1004 vnode pager pageins 6977 vnode pager pages paged in 0 vnode pager pageouts 0 vnode pager pages paged out 0 page daemon wakeups 0 pages examined by the page daemon 15 pages reactivated 2922432 copy-on-write faults 2516 copy-on-write optimized faults 7334613 zero fill pages zeroed 0 zero fill pages prezeroed 20 intransit blocking page faults 19026265 total VM faults taken 0 pages affected by kernel thread creation 45349631 pages affected by fork() 12736875 pages affected by vfork() 0 pages affected by rfork() 57 pages cached 54241407 pages freed 0 pages freed by daemon 6186539 pages freed by exiting processes 19275 pages active 910102 pages inactive 0 pages in VM cache 604499 pages wired down 6585928 pages free 4096 bytes per page 10102337 total name lookups cache hits (89% pos + 10% neg) system 0% per-directory deletions 0%, falsehits 0%, toolong 0% cat /etc/sysctl.conf vfs.read_max=32 net.inet.ip.forwarding=1 net.inet.ip.fastforwarding=1 net.inet.ip.dummynet.io_fast=1 net.inet.ip.dummynet.hash_size=65535 net.inet.ip.dummynet.pipe_slot_limit=2048 net.inet.ip.fw.one_pass=1 net.inet.tcp.blackhole=2 net.inet.udp.blackhole=1 net.inet.icmp.drop_redirect=1 net.inet.icmp.log_redirect=0 net.inet.icmp.maskrepl=0 net.inet.icmp.icmplim=100 net.inet.icmp.bmcastecho=0 net.inet.ip.redirect=0 net.inet.ip.sourceroute=0 net.inet.ip.accept_sourceroute=0 net.inet.ip.ttl=226 net.inet.tcp.drop_synfin=1 net.inet.tcp.syncookies=1 kern.ipc.somaxconn=32768 kern.maxfiles=204800 kern.maxfilesperproc=200000 kern.ipc.nmbclusters=524288 kern.ipc.maxsockbuf=83886080 kern.random.sys.harvest.ethernet=0 kern.random.sys.harvest.interrupt=0 kern.ipc.shmmax=67108864 net.inet.ip.intr_queue_maxlen=10240 #MPD net.graph.maxdgram=128000 net.graph.recvspace=128000 net.inet6.ip6.auto_linklocal=0 # for rtsock net.route.netisr_maxqlen=4096 # for other protocols (IP & PPPoE?) net.isr.defaultqlimit=4096 # default outgoing interface queue length # used by lagg etc. net.link.ifqmaxlen=10240 loader.conf пустой Вставить ник Quote Ответить с цитированием Share this post Link to post Share on other sites More sharing options...
Ivan_83 Posted January 16, 2023 · Report post 1. не тратте время и обновляйтесь. 2. проц не того класса: много ядер-мало частоты, лучше было бы наоборот. 4-8 ядер современного проца должно хватить. 3. лучше смотреть старые темы, я уже не помню крутилок. Скорее всего оно упирается в 1-2 ядра из за особенностей PPPoE. top -aSHIP должен это примерно и показать. Вставить ник Quote Ответить с цитированием Share this post Link to post Share on other sites More sharing options...
Tooreagen Posted January 16, 2023 · Report post Так и есть, первое ядро уже почти на максимуме Т.е. может помочь установить количество прерываний и раскидать их по ядрам? hw.ix.num_queues=20 Вставить ник Quote Ответить с цитированием Share this post Link to post Share on other sites More sharing options...
jffulcrum Posted January 16, 2023 · Report post Можно пока смотреть темы: Возможно вы как раз в лимит 500 сессий стукаетесь, а не в трафик Вставить ник Quote Ответить с цитированием Share this post Link to post Share on other sites More sharing options...
Tooreagen Posted January 16, 2023 · Report post Ну в 12 ветке FreeBSD там же iflib уже используется, а по сессиям то у меня уже сейчас: netstat -rn | grep -v grep | grep -c ng 870 Вставить ник Quote Ответить с цитированием Share this post Link to post Share on other sites More sharing options...
st_re Posted January 16, 2023 · Report post 1 час назад, Tooreagen сказал: Так и есть, первое ядро уже почти на максимуме Т.е. может помочь установить количество прерываний и раскидать их по ядрам? hw.ix.num_queues=20 у Вас там pppoe и pf (на вашей версии фри) не умеют в многопроцессорность. и именно тут оно и воткнёт (и это и видно что одно ядро 85%, остальные курят). надо мало ядер, но большой частоты камень. И если с pf вроде как в свежих верисях поборолись то с пппое всё хуже в этом плане. Вставить ник Quote Ответить с цитированием Share this post Link to post Share on other sites More sharing options...
Ivan_83 Posted January 16, 2023 · Report post 10 hours ago, Tooreagen said: Т.е. может помочь установить количество прерываний и раскидать их по ядрам? Установить - поможет мало, PPPoE не размазывается по прерываниям, особенности реализации хэш функции в железе. Вставить ник Quote Ответить с цитированием Share this post Link to post Share on other sites More sharing options...
Tooreagen Posted January 16, 2023 · Report post Ну как-то же работали раньше, с нагрузкой. Что-то же делали? Вставить ник Quote Ответить с цитированием Share this post Link to post Share on other sites More sharing options...
Ivan_83 Posted January 16, 2023 · Report post Читайте, на форуме всё было. Если нет возможности раскидать по прерываниям сетевухой значит нужно раскидывать позже, это isr, в старой фре ещё нетграфом можно было, потом из нетграфа это выкинули и втащили туда тот же isr. Патч для ng_pppoe (вроде него) я тут выкладывал, вроде его даже кто то тестил. https://forum.nag.ru/index.php?/topic/159591-problema-na-freebsd-111-i-mpd58/&do=findComment&comment=1657001 И в целом тут никто не будет искать для вас ответы и вспоминать как оно было 10 лет назад, читайте форум, тут всё уже было. Вставить ник Quote Ответить с цитированием Share this post Link to post Share on other sites More sharing options...
Sacrament Posted January 17, 2023 · Report post Переходите на Линукс, там с этим куда лучше. Вставить ник Quote Ответить с цитированием Share this post Link to post Share on other sites More sharing options...
Ivan_83 Posted January 17, 2023 · Report post 15 hours ago, Sacrament said: Переходите на Линукс, там с этим куда лучше. Готовы отвечать на вопросы по 2.6 ядру?) Вставить ник Quote Ответить с цитированием Share this post Link to post Share on other sites More sharing options...