The OpenNET Project / Index page

[ новости /+++ | форум | wiki | теги | ]

форумы  помощь  поиск  регистрация  майллист  вход/выход  слежка  RSS
"Squid 2.7.9(Freebsd 8.0) - тормоза upload speed"
Вариант для распечатки  
Пред. тема | След. тема 
Форум Настройка Squid и других прокси серверов (Разное)
Изначальное сообщение [ Отслеживать ]

"Squid 2.7.9(Freebsd 8.0) - тормоза upload speed"  +/
Сообщение от mr.yaky (ok) on 25-Июл-10, 19:52 
Здравствуйте уважаемые форумчани!Бился,бился голову уже сломал - прото нет уже никаких идей,в чем может быть проблемма:

# uname -a
FreeBSD beowulf 8.0-RELEASE FreeBSD 8.0-RELEASE #0: Wed Jul 14 14:04:00 UTC 2010     ...@beowulf:/usr/obj/usr/src/sys/BEOWULF  amd64


# squid -v
Squid Cache: Version 2.7.STABLE9
configure options:  '--bindir=/usr/local/sbin' '--sbindir=/usr/local/sbin' '--datadir=/usr/local/etc/squid' '--libexecdir=/usr/local/libexec/squid' '--localstatedir=/var/squid' '--sysconfdir=/usr/local/etc/squid' '--enable-removal-policies=lru heap' '--disable-linux-netfilter' '--disable-linux-tproxy' '--disable-epoll' '--enable-auth=basic digest negotiate ntlm' '--enable-basic-auth-helpers=DB NCSA PAM MSNT SMB' '--enable-digest-auth-helpers=password' '--enable-external-acl-helpers=ip_user session unix_group wbinfo_group' '--enable-ntlm-auth-helpers=SMB' '--enable-storeio=ufs diskd null' '--enable-snmp' '--enable-ssl' '--with-openssl=/usr' '--enable-icmp' '--enable-arp-acl' '--with-large-files' '--enable-large-cache-files' '--enable-err-languages=Armenian Azerbaijani Bulgarian Catalan Czech Danish  Dutch English Estonian Finnish French German Greek  Hebrew Hungarian Italian Japanese Korean Lithuanian  Polish Portuguese Romanian Russian-1251 Russian-koi8-r  Serbian Simplify_Chinese Slovak Spanish Swedish  Traditional_Chinese Turkish Ukrainian-1251  Ukrainian-koi8-u Ukrainian-utf8' '--enable-default-err-language=English' '--prefix=/usr/local' '--mandir=/usr/local/man' '--infodir=/usr/local/info/' '--build=amd64-portbld-freebsd8.0' 'build_alias=amd64-portbld-freebsd8.0' 'CC=cc' 'CFLAGS=-O2 -pipe -I/usr/include -fno-strict-aliasing' 'LDFLAGS= -rpath=/usr/lib:/usr/local/lib -L/usr/lib' 'CPPFLAGS='

#cat etc/rc.conf
ifconfig_bce0="inet .......... netmask 255.255.255.248" -  смотрит в инет
ifconfig_bce1="inet 10.10.10.1 netmask 255.255.255.0"   -  смотрит в локалку #1
ifconfig_em0="inet 192.168.10.1 netmask 255.255.255.0"  -  смотрит в локалку #2 без squid


действия:
ставлю из портов /usr/ports/www/squid

В конфиге squid'а дописываю прозрачность и редирект:
http_port 3128 transparent

в ipfw добавляю правило до divert natd :

$cmd 0160 fwd 127.0.0.1,3128 tcp from 10.10.10.0/24 to not me dst-port 80 in recv bce1

#####
КСТАТЕ!!! в firewall'e до этого правила есть шейпинг с приоритетеми на dowload:

ipfw pipe 1 config bw 1980Kbit/s queue 20

ipfw queue  1 config pipe 1 weight 100 queue 20 mask dst-ip 0xffffffff
#ipfw queue 11 config pipe 1 weight 100 queue 20 mask src-ip 0xffffffff
# All users
ipfw queue  2 config pipe 1 weight 10 queue 20 mask dst-ip 0xffffffff
#ipfw queue 21 config pipe 1 weight 10 queue 20 mask src-ip 0xffffffff

$cmd 0010 queue  1 ip from any to $serv
#$cmd 0020 queue 11 ip from $serv to any
# All users
$cmd 0030 queue  2 ip from any to 10.10.10.0/24
#$cmd 0040 queue 21 ip from 10.10.10.0/24 to any

####

запускаю squid ----->

имел канал 2Mbit на download и upload

ПОЛУЧИЛ ПРИ ВКЛЮЧЕННОМ Squid'e
ТОЛЬКО 200kbit на upload :(

Как только коментирую правило в ipfw на принудительный заворот для прозрачного проксирования
сразу все нормально!!!

Мерял скорость speedtest.net

Заключение:

При включенном Squid'e скорость на upload падает в 10 раз,а на download остается прежней около 2Mbit
Еще ставил дополнительно и настраивал после SAMS,все работает только вот с аплоадом такая ФИГНЯ :(


Может быть проблема в разметке диска что у мну так ????:

# df
Filesystem  1M-blocks Used  Avail Capacity  Mounted on
/dev/ad4s1a       290   61    205    23%    /
devfs               0    0      0   100%    /dev
/dev/ad4s1e       989    0    910     0%    /tmp
/dev/ad4s1d     34706 2135  29794     7%    /usr
/dev/ad4s1f     19832  162  18083     1%    /var
/dev/ad4s1g     19832   24  18221     0%    /var/log
/dev/ad4s1h    151278    8 139168     0%    /var/squid
procfs              0    0      0   100%    /proc

тоисть что slice /var/squid стоит в самом конце диска?

кстате рейда нет! фряха стоит на одном из жестких -- комп PowerEdge R210 - i3 2.9Ghz 2G RAM 250GbX2 (вытягнули рейд контроллер внешний, из-за одного слота pci, для третей сетевой карты(нужна принципиально),а встроенный рейд в мать не поддерживается фрей).


ps. проверял постоянно скорость только на одном компе в локалке раз так 20 !

Буду очень признателен за ответы - потому как, у самого уже идей просто нет

дома на стареньком компе без шейпинга в файрволе squid+SAMS и все ОК (dowload/upload - 20Mbit) - правда в локалке только один  комп

Высказать мнение | Ответить | Правка | Cообщить модератору

Оглавление

Сообщения по теме [Сортировка по времени | RSS]


1. "Squid 2.7.9(Freebsd 8.0) - тормоза upload speed"  +/
Сообщение от bobcat12 (ok) on 26-Июл-10, 16:04 
Покажи ifconfig -a для той сетевухи, на которой поднят nat.  

Высказать мнение | Ответить | Правка | ^ | Наверх | Cообщить модератору

2. "Squid 2.7.9(Freebsd 8.0) - тормоза upload speed"  +/
Сообщение от mr.yaky (ok) on 26-Июл-10, 17:42 
>Покажи ifconfig -a для той сетевухи, на которой поднят nat.

# ifconfig -a
em0: flags=8843<UP,BROADCAST,RUNNING,SIMPLEX,MULTICAST> metric 0 mtu 1500
        options=19b<RXCSUM,TXCSUM,VLAN_MTU,VLAN_HWTAGGING,VLAN_HWCSUM,TSO4>
        ether 00:15:17:e9:d8:9c
        inet 192.168.10.1 netmask 0xffffff00 broadcast 192.168.10.255
        media: Ethernet autoselect
        status: no carrier
bce0: flags=8843<UP,BROADCAST,RUNNING,SIMPLEX,MULTICAST> metric 0 mtu 1500
        options=1bb<RXCSUM,TXCSUM,VLAN_MTU,VLAN_HWTAGGING,JUMBO_MTU,VLAN_HWCSUM,TSO4>
        ether 00:26:b9:8d:7e:1e
        inet ........... netmask 0xfffffff8 broadcast ........183
        media: Ethernet autoselect (100baseTX <full-duplex>)
        status: active
bce1: flags=8843<UP,BROADCAST,RUNNING,SIMPLEX,MULTICAST> metric 0 mtu 1500
        options=1bb<RXCSUM,TXCSUM,VLAN_MTU,VLAN_HWTAGGING,JUMBO_MTU,VLAN_HWCSUM,TSO4>
        ether 00:26:b9:8d:7e:1f
        inet 10.10.10.1 netmask 0xffffff00 broadcast 10.10.10.255
        media: Ethernet autoselect (100baseTX <full-duplex>)
        status: active
lo0: flags=8049<UP,LOOPBACK,RUNNING,MULTICAST> metric 0 mtu 16384
        options=3<RXCSUM,TXCSUM>
        inet 127.0.0.1 netmask 0xff000000


#cat /etc/rc.conf

natd_enable="YES"
natd_interface="bce0"
natd_flags="-f /etc/natd.conf"

# cat /etc/natd.conf
same_ports      yes
use_sockets     yes
unregistered_only yes

redirect_port   tcp 192.168.10.244:1718-1721 1718-1721
redirect_port   udp 192.168.10.244:1718-1721 1718-1721
redirect_port   tcp 192.168.10.244:2326-2485 2326-2485
redirect_port   udp 192.168.10.244:2326-2485 2326-2485
redirect_port   tcp 192.168.10.244:5555-5560 5555-5560
redirect_port   udp 192.168.10.244:5555-5560 5555-5560


Самое главное,что в подсети 192.168.10.0,где не используется проксирование все нормально и в сети 10.10.10.0 с закоментированным правилом:
$cmd 0160 fwd 127.0.0.1,3128 tcp from 10.10.10.0/24 to not me dst-port 80 in recv bce1

тоже все ОК
скорость и на прием и на отдачу около 2Mbit,
как только включаю заворот в ipfw на squid сразу проблемы в сети 10.10.10.0:
Dowload - 2Mbit ; Upload - 200kbit :(

Высказать мнение | Ответить | Правка | ^ | Наверх | Cообщить модератору

3. "Squid 2.7.9(Freebsd 8.0) - тормоза upload speed"  +/
Сообщение от reader (ok) on 27-Июл-10, 13:19 
а если временно убрать шейпер?
Высказать мнение | Ответить | Правка | ^ | Наверх | Cообщить модератору

4. "Squid 2.7.9(Freebsd 8.0) - тормоза upload speed"  +/
Сообщение от mr.yaky (ok) on 27-Июл-10, 15:59 
>а если временно убрать шейпер?

Так вот самое обидное в этом и есть,что даже при выключенном шейпинге эффект тот же!

зы. дома реализовал тот же функционал с шейпером и т.п., вообщем повторил,то что в офисе (отличия только в том что дома одна подсеть, а не две) -- и все работает, даже на старющем венике :( Правда дома разметка слайсов другая :

Filesystem  1M-blocks Used Avail Capacity  Mounted on
/dev/ad0s1a       290   94   172    35%    /
devfs               0    0     0   100%    /dev
/dev/ad0s1e       193    0   177     0%    /tmp
/dev/ad0s1f      2707 1792   698    72%    /usr
/dev/ad0s1d       290  202    64    76%    /var
procfs              0    0     0   100%    /proc

Может быть проблема в том что slice /var/squid (из разметки приведенной выше) стоит далеко от корневого - размечен не в такой последовательности, какую предлагает sysinstall при Auto

Может есть у кого еще какие идеи ? Наперед благодарен!


Высказать мнение | Ответить | Правка | ^ | Наверх | Cообщить модератору

5. "Squid 2.7.9(Freebsd 8.0) - тормоза upload speed"  +1 +/
Сообщение от reader (ok) on 27-Июл-10, 20:27 
>[оверквотинг удален]
>  72%    /usr
>/dev/ad0s1d       290  202  
> 64    76%    /var
>procfs            
>  0    0    
>0   100%    /proc
>
>Может быть проблема в том что slice /var/squid (из разметки приведенной выше)
>стоит далеко от корневого - размечен не в такой последовательности, какую
>предлагает sysinstall при Auto

временно в cache_dir укажите другую директорию и размер 0, пересоздаете кеш, и проверьте. это заставит squid не кешировать

>
>Может есть у кого еще какие идеи ? Наперед благодарен!

Высказать мнение | Ответить | Правка | ^ | Наверх | Cообщить модератору

6. "Squid 2.7.9(Freebsd 8.0) - тормоза upload speed"  +/
Сообщение от bobcat12 (??) on 28-Июл-10, 16:25 
>[оверквотинг удален]
>Самое главное,что в подсети 192.168.10.0,где не используется проксирование все нормально и в
>сети 10.10.10.0 с закоментированным правилом:
>$cmd 0160 fwd 127.0.0.1,3128 tcp from 10.10.10.0/24 to not me dst-port 80
>in recv bce1
>
>тоже все ОК
>скорость и на прием и на отдачу около 2Mbit,
>как только включаю заворот в ipfw на squid сразу проблемы в сети
>10.10.10.0:
>Dowload - 2Mbit ; Upload - 200kbit :(

Убери с bce0 RXCSUM,TXCSUM, TSO4  и все должно заработать ( мы такое нарывались :) )
или используй нат из pf.

Высказать мнение | Ответить | Правка | ^ | Наверх | Cообщить модератору

7. "Squid 2.7.9(Freebsd 8.0) - тормоза upload speed"  +/
Сообщение от mr.yaky (ok) on 29-Июл-10, 20:37 
>Убери с bce0 RXCSUM,TXCSUM, TSO4  и все должно заработать ( мы
>такое нарывались :) )

# ifconfig bce0 –rxcsum
# ifconfig bce0 –txcsum

или отключить сразу RXCSUM,TXCSUM

# ifconfig bce0 hwcsum

плюс

# ifconfig bce0 tso

Я правильно понял, об этом вы говорили?

читал об этом здесь : http://iboxjo.livejournal.com/27727.html


>или используй нат из pf.

Можно немного по подробней почему именно его. И собственно причина в хардварных примочках?

Спасибо за то что поделились опытом!

Высказать мнение | Ответить | Правка | ^ | Наверх | Cообщить модератору

8. "Squid 2.7.9(Freebsd 8.0) - тормоза upload speed"  +1 +/
Сообщение от bobcat12 (??) on 30-Июл-10, 10:41 
>[оверквотинг удален]
>
>читал об этом здесь : http://iboxjo.livejournal.com/27727.html
>
>
>>или используй нат из pf.
>
>Можно немного по подробней почему именно его. И собственно причина в хардварных
>примочках?
>
>Спасибо за то что поделились опытом!

Я с подобной проблемой сталкивался и именно на броадкоме и именно на 8-ке. С натом родным вообще рекомендуется отключать TCO и контрольные суммы. После отключения все заработало нормально. Но потом, стало не комфортно иметь подобные примочки и не использовать их. В данный момент используем ipfw и nat из pf. совместно они замечательно работают. Вся это проблема в родном нате.

Высказать мнение | Ответить | Правка | ^ | Наверх | Cообщить модератору

9. "Squid 2.7.9(Freebsd 8.0) - тормоза upload speed"  +1 +/
Сообщение от Pbl6a on 03-Авг-10, 14:26 
Добавлю в тему следующую ссылку уточняющую проблему, ведь боюсь многие ещё будут сталкиваться наверняка:
http://www.mail-archive.com/freebsd-net@freebsd.org/msg...
оттудава выдержка
===========================================================
     Due to the architecture of libalias(3), ipfw nat is not compatible with
     the TCP segmentation offloading (TSO).  Thus, to reliably nat your net-
     work traffic, please disable TSO on your NICs using ifconfig(8).
===========================================================

То есть либо отрубаем на интерфейсе tso (или же вообще "sysctl net.inet.tcp.tso=0") либо отказываемся от libalias (natd или ipfw nat).

Высказать мнение | Ответить | Правка | ^ | Наверх | Cообщить модератору

10. "Squid 2.7.9(Freebsd 8.0) - тормоза upload speed"  +/
Сообщение от mr.yaky (ok) on 03-Авг-10, 19:21 
>То есть либо отрубаем на интерфейсе tso (или же вообще "sysctl net.inet.tcp.tso=0")
>либо отказываемся от libalias (natd или ipfw nat).

Хочу задать еще вопрос :
если я буду использовать pf-nat в связке с IPFW, то каким образом мне нужно модифицировать правила такого типа для связки IPFW+pfnat при отключенном natd:

$cmd 0181 divert natd ip from any to any in via $pif
$cmd 5000 divert natd ip from any to any out via $pif

и как быть тогда с правилами содержащими skipto 5000 ?
И возможно ли это - много гуглил, но так и конкретного ответа не нашел?

Или если я хочу использовать pfnat, то нужно переписывать все правила под pf и выкидывать IPFW взамен уже на pf+pfnat! Говорю об этом потому как, все-таки хотелось бы остаться на IPFW из-за DUMMYNET(про ALTQ знаю но хотелось,если возможно, сменить только NAT на другой, как рекомендовали на pfnat и сделать связку IPFW+pfnat,а не перестраивать пол системы)?

Буду благодарен за внятный ответ! Спасибо!

Высказать мнение | Ответить | Правка | ^ | Наверх | Cообщить модератору

11. "Squid 2.7.9(Freebsd 8.0) - тормоза upload speed"  +/
Сообщение от bobcat12 (??) on 04-Авг-10, 12:35 
>[оверквотинг удален]
>И возможно ли это - много гуглил, но так и конкретного ответа
>не нашел?
>
>Или если я хочу использовать pfnat, то нужно переписывать все правила под
>pf и выкидывать IPFW взамен уже на pf+pfnat! Говорю об этом
>потому как, все-таки хотелось бы остаться на IPFW из-за DUMMYNET(про ALTQ
>знаю но хотелось,если возможно, сменить только NAT на другой, как рекомендовали
>на pfnat и сделать связку IPFW+pfnat,а не перестраивать пол системы)?
>
>Буду благодарен за внятный ответ! Спасибо!

Из правил ipfw убираем все что касается divert. Из rc.conf то-же.
В правилах pf прописываем типа:

ext_if = "bce0"
table <insidenet> const { 192.168.0.0/16 } (или ваши конкретные подсети)
nat on $ext_if from <insidenet> to any -> ($ext_if)

У нас у самих  большой конфиг с правилами ipfw и в свое время было лениво переписывать.
С DUMMYNET мы не пробовали ( задача не стояла). Я, думаю, что оно наверняка будет работать. Только правила должены применяться в отношении внутренних сетей на внутренней сетевой карте или без привязки к сетевой карте.


Высказать мнение | Ответить | Правка | ^ | Наверх | Cообщить модератору

12. "Squid 2.7.9(Freebsd 8.0) - тормоза upload speed"  +/
Сообщение от mr.yaky (ok) on 05-Авг-10, 11:02 
Спасибо огромное за помощь, как только отключил на интерфейсе с NAT'ом tso - все заработало.
Пока оставил так.

ps. man ipfw - в самом конце написано тоже утверждение,что приводилось выше с рассылки!

Высказать мнение | Ответить | Правка | ^ | Наверх | Cообщить модератору

Архив | Удалить

Рекомендовать для помещения в FAQ | Индекс форумов | Темы | Пред. тема | След. тема




Спонсоры:
Inferno Solutions
Hosting by Hoster.ru
Хостинг:

Закладки на сайте
Проследить за страницей
Created 1996-2022 by Maxim Chirkov
Добавить, Поддержать, Вебмастеру