The OpenNET Project / Index page

[ новости/++ | форум | wiki | теги ]

форумы  правила/FAQ  поиск  регистрация  вход/выход  слежка  RSS
"Проблема с шейпером HTB в Centos 6"
Вариант для распечатки  
Пред. тема | След. тема 
Форум Открытые системы на сервере (Квоты, ограничения, QoS / Linux)
Изначальное сообщение [ Отслеживать ]

"Проблема с шейпером HTB в Centos 6"  +/
Сообщение от Mirraz (ok) on 24-Сен-17, 18:19 
Пытаюсь настроить шейперы в Centos 6.9.

Есть отдельно шлюз, сервер и клиент. Клиент качает с сервера через шлюз, клиент подключен к интерфейсу eth0 шлюза.

На шлюзе такие настройки:


dev=eth0
tc qdisc add dev $dev root handle 1: htb
tc class add dev $dev parent 1: classid 1:1 htb rate 500Mbit
tc class add dev $dev parent 1:1 classid 1:10 htb rate 64kbit ceil 64kbit
tc qdisc add dev $dev parent 1:10 handle 100: sfq perturb 10
tc filter add dev $dev protocol ip parent 1:0 prio 1 u32 match ip dst 192.168.100.101 flowid 1:10

Начинаю качать файл с сервера на клиент 192.168.100.101. Через некоторое время останавливаю закачку на 192.168.100.101, переподключаюсь и начинаю новую закачку файла. Закачка файла начинается только спустя около 10 секунд.

Как я понял, на шлюзе (с шейпером HTB) есть некий буфер, он в процессе работы наполняется, а когда клиент закрывает соединение, весь трафик от сервера, накопленный в этом буфере, продолжает понемногу (согласно rate) идти клиенту, вместо того чтобы сразу сбросить этот буфер. Причём похоже, что размер буфера одинаковый для всех rate. Это ожидаемое поведение HTB? При переподключении же пакет SYN-ACK от сервера не может пробиться к клиенту через этот мусорный трафик. Но если применить SFQ, который перемешивает пакеты от разных потоков, эффект «затыка» немного нивелируется (без SFQ ждать приходится несколько минут).

Нашёл https://serverfault.com/questions/629838/linux-traffic-contr...... Там чувак говорит, что дело в параметре txqueue интерфейса. Но я пробовал его менять - безрезультатно.

Конфигурация шлюза: Centos 6.9, kernel: 2.6.32

Ответить | Правка | Cообщить модератору

Оглавление

Сообщения по теме [Сортировка по ответам | RSS]

1. "Проблема с шейпером HTB в Centos 6"  +/
Сообщение от pavlinux (ok) on 25-Сен-17, 03:41 
Проблемы буферов в шейперах это миллисекунды, да они превращаются в секунды, только если потоков 1000 и больше.    
И ваще, это HTB/SFQ уже старьё. Нонче модно root mq, ниже - fq_codel  

> Там чувак говорит, что дело в параметре txqueue интерфейса.

как вариант, попробовать вырубить всякие offload на девайсе


ethtool -K eth0 tso off
ethtool -K eth0 gso off
ethtool -K eth0 ufo off
ethtool -K eth0 gro off
ethtool -K eth0 lro off

Ответить | Правка | ^ к родителю #0 | Наверх | Cообщить модератору


Архив | Удалить

Рекомендовать для помещения в FAQ | Индекс форумов | Темы | Пред. тема | След. тема


  Закладки на сайте
  Проследить за страницей
Created 1996-2017 by Maxim Chirkov  
ДобавитьРекламаВебмастеруГИД  
Hosting by Ihor