Δρομολόγηση
Λίγη Βασική Θεωρία
Δίκτυο Black Box
Θέλετε μέσω ενός δικτύου (συννεφάκι) να επικοινωνήσετε από το pc σας (αριστερά) με ένα άλλο pc (δεξιά).
Για να το κάνει αυτό ο υπολογιστής σας το μόνο που χρειάζεται να γνωρίζει είναι τη διεύθυνση του router στον οποιο συνδέεστε. Από εκεί και πέρα το τί συμβαίνει στο δίκτυο είναι άγνωστο για το pc. Παραδίδει δηλαδή τα δεδομένα στον router σε ένα πακέτο με προορισμό την ip του pc-δεξιά και τίποτε παραπάνω. Δε γνωρίζει ούτε πόσοι routers υπάρχουν ενδιάμεσα ούτε τι είδους links υπάρχουν μεταξύ τους.
Το Εσωτερικό του Δικτύου
Εσωτερικά το δίκτυο μπορεί να είναι κάπως έτσι:
Οι routers είναι με κάποιο πολύπλοκο τρόπο διασυνδεδεμένοι μεταξύ τους.
Διαδρομή μέσα στο Χάος
Και για να βγάλουν άκρη ποιος συνδέεται με ποιον κλπ. χρειάζονται ένα ειδικό πρόγραμμα - το πρόγραμμα / αλγόριθμο δρομολόγησης (rip,ospf,bgp,olsr και πολλά άλλα).
Στόχος του αλγόριθμου δρομολόγησης είναι να βρεί μία πορεία μέσα στους routers που να συνδέει τον προορισμό με την αφετηρία.
Για παράδειγμα ένας αλγόριθμος δρομολόγησης θα επιλέξει την πράσινη διαδρομή για να στείλει τα πακέτα από το ένα άκρο του δικτύου στο άλλο.
Δυναμικός Αλγόριθμος Δρομολόγησης
Ένας δυναμικός αλγοριθμος δρομολόγησης (σαν αυτούς που υπάρχουν στα ospf,bgp,olsr) μπορεί να γνωρίζει πότε τα διάφορα links είναι up/down και ανάλογα αλλάζει τη διαδρομή δρομολόγησης ώστε πάντα τα πακέτα να φτάνουν στον προορισμό τους. Για παράδειγμα άν ένας router κλείσει (καθημερινό φαινόμενο για το wireless δίκτυο), το δυναμικό πρωτόκολλο δρομολόγησης (συγκεκριμένα το ospf στην περίπτωσή μας) θα επιλέξει άλλη εναλλακτική διαδρομή.
Distance Vector Αλγόριθμος Δρομολόγησης
Μία επιπλέον πληροφορία που πρέπει να εκμεταλλευτούμε για την αποδοτική δρομολόγηση είναι η ποιότητα του κάθε link μεταξύ των routers. Σαν ποιότητα συμπεριλαμβάνουμε ταχύτητα, σταθερότητα, φόρτο κλπ. Αυτό το ποιοτικό χαρακτηριστικό της γραμμής το ποσοτικοποιούμε με το Cost της γραμμής. Όσο μεγαλύτερο Cost τόσο χειρότερο το link - ο αλγόριθμος δρομολόγησης προσπαθεί να το αποφύγει.
Οι αλγόριθμοι που προσδιορίζουν τη διαδρομή με το ελάχιστο κόστος είναι οι distance vector αλγόριθμοι. Τέτοιον έχει και το ospf. Αυτοί οι αλγόριθμοι όπως είναι λογικό δεν επιλέγουν πάντοτε τη διαδρομή που περνά από το λιγότερο αριθμό routers (εφόσον υπάρχει άλλη με μικρότερο κόστος).
Ένα παράδειγμα στο οποίο φαίνεται το παραπάνω είναι αυτό: