Μετάβαση στο περιεχόμενο

Δίκτυα σε επίπεδα

Το μοντέλο TCP/IP, από το καλώδιο ως την εφαρμογή.

40 λεπτά

Θα μάθεις να

  1. Να εξηγείς γιατί τα δίκτυα οργανώνονται σε επίπεδα.
  2. Να περιγράφεις τα τέσσερα επίπεδα του μοντέλου TCP/IP και ένα πρωτόκολλο για το καθένα.
  3. Να αντιστοιχίζεις τα επτά επίπεδα του OSI στα επίπεδα του TCP/IP.
  4. Να περιγράφεις την ενθυλάκωση και να υπολογίζεις το κόστος των κεφαλίδων.
  5. Να επιλέγεις ανάμεσα σε TCP και UDP για μια εφαρμογή.

Γιατί επίπεδα

Όταν ανοίγεις μια ιστοσελίδα, το αίτημά σου ταξιδεύει ίσως χιλιάδες χιλιόμετρα, μέσα από Wi-Fi, οπτικές ίνες και δεκάδες ενδιάμεσα μηχανήματα διαφορετικών κατασκευαστών, και φτάνει σε έναν υπολογιστή που δεν έχει ιδέα τι συσκευή κρατάς. Κανένα πρόγραμμα δεν θα μπορούσε να τα χειριστεί όλα αυτά μαζί.

Η λύση είναι η διαστρωμάτωση: το πρόβλημα σπάει σε επίπεδα (layers). Κάθε επίπεδο λύνει ένα κομμάτι, χρησιμοποιεί τις υπηρεσίες του από κάτω και προσφέρει υπηρεσίες στο από πάνω. Οι κανόνες με τους οποίους επικοινωνεί ένα επίπεδο λέγονται πρωτόκολλο (protocol).

Είναι σαν ένα γράμμα. Εσύ γράφεις το κείμενο και δεν σε νοιάζει με ποιο φορτηγό θα ταξιδέψει. Το ταχυδρομείο διαβάζει μόνο τη διεύθυνση στον φάκελο και δεν ανοίγει το γράμμα. Ο οδηγός του φορτηγού ξέρει μόνο σε ποιο κέντρο διαλογής πηγαίνει το σακί.

Το μοντέλο TCP/IP

Το Διαδίκτυο λειτουργεί με το μοντέλο TCP/IP, που έχει τέσσερα επίπεδα:

ΕπίπεδοΤι λύνειΠρωτόκολλαΔιεύθυνση
4. Εφαρμογήςτι λένε μεταξύ τους τα προγράμματαHTTP, HTTPS, DNS, SMTP, IMAPονόματα, π.χ. www.example.org
3. Μεταφοράςαπό διεργασία σε διεργασία, αξιόπιστα ή γρήγοραTCP, UDPθύρα (port), π.χ. 443443
2. Διαδικτύουαπό υπολογιστή σε υπολογιστή, σε όλο τον κόσμοIPδιεύθυνση IP, π.χ. 192.168.1.10
1. Πρόσβασης δικτύουαπό συσκευή σε συσκευή, μέσα στο τοπικό δίκτυοEthernet, Wi-Fiδιεύθυνση MAC

Μερικά βιβλία χωρίζουν το κατώτερο επίπεδο σε δύο, ζεύξης δεδομένων και φυσικό, και μιλούν για πέντε επίπεδα. Η ουσία είναι ίδια.

Το επίπεδο διαδικτύου είναι η καρδιά του μοντέλου. Κάθε υπολογιστής έχει μια διεύθυνση IP. Στην εκδοχή IPv4 είναι 3232 bit και γράφεται ως τέσσερις αριθμοί από 00 έως 255255. Αφού 2322^{32} είναι περίπου 4,34{,}3 δισεκατομμύρια, οι διευθύνσεις IPv4 δεν φτάνουν για όλες τις συσκευές του κόσμου, και γι' αυτό υπάρχει το IPv6, με διευθύνσεις 128128 bit. Οι δρομολογητές (routers) διαβάζουν τη διεύθυνση προορισμού κάθε πακέτου και το στέλνουν ένα βήμα πιο κοντά.

Το επίπεδο μεταφοράς φέρνει τα δεδομένα στο σωστό πρόγραμμα μέσα στον υπολογιστή, με τον αριθμό της θύρας: 8080 για HTTP, 443443 για HTTPS, 5353 για DNS. Έχει δύο βασικά πρωτόκολλα:

TCPUDP
Σύνδεσηανοίγει σύνδεση πριν στείλειστέλνει κατευθείαν
Αξιοπιστίαό,τι χαθεί ξαναστέλνεταιό,τι χαθεί, χάθηκε
Σειράτα δεδομένα φτάνουν με τη σειρά που στάλθηκανμπορεί να φτάσουν ανακατεμένα
Ταχύτηταπιο αργό, λόγω των ελέγχωνπιο γρήγορο
Γιαιστοσελίδες, email, αρχείαβιντεοκλήσεις, παιχνίδια, DNS

Ενθυλάκωση

Κάθε επίπεδο παίρνει ό,τι του δίνει το από πάνω, χωρίς να το ανοίξει, και του προσθέτει μπροστά τη δική του κεφαλίδα (header) με τις πληροφορίες που χρειάζεται. Αυτό λέγεται ενθυλάκωση (encapsulation).

ΕπίπεδοΠροσθέτειΗ μονάδα λέγεται
Εφαρμογής—μήνυμα, π.χ. ένα αίτημα HTTP
Μεταφοράςκεφαλίδα TCP: θύρες, αριθμός σειράςτμήμα (segment)
Διαδικτύουκεφαλίδα IP: διευθύνσεις IP αποστολέα και παραλήπτηπακέτο (packet)
Πρόσβασης δικτύουκεφαλίδα και ουρά Ethernet: διευθύνσεις MAC, έλεγχος σφαλμάτωνπλαίσιο (frame)

Στο καλώδιο ή στον αέρα, ένα πλαίσιο μοιάζει έτσι:

[Ethernet][  IP  ][ TCP ][   δεδομένα HTTP   ][ουρά Ethernet]
 κεφαλίδα  κεφαλ.  κεφαλ.

Στον παραλήπτη γίνεται το ανάποδο, η αποενθυλάκωση: κάθε επίπεδο αφαιρεί τη δική του κεφαλίδα, κάνει ό,τι λέει, και δίνει το υπόλοιπο στο από πάνω.

Ονόματα και δρόμοι

Οι άνθρωποι θυμούνται ονόματα, οι δρομολογητές δουλεύουν με αριθμούς. Το DNS (Domain Name System) είναι ο «τηλεφωνικός κατάλογος» του Διαδικτύου: μεταφράζει ένα όνομα όπως www.example.org στη διεύθυνση IP του εξυπηρετητή. Δεν είναι ένας υπολογιστής αλλά ένα ιεραρχικό σύστημα από χιλιάδες εξυπηρετητές, καθένας υπεύθυνος για ένα κομμάτι των ονομάτων.

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

Το μοντέλο OSI

Πριν επικρατήσει το TCP/IP, ο Διεθνής Οργανισμός Τυποποίησης (ISO) πρότεινε το μοντέλο OSI, με επτά επίπεδα. Στην πράξη δεν υλοποιήθηκε ποτέ ευρέως, αλλά η ορολογία του χρησιμοποιείται παντού: όταν ένας τεχνικός λέει «πρόβλημα στο επίπεδο 2», εννοεί το επίπεδο ζεύξης του OSI.

OSIΑντιστοιχεί στο TCP/IP
7. ΕφαρμογήςΕφαρμογής
6. Παρουσίασης: μορφή και κρυπτογράφηση δεδομένωνΕφαρμογής
5. Συνόδου: άνοιγμα και κλείσιμο συνομιλίαςΕφαρμογής
4. ΜεταφοράςΜεταφοράς
3. ΔικτύουΔιαδικτύου
2. Ζεύξης δεδομένωνΠρόσβασης δικτύου
1. Φυσικό: bits ως τάσεις, φως ή ραδιοκύματαΠρόσβασης δικτύου

Λυμένα παραδείγματα

Παράδειγμα 1

Γράφεις www.example.org στον φυλλομετρητή. Ποια πρωτόκολλα χρησιμοποιούνται, και σε ποιο επίπεδο του TCP/IP, μέχρι να φτάσει το αίτημα;

Δοκίμασέ το πρώτα. Μετά δες τη λύση.

Παράδειγμα 2

Ένα πλαίσιο Ethernet μεταφέρει 14601460 bytes δεδομένων. Η κεφαλίδα TCP είναι 2020 bytes, η IP 2020 bytes, και το Ethernet προσθέτει 1818 bytes. Τι ποσοστό του πλαισίου είναι χρήσιμα δεδομένα;

Δοκίμασέ το πρώτα. Μετά δες τη λύση.

Παράδειγμα 3

Μια εφαρμογή βιντεοκλήσεων στέλνει 3030 εικόνες το δευτερόλεπτο. Γιατί προτιμά το UDP από το TCP;

Δοκίμασέ το πρώτα. Μετά δες τη λύση.

Παράδειγμα 4

Το λάπτοπ είναι συνδεδεμένο στο Wi-Fi και «βλέπει» τον δρομολογητή του σπιτιού, αλλά καμία ιστοσελίδα δεν ανοίγει με το όνομά της. Ένας έλεγχος απόκρισης (ping) προς μια γνωστή διεύθυνση IP στο Διαδίκτυο όμως πετυχαίνει. Σε ποιο επίπεδο είναι το πρόβλημα;

Δοκίμασέ το πρώτα. Μετά δες τη λύση.

Ασκήσεις

Πρώτα ερωτήσεις με επιλογές: διαλέγεις, πατάς «Έλεγξε» και μαθαίνεις αμέσως αν το βρήκες και γιατί. Στο τέλος, λίγες ασκήσεις χωρίς επιλογές — εκεί κρύβεται μόνο η απάντηση.

Πολλαπλή επιλογήΆσκηση 1 από 14
Γιατί τα δίκτυα οργανώνονται σε επίπεδα;

Τα κατάφερες;

  • Να εξηγείς γιατί τα δίκτυα οργανώνονται σε επίπεδα.
  • Να περιγράφεις τα τέσσερα επίπεδα του μοντέλου TCP/IP και ένα πρωτόκολλο για το καθένα.
  • Να αντιστοιχίζεις τα επτά επίπεδα του OSI στα επίπεδα του TCP/IP.
  • Να περιγράφεις την ενθυλάκωση και να υπολογίζεις το κόστος των κεφαλίδων.
  • Να επιλέγεις ανάμεσα σε TCP και UDP για μια εφαρμογή.

Λύσε τις ασκήσεις πιο πάνω και θα δεις εδώ πού στέκεσαι.