2.5.3 Tunnels και διαφορά μεταξύ pruned και truncated tunneling
Όταν αναφερόμαστε στην τοπολογία του MBone μόνο οι multicast routers εμφανίζονται ενώ οι ενδιάμεσοι απλοί ΙΡ δρομολογητές δεν αναφέρονται. Ο κάθε multicast δρομολογητής θεωρείται ένα νησί μέσα στην θάλασσα των unicast δρομολογητών. Δύο νησιά μπορεί να είναι είτε άμεσα συνδεδεμένα ή μπορεί να είναι συνδεδεμένα μέσω ενός tunnel. Στην πρώτη περίπτωση οι mrouters είναι άμεσα συνδεδεμένοι με μία φυσική γραμμή. Αν δύο mrouters είναι συνδεδεμένοι με τούνελ, τότε το τούνελ αυτό αντιπροσωπεύει μία point-to-point σύνδεση μεταξύ τους. Μέσα στα τούνελ υπάρχουν απλοί ΙΡ δρομολογητές. Όταν ένα multicast πακέτο μπαίνει στο τούνελ, ενσωματώνεται μέσα σε ένα απλό unicast ΙΡ πακέτο και όταν βγει από το τούνελ μετατρέπεται ξανά σε multicast πακέτο. Έτσι μπορούμε να πούμε ότι ένα τούνελ επιτρέπει στην multicast κίνηση να περνάει κατάλληλα από τον ένα δρομολογητή multicast στον άλλο.
Υπάρχουν δύο τύποι τούνελ σύνδεσης: truncated και pruned. Και οι δύο λέξεις στα αγγλικά σημαίνουν κλαδεύω, αφαιρώ περιττά μέρη, περικόπτω. Εδώ θα αναλύσουμε τους δύο αυτούς τύπους και θα διακρίνουμε τις διαφορές. Ο truncated τύπος ήταν ο πρώτος που αναπτύχθηκε και εφαρμόστηκε στα πρώτα στάδια του MBone. Σε αυτό τον σχηματισμό τα multicast πακέτα προωθούνται βασισμένα στην τιμή που έχει το TTL τους και στην τιμή εισόδου του mrouter. Η τιμή TTL είναι ο χρόνος ζωής για ένα πακέτο. Ορίζει πόσο μακριά μπορεί να προωθηθεί ένα multicast πακέτο μέσα στο Internet. Κάθε φορά που ένα multicast πακέτο περνάει μέσα από έναν ΙΡ δρομολογητή , η τιμή του TTL μειώνεται κατά ένα. Αντίστοιχα με την τιμή TTL είναι και η τιμή εισόδου για τον mrouter. Αν η τιμή εισόδου είναι μικρότερη από την τιμή TTL τότε η TTL μειώνεται και το πακέτο προωθείται. Αν η τιμή εισόδου είναι μεγαλύτερη από την τιμή TTL τότε το πακέτο “πεθαίνει” μέσα στον multicast δρομολογητή και δεν προωθείται πιο πέρα. Σε αυτή την μέθοδο όμως όλοι οι δρομολογητές ανεξάρτητα από το αν έχει σημασία ή όχι ένα multicast πακέτο για αυτούς, συνεχίζουν να λαμβάνουν, επεξεργάζονται και να προωθούν όλα τα multicast πακέτα. Έτσι αναγκάζονται να διαχειρίζονται πολύ περισσότερη κίνηση από ότι θα έπρεπε.
Μία πολύ πιο αποδοτική μέθοδος είναι αυτή του pruned tunneling. Στην πραγματικότητα οι άνθρωποι οι οποίοι ανέπτυξαν το MBone ζητούσαν το 1996 από τους administrators των συστημάτων να αναβαθμίσουν τους δαίμονες mroute σε νεότερη έκδοση που χρησιμοποιούσε την τεχνική pruned tunneling προκειμένου να σταματήσουν τα προβλήματα συμφόρησης στο MBone. Αυτή η τεχνική αναφέρεται και ως αληθινό multicasting. Σε αυτό το σχήμα τα multicast πακέτα και πάλι προωθούνται με βάση την TTL τιμή τους αλλά δεν προωθούνται προς τους δρομολογητές οι οποίοι δεν έχουν εκφράσει ενδιαφέρον με την χρήση IGMP μηνυμάτων. Αυτή η τεχνική προβάλλει μία επαρκώς αποδοτική μέθοδο για την λήψη ή μη multicast δεδομένων.
Σε περίπτωση που το IP multicasting δεν επέτρεπε δομές tunnel τότε θα έπρεπε ο κάθε mrouter να διαχειρίζεται την κίνηση των multicast δεδομένων και το MBone θα είχε “υπερχείλιση”. Τα πακέτα ποτέ δεν θα “πέθαιναν” και η δικτυακή συμφόρηση θα έκανε το multicast ανέφικτο.