TRANSMISSION CONTROL PROTOCOL / INTERNET PROTOCOL: Τα χαρακτηριστικά του TCP/IP
Description: This is issue 25 of Magaz, the Hellenic LinuxMagazine
Keywords: magaz hellenic greek hellas greece hellug linux magazine

Magaz, The Greek Linux Magazine
Τεύχος #25
Περιληπτικά Περιεχόμενα Αναλυτικά Περιεχόμενα Mirrors Links Πληροφορίες Συντάκτες Αναζήτηση Επικοινωνία
Επόμενο Προηγούμενο Περιεχόμενα ### 2. Τα χαρακτηριστικά του TCP/IP Το TCP/IP έχει ορισμένα ενδιαφέροντα χαρακτηριστικά τα οποία χρησιμοποιεί για να παρακάμπτει προβλήματα που προκύπτουν στα δίκτυα. Ας εξετάσουμε όμως διεξοδικά πια είναι αυτά τα προβλήματα και να δούμε πως το TCP/IP αναλαμβάνει να τα επιλύσει. ### 2.1 Logical Addressing. Κάθε κάρτα δικτύου από κατασκευής δια8έτει μία μοναδική και μόνιμη φυσική διεύθυνση (physical address). Σε μικρά δίκτυα η παράδοση των δεδομένων γίνεται με βάση αυτή την φυσική διεύθυνση. Π.χ. σε τοπικά δίκτυα τύπου ethernet ένας υπολογιστής μεταδίδει τα δεδομένα κατευθείαν στο μέσο μεταφοράς (καλώδιο). Κάθε υπολογιστής που βρίσκεται στο συγκεκριμένο δίκτυο παρακολουθεί όλες τις μεταδώσεις και επιλέγει να κρατήσει τα δεδομένα που έχουν διεύθυνση την φυσική διεύθυνση της κάρτας δικτύου που βρίσκεται εγκατεστημένη σ' αυτόν. Σε μεγαλύτερα δίκτυα φανταστείτε τι θα γινόταν αν κάθε υπολογιστής παρακολουθούσε όλα τα πακέττα δεδομένων που αποστέλλονται μέσω του μέσου μεταφοράς. Στα μεγάλα δίκτυα για αποφύγουμε την διαρκή παραλαβή άχρηστων δεδομένων τα χωρίζουμε σε άλλα μικρότερα υποδίκτυα (subnetworks) τα οποία κάτω απο μία ιεραρχική σχεδίαση και δομή μπορούν να παρακολουθούν τις αποστολές και να επιλέγουν τα πακέττα δεδομένων που προορίζονται για τις συσκευές που τα αποτελούν. Για να επιτύχουμε την παραπάνω λειτουργία τα υποδίκτυα θα πρέπει να έχουν διευθύνσεις που να τα χαρακτηρίζουν για να γίνονται αναγνωρίσιμα. Η διευθυνσεις αυτές περέχονται από το λογισμικό και στην προκυμένη περίπτωση από το TCP/IP και ονομάζονται λογικές διευθύνσεις (logical address).Στο TCP/IP οι συγκεκριμένες διευθύνσεις λέγονται IP adresses.Η διεύθυνση IP τωρα με την σειρά της μπορεί να περιέχει: Την ταυτότητα ενός δικτύου. Την ταυτότητα ενός υποδικτύου. Την ταυτότητα ενός υπολογιστή μέσα σε ένα υποδίκτυο. Οι ταυτότητες που αναφέρουμε παραπάνω, ουσιαστικά αντιστοιχούν σε συνδυασμούς αριθμών που χαρακτηρίζουν και την κλάση του δικτύου.Ανάλογα με το είδος δικτύου που έχουμε, έχουμε και την αντίστοιχη κλάση. Εν περιλήψει οι βασικότερες: Κλάση A: Εδώ οι ταυτότητες είναι 8-bit για τα δίκτυα και 24-bit για τους κεντρικούς υπολογιστές σ'αυτά. Τέτοιοι αριθμοί αποδίδονται σε οργανισμούς, εταιρείες ή χώρες δηλαδή σε περιπτώσεις που απαιτούνται μεγάλος αριθμός διευθύνσεων IP αφού θεωρητικά τα δίκτυα κλάσης A μπορούν να υποστηρίξουν περίπου 16.7 εκατομμύρια υπολογιστές. Κλάση Β: Εδώ η ταυτότητες τών δικτύων και των κεντρικών υπολογιστών είναι 16-bit. Οι διευθύνσεις αποδίδονται σε δίκτυα μεσαίου μεγέθους και είναι ικανές να υποστηρίξουν την αναγνώριση μέχρι 65.5 χιλιάδων υπολογιστών περίπου. Κλάση C: Στην τρίτη κλάση οι ταυτότητες του δικτύου είναι 24-bit και των υπολογιστών 8-bit. Mε αυτόν τον τρόπο αποδιδουμε διευθύνσεις σε μικρά δίκτυα με έως 254 υπολογιστές. Κλάση D: Οι διευθύνσεις εδώ δεν αποδίδονται σε υπολογιστές αλλά χρησιμοποιούνται για multicasting δηλαδή σε περιπτώσεις που θέλουμε να ορίσουμε ομάδες υπολογιστών σε ένα δίκτυο που θα πρέπει να τους αποσταλλεί ένα συγκεκριμένο πακέττο δεδομένων ταυτόχρονα. ### 2.2 Routing Πιο πάνω είπαμε ότι μπορούμε να χωρίσουμε ένα δίκτυο σε άλλα μικρότερα και να αποδόσουμε λογικές διευθύνσεις σε αυτά.Πως όμως αποκόπτουμε τα άχρηστα πακέττα και πως όμως το μικρότερο αυτό δίκτυο 8α αντιληφθεί ότι κάποιο πακέττο δεδομένων απευθύνεται σε αυτό;Η τεχνική λέγεται routing και οι συσκευές που αναλαμβάνουν την αναγνώριση των πακέττων routers. Με απλά λόγια ένας router διαχωρίζει το subnet από το υπόλοιπο δίκτυο και δεν επιτρέπει να περάσουν πληροφορίες στο σύνολο οι οποίες είναι άχρηστες. Πληροφορίες οι οποίες αφορούν τους υπολογιστές του υποδικτύου και κατευθύνονται από υπολογιστή μέσα σε αυτό σταματούν στον router και δεν βγαίνουν προς τα έξω. Οι πληροφορίες πάλι που απευθύνονται σε υπολογιστές εκτός του subnet ο router τις προω8εί εκτός. Γενικά ο τρόπος πού λειτουργεί ένας router είναι ο εξής: Παραλαμβάνει τα δεδομένα από ένα από τα προσαρτιμένα σε αυτό δίκτυα Ελέγχει τον προορισμό του πακέττου. Αν το πακέττο έχει προορισμό συσκευή μέσα στο δίκτυο από το οποίο απεστάλλει τότε το απορρίπτει αφού αυτό έχει φθάσει ήδη στον προορισμό του. Αν το πακέττο κατευθύνεται σε συσκευή έξω από το δίκτυο απ' όπου προέρχεται τότε ο router συμβουλεύεται εναν πίνακα που ονομάζεται routing table έτσι ώστε να δει που θα προωθήσει το πακέττο Αφού βρεθεί που θα προωθηθεί το πακέττο ο router αναλαμβάνει την αποστολή του μέσω του λεγόμενου NETWORK ACCESS LAYER software Το TCP/IP περιέχει πρωτόκολλα τα οποία καθορίζουν πως ένας router θα βρει διαδρομή για να κατευθύνει τα πακέττα στον προορισμό τους. Αυτά είναι τα: a)Routing Information Protocol (RIP) Το οποίο είναι το παλαιότερο routing protocol. Με απλά λόγια οι routers στέλνουν πληροφορίες γι' αυτούς και επίσης αποστέλλουν το λεγόμενο hop count δηλαδή πληροφορία σχετικά με το πόσο απομακρισμένοι είναι. Με αυτόν τον τρόπο οι routers μεταξύ τους γνωρίζουν ποιοι απ' αυτούς είναι διαθέσιμοι και να εκτιμήσουν την συντομότερη διαδρομή για να αποστείλουν το πακέττο στον προορισμό τους.b)Open Shortest Path First (OSPF) είναι νεότερο πρωτόκολλο το οποίο σταδιακά πέρνει την θέση του RIP. Η μεγάλη διαφορά του από το RIP είναι ότι εδώ οι Proxies δεν χρειάζεται να κάνουν υπολογισμό του hop απλά αποστέλλουν πληροφορίεσ σχετικά με την κατάσταση τους στους proxies που βρίσκονται απ' ευ8είας συνδεδεμένοι μαζί τους. Με αυτόν τον τρόπο μειώνεται το συνολικό bandwidth που 8α πρέπει να δεσμευ8εί για την αποστολή πληροφοριών. Ως αποτέλεσμα τι OSPF μπορεί να υποστηρίξει δίκτυα μεγάλα σε όγκο και ανάγκες. ### 2.3 Name Resolution Φανταστείτε να σας έλεγαν 111.121.131.156 και την φίλη σας 111.121.131.158, μπέρδεμά έ; Ναι έχετε δίκιο. Καλοί οι αριθμούλιδες αλλά εμείς έχουμε μάθει να αναγνωρίζουμε τους άλλους από το όνομα τους και όχι από τον αριθμό της ταυτότητας τους. Για να μας κάνει την ζωή πιο εύκολη λοιπόν το TCP/IP χρησιμοποιει εν παραλλήλω με τα IP numbers και ένα πιο ανθρωπινο τρόπο για να αναγνωρίζεται ο αποστολέας και ο παραλήπτης ενός πακέττου τα ονόματα αυτά λέγονται domain names και η υπηρεσία Domain Name Service.Με αυτόν τον τρόπο δεν χρειάζεται να γνωρίζουμε το IP number κάποιου υπολογιστή σε ένα δίκτυο αλλά μόνο το όνομα του.Έτσι για να αποστείλουμε π.χ. ένα email στην αγαπημένη μας δεν χρειάζεται να ξέρουμε το IP number του mail server που της έχει παραχωρίσει χώρο αλλά μόνο το domain name που συνή8ως είναι όνομα της μορφής "companyname.com" του και φυσικά το όνομα που χρησιμοποιεί αυτή σαν αναγνωριστικό. Πως γίνεται τώρα και τα domain names μεταφράζονται σε IP numbers; Με απλά λόγια υπάρχουν κάποιοι εξυπηρετητές οι οποίοι αναλλαμβάνουν την αποθήκευση των domain names και την αποκωδικοποίηση τους σε IP numbers. Αν θέλετε τώρα να δείτε πως περίπου γίνεται το name servicing ρίξτε μια ματιά στο /etc/hosts του κουτιού σας για να δείτε με ποια σύνταξη ορίζονται domain names σε IP names. ### 2.4 Error Checking / Flow Control Κατά την μεταφορά αρχείων είναι λογικό ότι δεν πάνε πάντα τα πράγματα όπως τα θέλουμε. Λάθη κατά την μεταφορά ή πακέττα δεδομένων που για κάποιο λόγο δεν παρελήφθησαν ακέραια είναι συχνό φαινόμενο. Γι αυτόν τον λόγο οι σχεδιαστές του TCP/IP φρόντισαν να του ενσωματώσουν διαδικασίες οι οποίες ελέγχουν την χωρίς λάθη παραλαβή ενός πακέττου και την αποστολη του στον σωστό παραλήπτη. Οι διαδικασίες αυτές ενσώματωνονται στο ονομαζόμενο Transport Layer του TCP/IP. ### 2.5 Application Support Σε όλους είνα γνωστό ότι για να αποκτήσουμε πρόσβαση στο δίκτυο χρησιμοποιούμε εφαρμογές οι οποίες ουσιαστικά με τρόπο «αδιαφανή» μας παρέχουν την πρόσβαση αλλά και τις ζητούμενες υπηρεσίες. Δηλαδή δεν χρειάζεται π.χ. να γνωρίζουμε τι είναι το SMTP για να στείλουμε ένα email. Το TCP/IP αναλαμβάνει την παροχή ενός interface για τις εφαρμογές μας έτσι ώστε αυτές να μπορούν να έχουν πρόσβαση στο λογισμικό του δικτύου και να διευκολύνει την προσπέλαση στο δίκτυο. Για να γίνει αυτό, η σουίτα χρησιμοποιεί ένα σύστημα από "λογικά κανάλια" τα οποία ονομάζονται ports. Κάθε port διαθέτει ένα port number το οποίο χρησιμοποιείται για την αναγνώριση της port και ουσιαστικά και για την αναγνώριση της εργασίας που καλείτε να εκτελέσει. Με απλά λόγια (και λίγη φαντασία) τα ports είναι αυλοί επικοινωνίας που μέσα τους κυκλοφορούν τα δεδομένα και οι αιτήσεις από την αφαρμογή προς το δίκτυο. Το ίδιο το TCP/IP περιέχει μερικές εφαρμογές οι οποίες χρησιμοποιούνται για να διευκολύνουν τις διάφορες διαδικασίες. Αυτές οι εφαρμογές είναι οι γνωστές στους περισσότερους ftp lpr ping telnet και traceroute των οποίων την χρησιμότητα θα εξηγήσουμε παρακάτω. Επόμενο Προηγούμενο Περιεχόμενα