dagtkrus Опубликовано 31 марта, 2013 · Жалоба Добрый день! Помогите разобраться с проблемой: В данный момент поднят НАС сервер на FreeBSD 8.2-STABLE, процессор Xeon, 4G ОЗУ. Сетевые платы стоят от Интел. em0 (смотрит в локальную сеть) em1 (смотрит в интернет) igb0 (для стыка с биллингом) Входящий трафик забит под 1 Гиг. Колличество абонентов около 4000. Подключаются по pptp Поднят mpd 5.5 НАТа нету, всем выдаются внешние адреса. IPFW тоже нет. Тунели шейпит mpd Нагрузка на проц - 40-50%. Все работает идеально уже больше года. В связи с тем что гигабитной карты уже не хватает, а вставить дополнительную нет возможности приобрели другой сервер, на порядок мощнее. 2 Процессора Xeon® E5-2620, 32GB ОЗУ, 2 встроенные сетевые Intel® i350 PCI-E. Дополнительно установили сетевые: Intel I350 F2 (для стыка в интернет. планируется поднять LACP и объеденить 2 порта) Intel E10G42BTDA 10GB (смотрит в локальную сеть) Настроили так же как и первый, только igb0 смотрит в биллинг igb2 смотрит в интернет. ix0 смотрит в локальную сеть. Запускаем, все работает нормально, как только количество абонентов увеличивается более 2000, нагрузка подходит к 400 мбит/с происходит резкий скачок загрузки процесоров под 100%, увеличиваются задержки пакетов, канал выше 400 мбит не поднимается. Каких либо аномалий в момент нагрузки CPU вроде резкого скачка трафика или увеличения pps не замечали. Процессор грузят прерывания igb. Отключили Гипертрейдинг, пробовали уменьшить количество используемых ядер для igb, изменяли параметры sysctl, поднимали интерфейсы с параметрами -rxcsum -txcsum -lro -tso up, - ничего не помогло. Ставили FreeBSD 9.1, потом откатились до 8.3-STABLE. Результат тот же самый. Подскажите, что еще можно предпринять. В данный момент стоит 8.3-STABLE, настройки такие: cat /etc/sysctl.conf net.graph.maxdgram=8388608 net.graph.recvspace=8388608 kern.ipc.nmbclusters=400000 kern.ipc.maxsockbuf=83886080 net.inet.ip.fastforwarding=1 net.inet.ip.intr_queue_maxlen=10240 net.inet.icmp.icmplim=500 hw.intr_storm_threshold=9000 kern.random.sys.harvest.ethernet=0 kern.random.sys.harvest.point_to_point=0 kern.random.sys.harvest.interrupt=0 kern.ipc.nmbjumbop=262144 net.inet.tcp.blackhole=2 net.inet.udp.blackhole=0 net.inet.icmp.drop_redirect=1 net.inet.icmp.log_redirect=0 net.inet.ip.redirect=0 net.inet.ip.sourceroute=0 net.inet.icmp.bmcastecho=0 net.inet.tcp.drop_synfin=1 net.inet.tcp.syncookies=1 kern.ipc.somaxconn=32768 kern.maxfiles=204800 kern.maxfilesperproc=200000 dev.igb.0.rx_processing_limit=4096 dev.igb.1.rx_processing_limit=4096 net.route.netisr_maxqlen=4096 hw.intr_storm_threshold=9000 cat /boot/loader.conf net.graph.maxdata=65536 net.graph.maxalloc=65536 kern.ipc.nmbclusters=262144 kern.ipc.nmbjumbop=262144 hw.igb.rxd=4096 hw.igb.txd=4096 hw.igb.rx_process_limit=4096 hw.igb.lro=0 hw.igb.fc_setting=0 hw.igb.max_interrupt_rate=32000 net.isr.defaultqlimit=4096 net.link.ifqmaxlen=10240 net.inet.tcp.syncache.hashsize=1024 net.inet.tcp.syncache.bucketlimit=100 net.inet.tcp.tcbhashsize=4096 Изначально ставили такие же как на старом сервере: cat /etc/sysctl.conf net.graph.maxdgram=8388608 net.graph.recvspace=8388608 kern.ipc.nmbclusters=400000 kern.ipc.maxsockbuf=83886080 net.inet.ip.fastforwarding=1 net.inet.ip.intr_queue_maxlen=10240 net.inet.icmp.icmplim=500 cat /boot/loader.conf net.graph.maxdata=65536 net.graph.maxalloc=65536 В момент нагрузки показывает: top -SHPI last pid: 10450; load averages: 17.40, 10.87, 6.22 up 0+04:16:53 10:00:00 219 processes: 35 running, 114 sleeping, 69 waiting, 1 lock CPU 0: 0.4% user, 0.0% nice, 80.5% system, 9.0% interrupt, 10.1% idle CPU 1: 0.0% user, 0.0% nice, 82.4% system, 9.4% interrupt, 8.2% idle CPU 2: 0.7% user, 0.0% nice, 82.8% system, 11.6% interrupt, 4.9% idle CPU 3: 0.0% user, 0.0% nice, 85.0% system, 7.5% interrupt, 7.5% idle CPU 4: 0.4% user, 0.0% nice, 84.6% system, 8.6% interrupt, 6.4% idle CPU 5: 0.7% user, 0.0% nice, 79.8% system, 12.0% interrupt, 7.5% idle CPU 6: 1.1% user, 0.0% nice, 78.7% system, 10.4% interrupt, 9.7% idle CPU 7: 0.4% user, 0.0% nice, 80.5% system, 12.0% interrupt, 7.1% idle CPU 8: 0.0% user, 0.0% nice, 46.4% system, 50.6% interrupt, 3.0% idle CPU 9: 0.4% user, 0.0% nice, 40.4% system, 54.3% interrupt, 4.9% idle CPU 10: 0.0% user, 0.0% nice, 43.1% system, 52.1% interrupt, 4.9% idle CPU 11: 0.0% user, 0.0% nice, 45.3% system, 49.1% interrupt, 5.6% idle Mem: 99M Active, 26M Inact, 742M Wired, 12K Cache, 164M Buf, 30G Free Swap: 4096M Total, 4096M Free PID USERNAME PRI NICE SIZE RES STATE C TIME WCPU COMMAND 12 root -32 - 0K 1216K CPU1 1 27:47 66.80% intr{swi4: clock} 12 root -68 - 0K 1216K CPU10 10 23:03 65.19% intr{irq272: igb2:que} 0 root -68 0 0K 816K CPU5 5 2:18 62.79% kernel{igb2 que} 0 root -68 0 0K 816K - 5 2:20 62.50% kernel{igb2 que} 12 root -68 - 0K 1216K *netgr 9 22:10 62.06% intr{irq271: igb2:que} 12 root -68 - 0K 1216K CPU11 11 21:42 60.89% intr{irq273: igb2:que} 0 root -68 0 0K 816K - 5 2:24 59.47% kernel{igb2 que} 12 root -68 - 0K 1216K WAIT 8 22:36 58.79% intr{irq270: igb2:que} 0 root -68 0 0K 816K CPU3 0 2:11 51.56% kernel{igb2 que} 1454 root -16 - 0K 192K RUN 0 13:27 45.46% ng_queue{ng_queue1} 1454 root -16 - 0K 192K RUN 1 13:30 45.36% ng_queue{ng_queue11} 1454 root -68 - 0K 192K CPU1 5 13:30 44.68% ng_queue{ng_queue4} 1454 root -16 - 0K 192K CPU2 2 13:32 44.48% ng_queue{ng_queue0} 1454 root -16 - 0K 192K RUN 8 13:35 43.99% ng_queue{ng_queue6} 1454 root -16 - 0K 192K RUN 10 13:31 43.36% ng_queue{ng_queue8} 1454 root -16 - 0K 192K RUN 1 13:35 43.26% ng_queue{ng_queue3} 1454 root -16 - 0K 192K CPU6 6 13:35 43.16% ng_queue{ng_queue9} 1454 root -16 - 0K 192K CPU3 3 13:31 42.97% ng_queue{ng_queue5} 1454 root -16 - 0K 192K RUN 6 13:29 42.87% ng_queue{ng_queue10} 1454 root -16 - 0K 192K RUN 2 13:31 42.68% ng_queue{ng_queue2} 1454 root -16 - 0K 192K CPU0 0 13:31 41.16% ng_queue{ng_queue7} 1433 root 100 0 187M 101M RUN 5 129:52 19.09% mpd5{mpd5} 1433 root 76 0 187M 101M nanslp 0 0:00 17.97% mpd5{mpd5} 1433 root 76 0 187M 101M select 1 0:00 14.79% mpd5{mpd5} 1433 root 76 0 187M 101M select 6 0:00 14.79% mpd5{mpd5} 1433 root 76 0 187M 101M select 7 0:00 14.79% mpd5{mpd5} 1433 root 76 0 187M 101M select 4 0:00 14.79% mpd5{mpd5} 1433 root 76 0 187M 101M select 3 0:00 14.79% mpd5{mpd5} 1433 root 76 0 187M 101M select 3 0:00 14.79% mpd5{mpd5} 1433 root 76 0 187M 101M select 2 0:00 14.79% mpd5{mpd5} 1433 root 76 0 187M 101M select 0 0:00 14.79% mpd5{mpd5} 1433 root 76 0 187M 101M select 4 0:00 14.79% mpd5{mpd5} 11 root 171 ki31 0K 192K RUN 6 215:26 8.15% idle{idle: cpu6} 11 root 171 ki31 0K 192K RUN 7 215:18 7.28% idle{idle: cpu7} 11 root 171 ki31 0K 192K RUN 0 218:52 6.88% idle{idle: cpu0} 11 root 171 ki31 0K 192K RUN 1 219:29 6.79% idle{idle: cpu1} 11 root 171 ki31 0K 192K RUN 3 219:15 6.69% idle{idle: cpu3} 11 root 171 ki31 0K 192K RUN 5 218:51 6.69% idle{idle: cpu5} 11 root 171 ki31 0K 192K RUN 4 218:20 6.59% idle{idle: cpu4} 11 root 171 ki31 0K 192K RUN 2 219:22 6.15% idle{idle: cpu2} 12 root -68 - 0K 1216K CPU2 2 10:08 4.59% intr{irq282: ix0:que } netstat -hdw1 input (Total) output packets errs idrops bytes packets errs bytes colls drops 136k 0 0 70M 149k 0 111M 0 0 134k 0 0 67M 146k 0 105M 0 0 134k 0 0 68M 148k 0 110M 0 0 142k 0 0 76M 156k 0 120M 0 0 137k 0 0 70M 149k 0 111M 0 0 134k 0 0 68M 147k 0 108M 0 0 133k 0 0 68M 143k 0 108M 0 0 138k 0 0 71M 152k 0 111M 0 0 140k 0 0 73M 151k 0 116M 0 0 systat -v Mem:KB REAL VIRTUAL VN PAGER SWAP PAGER Tot Share Tot Share Free in out in out Act 129236 7396 647744 9188 31570k count All 358264 8932 1074580k 19244 pages Proc: Interrupts r p d s w Csw Trp Sys Int Sof Flt 63 cow 65301 total 2 49 178k 342 8142 41k 1330 372 224 zfod acpi0 irq9 ozfod 2 ehci0 16 64.8%Sys 28.3%Intr 0.5%User 0.0%Nice 6.3%Idle %ozfod 2 ehci1 23 | | | | | | | | | | | daefr 2002 cpu0: time ================================+++++++++++++++ 56 prcfr isci0 256 14 dtbuf 832 totfr isci0 258 Namei Name-cache Dir-cache 587054 desvn react 23 igb0:que 0 Calls hits % hits % 505 numvn pdwak 30 igb0:que 1 471 471 100 31 frevn pdpgs 21 igb0:que 2 intrn 18 igb0:que 3 Disks da0 da1 cd0 pass0 pass1 pass2 759448 wire igb0:link KB/t 0.00 0.00 0.00 0.00 0.00 0.00 101876 act 142 igb2:que 0 tps 0 0 0 0 0 0 26356 inact 171 igb2:que 1 MB/s 0.00 0.00 0.00 0.00 0.00 0.00 12 cache 73 igb2:que 2 %busy 0 0 0 0 0 0 31570420 free 61 igb2:que 3 167904 igb2:link 5066 ix0:que 0 4714 ix0:que 1 6339 ix0:que 2 4725 ix0:que 3 4722 ix0:que 4 5415 ix0:que 5 4597 ix0:que 6 5156 ix0:que 7 ix0:link 2 2002 cpu10: tim 2002 cpu1: time 2002 cpu8: time 2002 cpu5: time 2002 cpu6: time 2002 cpu4: time 2002 cpu2: time 2002 cpu7: time 2002 cpu3: time 2002 cpu11: tim 2002 cpu9: time netstat -Q Configuration: Setting Value Maximum Thread count 1 1 Default queue limit 4096 10240 Direct dispatch enabled n/a Forced direct dispatch enabled n/a Threads bound to CPUs disabled n/a Protocols: Name Proto QLimit Policy Flags ip 1 10240 flow --- igmp 2 4096 source --- rtsock 3 4096 source --- arp 7 4096 source --- Workstreams: WSID CPU Name Len WMark Disp'd HDisp'd QDrops Queued Handled 0 0 ip 0 0 88920739 0 0 0 88920739 igmp 0 0 0 0 0 0 0 rtsock 0 1 0 0 0 9 9 arp 0 0 25061 0 0 0 25061 vmstat -i interrupt total rate irq9: acpi0 2 0 irq16: ehci0 24087 1 irq23: ehci1 32583 2 cpu0: timer 31767670 1999 irq256: isci0 13858 0 irq258: isci0 1 0 irq260: igb0:que 0 344581 21 irq261: igb0:que 1 324153 20 irq262: igb0:que 2 296783 18 irq263: igb0:que 3 301545 18 irq264: igb0:link 2 0 irq270: igb2:que 0 154219524 9709 irq271: igb2:que 1 159906729 10067 irq272: igb2:que 2 167908305 10570 irq273: igb2:que 3 164975173 10386 irq274: igb2:link 1 0 irq280: ix0:que 0 88052295 5543 irq281: ix0:que 1 77786207 4897 irq282: ix0:que 2 99402611 6258 irq283: ix0:que 3 81112312 5106 irq284: ix0:que 4 57377517 3612 irq285: ix0:que 5 79059908 4977 irq286: ix0:que 6 69872898 4398 irq287: ix0:que 7 85544261 5385 irq288: ix0:link 1 0 cpu10: timer 31759554 1999 cpu1: timer 31759527 1999 cpu8: timer 31759553 1999 cpu5: timer 31759555 1999 cpu6: timer 31759549 1999 cpu4: timer 31759527 1999 cpu2: timer 31759513 1999 cpu7: timer 31759529 1999 cpu3: timer 31759492 1999 cpu11: timer 31759555 1999 cpu9: timer 31759545 1999 Total 1667677906 104991 Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
dagtkrus Опубликовано 31 марта, 2013 · Жалоба Попробовали сегодня поменять параметры net.inet.ip.fastforwarding=0 net.isr.maxthreads=4 net.isr.direct=0 net.isr.direct_force=0 net.isr.bindthreads=1 Канал поднялся до 600 мбит/с, и опять начались те же проблемы, причем если в предыдущем конфиге пинг в интернет всегда держался на уровне 200мс, то в этой ситуации постепенно увеличивается до 500-600мс и выше. top -SHPI last pid: 30840; load averages: 11.49, 11.69, 9.99 up 0+00:38:34 12:19:56 263 processes: 24 running, 140 sleeping, 99 waiting CPU 0: 0.0% user, 0.0% nice, 0.7% system, 98.5% interrupt, 0.7% idle CPU 1: 1.9% user, 0.0% nice, 66.2% system, 10.9% interrupt, 21.1% idle CPU 2: 1.5% user, 0.0% nice, 64.4% system, 7.9% interrupt, 26.2% idle CPU 3: 4.5% user, 0.0% nice, 68.5% system, 10.5% interrupt, 16.5% idle CPU 4: 1.5% user, 0.0% nice, 65.4% system, 9.8% interrupt, 23.3% idle CPU 5: 1.1% user, 0.0% nice, 54.9% system, 16.5% interrupt, 27.4% idle CPU 6: 1.1% user, 0.0% nice, 54.7% system, 11.6% interrupt, 32.6% idle CPU 7: 1.9% user, 0.0% nice, 56.6% system, 10.5% interrupt, 31.1% idle CPU 8: 1.5% user, 0.0% nice, 67.7% system, 5.6% interrupt, 25.2% idle CPU 9: 0.0% user, 0.0% nice, 0.4% system, 97.4% interrupt, 2.3% idle CPU 10: 0.0% user, 0.0% nice, 0.8% system, 98.1% interrupt, 1.1% idle CPU 11: 0.0% user, 0.0% nice, 0.7% system, 97.0% interrupt, 2.2% idle Mem: 104M Active, 20M Inact, 750M Wired, 232K Cache, 32M Buf, 30G Free Swap: 4096M Total, 4096M Free PID USERNAME PRI NICE SIZE RES STATE C TIME WCPU COMMAND 12 root -44 - 0K 1648K CPU11 11 27:24 100.00% intr{swi1: netisr 11} 12 root -44 - 0K 1648K CPU0 0 27:10 100.00% intr{swi1: netisr 0} 12 root -44 - 0K 1648K CPU9 9 27:00 100.00% intr{swi1: netisr 9} 12 root -44 - 0K 1648K CPU10 10 26:52 100.00% intr{swi1: netisr 10} 12 root -32 - 0K 1648K WAIT 8 18:39 53.17% intr{swi4: clock} 1424 root 106 0 156M 93716K CPU3 3 19:19 45.75% mpd5{mpd5} 1424 root 76 0 156M 93716K nanslp 4 0:00 44.29% mpd5{mpd5} 1448 root -16 - 0K 192K sleep 4 10:47 36.57% ng_queue{ng_queue1} 1448 root -16 - 0K 192K sleep 4 10:49 36.47% ng_queue{ng_queue5} 1448 root -16 - 0K 192K RUN 11 10:47 36.38% ng_queue{ng_queue9} 1448 root -16 - 0K 192K CPU4 1 10:47 36.08% ng_queue{ng_queue3} 1448 root -16 - 0K 192K CPU5 1 10:48 35.25% ng_queue{ng_queue11} 1448 root -16 - 0K 192K sleep 7 10:48 35.16% ng_queue{ng_queue4} 1448 root -16 - 0K 192K CPU6 6 10:46 35.06% ng_queue{ng_queue0} 1448 root -16 - 0K 192K RUN 4 10:49 34.86% ng_queue{ng_queue2} 1448 root -16 - 0K 192K sleep 1 10:49 34.18% ng_queue{ng_queue8} 1448 root -16 - 0K 192K sleep 1 10:47 33.89% ng_queue{ng_queue7} 1448 root -16 - 0K 192K sleep 8 10:47 33.59% ng_queue{ng_queue10} 1448 root -16 - 0K 192K CPU7 7 10:47 33.40% ng_queue{ng_queue6} 11 root 171 ki31 0K 192K CPU6 6 16:39 31.98% idle{idle: cpu6} 11 root 171 ki31 0K 192K RUN 5 16:13 31.05% idle{idle: cpu5} 11 root 171 ki31 0K 192K CPU4 4 16:10 24.76% idle{idle: cpu4} 11 root 171 ki31 0K 192K RUN 3 14:34 24.66% idle{idle: cpu3} 11 root 171 ki31 0K 192K RUN 7 16:43 23.58% idle{idle: cpu7} 11 root 171 ki31 0K 192K RUN 8 14:59 23.49% idle{idle: cpu8} 11 root 171 ki31 0K 192K RUN 2 14:36 23.19% idle{idle: cpu2} 11 root 171 ki31 0K 192K RUN 1 14:46 15.97% idle{idle: cpu1} 12 root -68 - 0K 1648K WAIT 7 1:09 3.86% intr{irq303: ix0:que } 12 root -68 - 0K 1648K WAIT 6 1:05 3.56% intr{irq302: ix0:que } 12 root -68 - 0K 1648K WAIT 1 0:53 3.56% intr{irq297: ix0:que } 12 root -68 - 0K 1648K WAIT 5 1:09 3.17% intr{irq301: ix0:que } 12 root -68 - 0K 1648K WAIT 2 0:53 3.08% intr{irq298: ix0:que } 12 root -68 - 0K 1648K WAIT 4 1:01 2.88% intr{irq300: ix0:que } 12 root -68 - 0K 1648K WAIT 9 0:57 2.69% intr{irq283: igb2:que} 12 root -68 - 0K 1648K WAIT 5 0:53 2.69% intr{irq279: igb2:que} 12 root -68 - 0K 1648K WAIT 0 0:50 2.69% intr{irq296: ix0:que } 12 root -68 - 0K 1648K WAIT 3 0:56 2.59% intr{irq299: ix0:que } 12 root -68 - 0K 1648K WAIT 8 1:02 2.39% intr{irq282: igb2:que} 12 root -68 - 0K 1648K WAIT 6 0:56 2.39% intr{irq280: igb2:que} 12 root -68 - 0K 1648K WAIT 7 0:54 2.39% intr{irq281: igb2:que} netstat -hdw1 input (Total) output packets errs idrops bytes packets errs bytes colls drops 167k 0 0 86M 189k 0 143M 0 0 169k 0 0 87M 194k 0 146M 0 0 172k 0 0 90M 195k 0 149M 0 0 170k 0 0 88M 195k 0 147M 0 0 169k 0 0 88M 193k 0 145M 0 0 169k 0 0 85M 192k 0 143M 0 0 172k 0 0 89M 196k 0 148M 0 0 171k 0 0 89M 194k 0 149M 0 0 166k 0 0 84M 190k 0 144M 0 0 167k 0 0 85M 189k 0 143M 0 0 systat -v 3 users Load 11.45 11.68 10.14 Mar 31 12:21 Mem:KB REAL VIRTUAL VN PAGER SWAP PAGER Tot Share Tot Share Free in out in out Act 125616 7464 630224 9284 31561k count All 370844 9000 1074565k 19340 pages Proc: Interrupts r p d s w Csw Trp Sys Int Sof Flt 365 cow 154k total 1 56 565k 1144 5516 130k 1078 1069 452 zfod acpi0 irq9 ozfod 2 ehci0 16 41.5%Sys 39.8%Intr 1.6%User 0.0%Nice 17.1%Idle %ozfod 3 ehci1 23 | | | | | | | | | | | daefr 2000 cpu0: time =====================++++++++++++++++++++ 443 prcfr 1 isci0 256 18 dtbuf 2564 totfr isci0 258 Namei Name-cache Dir-cache 587054 desvn react 17 igb0:que 0 Calls hits % hits % 819 numvn pdwak 10 igb0:que 1 672 671 100 281 frevn pdpgs 14 igb0:que 2 intrn 12 igb0:que 3 Disks da0 da1 cd0 pass0 pass1 pass2 769412 wire 11 igb0:que 4 KB/t 12.00 0.00 0.00 0.00 0.00 0.00 106412 act 10 igb0:que 5 tps 1 0 0 0 0 0 20856 inact 12 igb0:que 6 MB/s 0.02 0.00 0.00 0.00 0.00 0.00 232 cache 11 igb0:que 7 %busy 0 0 0 0 0 0 31561160 free igb0:link 33808 buf 8478 igb2:que 0 7888 igb2:que 1 7944 igb2:que 2 7848 igb2:que 3 7911 igb2:que 4 8296 igb2:que 5 7765 igb2:que 6 7891 igb2:que 7 igb2:link 8735 ix0:que 0 8117 ix0:que 1 7883 ix0:que 2 7554 ix0:que 3 8638 ix0:que 4 9220 ix0:que 5 7808 ix0:que 6 8120 ix0:que 7 ix0:link 3 2000 cpu10: tim 2000 cpu2: time 2000 cpu1: time 2000 cpu11: tim 2000 cpu4: time 2000 cpu9: time 2000 cpu5: time 2000 cpu6: time 2000 cpu3: time 2000 cpu7: time 2000 cpu8: time netstat -Q Configuration: Setting Value Maximum Thread count 4 4 Default queue limit 4096 10240 Direct dispatch disabled n/a Forced direct dispatch disabled n/a Threads bound to CPUs enabled n/a Protocols: Name Proto QLimit Policy Flags ip 1 10240 flow --- igmp 2 4096 source --- rtsock 3 4096 source --- arp 7 4096 source --- Workstreams: WSID CPU Name Len WMark Disp'd HDisp'd QDrops Queued Handled 0 0 ip 6472 8973 0 0 0 103664057 103650880 igmp 0 0 0 0 0 0 0 rtsock 0 1 0 0 0 9 9 arp 0 0 0 0 0 0 0 9 9 ip 2843 8776 0 0 0 98506488 98498099 igmp 0 0 0 0 0 0 0 rtsock 0 0 0 0 0 0 0 arp 0 1 0 0 0 3 3 10 10 ip 1065 7887 0 0 0 93391025 93386449 igmp 0 0 0 0 0 0 0 rtsock 0 0 0 0 0 0 0 arp 0 0 0 0 0 0 0 11 11 ip 4338 10240 0 0 2116 103630632 103619422 igmp 0 0 0 0 0 0 0 rtsock 0 0 0 0 0 0 0 arp 0 5 0 0 0 6859 6859 vmstat -i interrupt total rate irq9: acpi0 2 0 irq16: ehci0 3769 1 irq23: ehci1 5120 2 cpu0: timer 4914382 1999 irq256: isci0 3859 1 irq258: isci0 1 0 irq260: igb0:que 0 33525 13 irq261: igb0:que 1 30540 12 irq262: igb0:que 2 30467 12 irq263: igb0:que 3 30746 12 irq264: igb0:que 4 28763 11 irq265: igb0:que 5 29151 11 irq266: igb0:que 6 24795 10 irq267: igb0:que 7 24844 10 irq268: igb0:link 2 0 irq278: igb2:que 0 22568799 9181 irq279: igb2:que 1 21717911 8835 irq280: igb2:que 2 21657772 8811 irq281: igb2:que 3 22251139 9052 irq282: igb2:que 4 22408394 9116 irq283: igb2:que 5 23304270 9480 irq284: igb2:que 6 22086868 8985 irq285: igb2:que 7 22362914 9098 irq286: igb2:link 2 0 irq296: ix0:que 0 19434941 7906 irq297: ix0:que 1 17356746 7061 irq298: ix0:que 2 17150077 6977 irq299: ix0:que 3 17563661 7145 irq300: ix0:que 4 19556851 7956 irq301: ix0:que 5 21332227 8678 irq302: ix0:que 6 17386269 7073 irq303: ix0:que 7 18963442 7714 irq304: ix0:link 1 0 cpu10: timer 4906238 1996 cpu2: timer 4906233 1996 cpu1: timer 4906214 1996 cpu11: timer 4906250 1996 cpu4: timer 4906227 1996 cpu9: timer 4906236 1996 cpu5: timer 4906228 1996 cpu6: timer 4906250 1996 cpu3: timer 4906219 1996 cpu7: timer 4906233 1996 cpu8: timer 4906225 1996 Total 386230803 157132 Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
dagtkrus Опубликовано 31 марта, 2013 · Жалоба Попробовали убрать плату Intel I350 F2 (мультимод) и дать интернет через встроенную плату с медным портом, но так же igb. Тоже ничего не дало. Осталось только проверить без гигабитных igb и задействовать оба 10Г порта, но даже если заработает, то такая ситуация не устроит, потому что интернет надо подать через cisco sce2020, а там только гигабитные порты :( Сейчас опять в работе старый сервер. Для примера, в данный момент канал через него нагружен на 950 мбит/с, абонентов подключено ~3500. netstat -hdw1 input (Total) output packets errs idrops bytes packets errs bytes colls drops 264k 0 0 145M 291k 0 229M 0 0 266k 0 0 144M 291k 0 227M 0 0 262k 0 0 142M 286k 0 222M 0 0 255k 0 0 139M 280k 0 218M 0 0 209k 0 0 137M 210k 0 139M 0 0 262k 0 0 144M 287k 0 224M 0 0 261k 0 0 142M 286k 0 222M 0 0 top -SHPI last pid: 25965; load averages: 3.68, 3.55, 3.30 up 0+01:03:38 11:01:00 131 processes: 12 running, 77 sleeping, 42 waiting CPU 0: 4.0% user, 0.0% nice, 30.2% system, 0.0% interrupt, 65.8% idle CPU 1: 1.8% user, 0.0% nice, 35.0% system, 7.1% interrupt, 56.2% idle CPU 2: 1.3% user, 0.0% nice, 68.0% system, 0.0% interrupt, 30.7% idle CPU 3: 7.1% user, 0.0% nice, 37.6% system, 2.2% interrupt, 53.1% idle CPU 4: 5.8% user, 0.0% nice, 35.8% system, 8.0% interrupt, 50.4% idle CPU 5: 7.1% user, 0.0% nice, 29.2% system, 14.2% interrupt, 49.6% idle CPU 6: 1.3% user, 0.0% nice, 31.1% system, 0.0% interrupt, 67.6% idle CPU 7: 2.2% user, 0.0% nice, 2.7% system, 32.9% interrupt, 62.2% idle Mem: 100M Active, 29M Inact, 317M Wired, 92K Cache, 49M Buf, 3430M Free Swap: 4096M Total, 4096M Free PID USERNAME PRI NICE SIZE RES STATE C TIME WCPU COMMAND 11 root 171 ki31 0K 128K CPU6 6 46:57 82.08% {idle: cpu6} 11 root 171 ki31 0K 128K CPU7 7 42:31 66.16% {idle: cpu7} 11 root 171 ki31 0K 128K RUN 3 39:48 65.87% {idle: cpu3} 11 root 171 ki31 0K 128K CPU0 0 39:59 63.09% {idle: cpu0} 0 root -68 0 0K 416K CPU2 2 31:48 59.47% {em0 taskq} 11 root 171 ki31 0K 128K RUN 4 41:10 55.76% {idle: cpu4} 966 root 108 0 208M 117M CPU4 5 38:05 55.27% {mpd5} 11 root 171 ki31 0K 128K CPU5 5 42:33 42.29% {idle: cpu5} 12 root -32 - 0K 672K WAIT 4 15:58 40.38% {swi4: clock} 11 root 171 ki31 0K 128K RUN 2 27:58 38.57% {idle: cpu2} 11 root 171 ki31 0K 128K CPU1 1 40:04 38.48% {idle: cpu1} 12 root -68 - 0K 672K WAIT 7 16:12 30.96% {irq275: em1:rx 0 1037 root -16 - 0K 128K sleep 5 9:52 20.56% {ng_queue6} 1037 root -16 - 0K 128K RUN 2 9:52 20.36% {ng_queue5} 1037 root -16 - 0K 128K sleep 4 9:51 20.36% {ng_queue1} 1037 root -16 - 0K 128K sleep 0 9:52 19.87% {ng_queue3} 1037 root -16 - 0K 128K sleep 6 9:52 19.78% {ng_queue0} 1037 root -16 - 0K 128K sleep 1 9:53 19.48% {ng_queue2} 1037 root -16 - 0K 128K sleep 6 9:52 19.19% {ng_queue4} 1037 root -16 - 0K 128K sleep 6 9:52 19.09% {ng_queue7} 12 root -68 - 0K 672K WAIT 7 2:25 3.27% {irq276: em1:tx 0 0 root -68 0 0K 416K - 0 0:43 0.98% {em1 txq} Странно что сервер по характеристикам слабее, но работает на порядок лучше. Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
kayot Опубликовано 31 марта, 2013 (изменено) · Жалоба Я конечно в ваших BSD ни в зуб ногой, но визуально - никаких проблем ни с одним компонентом нет. Вот только поверх IGBшных очередей у вас работает netisr, 'распределяя' всю нагрузку на 4 ядра. Убейте его и наступит счастье, IMHO. Недосмотрел, действительно чудеса. Изменено 31 марта, 2013 пользователем kayot Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
dagtkrus Опубликовано 31 марта, 2013 · Жалоба Я конечно в ваших BSD ни в зуб ногой, но визуально - никаких проблем ни с одним компонентом нет. Вот только поверх IGBшных очередей у вас работает netisr, 'распределяя' всю нагрузку на 4 ядра. Убейте его и наступит счастье, IMHO. изначально пробовали без netisr, ситуация была такая же :( Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
Ivan_83 Опубликовано 31 марта, 2013 · Жалоба Дрова сетевух тюньте. Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
dagtkrus Опубликовано 31 марта, 2013 · Жалоба Дрова сетевух тюньте. подскажите как, если не сложно. Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
littlesavage Опубликовано 31 марта, 2013 · Жалоба hw.intr_storm_threshold попробуйте увеличить. А kern.hz какой? Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
dagtkrus Опубликовано 1 апреля, 2013 · Жалоба hw.intr_storm_threshold попробуйте увеличить. А kern.hz какой? Попробовал увеличить hw.intr_storm_threshold до 15000, 20т, 30т, не помогло. kern.hz=1000 попробовал все переключить на 10Г плату, ситуация та же самая. Процессор грузит именно тот порт который смотрит в интернет. last pid: 46985; load averages: 26.20, 22.02, 19.08 up 0+05:51:21 11:00:30 274 processes: 34 running, 161 sleeping, 78 waiting, 1 lock CPU 0: 0.4% user, 0.0% nice, 16.1% system, 83.5% interrupt, 0.0% idle CPU 1: 0.7% user, 0.0% nice, 31.8% system, 67.4% interrupt, 0.0% idle CPU 2: 0.4% user, 0.0% nice, 27.0% system, 72.7% interrupt, 0.0% idle CPU 3: 0.0% user, 0.0% nice, 31.1% system, 68.9% interrupt, 0.0% idle CPU 4: 0.4% user, 0.0% nice, 22.0% system, 77.6% interrupt, 0.0% idle CPU 5: 0.4% user, 0.0% nice, 22.0% system, 77.6% interrupt, 0.0% idle CPU 6: 0.4% user, 0.0% nice, 25.4% system, 74.3% interrupt, 0.0% idle CPU 7: 0.4% user, 0.0% nice, 26.2% system, 73.4% interrupt, 0.0% idle CPU 8: 0.0% user, 0.0% nice, 89.9% system, 10.1% interrupt, 0.0% idle CPU 9: 0.0% user, 0.0% nice, 90.3% system, 9.0% interrupt, 0.7% idle CPU 10: 0.4% user, 0.0% nice, 88.8% system, 10.8% interrupt, 0.0% idle CPU 11: 0.0% user, 0.0% nice, 90.6% system, 9.4% interrupt, 0.0% idle Mem: 99M Active, 116M Inact, 916M Wired, 100K Cache, 282M Buf, 30G Free Swap: 4096M Total, 4096M Free PID USERNAME PRI NICE SIZE RES STATE C TIME WCPU COMMAND 12 root -68 - 0K 1360K WAIT 0 24:32 84.47% intr{irq287: ix1:que } 12 root -68 - 0K 1360K WAIT 5 23:55 79.30% intr{irq292: ix1:que } 12 root -68 - 0K 1360K CPU7 7 25:42 76.17% intr{irq294: ix1:que } 12 root -68 - 0K 1360K RUN 6 25:33 73.19% intr{irq293: ix1:que } 12 root -68 - 0K 1360K WAIT 4 22:15 71.97% intr{irq291: ix1:que } 12 root -32 - 0K 1360K CPU1 1 45:56 65.77% intr{swi4: clock} 12 root -68 - 0K 1360K CPU3 3 23:42 64.16% intr{irq290: ix1:que } 12 root -68 - 0K 1360K *netgr 2 22:47 62.35% intr{irq289: ix1:que } 12 root -68 - 0K 1360K WAIT 1 24:17 60.99% intr{irq288: ix1:que } 1175 root -16 - 0K 192K RUN 3 21:50 43.99% ng_queue{ng_queue4} 1175 root -16 - 0K 192K CPU9 9 21:46 43.90% ng_queue{ng_queue6} 1175 root -16 - 0K 192K RUN 11 21:51 43.26% ng_queue{ng_queue7} 1175 root -16 - 0K 192K CPU5 3 21:57 42.38% ng_queue{ng_queue8} 1175 root -16 - 0K 192K CPU1 1 21:54 40.87% ng_queue{ng_queue11} 1175 root -16 - 0K 192K RUN 9 21:56 40.77% ng_queue{ng_queue5} 1175 root -16 - 0K 192K RUN 10 21:49 40.77% ng_queue{ng_queue0} 1175 root -16 - 0K 192K RUN 8 21:48 40.77% ng_queue{ng_queue3} 1175 root -16 - 0K 192K CPU8 8 21:49 40.67% ng_queue{ng_queue10} 1175 root -16 - 0K 192K CPU10 11 21:51 40.58% ng_queue{ng_queue1} 1175 root -16 - 0K 192K RUN 7 21:47 40.48% ng_queue{ng_queue9} 1175 root -16 - 0K 192K CPU4 4 21:56 40.28% ng_queue{ng_queue2} 0 root -68 0 0K 944K - 4 1:55 10.06% kernel{ix1 que} 0 root -68 0 0K 944K - 6 2:43 7.28% kernel{ix1 que} 0 root -68 0 0K 944K - 1 2:45 6.69% kernel{ix1 que} 0 root -68 0 0K 944K - 5 2:50 5.57% kernel{ix1 que} 0 root -68 0 0K 944K - 7 2:55 5.18% kernel{ix1 que} 0 root -68 0 0K 944K - 6 2:59 3.66% kernel{ix1 que} 0 root -68 0 0K 944K - 1 2:56 3.56% kernel{ix1 que} 0 root -68 0 0K 944K - 7 3:10 2.69% kernel{ix1 que} 12 root -68 - 0K 1360K RUN 2 6:41 2.59% intr{irq280: ix0:que } 12 root -68 - 0K 1360K WAIT 6 9:46 2.20% intr{irq284: ix0:que } 12 root -68 - 0K 1360K WAIT 3 9:21 2.20% intr{irq281: ix0:que } 12 root -68 - 0K 1360K WAIT 1 7:16 2.20% intr{irq279: ix0:que } 12 root -68 - 0K 1360K WAIT 4 7:02 1.95% intr{irq282: ix0:que } 12 root -68 - 0K 1360K RUN 7 8:06 1.76% intr{irq285: ix0:que } 12 root -68 - 0K 1360K WAIT 5 6:26 1.56% intr{irq283: ix0:que } 12 root -68 - 0K 1360K WAIT 0 7:23 1.37% intr{irq278: ix0:que } Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
dagtkrus Опубликовано 1 апреля, 2013 · Жалоба Возможна ли проблема из за несовместимости какого либо железа? Если да, то есть ли способы это проверить? Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
kirush Опубликовано 1 апреля, 2013 · Жалоба Возможен ли банальный flood из сети? Посмотрите tcpdump на пакеты arp. Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
dagtkrus Опубликовано 2 апреля, 2013 · Жалоба ок, сегодня посмотрю, но даже если и флуд, то машинка послабее спокойно с ним справляется, а эта - никак не хочет. Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
kirush Опубликовано 2 апреля, 2013 · Жалоба Глюк периодический или на постоянной основе? Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
dagtkrus Опубликовано 2 апреля, 2013 · Жалоба Глюк периодический или на постоянной основе? Глюк постоянный, как только нагрузка по каналу приблизится до 400 мбит. У нас сейчас работает старый сервер, нагрузка вечером под Гигабит. Днем- 700-900, pptp сессий спокойно держит около 4000, 250-280 pps. Необходимо его заменить. Сеть рабочая поэтому постоянно эксперементировать не получается. Мы переключаем его рано утром, ближе к 9-10 часам наступает нагрузка под 400 мбит, увеличивается количество подключенных абонентов примерно до 3000, и внезапно подскакивает нагрузка процессоров. После чего опять возвращаем на старый, и пытаемся шаманить. И так каждый день :) В момент подскока ничего не обычного не замечено, то есть нет резкого увеличения канала, pps, либо активных pptp сессий. Сервер утром начинает работать нормально, нагрузка всех ядер не более 8-10%, и вдруг резко увеличивается сразу до 99-100. Проверяли без нагрузки, максимум 3-4 активных клиента, работал несколько дней без проблем. Так же пробовал нагрузить iperf`ом, максимум что смог - 50-60к pps, 500 mbit/c, - сервер работал нормально. Как сымитировать 4000 pptp сессий чтобы проверить, не знаю. Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
kayot Опубликовано 2 апреля, 2013 · Жалоба А если эксперимента ради убрать один CPU физически? Возможны эпические ситуации, когда сетевка подключена к pci-e контроллеру одного физического ЦП, прерывания прибиты на другой, а трафик в итоге нужно пропустить обратно на первый. Ну и второй эксперимент, склонировать BSD с рабочей машины. Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
dagtkrus Опубликовано 2 апреля, 2013 · Жалоба kayot что подразумеваете под "склонировать"? на рабочей машине стоит 8.2 stable, на новый изначально ставили ту же самую, конфиг полностью 1 к 1. Сегодня попросили у знакомых другой сервер, правда тоже двухпроцессорный, поставили на него наши карты. Утром запустим его, проверим. Если не поможет, то попробуем завтра снять один процессор с нашей машины, и проверим. Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
terrible Опубликовано 2 апреля, 2013 · Жалоба Попробуйте вот так: # cat /boot/loader.conf | grep hw.igb.rx_process_limit hw.igb.rx_process_limit=-1 Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
kayot Опубликовано 2 апреля, 2013 · Жалоба dagtkrus Склонировать - сделать побайтную копию винта, как бы сами собой устранятся все возможные различия в настройках софта. Я обычно linux-маршрутизаторы так и переношу/клонирую, что б ничего не забыть. А сами сетевки проверять на другом сервере лишено смысла, они могут потери давать или машину вешать при аппаратных проблемах, но не загрузку ж давать.. Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
littlesavage Опубликовано 2 апреля, 2013 · Жалоба Попробовал увеличить hw.intr_storm_threshold до 15000, 20т, 30т, не помогло. kern.hz=1000 vmstat -i у вас просто показывал близкие к пороговым rate'ы https://wiki.freebsd.org/NetworkPerformanceTuning смотрели уже, наверно? Все же стоит попробовать 9-STABLE. Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
dagtkrus Опубликовано 3 апреля, 2013 · Жалоба https://wiki.freebsd.org/NetworkPerformanceTuning смотрели уже, наверно? сегодня попробовали, не помогло. Все же стоит попробовать 9-STABLE. Ставили 9.1 Stable, то же самое. Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
dagtkrus Опубликовано 3 апреля, 2013 · Жалоба на другом сервере та же ситуация, ничего не изменилось. попробуем сегодня снять 1 процессор. Кстати, на новом сервере процессор 6-ти ядерный, на том что сегодня ночью меняли - тоже. На одном из старых которые работают,- один 4-х ядерный, на втором - два 4-х ядерных. Это может как то влиять? так же помимо сетевых, нагружается процесс intr{swi4: clock}. Это нормально? Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
polmax Опубликовано 3 апреля, 2013 · Жалоба нагружается процесс intr{swi4: clock}. Это нормально? Если нагружается сильно то нет, не нормально. Понизте hz до 100 Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
dagtkrus Опубликовано 5 апреля, 2013 · Жалоба Сняли один процессор, как посоветовал kayot. Прошли сутки, сервер работает нормально. Нагрузка плавно поднимается до 80-85% в "час пик" и 40-50% в остальное время. С увеличением трафика наверняка еще поднимется. Что посоветуете сделать? Вернуть второй процессор и пытаться привязать все прерывания на 1 проц, если это возможно. Либо сделать апгрейд процессора? Если апргрейд то какой лучше выбрать? Почитал форум, некоторые советуют Xeon E3, некоторые Core-i7. Материнка сейчас стоит Supermicro X9DRW-3LN4F+, Dual socket R (LGA 2011). Процессор - E5-2620 2.0 ГГц / 6core /. Как вариант попроще - заменить его на Intel Xeon E5-2680 2.7 ГГц / 8core / Замена на другой процессор, повлечет замену платформы. Подскажите, что лучше сделать? Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
homeuser Опубликовано 5 апреля, 2013 · Жалоба Мать X9DRW-3LN4F+ мудреная из описания: (Both CPUs need to be installed for full access to PCI-E slots and onboard controllers. See manual block diagram for details.) следовательно: 10г карту к одному процу подключить и туда привязать её прерывания, em0 и em1 - к другому и аналогично привязать прерывания. так бы потестить, шейпер попробовать привязать к ядрам одного проца и посмотреть нагрузку, а потом к ядрам другого и тоже посмотреть нагрузку... Дело в межпроцессорных коммуникациях - медленные они, относительно. и уже если никак тогда смотреть возможность подключить все к одному процу, если катит - самый мощный проц туда, а если не катит - тогда смена платформы. имхо. Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
dagtkrus Опубликовано 5 апреля, 2013 · Жалоба homeuser сейчас с одним процом уже второй день все нормально, просто на будущее хочу определить, что лучше, сделать апргрейд существующего проца, или поменять платформу. Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...