Το επίπεδο Διαδικτύου (στο μοντέλο TCP/IP), εκτός από τη διευθυνσιοδότηση, είναι επιφορτισμένο και με τη δρομολόγηση των αυτοδύναμων πακέτων (datagrams) ώστε να εξασφαλίσει την επικοινωνία μεταξύ των δυο ακραίων υπολογιστών του δικτύου (host to host). Να παρέχει, δηλαδή, το απαιτούμενο επικοινωνιακό υποδίκτυο. Η δρομολόγηση έχει έννοια όταν μεταξύ των ακραίων υπολογιστών μεσολαβεί τουλάχιστον ένας δρομολογητής. Σε αντίθετη περίπτωση είναι διαθέσιμες και άλλες τεχνικές (μεταγωγή - switching, γεφύρωση
- bridging) οι οποίες μπορούν να υλοποιηθούν από το 2ο επίπεδο του OSI και αναφέρονται στο ίδιο φυσικό δίκτυο
Δρομολόγηση είναι το έργο της μετακίνησης (προώθησης, διεκπεραίωσης) της πληροφορίας από την αφετηρία μέσω ενός διαδικτύου και παράδοσης στον προορισμό της.
Η δρομολόγηση περιλαμβάνει δυο διακριτές δραστηριότητες
● τον προσδιορισμό της καλύτερης διαδρομής από την αφετηρία έως τον προορισμό και
● την μεταφορά (προώθηση - IP forwarding) της ομαδοποιημένης, σε πακέτα, πληροφορίας στον προορισμό της, διαμέσου του Διαδικτύου.
Η δεύτερη δραστηριότητα, η μεταφορά-προώθηση των πακέτων δεν είναι ιδιαίτερα πολύπλοκη και η υλοποίησή της είναι σχετικά εύκολη. Η πρώτη όμως, ο προσδιορισμός της διαδρομής, μπορεί να καταλήξει σε ιδιαίτερα σύνθετο πρόβλημα το οποίο καλούνται να αντιμετωπίσουν τα πρωτόκολλα δρομολόγησης.
Τα πρωτόκολλα δρομολόγησης χρησιμοποιούν μετρήσιμα χαρακτηριστικά για να εκτιμήσουν ποια διαδρομή είναι καλύτερη για ένα πακέτο. Τέτοια είναι το εύρος ζώνης (ταχύτητα) των γραμμών της διαδρομής, η σχετική απόσταση (αριθμός των αλμάτων ή κόμβων) έως τον προορισμό κ.ά. Η εκτίμηση της βέλτιστης διαδρομής προς τον προορισμό γίνεται από τους αλγόριθμους που χρησιμοποιούνται από τα πρωτόκολλα δρομολόγησης.
Με τη βοήθεια των αλγορίθμων συντάσσουν τους πίνακες δρομολόγησης οι οποίοι περιέχουν πληροφορίες δρομολογίων. Οι πληροφορίες δρομολογίων ποικίλουν ανάλογα με τον χρησιμοποιούμενο αλγόριθμο.
Οι αλγόριθμοι δρομολόγησης ενημερώνουν στους πίνακες δρομολόγησης μια ποικιλία πληροφοριών. Οι βασικότερες είναι οι αντιστοιχίσεις προορισμού και επόμενου άλματος (next hop) οι οποίες λένε στο δρομολογητή σε ποια δικτυακή διασύνδεση να προωθήσει ένα εισερχόμενο πακέτο. Όταν ένας δρομολογητής παραλαμβάνει ένα εισερχόμενο πακέτο εξετάζει την διεύθυνση προορισμού και προσπαθεί να την ταιριάξει με μια εγγραφή επόμενου άλματος στον πίνακα δρομολόγησης. Στη συνέχεια προωθεί το πακέτο από την αντίστοιχη δικτυακή διασύνδεση.
Αυτό σημαίνει ότι η λήψη αποφάσεων για τη διαδρομή που θα ακολουθήσουν τα αυτοδύναμα πακέτα επαναλαμβάνεται για κάθε πακέτο χωριστά και υπάρχει το ενδεχόμενο πακέτα για τον ίδιο προορισμό να ακολουθήσουν σε διαφορετικές χρονικές στιγμές διαφορετικές διαδρομές.
Οι πίνακες δρομολόγησης περιέχουν και πληροφορίες οι οποίες εκφράζουν το βαθμό προτίμησης μιας διαδρομής (του επόμενου άλματος).
Οι δρομολογητές επικοινωνούν μεταξύ τους ανταλλάσσοντας μηνύματα και ενημερώνουν τους πίνακες δρομολόγησής τους. Τα μηνύματα ενημέρωσης μπορεί να είναι μέρος του πίνακα δρομολόγησης ή ολόκληρος. Ένας δρομολογητής αναλύοντας τα μηνύματα ενημέρωσης άλλων δρομολογητών μπορεί να σχηματίσει μια λεπτομερή εικόνα της τοπολογίας και της τρέχουσας κατάστασης των συνδέσεων του Διαδικτύου. Έτσι είναι σε θέση να προσδιορίζει τις βέλτιστες διαδρομές προς διάφορους προορισμούς του Διαδικτύου.
Το πρωτόκολλο IP χρησιμοποιεί αυτοδύναμα πακέτα (datagrams) και είναι σχεδιασμένο να λειτουργεί σε όλους τους τύπους υλικού δικτύου. Αν και κάνει τη βέλτιστη προσπάθεια (best effort) για να επιδώσει το κάθε αυτοδύναμο πακέτο, το υποκείμενο υλικό δικτύου μπορεί να λειτουργήσει λανθασμένα. Έτσι δεν εγγυάται ότι μπορεί να αντιμετωπίσει τα παρακάτω προβλήματα:
● Επανάληψη αυτοδύναμου πακέτου
● Επίδοση με καθυστέρηση ή εκτός σειράς
● Αλλοίωση δεδομένων
● Απώλεια αυτοδύναμου πακέτου
Αναφέρθηκε ότι ο αρχικός υπολογιστής, ο αποστολέας, εξετάζει την διεύθυνση IP προορισμού. Αυτό που κάνει, στην πραγματικότητα, είναι λογικό ΚΑΙ (AND) της διεύθυνσης IP προορισμού με τη μάσκα δικτύου για να βρει τη διεύθυνση του δικτύου προορισμού. Στη συνέχεια τη συγκρίνει με τη δική του διεύθυνση δικτύου. Αν είναι ίδιες τότε συμπεραίνει ότι ο υπολογιστής προορισμού βρίσκεται στο ίδιο δίκτυο. Στη συνέχεια καλεί το πρωτόκολλο ARP για να μάθει τη φυσική διεύθυνση που αντιστοιχεί στη διεύθυνση IP προορισμού, ενθυλακώνει το πακέτο σε ένα πλαίσιο και το στέλνει στον προορισμό του. Στην περίπτωση αυτή οι υπολογιστές προέλευσης και προορισμού βρίσκονται στο ίδιο δίκτυο, δεν μεσολαβεί δρομολογητής και η διαδικασία χαρακτηρίζεται άμεση δρομολόγηση.
Εάν κατά την εξέταση της διεύθυνσης IP προορισμού διαπιστώσει ότι ο υπολογιστής προορισμού βρίσκεται σε διαφορετικό δίκτυο τότε αναζητά στον πίνακα δρομολόγησης μια καταχώριση η οποία να αναφέρεται είτε στη διεύθυνση είτε στη διεύθυνση δικτύου προορισμού. Εκεί εντοπίζει τον αντίστοιχο δρομολογητή, καλεί το πρωτόκολλο ARP για να μάθει τη φυσική διεύθυνση που αντιστοιχεί στον δρομολογητή, ενθυλακώνει το πακέτο σε ένα πλαίσιο με προορισμό τη φυσική διεύθυνση του δρομολογητή και του το στέλνει για να
συνεχίσει την προσπάθεια παράδοσης του πακέτου προς τον τελικό του προορισμό. Όταν οι υπολογιστές προέλευσης και προορισμού δεν βρίσκονται στο ίδιο δίκτυο και μεσολαβούν ανάμεσά τους ένας ή περισσότεροι δρομολογητές τότε η διαδικασία χαρακτηρίζεται έμμεση δρομολόγηση.