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

На каком участке ставить QOS ? до - после -или перед

Добрый день,

 

Купил RB/1100AHx2 на нем настроил QOS и к нему подключил 4 канала в Интернет..

будет ли все работать на ура

если схема включение будет такой

 

Абоненты > Cisco 3750 > (Cервер доступа Шейпер)> Mikrotik QOS > Интернет?

Share this post


Link to post
Share on other sites

Вообще QoS нужно реализовывать максимально близко к конечным устройствам. QoS будет работать только у вас в сети. Если вы конечно о чем-то не договоритесь с оператором. QoS работает на приоритезацию исходящего трафика. Не нужно QoS путать с шейперами, полисерами и другими rate-limit'ами =)

Обычно, на сети делают QoS, то хотят приоритезировать какой-то определённый трафик относительно другого (не приоритетного) трафика, а из вашей схемы не понятно, что вы хотите приоритезировать.

Share this post


Link to post
Share on other sites

Вообще QoS нужно реализовывать максимально близко к конечным устройствам. QoS будет работать только у вас в сети. Если вы конечно о чем-то не договоритесь с оператором. QoS работает на приоритезацию исходящего трафика. Не нужно QoS путать с шейперами, полисерами и другими rate-limit'ами =)

Обычно, на сети делают QoS, то хотят приоритезировать какой-то определённый трафик относительно другого (не приоритетного) трафика, а из вашей схемы не понятно, что вы хотите приоритезировать.

Задача дать приоритет http и прочим стандартным портам, дать низкий приоритет p2p

пропускать первыми очереди запросов связанными с http...

в этом духе.

Share this post


Link to post
Share on other sites

Ну эту задачу обычно каким-то более интеллектуальным решением делают. Типа cisco SCE. Так как трафик p2p маскируется под обычный http. Поэтому простым сопоставлением портов не обойтись.

Не знаю что в этом плане умеет микротик, но у циски это nbar2 на асре или отдельная железка серии SCE.

У juniper'а это AppSecure и AppQoS или отдельная железка серии IDP.

Share this post


Link to post
Share on other sites

Ну эту задачу обычно каким-то более интеллектуальным решением делают. Типа cisco SCE. Так как трафик p2p маскируется под обычный http. Поэтому простым сопоставлением портов не обойтись.

Не знаю что в этом плане умеет микротик, но у циски это nbar2 на асре или отдельная железка серии SCE.

У juniper'а это AppSecure и AppQoS или отдельная железка серии IDP.

Ну так пригляделся в Mikrotik даже L7 фильтр есть. Чем не интеллект?

Edited by Traskalata

Share this post


Link to post
Share on other sites

Есть и встроенные p2p паттерны. Плюс l7, только без фанатизма.

У меня дома отлично распознает весь p2p.

Share this post


Link to post
Share on other sites

В итоге сделал так

Пользователи серые адреса><ETH IP 10.0.70.1Сервер доступа и шейпер для пользователей ETH2 10.0.80.1 gateway 10.0.80.2><ETH3 10.0.80.2 сервер динамического контроля полосы и L7 фильтр, там же NAT > Интернет?

 

рабочая схема или можно сделать лучше?

Share this post


Link to post
Share on other sites

Нарисуйте схему, самому будет понятнее.

Share this post


Link to post
Share on other sites
' timestamp='1342574823' post='734198']

Нарисуйте схему, самому будет понятнее.

Так можно?

post-70900-056455100 1343685347_thumb.jpg

Share this post


Link to post
Share on other sites

Вам для чего конкретно QoS требуется? Во втором посте triam правильно ответил, перечитайте внимательнее. Судя по схеме, у вас тут нет Cisco, в целом, вопросов больше, чем ответов.

Share this post


Link to post
Share on other sites
' timestamp='1343699820' post='737630']

Вам для чего конкретно QoS требуется? Во втором посте triam правильно ответил, перечитайте внимательнее. Судя по схеме, у вас тут нет Cisco, в целом, вопросов больше, чем ответов.

QOS требуется для того чтобы дать приотеризацию на http траффик. Cisco есть, просто в схему не вижу отражать это. В целом я нарисовал логический результат. Т.е. можно ли ставить QOS после NAT? на границу.

Edited by Traskalata

Share this post


Link to post
Share on other sites

мне нравится обсуждение - в тему - как GCF построим за свои кровные - good luck!

Share this post


Link to post
Share on other sites

Нормально все будет работать.

 

Настроите ограничение по максимальному количеству пакетов на пользователя из расчета 150 пакетов на мегабит, и не понадобятся никакие L7 фильтры. Только скорость нужно уменьшить на 5 процентов от максимальной скорости интернета в основном шейпере, иначе приоритезация работать не будет.

 

 

Share this post


Link to post
Share on other sites

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

идеальный вариант: при входе в сеть трафик раскрасить с помощью DSCP, затем отшейпить по очередям с достаточным буфером, а на магистрали до абонента настроить маппинг DSCP -> CoS. Но все это вырастет тольков том случае, если DPI или firewall разумно промаркирует трафик.

Share this post


Link to post
Share on other sites

Нормально все будет работать.

 

Настроите ограничение по максимальному количеству пакетов на пользователя из расчета 150 пакетов на мегабит, и не понадобятся никакие L7 фильтры. Только скорость нужно уменьшить на 5 процентов от максимальной скорости интернета в основном шейпере, иначе приоритезация работать не будет.

Ну так я могу просто количество сессий по портам ограничить на PF NAT. Так могу конечно же. Или вообще кол-во пакетов на каждый мегабит? а как это.. что не в курсе

 

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

идеальный вариант: при входе в сеть трафик раскрасить с помощью DSCP, затем отшейпить по очередям с достаточным буфером, а на магистрали до абонента настроить маппинг DSCP -> CoS. Но все это вырастет тольков том случае, если DPI или firewall разумно промаркирует трафик.

узкое место маленький внешний канал. Хочу чтобы торрентоводы его не забивали, всегда странички хорошо открывались.

Share this post


Link to post
Share on other sites

узкое место маленький внешний канал. Хочу чтобы торрентоводы его не забивали, всегда странички хорошо открывались.

 

Купите cisco sce 1010\2020.

Share this post


Link to post
Share on other sites

узкое место маленький внешний канал. Хочу чтобы торрентоводы его не забивали, всегда странички хорошо открывались.

 

Купите cisco sce 1010\2020.

Да я же простейшее хочу сделать. Просто дать приоритет на 80 порт. Без анализа на 7 уровне. Вот где это сделать..Вопрос только в этом.

У меня есть сервер доступа, есть циска 3750 в ядре, есть..НАТ.

Share this post


Link to post
Share on other sites

Ну так я могу просто количество сессий по портам ограничить на PF NAT. Так могу конечно же. Или вообще кол-во пакетов на каждый мегабит? а как это.. что не в курсе

 

узкое место маленький внешний канал. Хочу чтобы торрентоводы его не забивали, всегда странички хорошо открывались.

 

Начните с того, что определитесь кто канал режет.

 

Например - вы покупаете канал 100 мегабит дуплексом. Обычно вечерами входящий у вас в полку. У провайдера на вашем порту поток данных 110-120 мегабит, он режет их до 100, следовательно никакие ваши приоритеты не работают. Нужно либо с вашей стороны ограничить канал до 85-90 мбит, что бы поток у провайдера был менее 100, либо покупать полосу в 130 мегабит, что бы провайдер ваш трафик никак не ограничивал.

Share this post


Link to post
Share on other sites
Начните с того, что определитесь кто анал режет.

 

Например - вы покупаете канал 100 мегабит дуплексом. Обычно вечерами входящий у вас в полку. У провайдера на вашем порту поток данных 110-120 мегабит, он режет их до 100, следовательно никакие ваши приоритеты не работают. Нужно либо с вашей стороны ограничить канал до 85-90 мбит, что бы поток у провайдера был менее 100, либо покупать полосу в 130 мегабит, что бы провайдер ваш трафик никак не ограничивал.

 

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

Канал по пользователям в индивидуальном порядке у меня режет Dummynet, а я хочу популяризироваться http трафик, общего канала.

Edited by Traskalata

Share this post


Link to post
Share on other sites

В вашй схеме вы выбрали самое логичное место расположения qos для вашей задачи. Больше его пихать не куда. Я так делал в свое время, прозрачным бриджем ставил PC и что-то там ограничивал и приоритезировал.

Без L7 в любом случае найдется умник который пустит торрент по 80 порту, а вы ему поможете пропихивать пакеты побыстрей :)

Share this post


Link to post
Share on other sites

В вашй схеме вы выбрали самое логичное место расположения qos для вашей задачи. Больше его пихать не куда. Я так делал в свое время, прозрачным бриджем ставил PC и что-то там ограничивал и приоритезировал.

Без L7 в любом случае найдется умник который пустит торрент по 80 порту, а вы ему поможете пропихивать пакеты побыстрей :)

Но у меня что не работает QOS когда я ставлю его осле NAT-а. Сам мост рабоатает, а вот приотеризация на базе IPFW нет.

Share this post


Link to post
Share on other sites

Я на IPFW+ALTQ(PF) делал.

 

rc.local (вот тут наверное собака порылась на счет "Но у меня что не работает")

#Sysctl bridge configuration
/sbin/sysctl net.link.bridge.pfil_onlyip=1
/sbin/sysctl net.link.bridge.pfil_member=1
/sbin/sysctl net.link.bridge.pfil_bridge=0

 

pf.conf

# Best speed for -> udp; tcp(1 - 10000); icmp
# Fast speed for -> 
# Norm speed for -> 
# Slow speed for -> other

#ALTQ Configurationg
#Incoming queues (250)
altq on em1 cbq bandwidth 300Mb qlimit 500 queue { best, fast, norm, slow }
   queue best bandwidth 1% priority 7 cbq(ecn borrow)
   queue fast bandwidth 80% priority 5 cbq(ecn borrow)
   queue norm bandwidth 5% priority 3 cbq(ecn borrow)
   queue slow bandwidth 14% priority 1 cbq(ecn default borrow)

#Outgoing queues (250)
altq on em0 cbq bandwidth 300Mb qlimit 500 queue { out_norm, out_slow }
   queue out_norm bandwidth 90% priority 7 cbq(ecn default borrow)
   queue out_slow bandwidth 10% priority 1 cbq(ecn)

 

fire.sh

#!/bin/sh

#Reset
/sbin/ipfw -f flush

#Incoming Queues

#Best
#Transit ICMP
/sbin/ipfw add 100 count altq best icmp from any to any via em1
#For me ICMP
/sbin/ipfw add 101 count altq best icmp from me to any
/sbin/ipfw add 101 count altq best icmp from any to me
#Transit SSH
/sbin/ipfw add 102 count altq best tcp from any 22 to any via em1
/sbin/ipfw add 102 count altq best tcp from any to any dst-port 22 via em1
#For me all tcp
/sbin/ipfw add 103 count altq best tcp from me to any
/sbin/ipfw add 103 count altq best tcp from any to me

#Fast
/sbin/ipfw add 200 count altq fast tcp from any 80,110,443,5190,8080 to any out via em1
/sbin/ipfw add 200 count altq fast tcp from any to any dst-port 80,110,443,5190,8080 in via em1
/sbin/ipfw add 201 count altq fast gre from any to any via em1
#UDP 1-1024
/sbin/ipfw add 202 count altq fast udp from any 1-1024 to any out via em1
#Lineage 2
/sbin/ipfw add 203 count altq fast tcp from any 7777,2106,2009,17453 to any out via em1
/sbin/ipfw add 203 count altq fast tcp from any to any dst-port 7777,2106,2009,17453 in via em1
#Counter-Strike
/sbin/ipfw add 204 count altq fast tcp from any 1200,27000-27050 to any out via em1
/sbin/ipfw add 204 count altq fast tcp from any to any dst-port 1200,27000-27050 in via em1
/sbin/ipfw add 204 count altq fast udp from any 1200,27000-27050 to any out via em1
/sbin/ipfw add 204 count altq fast udp from any to any dst-port 1200,27000-27050 in via em1
#Wow
/sbin/ipfw add 205 count altq fast tcp from any 1119,3724,9081,9100,9090,9091,8086,8087 to any out via em1
/sbin/ipfw add 205 count altq fast tcp from any to any dst-port 1119,3724,9081,9100,9090,9091,8086,8087 in via em1
#Everquest 2
/sbin/ipfw add 206 count altq fast tcp from any 7000,7010 to any out via em1
/sbin/ipfw add 206 count altq fast tcp from any to any dst-port 7000,7010 in via em1
#Perfect World
/sbin/ipfw add 207 count altq fast tcp from any 29000,24000 to any out via em1
/sbin/ipfw add 207 count altq fast tcp from any to any dst-port 29000,24000 in via em1
#PES 2011
/sbin/ipfw add 208 count altq fast udp from any 5730-5739,6112 to any out via em1
/sbin/ipfw add 208 count altq fast udp from any to any dst-port 5730-5739,6112 in via em1
#COD-4
/sbin/ipfw add 209 count altq fast tcp from any 28960 to any out via em1
/sbin/ipfw add 209 count altq fast tcp from any to any dst-port 28960 in via em1
/sbin/ipfw add 209 count altq fast udp from any 28960 to any out via em1
/sbin/ipfw add 209 count altq fast udp from any to any dst-port 28960 in via em1

#Norm
/sbin/ipfw add 300 count altq norm tcp from any 1-10000 to any out via em1
/sbin/ipfw add 301 count altq norm tcp from any to any dst-port 1-10000 in via em1

#Slow
#Other

#Outgoing Queues

 

А вот что там в ядре дополнительно включалось я не могу найти, наверное ALTQ и что-то еще с ним связанное.

Share this post


Link to post
Share on other sites

Я на IPFW+ALTQ(PF) делал.

 

rc.local (вот тут наверное собака порылась на счет "Но у меня что не работает")

#Sysctl bridge configuration
/sbin/sysctl net.link.bridge.pfil_onlyip=1
/sbin/sysctl net.link.bridge.pfil_member=1
/sbin/sysctl net.link.bridge.pfil_bridge=0

 

pf.conf

# Best speed for -> udp; tcp(1 - 10000); icmp
# Fast speed for -> 
# Norm speed for -> 
# Slow speed for -> other

#ALTQ Configurationg
#Incoming queues (250)
altq on em1 cbq bandwidth 300Mb qlimit 500 queue { best, fast, norm, slow }
   queue best bandwidth 1% priority 7 cbq(ecn borrow)
   queue fast bandwidth 80% priority 5 cbq(ecn borrow)
   queue norm bandwidth 5% priority 3 cbq(ecn borrow)
   queue slow bandwidth 14% priority 1 cbq(ecn default borrow)

#Outgoing queues (250)
altq on em0 cbq bandwidth 300Mb qlimit 500 queue { out_norm, out_slow }
   queue out_norm bandwidth 90% priority 7 cbq(ecn default borrow)
   queue out_slow bandwidth 10% priority 1 cbq(ecn)

 

fire.sh

#!/bin/sh

#Reset
/sbin/ipfw -f flush

#Incoming Queues

#Best
#Transit ICMP
/sbin/ipfw add 100 count altq best icmp from any to any via em1
#For me ICMP
/sbin/ipfw add 101 count altq best icmp from me to any
/sbin/ipfw add 101 count altq best icmp from any to me
#Transit SSH
/sbin/ipfw add 102 count altq best tcp from any 22 to any via em1
/sbin/ipfw add 102 count altq best tcp from any to any dst-port 22 via em1
#For me all tcp
/sbin/ipfw add 103 count altq best tcp from me to any
/sbin/ipfw add 103 count altq best tcp from any to me

#Fast
/sbin/ipfw add 200 count altq fast tcp from any 80,110,443,5190,8080 to any out via em1
/sbin/ipfw add 200 count altq fast tcp from any to any dst-port 80,110,443,5190,8080 in via em1
/sbin/ipfw add 201 count altq fast gre from any to any via em1
#UDP 1-1024
/sbin/ipfw add 202 count altq fast udp from any 1-1024 to any out via em1
#Lineage 2
/sbin/ipfw add 203 count altq fast tcp from any 7777,2106,2009,17453 to any out via em1
/sbin/ipfw add 203 count altq fast tcp from any to any dst-port 7777,2106,2009,17453 in via em1
#Counter-Strike
/sbin/ipfw add 204 count altq fast tcp from any 1200,27000-27050 to any out via em1
/sbin/ipfw add 204 count altq fast tcp from any to any dst-port 1200,27000-27050 in via em1
/sbin/ipfw add 204 count altq fast udp from any 1200,27000-27050 to any out via em1
/sbin/ipfw add 204 count altq fast udp from any to any dst-port 1200,27000-27050 in via em1
#Wow
/sbin/ipfw add 205 count altq fast tcp from any 1119,3724,9081,9100,9090,9091,8086,8087 to any out via em1
/sbin/ipfw add 205 count altq fast tcp from any to any dst-port 1119,3724,9081,9100,9090,9091,8086,8087 in via em1
#Everquest 2
/sbin/ipfw add 206 count altq fast tcp from any 7000,7010 to any out via em1
/sbin/ipfw add 206 count altq fast tcp from any to any dst-port 7000,7010 in via em1
#Perfect World
/sbin/ipfw add 207 count altq fast tcp from any 29000,24000 to any out via em1
/sbin/ipfw add 207 count altq fast tcp from any to any dst-port 29000,24000 in via em1
#PES 2011
/sbin/ipfw add 208 count altq fast udp from any 5730-5739,6112 to any out via em1
/sbin/ipfw add 208 count altq fast udp from any to any dst-port 5730-5739,6112 in via em1
#COD-4
/sbin/ipfw add 209 count altq fast tcp from any 28960 to any out via em1
/sbin/ipfw add 209 count altq fast tcp from any to any dst-port 28960 in via em1
/sbin/ipfw add 209 count altq fast udp from any 28960 to any out via em1
/sbin/ipfw add 209 count altq fast udp from any to any dst-port 28960 in via em1

#Norm
/sbin/ipfw add 300 count altq norm tcp from any 1-10000 to any out via em1
/sbin/ipfw add 301 count altq norm tcp from any to any dst-port 1-10000 in via em1

#Slow
#Other

#Outgoing Queues

 

А вот что там в ядре дополнительно включалось я не могу найти, наверное ALTQ и что-то еще с ним связанное.

/sbin/sysctl net.link.bridge.pfil_onlyip=1 вот оно ключевое. У меня же NAT соответственно один реальный источник.

Вот с включением ALTQ при сборке ядра вопросов как бы нет, а что насчет Bridge интерфейса. Нужно if_bridge в ядро прописывать или обычный bridge?

Edited by Traskalata

Share this post


Link to post
Share on other sites

Оно вроде подгружается динамически.

Вы о if_bridge ?

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