Возможны ли приоритеты трафика?

Обсуждение настройки и работы сервисов, резервирования, сетевых настроек и вопросов безопасности ОС.

Модераторы: SLEDopit, Модераторы разделов

Аватара пользователя
Spider84
Сообщения: 79

Возможны ли приоритеты трафика?

Сообщение Spider84 »

Есть ли способ задать приоритет трафика по портам? К примеру хочу чтобы ICQ (TCP:5190) работала в высшем приоритете. Что я понимаю под приоритетом? Это к примеру у меня сейчас так, что когда я что-то тяну с HTTP усиленно, то ICQ отваливается с ping timeout. А как бы сделать так, чтобы лучше HTTP пакеты терялись при большой нагрузке в пользу ICQ? Куда хоть рыть?
Спасибо сказали:
Tokra
Сообщения: 399

Re: Возможны ли приоритеты трафика?

Сообщение Tokra »

Spider84 писал(а):
03.02.2008 23:18
Есть ли способ задать приоритет трафика по портам? К примеру хочу чтобы ICQ (TCP:5190) работала в высшем приоритете. Что я понимаю под приоритетом? Это к примеру у меня сейчас так, что когда я что-то тяну с HTTP усиленно, то ICQ отваливается с ping timeout. А как бы сделать так, чтобы лучше HTTP пакеты терялись при большой нагрузке в пользу ICQ? Куда хоть рыть?

Доброго времени суток. Сразу к делу. Рыть надо в сторону CBQ.init & HTB.init, ну, и конечно, в сторону утилиты tc, входящей в состав iproute2. Подробнее здесь
Спасибо сказали:
Аватара пользователя
Spider84
Сообщения: 79

Re: Возможны ли приоритеты трафика?

Сообщение Spider84 »

tc qdisc add dev ppp0 root handle 1:0 htb
tc filter add dev ppp0 protocol ip parent 1: prio 1 u32 match ip dport 5190 0xffff flowid 1:1
tc filter add dev ppp0 protocol ip parent 1: prio 1 u32 match ip dport 80 0xffff flowid 1:1
tc filter add dev ppp0 protocol ip parent 1: prio 2 flowid 1:2

это правильная логика? Или что-то не так?
Там что-то так много про всё это, и всё не понятно :)
Спасибо сказали:
Аватара пользователя
Spider84
Сообщения: 79

Re: Возможны ли приоритеты трафика?

Сообщение Spider84 »

Люди добрые. До сих пор вникаю в шейпинг.
попробовал реализовать ограничение/распределние канала на htb.
Но вот незадача. Я так понял я могу помимо максимальной скорости выставить так же и "долю" на которую можно занять канал при нагрузке.
Но вот с последним немного непонятно. Подскажите куда рыть и начто смотреть при следующей архитектуре сети:
Inet <-> (eth0 + pppoe + ppp0) <-> (eth1 + NAT + pptpd) <-> (pppN)

т.е. могу я к примеру разрешить ppp1 использовать канал в полную ширину, но если есть "нагрузка" на канал помимо его самого, то урезать до какой-то конкретной скорости?
просто канал как бы получается лимитируется внутри ppp1, а нагрузку нужно смотреть на ppp0 и вот тут не стыковка у меня :( Как?

Заранее спасибо.
Спасибо сказали:
Аватара пользователя
Olden Gremlin
Сообщения: 365
Статус: RAP22-RIPE
ОС: Debian GNU/Linux Wheezy

Re: Возможны ли приоритеты трафика?

Сообщение Olden Gremlin »

Spider84 писал(а):
03.02.2008 23:18
Есть ли способ задать приоритет трафика по портам? К примеру хочу чтобы ICQ (TCP:5190) работала в высшем приоритете. Что я понимаю под приоритетом? Это к примеру у меня сейчас так, что когда я что-то тяну с HTTP усиленно, то ICQ отваливается с ping timeout. А как бы сделать так, чтобы лучше HTTP пакеты терялись при большой нагрузке в пользу ICQ? Куда хоть рыть?
Если я Вас правильно понял, то мы говорим о функционале качества обслуживания? Тогда самое время посмотреть в сторону FAQ раздела Администрирование и почитать статью "Задействуем функционал QoS".
О том, что такое биты ToS и DSCP и как и с чем их едят, очень неплохо написано в книге "Качество обслуживания в сетях IP" издательства "Cisco Press".
«Когда у общества нет цветовой дифференциации штанов — то нет цели!»
nic-hdl: RAP22-RIPE
Спасибо сказали:
Аватара пользователя
Spider84
Сообщения: 79

Re: Возможны ли приоритеты трафика?

Сообщение Spider84 »

Дабы не плодить топики решил ответить сюда.

Решил попробовать FAQ aka Оглавление
и помимо непонятных мне дублирующихся строк:

Код: Выделить всё

[0:0] -A FORWARD -j DSCP --set-dscp 0x0a
[0:0] -A FORWARD -j DSCP --set-dscp 0x0a
[0:0] -A FORWARD -p gre -j DSCP --set-dscp 0x2e
[0:0] -A FORWARD -p gre -j DSCP --set-dscp 0x2e
[0:0] -A FORWARD -p icmp -m icmp --icmp-type any -j DSCP --set-dscp 0x1a
[0:0] -A FORWARD -p icmp -m icmp --icmp-type any -j DSCP --set-dscp 0x1a

почему-то при наличии этого дела перестаёт ходить трафик через OpenVPN. Но не весь ...
к примеру у меня поднят ppp0 через который tap0 с локальным адресом 10.2.0.2 и default gw через 10.2.0.1.
Так вот 10.2.0.1 пингуется, а вот 4.2.2.3 через него уже нет. В tcpdump видно, что идут arp пакеты с попыткой определить MAC куда слать.
Если же отчистить таблицу mangle что всё начинает работать. Как это всё между собой связано, не понятно.
Может кто-нить разъяснит мне ? :(
Спасибо сказали:
Аватара пользователя
Olden Gremlin
Сообщения: 365
Статус: RAP22-RIPE
ОС: Debian GNU/Linux Wheezy

Re: Возможны ли приоритеты трафика?

Сообщение Olden Gremlin »

Spider84 писал(а):
29.05.2010 17:00
и помимо непонятных мне дублирующихся строк
Непонятных совсем или непонятно почему дублирующихся? Для второго варианта вопроса ответ таков:
  • не стоит пример воспринимать как прямое руководство к действию
  • опечатался, потому и сдублированы строки... это просто пример


Spider84 писал(а):
29.05.2010 17:00
почему-то при наличии этого дела перестаёт ходить трафик через OpenVPN. Но не весь ...
к примеру у меня поднят ppp0 через который tap0 с локальным адресом 10.2.0.2 и default gw через 10.2.0.1.
Так вот 10.2.0.1 пингуется, а вот 4.2.2.3 через него уже нет. В tcpdump видно, что идут arp пакеты с попыткой определить MAC куда слать.
Если же отчистить таблицу mangle что всё начинает работать. Как это всё между собой связано, не понятно.
Может кто-нить разъяснит мне ? :(
OpenVPN это сеансовый, пятый, уровень. arp - это сетевой, третий, уровень, а mac - канальный, второй. Желательно чётко представлять как уровни взаимодействуют между собой и не путать хрен с редькой. Так о чём, собственно, речь?
Просто не совсем ясна схема сети, это раз. А во-вторых, совершенно не видно какие именно правила в mangle присутствуют.
Пытаться-же дать советы по обслуживанию сферического коня в вакууме как-то не интересно :(
«Когда у общества нет цветовой дифференциации штанов — то нет цели!»
nic-hdl: RAP22-RIPE
Спасибо сказали: