Jump to content

Recommended Posts

Posted (edited)

Доброго времени суток, вот потребовалось ограничить скорость скачи по ftp. Тк сам я linux тока осваиваю, а роутер сделан именно на нем, то экспирименты ставить не хочется вот и обращаюсь к вам за консультацией. Вообщем задача такая ограничить скорость скачки по ftp в обе стороны. Входящий трафик на скорости 6 мбит исходящий на скорости 4 мбита. Общая пропускная способность канала 10 мбит. Для классификации выбрал дисциплину Hierarchical Token Bucket (НТВ). вот что я набрасал конфигурацию, посмотрите и подправте где что неверно... Конфиг привел для ограничения только входящего трафика, то же самое планируется сделать и на другом интерфейсе для исходящего...

# tc qdisc add dev eth1 root handle 1: htb default 20

 

# tc class add dev eth1 parent 1: classid 1:1 htb rate 10mbit burst 15k

 

# tc class add dev eth1 parent 1:1 classid 1:10 htb rate 10mbit burst 15k

# tc class add dev eth1 parent 1:1 classid 1:20 htb rate 6mbit ceil 10mbit burst 15k

 

Автор рекомендует устанавливать дисциплину SFQ для этих классов:

# tc qdisc add dev eth1 parent 1:10 handle 10: sfq perturb 10

# tc qdisc add dev eth1 parent 1:20 handle 20: sfq perturb 10

 

Добавим фильтры, которые будут выполнять классификацию трафика:

# U32="tc filter add dev eth1 protocol ip parent 1:0 prio 1 u32"

# $U32 match ip sport 20 0xffff flowid 1:20

 

 

Вопросы по поводу кончига сразу же( пример рбал из статьи Linux Advanced Routing & Traffic Control HOWTO):

1) Раз я работаю с HTB зачем автор статьи рекомендует ставить SFQ ?

2) Как сильно будет сказываться классификация трафика на загрузке процессора(машина слабая стоит) И может имеет смысл просто без классификации трафик по этому порту резать..

Edited by VASIA!
Posted

1)SFQ(как и FIFO) это qdisc, они применяются когда траффик превышает установленный в классе (HTB) лимит.

2)Все зависит от кучи деталей. Насколько слабая машина стоит?

Posted

Скажем так слабая очень, но енто временно и ограничение сокрости временно, но необходимо. Воббщем целерон 566, 128 оперативы...

 

Да, по первому пункту можно поподробнее.

Posted

По первому пункту. Скажем указали вы 10Мбит... и полоса превышена. Все что превысило 10Мбит будет складываться в qdisc.

A)Если qdisc - FIFO - и скажем указано bfifo limit 100000 (буфер 100 Кбайт) то по возможности байты будут отдаваться со скоростью не превышающей 10Мбит в том же порядке как и пришли. Если количество сбуферизованых данных превысит буфер - пакеты будут дропаться (это нестрашно, просто заставить TCP снизить скорость).

2)Если qdisc SFQ - то при превышении 10Мбит - 128 пакетов будут складываться в буфер, но SFQ будет отдавать их не в том порядке как они пришли, а пытаться распределять равномерно между "потоками". Т.е. если скажем качает юзер 1 и юзер 2, он попытается раздавать равномерно данные между обоими и не давать одному из них захватить полосу. Это в теории, но в практике лучше присмотреться к ESFQ, который эту задачу выполняет лучше.

 

Целерон 566 с горкой хватит для ваших 10Мбит. Если конечно на него еще куча задач не навешана.

Posted
ограничить средствами самого ftp сервера не получается?

входящий то трафик с фтп какием образом)) фтп то разные и хозяева у них разные, а ограничить скорость надо мне))

 

По первому пункту. Скажем указали вы 10Мбит... и полоса превышена. Все что превысило 10Мбит будет складываться в qdisc.

A)Если qdisc - FIFO - и скажем указано bfifo limit 100000 (буфер 100 Кбайт) то по возможности байты будут отдаваться со скоростью не превышающей 10Мбит в том же порядке как и пришли. Если количество сбуферизованых данных превысит буфер - пакеты будут дропаться (это нестрашно, просто заставить TCP снизить скорость).

2)Если qdisc SFQ - то при превышении 10Мбит - 128 пакетов будут складываться в буфер, но SFQ будет отдавать их не в том порядке как они пришли, а пытаться распределять равномерно между "потоками". Т.е. если скажем качает юзер 1 и юзер 2, он попытается раздавать равномерно данные между обоими и не давать одному из них захватить полосу. Это в теории, но в практике лучше присмотреться к ESFQ, который эту задачу выполняет лучше.

 

Целерон 566 с горкой хватит для ваших 10Мбит. Если конечно на него еще куча задач не навешана.

СПС за ответ, значит буду читать еще про ESFQ. Только мне так никто ничего и не сказал,верно ли описал конфиг, все ли верно....

Да, а в случае с ESFQ как конфиг будет выглядить,если не сложно опишите или сцылку на енто дело...

 

Насчет целерона...на нем еще подсчет трафика и доступ в интернет по VPN вообщем при скорости 10 мбит, если по полной прокачивать то он тупо виснет,даже удаленно на него зайти не могу, VPN отваливается и пинг подскакивает..вообщем не хватает мозгов, не может протерминировать, надо менять машину...

Posted

если виснет - это возможно не связано с перегрузкой, а баг дров

какие сетевухи стоят?

какое ядро (версия)?

в порядке ли вентилятор?

покажите cat /proc/interrupts (прерывания)

 

ESFQ например выглядит так

tc qdisc add dev ${DEV} parent 1:270 handle 270: esfq perturb 30 depth 65536 divisor 14 limit 256 hash ctorigdst

 

Но его надо уметь собирать, не очень тривиальная задача

Posted

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

-сетевухи акорп на чипсете Realtek RTL8139

-версия ядра 2.4.32

-interrupts : CPU0

0: 319664957 XT-PIC timer

1: 2 XT-PIC keyboard

2: 0 XT-PIC cascade

8: 1 XT-PIC rtc

9: 267317588 XT-PIC acpi etho0

11: 0 XT-PIC usb-uchi

12: 307848885 XT-PIC eth1

14: 3949946 XT-PIC ide0

NMI: 0

LOC: 0

ERR: 0

MIS: 0

 

Вот....

Posted

да...старый дистр стоит...я и говорю что скоро усе будет меняться, но пока что есть, то есть....

а что значит 9 прерываний acpi енто что значит?!

 

да..насчет конфига ктонить выскажитесь,все верно описанно под мою задачу....да..и где потом можно будет эти правила редпктировать,если мне понадобится что либо изменить..

Posted

Граждане..почему-то не работает шейпинг....вводил все как написано в конфиге а ограничения не срабатывали,в чем причина,может кто что подскажет..

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

×
×
  • Create New...
На сайте используются файлы cookie и сервисы аналитики для корректной работы форума и улучшения качества обслуживания. Продолжая использовать сайт, вы соглашаетесь с использованием файлов cookie и с Политикой конфиденциальности.