ίκτυα Υπολογιστών ΙΙ Σηµείωση Το ΕΑΠ είναι υπεύθυνο για την επιµέλεια έκδοσης και την ανάπτυξη των κειµένων σύµφωνα µε τη Μεθοδολογία της εξ Αποστάσεως Εκπαίδευσης. Για την επιστηµονική αρτιότητα και πληρότητα των συγγραµ- µάτων την αποκλειστική ευθύνη φέρουν οι συγγραφείς, κριτικοί αναγνώστες και ακαδηµαϊκοί υπεύθυνοι που ανέλαβαν το έργο αυτό.
ΕΛΛΗΝΙΚΟ ΑΝΟΙΚΤΟ ΠΑΝΕΠΙΣΤΗΜΙΟ Σχολή Θετικών Επιστηµών και Τεχνολογίας Πρόγραµµα Σπουδών ΠΛHPOΦOPIKH Θεµατική Ενότητα ΣYΓXPONA IKTYA KAI YΠHPEΣIEΣ Τόµος A' ίκτυα Υπολογιστών ΙΙ ΓΙΩΡΓΟΣ ΦΟΥΣΚΑΣ Ειδικός Λειτουργικός Επιστήµονας ΙΤΕ ΕΙΧΗΜΥΘ ΠATPA 2005
ΕΛΛΗΝΙΚΟ ΑΝΟΙΚΤΟ ΠΑΝΕΠΙΣΤΗΜΙΟ Σχολή Θετικών Επιστηµών και Τεχνολογίας Πρόγραµµα Σπουδών ΠΛHPOΦOPIKH Θεµατική Ενότητα ΣYΓXPONA IKTYA KAI YΠHPEΣIEΣ Τόµος A' IKTYA YΠOΛOΓIΣTΩN II Συγγραφή ΓΙΩΡΓΟΣ ΦΟΥΣΚΑΣ Ειδικός Λειτουργικός Επιστήµονας ΙΤΕ ΕΙΧΗΜΥΘ Kριτική Aνάγνωση ΚΩΝ/ΝΟΣ ΠΑΠΑΝ ΡΕΟΥ (ΚΕΦ. 1, 2, 3) ρ. Tηλεπληροφορικής Πανεπιστηµίου Mονάχου ΜΙΧΑΛΗΣ ΠΑΡΑΣΚΕΥΑΣ (ΚΕΦ. 4, 5) ρ. Ηλεκτρολόγος Μηχανικός και Τεχνολογίας Υπολογιστών ΦΩΤΗΣ ΛΙΟΤΟΠΟΥΛΟΣ (ΚΕΦ. 4, 5) Μέλος ΣΕΠ του ΕΑΠ Ακαδηµαϊκός Υπεύθυνος για την επιστηµονική επιµέλεια του τόµου ΑΘΑΝΑΣΙΟΣ ΣΚΟ ΡΑΣ Kαθηγητής Πληροφορικής EAΠ Επιµέλεια στη µέθοδο της εκπαίδευσης από απόσταση ΙΩΑΝΝΗΣ ΚΟΥΤΣΟΝΙΚΟΣ Γλωσσική Επιµέλεια ΡΩΞΑΝΗ ΚΑΤΣΗ Τεχνική Επιµέλεια ΓIANNHΣ ΠIKPAMENOΣ Καλλιτεχνική Επιµέλεια Σελιδοποίηση ΓIANNHΣ ΠIKPAMENOΣ Συντονισµός ανάπτυξης εκπαιδευτικού υλικού και γενική επιµέλεια των εκδόσεων ΟΜΑ Α ΕΚΤΕΛΕΣΗΣ ΕΡΓΟΥ ΕΑΠ / 1997 2005 ISBN: 960 538 577 5 Kωδικός Έκδοσης: ΠΛH 36/1 Copyright 2005 για την Ελλάδα και όλο τον κόσµο ΕΛΛΗΝΙΚΟ ΑΝΟΙΚΤΟ ΠΑΝΕΠΙΣΤΗΜΙΟ Οδός Σαχτούρη 16 & Aγίου Aνδρέου, 26222 Πάτρα Τηλ.: (2610) 367336, 367355, Φαξ: (2610) 361420 Σύµφωνα µε το Ν. 2121/1993, απαγορεύεται η συνολική ή αποσπασµατική αναδηµοσίευση του βιβλίου αυτού ή η αναπαραγωγή του µε οποιοδήποτε µέσο χωρίς την άδεια του εκδότη.
ÂÚÈÂ fiìâó Πρόλογος... 11 K º π 1 µ ÛÈÎ Ú ÏÂÈÙÔ ÚÁ ÙˆÓ È ÈÎÙ ˆÓ Σκοπός, Προσδοκώµενα αποτελέσµατα, Έννοιες κλειδιά, Eισαγωγικές παρατηρήσεις... 13 1.1 Το Ethernet Προσδοκώµενα αποτελέσµατα... 16 1.1.1 Μορφές υλοποίησης ενός δικτύου Ethernet... 16 1.1.2 Η µέθοδος προσπέλασης του µέσου... 18 1.1.3 Πώς λειτουργεί ένα δίκτυο τύπου Ethernet... 19 1.2 ιασύνδεση δικτύων µε µεταγωγείς Προσδοκώµενα αποτελέσµατα... 22 1.2.1 ιασύνδεση τµηµάτων Ethernet µε µεταγωγείς... 23 1.2.2 Πώς µεταβιβάζεται η πληροφορία... 24 1.2.3 Πώς ενηµερώνεται ο πίνακας ανεύρεσης... 25 1.3 ιασύνδεση δικτύων µε δροµολογητές Προσδοκώµενα αποτελέσµατα... 27 1.3.1 Η προκαθορισµένη πύλη ενός δικτύου... 27 1.3.2 Πώς µεταβιβάζεται η πληροφορία... 29 1.3.3 ιασυνδέοντας αποµακρυσµένα δίκτυα µε δροµολογητές... 30 Σύνοψη... 33 Bιβλιογραφία... 34
6 IKTYA Y O O I TøN II K º π 2 appleúˆùfiîôïï ÙÔ È ÈÎÙ Ô Σκοπός, Προσδοκώµενα αποτελέσµατα, Έννοιες κλειδιά, Eισαγωγικές παρατηρήσεις... 35 2.1 Το πρωτόκολλο IP Προσδοκώµενα αποτελέσµατα... 37 2.1.1 Παράδοση αυτοδύναµων πακέτων... 38 2.1.2 Η µορφή του πακέτου IP... 39 2.1.3 Κατάτµηση και συναρµολόγηση πακέτων IΡ... 41 2.2 Η διευθυνσιοδότηση στα δίκτυα IP Προσδοκώµενα αποτελέσµατα... 46 2.2.1 Η µορφή της διεύθυνσης IP... 48 2.2.2 Οι κατηγορίες των διευθύνσεων IP... 49 2.2.3 Υποδίκτυα IP... 51 2.3 Άλλα πρωτόκολλα του ιαδικτύου Προσδοκώµενα αποτελέσµατα... 58 2.3.1 Το πρωτόκολλο ARP... 59 2.3.2 Τα πρωτόκολλα RARP, BOOTP και DHCP... 63 2.3.3 Το πρωτόκολλο ICMP... 67 2.3.4 ιάφορα πρωτόκολλα επιπέδου εφαρµογής... 69 2.4 Το πρωτόκολλο IP επόµενης γενιάς (IPv6) Προσδοκώµενα αποτελέσµατα... 72 2.4.1 Οι βελτιώσεις του IPv6... 73 2.4.2 Η µορφή του πακέτου IPv6... 74 2.5 Ασφάλεια στο Πρωτόκολλο ιαδικτύου (IPsec) Προσδοκώµενα αποτελέσµατα... 76 Σύνοψη... 82 Bιβλιογραφία... 83
EPEXOMENA 7 K º π 3 ÂÊ ÚˆÛË Î È ÚÔÌÔÏfiÁËÛË Σκοπός, Προσδοκώµενα αποτελέσµατα, Έννοιες κλειδιά, Eισαγωγικές παρατηρήσεις... 85 3.1 Γεφύρωση Προσδοκώµενα αποτελέσµατα... 87 3.1.1 Το πρόβληµα εµφάνισης βρόχων στη διασύνδεση δικτύων... 88 3.1.2 Ο αλγόριθµος του δένδρου επικάλυψης... 89 3.2 Οι γενικές αρχές της δροµολόγησης Προσδοκώµενα αποτελέσµατα... 96 3.2.1 Το µοντέλο θεώρησης ενός δικτύου... 96 3.2.2 Οι βασικοί σχεδιαστικοί στόχοι... 100 3.2.3 Οι τύποι των αλγόριθµων δροµολόγησης... 100 3.3 ύο αλγόριθµοι δροµολόγησης Προσδοκώµενα αποτελέσµατα... 107 3.3.1 Ο αλγόριθµος των Bellman Ford... 107 3.3.2 Ο αλγόριθµος του Dijkstra... 109 Σύνοψη... 113 Bιβλιογραφία... 114 K º π 4 appleúˆùfiîôïï ÚÔÌÔÏfiÁËÛË ÙÔ È ÈÎÙ Ô Σκοπός, Προσδοκώµενα αποτελέσµατα, Έννοιες κλειδιά, Eισαγωγικές παρατηρήσεις... 115 4.1 Το πρωτόκολλο RIP Προσδοκώµενα αποτελέσµατα... 118 4.1.1 Τα βασικά χαρακτηριστικά του πρωτοκόλλου... 119 4.1.2 Η µορφή των πακέτων RIP... 120 4.2 Το πρωτόκολλο OSPF
8 IKTYA Y O O I TøN II Προσδοκώµενα αποτελέσµατα... 125 4.2.1 Τα βασικά χαρακτηριστικά του πρωτοκόλλου... 126 4.2.2 Η µορφή των πακέτων OSPF... 128 4.3 ιατοµεακή δροµολόγηση χωρίς την κατηγοριοποίηση των διευθύνσεων IP Προσδοκώµενα αποτελέσµατα... 133 4.3.1 Αναφορά δικτύων χωρίς την κατηγοριοποίηση διευθύνσεων IP (CIDR)... 135 4.3.2 Συσσωµάτωση δικτύων... 136 4.4 Το πρωτόκολλο BGP Προσδοκώµενα αποτελέσµατα... 138 4.4.1 ιευθυνσιοδότηση των αυτόνοµων συστηµάτων... 139 4.4.2 Τα βασικά χαρακτηριστικά του πρωτοκόλλου... 140 4.4.3 Οι ιδιότητες των διαδροµών BGP... 143 4.4.4 Η επιλογή διαδροµής στο BGP... 147 Σύνοψη... 150 Bιβλιογραφία... 152 K º π 5 appleúˆùfiîôïï ÌÂÙ ÊÔÚ ÙÔ È ÈÎÙ Ô Σκοπός, Προσδοκώµενα αποτελέσµατα, Έννοιες κλειδιά, Eισαγωγικές παρατηρήσεις... 153 5.1 Το πρωτόκολλο UDP Προσδοκώµενα αποτελέσµατα... 156 5.1.1 Οι θύρες πρωτοκόλλου µεταφοράς... 156 5.1.2 Η µορφή των µηνυµάτων UDP... 158 5.2 Το πρωτόκολλο TCP Προσδοκώµενα αποτελέσµατα... 161 5.2.1 Τα βασικά χαρακτηριστικά του TCP... 161
EPEXOMENA 9 5.2.2 Η µορφή των µηνυµάτων TCP... 164 5.2.3 Η εγκαθίδρυση και ο τερµατισµός µίας σύνδεσης TCP... 167 5.2.4 Ο µηχανισµός ολισθαίνοντος παραθύρου στο TCP... 172 5.2.5 Ο έλεγχος συµφόρησης δικτύου στο TCP... 175 Σύνοψη... 187 Bιβλιογραφία... 189 Aπαντήσεις Aσκήσεων Aυτοαξιολόγησης... 191 Eνδεικτικές Aπαντήσεις ραστηριοτήτων... 223
Στον Κωνσταντούλα ÚfiÏÔÁÔ Το βιβλίο αυτό αποτελεί µέρος του εκπαιδευτικού υλικού (1ος Τόµος) της Θεµατικής Ενότητας «Σύγχρονα ίκτυα και Υπηρεσίες» του Προγράµµατος Σπουδών «Πληροφορική» του ΕΑΠ και αποτελεί τη συνέχεια του τόµου «ίκτυα Υπολογιστών Ι» της Θ.Ε. «Βασικά ζητήµατα δικτύων Η/Υ». Έχει γραφτεί µε τρόπο κατάλληλο για εξ αποστάσεως εκπαίδευση, ορίζοντας µε σαφήνεια τους στόχους και τα προσδοκώµενα αποτελέσµατα των Κεφαλαίων και των επιµέρους Ενοτήτων και εµπλουτίζοντας το κείµενο µε Παραδείγµατα, Ασκήσεις Αυτοαξιολόγησης και ραστηριότητες. ÚÁ ÓˆÛË ÙÔ µè Ï Ô Στο 1ο Κεφάλαιο περιγράφουµε συνοπτικά, και χωρίς να επιβαρύνουµε το κείµενο µε τεχνικές και σχεδιαστικές λεπτοµέρειες, τον τρόπο λειτουργίας και τις τεχνικές διασύνδεσης των δικτύων τεχνολογίας Ethernet. Σκοπός µας είναι η εισαγωγική γνωριµία του αναγνώστη µε τις λειτουργικές αρχές των διαδικτύων, η οποία θα τον βοηθήσει να κατανοήσει µε µεγαλύτερη ευκολία τις τεχνικές λεπτοµέρειες που παρουσιάζουµε στα επόµενα κεφάλαια του βιβλίου. Στο 2ο Κεφάλαιο ασχολούµαστε µε την οµάδα πρωτοκόλλων που χρησιµοποιείται για την επικοινωνία κόµβων στο ιαδίκτυο, επικεντρώνοντας την προσοχή µας στο Πρωτόκολλο ιαδικτύωσης (Internet Protocol IP) και στη διευθυνσιοδότηση. Συγκεκριµένα, περιγράφουµε κυρίως τα πρωτόκολλα IP, ARP, RARP/BOOTP/DHCP και ICMP, δίνοντας ταυτόχρονα και µία συνοπτική αναφορά στα υπόλοιπα πρωτόκολλα. Με τους κανόνες και τη λειτουργία της διευθυνσιοδότησης στα δίκτυα IP ασχολού- µαστε ευρέως στην Ενότητα 2.2, ενώ στη συνέχεια δίνουµε µία σύντοµη αλλά περιεκτική παρουσίαση της έκδοσης 6 του πρωτοκόλλου IP (IPv6), η οποία αποτελεί την πολλά υποσχόµενη εξέλιξη της τρέχουσας έκδοσης (IPv4). Στο τέλος του Κεφαλαίου περιγράφουµε συνοπτικά την οικογένεια πρωτοκόλλων, που είναι ευρέως γνωστή ως IPsec, µέσω της οποίας επιτυγχάνουµε ασφαλή διακίνηση δεδοµένων στα δίκτυα IP. Στο 3ο Κεφάλαιο παρουσιάζουµε τις λειτουργίες γεφύρωσης και δροµολόγησης, οι οποίες χρησιµοποιούνται για τη διασύνδεση δικτύων, επικεντρώνοντας την προσοχή µας σε ορισµένους αντιπροσωπευτικούς αλγόριθµους αυτών των λειτουργιών. Σχετικά µε τη γεφύρωση, επικεντρωνόµαστε στον αλγόριθµο ανάπτυξης του δένδρου επικάλυψης, ο οποίος αποτελεί τη λύση στο πρόβληµα εµφάνισης βρόχων κατά τη διασύνδεση ενός µεγάλου πλήθους τοπικών δικτύων. Σχετικά µε τη δροµολόγηση, εξηγούµε αρχικά τις γενικές αρχές της δροµολόγησης και στη συνέχεια περιγράφουµε αναλυτικά δύο βασικούς αλγόριθµους δροµολόγησης: του Dijkstra και των Bellman-Ford.
12 IKTYA Y O O I TøN II Στο 4ο Κεφάλαιο ασχολούµαστε µε τα πρωτόκολλα δροµολόγησης που χρησιµοποιούνται ευρέως στο ιαδίκτυο. Αρχικά περιγράφουµε δύο πρωτόκολλα ενδοτοµεακής δροµολόγησης (τα RIP και OSPF) και στη συνέχεια επεξηγούµε µια τεχνική αναφοράς δικτύων, γνωστή ως CIDR, η οποία διαθέτει την ιδιότητα συσσωµάτωσης δύο ή περισσοτέρων δικτύων σε ένα µεγαλύτερο υπερδίκτυο. Στο τέλος του Κεφαλαίου καταλήγουµε µε το δηµοφιλέστερο πρωτόκολλο διατοµεακής δροµολόγησης, που είναι το Πρωτόκολλο Συνοριακής Πύλης (Border Gateway Protocol BGP). Στο 5ο Κεφάλαιο περιγράφουµε τα δύο πρωτόκολλα µεταφοράς του ιαδικτύου (τα UDP και TCP), µε τα οποία επιτυγχάνεται η επικοινωνία µεταξύ των εφαρµογών υπολογιστών στο ιαδίκτυο, δίδοντας έµφαση στις βασικές λειτουργίες τους. Το TCP είναι το δηµοφιλέστερο πρωτόκολλο Επιπέδου Μεταφοράς στις µέρες µας και παρέχει µία αξιόπιστη υπηρεσία µεταφοράς δεδοµένων προς τις εφαρµογές, απαλλάσσοντας αυτές από το φόρτο χειρισµού της αναξιόπιστης επικοινωνίας που προσφέρει το πρωτόκολλο δικτύου IP. Λόγω της σπουδαιότητάς του, ασχολούµαστε διεξοδικά µ αυτό το πρωτόκολλο και καταλήγουµε µε την αναλυτική περιγραφή της λειτουργίας ελέγχου συµφόρησης δικτύου, όπως αυτή υλοποιείται στα δίκτυα TCP. ÚÈÛÙ Â Από τη θέση αυτή θα ήθελα να ευχαριστήσω όλους όσους συνέβαλαν, ο καθένας µε το δικό του τρόπο, στην παραγωγή και στην ολοκλήρωση αυτού του βιβλίου. Ειδικότερα, θα ήθελα να ευχαριστήσω τους κ. Στάθη Χατζηευθυµιάδη, Φώτη Λιοτόπουλο, Μιχάλη Παρασκευά, Κων/νο Παπανδρέου και Ιωάννη Κουτσονίκο για την εξαντλητική κριτική ανάγνωση του κειµένου, τα εύστοχα σχόλια και τις χρήσιµες υποδείξεις που ανέπτυξαν, τον κ. Θανάση Χατζηλάκο, Αναπληρωτή Καθηγητή Πληροφορικής του ΕΑΠ για τη θεµατική καθοδήγησή του και τον Ακαδηµαϊκό Υπεύθυνο της Θ.Ε Παύλο Σπυράκη. Τέλος, θα ήθελα να ευχαριστήσω τις κ. Έστερ Μπαγουλή και Ευαγγελία Αντωνάκη για τη φιλική τους στάση, την υποµονή τους και τη βοήθεια που απλόχερα µου προσέφεραν σε όλα τα στάδια συγγραφής αυτού του κειµένου. Γιώργος Κ. Φούσκας