1 • Το μέγεθος του ‘παραθύρου’ πρέπει να αλλάζει με τον αριθμό των συνόδων. • Τόσο η ρυθμαπόδοση όσο και η καθυστέρηση δεν έχουν εγγυήσεις. • Για συνόδους υψηλών ταχυτήτων σε δίκτυα υψηλών ταχυτήτων τα ‘παράθυρα’ πρέπει να είναι πολύ μεγάλα. πχ πχ r = 1 Gb/sec, L = 3000 km c = ταχύτητα του φωτός στην ίνα, 450 bits/πακέτο πακέτα • Οι σύνοδοι στα μεγάλα μονοπάτια με πολύ μεγάλα ‘παράθυρα’ υφίστανται καλύτερη μεταχείριση από τις συνόδους στα μικρά μονοπάτια. Αυτό είναι άδικο για τις υπόλοιπες συνόδους. Προβλήματα με ‘End-to-end παράθυρα’ σύνοδος μεγάλου μονοπατιού σύνοδος μικρού μονοπατιού βαριά φορτωμένος σύνδεσμος
2 ‘Node-by-node παράθυρα’ (για εικονικά κυκλώματα, πχ στο TYMNET δίκτυο) Υπάρχει ένα ξεχωριστό ‘παράθυρο’ για κάθε σύνδεσμο στο μονοπάτι που ακολουθεί ένα εικονικό κυκλωμα. Κάθε κόμβος μπορεί να αποθηκεύσει μέχρι και W πακέτα μιας συνόδου. πηγή σύνδεσμος με συμφόρηση προορισμός • Για να προχωρήσει ένα πακέτο κάποιας συνόδου απ’τον i στον i+1, κάποιος χώρος στον buffer του i+1 πρέπει να αδειάσει (όταν αυτό συμβεί ένα permit στέλνεται στον κόμβο i). • Αυτό δημιουργεί ένα ‘παράθυρο’ μεγέθους W σε κάθε σύνδεσμο. ‘back-pressure’ • Αν ένας σύνδεσμος υποστεί συμφόρηση, τα πακέτα αναμένουν στην ουρά και οι permits δε γυρίζουν πίσω στον προηγούμενο κόμβο (‘back-pressure’).
3 Πλεονεκτήματα • Μικρές απαιτήσεις για buffers. • Μικραίνει το πρόβλημα της δικαιοσύνης. πηγή προορισμός Μειονεκτήματα • Το πρόβλημα της δικαιοσύνης εξακολουθεί να υπάρχει σε δορυφορικούς (ή άλλους πολύ μεγάλης διάδοσης) συνδέσμους. • Οι απαιτήσεις σε buffers αυξάνονται με το πλήθος n των συνόδων. • Ακόμα δεν υπάρχουν εγγυήσεις για τη ρυθμαπόδοση και την καθυστέρηση. σύνδεσμος με συμφόρηση επίγειος σύνδεσμος δορυφορικός σύνδεσμος
4 Έλεγχος ροής βασισμένος στο ρυθμό (rate-based flow control) • Ολοκληρωμένα δίκτυα εξυπηρέτησης προσπαθούν να παρέχουν εγγυημένο ρυθμό σε κάποιους χρήστες, οπότε δεν μπορούν να χρησιμοποιούν ‘παράθυρα’ για έλεγχο ροής. • Επιπροσθέτως, σύνοδοι υψηλών ταχυτήτων σε δίκτυα υψηλών ταχυτήτων απαιτούν πολύ μεγάλα ‘παράθυρα’ για έλεγχο ροής. Με τον έλεγχο ροής βασισμένο στο ρυθμό, κάθε σύνοδος έχει κάποιον απαιτούμενο ρυθμό και κάποιον ελάχιστο ρυθμό (ο οποίος πρέπει να είναι εγγυημένος). Αν οι ρυθμοί των συνόδων πρέπει να μειωθούν, οι μειώσεις πρέπει να γίνουν ‘με τίμιο τρόπο’, υπακούοντας ταυτόχρονα τις απαιτήσεις ελάχιστου ρυθμού για κάθε σύνοδο.
5 Έλεγχος ρυθμού Leaky-Bucket (πχ στο PARIS δίκτυο) ουρά εισερχόμενων πακέτων κάθε πακέτο απαιτεί permit για να προχωρήσει οι permits φτάνουν με ρυθμό r – υπάρχει χώρος για W permits bucket Αρχικά, ο ‘κάδος’ (bucket) με τα permits είναι γεμάτος, επιτρέποντας έναν καταιγισμό από W πακέτα να περάσουν μέσα από τον έλεγχο. Μετά απ’αυτό, μόνο ένα πακέτο ανά 1/r δευτερόλεπτα κατά μέσο όρο επιτρέπεται να περνάει στο δίκτυο. Η παράμετρος W καθορίζει το πόσο καταιγιστική μπορεί να είναι η πηγή και η r καθορίζει το μέγιστο ρυθμό μετά τον αρχικό καταιγισμό. άδειο bucket κλίση r χρόνος χρησιμοποίησέ το ή χάσε το (γεμάτο bucket) Πλήθος permits στο bucket
6 πηγές χωρητικότητα ‘Για όλους τους πρακτικούς σκοπούς’, αν και (η k σταθερά, πχ ίση με 3), λίγα πακέτα χάνονται. Κάποιος μπορεί να κατασκευάσει παθολογικά παραδείγματα, στα οποία οι ουρές είναι ουσιαστικά μεγαλύτερες απ’ότι παραπάνω.
7 Ανάλυση του Leaky-Bucket με θεωρία ουρών Το σύστημα αντιμετωπίζεται σαν ένα σύστημα διακριτού χρόνου, που αλλάζει κατάσταση κάθε 1/r δευτερόλεπτα. Έστω ότι οι καταστάσεις i=0,1,2,…,W αντιστοιχούν σε W-i permits στο bucket και ότι δεν υπάρχουν πακέτα να περιμένουν. Έστω ότι οι καταστάσεις i=W+1,… αντιστοιχούν σε άδειο bucket και ότι i-W πακέτα περιμένουν. (για Poisson αφίξεις πακέτων) Το παραπάνω σύστημα είναι ίδιο με το M/D/1 με υπηρεσία με σχισμές.
8 Εναλλακτικό μοντέλο για το σχήμα Leaky-Bucket Ένα πιο ρεαλιστικό μοντέλο είναι αυτό των Poisson κατανεμημένων αφίξεων μηνυμάτων και ενός γεωμετρικά κατανεμημένου αριθμού μικρών πακέτων ανά μήνυμα. μήνυμα με πολλά πακέτα μηνύματα Έστω μ=1/L, όπου L είναι ο μέσος αριθμός πακέτων ανά μήνυμα. Τότε μ είναι ο ρυθμός εξυπηρέτησης των μηνυμάτων, όταν το bucket είναι άδειο. Έστω Υ(t)=(# πακέτων)+(# άδειων θέσεων του bucket). Η Υ(t), τότε, μειώνεται με ρυθμό 1, εκτός από όταν πραγματοποιείται μια άφιξη, οπότε η Y(t) αυξάνεται κατά τον αριθμό των πακέτων που φτάνουν (δηλαδή το χρόνο που απαιτείται, ώστε να εξυπηρετηθούν οι αφίξεις). Η Υ(t), τότε, είναι η υπολειπόμενη δουλειά στη φανταστική M/m/1 ουρά!