Κεφάλαιο 7: Διαδικτύωση-Internet Μάθημα 7.2: Τεχνολογία TCP/IP
Τεχνολογία TCP/IP Άλλα ονόματα: Πρότυπο (αναφοράς) TCP/IP Τεχνολογία Διαδικτύου
Διαφορά TCP/IP-Πρωτόκολλα TCP/IP
Πλεονέκτημα προτύπου TCP/IP Ίδιο για hosts (τελικούς υπολογιστές) όλων των ειδών, χαρακτηριστικών, κατασκευαστών και λειτουργικών συστημάτων. Δεν χρειάζεται μετατροπή πρωτοκόλλων όταν ένας host θέλει να επικοινωνήσει με έναν άλλο.
Διαφορά TCP/IP διαδικτύου και Internet TCP/IP διαδίκτυο=διαδίκτυο που χρησιμοποιεί το πρότυπο TCP/IP. Internet (Διαδίκτυο, Παγκόσμιο Διαδίκτυο)=Συγκεκριμένο TCP/IP διαδίκτυο με εκατομμύρια hosts, διασκορπισμένους σε όλο τον κόσμο.
Εσωτερικό ιδιωτικό δίκτυο τεχνολογίας TCP/IP (intranet-ενδοδίκτυο) Ανήκει σε επιχείρηση ή οργανισμό. Χρησιμοποιεί τις υπηρεσίες του Διαδικτύου (κυρίως Web).
ARPANET Πρόγονος Internet. Επίσημα τέθηκε σε λειτουργία για στρατιωτικούς σκοπούς το 1971.
Μοντέλα OSI-TCP/IP Εμφανίστηκαν ταυτόχρονα.
Σχέση OSI-TCP/IP
Σχέση OSI-TCP/IP Έχουν επίπεδα. OSI=7 επίπεδα. TCP/IP=4 επίπεδα.
Σημαντική παρατήρηση για το OSI
(Κυριότερα) Πρωτόκολλα TCP/IP
(Κυριότερα) πρωτόκολλα TCP/IP SMTP=Πρωτόκολλο Μεταφοράς Απλού Ταχυδρομείου. FTP=Πρωτόκολλο Μεταφοράς Αρχείων. TFTP=Πρωτόκολλο Απλής Μεταφοράς Αρχείων. ΤELNET=Πρωτόκολλο Απομακρυσμένης Σύνδεσης. TCP=Πρωτόκολλο Ελέγχου Μετάδοσης. UDP=Πρωτόκολλο Αυτοδύναμων Πακέτων Χρήστη. IP=Πρωτόκολλο Διαδικτύου. ICMP=Πρωτόκολλο Μηνύματος Ελέγχου Διαδικτύου.
Επίπεδο πρόσβασης δικτύου (βασικές λειτουργίες) Είναι το χαμηλότερο επίπεδο του TCP/IP. Προσφέρει υπηρεσίες στο επίπεδο δικτύου. Προσφέρει υπηρεσίες πρόσβασης στο φυσικό δίκτυο (π.χ. Ethernet, Token Ring, Wi-Fi). Υλοποιείται με στοιχεία φυσικών συνδέσεων (=υλικό) (π.χ. καλώδια, βύσματα, κάρτες δικτύου, αναμεταδότες, επαναλήπτες). Το πρότυπο TCP/IP δεν καθορίζει συγκεκριμένο επίπεδο πρόσβασης δικτύου και έτσι αυτό μπορεί να είναι οποιοδήποτε (π.χ. Ethernet, ΑΤΜ).
Επίπεδο δικτύου (βασικές λειτουργίες) Προσφέρει υπηρεσίες στο επίπεδο μεταφοράς. Μεταφέρει τα πακέτα TCP και UDP. Υλοποιείται με τα πρωτόκολλα: α) IP β) ICMP
α) IP(σύντομη περιγραφή) Μεταφέρει και δρομολογεί πακέτα. Παρέχει λογικές διευθύνσεις (=διευθύνσεις IP) στα σημεία διεπαφής του με το φυσικό δίκτυο (δηλαδή στις διάφορες κάρτες δικτύου). Με τη βοήθεια των πρωτοκόλλων ARP και RARP αντιστοιχίζει λογικές διευθύνσεις σε φυσικές διευθύνσεις(=διευθύνσεις υλικού, διευθύνσεις MAC). ARP=Πρωτόκολλο Μετατροπής Διευθύνσεων. RARP=Πρωτόκολλο Ανάστροφης Μετατροπής Διευθύνσεων.
β) ICMP (λειτουργία) Αναφέρει προβλήματα και ασυνήθιστες καταστάσεις σχετικά με το IP.
ICMP (περιγραφή) Δημιουργεί και ελέγχει μηνύματα σχετικά με την κατάσταση των συσκευών σε ένα δίκτυο (π.χ. απρόσιτος υπολογιστής). Αυτά τα μηνύματα χρησιμοποιούνται από το πρότυπο TCP/IP και όχι από κάποιο πρόγραμμα χρήστη.
Επίπεδο μεταφοράς (βασικές λειτουργίες) Προσφέρει υπηρεσίες στο επίπεδο εφαρμογής. Υλοποιεί τις λογικές συνδέσεις μεταξύ των hosts. Υλοποιείται με τα πρωτόκολλα: α) TCP (το σημαντικότερο). β) UDP (μία παραλλαγή του TCP).
α) TCP (σύντομη περιγραφή) Είναι πρωτόκολλο με σύνδεση. Είναι αξιόπιστο: Επαναφέρει τους hosts μετά από λάθη μετάδοσης, όπως απώλεια, καταστροφή, πολλαπλή εκπομπή πακέτων. Οι συνδέσεις που προσφέρει είναι: α. Ταυτόχρονες: Από έναν host μπορεί να ξεκινούν ταυτόχρονα πολλές συνδέσεις, που η μία δεν επηρεάζει την άλλη. β. Διπλής κατεύθυνσης (full duplex): Σε μία σύνδεση μπορεί ταυτόχρονα να στέλνονται και να λαμβάνονται δεδομένα.
β) UDP (σύντομη περιγραφή) Είναι πρωτόκολλο χωρίς σύνδεση. Είναι αναξιόπιστο. Χρησιμοποιείται για ειδικούς σκοπούς (π.χ. DNS) και σε εφαρμογές που δεν μας ενδιαφέρει η αξιοπιστία, αλλά η ταχύτητα (π.χ. μετάδοση ήχου και βίντεο).
Επίπεδο εφαρμογής (βασικές λειτουργίες) Είναι το υψηλότερο επίπεδο του προτύπου TCP/IP. Είναι το επίπεδο με το οποίο ο χρήστης έρχεται σε επαφή με τα πρωτόκολλα TCP/IP. Χρησιμοποιεί τις υπηρεσίες του επιπέδου μεταφοράς. Εκτελεί δικτυακές εφαρμογές (π.χ. e-mail).
Μοντέλο πελάτη-εξυπηρετητή(client-server) Διεργασία πελάτης (π.χ. φυλλομετρητής) Διεργασία εξυπηρετητής (π.χ. Apache server, IIS server) Αίτηση Απάντηση Host πελάτης Host εξυπηρετητής H διεργασία εξυπηρετητής ξεκινάει πρώτη. Μπαίνει σε κατάσταση αναμονής (περιμένει να εξυπηρετήσει αιτήματα πελάτη). Η διεργασία πελάτη ξεκινάει μετά. Όταν θέλει να πάρει κάποια πληροφορία από τη διεργασία εξυπηρετητή, δημιουργεί αίτηση. Η αίτηση αυτή εξυπηρετείται από τη διεργασία εξυπηρετητής, η οποία ξαναμπαίνει σε κατάσταση αναμονής. Η διεργασία πελάτης μπορεί να τερματιστεί.
Τρόπος επικοινωνίας hosts στο TCP/IP
Παράδειγμα επικοινωνίας hosts στην αποστολή e-mail E-mail=Ανταλλαγή μηνυμάτων μεταξύ hosts. Οι hosts εκτελούν δικτυακές εφαρμογές για το e-mail. Οι λειτουργίες τους εκτελούνται σύμφωνα με τους κανόνες ενός πρωτοκόλλου e-mail(π.χ. SMTP για την αποστολή e-mail). Πρωτόκολλο SMTP=Καθορίζει τη μορφή και τη σημασία των μηνυμάτων που ανταλλάσουν δύο hosts (π.χ. Ειδικά μηνύματα στο SMTP καθορίζουν τον αποστολέα, τον παραλήπτη μιας μετάδοσης καθώς και το περιεχόμενο του μηνύματος). Το πρωτόκολλο SMTP χρησιμοποιεί τις λειτουργίες των πρωτοκόλλων TCP και IP που χρησιμοποιούνται για να δρομολογήσουν πακέτα και να εξασφαλίσουν την αξιόπιστη μεταφορά των δεδομένων. Η πραγματική μετάδοση δεδομένων γίνεται από τα φυσικά μέσα των φυσικών δικτύων.
Επίπεδα που χρησιμοποιούν οι εφαρμογές στο TCP/IP Επίπεδο εφαρμογής: Οι λειτουργίες του εκτελούνται με πρωτόκολλα δικτυακών εφαρμογών (π.χ. για το e-mail το SMTP). Επίπεδο μεταφοράς: Οι λειτουργίες του εκτελούνται με πρωτόκολλα όπως το TCP και το UDP. Επίπεδο δικτύου: Οι λειτουργίες του εκτελούνται με πρωτόκολλα όπως το IP. Επίπεδο πρόσβασης δικτύου: Οι λειτουργίες του εκτελούνται με πρωτόκολλα διαχείρισης φυσικού μέσου (π.χ. Ethernet).
Ονόματα hosts Στη θεωρία όνομα host=διεύθυνση IP (π.χ. 193.168.20.1). Στην πράξη όνομα host=domain name, host name (π.χ. www.google.gr). Χρησιμοποιείται λογισμικό του επιπέδου εφαρμογής (πρωτόκολλο DNS) το οποίο και χρησιμοποιεί μια κατανεμημένη βάση δεδομένων (αποθηκευμένη σε hosts που λέγονται DNS servers) για τη μετατροπή host name διεύθυνση IP.
Διαδίκτυο Πολλά ανεξάρτητα και ολοκληρωμένα φυσικά δίκτυα που συνδέονται με συσκευές που λέγονται δρομολογητές (routers). Χρησιμοποιεί για τη λειτουργία του το πρότυπο TCP/IP.
Τρόπος επικοινωνίας 2 hosts που συνδέονται σε διαφορετικά ΤΔ του Internet (1) (7) (4) (5) (2) (3) (6)
Εξήγηση του προηγούμενου σχήματος (1): Στον host αποστολέα τα προς μετάδοση μηνύματα (δεδομένα) κατεβαίνουν επίπεδα και αλλάζουν μορφές ως εξής: ΜηνύματαΤμήματα Αυτοδύναμα πακέτα Πλαίσια (2): Το επίπεδο πρόσβασης δικτύου μεταβιβάζει το προς μετάδοση πλαίσιο στο ΤΔ του host αποστολέα. (3): Το ΤΔ του host αποστολέα μεταβιβάζει το πλαίσιο στον αντίστοιχο δρομολογητή. (4): Το πλαίσιο ακολουθεί διάφορους δρομολογητές μέχρι να φθάσει στο δρομολογητή του ΤΔ του host παραλήπτη. (Ο κάθε δρομολογητής κοιτάζει την επικεφαλίδα του πακέτου για να προσδιορίσει που θα προωθήσει το πακέτο). (5): Ο δρομολογητής του ΤΔ του host παραλήπτη μεταβιβάζει το πλαίσιο στο ΤΔ του host παραλήπτη. (6): Το ΤΔ του host παραλήπτη μεταβιβάζει το πλαίσιο στον host παραλήπτη. (7): Στον host παραλήπτη γίνονται οι αντίστροφες μετατροπές από τον host αποστολέα: Πλαίσια Αυτοδύναμα πακέτα Τμήματα Μηνύματα και έτσι o host παραλήπτης παίρνει το αρχικό μήνυμα του host αποστολέα.