Всё не так просто... » delay_access http://www.lab108.ru Мэрфолог-практик Sat, 10 Sep 2016 19:25:18 +0000 ru-RU hourly 1 http://wordpress.org/?v=3.9.14 Squid пулы задержки /2009/02/17/squid-puly-zaderzhki/ /2009/02/17/squid-puly-zaderzhki/#comments Tue, 17 Feb 2009 07:33:55 +0000 /?p=1493 Во! Вот такие запросы мне нравятся.



Для чего это надо? Рано или поздно начинаешь понимать, что отдавать на растерзание пользователям весь канал в интернет становится нецелесообразным. Кроме просмотра разных сайтов и скачивания всякой гадости хотелось бы оставить часть канала для чего то более полезного. Для этого в squid есть пулы задержки.

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

Вот что пишут знающие люди в squid howto на NC LUG

#Ограничение трафика
delay_pools 3 #Выделяем 3 пула задержки

delay_class 1 2 #Пул класса 2
delay_class 2 3 #Пул класса 3
delay_class 3 2 #Пул класса 2

Классы пулов задержки:
Класс 1 – одна часть пула на всех из этого класса
Класс 2 – одна общая часть пула и 255 отдельных для каждого хоста из C-сетки
Класс 3 – 255 частей для каждой сетки (класс B) и отдельная для каждого хоста

Формат строки параметрой пула:
delay_parameters [номер пула] [all_downl/all_size] [net_downl/net_size] [one_downl/one_size]
all – на всех
net – на подсеть
one – на отдельный адрес
downl – скорость заполнения части (байт/сек)
size – объем части пула (байт)

Для пула класса 1 используется только all
Для пула класса 2 используется all и net
Для пула класса 3 используется all, net и one

delay_access 1 allow server #Разрешаем серверу ходить через 1-й пул
delay_access 1 deny all #Остальным запрещаем
delay_parameters 1 -1/-1 -1/-1 #Параметры 1-го пула – без ограничений

delay_access 2 allow zal #Разрешаем комп. классу ходить через 2-й пул
delay_access 2 deny all #Остальным запрещаем
delay_parameters 2 8000/8000 8000/8000 4000/4000 #Параметры 2-го пула: канал на все и сеть – 8 кбсек(64 кбитсек) и на каждую машину не более 4 кбсек

delay_access 2 allow bibl #Разрешаем библиотеке ходить через 3-й пул
delay_access 3 deny all #Остальным запрещаем
delay_parameters 3 6000/6000 -1/-1 #Параметры 3-го пула: канал на все – 6 кбсек(56 кбитсек), а как они его поделят – не наши проблемы ;)

Примерно то же самое написано в комментариях к тэгам в squid.conf и в 19-м разделе FAQ по squid в /usr/share/doc/squid. Но там на английском языке.

Пара слов вот об этом: size – объем части пула (байт).

Если я правильно понял, то этот параметр указывает на то, с какого объёма скачанного файла включать ограничения по скорости. Для чего это надо. При обычном сёрфе по сети пользователь качает странички и небольшие картинки, а особо наглые просматривают картинки в высоких разрешениях, ролики с видеохостингов и качают музыку или киношки. Оно надо? Нет. Пулы срабатывают на вот таких наглецов. не надо грузить сеть паразитным трафиком.

И ещё, для delay_access надо прописать ACL со списками кого куда кидаем

Типа,

acl all src 10.1.0.0/16
acl bibl src “/etc/squid/bibl”

ну и так далее…

примерно так.

]]>
/2009/02/17/squid-puly-zaderzhki/feed/ 0