Δρομολόγηση

Από PWMN
Μετάβαση στην πλοήγηση Πήδηση στην αναζήτηση

Λίγη Βασική Θεωρία

Δίκτυο Black Box

Το δίκτυο είναι μαύρο κουτί για τα pc

Θέλετε μέσω ενός δικτύου (συννεφάκι) να επικοινωνήσετε από το pc σας (αριστερά) με ένα άλλο pc (δεξιά).

Για να το κάνει αυτό ο υπολογιστής σας το μόνο που χρειάζεται να γνωρίζει είναι τη διεύθυνση του router στον οποιο συνδέεστε. Από εκεί και πέρα το τί συμβαίνει στο δίκτυο είναι άγνωστο για το pc. Παραδίδει δηλαδή τα δεδομένα στον router σε ένα πακέτο με προορισμό την ip του pc-δεξιά και τίποτε παραπάνω. Δε γνωρίζει ούτε πόσοι routers υπάρχουν ενδιάμεσα ούτε τι είδους links υπάρχουν μεταξύ τους.

Το Εσωτερικό του Δικτύου

Εσωτερικά το δίκτυο μπορεί να είναι κάπως έτσι:
Το εσωτερικό ενός δικτύου - διασυνδεδεμένοι routers
Οι routers είναι με κάποιο πολύπλοκο τρόπο διασυνδεδεμένοι μεταξύ τους και με κάποιο τρόπο πρέπει να ξέρει καθένας τους πού θα προωθεί τα πακέτα του ώστε να φτάσουν στον προορισμό τους.


Διαδρομή μέσα στο Χάος

Και για να βγάλουν άκρη ποιος συνδέεται με ποιον κλπ. χρειάζονται ένα ειδικό πρόγραμμα - το πρόγραμμα / αλγόριθμο δρομολόγησης (rip,ospf,bgp,olsr και πολλά άλλα).
 Στόχος του αλγόριθμου δρομολόγησης είναι να βρεί μία πορεία μέσα στους routers που να συνδέει τον προορισμό με την αφετηρία.

Για παράδειγμα ένας αλγόριθμος δρομολόγησης θα επιλέξει την πράσινη διαδρομή για να στείλει τα πακέτα από το ένα άκρο του δικτύου στο άλλο.

Ο αλγόριθμος δρομολόγησης επιλέγει διαδρομή

Δυναμικός Αλγόριθμος Δρομολόγησης

Ένας δυναμικός αλγοριθμος δρομολόγησης (σαν αυτούς που υπάρχουν στα ospf,bgp,olsr) μπορεί να γνωρίζει πότε τα διάφορα links είναι up/down και ανάλογα αλλάζει τη διαδρομή δρομολόγησης ώστε πάντα τα πακέτα να φτάνουν στον προορισμό τους. Για παράδειγμα άν ένας router κλείσει (καθημερινό φαινόμενο για το wireless δίκτυο), το δυναμικό πρωτόκολλο δρομολόγησης (συγκεκριμένα το ospf στην περίπτωσή μας) θα επιλέξει άλλη εναλλακτική διαδρομή.
Όταν πέφτουν κάποια links, ο δυναμικός αλγόριθμος δρομολόγησης εντοπίζει εναλλακτική διαδρομή

Distance Vector Αλγόριθμος Δρομολόγησης

Μία επιπλέον πληροφορία που πρέπει να εκμεταλλευτούμε για την αποδοτική δρομολόγηση είναι η ποιότητα του κάθε link μεταξύ των routers. Σαν ποιότητα συμπεριλαμβάνουμε ταχύτητα, σταθερότητα, φόρτο κλπ. Αυτό το ποιοτικό χαρακτηριστικό της γραμμής το ποσοτικοποιούμε με το Cost της γραμμής. Όσο μεγαλύτερο Cost τόσο χειρότερο το link - ο αλγόριθμος δρομολόγησης προσπαθεί να το αποφύγει.

Οι αλγόριθμοι που προσδιορίζουν τη διαδρομή με το ελάχιστο κόστος είναι οι distance vector αλγόριθμοι. Τέτοιον έχει και το ospf. Αυτοί οι αλγόριθμοι όπως είναι λογικό δεν επιλέγουν πάντοτε τη διαδρομή που περνά από το λιγότερο αριθμό routers (εφόσον υπάρχει άλλη με μικρότερο κόστος).

Ένα παράδειγμα στο οποίο φαίνεται το παραπάνω είναι αυτό:

Οι Distance Vector αλγόριθμοι εντοπίζουν τη διαδρομή με το ελάχιστο κόστος

Θεωρία στην πράξη - OSPF στο MikroTik

Τοπολογία

Έστω ότι θέλουμε να προσθέσουμε στο δίκτυο το ταρατσοPC/Routerboard μας που βρίσκεται στα αριστερά.
Τοπολογία του δικτύου για το παράδειγμα του OSPF
Το μόνο που χρειάζεται να γνωρίζουμε είναι σε ποιον router θα συνδεθούμε (τo δίκτυο 10.140.200.64/30 στη συγκεκριμένη περίπτωση).

OSPF Settings

Ξεκινάμε Routing>OSPF. Το πρώτο που πρέπει να κάνουμε είναι να ρυθμίσουμε τις βασικές παραμέτρους του OSPF στα Settings. Εκεί προσδιορίζουμε τα:
  • Router Id που συνήθως βάζουμε το subnet του κόμβου (π.χ. 10.140.19.0).
  • Redistribute Default Route -> NEVER Ώστε να μην κάνει announce to 0.0.0.0/0.0.0.0 που προκαλεί χάος στο δίκτυο.
  • Redistribute Static Routes -> As type 1 Ώστε να ανακοινώνει τα όποια static routes έχουμε (σε περίπτωση π.χ που έχουμε κόψει subnet για κάποιον που μπαίνει στην omni)
OSPF Settings

Add Interfaces

Warning Εδώ προσθέτουμε τα backbone interfaces. Τίποτε Άλλο. Τα interfaces του ethernet ή του AP δεν πρεπει να προστίθενται.
Add interfaces 1/3
Add interfaces 2/3
Add interfaces 3/3

Announce Networks

Warning Εδώ προσθέτουμε τα backbone networks. Τίποτε Άλλο. Τα networks του ethernet ή του AP δεν πρεπει να προστίθενται.
Add Networks 1/3
Add Networks 2/3
Add Networks 3/3

Area

Area

Neighbors

Αν όλα πάνε καλά (δηλαδή και ο γειτονικός router έχει προσθέσει το interface και το network στον ospf του) τότε στο neighbors θα εμφανιζεται ενεργό το δίκτυο του backbone links μεταξύ σας.
Neighbors

Routes

Ένας τελικός έλεγχος για να σιγουρευτούμε ότι όλα λειτουργούν σωστά είναι να κοιτάξουμε στο IP>Routes. Αν υπάρχουν πολλά routes (αρκετές σελίδες) τότε όλα λειτουργούν σωστά. Αν όμως υπάρχουν τα routes μόνο του router σας, τότε κάτι δε λειτουργεί σωστά.
IP>Routes

Reference: http://www.mikrotik.com/testdocs/ros/2.9/refman2.9.pdf