Jump to content
Калькуляторы

QOS iptables

Коллеги, на форуме много тем поднималось по классификации трафика.

есть задача, громко ее назвать можно как DPI на linux, суть - разбить весь трафик абонента на 3 класса (http, потоковое вещание и пр. и разного рода закачки (ftp, http, p2p)).

Поискал решения - нашел l7-filter и ipp2p.

Вопрос, а можно ли средствами iptables (length, string, mark) выделить из http трафика по длине пакетов просмотр сайтов, потоковое видео и закачки?

Share this post


Link to post
Share on other sites

Можно

см. connbytes

Только p2p идут по кусочкамm и сегментированные закачки тоже

Share this post


Link to post
Share on other sites
Можно

см. connbytes

Только p2p идут по кусочкамm и сегментированные закачки тоже

пока проверяю конструкцию вида:

l7-filter userspace, в конфиге:

http 6

httpvideo 7

httpaudio 7

 

в iptables:

#заворачиваем трафик в фильтр

iptables -t mangle -A PREROUTING ! -i lo -j NFQUEUE --queue-num 0

#переносим метку с пакета на соединение

iptables -t mangle -A POSTROUTING -m mark --mark 6 -j CONNMARK --save-mark

#переносим метку с соединения на пакеты

iptables -t mangle -A POSTROUTING -m connmark --mark 6 -j CONNMARK --restore-mark

#http длиннее 1,2мб - помечаем 9

iptables -t mangle -A POSTROUTING -m mark --mark 6 -m connbytes --connbytes 1200000: --connbytes-dir both --connbytes-mode bytes -j MARK --set-mark 9

iptables -t mangle -A POSTROUTING -m mark --mark 9 -j CONNMARK --save-mark

iptables -t mangle -A POSTROUTING -m connmark --mark 9 -j CONNMARK --restore-mark

 

Логику вроде отрабатывает, может есть какие моменты, которые я не учел? (аудио и видео не проверял еще, только http и закачки через http, метится верно)

Share this post


Link to post
Share on other sites

Мой метод отделения закачек от просмотра страничек не проканал, кто подскажет более рабочйи вариант? :)

 

P.S. ввел дополнительные класы трафика (dns, smtp, pop, p2p, etc), вроде отрабатывает все, а вот с http болт, думал попробовать из набора паттерны для l7-filter, но там расширений файлов не так уж и много для детектирования.

 

Зато забавно видеть как при открывание сайтов торренты прижимаются в полосе :)

Edited by anix

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
Sign in to follow this