Alle vorige protocollen waren Best Effort, zo goed mogelijk doen maar je kunt niks garanderen. De IP
laag doet zijn best maar kan niets garanderen. Je kunt ook niet vragen om betere kwaliteit. In de
toekomst waarschijnlijk betere protocollen nodig:
• RSVP = reserveren van o.a. bandbreedte
• Differentiated Services, gedifferentieerde garanties
• Integrated Services, harde garanties
Voorbeeld:
Telefoonverbinding (1Mbps) en FTP delen 1.5Mbps
verbinding. Pakketten van telefoon en FTP moeten
verschillend behandeld worden om de 1MBps van de
telefoonverbinding te kunnen garanderen. FTP kan
genoegen nemen met wat over is. Maar hoe doe je dit?
Pakketten moeten geclassificeerd worden (Type-of-Service),
wat is de service wat hierbij geboden wordt en wat zijn de
eigenschappen van die verbinding. Verschillende stromen
moeten van elkaar geïsoleerd worden. Een stroom mag niet
meer gebruiken dan ervoor gereserveerd is (anders
afknijpen). Als een stroom minder gebruikt dan mag de
resterende capaciteit voor iets anders gebruikt worden. Je
kunt niet meer bandbreedte gebruiken dan er is: dus van
tevoren reserveren (en evt. weigeren).
Priority queue: Gewoonlijk komen pakketten in router
in uitgaande queue te staan voordat ze op de uitgaande
verbinding gaan. Pakketten die haast hebben kunnen
hogere prioriteit krijgen. Hogere prioriteitsqueue kan
hele bandbreedte ‘kapen’. Hierbij heb je een High-
priority queue en low-priority queue. Kan nadeel
hebben, als er altijd verkeer is voor high-priority dan is
er voor low-priority geen kans om te zenden.
Voorbeeld hoe zulke pakketten binnenkomen bij
router. Rood zijn de hoge prioriteit pakketten, groen
de laag prioriteit pakketten. Bij 1 komt een high
priority pakket binnen, die gelijk gebruik kan maken
van de uitgaande lijn want er is nog niks. Terwijl er
wordt gestuurd komt een 2e low prioriteit pakket
binnen. Terwijl 1ste pakket uitgestuurd wordt komt
ook al 3e high priority pakket binnen. Hierbij kan je
zien als 1ste pakket volledig is uitgezonden eerst
pakket 3 met high priority verzonden gaat worden.
Daarna pas het tweede pakket.
, Je kan ook gebruik maken van Round Robin, waarbij
pakketten in verschillende categorieën ingedeeld
worden. Elke categorie gaat om de beurt (als er iets te
zenden is).
Round robin kan nog verfijnd worden waardoor je verschillende categorieën hebt met verschillende
gewichten. Hierbij laat je sommige categorieën vaker
sturen dan de ander, zonder dat je categorieën vergeet.
Dit heet Waiting fair queuing(WFQ). Hogere prioriteiten
komen vaker aan de beurt Als w het gewicht van een
categorie is en W de som van alle gewichten dan krijgt
die categorie tenminste w/W van de bandbreedte
toegewezen. We hebben een w1 , w2 & w3. w1 zou
bijvoorbeeld gewicht 6 kunnen hebben. w2 zou het
gewicht 3 kunnen hebben & w3 zou gewicht 1 kunnen hebben. De totaalgewicht is 6 + 3 + 1 is 10. w1
komt dan 6 van de 10 keer aan de bod, w2 3/10 keer aan bod en w3 1/10 keer aan bod.
Token bucket: Token Bucket is een mechanisme om
snelheid van een stroom te regelen (toeritdosering). In
het boek staat leaky bucket (lekkende emmer). Idee:
een stroom heeft een maximale gemiddelde
bandbreedte maar mag tijdelijk meer gebruiken
(burst). Tijdens rustige perioden wordt een tegoed
(tokens) opgebouwd dat voor een burst gebruikt mag
worden.
Parameters van bucket. Gemiddelde snelheid (pakketten/sec of bytes/sec): wat je over een lange
tijd mag gebruiken. De bucket krijgt per tijdsinterval een token, die staat voor een vaste hoeveelheid
capaciteit (packets of bytes) Bijvoorbeeld 1 token = 10000 bytes en 1 token per 10 msec => 1 x 106
bytes/sec. Pieksnelheid: maximale snelheid die je gedurende een korte periode mag gebruiken als je
genoeg tokens hebt: bijvoorbeeld 10 x 106 bytes/sec Maximale grootte van zo’n burst wordt bepaald
door inhoud bucket.
Berekening Token bucket en WFQ. Als r tokens per seconde
arriveren(binnenkomen) en bucket maximaal b tokens bevat
dan kunnen per tijd t maximaal r x t + b pakketten verzonden
worden. Queue: Als burst van b aankomt en uitgaande
𝑏
capaciteit is R dan maximale wachttijd =
𝑅
𝑏
met WFQ: .
𝑅∗𝑤/𝑊