Το OpenVPN διανέμει το multicast σε κάθε πελάτη, όχι στους συνδρομητές
Ο διακομιστής χώρου χρήστη αντιγράφει το πακέτο ομάδας ανά πελάτη, όχι ανά συνδρομητή. Προϋπολογίστε τη διανομή, αποδείξτε την με μετρητές σήραγγας και μετά περιορίστε τον σχεδιασμό.
Το «υποστηρίζει multicast» απαντά σε ερώτηση πρωτοκόλλου και αφήνει ανέγγιχτο το ερώτημα χωρητικότητας. Αυτό που μετράει επιχειρησιακά είναι πόσα αντίγραφα εκπέμπει ο διακομιστής για ένα πακέτο ομάδας και ποιες σήραγγες τα μεταφέρουν. Μια συνδρομημένη εφαρμογή που λαμβάνει τη ροή αποδεικνύει μόνο ότι η παράδοση λειτουργεί κάπου. Δεν αποδεικνύει ότι οι αδιάφοροι πελάτες γλίτωσαν το εύρος ζώνης.
Τρία ερωτήματα μέσα σε έναν ισχυρισμό λειτουργίας
Η συμμετοχή σε ομάδα ρωτά αν ο δέκτης εντάχθηκε στην ομάδα. Η παράδοση μέσω σήραγγας ρωτά αν το πακέτο πέρασε καθόλου τη σήραγγα. Η πολιτική αναπαραγωγής ρωτά πόσα αντίγραφα έφτιαξε ο διακομιστής και σε ποιον. Μια δήλωση προμηθευτή μπορεί να είναι αληθής για το πρώτο και σιωπηλή για το τρίτο, και εκεί κατοικεί το κόστος.
Κρατήστε τα χωριστά όταν διαστασιολογείτε έναν σύνδεσμο. Μόνο το τρίτο ερώτημα ορίζει τον προϋπολογισμό εξερχόμενης κίνησης στην πλευρά του διακομιστή.
Τι κάνει ο διακομιστής χώρου χρήστη με ένα πακέτο ομάδας
Στον παραδοσιακό διακομιστή χώρου χρήστη του OpenVPN 2.6, ένα εισερχόμενο πακέτο broadcast ή multicast ταξινομείται στη διαδρομή εισόδου TUN/TAP και παραδίδεται στη ρουτίνα διανομής broadcast αντί σε αναζήτηση ανά ομάδα. Η ρουτίνα αυτή διατρέχει τις παρουσίες πελατών, παραλείπει τον αποστολέα και κάθε σταματημένη παρουσία, εφαρμόζει τον έλεγχο VLAN όπου έχει ρυθμιστεί και βάζει ένα αντίγραφο στην ουρά για κάθε εναπομείναντα πελάτη. Κανένα βήμα σε αυτόν τον βρόχο δεν συμβουλεύεται πίνακα συμμετοχής. Αυτή είναι αναπαραγωγή τύπου broadcast, και αυτός είναι ολόκληρος ο μηχανισμός.
Θεωρήστε το ιδιότητα αυτής της διαδρομής κώδικα, όχι καθολικό νόμο. Επιταχυνόμενες διαδρομές δεδομένων, άλλες υλοποιήσεις και διαφορετικές εκδόσεις μπορεί να συμπεριφέρονται αλλιώς, και τίποτα από αυτά δεν κάνει το TAP απαίτηση ή επισκευή.
Υπολογίστε τα αντίγραφα πριν μετρήσετε οτιδήποτε
Πάρτε τον ρυθμό ωφέλιμου φορτίου και πολλαπλασιάστε τον με τον αριθμό των επιλέξιμων πελατών. Μια ροή που στέλνει ένα megabit το δευτερόλεπτο σε είκοσι πελάτες παράγει είκοσι megabit το δευτερόλεπτο ωφέλιμου φορτίου που φεύγει από τον διακομιστή, πριν από ενθυλάκωση, αναμετάδοση και οποιαδήποτε επιβάρυνση ανά πελάτη. Αυτή η αριθμητική είναι προϋπολογισμός, όχι μέτρηση της ανάπτυξής σας.
ip -s link show tun0Διαβάστε τον μετρητή byte αποστολής πριν και μετά από σταθερό διάστημα με έναν γνωστό ενεργό αποστολέα. Διαιρέστε με το διάστημα και συγκρίνετε με τον ρυθμό ωφέλιμου φορτίου πολλαπλασιασμένο με τον αριθμό πελατών. Ένας αριθμός κοντά στον ρυθμό μίας ροής σημαίνει ότι η αναπαραγωγή είναι περιορισμένη· ένας αριθμός κοντά στον πολλαπλασιασμένο ρυθμό σημαίνει ότι κάθε πελάτης λαμβάνει αντίγραφο.
Ο μετρητής περιλαμβάνει και την δική σας κίνηση σήραγγας, οπότε κρατήστε το παράθυρο δοκιμής σύντομο και τον κεντρικό υπολογιστή ήσυχο κατά τα άλλα. Η ακρίβεια μετράει λιγότερο από την τάξη μεγέθους, και αυτό είναι το μόνο που χρειάζεστε για να ξεχωρίσετε ένα αντίγραφο από είκοσι.
Μια δοκιμή δύο πελατών που λύνει το ζήτημα εμβέλειας
Συνδέστε έναν πελάτη που θα έπρεπε να λαμβάνει τη ροή και έναν δεύτερο που δεν θα έπρεπε. Ξεκινήστε τον αποστολέα και μετά παρακολουθήστε τους μετρητές σήραγγας του δεύτερου πελάτη για το ίδιο διάστημα. Η αύξηση στον δεύτερο πελάτη είναι άμεση απόδειξη ευρείας αναπαραγωγής, ό,τι κι αν έλεγε η λίστα λειτουργιών.
Φιλτράρετε τη σύλληψη στη διεύθυνση ομάδας ώστε να μη διαβάζετε άσχετη κίνηση, και περιορίστε την στη διεπαφή σήραγγας. Η σύλληψη της φυσικής διεπαφής σε πολυάσχολο κεντρικό υπολογιστή παράγει αρχείο που κανείς δεν μπορεί να ερμηνεύσει και μπορεί να διατηρήσει δεδομένα χρηστών που δεν σκοπεύατε να συλλέξετε.
Μετά αντιστρέψτε τους ρόλους. Αν το αποτέλεσμα ακολουθεί τον δέκτη και όχι την ομάδα, βλέπετε κάτι που λαμβάνει υπόψη τη συμμετοχή, και η προηγούμενη υπόθεση ήταν λανθασμένη προς όφελός σας.
Επιλογή περιορισμένου σχεδίου αντί για αφαίρεση ορίων
Όταν η διανομή είναι πολύ ευρεία, η διόρθωση είναι μια υποστηριζόμενη διάταξη περιορισμένης διανομής, όχι η διαγραφή κάθε ελέγχου που έχετε. Επιλογές περιλαμβάνουν τη μετακίνηση του σημείου διανομής πιο κοντά στους δέκτες, τη χρήση μοντέλου συνδρομής ειδικού για την πηγή που μεταφέρει την ταυτότητα της πηγής μαζί με την ομάδα, ή τον διαχωρισμό της ροής ώστε οι αδιάφορες τοποθεσίες να μη βρίσκονται ποτέ στο ίδιο όριο διανομής.
Κρατήστε την ταυτότητα πηγής και ομάδας χωριστά από το απλό γεγονός ότι ένας προορισμός είναι multicast. Ένας δέκτης που αναγνωρίζει την ομάδα αλλά όχι την πηγή είναι διαφορετικός συνδρομητής από εκείνον που ζήτησε συγκεκριμένο κανάλι. Η ανάμειξη των δύο κάνει τον μεταγενέστερο σχεδιασμό χωρητικότητας εικασία.
Το μοντέλο καναλιού multicast ειδικού για την πηγή είναι η αναφορά για αυτή τη διάκριση. Όποιο σχέδιο κι αν επιλέξετε, καταγράψτε το σύνολο επιλέξιμων ομοτίμων, τον υπεύθυνο αναπαραγωγής και τον μετρητή που θα διαβάσετε την επόμενη φορά· αυτή η καταγραφή μετατρέπει την έκπληξη εύρους ζώνης σε γνωστό κόστος.