Перейти к содержимому
Калькуляторы

Squid и количество запросов/сек. Выделение ресурсов под большую нагрузку.

Здравствуйте. Поделитесь опытом пожалуйста.

 

Стоит задача. Из всего http/https трафика ограничить доступ к определенным url. Для этого весь http/https трафик будет перенаправляться с циски на прокси.

Политика прокси: пропускать все,кроме определенных url. Прокси будет настроен как прозрачный. Кеширования не будет.

Пока я ориентируюсь на использование SQUID как самого популярного.

 

Сейчас у нас идет 11000 запросов/секунту HTTP трафика и 1000 запросов/сек HTTPS трафика.

 

Вопрос вот в чем. Выдерживает ли squid такое количество запросов? Есть примеры у кого-нибудь использования squid под подобными нагрузками? Если вопрос исключительно в ресурсах сервера,то как можно расчитать необходимые ресурсы для такой нагрузки?

Планируется для этих нужд купить какой-нить блейд-сервер и добавлять в него лезвия по мере необходимости.

 

Спасибо.

Изменено пользователем atomlab

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

а почему бы не порезать доступ на циске? Много записей в блэклист попадет?

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

а почему бы не порезать доступ на циске? Много записей в блэклист попадет?

Нет. На нашей циске просто нет возможности глубокого анализа пакетов. Поэтому через проксю гнать трафик будем.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

крайне не советую использовать для http squid.

лучше взять nginx чисто под http и написать perl handler, который будет реализовывать возможности белых листов и не париться за железо вообще. сквид дико прожорливый в сравнении с nginx, хотя Сысоев и не рекомендует использовать nginx как forward-proxy, но с этим нет никаких проблем. другое дело, что https трафик придётся всё-равно на squid рулить, т.к. nginx не поддерживает https.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

крайне не советую использовать для http squid.

лучше взять nginx чисто под http и написать perl handler, который будет реализовывать возможности белых листов и не париться за железо вообще. сквид дико прожорливый в сравнении с nginx, хотя Сысоев и не рекомендует использовать nginx как forward-proxy, но с этим нет никаких проблем. другое дело, что https трафик придётся всё-равно на squid рулить, т.к. nginx не поддерживает https.

 

А в чем прожорливость сквида? При каких нагрузках ничинаются проблемы и в чем выражаются?

Железо будет тоже не слабое. Просто интересно, как работотает сквид под большими нагрузками. Или squid оринтирован только на небольшие корпоративные сети?

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

крайне не советую использовать для http squid.

лучше взять nginx чисто под http и написать perl handler, который будет реализовывать возможности белых листов и не париться за железо вообще. сквид дико прожорливый в сравнении с nginx, хотя Сысоев и не рекомендует использовать nginx как forward-proxy, но с этим нет никаких проблем. другое дело, что https трафик придётся всё-равно на squid рулить, т.к. nginx не поддерживает https.

 

А в чем прожорливость сквида? При каких нагрузках ничинаются проблемы и в чем выражаются?

Железо будет тоже не слабое. Просто интересно, как работотает сквид под большими нагрузками. Или squid оринтирован только на небольшие корпоративные сети?

от 2к на core2quad начинаются проблемы. дико тормозит.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

У меня сквид сильно жрал проц при отключении дискового кеша. Может мне просто "повезло".

Я бы тоже смотрел в сторону фильтрации на nginx.

Про https лучше забыть.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

крайне не советую использовать для http squid.

лучше взять nginx чисто под http и написать perl handler, который будет реализовывать возможности белых листов и не париться за железо вообще. сквид дико прожорливый в сравнении с nginx, хотя Сысоев и не рекомендует использовать nginx как forward-proxy, но с этим нет никаких проблем. другое дело, что https трафик придётся всё-равно на squid рулить, т.к. nginx не поддерживает https.

 

А в чем прожорливость сквида? При каких нагрузках ничинаются проблемы и в чем выражаются?

Железо будет тоже не слабое. Просто интересно, как работотает сквид под большими нагрузками. Или squid оринтирован только на небольшие корпоративные сети?

от 2к на core2quad начинаются проблемы. дико тормозит.

 

Что именно тормозит? Процесс squid потребляет 100% процессорного времени или память всю сжирает?

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Я вообще на данный момент тестировал squid 2.7.

У вас тоже squid 2.х крутится везде?

 

А что по поводу Squid3? Squid 3 переписан почти полностью с нуля на C++. Случаем никто не юзал?

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Толку то с этих плюсов, лучше бы хттп 1.1 зарелизили окончательно.

У меня сквид 3х (последний с портов), про него и писал.

Крутится дома и у некоторых клиентов, кеширует по мелочи и режет рекламу и всякую хрень по спискам. Назгрузка на него никакая.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

У меня сквид сильно жрал проц при отключении дискового кеша. Может мне просто "повезло".

именно! дисковый кэш был отключен, со включенным не тестировал.

Что именно тормозит? Процесс squid потребляет 100% процессорного времени или память всю сжирает?

100% отжирал. смысла его параллелить нет никакого, а мультипоточность он не поддерживает.

У вас тоже squid 2.х крутится везде?

2.6 использовал.

Про https лучше забыть.

нет, достаточно с помощью того же iptables редиректить https трафик на сквид, а http на nginx.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

нет, достаточно с помощью того же iptables редиректить https трафик на сквид, а http на nginx.

вот только на сертификаты будет ругаться.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

может лучше DPI купить небольшой, тем более корпоратив ...

Ну или если зочется развлечений и нет денег, то можно поставить сервак со snort и попробовать резать там.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Здравствуйте. Поделитесь опытом пожалуйста.

 

Стоит задача. Из всего http/https трафика ограничить доступ к определенным url. Для этого весь http/https трафик будет перенаправляться с циски на прокси.

Политика прокси: пропускать все,кроме определенных url. Прокси будет настроен как прозрачный. Кеширования не будет.

Пока я ориентируюсь на использование SQUID как самого популярного.

 

Сейчас у нас идет 11000 запросов/секунту HTTP трафика и 1000 запросов/сек HTTPS трафика.

 

Вопрос вот в чем. Выдерживает ли squid такое количество запросов? Есть примеры у кого-нибудь использования squid под подобными нагрузками? Если вопрос исключительно в ресурсах сервера,то как можно расчитать необходимые ресурсы для такой нагрузки?

Планируется для этих нужд купить какой-нить блейд-сервер и добавлять в него лезвия по мере необходимости.

 

Спасибо.

 

https трафик нельзя проксировать прозрачно.

Для http можете посмотреть на haproxy, он позиционируется как прокси для высоконагруженных систем.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

может лучше DPI купить небольшой, тем более корпоратив ...

Ну или если зочется развлечений и нет денег, то можно поставить сервак со snort и попробовать резать там.

Да нам предлагали готове DPI решение. Цена вопроса 18млн. Многова-то что просто заблокировать несколько сайтов.

Поэтому ищем что-нибуль попроще.

 

Здравствуйте. Поделитесь опытом пожалуйста.

 

Стоит задача. Из всего http/https трафика ограничить доступ к определенным url. Для этого весь http/https трафик будет перенаправляться с циски на прокси.

Политика прокси: пропускать все,кроме определенных url. Прокси будет настроен как прозрачный. Кеширования не будет.

Пока я ориентируюсь на использование SQUID как самого популярного.

 

Сейчас у нас идет 11000 запросов/секунту HTTP трафика и 1000 запросов/сек HTTPS трафика.

 

Вопрос вот в чем. Выдерживает ли squid такое количество запросов? Есть примеры у кого-нибудь использования squid под подобными нагрузками? Если вопрос исключительно в ресурсах сервера,то как можно расчитать необходимые ресурсы для такой нагрузки?

Планируется для этих нужд купить какой-нить блейд-сервер и добавлять в него лезвия по мере необходимости.

 

Спасибо.

 

https трафик нельзя проксировать прозрачно.

Для http можете посмотреть на haproxy, он позиционируется как прокси для высоконагруженных систем.

 

спасибо за нваодку. Почитаю что это за haproxy.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Эээ.. а несколько сайтов сильно скачуть по IP, что обязательно валить ВСЕ на сквид, а не только искомые IP ? или вы гугль фильтруете ?

 

А так некеширующий сквид параллелится путем запуска нескольких сквидов (по числу ядер - 1) на разных портах и заворачиванию туда round-robinом.. Сквид 3.1. В 3.2 обещали многопоточность, но тестировать надо..

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Эээ.. а несколько сайтов сильно скачуть по IP, что обязательно валить ВСЕ на сквид, а не только искомые IP ? или вы гугль фильтруете ?

 

А так некеширующий сквид параллелится путем запуска нескольких сквидов (по числу ядер - 1) на разных портах и заворачиванию туда round-robinом.. Сквид 3.1. В 3.2 обещали многопоточность, но тестировать надо..

 

Сайт может просто сменить ip и все. Каждый раз ловить смену ip не айс. Во вторых требуется возможность блочить просто странички,т.е конкретный url.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

ну да, есть недостатки. Но заворачивать в сквид только IP, урлы которых есть в списке на много-много порядков дешевле чем весь интернет. Да, список IP надо постоянно мониторить. Естественно если надо фильтровать pupkin.ru/vsjakaka/hren.html то заворачивать надо 195.177.204.16 и этот pupkin.ru мониторить на предмет смены IP. Ну а некоторый временной лаг, проверяйте раз в минуту. А так сайт может сменить не только IP но и имя. И опа. Я так думаю что есть куча кучастая фильтрующих проксей, режущих вконтакте ру и не знающих про то что он давно вк.ком. Мониторить надо по любому.

 

Ну или да, создавать пром решение с кучей ядер-памяти (возможно и кучей физических машин, смотря по нагрузке) и гнать туда все. Может оказаться что готовое решение за озвученную сумму не так уж и дорого..

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Не пугайте человека :)

Для оценки нагрузки можно просто посмотреть на жручесть nginx, и прикинуть что это примерно будет как отдача статики, может в два раза более по нагрузке.

Подтюнить буфера и таймауты, и оно будет вполне себе работать.

Самое сложное списки прикрутить, перл уже советовали, можно поискать в модулях или написать самому. Если не умеете - за деньги на фрилансе сделают.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

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

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Перл там не внешний, так что оно шустро будет.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

насчет перла мое имхо, тестами не подкрепленное.. Cтало интересно, попытаюсь у себя настроить в камне на нгинксе-перле функционал с текущего сквида - погонять :) Может оно тоже ниче получится.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Для теста настроил nginx как http forward. Nginx используется же на высоконагруженных web ресурсах. Может и выдержит. Тестить надо. Единственное Сысоев предупреждает,что использование nginx в качестве http forward возможно,но могут быть неожиданности:)

 

Еще ковыряю вариант iptables + модуль string. Он тупо грепает пакеты на наличие совпадений. Пока грепаю на наличие запросов GET конкретного ресурса. Типа искать в пакете

GET /<uri> HTTP/

Host: <domain>

 

Незнаю как поведет себя iptables при большом потоке пакетов. Какждый же нужно грепать.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Для обхода такого мач фильтра можно посылать гет кусками.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Для обхода такого мач фильтра можно посылать гет кусками.

Это как?

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Гость
Ответить в тему...

×   Вставлено в виде отформатированного текста.   Вставить в виде обычного текста

  Разрешено не более 75 смайлов.

×   Ваша ссылка была автоматически встроена.   Отобразить как ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставить изображения напрямую. Загрузите или вставьте изображения по ссылке.