Перегруз сетевой подсистемы

Проблемы установки, настройки и работы Правильной Операционной Системы

Модератор: terminus

Правила форума
Убедительная просьба юзать теги [cоde] при оформлении листингов.
Сообщения не оформленные должным образом имеют все шансы быть незамеченными.
wel
сержант
Сообщения: 170
Зарегистрирован: 2007-02-27 11:59:41

Перегруз сетевой подсистемы

Непрочитанное сообщение wel » 2009-01-03 18:34:50

Привет Всем
Есть >uname -a

Код: Выделить всё

FreeBSD server 6.2-RELEASE-p12 FreeBSD 6.2-RELEASE-p12 #8: Fri Sep 19 04:46:08 UTC 2008     wel@server:/usr/obj/usr/src/sys/SERVER  i386
Выступает в роли сервера доступа+биллинг(freeradius+freenibs+mysql+mpd4)

Проц 2.8ГГц, и вроде 512Мб озу

ЯДРО:

Код: Выделить всё

options         SCHED_ULE
options NETGRAPH
options NETGRAPH_IPFW
options NETGRAPH_ASYNC
options NETGRAPH_BPF
options NETGRAPH_BRIDGE
options NETGRAPH_CISCO
options NETGRAPH_DEVICE
options NETGRAPH_ECHO
options NETGRAPH_EIFACE
options NETGRAPH_ETHER
options NETGRAPH_GIF
options NETGRAPH_GIF_DEMUX
options NETGRAPH_TAG
options NETGRAPH_TCPMSS
options NETGRAPH_FEC
options NETGRAPH_HOLE
options NETGRAPH_IFACE
options NETGRAPH_IP_INPUT
options NETGRAPH_KSOCKET
options NETGRAPH_L2TP
options NETGRAPH_LMI
options NETGRAPH_NETFLOW
options NETGRAPH_ONE2MANY
options NETGRAPH_PPP
options         NETGRAPH_MPPC_ENCRYPTION
options NETGRAPH_PPPOE
options NETGRAPH_PPTPGRE
options NETGRAPH_RFC1490
options NETGRAPH_SOCKET
options NETGRAPH_SPLIT
options NETGRAPH_TEE
options NETGRAPH_TTY
options NETGRAPH_UI
options NETGRAPH_VJC
options NETGRAPH_IPFW
options HZ=2000
options IPFIREWALL
options IPFIREWALL_FORWARD
options IPFIREWALL_VERBOSE
options IPFIREWALL_VERBOSE_LIMIT=100
options DUMMYNET
options TCP_DROP_SYNFIN
options  IPFIREWALL_DEFAULT_TO_ACCEPT
options DEVICE_POLLING
device pf
device pflog
device pfsync
options ALTQ
options ALTQ_CBQ # Class Bases Queuing (CBQ)
options ALTQ_RED # Random Early Detection (RED)
options ALTQ_RIO # RED In/Out
options ALTQ_HFSC # Hierarchical Packet Scheduler (HFSC)
options ALTQ_PRIQ # Priority Queuing (PRIQ)
options ALTQ_CDNR
options TCP_DROP_SYNFIN
Когда человек 150 в онлайне, то загрузка 99.5% interrupt Почти все приходится на swi1: net.
Выключил полинг, сейчас наблюдаю картину при 116 челах, беспокоит статус *Giant.
Сейчас сетевухи - Интел, одна Гигабит, другая 100Мбит.
#top -S

Код: Выделить всё

last pid:  2997;  load averages:  0.34,  0.42,  0.31                                                  up 0+00:53:50  16:38:37
118 processes: 5 running, 95 sleeping, 17 waiting, 1 lock
CPU states: 17.3% user,  0.0% nice,  6.8% system, 39.8% interrupt, 36.1% idle
Mem: 116M Active, 40M Inact, 71M Wired, 68K Cache, 59M Buf, 265M Free
Swap: 510M Total, 510M Free

  PID USERNAME    THR PRI NICE   SIZE    RES STATE    TIME   WCPU COMMAND
   10 root          1 171   52     0K     8K RUN     27:48 39.84% idle
   11 root          1 -44 -163     0K     8K WAIT     9:24 18.75% swi1: net
   32 root          1 -68 -187     0K     8K *Giant   3:21  5.22% irq22: em1
   22 root          1 -68 -187     0K     8K RUN      3:38  2.25% irq17: em0 uhci1+
Поллинг включенный: >sysctl kern.polling.enable=1 спасает от 100% потерь на некоторое время, но при этом пинг поднимается

128 users online Поллинг выкл( sysctl kern.polling.enable=0)

Код: Выделить всё

last pid:  6835;  load averages:  1.00,  0.59,  0.59                                                  up 0+03:06:19  17:30:13
126 processes: 3 running, 104 sleeping, 17 waiting, 2 lock
CPU states: 10.1% user,  0.0% nice,  7.9% system, 64.4% interrupt, 17.6% idle
Mem: 124M Active, 61M Inact, 73M Wired, 4K Cache, 60M Buf, 234M Free
Swap: 510M Total, 510M Free

  PID USERNAME    THR PRI NICE   SIZE    RES STATE    TIME   WCPU COMMAND
   11 root          1 -44 -163     0K     8K WAIT    55:25 28.56% swi1: net
   10 root          1 171   52     0K     8K RUN     44:22 11.23% idle
   32 root          1 -68 -187     0K     8K *Giant  19:58  8.25% irq22: em1
   22 root          1 -68 -187     0K     8K RUN     23:51  3.71% irq17: em0 uhci1+
   12 root          1 -32 -151     0K     8K *Giant  31:17  0.00% swi4: clock sio
>vmstat -w1

Код: Выделить всё

procs      memory      page                   disk   faults      cpu
 r b w     avm    fre  flt  re  pi  po  fr  sr ad8   in   sy  cs us sy id
 3 8 0  462776 237312  163   0   0   0 152   0   0 25821 2730 23547  5 61 34
 3 8 0  462776 237308 1172   0   0   0 1182   0   8 26096 8057 22802 10 80 10
 0 0 0  454236 240304 1317   0   0   0 1935   0   4 25208 11706 23085 18 79  2
 1 0 0  457716 239644  272   0   0   0  90   0   6 25232 8246 21658  2 66 32
 3 0 0  456436 240224   54   0   0   0 176   0   7 27242 1194 20383  4 71 25
 1 0 0  456436 240204   21   0   0   0  27   0   3 26637 4034 22361  4 73 23
 0 0 0  456748 239788  119   0   0   0  26   0   6 23948 4127 22039  5 66 29
 1 0 0  462616 236308 1273   0   0   0 385   0   4 25463 9008 21806 26 72  2
 1 0 0  471812 239124  750   0   0   0 1311   0  93 26199 7326 22850 24 76  0
 1 0 0  456444 240168 1051   0   0   0 1008   0  33 26451 5870 22037 13 74 14
 1 0 0  456444 240176   89   0   0   0  79   0   4 25066 3735 22546  4 73 22
 0 0 0  452920 240928  130   0   0   0 332   0   0 24846 1141 22745  1 73 26
 1 0 0  456424 240232  369   0   1   0 154   0   1 26810 12300 22592  6 75 19
 0 0 0  456468 240136   24   0   0   0   0   0   4 25368  812 22417  4 62 34
 0 0 0  456468 240116   32   0   0   0  30   0   5 24713 3417 22754  6 72 22
 0 0 0  452944 240876  118   0   0   0 310   0   8 24617 1534 22393  4 53 43
 0 0 0  456424 240216  275   0   0   0  90   0   4 23687 8449 22287  1 60 39
 0 0 0  456468 240120   27   0   0   0   4   0   6 25625 1270 21673  3 62 35
 1 0 0  456468 240124   52   0   0   0  50   0   8 25728  757 22187  3 68 29
 0 0 0  452944 240876  121   0   0   0 320   0   4 25264 3446 22844  6 66 28
 0 0 0  456456 240196  277   0   0   0 152   0   2 24381 8545 22689  4 70 26
 0 0 0  456468 240120   20   0   0   0  22   0   0 25028 1401 22276  2 66 32
 0 0 0  456468 240116    8   0   0   0  22   0   4 23781 1189 22172  1 67 32
 3 0 0  454456 240404  342   0   0   0 389   0  51 25435 8853 22588  4 70 25
/>netstat -w1

Код: Выделить всё

            input        (Total)           output
   packets  errs      bytes    packets  errs      bytes colls
     13898     0   10018359      12978     0    9844443     0
     13824     0    9999642      13006     0    9953818     0
     14879     0   10829629      13948     0   10490326     0
     13980     0    9750711      13177     0    9708463     0
     14453     0   10415785      13617     0   10298752     0
     13984     0   10044305      13261     0    9978531     0
     14241     0   10362285      13483     0   10285985     0
     13319     0    9595965      12552     0    9423790     0
     13881     0   10013614      13134     0    9939649     0
     13273     0    9495540      12540     0    9388030     0
     12622     0    8801935      11945     0    8766036     0
     14687     0   10614445      13847     0   10425103     0
     14481     0   10436588      13555     0   10281723     0
     12620     0    8924416      11839     0    8829117     0
     13020     0    9463189      12324     0    9309437     0
     12681     0    9041792      11999     0    8936658     0
     12564     0    8881357      11638     0    8688776     0
     11634     0    8087943      10720     0    7984144     0
     13073     0    9263801      12232     0    9055641     0
     12539     0    8741987      11939     0    8746014     0
/>iostat -w1

Код: Выделить всё

      tty             ad8             cpu
 tin tout  KB/t tps  MB/s  us ni sy in id
   0  197 16.61  10  0.15   5  0  3 58 34
   0  129  0.00   0  0.00   3  0  1 64 32
   0  368 16.00   4  0.06   1  0  4 64 30
   0   43 10.00   2  0.02   1  0  2 53 45
   0  334 16.00   4  0.06   0  0  0 42 58
   0   43 10.00   2  0.02   2  0  0 58 41
   0  507 16.00   4  0.06   2  0  3 49 47
   0  149 14.89   9  0.13   1  0  2 54 44
   0  236 10.00   2  0.02   1  0  2 47 51
   0   43  0.00   0  0.00   1  0  1 51 47
   0  454 16.00   4  0.06   4  0  8 55 34
   0  149 16.00   4  0.06   2  0  1 47 50
   0  784 16.00   8  0.12   6  0  2 47 46
   0  149 14.59  17  0.24   2  0  2 61 36
   0  682 15.29  14  0.21   1  0  0 60 40
   0  149 19.42  72  1.36   1  0  3 44 52
   0  372 14.33   6  0.08   2  0  3 56 40
   0  149 14.33   6  0.08   1  0  1 65 34
   0  522 16.00   4  0.06   1  0  2 59 39
   0  149 14.33   6  0.08   2  0  2 48 48
>cat /etc/sysctl.conf|grep -v #

Код: Выделить всё

net.inet.ip.fastforwarding=1
kern.maxfiles=128000
kern.maxfilesperproc=65000
net.inet.ip.intr_queue_maxlen=1000
kern.ipc.maxsockbuf=1048576
kern.polling.idle_poll=1
kern.polling.user_frac=50
kern.polling.enable=0
net.graph.maxdgram=524288
net.graph.recvspace=524288
net.inet.ip.fw.autoinc_step=1
net.inet.ip.random_id=1
net.inet.tcp.blackhole=2
net.inet.udp.blackhole=1
net.inet.icmp.drop_redirect=1
net.inet.ip.redirect=0
net.inet6.ip6.redirect=0
security.bsd.see_other_uids=0
security.bsd.see_other_gids=0
net.inet.ip.fw.debug=0
net.inet.ip.fw.one_pass=0
net.inet.icmp.icmplim_output=0
net.inet.icmp.icmplim=1000
net.inet.tcp.msl=7500
net.inet.ip.ttl=128
net.inet.icmp.bmcastecho=0
security.bsd.conservative_signals=1
security.bsd.unprivileged_proc_debug=0
security.bsd.unprivileged_read_msgbuf=0
security.bsd.unprivileged_get_quota=0
security.bsd.hardlink_check_uid=1
security.bsd.hardlink_check_gid=1
kern.sync_on_panic=1
kern.coredump=0
kern.ipc.maxsockets=204800
#ifconfig

Код: Выделить всё

em0: flags=8843<UP,BROADCAST,RUNNING,SIMPLEX,MULTICAST> mtu 1500
        options=b<RXCSUM,TXCSUM,VLAN_MTU>
        inet [b]XXX.XXX.XXX.XXX[/b] netmask 0xfffff800 broadcast 10.200.31.255
        ether 00:15:f2:bc:aa:aa
        media: Ethernet autoselect (100baseTX <full-duplex>)
        status: active
vr0: flags=8843<UP,BROADCAST,RUNNING,SIMPLEX,MULTICAST> mtu 1500
        inet 172.168.1.1 netmask 0xffff0000 broadcast 172.168.255.255
        ether 00:17:9a:bb:b1:75
        media: Ethernet autoselect (100baseTX <full-duplex>)
        status: active
em1: flags=8843<UP,BROADCAST,RUNNING,SIMPLEX,MULTICAST> mtu 1500
        options=b<RXCSUM,TXCSUM,VLAN_MTU>
        ether 00:02:b3:9e:07:e4
        media: Ethernet autoselect (1000baseTX <full-duplex>)
        status: active
plip0: flags=108810<POINTOPOINT,SIMPLEX,MULTICAST,NEEDSGIANT> mtu 1500
pflog0: flags=0<> mtu 33208
lo0: flags=8049<UP,LOOPBACK,RUNNING,MULTICAST> mtu 16384
        inet6 fe80::1%lo0 prefixlen 64 scopeid 0x6
        inet6 ::1 prefixlen 128
        inet 127.0.0.1 netmask 0xff000000
pfsync0: flags=0<> mtu 2020
        syncpeer: 224.0.0.240 maxupd: 128
vlan20: flags=8843<UP,BROADCAST,RUNNING,SIMPLEX,MULTICAST> mtu 1500
        inet [b]XXX.XXX.XXX.XXX[/b] netmask 0xfffffff8 broadcast [b]XXX.XXX.XXX.XXX[/b]
        ether 00:02:b3:9e:07:e4
        media: Ethernet autoselect (1000baseTX <full-duplex>)
        status: active
        vlan: 20 parent interface: em1
Последний раз редактировалось wel 2009-01-04 18:54:35, всего редактировалось 1 раз.

Хостинговая компания Host-Food.ru
Хостинг HostFood.ru
 

Услуги хостинговой компании Host-Food.ru

Хостинг HostFood.ru

Тарифы на хостинг в России, от 12 рублей: https://www.host-food.ru/tariffs/hosting/
Тарифы на виртуальные сервера (VPS/VDS/KVM) в РФ, от 189 руб.: https://www.host-food.ru/tariffs/virtualny-server-vps/
Выделенные сервера, Россия, Москва, от 2000 рублей (HP Proliant G5, Intel Xeon E5430 (2.66GHz, Quad-Core, 12Mb), 8Gb RAM, 2x300Gb SAS HDD, P400i, 512Mb, BBU):
https://www.host-food.ru/tariffs/vydelennyi-server-ds/
Недорогие домены в популярных зонах: https://www.host-food.ru/domains/

Аватара пользователя
Alex Keda
стреляли...
Сообщения: 35437
Зарегистрирован: 2004-10-18 14:25:19
Откуда: Made in USSR
Контактная информация:

Re: Перегруз сетевой подсистемы

Непрочитанное сообщение Alex Keda » 2009-01-03 18:56:48

сообщение оформите нормально
Убей их всех! Бог потом рассортирует...

Аватара пользователя
hizel
дядя поня
Сообщения: 9032
Зарегистрирован: 2007-06-29 10:05:02
Откуда: Выборг

Re: Перегруз сетевой подсистемы

Непрочитанное сообщение hizel » 2009-01-03 19:19:42

обновится до 7.0 релиза?
В дурацкие игры он не играет. Он просто жуткий, чу-чу, паровозик, и зовут его Блейн. Блейн --- это Боль.

wel
сержант
Сообщения: 170
Зарегистрирован: 2007-02-27 11:59:41

Re: Перегруз сетевой подсистемы

Непрочитанное сообщение wel » 2009-01-04 18:56:17

lissyara писал(а):сообщение оформите нормально
сделал
hizel писал(а):обновится до 7.0 релиза?
Нет возможности ==> не знаю как поведет себя биллинг :(

ЗЫ:
Попробую сегодня ВПН сервер отделить от биллинга...

paradox
проходил мимо
Сообщения: 11620
Зарегистрирован: 2008-02-21 18:15:41

Re: Перегруз сетевой подсистемы

Непрочитанное сообщение paradox » 2009-01-04 19:04:25

ULE и 6.2 ?
а если по умолчанию?

и чем вам ненравиться нагрузка на net+

wel
сержант
Сообщения: 170
Зарегистрирован: 2007-02-27 11:59:41

Re: Перегруз сетевой подсистемы

Непрочитанное сообщение wel » 2009-01-05 0:50:02

paradox писал(а):ULE и 6.2 ?
а если по умолчанию?

и чем вам ненравиться нагрузка на net+
ОК кину планировшик БСД
А нагрузка на сеть растет непрерывно...
Такое впечатление что серверу потихоньку чего-то нехватает, он потихоньку доходит до 99% загрузки по interrupt-ам, а потом вообще виснет намертво...
Допустим у Меня была загрузка плд 99% по nterrupt-ам, Я сделал sysctl kern.polling.enable=0, потом sysctl kern.polling.enable=1 и загрузка упала...

paradox
проходил мимо
Сообщения: 11620
Зарегистрирован: 2008-02-21 18:15:41

Re: Перегруз сетевой подсистемы

Непрочитанное сообщение paradox » 2009-01-05 0:56:23

Такое впечатление что серверу потихоньку чего-то нехватает, он потихоньку доходит до 99% загрузки по interrupt-ам, а потом вообще виснет намертво...
ааа даже так

а я думал просто ненравиться нагрузка на net+

wel
сержант
Сообщения: 170
Зарегистрирован: 2007-02-27 11:59:41

Re: Перегруз сетевой подсистемы

Непрочитанное сообщение wel » 2009-01-05 5:14:54

paradox писал(а):
Такое впечатление что серверу потихоньку чего-то нехватает, он потихоньку доходит до 99% загрузки по interrupt-ам, а потом вообще виснет намертво...
ааа даже так

а я думал просто ненравиться нагрузка на net+
FreeBSD 6.2p12
dmesg:
em0: <Intel(R) PRO/1000 Network Connection Version - 6.2.9> port 0xd800-0xd81f mem 0xcffe0000-0xcfffffff irq 17 at device 0.0 on pci2
em0: Ethernet address: 00:15:f2:bc:aa:aa
em0: [GIANT-LOCKED]
Что можно сделать?
ЗЫ:
Наткнулся на cat /var/log/console.log:

Код: Выделить всё

kernel: kern.polling.enable is deprecated. Use ifconfig(8)
Потом:
http://taosecurity.blogspot.com/2006/09 ... lling.html
Попробую так...

Аватара пользователя
hizel
дядя поня
Сообщения: 9032
Зарегистрирован: 2007-06-29 10:05:02
Откуда: Выборг

Re: Перегруз сетевой подсистемы

Непрочитанное сообщение hizel » 2009-01-05 6:45:01

эти локи почти полностью убрали начиная с 7.0 релиза, всетевой полсистеме

использовать

Код: Выделить всё

ifconfig em0 polling
почитать man ifconfig
В дурацкие игры он не играет. Он просто жуткий, чу-чу, паровозик, и зовут его Блейн. Блейн --- это Боль.

wel
сержант
Сообщения: 170
Зарегистрирован: 2007-02-27 11:59:41

Re: Перегруз сетевой подсистемы

Непрочитанное сообщение wel » 2009-01-05 14:34:29

hizel писал(а): использовать

Код: Выделить всё

ifconfig em0 polling
почитать man ifconfig
так сейчас и делаю - полегче + не ULE-планировщик...
ЗЫ:
Была ошибка у Меня в фаерволе

Код: Выделить всё

# ipfw pipe 15108 show
15108:   5.000 Mbit/s    0 ms   50 sl. 1 queues (1 buckets) droptail
    mask: 0x00 0x00000000/0x0000 -> 0x00000000/0x0000
BKT Prot ___Source IP/port____ ____Dest. IP/port____ Tot_pkt/bytes Pkt/Byte Drp
  0 tcp    10.200.252.56/4734    83.99.128.155/15382 3931493 2384652927  3 4200 195

Код: Выделить всё

pipe 15108 ip from not 10.0.0.0/8 to 10.200.252.56 in
pipe 15108 ip from 10.200.252.56 to not 10.0.0.0/8 out
вот такие правила для каждого безлимитного клиента и их порядка 200, так вот когда у Меня они не создавались, то нагрузки на сервер при 130-челах онлайн ~30%, а когда Я исправил и сделал как должно быть то загрузка стала 65~90% по прерываниям...
Я знаю что нужно использовать ng_car раз mpd использую, но пока не получилось завести...

paix
лейтенант
Сообщения: 863
Зарегистрирован: 2007-09-24 12:41:05
Откуда: dn.ua
Контактная информация:

Re: Перегруз сетевой подсистемы

Непрочитанное сообщение paix » 2009-01-05 21:52:01

200 правил фаера на одного клиента не многовато? Недивно, что от подобного становится плохо сетевой подсистеме. Неплохо бы оптимизировать\уменьшить правила...

а поллинг кстати я рекомендовал бы использовать. Не раз спасало, особенно на загруженных роутерах.
With best wishes, Sergej Kandyla

Аватара пользователя
Alex Keda
стреляли...
Сообщения: 35437
Зарегистрирован: 2004-10-18 14:25:19
Откуда: Made in USSR
Контактная информация:

Re: Перегруз сетевой подсистемы

Непрочитанное сообщение Alex Keda » 2009-01-05 23:58:51

ещё есть таблицы....
Убей их всех! Бог потом рассортирует...

paix
лейтенант
Сообщения: 863
Зарегистрирован: 2007-09-24 12:41:05
Откуда: dn.ua
Контактная информация:

Re: Перегруз сетевой подсистемы

Непрочитанное сообщение paix » 2009-01-06 1:35:45

lissyara писал(а):ещё есть таблицы....
в теории потенциально много чего есть ;) Только этож еще и применить нужно....
With best wishes, Sergej Kandyla

Аватара пользователя
Alex Keda
стреляли...
Сообщения: 35437
Зарегистрирован: 2004-10-18 14:25:19
Откуда: Made in USSR
Контактная информация:

Re: Перегруз сетевой подсистемы

Непрочитанное сообщение Alex Keda » 2009-01-06 12:58:02

с таблицами какие-то сложности?
Убей их всех! Бог потом рассортирует...

paix
лейтенант
Сообщения: 863
Зарегистрирован: 2007-09-24 12:41:05
Откуда: dn.ua
Контактная информация:

Re: Перегруз сетевой подсистемы

Непрочитанное сообщение paix » 2009-01-06 13:09:46

lissyara писал(а):с таблицами какие-то сложности?
ты это лучше у топикстартера спроси. Я высказал лишь предположение.
With best wishes, Sergej Kandyla

wel
сержант
Сообщения: 170
Зарегистрирован: 2007-02-27 11:59:41

Re: Перегруз сетевой подсистемы

Непрочитанное сообщение wel » 2009-01-06 19:18:24

paix писал(а):200 правил фаера на одного клиента не многовато? Недивно, что от подобного становится плохо сетевой подсистеме. Неплохо бы оптимизировать\уменьшить правила...

а поллинг кстати я рекомендовал бы использовать. Не раз спасало, особенно на загруженных роутерах.
200 подобных правил всего, то есть на каждого пользователя в онлайне на безлимитном пакете 2-а правила и одна труба(pipe).
У Меня всего 3-и типа безлимита 1Мбит, 5Мбит, и 10Мбит - хотел использовать маски и таблицы, но не получилось...
Тоесть можно было бы сократить правила до 3-х с 200, может кто-нить делал такое?...

Аватара пользователя
Alex Keda
стреляли...
Сообщения: 35437
Зарегистрирован: 2004-10-18 14:25:19
Откуда: Made in USSR
Контактная информация:

Re: Перегруз сетевой подсистемы

Непрочитанное сообщение Alex Keda » 2009-01-06 19:25:29

200 - это мало.
Убей их всех! Бог потом рассортирует...

paix
лейтенант
Сообщения: 863
Зарегистрирован: 2007-09-24 12:41:05
Откуда: dn.ua
Контактная информация:

Re: Перегруз сетевой подсистемы

Непрочитанное сообщение paix » 2009-01-06 19:32:23

wel писал(а): 200 подобных правил всего, то есть на каждого пользователя в онлайне на безлимитном пакете 2-а правила и одна труба(pipe).
У Меня всего 3-и типа безлимита 1Мбит, 5Мбит, и 10Мбит - хотел использовать маски и таблицы, но не получилось...
Тоесть можно было бы сократить правила до 3-х с 200, может кто-нить делал такое?...
я сперва подумал что на каждого пользователя по 200 правил )
Думаю сократить можно. Но всеже 200 правил (всего) это не так много, чтобы на них все затыкалось.

3 безлимита, это каждому из 150и юзеров гарантированно раздать по (1|5|10) мбит ?
With best wishes, Sergej Kandyla

wel
сержант
Сообщения: 170
Зарегистрирован: 2007-02-27 11:59:41

Re: Перегруз сетевой подсистемы

Непрочитанное сообщение wel » 2009-01-06 19:41:16

paix писал(а):
wel писал(а): я сперва подумал что на каждого пользователя по 200 правил )
Думаю сократить можно. Но всеже 200 правил (всего) это не так много, чтобы на них все затыкалось.

3 безлимита, это каждому из 150и юзеров гарантированно раздать по (1|5|10) мбит ?
Вообще-то 300 правил 2*150 :)
Да, в основном надо дать гарантировано 5Мбит...Раньше, когда надо было давать 1 и меньше Мбит - таких проблем не возникало...А вот сейчас почему-то нагрузка...В пиках 40Мбит забито и netstat -w1 показывает до 35тыщ вход и примерно столько же исход. пакетов...
Сейчас собрал 2-ой комп и поставил его как NAS - нагрузка снизилась до приемлемой, но это не выход...
Чем вообще скорость режут(Я собираюсь биллинг делать :))?

Golden Telekom
проходил мимо

Re: Перегруз сетевой подсистемы

Непрочитанное сообщение Golden Telekom » 2009-01-06 23:39:04

Тебя надо уволить за 200 правил, убери правила

wel
сержант
Сообщения: 170
Зарегистрирован: 2007-02-27 11:59:41

Re: Перегруз сетевой подсистемы

Непрочитанное сообщение wel » 2009-01-07 13:53:42

Golden Telekom писал(а):Тебя надо уволить за 200 правил, убери правила
Хм...и чем заменить? :)
Пробовал сделать как тут:
http://itdoc.com.ua/showthread.php?t=339
#ipfw add pipe 1 ip from any to 192.168.0.1
Таким образом весь трафик, идущий на ip 192.168.0.1 в локальной сети
будет ограничен согласно параметрам созданного pipe'а. Для каждого
пользователя в АСР с установленным ограничением скорости нужно создать
свой pipe и соответсвующее правило ipfw.

Это Я сделал
Однако эту задачу можно
несколько упростить, благодаря возможности использовать маску при
создании канала. Продемонстрируем на примере:

#ipfw pipe 1 config mask dst-addr 0xffffffff bw 256Kbits queue 20


Созданный таким образом канал на самом деле является шаблоном, на
основе которго создаются каналы для каждого нового адреса назначения
(dst-addr).

Можно статически прописать шаблоны всех используемых скоростей и с
помощью средств АСР динамически управлять только правилами ipfw,
направляющими трафик в тот или иной канал:

#ipfw pipe 1 config mask dst-addr 0xffffffff bw 64Kbits queue 10
#ipfw pipe 2 config mask dst-addr 0xffffffff bw 128Kbits queue 10
#ipfw pipe 3 config mask dst-addr 0xffffffff bw 256Kbits queue 20
#ipfw pipe 4 config mask dst-addr 0xffffffff bw 512Kbits queue 40
Это не работало...
На самом деле у Меня стоит такая задача:
Пользователь должен ограничиваться по скорости: 1,5,10Мбит
При этом у него должно быть распределение приоритетов трафика:
80% канала portы <1024, на остальное 20% выделенного канала, так же ограничение на количество соединений для портов >1024 до 250, для <1024 до 50
ЗЫ:
Чем данную задачу можно решить с минимальными нагрузками на железо?

Аватара пользователя
hizel
дядя поня
Сообщения: 9032
Зарегистрирован: 2007-06-29 10:05:02
Откуда: Выборг

Re: Перегруз сетевой подсистемы

Непрочитанное сообщение hizel » 2009-01-07 14:06:39

дважды прогнать через pipe\queue
первый раз отрезаем скорость, второй раз балансируем по портам
да и использовать table+tablearg не помешает ;)

без балансировки портов, трафик отрезается в четрые или два правила, не учитывая настройку пайпов и забивание таблицы айпишниками
В дурацкие игры он не играет. Он просто жуткий, чу-чу, паровозик, и зовут его Блейн. Блейн --- это Боль.

Аватара пользователя
iZEN
ст. лейтенант
Сообщения: 1095
Зарегистрирован: 2007-09-15 16:45:26
Контактная информация:

Re: Перегруз сетевой подсистемы

Непрочитанное сообщение iZEN » 2009-01-07 14:28:22

Вот это попробуй:

Код: Выделить всё

> cat /etc/sysctl.conf
# Uncomment this to prevent users from seeing information about processes that
# are being run under another UID.
#security.bsd.see_other_uids=0
vfs.usermount=1
kern.coredump=0
net.inet.tcp.delayed_ack=0
# Размер очереди сокета
kern.ipc.somaxconn=2048
kern.ipc.maxsockbuf=16777216
# Размеры буфера для TCP-подключений. Если на сервер ожидается большая 
# нагрузка, и у него много памяти – лучше поставить 65535.
# Стояло: 32768
net.inet.tcp.sendspace=1048576
net.inet.tcp.recvspace=1048576
net.inet.udp.recvspace=65535
net.inet.udp.maxdgram=57344
net.local.stream.recvspace=65535
net.local.stream.sendspace=65535
kern.ipc.nmbclusters=65536
compat.linux.osrelease=2.6.16
#-kern.module_path=/boot/kernel;/boot/modules;/usr/local/modules
# Обновляем ARP-таблицу каждые 20 минут
net.link.ether.inet.max_age=1200
# Запрещаем отвечать на все лишние запросы.
net.inet.icmp.maskrepl=0
net.inet.ip.sourceroute=0
net.inet.ip.accept_sourceroute=0
net.inet.icmp.bmcastecho=0
# Пускаем запросы на закрытые порты в чёрные дыры
net.inet.tcp.blackhole=2
net.inet.udp.blackhole=1
# Отрубаем IP-редиректы
net.inet.icmp.drop_redirect=1
net.inet.icmp.log_redirect=1
net.inet.ip.redirect=0
А ещё есть такая вещь как "пулинг". При включении которого сетевая карта не подаёт прерывания на каждое соединения, а процессор сам занимается опросом буфера ожидающих соединений. При этом приоритет другим задачам отдаётся такой же как сетевой подсистеме == ничего не тормозит.
GNU/Linux — это не Unix и даже никогда им не был, и, что самое смешное, никогда им не станет — GNU's Not Unix

Аватара пользователя
hizel
дядя поня
Сообщения: 9032
Зарегистрирован: 2007-06-29 10:05:02
Откуда: Выборг

Re: Перегруз сетевой подсистемы

Непрочитанное сообщение hizel » 2009-01-07 14:37:51

человек уже включал POLLING , кстати я бы HZ поменьше сделал
В дурацкие игры он не играет. Он просто жуткий, чу-чу, паровозик, и зовут его Блейн. Блейн --- это Боль.

wel
сержант
Сообщения: 170
Зарегистрирован: 2007-02-27 11:59:41

Re: Перегруз сетевой подсистемы

Непрочитанное сообщение wel » 2009-01-07 16:03:49

hizel писал(а):человек уже включал POLLING , кстати я бы HZ поменьше сделал
HZ сейчас 1000, поллинг вкл
Спасает только 2-ой NAS