Проблема следующая:
Есть 2 ISP (ISP1 и ISP2), есть локальная сеть (предприятия), есть сеть wifi (пользователи с мобильными устройствами свободно подключаются)
ISP1_GATE----------(ISP1_IP)| Linux (2.6.28)|(WIFI_IP)-----------WIFI_NET(172.16/16)
|(iptables),tc |
ISP2_GATE----------(ISP2_IP)| |(MGMT_IP)-----------MGMT_NET(10.54/16)
Пропускная способность одинаковая у обоих каналов (по 4 Мбит/с)1.Задача сделать балансировку трафика по каналам 50x50 (собственно уже сделано, просто в iptables (модуль statistic маркировал пакеты (CONNMARK) и делил пополам в разные каналы)
2.Нужно сделать интеллектуальное управление трафиком(tc,HTB):
Так как корневая очередь HTB (и других классовых дисциплин) привязана к интерфейсу, то я не могу создать общую корневую очередь с CEIL = 8Мбит, который делится на 2 локальных сетки.
Общую корневую очередь надо создать для того, чтоб наследовать пропускную способность при отсутствии загрузки канала другими пользователями(из разных локальных сетей).
Чтоб в идеале при отсутствии пользователей, один подключившийся мог использовать сумарную пропускную способность каналовЕсть какой-нибудь выход?
>[оверквотинг удален]
>
>Так как корневая очередь HTB (и других классовых дисциплин) привязана к интерфейсу,
>то я не могу создать общую корневую очередь с CEIL =
>8Мбит, который делится на 2 локальных сетки.
>Общую корневую очередь надо создать для того, чтоб наследовать пропускную способность при
>отсутствии загрузки канала другими пользователями(из разных локальных сетей).
>Чтоб в идеале при отсутствии пользователей, один подключившийся мог использовать сумарную пропускную
>способность каналов
>
>Есть какой-нибудь выход?общий CEIL можно сделать через IMQ
только всё равно будет работать криво, потому как ни модуть statistic ни модуль rateest не дают того эффекта который бы хотелось. А вот если дополнительно использовать ipset, то получается лучше, но слишком накладно (для CPU) , да и чистить нужно.
>[оверквотинг удален]
>>способность каналов
>>
>>Есть какой-нибудь выход?
>
>общий CEIL можно сделать через IMQ
>
>только всё равно будет работать криво, потому как ни модуть statistic ни
>модуль rateest не дают того эффекта который бы хотелось. А вот
>если дополнительно использовать ipset, то получается лучше, но слишком накладно (для
>CPU) , да и чистить нужно.так вроде ipset для другого нужен (крупные хэшированные списки сетей-ip или там mac-ip, чтоб не плодить тысячи правил в iptables)...
Спасибо за направление в область псевдоустройств - поднял IFB
Интересная особенность работы statistic скажем с сайтом vkontakte. Страница грузится бесконечно, тоесть загрузилась -> опять перезагрузилась и т.д., а иногда нормально, иногда опять зацикливается . Единственное что приходит в голову, что в рамках текущего соединения создается еще и направляется по второму каналу (эффект многопоточности) - что особенность работы php на стороне vkontakte. С другими сайтами такого нет