Πριν από 40 χρόνια, τον Σεπτέμβριο του 1981, η DARPA δημοσίευσε τις οριστικοποιημένες προδιαγραφές της σειράς πρωτοκόλλων TCP/IP, η οποία καθορίζει τους βασικούς κανόνες για τον τρόπο λειτουργίας του διαδικτύου.
Ενώ το TCP/IP δεν υιοθετήθηκε ευρέως μέχρι το 1983, αυτό το ορόσημο είναι σημαντικό γιατί πάνω στο TCP/IP βασίστηκε το διαδίκτυο.
Table of Contents
Τι είναι το TCP/IP;
Το TCP/IP είναι μια σουίτα πρωτοκόλλων που αποτελείται από δύο κύρια πρωτόκολλα που σχεδιάστηκαν από τους Vint Cerf και Bob Kahn, τα αντίστοιχα Transmission Control Protocol (TCP) και Internet Protocol (IP).
Το Πρωτόκολλο Διαδικτύου (IP) ορίζει τη διεύθυνση και τη δρομολόγηση πακέτων, δηλαδή το πώς τα πακέτα δεδομένων ρέουν μέσω του δικτύου. Το Πρωτόκολλο Ελέγχου Μετάδοσης (TCP) χειρίζεται τη δημιουργία συνδέσεων και τη διασφάλιση ότι τα πακέτα δεδομένων φτάνουν στον κατάλληλο προορισμό. Τα δύο πρωτόκολλα συνεργάζονται για να δημιουργήσουν τα θεμέλια του σύγχρονου διαδικτύου.
Γιατί δημιουργήθηκε το TCP/IP;
Πριν από το διαδίκτυο, το Υπουργείο Άμυνας των ΗΠΑ (μέσω ARPA), δημιούργησε ένα δίκτυο υπολογιστών με το όνομα ARPANET, που συνέδεε τους κυβερνητικούς και πανεπιστημιακούς υπολογιστές των ΗΠΑ σε όλη τη χώρα. Το ARPANET ήρθε στο διαδίκτυο το 1969. Πριν από το TCP, το ARPANET χρησιμοποίησε ένα πρωτόκολλο που ονομαζόταν NCP (Πρόγραμμα Ελέγχου Δικτύου) για τη σύνδεση μεταξύ των μηχανών στο δίκτυο.
Σύμφωνα με το σχέδιο μετάβασης NCP/TCP ( RFC801 ) που δημοσιεύτηκε τον Νοέμβριο του 1981, η ανάγκη για TCP/IP προέκυψε από πολλά μέτωπα. Όλο και περισσότερα, πειραματικά δίκτυα υπολογιστών είχαν αρχίσει να χρησιμοποιούν ραδιοφωνικούς και δορυφορικούς συνδέσμους και όχι φυσικά καλώδια.
Επίσης, οι οργανισμοί είχαν δημιουργήσει όλο και περισσότερα τοπικά δίκτυα, ομάδες δηλαδή μηχανών που επικοινωνούσαν μαζί στην ίδια εγκατάσταση και όχι σε μεγάλες αποστάσεις. Οι αρχιτέκτονες του ARPANET συνειδητοποίησαν ότι τα υποκείμενα πρωτόκολλα που χρησιμοποιούνταν τότε ήταν «ανεπαρκή» για την κάλυψη όλων αυτών των διαφορετικών και νέων τύπων δικτύων.
Ταυτόχρονα, κατά τη δεκαετία του 1970, εταιρείες όπως η IBM, η DEC, η AT&T και η Xerox είχαν δημιουργήσει τα δικά τους ιδιόκτητα, ασύμβατα δίκτυα υπολογιστών που κατακερμάτισαν την ανταλλαγή πληροφοριών. Έτσι, η σουίτα TCP/IP ήταν αξιοσημείωτη εργασία, επειδή αντιπροσώπευε μια μη ιδιόκτητη, χωρίς δικαιώματα, ανοικτή αρχιτεκτονική λύση που επέτρεπε στους υπολογιστές κάθε είδους να επικοινωνούν μέσω οποιουδήποτε μέσου, εφόσον το λογισμικό TCP/IP θα εφαρμοζόταν στο σύστημα.
Η ανάπτυξη του TCP και του IP ξεκίνησε το 1973 από τους Vint Cerf και Bob Kahn. Μετά την ανάπτυξη, κατά τη δεκαετία του 1970, η DARPA (Υπηρεσία Έρευνας Προηγμένων Αμυντικών Προγραµµάτων των ΗΠΑ) δημοσίευσε προδιαγραφές για το TCP και το IP, στα έγγραφα RFC 791 και 793, με ημερομηνία Σεπτεμβρίου 1981. Τα έγγραφα αυτά αντιπροσώπευαν την πρώτη δημόσια εισαγωγή του οριστικού πλαισίου TCP/IP.
Πώς λειτουργεί το TCP/IP;
Το TCP και το IP είναι δύο ξεχωριστές τεχνολογίες που συνεργάζονται, χέρι-χέρι, για να επιτύχουν αξιόπιστες συνδέσεις μέσω ενός ετερογενούς (πολλούς διαφορετικούς τύπους υπολογιστών και συνδέσμων) δικτύου υπολογιστών.
Όπως αναφέρθηκε προηγουμένως, το IP χειρίζεται μηχανές διευθύνσεων στο δίκτυο και πώς τα μπλοκ δεδομένων (που ονομάζονται πακέτα) φτάνουν στον κατάλληλο προορισμό. Το TCP διασφαλίζει ότι τα πακέτα φθάνουν στον προορισμό τους χωρίς σφάλμα, καλώντας εκ των προτέρων για να βεβαιωθείτε ότι υπάρχει ένας κεντρικός υπολογιστής για να λάβει τις πληροφορίες και, εάν οι πληροφορίες χαθούν καθ ‘οδόν ή καταστραφούν, επαναμεταδίδουν τα δεδομένα μέχρι να φτάσουν εκεί με ασφάλεια.
Οι αρχιτέκτονες του TCP/IP χώρισαν σκόπιμα την εφαρμογή του TCP και του IP για να κάνουν το δίκτυο πιο ευέλικτο και αρθρωτό. Στην πραγματικότητα, το TCP μπορεί να αντικατασταθεί με ένα διαφορετικό πρωτόκολλο που ονομάζεται UDP, το οποίο είναι ταχύτερο, αλλά επιτρέπει την απώλεια δεδομένων σε περιπτώσεις όπου η ακρίβεια μετάδοσης 100% δεν είναι απαραίτητη, όπως μια τηλεφωνική κλήση ή μια μετάδοση βίντεο.
Οι μηχανικοί δικτύου ονομάζουν αυτό το αρθρωτό σχέδιο ως ‘protocol stack‘ (στοίβα πρωτοκόλλου) και επιτρέπει ο χειρισμός ενός ή περισσοτέρων πρωτοκόλλων που βρίσκονται στα χαμηλότερα στρώματα της στοίβας, να γίνεται με τον πλέον κατάλληλο τρόπο για την αρχιτεκτονική της τοπικής μηχανής. Στη συνέχεια, τα ανώτερα στρώματα μπορούν να λειτουργήσουν πάνω από αυτά για να επικοινωνήσουν μεταξύ τους. Στην περίπτωση του Διαδικτύου, αυτή η στοίβα αποτελείται συνήθως από τέσσερα επίπεδα:
- Επίπεδο Link -Πρωτόκολλα χαμηλού επιπέδου που λειτουργούν με ένα φυσικό μέσο (όπως Ethernet)
- Επίπεδο Internet – Δρομολογεί πακέτα (IP, για παράδειγμα)
- Επίπεδο Μεταφοράς (transport) – Δημιουργεί και διακόπτει συνδέσεις (TCP, για παράδειγμα)
- Επίπεδο Εφαρμογής (application) – Πώς χρησιμοποιούν το δίκτυο οι άνθρωποι (ο ιστό, το FTP και άλλα)
Τα πρωτόκολλα που χειρίζονται τον ιστό (όπως το HyperText Transfer Protocol, ή HTTP) βρίσκονται στο Επίπεδο Εφαρμογής και λειτουργούν πάνω από το TCP και το IP.
Χάρη σε αυτό το μοντέλο, το HTTP δεν χρειάζεται να γνωρίζει πώς να δημιουργεί ή να σπάει συνδέσεις σε χαμηλό επίπεδο. Όλα αυτά τα χειρίζονται τα πρωτόκολλα που βρίσκονται χαμηλότερα στη στοίβα. Αυτή η αρθρωτή στοίβα είναι ένα πολύ ευέλικτο σύστημα και είναι ο λόγος για τον οποίο τα TCP/IP ήταν τόσο επιτυχημένα και γιατί εξακολουθούν να λειτουργούν ως η ραχοκοκαλιά του διαδικτύου σήμερα.
Πότε χρησιμοποιήθηκε το TCP/IP;
Ενώ ήταν σε ανάπτυξη, το TCP/IP άρχισε να χρησιμοποιείται πειραματικά ήδη από το 1973. Καθώς οι δημιουργοί του συνέχισαν να τελειοποιούν τα πρωτόκολλα, το Internet Protocol (IP) πέρασε από την έκδοση 1 στην έκδοση 4 έως το 1981, η οποία εξακολουθεί να είναι η έκδοση του IP που εξακολουθεί να χρησιμοποιείται ευρέως σήμερα.
Παρόλο που η DARPA παρουσίασε την πρώτη οριστικοποιημένη έκδοση των πρωτοκόλλων TCP και IP (έκδοση 4) τον Σεπτέμβριο του 1981, ορισμένοι υπολογιστές ARPANET συνέχισαν να χρησιμοποιούν τα προηγούμενα πρωτόκολλα ARPANET (όπως το NCP) για κάποιο χρονικό διάστημα. Όπως συμβαίνει με κάθε παγιωμένη τεχνολογία, η αλλαγή μπορεί να πάρει χρόνο και οι αρχιτέκτονες του δικτύου ακολούθησαν μια μεταβατική περίοδο μεταξύ NCP και TCP, που τελείωσε την 1η Ιανουαρίου 1983.
Η 1η Ιανουαρίου 1983 ορίζεται ως ‘ ημέρα σημαίας ‘ (ημέρα που συμβαίνει μια δραματική αλλαγή στον υπολογιστή), και σηματοδότησε την αρχή της ευρείας χρήσης του TCP/IP και τη γέννηση του σύγχρονου διαδικτύου. Ακόμα και τότε, άλλα πρωτόκολλα δικτύου παρέμειναν ευρέως σε χρήση και μόνο στα μέσα της δεκαετίας του 1990 το TCP/IP έγινε ο σαφής ‘νικητής’ σε αυτό που ορισμένοι αποκαλούν Protocol Wars.
Το μέλλον του TCP/IP
Επί του παρόντος, το μεγαλύτερο μέρος του Διαδικτύου λειτουργεί με την έκδοση 4 του Πρωτοκόλλου Διαδικτύου, που ονομάζεται ‘IPv4’. Αλλά υπάρχει μια νεότερη έκδοση που ονομάζεται “IPv6”, που εισήχθη το 1998, η οποία διεισδύει πάρα πολύ αργά. Μεταξύ των σημαντικότερων χαρακτηριστικών του IPv6 είναι η υποστήριξη για διευθύνσεις 128-bit, επιτρέποντας 340 τρισεκατομμύρια τρισεκατομμύρια τρισεκατομμύρια συσκευές με μοναδικές διευθύνσεις IP στο δίκτυο.
Αντίθετα, το IPv4 υποστηρίζει διευθύνσεις 32-bit, επιτρέποντας πάνω από 4,2 δισεκατομμύρια διευθύνσεις IP. Ενώ 4,2 δισεκατομμύρια ακούγονται πολλά, έχουμε από το 2021 ήδη φτάσει στο όριο των διευθύνσεων IPv4 που έχουν εκχωρηθεί.
Ευτυχώς, το IPv4 και το IPv6 είναι διαλειτουργικά (ικανά να ανταλλάσσουν και να χρησιμοποιούν πληροφορίες), οπότε οι προμηθευτές υπολογιστών, οι πάροχοι του Διαδικτύου και οι αρμόδιες αρχές, διαθέτουν κάποιο χώρο αναπνοής, ενώ κάνουν αργά – αργά τη μετάβαση στο IPv6. Ακόμη και με όλες τις βελτιώσεις του, το IPv6 βασίζει την αρχιτεκτονική του στην ίδια έρευνα που ξεκίνησε από τους Cerf και Evans το 1973 και ολοκληρώθηκε το 1981.
Χρόνια πολλά, TCP/IP!