Как оптимизировать работу прокси. Это тема становится чуть ли не самой важной когда все славо богу заработало. Как сделать так чтобы прокси не жрал мегабайты памяти. У меня ок. 120 пользователей сидят на сквиде на порту 3128 (медленный канал) и из за этого жутко тормозится 8080 (быстрый). Не знаю что с этим делать!!Помогите
Спасибо
>жрал мегабайты памяти. У меня ок. 120 пользователей сидят на сквиде
А как он работать будет без памяти?>на порту 3128 (медленный канал) и из за этого жутко тормозится
>8080 (быстрый). Не знаю что с этим делать!!
А зачем два прокси запускать? Можно в одном два порта открыть.Обращайтесь, поможем. :-)
>А зачем два прокси запускать? Можно в одном два порта открыть.
>
>Обращайтесь, поможем. :-)
Да ведь мне нужно скоростной интернет и медленный. А как это сделать на одной проксе. При помощи delay-pools. Мне каналы мешать нельзя. И еще не может ли тормозить из-за Sambы (NTLM авторизация) или из-за того что у меня порнушный acl-список >300 КБ и на каждого пользователя конкретный доступ. И еще влияет ли на скорость сквида закачки пользователей?А то на работе получитась так что до прокси когда пользователи ходили через шлюз через MASQ а быстрый интернет был сквозным от провайдера - все работало нормально. А сейчас скорось у медленного канала упала из-за прокси да к тому же еще и обрезано пол Интернета пользователям, вобщем все недовольны. Про скоростной вообще молчу, вчера попытался его включить дак он медленнее чем безлимитный работает. Ничего не понимаю. Может насроил что нетак. Могу конфиг показать. Ведь вся задумка и заключалась в том чтобы облегчить жизнь пользователям, а начальству предоставить отчеты по трафику и сыкономить деньги. Выходит так что деньги экономятся только за счет того что пракся тормозит. И где обещанный мною комфорт? Сам не знаю чем это обьяснить.
Спасибо. Могу показать конигурационный файл.
>Спасибо. Могу показать конигурационный файл.
c показа и стоило бы начать
> Да ведь мне нужно скоростной интернет и медленный. А как это сделать на одной проксе.
Посмотри сюды: http://www.opennet.me/openforum/vsluhforumID12/2926.html> При помощи delay-pools.
Эти только ограничивают скорость, каналы не выбирают.авторизация) или из-за того что у меня порнушный acl-список >300 КБ
Вряд ли. Если у тебя, конечно, не P133/16Mb.> и на каждого пользователя конкретный доступ. И еще влияет ли на скорость > сквида закачки пользователей?
Влияет. Особенно, если кто-то без ограничений тянет на полной скорости канала.> А то на работе получитась так что до
>прокси когда пользователи ходили через шлюз через MASQ а быстрый интернет
>был сквозным от провайдера - все работало нормально.
Дайлап? Иначе лучше SNAT.> А сейчас скорось
>у медленного канала упала из-за прокси да к тому же еще
>и обрезано пол Интернета пользователям, вобщем все недовольны.
А ты sarg прикрути. Чем недовольны? Без порнухи жить не могут?> Про скоростной вообще
> молчу, вчера попытался его включить дак он медленнее чем безлимитный работает.
Возможно только в том случае, если кто-то по нему тянет без ограничений.>Ничего не понимаю.
Снимай статистику по snmp и разбирайся.> Может насроил что нетак. Могу конфиг показать.
Покажи. Только 300к противопорнушных ацл-ов и комментарии # не кидай.>вся задумка и заключалась в том чтобы облегчить жизнь пользователям, а
>начальству предоставить отчеты по трафику и сыкономить деньги. ВыходитПохвастаюсь, 70-80% request hit ratio и 20-25% byte hit ratio. Но не потому что я такой молодец, а потому что в инет-клубе все дружно рубятся в combats.ru
>деньги экономятся только за счет того что пракся тормозит.
И это верно. У меня изредка инет пропадает, тогда показатели попеременно принимают значения 0% и 100%, так как запрос либо есть в кеше, либо его нет :-) Кроме того, так как в следующем месяце интернета не будет, всё что понадбиться нужно выкачать в этом.>обещанный мною комфорт? Сам не знаю чем это обьяснить.
Трудно что либо объяснить без мониторинга, логирования и анализа статистики.
Вот лог
---------------------------------------------------
http_port 3128
icp_port 0
hierarchy_stoplist cgi-bin ?
acl QUERY urlpath_regex cgi-bin \?
no_cache deny QUERY
cache_mem 64 MB
maximum_object_size 16384 KB
minimum_object_size 0 KB
cache_dir ufs /var/squid/cache 5120 16 256
cache_access_log /usr/local/squid/var/logs/access.log
cache_log /usr/local/squid/var/logs/cache.log
pid_filename /usr/local/squid/var/logs/squid.pid
ftp_user anonymous@tp.kurgan.ru
ftp_list_width 32
hosts_file /etc/hostsauth_param ntlm program /usr/local/samba/bin/ntlm_auth --helper-protocol=squid-2.5-ntlmssp --require-membership-of="tp/tpproxy"
auth_param ntlm children 5
auth_param ntlm max_challenge_reuses 0
auth_param ntlm max_challenge_lifetime 2 minutes
auth_param basic program /usr/local/samba/bin/ntlm_auth --helper-protocol=squid-2.5-basic --require-membership-of="tp/tppoxy"
auth_param basic children 5
auth_param basic realm Squid proxy-caching web server
auth_param basic credentialsttl 2 hours
refresh_pattern ^ftp: 1440 20% 10080
refresh_pattern ^gopher: 1440 0% 1440
refresh_pattern . 0 20% 4320acl all src 0.0.0.0/0.0.0.0
acl manager proto cache_object
acl localhost src 127.0.0.1/255.255.255.255
acl net src 192.168.4.0/255.255.255.0
acl computers src 192.168.4.49/255.255.255.255
acl SSL_ports port 443 563
acl Safe_ports port 80
acl Safe_ports port 21
acl Safe_ports port 5190
acl Safe_ports port 443 563
acl Safe_ports port 70
acl Safe_ports port 210
acl Safe_ports port 1025-65535
acl Safe_ports port 280
acl Safe_ports port 488
acl Safe_ports port 591
acl Safe_ports port 777
acl CONNECT method CONNECTacl allsites url_regex .*
acl NTLMauth proxy_auth REQUIRED
acl media url_regex -i \.mp3$ \.iso$ \.nrg$ \.cue$ \.wav$ \.ogg$ \.wma$ \.mpg$ \.mpeg$ \.avi$ \.au$ \.mov$ \.dat$ \.mid$ \.midi$ \.vob$ \.mmf$ \.cab$ \.exe$ \.com$
acl flash url_regex \.swf
acl banners url_regex "/usr/local/squid/etc/banners.sites"
acl porno url_regex "/usr/local/squid/etc/porno.sites"
acl bad url_regex "/usr/local/squid/etc/bad.sites"
acl allsites url_regex .*
acl icq dst 205.188.248.199/255.255.255.255 64.12.163.134/255.255.255.255
acl irc port 6667-6669 7770-7776
acl griff_98 src 192.168.4.238/255.255.255.255 192.168.4.242/255.255.255.255 192.168.4.243/255.255.255.255 192.168.4.253/255.255.255.255
acl vadik proxy_auth cranber
http_access allow manager localhost
http_access deny manager
http_access allow CONNECT irc net
http_access deny CONNECT !SSL_ports
http_access deny !Safe_ports
http_access allow icq net
http_access deny banners all
http_access allow computers allsites
http_access deny porno all
http_access deny flash all
http_access deny bad all
http_access deny media all
http_access allow griff_98
http_access allow NTLMauth net
http_access deny allhttp_reply_access allow all
icp_access allow all
tcp_outgoing_address 192.168.4.220
cache_mgr proxy@tp.kurgan.ru
cache_effective_user squid
error_directory /usr/local/squid/share/errors/Russian-1251
coredump_dir /var/squid/cache
>Вот лог
Больше на конфиг похоже :-)Ну и где delay pools? Или у тебя внешние шейперы?
Где разброс по двум каналам? Делается приблизительно так:
tcp_outgoing_address <ip1> <acl_11> <acl_12> ...
tcp_outgoing_address <ip2> <acl_21> <acl_22> ...Т.е. одних выпускать с одного айпишника, других - с другого. Если каналов два, достаточно одной директивы - для исключений, остальное - через default gateway. Маршрутизация в линуксе через iproute2, в БСД - не знаю.
>>Вот лог
>Больше на конфиг похоже :-)
>
>Ну и где delay pools? Или у тебя внешние шейперы?
>
>Где разброс по двум каналам? Делается приблизительно так:
>tcp_outgoing_address <ip1> <acl_11> <acl_12> ...
>tcp_outgoing_address <ip2> <acl_21> <acl_22> ...
>
>Т.е. одних выпускать с одного айпишника, других - с другого. Если каналов
>два, достаточно одной директивы - для исключений, остальное - через default
>gateway. Маршрутизация в линуксе через iproute2, в БСД - не знаю.
>
А что в ACL должно быть, привиди пример пожайлуйста. Буду очень благодарен.
Обьясняю ситуацию более подробно. Имеентся два прокси сервера. Это позволяет пользователю в зависимости от его желания пользоваться либо 3128 либо 8080 портами (медленный и быстрый, соответственно). А мне учитывать трафик платный и бесплатный, т.к. есть анализировать два разных лога. Если мы и при помощи tcp_outgoing_address разруливаем пользователей по двум разным каналам, то некоторые пользователи ходят по быстрому, а некоторые по медленному. А можно ли тогда как нибуть к быстрому прикрутить cache_peer proxy провайдера.
>зависимости от его желания пользоваться либо 3128 либо 8080 портамиОткрыть два порта
http_port 3128
http_port 8080Или еще правильнее
http_port <ip-адрес>:<порт>ACL для этих двух портов:
acl mp_slow myport 3128
acl mp_quick myport 8080Разделение трафика:
tcp_outgoing_address <ip_адрес_1> mp_slow
tcp_outgoing_address <ip_адрес_2> mp_quickМаршрутизацию только вначале нужно настроить :-)
cache_peer тоже также прикрутить можно, но я не пользовался.
Чтобы одна закачка не забивала весь канал - либо шейперы, либо delay pools.Самое интересное, что вся эта инфа почерпнута из squid.conf.default
Спасибо. Ты мне очень помог.
>А зачем два прокси запускать? Можно в одном два порта открыть.
>Обращайтесь, поможем. :-)
А как два порта открыть на одном прокси ?????
А можно ли заставить два прокси сервера работать с одним кешем, Что для этого надо сделать. У меня ситуация такого характера, что оч. неудобно будет если я буду использовать один прокси на всех. А затраты на ресурсы компьютерные от этого ведь все равно не увеличатся.Сначала все по порядку.
Первый вариант:
Имеем один прокси сервер, на котором открыты два порта на быстрый и медленный канал. В зависимости от того какой пользователь подключился к серверу (NTLM-авторизация) наш прокси дает Интернет по каналу указанному для пользователя в конфиге. Получается все красиво со стороны реализации все этой штуки и со стророны пользователей. Допустим наш директор постоянно сидит на скоростном канале, но иногда и ,знаете, хочет и порнуху покачать и музычку и по Аске пообщаться не в накладку. Поэтому он просто бурет и меняет порт 8080 на 3128 и все тип-топ. Это еще хорошо и тем что вес быстрый и медленный кеш в одном месте.
Но, есть одно но!!!! Как будем считать трафик!!! Как будем разделять где директорский безлимитный, а где платный трафик. Ведь в логах только указывается запрашивается ресурс и имя пользователя. Здесь у меня заминка. В голове вертится только одно решение: разделить весь трафик не по портам а по IP-адресам. Допустим у нашего прокси два интерфейса 192.168.0.254 - медленный и 192.168.65.254 - быстрый. Тогда пакеты приходящие с 192.168.0.* сетки будут расматриваться как медленный интернет, а с 192.168.65.* сетки - как быстрый. Пользователь просто меняет в настройках IP-адрес прокси и вс етип-топ. Тогда задача упирается в учет трафика. Как заставить SARG считать трафик не по отдельному прользователю, а по всязке "пользоатель-IP-адрес".Второй вариант более прост:
Поставить два прокси на один комп. Опредилить порты. Настроить маршрутизацию и все. Можно пользоваться. У нас есть не зависящие друг от друга логи, только одно НО. Кеш прокси сервера у на хранится в двух разных папках. А хотелось бы чтобы он был общим. Как это сделать?Хотелось бы услышать ваше мнение по высказзанному мною выше.
Жду предложений.
Спасибо.
Вариант первый. Прокси один, кеш один, два разных порта и tcp_outgoing_address. В логах действительно не всё указывается, но можно с оригинального сайта взять патч и custom-изировать лог, т.е указать какие поля нужны. Потом написать/адаптировать софрт для подсчёта.Вариант второй. Поднять два прокси, но у одного сделать кеш, а второго запретить сохранение на диск (cache_dir none или что-то в этом духе) и указать ему родительским прокси первый.
>>А зачем два прокси запускать? Можно в одном два порта открыть.
>>Обращайтесь, поможем. :-)
>А как два порта открыть на одном прокси ?????http_port 3128 8080