Лаги при 500+ конектов
Модератор: terminus
Правила форума
Убедительная просьба юзать теги [cоde] при оформлении листингов.
Сообщения не оформленные должным образом имеют все шансы быть незамеченными.
Убедительная просьба юзать теги [cоde] при оформлении листингов.
Сообщения не оформленные должным образом имеют все шансы быть незамеченными.
-
- лейтенант
- Сообщения: 693
- Зарегистрирован: 2008-10-02 20:49:21
Лаги при 500+ конектов
Имеется инет сервак на фряхе...так вот если 2 компа открывают торент, то начинается закачка и число одновременных конектов подскакивает до 500+, тогда внешние сервисы такие как тим спик и апач начинают лагать...+ пинг на внешнюю сетевую поднимается до 800. Скажите плиз в каком направлении копать? Как оптимизировать число одновременных конектов. Комп селерон 2,4 1 гиг оперативы.
Услуги хостинговой компании Host-Food.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/
Тарифы на виртуальные сервера (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/
- schizoid
- подполковник
- Сообщения: 3228
- Зарегистрирован: 2007-03-03 17:32:31
- Откуда: Украина, Чернигов
- Контактная информация:
Re: Лаги при 500+ конектов
Код: Выделить всё
allow ip from any to any via rl0 limit src-addr 40
rl0- внутренний интерфейс
количесвто сессий сами уж решайте
ядерный взрыв...смертельно красиво...жаль, что не вечно...
-
- лейтенант
- Сообщения: 693
- Зарегистрирован: 2008-10-02 20:49:21
Re: Лаги при 500+ конектов
так почему тормозить начинает уже при 500 конектах? Это хорошо что у меня 25 компов в сети..а если их будет 300 и все будут ломится в инет? Сервак вообще остановится...как убрать лаги при больших числах одновременных конектах?
- zingel
- beastie
- Сообщения: 6204
- Зарегистрирован: 2007-10-30 3:56:49
- Откуда: Moscow
- Контактная информация:
Re: Лаги при 500+ конектов
Код: Выделить всё
netstat -Lan
Z301171463546 - можно пожертвовать мне денег
-
- лейтенант
- Сообщения: 693
- Зарегистрирован: 2008-10-02 20:49:21
Re: Лаги при 500+ конектов
Код: Выделить всё
inetsrv# netstat -Lan
Код: Выделить всё
Current listen queue sizes (qlen/incqlen/maxqlen)
Proto Listen Local Address
tcp4 0/0/10 127.0.0.1.25
tcp4 0/0/128 *.35665
tcp6 0/0/128 *.35665
tcp4 0/0/511 *.5700
tcp4 0/0/50 *.3306
tcp4 0/0/2768 127.0.0.1.8080
tcp4 0/0/2768 *.8080
tcp4 0/0/15 *.51234
tcp4 0/0/15 *.14534
tcp4 0/0/2 xx.xx.xx.xx.1723
tcp4 0/0/1024 192.168.0.108.5006
tcp4 0/0/2 127.0.0.1.5005
tcp6 0/0/128 ::1.953
tcp4 0/0/128 127.0.0.1.953
tcp4 0/0/3 127.0.0.1.53
tcp4 0/0/3 192.168.0.108.53
Еще заметил что в
Код: Выделить всё
top
- zingel
- beastie
- Сообщения: 6204
- Зарегистрирован: 2007-10-30 3:56:49
- Откуда: Moscow
- Контактная информация:
Re: Лаги при 500+ конектов
Код: Выделить всё
netstat -z | grep WAIT | wc -l
Z301171463546 - можно пожертвовать мне денег
-
- лейтенант
- Сообщения: 693
- Зарегистрирован: 2008-10-02 20:49:21
Re: Лаги при 500+ конектов
Код: Выделить всё
inetsrv# netstat -z | grep WAIT | wc -l
Код: Выделить всё
1
Код: Выделить всё
0
- zingel
- beastie
- Сообщения: 6204
- Зарегистрирован: 2007-10-30 3:56:49
- Откуда: Moscow
- Контактная информация:
Re: Лаги при 500+ конектов
сиречь увеличить max кол-во сокетов котоыре могут быть в статусе listen() убрать TIME_WAIT, заюзать polling ну и так далее
Z301171463546 - можно пожертвовать мне денег
-
- лейтенант
- Сообщения: 693
- Зарегистрирован: 2008-10-02 20:49:21
-
- лейтенант
- Сообщения: 693
- Зарегистрирован: 2008-10-02 20:49:21
Re: Лаги при 500+ конектов
Люди помогите плиз...Картина изменилась...даже при 50 одновременных конектах и общей загруженности канала в 2 мбита из 5 возможных, если включены торент клиенты в локалке пинг на внешнюю сетевую 500-600....пинг на юбой хост с локалки в нет 500-600...блин даже доступ по ссш становится невыносимым!!!
вот мой sysctl.conf на всякий
вот мой sysctl.conf на всякий
Код: Выделить всё
net.inet.tcp.blackhole=2
net.inet.udp.blackhole=1
net.inet.ip.random_id=1
net.inet.ip.portrange.first=1024
net.inet.ip.portrange.last=65535
net.inet.ip.portrange.randomized=0
net.inet.icmp.icmplim=100
kern.ipc.somaxconn=1024
kern.ipc.nmbclusters=262144
kern.ipc.maxsockets=204800
net.inet.icmp.drop_redirect=1
net.inet.icmp.log_redirect=1
net.inet.ip.redirect=0
net.inet.tcp.sendspace=65536
net.inet.tcp.recvspace=65536
net.inet.tcp.syncookies=1
net.inet.tcp.msl=15000
net.inet.tcp.maxtcptw=40960
net.inet.tcp.nolocaltimewait=1
net.inet.tcp.sack.enable=0
net.link.ether.inet.max_age=1200
net.inet.ip.sourceroute=0
net.inet.ip.accept_sourceroute=0
net.inet.icmp.maskrepl=0
net.inet.icmp.bmcastecho=0
net.inet.tcp.sack.enable=0
vfs.vmiodirenable=1
kern.maxfiles=65536
net.link.ether.inet.max_age=800
- f_andrey
- майор
- Сообщения: 2651
- Зарегистрирован: 2007-12-26 1:22:58
- Откуда: СПб
- Контактная информация:
Re: Лаги при 500+ конектов
А зачем вы вот это все туда напихали? и как система ведет себя ведет система без этого?mediamag писал(а):вот мой sysctl.conf на всякий
Если ваша тема перенесена, то смотри http://forum.lissyara.su/viewtopic.php?f=1&t=32308
- LMik
- капитан
- Сообщения: 1852
- Зарегистрирован: 2007-07-17 9:14:39
- Откуда: МО
- Контактная информация:
Re: Лаги при 500+ конектов
Не проще было бы натд задавить на корню?
10% этож вроде многовато, а торенты это pps гигантский.
10% этож вроде многовато, а торенты это pps гигантский.
Последний раз редактировалось LMik 2009-06-28 13:32:39, всего редактировалось 1 раз.
BSD... Join the dark side.
Виpус детям не игpушка, не товаpищ и не дpуг!
Виpус детям не игpушка, не товаpищ и не дpуг!
-
- лейтенант
- Сообщения: 693
- Зарегистрирован: 2008-10-02 20:49:21
Re: Лаги при 500+ конектов
если коментирую все эти строки в sysctl.conf - ни помогает....Lmik самое интересное что натд не всегда 10% показывает - сейчас например 0,09 но лагает так же...Расскажите пожалуста поподробнее как задавать нат на корню?
- LMik
- капитан
- Сообщения: 1852
- Зарегистрирован: 2007-07-17 9:14:39
- Откуда: МО
- Контактная информация:
Re: Лаги при 500+ конектов
Сори, опечатался, имелось ввиду задавить
ng_nat юзать, или ядерный в ipfw.
и покажте ка systat -v 1
ng_nat юзать, или ядерный в ipfw.
и покажте ка systat -v 1
BSD... Join the dark side.
Виpус детям не игpушка, не товаpищ и не дpуг!
Виpус детям не игpушка, не товаpищ и не дpуг!
-
- лейтенант
- Сообщения: 693
- Зарегистрирован: 2008-10-02 20:49:21
Re: Лаги при 500+ конектов
Код: Выделить всё
1 users Load 0.02 0.06 0.02 Jun 28 18:24
Mem:KB REAL VIRTUAL VN PAGER SWAP PAGER
Tot Share Tot Share Free in out in out
Act 121744 11700 307552 17744 767184 count
All 156032 16204 2449316 25080 pages
Proc: Interrupts
r p d s w Csw Trp Sys Int Sof Flt cow 2300 total
1 70 4932 120 1285 292 1056 zfod ata0 irq14
ozfod ata1 irq15
1.5%Sys 1.5%Intr 3.8%User 0.0%Nice 93.2%Idle %ozfod 113 skc1 irq20
| | | | | | | | | | | daefr 179 skc0 ehci0
=+> prcfr 2008 cpu0: time
20 dtbuf totfr
Namei Name-cache Dir-cache 69726 desvn react
Calls hits % hits % 3568 numvn pdwak
47 46 98 236 frevn pdpgs
intrn
Disks ad0 110340 wire
KB/t 0.00 106356 act
tps 0 32624 inact
MB/s 0.00 14468 cache
%busy 0 752716 free
113488 buf
- ExTazZ
- рядовой
- Сообщения: 27
- Зарегистрирован: 2009-05-25 13:46:15
- Откуда: Санкт-Петербург
- Контактная информация:
Re: Лаги при 500+ конектов
Пробуй вкомпелить в ядро natd только если у тебя FreeBSD седьмой ветки - должно меньше систему загружать!
Для этого в конфиг ядра добавь это:
Для этого в конфиг ядра добавь это:
Код: Выделить всё
options IPFIREWALL
options IPFIREWALL_VERBOSE
options IPFIREWALL_VERBOSE_LIMIT=5
options IPFIREWALL_FORWARD
options IPDIVERT
options DUMMYNET
options IPFIREWALL_NAT
options LIBALIAS
options HZ=1000
options NBUF=2048
options MAXDSIZ=(512*1024*1024)
options DFLDSIZ=(128*1024*1024)
-
- лейтенант
- Сообщения: 693
- Зарегистрирован: 2008-10-02 20:49:21
Re: Лаги при 500+ конектов
ЕСТЬ ВОПРОСЫ
1.а хуже не будет?
2.какие правила нужны будут для организации ната?
сейчас у меня вот такие
3.Как реализовывать редирект на этом нате?
1.а хуже не будет?
2.какие правила нужны будут для организации ната?
сейчас у меня вот такие
Код: Выделить всё
${fwcmd} add 1400 divert natd ip from ${intnet} to any out via ${extif}
${fwcmd} add 1450 divert natd ip from any to ${extip} in via ${extif}
- ExTazZ
- рядовой
- Сообщения: 27
- Зарегистрирован: 2009-05-25 13:46:15
- Откуда: Санкт-Петербург
- Контактная информация:
Re: Лаги при 500+ конектов
У меня вот так firewall настроен! Всё работает!
P.S. настрой firewall до того как перезагрузишься с новым ядром иначе придётся бежать в серверную!
Код: Выделить всё
#!/bin/sh
fw="/sbin/ipfw -q" - бинарник ipfw
Wan0="sis0" - внешняя сетевуха
IpWan0="10.10.10.10" - внешний IP адрес
NetMask24="24" - маска локальной сетки
Lan0="rl0" - сетевуха смотрящая в локалку
IpLan0="172.16.0.1" - внутренний IP
NetLan0="172.16.0.0" - внутреннея сеть
##############Base rules#############################
# Flush rules - сброс правил
${fw} -f flush
${fw} -f pipe flush
${fw} -f queue flush
${fw} add check-state
# rules for 127.0.0.1 lo0 - тут думаю всё понятно это настройки интерфейса обратной петли
${fw} add allow ip from any to any via lo0
${fw} add deny ip from any to 127.0.0.0/8
${fw} add deny ip from 127.0.0.0/8 to any
${fw} add allow icmp from any to any icmptypes 0,8,11 - разрешаем некоторые icmp запросы
${fw} add allow tcp from any to any established - Выпускаем сервер в инет
${fw} add allow ip from ${IpWan0} to any out xmit ${Wan0} - Выпускаем сервер в инет
${fw} add allow udp from any 53 to any via ${Wan0} - Открываем DNS для сервера
${fw} add allow udp from any to any 123 via ${Wan0} - Синхронизация времени
${fw} add allow tcp from any to ${IpWan0} 49152-65535 via ${Wan0} - Открывем сереверу доступ по FTP
# base deny rules for WAN - IP адреса которые не должны быть в инете! Только убери отсюда свою локалку, у меня не работало!
${fw} add deny ip from any to 10.0.0.0/8 in via ${Wan0}
#${fw} add deny ip from any to 172.16.0.0/12 in via ${Wan0}
${fw} add deny ip from any to 192.168.0.0/16 in via ${Wan0}
${fw} add deny ip from any to 0.0.0.0/8 in via ${Wan0}
${fw} add deny ip from any to 169.254.0.0/16 in via ${Wan0}
${fw} add deny ip from any to 224.0.0.0/4 in via ${Wan0}
${fw} add deny ip from any to 240.0.0.0/4 in via ${Wan0}
${fw} add deny icmp from any to any frag
${fw} add deny log icmp from any to 255.255.255.255 in via ${Wan0}
${fw} add deny log icmp from any to 255.255.255.255 out via ${Wan0}
${fw} add deny ip from 10.0.0.0/8 to any out via ${Wan0}
${fw} add deny ip from 172.16.0.0/12 to any out via ${Wan0}
${fw} add deny ip from 192.168.0.0/16 to any out via ${Wan0}
${fw} add deny ip from 0.0.0.0/8 to any out via ${Wan0}
${fw} add deny ip from 169.254.0.0/16 to any out via ${Wan0}
${fw} add deny ip from 224.0.0.0/4 to any out via ${Wan0}
${fw} add deny ip from 240.0.0.0/4 to any out via ${Wan0}
############# END Base rules#########################
${fw} nat 777 config ip ${IpWan0} log same_ports \ - включение NAT и указываем IP и порт и куда перебрасывать
redirect_port tcp172.16.0.2:2202 10.10.10.10:2202 \ - переброс порта 2202 на локальную машину
redirect_port tcp 172.16.0.2:80 10.10.10.10:80 - переброс порта 80
${fw} add nat 777 tcp from 172.16.0.2 2202 to any - для переброски порта
${fw} add nat 777 tcp from any to 172.16.0.2 2202 - для переброски порта
${fw} add nat 777 all from ${NetLan0}/${NetMask24} to any out via ${Wan0} - заворачиваем локалку в NAT
${fw} add nat 777 all from any to ${IpWan0} in via ${Wan0} - тоже необходимо для NAT
# Rules for Lan iface -разрешаем трафик на локальном интерфейсе
${fw} add allow ip from any to ${NetLan0}/${NetMask} in via ${Lan0}
${fw} add allow ip from ${NetLan0}/${NetMask24} to any out via ${Lan0}
# Rules for DNS servers
${fw} add allow udp from ${NetLan0}/${NetMask24} to any 53 in via ${Lan0} - Правила для DNS серверов если конечно они у тебя не в локалке!
${fw} add allow udp from any 53 to ${NetLan0}/${NetMask24} out via ${Lan0}
############## BEGIN USERS ########################
# User 1
${fw} add allow tcp from 192.168.0.2 to any 80,22,21,20,25,443 in via ${Lan0} setup - указываем IP юзверя и порты сервисов которые будут доступны ему из инета
############## End BEGIN USERS ######################
${fw} add allow tcp from any to ${IpWan0} 22 via ${Wan0} - Открывем себе доступ не сервер на пример по SSH
${fw} add deny ip from any to any - Рубим всё что не попало под правила frewall'a!
-
- лейтенант
- Сообщения: 693
- Зарегистрирован: 2008-10-02 20:49:21
Re: Лаги при 500+ конектов
1.расскажи плиз поподробнее про правила которые начинаются со слова nat ..
почему их так много?
2.почему 777?
3. В rc.conf чтото дописывать или изменять нужно?
почему их так много?
2.почему 777?
3. В rc.conf чтото дописывать или изменять нужно?
- ExTazZ
- рядовой
- Сообщения: 27
- Зарегистрирован: 2009-05-25 13:46:15
- Откуда: Санкт-Петербург
- Контактная информация:
Re: Лаги при 500+ конектов
777 - это просто номер правила nat можешь поставит любое хоть 666!
В принципе всё!
А так читай мануалы по ipfw!
Код: Выделить всё
Сдесь намом деле одна строка а не три! Включет nat под номером 777! Если не надо пепекидывать порты оставь так "${fw} nat 777 config ip ${IpWan0} log same_ports"
${fw} nat 777 config ip ${IpWan0} log same_ports redirect_port tcp 172.16.0.2:2202 10.10.10.10:2202
# Эти два правила нужны если решил перебросить порт в данном случае порт 2202 иначе работать не будет
${fw} add nat 777 tcp from 172.16.0.2 2202 to any
${fw} add nat 777 tcp from any to 172.16.0.2 2202
# Эти два правила нужны если у тебя есть локалка, если их не будет работать NAT для локалки!
${fw} add nat 777 all from ${NetLan0}/${NetMask24} to any out via ${Wan0}
${fw} add nat 777 all from any to ${IpWan0} in via ${Wan0}
А так читай мануалы по ipfw!
- skeletor
- майор
- Сообщения: 2548
- Зарегистрирован: 2007-11-16 18:22:04
Re: Лаги при 500+ конектов
Это ничего не даст, особенно против торрентов! Проверял, даже если ставить количество коннектов 1! Всё равно начинается скачка торрентов.schizoid писал(а):т.е. на каждого клиента из сети максимум 40 tcp и udp сессииКод: Выделить всё
allow ip from any to any via rl0 limit src-addr 40
rl0- внутренний интерфейс
количесвто сессий сами уж решайте
- schizoid
- подполковник
- Сообщения: 3228
- Зарегистрирован: 2007-03-03 17:32:31
- Откуда: Украина, Чернигов
- Контактная информация:
Re: Лаги при 500+ конектов
почему-то у меня дает.
т.е. торенты работают, мне их резать не нужно, но количество соединений ограничено
Код: Выделить всё
# tail -f /var/log/security
Jun 30 10:47:02 gate kernel: ipfw: 8400 drop session 192.168.0.125:1170 -> 95.135.98.97:22483, too many entries
Jun 30 10:47:02 gate kernel: ipfw: 8400 drop session 192.168.0.125:1179 -> 95.54.212.196:26118, too many entries
Jun 30 10:47:03 gate kernel: ipfw: 8400 drop session 192.168.0.125:1182 -> 94.178.163.191:41380, too many entries
Jun 30 10:47:05 gate kernel: ipfw: 8400 drop session 192.168.0.125:1183 -> 95.134.87.20:27360, too many entries
Jun 30 10:47:06 gate kernel: ipfw: 8400 drop session 192.168.0.125:1182 -> 94.178.163.191:41380, too many entries
Jun 30 10:47:08 gate kernel: ipfw: 8400 drop session 192.168.0.125:1183 -> 95.134.87.20:27360, too many entries
ядерный взрыв...смертельно красиво...жаль, что не вечно...