Avem o conducata mare spre Internet care la un moment dat se ingusteaza
spre client (sa zicem o linie inchiriata). Viteza de transfer se va face
la minimul dintre latimile de banda disponibile pe fiecare segment.
Intrucat pe teava mare nu se pune problema, problema este cum ti conducata
mica libera cand garantatul vrea sa o foloseasca. Daca nu poti face
garantare inainte de ingustarea benzii, e mult mai complicat, trebuie sa
ii limitezi pe ceilalti si sa speri ca folosesc TCP/IP si isi vor limita
automat rata la sender. Daca comanda un negarantat un stream UDP va
congestiona conducta mica si se vor dropa la intrarea in ea pachete la
intamplare. Ideea este in ambele cazuri sa limitezi restul astfel incat sa
nu congestionezi conducta mica. Daca faci limitare, dezavantazul este ca
daca garantatul nu face trafic, banda ramane nefolosita. Ca sa faci asta
dinamic poti face cu CBQ. Pui clasa root bounded si putin mai mica decat
latimea de banda pe care o ai pe cel mai ingust tronson. Cat timp rata
prin root nu depaseste limita, lasa toate pachetele, cand se depaseste ace
rata dropeaza pachetele celor care isi depasesc banda garantata (cei
negarantati vor fi si ei toti intr-o banda garantata). Daca nu ma insel
principiul este ca se calculeaza gradul de NE-folosire al benzii (prin
avgidle) si are dreptul sa transmita intotdeauna cine il are pozitiv, iar
daca este negativ (sari banda) trimite cate pachete poate din cele cu
avgidle negativ dar mai aproape de zero. Daca faci asta dupa congestie,
trebuie sa lasi intre canal si dimensiune clasa root si mai mult spatiu,
CBQ-ul va dropa latimea de banda diferenta dintre cei care "sar zebra" si
astfel TCP/IP-ul lor se va mai linistii. Daca pui exact banda, n-ai facut
nimic, cel mult poti sa pui niste limitari. O alta problema in cazul CBQ
dupa congestie este ca daca cineva face trafic mare cu stream UDP sau are
un flood, va umple banda indiferent ce faci cu traficul in CBQ. Daca nu
stii cata banda ai disponibila pe cel mai mic segment ori pui clasa
ceva mai mica si pierzi banda posibil folosibila, ori pui clasa root
prea mare si CBQ-ul nu va dropa nimic (nu vei avea garantare).
Deci: garantare se face doar cu limitarea celorlalti (nu exista alta
posibilitate), si cel mai sigur se face inainte de limitare. Cu CBQ se
poate face asa ceva pe Linux. qdisc-rile care se zica ca fac fairness
banuiesc ca tin niste flow-uri si dropeaza preferential IN INTERIORUL
GARANTARII astfel incat traficul pe flow-uri sa se egalizeze.
On Tue, 12 Jun 2001, C. A. wrote:
>
> Se poate face garantare (minimum garantat) cu tc ?
> Atentie nu ma refer la limitare...
> Daca v-a iesit chestia nu ma ghidonati putin si pe mine?
> Multam anticipat !
>
> [EMAIL PROTECTED]
> ---
> Send e-mail to '[EMAIL PROTECTED]' with 'unsubscribe rlug' to
> unsubscribe from this list.
>
>
--
Cele bune. +------ Mihai Voicu ------+
| RDS network engineer |
| http://mihvoi.rdsnet.ro |
--------------------------------------------------------------------------
Privileged/Confidential Information may be contained in this message. If
you are not the addressee indicated in this message (or responsible for
delivery of the message to such person), you may not copy or deliver this
message to anyone. In such a case, you should destroy this message and
kindly notify the sender by reply e-mail.
---
Send e-mail to '[EMAIL PROTECTED]' with 'unsubscribe rlug' to
unsubscribe from this list.