Re: трафик-шейпер (?)
10.07.10 01:12, Nicholas написав(ла): On 05.07.2010 11:06, Alex Kicelew wrote: Есть ip-телефония, которая время от времени (не всегда) затыкается, Конечно есть множество gui, но зная как работает основа и gui становиться понятнее. Вот простой пример конфига для tc (шейпера): #!/bin/bash #создаем для интерфейса wlan0 root 1: и шейпер (дисциплину) htb, с дефолтным потоком (руковом) 9991 tc qdisc add dev wlan0 root handle 1: htb default 9991 #создаем основной рукав также с htb и указываем общую ширину канала tc class add dev wlan0 parent 1: classid 1: htb rate 1mbps burst 150k #создаем дефолтный подрукав 9991 и с помощью htb даем полосу для трафика не попадающего ни под одно правило #(как видите дефолтный 1:9991 у нас вытекает из основного 1:) tc class add dev wlan0 parent 1: classid 1:9991 htb rate 64kbps ceil 128kbps burst 150k #для подрукава 9991 определим оконечную дисциплину sqf tc qdisc add dev wlan0 parent 1:9991 handle 9991: sfq perturb 10 #.. #теперь создадим уже нормальный подрукав, например 22 и определим ему ширину с помощью htb (rate - желаемая, ceil - максимальная, burst - точность) tc class add dev wlan0 parent 1: classid 1:22 htb rate 64kbps ceil 128kbps burst 15k #для подрукава 22 определим оконечную дисциплину sqf #(оконечная дисциплина sqf - рекомендация ведущих линуксоводов) tc qdisc add dev wlan0 parent 1:22 handle 22: sfq perturb 10 #Теперь самое интересное - создадим фильтры по которым будем забирать #нужный трафик из дефолтного в свежесозданный 22-ой. tc filter add dev wlan0 parent 1: protocol ip prio 1 u32 match ip dport 22 0x flowid 1:22 tc filter add dev wlan0 parent 1: protocol ip prio 1 u32 match ip tos 0x10 0xff flowid 1:22 #(приведенный пример - не самый лучший - проще фильтровать по dst ip и порту, без 0xff...) Все. PS И рукавов, и фильтров для них можно насоздавать множество. Фильтровать можно и по ip и по портам и по меткам - примеры легко гуглятся. http://www.opennet.ru/docs/RUS/LARTC/ tc - это просто, проще чем с gui разбираться. Если есть желание, можно использовать плагины для iptables, что бы давать метки, например, p2p или скайпу и, вроде бы, эти метки увидит tc. Шейпится только исходящий трафик: Для сервера-посредника - в любом случае любой трафик в какой-то момент является исходящим. Если нельзя, но очень хочется, то можно шейпить и входящий трафик (есть спец дисциплина), но смысла в этом нет никогого - трафик уже пришел, все что вы можете сделать - запросить его еще раз, загрузив канал еще больше. Желание шейпить входящий трафик обычно проходит после прочтения документации. то-же LARTC говорит что можно шейпить и входящий трафик. особенно TCP. Если потерять некоторое количество пакетов в TCP-соединении то отправляющая сторона подумает что линия перегружена и сбавит скорость. Но вообщем-то да, потерянные пакеты будут повторно посланы, но уже на меньшей скорости и это никак не влияет на UDP трафик А еще входящий трафик, таже если он не транзитный можна сделать исходщим, с помощью псевдоустройства imq и шейпить егу уже как захочется. Но для этого надо патчить ядро и iptabels. Врочем для того чтоб шейпить p2p и скайп его тоже надо патчить. Посмотреть правила: #!/bin/bash. tc -s -d qdisc show dev wlan0 tc -s -d class show dev wlan0 tc -s -d filter show dev wlan0 Удалить: #!/bin/bash. tc qdisc del dev wlan0 root PS а есть задачка еще интереснее: шейпить полудуплексный канал. Всякие новомодные нынче Wimax’сы, они ведь полудуплексные, тоесть входящий и исходящий трафик впихивается в одни ворота, если канал на передачу забит то принять ничего не получится. -- To UNSUBSCRIBE, email to debian-russian-requ...@lists.debian.org with a subject of unsubscribe. Trouble? Contact listmas...@lists.debian.org Archive: http://lists.debian.org/4c380d7f.90...@rabitsa.org.ua
Re: трафик-шейпер (?)
Nicholas пишет: Если нельзя, но очень хочется, то можно шейпить и входящий трафик (есть спец дисциплина), но смысла в этом нет никогого - трафик уже пришел, все что вы можете сделать - запросить его еще раз, загрузив канал еще больше. Желание шейпить входящий трафик обычно проходит после прочтения документации. А вот не соглашусь. Если у тебя канал 512кбит, никакого шейпера на твоей стороне и ты сам запрашиваешь больше чем канал может выжать (пару мегабит например) а провайдер всё что выше 512кбит просто дропает - начинаются не хилые лаги (пинг 1000-3000мс, потери 30-40%). Однако стоит нам поставить wondershaper и сказать что мол канал у нас 500кбит - так всё замечательно. Все сетевые приложения дружно понимают что выше головы не прыгнешь и нормальненько так укладываются в эти выданные 512 и никаких потерь и таких высоких задержек. Это из собственного опыта. На dsl такое случается. -- Best regards, Mikhail. - xmpp: ant...@stopicq.ru www: http://www.antmix.pp.ru/ signature.asc Description: OpenPGP digital signature
Re: трафик-шейпер (?)
On 05.07.2010 11:06, Alex Kicelew wrote: Есть ip-телефония, которая время от времени (не всегда) затыкается, Конечно есть множество gui, но зная как работает основа и gui становиться понятнее. Вот простой пример конфига для tc (шейпера): #!/bin/bash #создаем для интерфейса wlan0 root 1: и шейпер (дисциплину) htb, с дефолтным потоком (руковом) 9991 tc qdisc add dev wlan0 root handle 1: htb default 9991 #создаем основной рукав также с htb и указываем общую ширину канала tc class add dev wlan0 parent 1: classid 1: htb rate 1mbps burst 150k #создаем дефолтный подрукав 9991 и с помощью htb даем полосу для трафика не попадающего ни под одно правило #(как видите дефолтный 1:9991 у нас вытекает из основного 1:) tc class add dev wlan0 parent 1: classid 1:9991 htb rate 64kbps ceil 128kbps burst 150k #для подрукава 9991 определим оконечную дисциплину sqf tc qdisc add dev wlan0 parent 1:9991 handle 9991: sfq perturb 10 #.. #теперь создадим уже нормальный подрукав, например 22 и определим ему ширину с помощью htb (rate - желаемая, ceil - максимальная, burst - точность) tc class add dev wlan0 parent 1: classid 1:22 htb rate 64kbps ceil 128kbps burst 15k #для подрукава 22 определим оконечную дисциплину sqf #(оконечная дисциплина sqf - рекомендация ведущих линуксоводов) tc qdisc add dev wlan0 parent 1:22 handle 22: sfq perturb 10 #Теперь самое интересное - создадим фильтры по которым будем забирать #нужный трафик из дефолтного в свежесозданный 22-ой. tc filter add dev wlan0 parent 1: protocol ip prio 1 u32 match ip dport 22 0x flowid 1:22 tc filter add dev wlan0 parent 1: protocol ip prio 1 u32 match ip tos 0x10 0xff flowid 1:22 #(приведенный пример - не самый лучший - проще фильтровать по dst ip и порту, без 0xff...) Все. PS И рукавов, и фильтров для них можно насоздавать множество. Фильтровать можно и по ip и по портам и по меткам - примеры легко гуглятся. http://www.opennet.ru/docs/RUS/LARTC/ tc - это просто, проще чем с gui разбираться. Если есть желание, можно использовать плагины для iptables, что бы давать метки, например, p2p или скайпу и, вроде бы, эти метки увидит tc. Шейпится только исходящий трафик: Для сервера-посредника - в любом случае любой трафик в какой-то момент является исходящим. Если нельзя, но очень хочется, то можно шейпить и входящий трафик (есть спец дисциплина), но смысла в этом нет никогого - трафик уже пришел, все что вы можете сделать - запросить его еще раз, загрузив канал еще больше. Желание шейпить входящий трафик обычно проходит после прочтения документации. Посмотреть правила: #!/bin/bash. tc -s -d qdisc show dev wlan0 tc -s -d class show dev wlan0 tc -s -d filter show dev wlan0 Удалить: #!/bin/bash. tc qdisc del dev wlan0 root -- Sincerely, Nicholas -- To UNSUBSCRIBE, email to debian-russian-requ...@lists.debian.org with a subject of unsubscribe. Trouble? Contact listmas...@lists.debian.org Archive: http://lists.debian.org/i18oed$on...@dough.gmane.org
Re: трафик-шейпер (?)
Alex Kicelew - debian-russian@lists.debian.org @ Mon, 05 Jul 2010 15:06:56 +0400: AK Есть ip-телефония, которая время от времени (не всегда) затыкается, явно AK из-за недостаточного канала. Есть желание отшейпить на роутере (там тоже AK дебиан) так, чтобы весь канал отдавался ip-телефонии (т.е. каналу до ее AK провайдера), а всему остальному -- все, что останется. Но я никогда AK раньше такого не делал, и не помню, чем это делается. Смутно брезжат AK какие-то триграмматоны -- afq, bfq, cfq... Спасибо за ответы. -- Alex Kicelew arko...@gmail.com ICQ 3887592 -- To UNSUBSCRIBE, email to debian-russian-requ...@lists.debian.org with a subject of unsubscribe. Trouble? Contact listmas...@lists.debian.org Archive: http://lists.debian.org/87lj9m5hkf@p7.icsmir.ru
Re: трафик-шейпер (?)
Здравствуйте. Есть ip-телефония, которая время от времени (не всегда) затыкается, явно из-за недостаточного канала. Есть желание отшейпить на роутере (там тоже дебиан) так, чтобы весь канал отдавался ip-телефонии (т.е. каналу до ее провайдера), а всему остальному -- все, что останется. Но я никогда раньше такого не делал, и не помню, чем это делается. Смутно брезжат какие-то триграмматоны -- afq, bfq, cfq... я использую http://www.opennet.ru/base/net/adsl_shaper.txt.html Но сейчас, я так понимаю, оно выросло в http://sourceforge.net/projects/asfs/files/ До свидания. -- To UNSUBSCRIBE, email to debian-russian-requ...@lists.debian.org with a subject of unsubscribe. Trouble? Contact listmas...@lists.debian.org Archive: http://lists.debian.org/20100706113143.006e8...@rim2000m.ru
трафик-шейпер (?)
Hi. Есть ip-телефония, которая время от времени (не всегда) затыкается, явно из-за недостаточного канала. Есть желание отшейпить на роутере (там тоже дебиан) так, чтобы весь канал отдавался ip-телефонии (т.е. каналу до ее провайдера), а всему остальному -- все, что останется. Но я никогда раньше такого не делал, и не помню, чем это делается. Смутно брезжат какие-то триграмматоны -- afq, bfq, cfq... -- Alex Kicelew arko...@gmail.com ICQ 3887592 -- To UNSUBSCRIBE, email to debian-russian-requ...@lists.debian.org with a subject of unsubscribe. Trouble? Contact listmas...@lists.debian.org Archive: http://lists.debian.org/87hbketcfj@p7.icsmir.ru
Re: трафик-шейпер (?)
Ставь и запускай wondershaper: sudo /usr/sbin/wondershaper интерфейс входящий исходящий Будет работать. 05.07.2010 14:06, Alex Kicelew пишет: Hi. Есть ip-телефония, которая время от времени (не всегда) затыкается, явно из-за недостаточного канала. Есть желание отшейпить на роутере (там тоже дебиан) так, чтобы весь канал отдавался ip-телефонии (т.е. каналу до ее провайдера), а всему остальному -- все, что останется. Но я никогда раньше такого не делал, и не помню, чем это делается. Смутно брезжат какие-то триграмматоны -- afq, bfq, cfq... -- To UNSUBSCRIBE, email to debian-russian-requ...@lists.debian.org with a subject of unsubscribe. Trouble? Contact listmas...@lists.debian.org Archive: http://lists.debian.org/4c31dded.2030...@vimas.com
Re: трафик-шейпер (?)
On 05.07.2010 11:06, Alex Kicelew wrote: Есть желание отшейпить на роутере http://www.opennet.ru/base/net/htb_saga.txt.html -- Sincerely, Nicholas -- To UNSUBSCRIBE, email to debian-russian-requ...@lists.debian.org with a subject of unsubscribe. Trouble? Contact listmas...@lists.debian.org Archive: http://lists.debian.org/i0tb93$gv...@dough.gmane.org