Ένας μόνο shaper tc δεν περιορίζει κάθε πελάτη VPN από μόνος του
Ένα όριο ανά πελάτη χρειάζεται ταυτότητα μέτρησης, δύο κατευθύνσεις και σημείο ταξινόμησης. Ένας shaper στη σήραγγα δεν είναι ένα όριο ανά χρήστη.
Η οδηγία ακούγεται πλήρης: περιόρισε κάθε πελάτη VPN στα 20 Mbit/s. Δεν είναι πλήρης, και μία μόνο πειθαρχία ουράς στη διεπαφή της σήραγγας δεν θα το προσφέρει. Το «ανά πελάτη» μπορεί να σημαίνει ανά διεύθυνση σήραγγας, ανά συσκευή ή ανά λογαριασμό, και κάθε επιλογή ταξινομεί τα πακέτα διαφορετικά. Πριν γράψεις οποιονδήποτε κανόνα, αποφάσισε ποιο από αυτά ονομάζει στην πραγματικότητα η απαίτηση.
Όλα τα παρακάτω αφορούν την απόσταση ανάμεσα σε εκείνη την πρόταση και σε κάτι που δουλεύει.
Τι πρέπει πρώτα να σημαίνει το «ανά πελάτη»
Μια διεύθυνση σήραγγας ταξινομείται εύκολα και ανακυκλώνεται εύκολα. Μια συσκευή είναι δυσκολότερη, γιατί ένας λογαριασμός μπορεί να φέρει πολλές, και μια συσκευή μπορεί να κρατά πολλές διευθύνσεις, ειδικά με IPv6. Για μια πολιτική δικαιοσύνης ο λογαριασμός είναι η πιο ουσιαστική μονάδα και η δυσκολότερη να εντοπιστεί σε μια κεφαλίδα πακέτου. Κάθε ορισμός συνεπάγεται το δικό του κλειδί μέτρησης, άρα μια πολιτική που ταλαντεύεται ανάμεσά τους δεν θα κάνει ό,τι ισχυρίζεται η περιγραφή.
Η κατεύθυνση είναι η δεύτερη λέξη που λείπει. Ανέβασμα, κατέβασμα και συνδυασμός είναι τρεις διαφορετικές απαιτήσεις, και ένας μόνο κανόνας εξόδου σε μία διεπαφή σπάνια καλύπτει και τις δύο διαδρομές.
Διάλεξε ένα σημείο όπου ο πελάτης είναι ακόμη ορατός
Κάθε κατεύθυνση ορίζεται ως προς μια διεπαφή. Ό,τι φεύγει από τη σήραγγα του διακομιστή προς έναν απομακρυσμένο πελάτη μετράει ως κατέβασμα για εκείνον τον πελάτη· ό,τι στέλνει ένας πελάτης μπαίνει στη σήραγγα και μετά βγαίνει προς τον προορισμό του. Διάλεξε ένα σημείο χρονοπρογραμματισμού για κάθε κατεύθυνση και ρώτησε ποια πεδία υπάρχουν εκεί. Πριν από το NAT πηγής το ανέβασμα εξακολουθεί να φέρει την εσωτερική διεύθυνση του πελάτη· μετά τη μετάφραση μια απλή αντιστοίχιση πηγής μπορεί πλέον να μην το αναγνωρίζει.
Στην κρυπτογραφημένη διαδρομή οι κεφαλίδες ανήκουν στη μεταφορά VPN, άρα ένα φίλτρο που αντιστοιχίζει εσωτερικές διευθύνσεις δεν έχει τι να αντιστοιχίσει. Ένας σχεδιασμός μπορεί να ταξινομήσει νωρίτερα και να παραδώσει ένα σημάδι σε μεταγενέστερο χρονοπρογραμματιστή, όμως αυτή η παράδοση πρέπει να είναι σκόπιμη: τα σημάδια πακέτου, τα σημάδια σύνδεσης και οι κλάσεις του χρονοπρογραμματιστή είναι διαφορετική κατάσταση, όχι μία τιμή που περνά παρακάτω.
Οι κουβάδες δεν εμφανίζονται μόνοι τους
Ένας κουβάς διακριτικών προσαρτημένος σε μια διεπαφή διαμορφώνει όποια κίνηση τον χρησιμοποιεί· δεν κόβει νέο κουβά για κάθε διεύθυνση πηγής. Ένας σχεδιασμός βασισμένος σε κλάσεις αντίθετα ταξινομεί την επιλεγμένη κίνηση σε κλάσεις, τα φίλτρα αποφασίζουν τη συμμετοχή, και το εγχειρίδιο του HTB χωρίζει τον ρυθμό μιας κλάσης από το ανώτατό της όριο όταν ο γονέας έχει ελεύθερο εύρος ζώνης. Αν η πρόθεση είναι σκληρό όριο, όρισε το ανώτατο και αποφάσισε σκόπιμα τη συμπεριφορά δανεισμού· μην αντιμετωπίζεις κάθε νούμερο ρυθμού ως απόλυτο μέγιστο.
Όταν η απαίτηση είναι ανά πελάτη, δύο μεταφορές που τρέχουν ταυτόχρονα θα πρέπει να μοιράζονται ένα όριο. Το να δίνεις σε κάθε ροή τον πλήρη ρυθμό είναι άλλη πολιτική, και επιβιώνει από κάθε δοκιμή που παρακολουθεί μόνο ένα κατέβασμα.
Δύο συσκευές, ένας λογαριασμός, ένα όριο;
Ο περιορισμός δύο διευθύνσεων συσκευών χωριστά δεν αθροίζεται ποτέ σε ένα όριο σε επίπεδο λογαριασμού, ακόμη και όταν και οι δύο συσκευές συνδέονται ως το ίδιο πρόσωπο. Το ίδιο ισχύει για ένα ολόκληρο LAN που μεταφράζεται πίσω από έναν ομότιμο, ή για πρόσθετες διευθύνσεις IPv6 που ο ταξινομητής δεν περίμενε ποτέ. Κράτα ενημερωμένη τη σχέση διεύθυνσης και ταυτότητας, και θυμήσου ότι μια σταθερή διεύθυνση απλοποιεί τον χάρτη χωρίς να ταυτοποιεί τον κάτοχό της.
Όρισε και τη συμπεριφορά ριπής και ουράς. Οι κουβάδες διακριτικών επιτρέπουν σύντομες ριπές πάνω από τον μέσο όρο, και η προσωρινή αποθήκευση προσθέτει καθυστέρηση· το να αστυνομεύεις το πλεόνασμα και να το βάζεις σε ουρά για αργότερα είναι διαφορετικές αποφάσεις με διαφορετικά συμπτώματα.
Για επικύρωση, τρέξε δύο μεταφορές από έναν πελάτη, πρόσθεσε δεύτερο πελάτη, και διάβασε τους μετρητές κλάσης προς κάθε κατεύθυνση.