Просмотр Исходного

h2. Проверить шейперы. Проверка шейперов


h4. 1. Проверить скорость канала.

Запустить две консоли помощника или рута

На первой консоли запустить пункт меню "Мониторинг сети", на а второй консоли такую команду:


{code}
 ip link set down imq1; ip link set down imq0; sleep 60;  ip link set up imq1; ip link set up imq0;
{code}

эта команда на 60 секунд отключит шейперы и канал будет отдавать столько сколько может

Отключаем шейперы под рутом


{code}
ip link set down imq1; ip link set down imq0;
{code}

Смотрим загрузку через menu

Включаем шейперы


{code}
ip link set up imq1; ip link set up imq0;
{code}

h4. * *{color:#000000}*\- Если при выключении шейперов{*}{color} {color:#ff0000}{*}скорость{*}{color} {color:#ff0000}{*}увелич{*}{color}{color:#ff0000}{*}ивается{*}{color} {color:#000000}*\- нужно перестроить шейперы{*}{color} {color:#000000}*(если скорость соо{*}{color}{color:#000000}{*}тветствует заявленной).*{color}{color:#ff0000}* *{color}

h6. Перенастроить шейпер без перезагрузки сервера

Выполните в консоли под [удаленным помощником|asrdocnew:Пользователь root. Режим удаленного помощника. Постоянный удаленный помощник] команду:
{code}
/etc/init.d/firewall_usersd stop; /usr/local/ics/bin/qos.sh; /etc/init.d/firewall_usersd start
{code}

h4. {color:#000000}* *{color}{color:#000000}*\- Если при выключении шейперов{*}{color} {color:#ff0000}{*}скорость не меняется{*}{color} {color:#000000}* \- нужно смотреть дерево шейперов *{color}{color:#000000}(если скорость соответст{color}вует заявленной).{color:#ff0000} {color}


h5. 2. Дерево шейперов. Построение дерева шейперов.

{color:#ff0000}{*}Важно:*{color} {color:#000000}{*}Строить дерево можно только при включенном шейпере{*}{color}

Следующие инструкции позволяют получить в наглядном виде полное дерево шейперов для дальшейшего анализа

imq0 - исходящий

imq1 - входящий

{code}
cd /tmp
/usr/local/ics/bin/render.sh
cat /tmp/stat_imq0.txt
cat /tmp/stat_imq1.txt
{code}Примечание: Техподдержке эту информацию лучше предоставлять в виде отдельных файлов, чтобы не побились отступы.

h4. 3. Анализ дерева шейперов

Проверяем скорости указанные в дереве шейперов. Нас интересует строка вида:

{code}
1:1 rate=710000Kbit ceil=710000Kbit now=5120
{code}

*rate* \- общая гарантированная скорость

*ceil* \- общая максимальная скорость

*now* \- текущая общая скорость

Если значение *now сильно ниже rate* Проверяем:

3.1 Проверить и выставить настройки QOS (в консоли) согласно внешнему каналу.

3.2 Использовать тарифы [справедливый канал|asrdocnew:Тариф Справедливый канал].

3.3 Расширить потребляемый канал.

h2. {color:#000000}{*}Решение проблем:*{color}

h4. 1. Скорости у абонентов не соответствуют скоростям в тарифах. 

Посмотреть вкладку Диагностика в менеджере и нажать кнопку Информация. Вам выведется информация по пользователю и его ограничения шейпера.

Также вы можете получить эту информацию в консоли.

Найти текущий активный шейпер абонента по id клиента

{code}
/usr/local/ics/bin/userinfo <id абонента> | grep -m1 'class htb'
{code}

Вы получите примерно следующий вывод

*{_}class htb 1:2119 parent 1:1097 leaf 2119: prio 0 rate 32Kbit ceil 10000Kbit burst 1603b cburst 2878b{_}*

Элемент&nbsp;_class htb 1:2119_ отражает текущий шейпер пользователя.

&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; _parent 1:1097_ говорит о текущем тарифе пользователя (в данном случае это тариф №97)

Если у абонента в выводе отсутствует&nbsp;_parent,_ то это может говорить о том что при построении дерева шейперов произошел сбой и абоненту не назначилась корневая группа, у абонента будут проблемы со скоростью.

При возникновении такой проблемы нужно перестроить шейперы без перезагрузки сервера как описано выше.

h2. Ограничение скорости с локального интерфейса сервера

Если есть необходимость установить определенную скорость для трафика, идущего с сервера Carbon Billing, можно добавить правило в системный firewall:

!screen1.png|border=1!

При этом скорость с локального ip 10.0.0.1 сервера будет 4096 кбит/с.

h2. Как ограничить локальный и городской трафик

В новых версиях&nbsp; не поддерживается отдельные разные шейперов у пользователя для городских и локальный т.к. это на два порядка увеличивает нагрузку и не дает преимуществ.

Есть несколько вариантов как другим способом ограничить локальную и городскую скорость



*Вариант 1*


Шейпер работает по умолчанию с внешней подсетью.

Ограничить локальный и городской трафик можно по сессиям в меню оптимизация сети

Ограничить скорость локального трафика, n Кбит на сессию&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 500
Ограничить скорость городского трафика, n Кбит на сессию&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 500


Дополнительно можно ограничить суммарный локальный трафик, в Carbon Manager в системном firewall

src 10.0.0.0/255.255.0.0

dst 10.0.0.0/255.255.0.0

действие шейпер, скорость 30000кбит

*Вопрос:* В локальном меню Carbon Billing есть возможность задать скорость "Городского трафика", что это за трафик?

*Ответ:* "Городской трафик" это трафик из внешних сетей, которые в тарифе не ограничены по скорости.

*Вариант 2*

Использование в тарифе правил только для внешней сети (ALL) без правил для локальной и городской

*Вариант 3*


Ограничение на коммутаторе, многие коммутаторы позволяют ограничить скорость порта.


*Рекомендации*


Мы не рекомендуем ограничивать локальную скорость, тк это устаревшая традиция и большие провайдеры уже давно не используют такое ограничение.

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

h2. Как исключить бэкап-сервер из ограничения скорости

Для того, чтобы добавить ip-адрес внутреннего сервера (или подсеть) в исключения правил firewall и шейпера, необходимо произвести следующие действия:

mount \-o rw,remount /mnt/ro_disc/
chattr \-i /usr/local/ics/bin/ics_tune.sh
chmod \+w /usr/local/ics/bin/ics_tune.sh
mcedit /usr/local/ics/bin/ics_tune.sh

В файле ics_tune.sh добавить следующие строки:
{code}if [ "$1" = "firewall.sh" ]; then
iptables -t mangle -I POSTROUTING -d <ip_сервера_статистики> -j ACCEPT
iptables -t mangle -I PREROUTING -s <ip_сервера_статистики> -j ACCEPT
fi{code}
Затем следует перезагрузить сервер либо выполнить команду:
{code}
/usr/local/ics/bin/ics_tune.sh firewall.sh
{code}
*Примечание:* не следует вносить более трех правил, т.к. это может значительно повлиять на загрузку сервера.