Jump to content

Гадория с tc shaper закачен на bonding интерфейс...


Recommended Posts

Привет на всички,

Ситуацията ми е следната:

Линукс (2.6.32) с bonding интерфейс и tc шейпър конфигуриран да лимитира изходящият трафик от bond0 интерфейса.


tc qdisc add dev bond0 root handle 1: htb

tc class add dev bond0 parent 10: classid 1:10 htb rate 1mbit

iptables -t mangle -A POSTROUTING -d 192.168.1.10 -j CLASSIFY  --set-class 1:10

Изглежда елементарно стегнато и просто - все едно, че ще заработи :)

Странното е, че тази конфигурация действително ограничава скоростта, но не на 1Мбит, а на някъде около 200-250Кбита, което не знам как се получава!?

Ако приложа съвсем същата конфигурация към физически интерфейс (eth0 примерно, без бондинг) - всичко е цветя и рози.

Проблема е единствено, ако имам шейпър на бондинг интерфейс. Не ще да работи коректно без значение в какъв режим са бонднати физическите интерфейси, колко са на брой или колко са действително активните!?

Минава ми през акъла променено МТУ, заради бондването, ама и да го указвам и да не го указвам - няма разлика.

Някой попадал ли е в подобен сценарий или има ли идея що така?!

Адрес на коментара
Сподели в други сайтове

И аз имах подобен проблем, но беше с бридж интерфейс, и беше преди няколко години, не се сещам точно как го оправих, но имам някакви спомени за txqueuelen.

Можеш да пробваш да го промениш, например:

ip link set bond0 txqueuelen 100

  • Харесай 1
Адрес на коментара
Сподели в други сайтове

Въпроси за bonding-а - Връзката е Сървър-Суич или Сървър-Сървър?

802.3ad или друг режим използваш и колко ти е mii таймера?

Ако е връзка Сървър-Суич, тествай с тези опции:

options bond0 miimon=100 mode=4 lacp_rate=1

txqueuelen на bond интерфейса го сложи като стойност като на eth интерфейсите или по-голям, но не и по-малък.

Адрес на коментара
Сподели в други сайтове

  • Администратор

cat /proc/net/bonding/bond0

Use since

OpenBSD 3.x

FreeBSD 4.x

Centos 5.x Debian 3.x Ubuntu 7.x

Аз съм фен на OpenWRT.

 

Горчивината от лошото качество остава дълго след като е преминало удоволствието от ниската цена.

_____________________________

___|____|____|____|____|____|__

_|____|____|____|____|____|____

___|____|_ Удряй _|____|____|__

_|____|___ главата ___|____|____

___|____|_ си тук!! |____|____|__

_|____|____|____|____|____|____

___|____|____|____|____|____|__

Адрес на коментара
Сподели в други сайтове

#  cat /proc/net/bonding/bond0

Ethernet Channel Bonding Driver: v3.6.0 (September 26, 2009)


Bonding Mode: load balancing (round-robin)

MII Status: up

MII Polling Interval (ms): 100

Up Delay (ms): 0

Down Delay (ms): 0


Slave Interface: eth0

MII Status: up

Speed: 1000 Mbps

Duplex: full

Link Failure Count: 0

Permanent HW addr: 00:07:e9:0c:70:f7

Slave queue ID: 0
Да стигнах и до крайности :) - за тестовете оставих един физически интерфейс в бонд-а. miimon ми е 100, а режимът е 0. Номер 4 не ми харесва понеже се налага и чоплене по суичовете, които не са толкова интелигентни че да вдигнат нещо от сорта на vpc (интерфейсите на бонда не са в 1 суич). А и при тестовете, които се опитвах да правя изглежда, че само mode 0 (rr) се възползва от всички интерфейси и реално общата скорост на bond интерфейса се повишава. Вие какво бондване правите и от кое сте най доволни? Както и да е, изглежда, че това, което колегата ushoplias спомена помогна:
# ifconfig bond0 txqueuelen 10000[/code]

Ограниченията изглежда като да са коректни вече! Дори работят както трябва и за VLAN интерфейсите, които вдигнах на bond0.

  • Харесай 1
Адрес на коментара
Сподели в други сайтове

  • 1 месец по-късно ...

Създайте нов акаунт или се впишете, за да коментирате

За да коментирате, трябва да имате регистрация

Създайте акаунт

Присъединете се към нашата общност. Регистрацията става бързо!

Регистрация на нов акаунт

Вход

Имате акаунт? Впишете се оттук.

Вписване
  • Потребители разглеждащи страницата   0 потребители

    • No registered users viewing this page.
×
×
  • Създай нов...

Important Information

By using this site, you agree to our Terms of Use.