Добрый день!
У меня канал от провайдера 15 мбит/с, мне необходимо его разделить на огромное число пользователей (ок 4000), используемый мною для этих целей шейпер работает, но в пиковые нагрузки сбоит, со стороны файрфокса я вижу сообщение "Сервер разорвал соединение" и после рефреша страница загружается нормально со стороны IE загрузчика файлов происходит замерание на каком-то этапе загрузки и загрузка далее не продолжается.
#!/bin/bash
#V1.0
INT_IFACE="eth0"
TC="/sbin/tc"
UNITS="kbit"
LINE="15000"
NUMREGIONS="28"
RESERV="1000"
SPORT="match ip sport"
DHOST="match ip dst"
SHOST="match ip src"HIGHWATER=`echo ${LINE}-${RESERV}|bc`
HIGHWATERWEAK=4000
HIGHWATERSTRONG=9000function lowcount {
LOWATER=`echo ${REGKOEF}*${LINE}|bc -l`
}
${TC} qdisc del dev ${INT_IFACE} root${TC} qdisc add dev ${INT_IFACE} root handle 1:0 htb
${TC} class add dev ${INT_IFACE} parent 1:0 classid 1:1 htb rate ${LINE}${UNITS} ceil ${LINE}${UNITS}############################################################CLASSY#########################################################
REGKOEF=0.009
lowcount
${TC} class add dev ${INT_IFACE} parent 1:1 classid 1:2 htb rate ${LOWATER}${UNITS} ceil ${HIGHWATERSTRONG}${UNITS}
REGKOEF=0.001
lowcount
${TC} class add dev ${INT_IFACE} parent 1:1 classid 1:3 htb rate ${LOWATER}${UNITS} ceil ${HIGHWATERSTRONG}${UNITS}
..........
############################################################FILTRY#########################################################
${TC} filter add dev ${INT_IFACE} parent 1:0 protocol ip prio 2 u32 ${DHOST} 10.10.15.0/24 ${SPORT} 3128 0xffff flowid 1:2
${TC} filter add dev ${INT_IFACE} parent 1:0 protocol ip prio 2 u32 ${DHOST} 10.10.16.0/24 ${SPORT} 3128 0xffff flowid 1:2
${TC} filter add dev ${INT_IFACE} parent 1:0 protocol ip prio 2 u32 ${DHOST} 10.10.17.0/24 ${SPORT} 3128 0xffff flowid 1:2
${TC} filter add dev ${INT_IFACE} parent 1:0 protocol ip prio 2 u32 ${DHOST} 10.10.25.0/24 ${SPORT} 3128 0xffff flowid 1:3
${TC} filter add dev ${INT_IFACE} parent 1:0 protocol ip prio 2 u32 ${DHOST} 10.10.26.0/24 ${SPORT} 3128 0xffff flowid 1:3
${TC} filter add dev ${INT_IFACE} parent 1:0 protocol ip prio 2 u32 ${DHOST} 10.10.27.0/24 ${SPORT} 3128 0xffff flowid 1:3
............
############################################################OCHEREDI########################################################
${TC} qdisc add dev ${INT_IFACE} parent 1:2 sfq perturb 15
${TC} qdisc add dev ${INT_IFACE} parent 1:3 sfq perturb 15
............
скрипт сокращен.В чем может быть проблема?
Для корневого класса (classid 1:1), насколько я понимаю, очередь нельзя прикрутить?
>Добрый день!
>У меня канал от провайдера 15 мбит/с, мне необходимо его разделить на
>огромное число пользователей (ок 4000), используемый мною для этих целей шейпера что нужно от этого шейпера 4000 пользователям ?
>а что нужно от этого шейпера 4000 пользователям ?Каждая группа юзеров имеет свою гарантированную скорость доступа, если группа хочет бОльшую скорость, то шейпер ее предоставляет отнимая неиспользуемую гарантированную скорость у другой группы. В самой группе трафик делится честно между всеми членами группы. Всего групп 28 а sfq должно поддерживать одновременно 1024 пассивные и 128 активные очереди, поэтому я надеюсь что длины очередей хватает для группы. Сквид настроен на maxcon 20.
>>а что нужно от этого шейпера 4000 пользователям ?
>
>Каждая группа юзеров имеет свою гарантированную скорость доступа, если группа хочет бОльшую
>скорость, то шейпер ее предоставляет отнимая неиспользуемую гарантированную скорость у другой
>группы. В самой группе трафик делится честно между всеми членами группы.
>Всего групп 28 а sfq должно поддерживать одновременно 1024 пассивные и
>128 активные очереди, поэтому я надеюсь что длины очередей хватает для
>группы. Сквид настроен на maxcon 20.т.е., если я правильно понял, то имеется 28 классов htb, на каждый из которых
навешана sfq ?
>навешана sfq ?да так и есть.
>>навешана sfq ?
>
>да так и есть.мне кажется, что следует крутить burst в сторону увеличения.
на самом деле вопросов много, я их готов обсудить в gtalk.
но один таки задам - а чем squid delay pools не устраивают ?
>но один таки задам - а чем squid delay pools не устраивают
>?Разве можно настроить delay pools на динамическое распределение трафика?
>>но один таки задам - а чем squid delay pools не устраивают
>>?
>
>Разве можно настроить delay pools на динамическое распределение трафика?если я правильно помню, то параметры delay_pool выглядят
speed/max_speed,
т.е. если для 2 групп это будет выглядеть так
delay_parameters 3 64000/64000 32000/64000 6400/32000т.е. максимум по 32К на рыло из 64К общей пропускной способности