2.1 Εισαγωγή
Το
Internet πρωτόκολλο (Internet Protocol—IP) μπόρεσε να συνδέσει
εκατομμύρια υπολογιστών και να φέρει μία καινούργια πραγματικότητα
στην παροχή πρόσβασης στην πληροφορία. Το IP αναπτύχθηκε πριν
είκοσι χρόνια σαν το πρωτόκολλο του network επιπέδου της αρχιτεκτονικής
του Διαδικτύου (Internet) και μαζί με το πρωτόκολλο του transport
επιπέδου TCP (Transmission Control Protocol) δημιούργησαν την
οικογένεια πρωτοκόλλων TCP/IP. Στην αρχή το TCP/IP χρησιμοποιήθηκε
για την διασύνδεση των διαφορετικών υπολογιστικών συστημάτων
που χρησιμοποιούσε η κυβέρνηση των Η.Π.Α αλλά λόγω της εξαιρετικής
του δύναμης εξαπλώθηκε παγκοσμίως νικώντας τις άλλες δικτυακές
κατευθύνσεις και τεχνολογίες όπως: OSI, SNA, DECnet, NETware,
κ.α. Το IP λοιπόν έγινε η βάση της δημιουργίας πάρα πολλών client-server
ή peer-to-peer εφαρμογών εκμεταλεύοντας έτσι την δυνατότητα
της δικτυακής σύνδεσης.
Η
μεγάλη όμως ανάπτυξη του Διαδικτύου (Internet), που καλείται
να εξυπηρετήσει δισεκατομμύρια χρηστών, καθώς και οι απαιτήσεις
των νέων δικτυακών εφαρμογών δεν μπορούν να αντιμετωπισθούν
από το IPv4, το οποίο και αποτελεί το υπάρχον IP.
Αυτό
είναι λογικό γιατί δεν ήταν δυνατό στο σχεδιασμό του IPv4 να
προέβλεπαν αυτήν την αλματώδη εξέλιξη που θα είχε ο δικτυακός
χώρος. Η αδυναμία λοιπόν του IPv4 να ακολουθήσει τις εξελίξεις
ώθησε τον οργανισμό IETF(Internet Engineering Task Force), στις
25 Ιουλίου του 1994 σ’ένα συνέδριο στο Τορόντο, να προτείνει
το IP της επόμενης γενιάς, δηλαδή το Ipng (Next Generation Internet
Protocol—RFC1752). Η πρόταση αυτή εγκρίθηκε από Internet Engineering
Steering Group και από τις 17 Νοεμβρίου 1994 αποτελεί προτεινόμενο
πρότυπο(Proposed Standard).
Το
επίσημο όνομα του είναι IPv6 (Internet Protocol version 6) και
έρχεται να δώσει λύση στο εμφανή πρόβλημα της έλλειψης διευθύνσεων
που παρουσιάζει το IPv4 και όχι μόνο, γιατί λόγω του βελτιωμένου
σχεδιασμού του καθορίζει μία ομάδα από υπηρεσίες όπως ασφάλεια,
υψηλή απόδοση, εύκολη διευθέτηση(configuration), δημιουργώντας
με αυτό το τρόπο ένα πιο αξιόπιστο δίκτυο με λιγότερο διαχειριστικό
βάρος.
Όμως
η πραγματική πρόκληση για το IPv6 είναι για το εάν θα επιτύχει
να “δέσει” το περιβάλλον του επερχόμενου δικτύου όπου εκτός
από τους συμβατικούς υπολογιστές θα αποτελείται από μυριάδες
άλλες συσκευές όπως προσωπικοί επεξεργαστές δεδομένων μεγέθους
παλάμης (palmtop personal data assistants-PDA), υβριδικά κινητά
τηλέφωνα με υπολογιστικές δυνατότητες, έξυπνα κουτιά με ενσωματωμένους
Web browsers καθώς και από φωτοτυπικά μηχανήματα ενός γραφείου
έως και συσκευές που χρησιμοποιούνται στην κουζίνα ενός σπιτιού.
Η
επιτυχία του IPv6 θα βασιστεί όμως και στη δυνατότητα του να
εντάξει το παλιό στο καινούργιο. Είναι γνωστό το μέγεθος που
έχει ήδη το Διαδίκτυο και η μετάβαση από το IPv4 στο IPv6 δεν
είναι απλή υπόθεση αλλά απαιτεί σωστή στρατηγική έτσι ώστε να
παραμείνει αδιάλειπτη και αποδοτική η λειτουργία του Διαδικτύου.
Παρακάτω
λοιπόν ακολουθεί μία περιορισμένη παρουσίαση του IPv6 πρωτοκόλλου
και μετά ακολουθεί μία πιο λεπτομερή ανάπτυξη στους τομείς της
διευθυνσιοδότησης, απόδοσης και ασφάλειας.
2.2
Περιγραφή ΙPv6
Με
την προοπτική να αντιμετωπισθούν οι απαιτήσεις του νέου δικτύου
όπου θα υπάρχει αλλαγή από τις συσκευές που θα το αποτελούν
έως και τις εφαρμογές (multimedia περιβάλλον) που θα υποστηρίζει,
το IETF έδωσε προσοχή στους εξής τομείς:
Διευθυνσιοδότηση
Το
IPv6 χρησιμοποιεί ένα σχήμα διευθυνσιοδότησης μεγέθους 128-bit.
Το μέγεθος των διευθύνσεων που παράγονται είναι τόσο μεγάλο
ώστε είναι δυνατό ο κάθε κάτοικος αυτού του πλανήτη να έχει
τόσες διευθύνσεις για το δίκτυο του όσες το τωρινό Διαδίκτυο.
Το
βασικότερο όμως δεν είναι η δημιουργία ενός σχήματος διευθυνσιοδότησης
που θα παράγει πολλές σε αριθμό διευθύνσεις όσο η κατανομή των
διευθύνσεων αυτών. Το IPv6 κατανέμει τις διευθύνσεις με ιεραρχικό
τρόπο αποφεύγοντας έτσι τα προβλήματα του IPv4 όπου και παραγόταν
υπέρογκη πληροφορία για τη δρομολόγηση πάνω στα συστήματα και
διευθύνσεις έμεναν αχρησιμοποίητες.
Οι
τάξεις των διευθύνσεων στο IPv6 απευθύνονται καλύτερα στους
χρήστες απ’ ότι στο IPv4. Υπάρχουν βασικά τρεις κατηγορίες δικτυακών
χρηστών: αυτοί που χρησιμοποιούν το δίκτυο ενός οργανισμού και
μέσω αυτού και το Διαδίκτυο, αυτοί που χρησιμοποιούν μόνο το
δίκτυο του οργανισμού με πιθανότητα να χρησιμοποιήσουν το Διαδίκτυο
στο μέλλον και χρήστες που συνδέονται στο Διαδίκτυο διαμέσου
τηλεφωνικών γραμμών.
Για
την καλύτερη εξυπηρέτηση αυτών των δικτυακών χρηστών το ΙPv6
παρέχει τρεις τύπους διευθύνσεων, τις unicast, τις multicast
και τις anycast.
Περισσότερα
γύρω από την διευθυνσιοδότηση υπάρχουν στο κεφάλαιο Μοντέλο
Διευθυνσιοδότησης που ακολουθεί την περιορισμένη περιγραφή του
πρωτοκόλλου IPv6.
Απόδοση
Η
δικτυακή απόδοση έχει άμεση σχέση με την δρομολόγηση των πακέτων.
Το ποσό της πληροφορίας που παράγεται συνεχώς αυξάνει και σε
αυτό συντελούν και οι νέου είδους εφαρμογές. Οι ταχύτητες όμως
που υποστηρίζουν τα LANs και τα WANs αυξάνουν και αυτές και
έτσι οι λειτουργίες επεξεργασίας και προώθησης των IP πακέτων
από τους δρομολογητές θα πρέπει να γίνονται ακόμα ταχύτερα.
Με
αυτή τη λογική το IPv6 περιέχει λιγότερα πεδία στη κεφαλή (header)
του πακέτου απ’ότι το IPv4 και εισάγει την χρήση των επεκτάσεων
των κεφαλών οι οποίες βρίσκονται μεταξύ της IPv6 κεφαλής και
της κεφαλής του transport επιπέδου. Η ταχύτητα λοιπόν επεξεργασίας
και προώθησης του πακέτου από τους δρομολογητές αυξάνει γιατί
οι περισσότερες από τις επεκτάσεις των κεφαλών δεν εξετάζονται
από τους ενδιάμεσους δρομολογητές, οι οποίοι έχουν να επεξεργάσουν
μόνο σταθερού μήκους IPv6 κεφαλές απλοποιώντας κατά πολύ την
επεξεργασία και προώθηση.
Επίσης
ο φόρτος στους ενδιάμεσους δρομολογητές μειώνεται περισσότερο
αφού την διαδικασία τεμαχισμού (fragmentation)και ανασχηματισμού(reassembly)
των πακέτων αναλαμβάνουν οι επικοινωνούντες hosts.
Η
απόδοση με το IPv6 βελτιώνεται με την χρήση του πεδίου της κεφαλής
flow label, όπου κατορθώνεται να ζητηθούν συγκεκριμένες απαιτήσεις
από τους δρομολογητές για κάποια διαδρομή. Οι απαιτήσεις σχετίζονται
με την προτεραιότητα, τη καθυστέρηση ή το εύρος ζώνης (bandwidth)
που ζητούν κάποιες εφαρμογές όπως αυτές που μεταδίδουν video
κ.α
Περισσότερα
όμως υπάρχουν στο κεφάλαιο “Αύξηση της απόδοσης με το IPv6”
που ακολουθεί την περιορισμένη περιγραφή του πρωτοκόλλου IPv6.
Ασφάλεια
Η
ανάπτυξη και η εκτεταμένη χρήση του Διαδικτύου έφερε καινούργιες
απαιτήσεις από τους χρήστες οι οποίοι ζητούν οι συναλλαγές τους
και η πρόσβαση στις πηγές τους να γίνονται με ασφάλεια.
Το
IPv4 δεν είχε χαρακτηριστικά που θα μπορούσαν να χρησιμοποιηθούν
στην ασφάλεια των δικτύων και έτσι η προσπάθεια είχε κατευθυνθεί
στη χρήση μεθόδων που βασίζονται στο network επίπεδο.
Το
IPv6 όμως παρέχει εγγενής δυνατότητες για παροχή ασφάλειας οι
οποίες βασίζονται στις προσαρμοστικές επεκτάσεις της κεφαλής
του IPv6 πακέτου. Η επέκταση της πιστοποίησης (authentication
header extension) εξασφαλίζει ότι όντως το πακέτο έρχεται από
τον host που δείχνει η διεύθυνση της πηγής. Αυτή η πιστοποίηση
είναι σημαντική στη προστασία έναντι των εισβολέων, οι οποίοι
ρυθμίζουν ένα host να παράγει πακέτα με πλαστή διεύθυνση πηγής.
Αυτή η μεταμφίεση μπορεί να ξεγελάσει (IP spoofing) ένα εξυπηρέτη
και να υπάρξει παράτυπη πρόσβαση σε πολύτιμα δεδομένα ή σε κρίσιμες
δικτυακές λειτουργίες. Σύμφωνα με στατιστικές έρευνες αυτού
του είδους το “ξεγέλασμα” (IP spoofing) ενός εξυπηρέτη είναι
από τους πιο συνηθισμένους τρόπους εισβολής και δεν υπάρχει
εγγενής τρόπος από το IPv4 να ελέγξει εάν το πακέτο έρχεται
από εκεί που το ίδιο αναφέρει. Η σημερινή αντιμετώπιση αυτού
του προβλήματος γίνεται με τους “Firewalls” η χρήση των οποίων
παρουσιάζει μία σειρά από προβλήματα όπως μείωση στην απόδοση,
περιοριστική δικτυακή πολιτική και περιορισμένη διασύνδεση με
το Διαδίκτυο.
Μία
άλλη διαδεδομένη παγίδα στο Διαδίκτυο είναι οι αναλυτές της
κυκλοφορίας της πληροφορίας (sniffers) οι οποίοι λαθραία παρακολουθούν
τη πληροφορία που διέρχεται στο δίκτυο. Με αυτό το τρόπο μπορούν
να γίνουν γνωστά εμπορικά μυστικά, αριθμοί τραπεζικών λογαριασμών
και “πλαστικών” καρτών, συνθηματικά (passwords) καθώς και άλλα
πολύτιμα δεδομένα.
Το
IPv6 παρέχει και σε αυτό το πρόβλημα εγγενή λύση μέσω της επέκτασης
για κρυπτογράφηση της κεφαλής του IPv6 πακέτου όπου διαμέσου
κλειδιών κρυπτογράφησης γίνεται κρυπτογράφηση του περιεχομένου
(payload) του πακέτου. Η χρήση των επεκτάσεων ασφαλείας μπορεί
να γίνει απ’ευθείας μεταξύ δύο hosts ή σε συνδυασμό με μία πύλη
ασφαλείας (security gateway) η οποία και προσθέτει ένα βαθμό
περισσότερης ασφάλειας.
Περισσότερα
όμως υπάρχουν στο κεφάλαιο “Ασφάλεια στο IPv6” που ακολουθεί
την περιορισμένη περιγραφή του πρωτοκόλλου IPv6.
Αυτόματη
Διευθέτηση (Autoconfiguration)
Οι
ρυθμίσεις των IPv4 συστημάτων είναι συνήθως δύσκολες και προβληματικές.
Το IPv6 προσφέρει δύο τρόπους αυτόματης διευθέτησης των δικτυακών
υπολογιστικών συστημάτων: την stateful και την statelless.
Με
την stateful αυτόματη διευθέτηση εξυπηρέτες μπορούν δυναμικά
να καθορίζουν διευθύνσεις στα υπολογιστικά συστήματα τις οποίες
παίρνουν από μία βάση δεδομένων με καταχωρημένες από πριν διευθύνσεις.
Με τον ίδιο τρόπο λειτουργεί και το πρωτόκολλο DHCP στο IPv4
και ουσιαστικά μία πιο εξελιγμένη έκδοση του DHCP έχει αναπτυχθεί
στο IPv6 για να προσφέρει stateful αυτόματη διευθέτηση.
Το
IPv6 εισάγει όμως και την statelless αυτόματη διευθέτηση κατά
την οποία δεν είναι απαραίτητη η παρουσία του εξυπηρέτη. Κατά
την statelless αυτόματη διευθέτηση τα συστήματα μπορούν να ρυθμίσουν
μόνα τους τις διευθύνσεις με τη βοήθεια του τοπικού IPv6 δρομολογητή.
Η διεύθυνση είναι συνδυασμός της 48-bit MAC-διεύθυνσης (πχ.
η διεύθυνση του ethernet interface) με πρόθεμα (prefix) της
δικτυακής διεύθυνσης που μαθαίνει από το τοπικό δρομολογητή.
Οι
δυνατότητες της αυτόματης διευθέτησης διευθύνσεων μειώνει πάρα
πολύ το βάρος της εργασίας του διαχειριστή ενός δικτύου και
ωφελεί τους δικτυακούς χρήστες. Παράδειγμα όπου βοηθάει αποτελεσματικά
η αυτόματη διευθέτηση διευθύνσεων είναι η περίπτωση όπου μία
επιχείρηση αλλάζοντας παροχέα-ISP χρειάζεται καινούργιες διευθύνσεις
(renumbering) για όλους τους σταθμούς εργασίας. Επίσης η λειτουργία
αυτή του IPv6 είναι απαραίτητη και σε μία επιχείρηση όπου υπάρχουν
μετακινήσεις και αλλαγές στο πληθυσμό οπότε χρειάζεται και εδώ
μια δυναμική παροχή διευθύνσεων. Σημαντική όμως είναι η βοήθεια
στο τομέα του mobile computing όπου η αυτόματη διευθέτηση διευθύνσεων
παρέχει τη δυνατότητα στους κινητούς υπολογιστές να αποκτήσουν
αυτόματα IP διεύθυνση από οπουδήποτε και αν συνδέονται στο δίκτυο.
Μετάβαση
Σίγουρα
η τεχνολογία του IPv6 έχει να προσφέρει πολλά στο χώρο των δικτύων
και να εξελίξει το Διαδίκτυο δίνοντας του εφόδια ώστε να αντιμετωπίσει
τις μελλοντικές προκλήσεις. Η μεγαλύτερη όμως πρόκληση για την
επιτυχή εφαρμογή του IPv6 είναι η μετάβαση του Διαδικτύου από
το IPv4 στο νέο πρωτόκολλο. Το μεγάλο μέγεθος του Διαδικτύου
όπου περιέχει εκατομμύρια δικτυακών συσκευών καθιστά βέβαιο
ότι η μετάβαση δεν πρόκειται να πραγματοποιηθεί μέσα σε μια
νύκτα αλλά θα υπάρχει μια μακρά περίοδος συνύπαρξης του IPv4
με το IPv6.
Με
αυτή τη λογική ενέργησε το IETF δίνοντας την δυνατότητα στους
διαχειριστές δικτύων να πραγματοποιήσουν με ελαστικότητα την
αναβάθμιση των δικτύων τους. Η ελαστικότητα έγκειται στο ότι
δεν είναι απαραίτητη η άμεση και ολοκληρωμένη αναβάθμιση ολόκληρων
πληθυσμών στο νέο πρωτόκολλο γιατί είναι δεδομένη η συνλειτουργία
των IPv4 και IPv6 και δεν υπάρχει το πρόβλημα της απομόνωσης
ή του μεγάλου χρόνου μη λειτουργίας. Όμως κατά την αναβάθμιση
σε πολλούς δρομολογητές ή hosts θα πρέπει να κρατούνται και
οι λειτουργίες του IPv4 (downward compatibility) για την επικοινωνία
με τους δικτυακούς χώρους όπου δεν έχει πραγματοποιηθεί η μετάβαση.
Για
να επιτύχουν λοιπόν οι παραπάνω στόχοι της μετάβασης έχει γίνει
σοβαρός σχεδιασμός στο IPv6 το οποίο βασίζεται σε μηχανισμούς
όπως Hosts και δρομολογητές που υποστηρίζουν και τα δύο πρωτόκολλα
IPv4 και IPv6 (dual-stack),
και
πραγματοποίηση σήραγγας (tunnelling) του IPv6 διαμέσου IPv4.
Παρακάτω
ακολουθεί μια πιο τεχνική ανάλυση τομέων του IPv6 που αναφέρθηκαν
στη περιληπτική περιγραφή του πρωτοκόλλου.
2.3
Moντέλο Διευθυνσιοδότησης
Από τις
αρχές τις δεκαετίας του 1990 άρχισε να γίνεται αντιληπτό ότι
το Internet σύντομα θα αντιμετώπιζε τρία βασικά προβλήματα στον
τομέα της διευθυνσιοδότησης:
1. Εξάντληση
των διευθύνσεων δικτύων τάξεως Β (Class B)
2. Αύξηση
του μεγέθους των πινάκων δρομολόγησης (routing tables) πέρα
από τα όρια του σημερινού λογισμικού(software), υλικού (hardware)
και ανθρώπινου δυναμικού.
3. Ολοκληρωτική
εξάντληση των IP διευθύνσεων, μήκους 32-bit (2^32 διευθύνσεις)
που παρέχει η τρέχουσα έκδοση του IP (IPv4) σήμερα.
2.3.1
Τα προβλήματα στην αρχιτεκτονική Διευθυνσιοδότηση του IPv6
Τα παραπάνω
προβλήματα, που εμφανίστηκαν λόγο της μεγάλης ανάπτυξης του
Internet, οφείλονται στην σχεδίαση της διευθυνσιοδότησης του
πρωτοκόλλου IPv4 και πιο συγκεκριμένα στα εξής σημεία:
Ο διαχωρισμός
των διευθύνσεων σε τάξεις δικτύων (A.B.C).
Από τον πίνακα 1,
μπορούμε να δούμε ότι οι υπάρχουσες τάξεις (A,B,C) δικτύων δεν
ικανοποιούν τις απαιτήσεις σε διευθύνσεις, των σημερινών δικτύων.
Τα δίκτυα μεσαίου μεγέθους τα οποία περιλαμβάνουν πάνω από 254
μηχανές και έχουν σαφώς λιγότερες από 65.534, αποτελούν ένα
χαρακτηριστικό παράδειγμα. Ένα μεσαίου μεγέθους δίκτυο που απαιτεί
500 έως 1000 διευθύνσεις, υποχρεωτικά χρησιμοποιεί διευθύνσεις
τάξης Β. Σαν αποτέλεσμα έχουμε την σπατάλη 64.000 περίπου διευθύνσεων
ή 98.5% των διευθύνσεων ενός δικτύου τάξεως B. Αντίστοιχες απώλειες
υπάρχουν στα μεγάλα και πολύ μικρά δίκτυα με αποτέλεσμα την
γρηγορότερη εξάντληση των διευθύνσεων.
Τάξη
δικτύου |
Αριθμός
δικτύων / Τάξη |
Αριθμός
μηχανών (host) / δίκτυο |
Tάξη
A |
125
|
16.777.214
|
Τάξη
B |
16.320
|
65.534
|
Τάξη
C |
2.080.800
|
254
|
Πίνακας
2.1 Κατηγορίες δικτύων στο IPv6
Eπίπεδος
χώρος διευθυνσιοδότησης
Με τον όρο Επίπεδο
χώρο εννοούμε ότι δεν υπάρχει κάποια συγκεκριμένη ιεραρχία στην
απόδοση των διευθύνσεων που να μας επιτρέπει να συμπεράνουμε
οτιδήποτε για την πραγματική θέση ενός δικτύου γνωρίζοντας μόνο
την διεύθυνση του.
Παράδειγμα:
Στο σχήμα 1 έχουμε
3 δρομολογητές σε τρία διαφορετικά σημεία του κόσμου (Ελλάς,
Αγγλία, Αμερική), όπου ο καθένας από αυτούς ανήκει σε έναν διαφορετικό
παροχέα Internet (Ariadne-T, Dante, MCI). Παρατηρώντας τα νούμερα
των διευθύνσεων σε κάθε δρομολογητή ξεχωριστά καταλήγουμε στο
εξής συμπέρασμα: Οι διευθύνσεις που έχουν τα δίκτυα που είναι
συνδεμένα σε κάθε δρομολογητή δεν έχουν αποδοθεί βάση κάποιας
ιεραρχίας γεωγραφικής ή παροχέα Internet.
Επίπεδος χώρος
Διευθυνσιοδότησης
Λόγο της
έλλειψης κάποιας συσχέτισης της διεύθυνσης ενός δικτύου με την
πραγματική του θέση, ο αλγόριθμος δρομολόγησης δεν μπορεί να
αποφασίσει πώς θα φτάσει ένα IP πακέτο στο δίκτυο προορισμού
του, χωρίς να τον τροφοδοτήσουμε με περισσότερες πληροφορίες.
Κάθε δρομολογητής
λοιπόν είναι υποχρεωμένος να ανακοινώνει, ένα προς ένα, όλα
τα δίκτυα τα οποία είναι συνδεμένα στο Internet μέσω αυτού.
Οι κεντρικοί δρομολογητές του Internet (Core Routers) πρέπει
να έχουν πληροφορίες για την διαδρομή προς χιλιάδες δίκτυα,
διατηρώντας πληροφορίες για κάθε δίκτυο ξεχωριστά πράγμα που
αυξάνει κατακόρυφα τις απαιτήσεις των δρομολογητώv σε μνήμη
και υπολογιστική ισχύς. Τέλος η διακίνηση όλης αυτής της πληροφορίας
μέσω του Internet αυξάνει το φόρτο εργασίας του σπαταλώντας
BandWidth.
2.3.2
Τεχνικές για την παράταση της Ζωής του IPv6
Τα προβλήματα
του IPv4 που αναφέρθηκαν στις προηγούμενες παραγράφους θέτουν
ένα σαφές και πολύ περιορισμένο όριο ζωής στο πρωτόκολλο, που
δεν άφηνε τα χρονικά περιθώρια για την ανάπτυξη μιας ολοκληρωτικής
λύσης όπως το IPv6. Για την επέκταση της βιωσιμότητας του IPv4
και του Internet αναπτύχθηκαν μερικές λύσεις :
- Ιεραρχημένη
διευθυνσιοδότηση και Classless Inter Domain Routing.
Ο συνδυασμός της ιεραρχημένης διευθυνσιοδότησης και του C.I.D.R.
επιτρέπει την απόδοση διευθύνσεων σε κομμάτια ανάλογα με τις
απαιτήσεις κάθε δικτύου χωρίς περιττές σπατάλες. Επίσης μειώνεται
δραστικά το μέγεθος των πινάκων δρομολόγησης (routing tables)
και τους ρυθμούς ανάπτυξης τους, αφού πλέον είναι δυνατό να
περιληφθούν σε μία και μόνο διαδρομή (routing entry) πολλά
δίκτυα.
Ένα
παράδειγμα ιεραρχημένης διευθυνσιοδότησης φαίνεται στο σχήμα
2. Σε αυτό το παράδειγμα παρουσιάζεται μια ιεραρχία βασισμένη
στην γεωγραφική θέση των δικτύων. Σε κάθε χώρα έχει αποδοθεί
ένα κομμάτι του χώρου διευθύνσεων. Με αυτό το τρόπο είναι
εύκολο να συμπεράνουμε για κάποιο δίκτυο χρήσιμες πληροφορίες
γνωρίζοντας μόνο την διεύθυνση του.Λόγο της σπουδαιότητας
που έχει το CIDR και στην αρχιτεκτονική διευθυνσιοδότησης
του IPv6, θα το εξετάσουμε αναλυτικά σε επόμενη παράγραφο(2.3.4).
- Network
Address Translation N.A.T και Application Proxies
Και οι δύο μέθοδοι έχουν σκοπό να δώσουν πρόσβαση στο Internet
σε ένα δίκτυο το οποίο χρησιμοποιεί τις ειδικές διευθύνσεις
που έχουν παρακρατηθεί για ιδιωτικά δίκτυα. Το δίκτυο αυτό
γνωρίζει σαν μοναδική διέξοδο (Gateway) προς το Internet μία
μηχανή που χρησιμοποιεί μια από τις μεθόδους (NAT, Application
Proxing)
Οι
βασικότερη διαφορά των δύο μεθόδων είναι ότι το ΝΑΤ λειτουργεί
στο επίπεδο IP(IP Level) ενώ τα Application proxies λειτουργούν
στο επίπεδο εφαρμογής (Application Level).
Οι
τεχνικές NAT και Application proxies είναι ταυτόχρονα αποδοτικές
μέθοδοι για την αύξηση της ασφάλειας ενός δικτύου.
Σχήμα
2.2 Ιεραρχική απόδοση διευθύνσεων
Οι τεχνικές
για την επίλυση των προβλημάτων διευθυνσιοδότησης που αναφέρθηκαν
προηγουμένως και χρησιμοποιούνται στο σημερινό Internet δεν
μπορούν να δώσουν μακροχρόνια λύση στο πρόβλημα για τρεις βασικούς
λόγους:
1. Το CIDR
δεν είναι δυνατό να εφαρμοσθεί στις διευθύνσεις που είχαν είδη
αποδοθεί σε δίκτυα πριν την χρησιμοποίηση του,αλλά μόνο σε όσα
δίκτυα αποδόθηκαν διευθύνσεις μετά από την εφαρμογή του.
2. Ακόμα
και με την χρήση του CIDR o χώρος διευθυνσιοδότησης του IPv4
εξακολουθεί να μην επαρκεί.
3. Η λύσεις
των Ν.Α.Τ. και Proxies δεν παρέχουν πλήρης πρόσβαση στο δίκτυο.
Οι περιορισμοί αυτοί καθιστούν το N.A.T. και τα Proxies μη εφικτές
λύσεις σε κάποιες περιπτώσεις.
2.3.3
Το Classless Inter Domain Routing - C.I.D.R.
Σε αυτή
την παράγραφο θα εξετάσουμε αναλυτικότερα το C.I.D.R. Επιλέξαμε
να χρησιμοποιήσουμε διευθύνσεις από τον χώρο του IPv4 για δύο
λόγους:
1. Οι διευθύνσεις
του IPv4 με μήκος 32-bit είναι πολύ πιο εύκολο να γραφούν και
να χρησιμοποιηθούν για τους σκοπούς ενός παραδείγματος.
2. Ο περισσότερος
κόσμος είναι απόλυτα εξοικειωμένος με τις διευθύνσεις του IPv4
και τον τρόπο γραφής τους , ενώ θα έρθει πρώτη φορά σε επαφή
(ή έχει μικρή εμπειρία) με τις διευθύνσεις του IPv6 και τον
τρόπο γραφής τους.
Το C.I.D.R
εμπεριέχει τις εξής βασικές ιδέες :
1. Ιεραρχημένη
Διευθυνσιοδότηση
2. Απόδοση διευθύνσεων σε μεταβλητού μεγέθους κομμάτια (Classless
Address Allocation).
3. Άθροιση διαδρομών (Route Aggregation)
Ιεραρχημένη
Διευθυνσιοδότηση
Μια βασική απαίτηση
για την εφαρμογή του CIDR είναι η ύπαρξη Ιεραρχημένης διευθυνσιοδότησης
(για λόγους που θα γίνουν προφανείς στην συνέχεια). Όπως έχουμε
είδη δει σε προηγούμενη παράγραφο ένα είδος ιεραρχίας είναι
η απόδοση διευθύνσεων ανάλογα με την γεωγραφική θέση του δικτύου,
πολλές φορές αυτός ο διαχωρισμός δεν είναι εφικτός γιατί πολλά
δίκτυα παροχέων Internet αλλά και εταιριών απλώνονται ακόμα
και σε διαφορετικές ηπείρους. Μια πιο λειτουργική προσέγγιση
είναι η απόδοση μεγάλων κομματιών του χώρου διευθύνσεων στους
παροχείς Internet. Κάθε νέο δίκτυο λοιπόν που συνδέετε στο Internet
μέσω ενός παροχέα χρησιμοποιεί ένα κομμάτι διευθύνσεων που του
παραχωρεί ο παροχέας του.
Αξίζει
να σημειώσουμε ότι πλέον οι διευθύνσεις ενός δικτύου παραχωρούνται
από τον παροχέα και για την σωστή λειτουργία του CIDR θα πρέπει
να επιστρέφονται σε περίπτωση αλλαγής παροχέα και να αποδίδεται
στο δίκτυο καινούργιο κομμάτι διευθύνσεων από των χώρο διευθυνσιοδότησης
του νέου παροχέα. Η διαδικασία που μόλις περιγράψαμε είναι γνωστή
και ως address renumbering ή απλά renumbering.
Απόδοση
διευθύνσεων σε μεταβλητού μεγέθους κομμάτια (Classless Address
Allocation).
Το CIDR
καταργεί τις τάξεις διευθύνσεων που χρησιμοποιούν μάσκες σταθερού
μήκους και χρησιμοποιεί μάσκες μεταβλητού μήκους (Variable Length
Masks - VLM). Με αυτό τον τρόπο χρησιμοποιώντας το ζευγάρι Αρχική
διεύθυνση / Μάσκα δικτύου είναι δυνατό να καθορίσουμε ένα
κομμάτι διευθύνσεων. Το ζευγάρι Αρχική διεύθυνση / Μάσκα
δικτύου ονομάζεται πρόθεμα IP διεύθυνσης (IPAddress Prefix)
γιατί εάν πραγματοποιήσουμε την λογική πράξη Αρχική διεύθυνση
ΚΑΙ Μάσκα δικτύου θα πάρουμε σαν αποτέλεσμα το κοινό
μέρος που μοιράζονται όλες οι διευθύνσεις του κομματιού αυτού.
Σχήμα 2.3 IP διεύθυνση
στο C.I.D.R.
Παράδειγμα
1. Για
ένα κομμάτι 1024 διευθύνσεων με αρχική διεύθυνση 192.10.0.0
χρησιμοποιούμε το εξής ζευγάρι: 192.10.0.0/255.255.254.0 το
οποίο αντιστοιχεί στα 2 Class C 192.10.0.0 και 192.10.1.0
2. Αντίστοιχα
για 2048 διευθύνσεις ξεκινάμε από 192.10.4.0 έχουμε:
192.10.2.0 / 255.255.252
3. Για
8192 διευθύνσεις έχουμε : 192.10.32.0 / 255.255.224.0
Στα τρεις περιπτώσεις που μόλις είδαμε για να δημιουργήσουμε
τις μάσκες αρκεί να υπολογίσουμε πόσα bit πρέπει να είναι το
Y στο σχήμα 3
ώστε :
οπότε το
Χ = 32 - Υ o Χ = 22
Το πρόθεμα
πρέπει να φροντίσουμε να είναι μοναδικό και να μην έχουν δοθεί
άλλες διευθύνσεις από αυτό. Τα τρία προθέματα που έχουμε στις
παραπάνω περιπτώσεις σε δυαδική αναπαράσταση είναι :
Πρόθεμα
σε δεκαδική γραφή
|
Πρόθεμα
δυαδική γραφή
(με Έντονα γράμματα)
|
192.10.0
|
11000000.00001010.00000000 |
192.10.4
|
11000000.00001010.00000100 |
192.10.32
|
11000000.00001010.00100000 |
Πίνακας
2.2 Πρόθεμα διευθύνσεων σε δεκαδική και δυαδική γραφή
Από
τον παραπάνω πίνακα καταλαβαίνουμε γιατί η τρίτη περίπτωση έχει
πρόθεμα 192.10.32/255.255.224 και όχι 192.10.8/255.255.224,
γιατί τα bit πoυ απαρτίζουν τον αριθμό 8 δεν ανήκουν στο πρόθεμα
της τρίτης περίπτωσης , αλλά αποτελούν μέρος του αριθμού μηχανής.
Είναι προφανές επίσης ότι ένα πρόθεμα 192.10.0/255.255.224 δεν
είναι σωστό γιατί ήδη ένα κομμάτι έχει χρησιμοποιηθεί από τα
δίκτυα στις περιπτώσεις 1 και 2.
Το πρόθεμα
στο C.I.D.R. είναι υποχρεωτικό να έχει συνεχόμενα bit, δηλαδή
δεν είναι δυνατό να παρεμβάλλονται στα bit του προθέματος bit
του αριθμού μηχανής. Λόγο του παραπάνω κανόνα μπορούμε να αντικαταστήσουμε
την μάσκα με τον αριθμό των συνεχόμενων bit που αποτελούν το
πρόθεμα. Με αυτήν την γραφή τα τρία δίκτυα του παραπάνω παραδείγματος
γράφονται :
1. 192.10.0.0/255.255.254.0
= 192.10.0.0/23
2. 192.10.4.0/255.255.252.0
= 192.10.4.0/21
3. 192.10.32.0/255.255.224.0
=192.10.32.0/19
Αυτή η
γραφή είναι και η προτιμώμενη και για αυτό το λόγο είναι αυτή
που θα χρησιμοποιηθεί από εδώ και πέρα.
Ο πίνακας
που ακολουθεί περιέχει τα πιο συχνά χρησιμοποιούμενα προθέματα
.
Πρόθεμα
CIDR
|
Μέγεθος
ανάλογα με τα δίκτυα τάξης C.
|
/28
|
1/16
|
/27
|
1/8
|
/26
|
1/4
|
/25
|
1/2
|
/24
|
1
|
/23
|
2
|
/22
|
4
|
/21
|
8
|
/20
|
16
|
/19
|
32
|
/18
|
64
|
/17
|
128
|
/16
|
1
τάξης Β = 256
|
/15
|
512
|
/14
|
1024
|
/13
|
2048
|
/12
|
4096
|
Πίνακας
2.3 Τα συχνότερα χρησιμοποιούμενα προθέματα στο CIDR.
Άθροιση
διαδρομών (Route Aggregation)
Η άθροιση των διαδρομών είναι μία μέθοδος με την οποία είναι
δυνατό να ανακοινωθούν με μία και μόνη διαδρομή ένας μεγάλος
αριθμός δικτύων (από εκατοντάδες έως και χιλιάδες δίκτυα). Ο
αλγόριθμος δρομολόγησης σε περίπτωση που υπάρχουν δύο δυνατές
διαδρομές προς ένα δίκτυο επιλέγει εκείνη με το μεγαλύτερο πρόθεμα.
Το πλεονέκτημα
της άθροισης των διαδρομών μειώνεται από δύο παράγοντες:
1. Από
δίκτυα που έχουν συνδεθεί στο Internet μέσω δύο οι περισσότερων
παροχέων.
2. Από δίκτυα που άλλαξαν παροχέα αλλά δεν πραγματοποίησαν
renumbering.
Θα προσπαθήσουμε
να εξηγήσουμε την μέθοδο της άθροισης των διαδρομών με το επόμενο
παράδειγμα.
Παράδειγμα
Σχήμα 2.4
Παράδειγμα δρομολόγησης στο C.I.D.R.
Στο παραπάνω
σχήμα φαίνεται μια τοπολογία δικτύου που αποτελείται από επτά
δίκτυα (πελάτες 1-7) και δύο παροχείς Internet οι απαιτήσεις
κάθε δικτύου σε διευθύνσεις καθώς και το κομμάτι που τους αποδόθηκε
φαίνονται στον πίνακα 4.
δίκτυα |
Απαιτήσεις
σε Διευθύνσεις
|
Κομμάτι
διευθύνσεων που αποδόθηκε με CIDR |
πελάτης1 |
<2048
|
192.24.0.0/21
|
πελάτης2 |
<4096
|
192.24.16.0/20
|
πελάτης3 |
<1024
|
192.24.8.0/22
|
πελάτης4 |
<1024
|
192.24.12.0/22
|
πελάτης5 |
<512
|
192.24.32.0/23
|
πελάτης6 |
<512
|
194.24.34.0/23
|
πελάτης7 |
<1024
|
192.32.0.0/20
|
Πίνακας
2.4 Απόδοση διευθύνσεων σε δίκτυα με CIDR.
Οι πελάτες
1,2,3,6 είναι τυπικές περιπτώσεις δικτύων με μία μόνο πρόσβαση
στο Internet μέσω του παροχέα 1 και για αυτό το λόγο έχουν πάρει
και διεύθυνσης από τον χώρο διευθυνσιοδότησης του παροχέα.
Οι πελάτες
4,5 έχουν πρόσβαση στο Internet μέσω και των δύο παροχέων (dual
homed networks), ενώ έχουν πάρει διευθύνσεις από τον χώρο διευθυνσιοδότησης
από των παροχέα1.
Ο πελάτης4
επιθυμεί σαν κύρια σύνδεση να έχει αυτή του παροχέα1 και δευτερεύουσα
του παροχέα2 , ενώ ακριβώς το αντίθετο συμβαίνει για τον πελάτη5.
Τέλος ο
πελάτης7 έχει αλλάξει παροχέα χωρίς όμως να πραγματοποιήσει
renumbering. Σαν αποτέλεσμα ενώ είναι συνδεμένος μέσω του παροχέα1,
συνεχίζει να έχει διευθύνσεις από των χώρο διευθύνσεων του παροχέα2.
Για να
δούμε τώρα ποιες διαδρομές θα ανακοινώνει ο κάθε παροχέας:
Παροχέας1:
Καταρχήν
έχουμε την ανακοίνωση του δικτύου του πελάτη4, ο οποίος υποχρεωτικά
χρειάζεται να έχει ξεχωριστή διαδρομή αν και ανήκει στο χώρο
διευθύνσεων του παροχέα λόγο της διπλής σύνδεσης του με το Internet
και της επιλογής του να έχει ως πρωτεύουσα σύνδεση αυτή με τον
παροχέα1. Αντίστοιχη διαδρομή θα ανακοινωθεί και από τον παροχέα2.
Εάν δεν υπήρχε αυτή η ξεχωριστή διαδρομή για τον πελάτη4 από
τον παροχέα1 τότε θα προτιμούνταν από τον αλγόριθμο δρομολόγησης
η διαδρομή μέσω του παροχέα2 λόγο του μεγαλύτερου μήκους του
προθέματος που θα είχε.
Επίσης
ξεχωριστή ανακοίνωση χρειάζεται και ο πελάτης7 αφού αν και έχει
συνδεθεί με το internet μόνο μέσω του παροχέα1 η διευθύνσεις
του δεν ανήκουν στον χώρο του παροχέα1 και για αυτό δεν μπορούν
να αθροιστούν.
Τέλος έχουμε
την συνολική ανακοίνωση όλου του χώρου διευθύνσεων που ανήκουν
στον παροχέα1.
Προσέξτε
ότι ο πελάτης5 δεν χρειάζεται να ανακοινωθεί ξεχωριστά από τον
παροχέα1 γιατί η σύνδεση αυτή είναι επιθυμητό να είναι δευτερεύουσα
και αρκεί η έμμεση ανακοίνωση μέσω της συνολικής του χώρου διευθύνσεων
του παροχέα1.
Παροχέας1:
Καταρχήν
έχουμε την ανακοίνωση του δικτύου του πελάτη4, ο οποίος υποχρεωτικά
χρειάζεται να έχει ξεχωριστή διαδρομή αν και ανήκει στο χώρο
διευθύνσεων του παροχέα λόγο της διπλής σύνδεσης του με το Internet
και της επιλογής του να έχει ως πρωτεύουσα σύνδεση αυτή με τον
παροχέα1. Αντίστοιχη διαδρομή θα ανακοινωθεί και από τον παροχέα2.
Εάν δεν υπήρχε αυτή η ξεχωριστή διαδρομή για τον πελάτη4 από
τον παροχέα1 τότε θα προτιμούνταν από τον αλγόριθμο δρομολόγησης
η διαδρομή μέσω του παροχέα2 λόγο του μεγαλύτερου μήκους του
προθέματος που θα είχε.
Επίσης
ξεχωριστή ανακοίνωση χρειάζεται και ο πελάτης7 αφού αν και έχει
συνδεθεί με το internet μόνο μέσω του παροχέα1 η διευθύνσεις
του δεν ανήκουν στον χώρο του παροχέα1 και για αυτό δεν μπορούν
να αθροιστούν.
Τέλος έχουμε
την συνολική ανακοίνωση όλου του χώρου διευθύνσεων που ανήκουν
στον παροχέα1.
Προσέξτε
ότι ο πελάτης5 δεν χρειάζεται να ανακοινωθεί ξεχωριστά από τον
παροχέα1 γιατί η σύνδεση αυτή είναι επιθυμητό να είναι δευτερεύουσα
και αρκεί η έμμεση ανακοίνωση μέσω της συνολικής του χώρου διευθύνσεων
του παροχέα1.
Παροχέας2:
Ο
παροχέας2 ανακοινώνει ξεχωριστές διαδρομές για τους πελάτες4,5
μια και οι διευθύνσεις τους ανήκουν στον χώρο του παροχέα1.
Τέλος υπάρχει και η συνολική ανακοίνωση για όλο των χώρο διευθύνσεων
του.
Στο παραπάνω
παράδειγμα είδαμε πόσο μεγάλη μπορεί να είναι η οικονομία σε
διαδρομές που πρέπει να ανακοινώνει και να επεξεργάζεται κάθε
δρομολογητής με την χρήση του CIDR και τις ιεραρχικής διευθυνσιοδότηδης.
Όπως φάνηκε και από το παράδειγμα είναι σημαντική η πραγματοποίηση
renumbering των δικτύων που αλλάζουν παροχέα για την διατήρηση
των πλεονεκτημάτων που προσφέρει το CIDR. Μια σημαντική δυσκολία
παρουσιάζουν τα δίκτυα που έχουν πάνω από μια διασυνδέσεις με
το δίκτυο και εξακολουθούν να αναζητούνται λύσεις για αυτές
τις περιπτώσεις.
Το
C.I.D.R. είναι ένα θέμα με πολλές παραμέτρους, η ανάλυση τους
είναι πέρα από τους σκοπούς αυτού του βιβλίου, για περισσότερες
λεπτομέρειες μπορείτε να διαβάσετε τα:RFC 1517Rekhter, Y., and
T. Li, "An Architecture for IP Address Allocation with
CIDR", RFC 1518, T.J. Watson Research Center, IBM Corp.,
cisco Systems, September 1993,RFC 1519,RFC 1520
2.3.4
Η αρχιτεκτονική διευθυνσιοδότηση του IPv6
Οι σχεδιαστές
του IPv6 φρόντισαν ώστε να είναι απαλλαγμένο από τα προβλήματα
που παρουσίαζε στην διευθυνσιοδότηση το IPv4. Είναι σημαντικό
να υπενθυμίσουμε ότι μια διεύθυνση χαρακτηρίζει ένα interface
μιας μηχανής και όχι την ίδια την μηχανή
Η αρχιτεκτονική
της διευθυνσιοδότησης του IPv6 αποτελείται από τα εξής βασικά
σημεία.
2.3.5
Μεγαλύτερος χώρος διευθυνσιοδότησης
Ενώ το
μήκος των διευθύνσεων μόλις τετραπλασιάζεται (από 32 σε 128
bits) η αύξηση του χώρου των διευθύνσεων ακουμπάει τον απίστευτο
νούμερο των 296 φορές τον χώρο του IPv4 (232)=4.294.967.296
διευθύνσεις).
Ο συνολικός
αριθμός των διευθύνσεων που υποστηρίζει το IPv6 είναι:
2128=340.282.366.920.938.463.463.374.607.431.768.211.456
διευθύνσεις.
Εάν θεωρήσουμε
ότι το εμβαδόν της γης είναι περίπου Εγης=511.263.971.197.990
m2 τότε αντιστοιχούν 665.570.793.348.866.943.898.599
διευθύνσεις/m2 γης.
Στα πραγματικά
δίκτυα, λόγο της ιεαρχίας που απαιτείται για την απόδοση και
δρομολόγηση των διευθύνσεων μειώνεται η αποδοτικότητα της χρήσης
και περιορίζεται ο αριθμός των διευθύνσεων που μπορούν να χρησιμοποιηθούν.
Ο Christian
Huitema μετά από ανάλυση της αποδοτικότητας των τηλεφωνικών
δικτύων της Γαλλίας και της Αμερικής, του σημερινού Intertnet
με το IPv4 και άλλων κατέληξε ότι από τις διευθύνσεις των 128-bit
μόνο έως
διευθύνσεις
μπορούν να χρησιμοποιηθούν υποθέτοντας απόδοση στα ίδια επίπεδα
με τις άλλες αρχιτεκτονικές διευθυνσιοδότησης. Ακόμα και σε
αυτή την περίπτωση έχουμε αναλογία διευθύνσεων/m2
ίση με 1.564 διευθύνσεις στην πρώτη και 3.911.873.538.269.506.102
στην δεύτερη περίπτωση, μεγέθη που φαίνονται για το άμεσο μέλλον
να είναι υπεραρκετά.
2.3.6 Νέος Τρόπος
γραφής διευθύνσεων
Ο τετραπλασιασμός
του μήκους σε bit των διευθύνσεων κάνει δύσκολη την γραφή τους
με δεκαδικούς αριθμούς. Η νέα μορφή γραφής χρησιμοποιεί δεκαεξαδικούς
αριθμούς και έχει την ακόλουθη μορφή:
Διεύθυνση
IPv6 : x:x:x:x:x:x:x:x
όπου x ένας δεκαεξαδικός αριθμός μήκους 16-bit
π.χ. FEDC:BA98:7654:3210:FFDA:1A98:4512:24A2
1080:0:0:0:8:800:200C:417A
Για την
περίπτωση που υπάρχουν πολλά x=0 είναι δυνατό να παραληφθούν.
Για παράδειγμα
οι διευθύνσεις:
1080:0:0:0:8:800:200C:417A
1A34:0:0:0:342D:0:0:13DF
Γράφονται
για συντομία:
1080::8:800:200C:417A
1A34::342D:0:0:13DF
Παρατηρήστε
ότι η συντομογραφία :: δεν μπορεί να χρησιμοποιηθεί πάνω από
μια φορά.
Τέλος υπάρχει
μια ειδική γραφή που μπορεί να φανεί χρήσιμη σε μια ειδική κατηγορία
διευθύνσεων που θα παρουσιάσουμε σε επόμενη παράγραφο είναι
η ακόλουθη:
διεύθυνση
IPv6 με ενσωματωμένη IPv4 διεύθυνση : x:x:x:x:x:x.d.d.d.d όπου
x ένας δεκαεξαδικός αριθμός μήκους 16-bit και d.d.d.d μια διεύθυνση
IPv4.
Για παράδειγμα : 0:0:0:0:0:0:143.233.241.250
2.3.7
Τύποι διευθύνσεων του IPv6
Στo IPv6
υπάρχουν τρεις βασικές κατηγορίες διευθύνσεων και τρεις ειδικές
κατηγορίες. Στον πίνακα 1.5 φαίνεται ο καταμερισμός του χώρου
διευθυνσιοδότησης σε αυτές της κατηγορίες και το μέγεθος τους
ως προς το συνολικό χώρο.
Κατανομή
διευθύνσεων
|
Πρόθεμα
Μορφής
(Δυαδικό)
|
Κομμάτι
του χώρου διευθυνσιοδότησης
|
Παρακρατημένο
|
0000
0000 |
1/256
|
Ελεύθερο
|
0000
0001 |
1/256
|
Παρακρατημένο
για NSAP διευθύνσεις
|
0000
001 |
1/128
|
Παρακρατημένο
για IPX διευθύνσεις
|
0000
010 |
1/128
|
Ελεύθερο
|
0000
011 |
1/128
|
Ελεύθερο
|
0000
1 |
1/32
|
Ελεύθερο
|
0001 |
1/16
|
Αθροίσιμες
Global Unicast Διευθύνσεις
|
001 |
1/8
|
Ελεύθερο
|
010 |
1/8
|
Ελεύθερο
|
011 |
1/8
|
Ελεύθερο
|
100 |
1/8
|
Ελεύθερο
|
101 |
1/8
|
Ελεύθερο
|
110 |
1/8
|
Ελεύθερο
|
1110 |
1/16
|
Ελεύθερο
|
1111
0 |
1/32
|
Ελεύθερο
|
1111
10 |
1/64
|
Ελεύθερο
|
1111
110 |
1/128
|
Ελεύθερο
|
1111
1110 0 |
1/512
|
Τοπικής
σύνδεσης Unicast διευθύνσεις
|
1111
1110 10 |
1/1024
|
Τοπικού
Δικτύου Unicast διευθύνσεις
|
1111
1110 11 |
1/1024
|
Multicast
Addresses
|
1111
1111 |
1/256
|
Πίνακας
2.5 Καταμερισμός του χώρου διευθυνσιοδότησης ανά κατηγορία.
Ο διαχωρισμός
των κατηγοριών γίνεται από το πρόθεμα όπως φαίνεται στον
πίνακα 1.5. Το πρόθεμα αυτό ονομάζεται πρόθεμα μορφής (Format
Prefix ή FP). Αξίζει να παρατηρήσουμε ότι μόνο το 15% του συνολικού
χώρου έχει αποδοθεί σε κάποιες κατηγορίες ενώ το υπόλοιπο 85%
είναι διαθέσιμο για επέκταση κάποιον κατηγοριών όταν χρειαστεί
ή για την δημιουργία καινούργιων ανάλογα με τις ανάγκες που
θα προκύψουν.
2.3.7.1
Οι βασικές κατηγορίες διευθύνσεων του IPv6
Unicast
διευθύνσεις
Είναι ο
πιο ευρέως χρησιμοποιούμενος τύπος διευθύνσεων. Μια διεύθυνση
τύπου unicast χαρακτηρίζει μονοσήμαντα ένα και μόνο ένα interface
κάποιας μηχανής. Δηλαδή εάν ζητήσουμε να επικοινωνήσουμε με
αυτή την διεύθυνση θα επικοινωνούμε μόνο με μία μηχανή, αυτήν
στην οποία ανήκει τον interface που έχει αυτή την διεύθυνση.
Στον πίνακα
1.5 μπορούμε να δούμε ότι υπάρχουν τρείς περιοχές που χαρακτηρίζονται
ως Unicast:
Αθροίσιμες
Global Unicast Διευθύνσεις
Είναι Unicast
διευθύνσεις οι οποίες μπορούν να χρησιμοποιηθούν για επικοινωνία
στο Internet.
Τοπικής
σύνδεσης Unicast διευθύνσεις
Τοπικής
εμβέλειας διευθύνσεις, η βασικότερη χρήση τους είναι η επικοινωνία
κατά την εκκίνηση μιας μηχανής με τον εξυπηρέτη (server) για
την διαδικασία ης αυτόματης ρύθμισης της μηχανής (Autoconfiguration).
Τοπικού
Δικτύου Unicast διευθύνσεις
Οι
διευθύνσεις αυτές έχουν παρακρατηθεί για χρησιμοποίηση από ιδιωτικά
δίκτυα που δεν είναι ακόμη συνδεμένα με το Internet και μπορούν
να χρησιμοποιηθούν ελεύθερα από κάθε τέτοιο δίκτυο.
Η μορφή
που έχουν οι διευθύνσεις τύπου unicast θα παρουσιασθεί σε επόμενη
παράγραφο όπου και αναλύεται η ιεραρχία διευθυνσιοδότησης που
χρησιμοποιεί το IPv6.
Μία διεύθυνση
τύπου multicast χαρακτηρίζει ουσιαστικά μια ολόκληρη ομάδα από
interfaces. Ένα πακέτο πληροφορίας με προορισμό μια τέτοια διεύθυνση
θα παραδοθεί σε όλα τα interfaces. Οι εφαρμογές πολυμέσων χρησιμοποιούν
κατά κόρο τέτοιες διευθύνσεις. Π.Χ : εφαρμογές τηλεδιάσκεψης,
μετάδοση ραδιοφωνικών και τηλεοπτικών προγραμμάτων μέσω του
Internet.
Σε αυτό
το σημείο πρέπει να πούμε ότι το IPv6 καταργεί την έννοια των
διευθύνσεων broadcast αφού τις θεωρεί υπο-περίπτωση των multicast.
Στο Σχήμα
2.5 παρουσιάζεται η μορφή που έχει μια διεύθυνση τύπου multicast.
Το πεδίο flgs ανάλογα με την τιμή του τέταρτου bit δηλώνει
ότι η διεύθυνση αυτή ανήκει σε μια ομάδα η οποία είναι μόνιμη
(τιμή 0) ή σε μια ομάδα με πεπερασμένη διάρκεια ζωής (τιμή1)
. Για παράδειγμα μια ομάδα στην οποία ανήκουν όλοι οι εξυπηρέτες
της υπηρεσίας news θα είναι μόνιμη ομάδα, ενώ μια ομάδα που
δημιουργήθηκε για τους σκοπούς μιας τηλεδιάσκεψης είναι μια
προσωρινή ομάδα και μετά το τέλος της χρήσης της, η διεύθυνση
θα είναι ξανά ελεύθερη προς χρήση από μια νέα ομάδα. Τα υπόλοιπα
3 bit του πεδίου flgs είναι δεσμευμένα για μελλοντική χρήση.
Μήκος
σε bits
|
8
bits
Format
Prefix
|
4
bits
|
4
bits
|
112
bits
|
περιεχόμενο
|
11111111
|
flgs
|
scop
|
group
ID
|
Σχήμα
2.5 Μορφή διεύθυνσης Multicast
Το πεδίο
scop καθορίζει την έκταση στην οποία η ομάδα αυτή έχει
ισχύ. Για παράδειγμα μπορεί να περιοριστεί σε μηχανές που είναι
απευθείας συνδεμένες (Σύνδεσης, π.χ. στο ίδιο Ethernet), στο
ίδιο site ή τέλος στον ίδιο οργανισμό. Στον Πίνακας 2.5 φαίνονται
αναλυτικά οι τιμές που μπορεί να πάρει το πεδίο scop
και η σημασία τους.
Τιμή
|
Εύρος
|
0
|
Παρακρατημένο
|
1
|
Μηχανή
|
2
|
Σύνδεσης
|
3
|
Μη
καθορισμένο
|
4
|
Μη
καθορισμένο
|
5
|
site
|
6
|
Μη
καθορισμένο
|
7
|
Μη
καθορισμένο
|
8
|
Οργανισμού
|
9
|
Μη
καθορισμένο
|
Α
|
Μη
καθορισμένο
|
Β
|
Μη
καθορισμένο
|
C
|
Μη
καθορισμένο
|
D
|
Μη
καθορισμένο
|
E
|
Internet
|
F
|
Παρακρατημένο
|
Πίνακας
2.6 Εύρος ισχύς της ομάδας όπως καθορίζεται από το πεδίο scop.
Το πεδίο
group
ID είναι
το αναγνωριστικό της ομάδας.
Παράδειγμα
Multicast διεύθυνσης:
Εάν θεωρήσουμε
μια ομάδα που θα χρησιμοποιηθεί για μια τηλεδιάσκεψη με
Group
ID =
102Αh είναι προφανές ότι μια τηλεδιάσκεψη θα έχει πεπερασμένη
διάρκεια και το πεδίο flgs
θα έχει
τιμή 0001b fdf
τότε η διεύθυνση που αντιστοιχεί στην ομάδα είναι:
α) Για
μια ομάδα που έχει έκταση σύνδεσης
FF12:0:0:0:0:0:0:102A
β) Για
μια ομάδα που έχει έκταση οργανισμού
FF18:0:0:0:0:0:0:102A
γ) Για
μια ομάδα που εκτείνεται σε όλο το Internet
FF1E:0:0:0:0:0:0:102A
Οι διευθύνσεις
τύπου anycast είναι ένας πρωτοεμφανιζόμενος τύπος διευθύνσεων.
Και αυτός ο τύπος διευθύνσεων χαρακτηρίζει μια ομάδα από interfaces.
Το βασικό όμως χαρακτηριστικό του είναι ότι ένα πακέτο με προορισμό
μια τέτοια διεύθυνση δεν θα αποσταλεί σε όλα τα interfaces,
αλλά σε αυτό που βρίσκεται κοντινότερα στον αποστολέα. Ο υπολογισμός
του κοντινότερου interface βασίζεται στον τρόπο με τον οποίο
το πρωτόκολλο δρομολόγησης υπολογίζει τις αποστάσεις. Οι διευθύνσεις
τύπου anycast μοιράζονται των ίδιο χώρο διευθυνσιοδότησης με
τις unicast. Η δημιουργία τους χρειάζεται ξεχωριστή ρύθμιση
των μηχανών στων οποίων τα interface έχουν αποδοθεί καθώς επίσης
και ρύθμιση των ανακοινώσεων που κάνουν οι δρομολογητές για
αυτές τις διευθύνσεις.
Μια εφαρμογή
στην οποία θα μπορούσαν να χρησιμοποιηθούν αυτές οι διευθύνσεις
είναι για τα interface των δρομολογητών ενός δικτύου. Με αυτό
τον τρόπο μπορούν να λυθούν διάφορα προβλήματα δρομολόγησης
όπως η αυτόματη χρησιμοποίηση του κοντινότερου δρομολογητή και
η χρησιμοποίηση ενός δευτερεύοντος σε περίπτωση βλάβης του πρώτου.
2.3.7.2
Kατηγορία παρακρατημένων (Reserved) διευθύνσεων του IPv6
- Η μη
καθορισμένη διεύθυνση:
Η διεύθυνση
0:0:0:0:0:0:0:0 ονομάζεται μη καθορισμένη και δηλώνει την έλλειψη
διεύθυνσης.
Είναι η
διεύθυνση 0:0:0:0:0:0:0:1 και χρησιμοποιείτε από το λειτουργικό
όλων των μηχανών για διάφορες λειτουργίες.
- IPv6
Addresses with Embedded IPv4 Addresses
Αυτές οι
διευθύνσεις επινοήθηκαν για να βοηθήσουν του μετάβαση από το
IPv4 στο IPv6 και έχουν την γενική μορφή 0:0:0:0:0:0:IPv4 διεύθυνση.
π.χ. 0:0:0:0:0:0:143.233.241.250
2.3.8
Iεραρχία διευθυνσιοδότησης
Το IPv6
στο θέμα της διευθυνσιοδότησης παρουσιάζει ένα μεγάλο πλεονέκτημα
συγκριτικά με το IPv4, έχει σχεδιαστεί για ιεραρχημένη διευθυνσιοδότηση
και CIDR. Οι δύο βασικότερες δομές ιεραρχίας (μέχρι στιγμής)
στην απόδοση διευθύνσεων στο IPv6 είναι:
- Μορφή
διευθύνσεων κατανομής ανά παροχέα Internet (Provider-Based
Unicast Address Format)
Είναι ιεραρχία
αντίστοιχη με αυτή που χρησιμοποιείται στο IPv4 σήμερα. Στο
σχήμα που ακολουθεί φαίνονται τα επίπεδα ιεραρχίας που είναι
κωδικοποιημένα στην διεύθυνση (Registry, παροχέας, πελάτης).
Μήκος
σε bits
|
3
|
n
bits
|
m
bits
|
o
bits
|
125-n-m-o
bits
|
περιεχόμενο
|
Format
Prefix
|
Registry
ID
|
provider
ID
|
subscriber
ID
|
intra-subscriber
|
Σχήμα
2.6 Μορφή διευθύνσεων κατανομής ανά παροχέα Internet
Η μορφή
αυτή έχει αντικατασταθεί από την μορφή που παρουσιάζουμε στην
συνέχεια.
- Αθροίσιμη
Μορφή διευθύνων (Aggregatable Global Unicast Address Format)
Αυτή η
μορφή ιεραρχίας εμπεριέχει και την ιεραρχία ανά παροχέα ενώ
πάει ένα βήμα παραπέρα θεωρώντας ότι θα υπάρχουν σημεία στα
οποία θα συναντώνται ομάδες παροχέων τα οποία και ονομάζει αθροιστές
κορυφαίου επιπέδου. Εάν λοιπόν οι παροχείς πάρουν το χώρο διευθύνσεων
τους από αυτούς έχουμε ακόμα μεγαλύτερη οικονομία στον αριθμό
των διαδρομών που θα πρέπει να ανακοινώνονται.
Μήκος
σε bits
|
3
bits
|
13
bits
|
32
bits
|
16
bits
|
64
bits
|
περιεχόμενο
|
Format
Prefix
|
TLA
ID
|
NLA
ID
|
SLA
ID
|
interface
ID
|
Σχήμα
2.7 Αθροίσιμη Μορφή διευθύνσεων
Για
λεπτομερέστερη ανάλυση της ιεραρχίας ανατρέξτε στο: An IPv6
Aggregatable Global Unicast Address Format INTERNET-DRAFT July
16, 1997 by R. Hinden , Ipsilon Networks M. O'Dell, UUNET S.
Deering, Cisco
2.4
Ασφάλεια στο IPv6 (IPSec??)
Στο
IPv6 η ασφάλεια βασίζεται αποκλειστικά στο επίπεδο IP (IP level
Security), δηλαδή όλες οι διαδικασίες ασφάλειας έχουν σκοπό
την προστασία του IP πακέτου από κάθε είδος επίθεσης κατά την
πορεία του μέσα από το δίκτυο. Η ασφάλεια στο επίπεδο IP μπορεί
να παρέχει τις εξής δυνατότητες:
Πιστοποίηση
(Authentication)
Πιστοποίηση
είναι η ικανότητα να γνωρίσουμε ότι τα δεδομένα που παραλήφθηκαν
είναι αυτά που έστειλε ο αποστολέας και ότι ο αποστολέας είναι
αυτός που ισχυρίζεται.
Ακεραιότητα
πληροφορίας (Integrity)
Η
ακεραιότητα της πληροφορίας είναι η δυνατότητα να ανιχνεύεται
οποιαδήποτε αλλαγή της πληροφορίας στην ενδιάμεση διαδρομή από
τον αποστολέα στον παραλήπτη.
Απόρρητο
της πληροφορίας (Confidentiallity)
Το
απόρρητο της πληροφορίας είναι η δυνατότητα να είναι διαθέσιμη
σε κατανοητή μορφή μόνο από τους πραγματικούς παραλήπτες. Με
αυτό τον τρόπο είναι σχεδόν αδιάφορο ποιοι μπορούν να υποκλέψουν
την πληροφορία κατά την διάρκεια της πορείας της προς τον τελικό
προορισμό της .
Απόδειξη
αποστολής δεδομένων από τον αποστολέα (Non-repudiation)
Με
αυτή την δυνατότητα είναι αδύνατο να αρνηθεί ένας αποστολέας
το γεγονός της αποστολής των δεδομένων. Η δυνατότητα αυτή είναι
διαθέσιμη μόνο όταν χρησιμοποιείται ένας ασύμμετρος αλγόριθμος
κρυπτογράφησης.
Η
ασφάλεια σε επίπεδο IP και σαν συνέπεια η ασφάλεια που παρέχει
το IPv6. δεν μπορεί να καλύψει όλες τις περιπτώσεις επιθέσεων.
Μια τέτοια περίπτωση είναι η περίπτωση της ανάλυσης της ροής
της πληροφορίας (traffic analysis). Η ανάλυση αυτή μπορεί να
παρέχει χρήσιμες πληροφορίες για έναν πιθανό εισβολέα, όπως
η συχνότητα ανταλλαγής πληροφοριών των μηχανισμών ασφαλείας,
το μέγεθος των πακέτων ή ακόμα και ο τύπος της πληροφορίας που
κάποιος χρήστης αναζητεί στο Internet.
Για
περισσότερες πληροφορίες για το θέμα του traffic analysis ανατρέξτε
στο:Bruce Schneier, Applied Cryptography, Section 8.6,John Wiley
& Sons, New York, NY1994
2.4.1
Μηχανισμοί ασφάλειας του IPv6
Το
IPv6 χρησιμοποιεί δύο βασικούς μηχανισμούς για να παρέχει τις
υπηρεσίες ασφάλειας που αναφέρθηκαν στην προηγούμενη παράγραφο.
Οι μηχανισμοί αυτοί είναι :
- IP Authentication
Header
- IP Encapsulating
Security Payload
Οι
δύο αυτοί μηχανισμοί βασίζονται κυρίως σε εξωτερικούς μηχανισμούς
κρυπτογράφησης για να παρέχουν ασφάλεια. Για αυτό το λόγο κρίνεται
σκόπιμο σε αυτό το σημείο να γίνει μια σύντομη αναφορά στο θέμα
της κρυπτογράφησης. Να σημειώσουμε ότι η κρυπτογράφηση χρησιμοποιεί
κάποια κλειδιά η διαχείριση των οποίων είναι ένα πολύ σημαντικό
θέμα το οποίο όμως δεν καλύπτεται σε αυτό το βιβλίο. Ο κυρίως
λόγος είναι ότι η διαχείριση δεν είναι στενά συνδεδεμένη με
την δομή και λειτουργία του IPv6 και μπορεί να αλλάξει στο μέλλον
χωρίς απαραίτητα να επηρεάσει το IP.
2.4.1.1
Τι είναι η κρυπτογράφηση
Η
κρυπτογράφηση είναι η διαδικασία μετατροπής της πληροφορίας
σε μια μορφή η οποία αποκρύπτει το πραγματικό της περιεχόμενο
και η ανάκτηση της είναι δυνατή μόνο από άτομα που έχουν την
απαραίτητη έγκριση. Η κρυπτογράφηση είναι προϊόν της επιστήμης
που ονομάζεται κρυπτογραφία. Η κρυπτογραφία εξελίσσεται συνεχώς
και νέοι μέθοδοι κρυπτογράφησης εμφανίζονται.
Η
πληροφορία που πρόκειται να κρυπτογραφηθεί ονομάζεται plaintext,
ενώ η κρυπτογραφημένη chiphertext. Για να γίνει η κρυπτογράφηση
απαιτείται ένας μηχανισμός κρυπτογράφησης ο οποίος είναι ένα
πρόγραμμα υπολογιστή το οποίο υλοποιεί τον αλγόριθμο κρυπτογράφησης.
Ο αλγόριθμος κρυπτογράφησης είναι μια μαθηματική συνάρτηση η
οποία δέχεται σαν είσοδο της, την πληροφορία (plaintext) και
μια ακολουθία από bit που ονομάζεται κλειδί και παράγει την
κρυπτογραφημένη πληροφορία. Είναι προφανές ότι το αποτέλεσμα
που μας δίνει ο αλγόριθμος πρέπει να είναι μοναδικό για κάθε
συνδυασμό πληροφορίας (Plaintext) και κλειδιού. Η ανάκτηση την
πληροφορίας από το cyphertext απαιτεί την ύπαρξη ενός μηχανισμού
αποκρυπτογράφησης και το αντίστοιχο κλειδί.
Οι
αλγόριθμοι κρυπτογράφησης χωρίζονται σε δυο βασικές κατηγορίες,
τους συμμετρικούς και τους ασύμμετρους.
Συμμετρικοί
αλγόριθμοι:
Οι συμμετρικοί
αλγόριθμοι χρησιμοποιούν το ίδιο κλειδί για την διαδικασία της
κρυποτγράφησης/αποκρυπτογράφησης. Ένας πολύ γνωστός τέτοιος
αλγόριθμος είναι ο D.E.S (Data Encryption Standard). Βασικό
μειονέκτημα των αλγόριθμων αυτού του τύπου είναι η διανομή του
κλειδιού και η προστασία της μυστικότητας του.
Ασύμμετροι
αλγόριθμοι:
Η βασικότερη διαφορά των αλγόριθμων αυτών από την προηγούμενη
κατηγορία είναι η ύπαρξη δύο διαφορετικών κλειδιών. Το ένα χρησιμοποιείται
για την κρυπτογράφηση και το άλλο για την αποκρυπτογράφηση της
πληροφορίας. Η ύπαρξη δύο κλειδιών κάνει δυνατή την εύκολη την
διανομή των κλειδιών. Αρκεί να κρατηθεί μυστικό το ένα κλειδί,
ενώ το άλλο μπορεί να διανεμηθεί ελεύθερα.
Η
ασφάλεια που παρέχουν οι αλγόριθμοι βασίζεται την πολυπλοκότητα
και δυσκολία επίλυσης της συνάρτησης που χρησιμοποιείται. Η
συνάρτησης αυτή είναι πολύ εύκολο να υπολογιστή προς την μία
κατεύθυνση (Κρυπτογράφηση) , ενώ είναι φοβερά χρονοβόρα προς
την αντίθετη (Αποκρυπτογράφηση). Για μια όμως συγκεκριμένη περίπτωση,
η επίλυση και προς την αντίθετη κατεύθυνση είναι εύκολη, αυτή
είναι η περίπτωση στην οποία υπάρχει το κλειδί που απαιτείται
για την αποκρυπτογράφηση. Η ανεύρεση τέτοιων συναρτήσεων είναι
εξαιρετικά δύσκολη και ακόμα ποιο δύσκολη είναι η πιστοποίηση
της ιδιότητας τους. Οι συναρτήσεις αυτές ονομάζονται trap
door functions. Όλα τα παραπάνω προϋποθέτουν ότι τα κλειδιά
είναι διαθέσιμα μόνο στα εξουσιοδοτημένα άτομα.
2.4.1.2
Ψηφιακές Υπογραφές
Εκτός
από την κρυπτογράφηση των πληροφοριών, η κρυπτογραφία δίνει
την δυνατότητα της ψηφιακής υπογραφής με την οποία είναι δυνατές
οι εξής λειτουργίες :
- Πιστοποίηση
(Authentication).
- Ακεραιότητας
την πληροφορίας (Integrity).
Οι
συναρτήσεις που χρησιμοποιούνται για την ψηφιακοί υπογραφή κειμένων
ονομάζονται hash functions. Μια τέτοια συνάρτηση δέχεται
σαν είσοδο ένα μήνυμα και δημιουργεί έναν αριθμό σταθερού μήκους
(συνήθως 128 bits) που αντιπροσωπεύει το μήνυμα. Είναι εξαιρετικά
δύσκολο να δημιουργηθεί ένα μήνυμα το οποίο θα κάνει τον αλγόριθμο
να παράγει μια συγκεκριμένη τιμή και για αυτό τον λόγο είναι
σχεδόν αδύνατο να μεταβληθεί το περιεχόμενο ενός μηνύματος χωρίς
αυτό να γίνει αντιληπτό.
Δύο βασικοί αλγόριθμοι που χρησιμοποιούνται σήμερα είναι ο Keyed
HMAC MD5
και ο
Keyed
HMAC SHA.
2.4.1.3
IP Authentication Header
Ο μηχανισμός
του IP authentication Ηeader μπορεί να παρέχει τις εξής δυνατότητες
ασφάλειας:
- Πιστοποίηση
(Authentication).
- Ακεραιότητας
την πληροφορίας (Integrity).
- Απόδειξη
αποστολής δεδομένων από τον αποστολέα (Non-repudiation).
Ο μηχανισμός
αυτός στο IPv6 προστίθεται σαν μια έξτρα επικεφαλίδα όπως φαίνεται
και στο Σχήμα 2.1. Η κύρια πληροφορία που υπάρχει στην επικεφαλίδα
αυτή είναι ένα νούμερο το οποίο είναι το αποτέλεσμα της εφαρμογής
του χρησιμοποιούμενου αλγόριθμου κρυπτογράφησης σε όλο το πακέτο.
IPv6
Header |
Hop-by-Hop
/ Routing |
Authentication
Header |
Άλλοι
Headers |
Πρωτόκολλο
άνω επιπέδου (TCP/UDP) |
Σχήμα
2.1 Μορφή IP πακέτου με Authentication Header
2.4.2
IP Encapsulating security Payload (ESP)
Ο μηχανισμός
του IP Encapsulating security Payload μπορεί να παρέχει τις
εξής δυνατότητες ασφάλειας:
- Ακεραιότητας
την πληροφορίας (Intergrity).
- Απόρρητο
της πληροφορίας (Confidentiality)
- Απόδειξη
αποστολής δεδομένων από τον αποστολέα (Non-repudiation).
Η
λειτουργία αυτού του μηχανισμού βασίζεται στην κρυπτογράφηση
της προς μετάδοσης πληροφορίας. Με αυτό τον τρόπο μόνο ο παραλήπτης
που έχει στην κατοχή του το κατάλληλο κλειδί μπορεί να αποκρυπτογραφήσει
την πληροφορία. Η γενική μορφή ενός πακέτου IP που χρησιμοποιεί
την λειτουργία IP Encapsulating security Payload φαίνεται στο
Σχήμα 2.2.
<--
Μη κρυπτογραφημένα -->
|
<--
Κρυπτογραφημένα -->
|
IP
Header
|
Άλλη
IP Headers
|
ESP
Header
|
Encrypted
Data
|
Σχήμα
2.2 Μορφή IP πακέτου με IP Encapsulating security Payload
Ο μηχανισμός
του ESP μπορεί να χρησιμοποιηθεί με δύο τρόπους:
1.
Εφαρμογή σε Transport επίπεδο.
Σε αυτή την περίπτωση η κρυπτογραφημένη πληροφορία περιέχει
μόνο το πακέτο του επιπέδου μεταφοράς (Transport TCP/UDP).
Δηλαδή την επικεφαλίδα του επιπέδου Transport και τα δεδομένα
του χρήστη. Σαν αποτέλεσμα δεν έχουμε προστασία των IP Headers.
2.
Εφαρμογή σε Tunnel επίπεδο.
Σε αυτή την περίπτωση γίνεται κρυπτογράφηση ολόκληρου του
IP πακέτου. Ο τρόπος αυτός χρήσης είναι ιδιαίτερα χρήσιμος
για την δημιουργία VPN’s
2.4.3
Καθορισμός των παραμέτρων ασφαλείας μιας σύνδεσης
Οι μηχανισμοί ασφαλείας χρησιμοποιούν την έννοια του Security
Association. Ένα Security Association αποτελείται από ένα σύνολο
επιλογών σχετικές με την εφαρμογή των μηχανισμών ασφαλείας και
την διεύθυνση προορισμού των πακέτων της πληροφορίας. Οι βασικές
επιλογές που πρέπει να υπάρχουν σε ένα security association
παρουσιάζονται περιληπτικά στην συνέχεια :
- Αλγόριθμος
Πιστοποίησης (Authentication) που χρησιμοποιεί το IP Authentication
Header
- Κλειδιά
που χρησιμοποιεί ο αλγόριθμος Πιστοποίησης (Authentication)
που χρησιμοποιείται από το IP Authentication Header
- Αλγόριθμος
κρυπτογράφησης που χρησιμοποιεί το IP Encapsulating Header
(ESP).
- Κλειδιά
που χρησιμοποιεί ο αλγόριθμος κρυπτογράφησης που χρησιμοποιείται
από το IP Encapsulating Header(ESP).
- Παρουσία/απώλεια
και μέγεθος του πεδίου κρυπτογραφικού συγχρονισμού ή πεδίο
ανύσματος εκκίνησης για τον αλγόριθμο κρυπτογράφησης (ESP).
- Αλγόριθμος
Πιστοποίησης (Authentication) που χρησιμοποιεί το IP Encapsulating
Header (ESP).
- Κλειδιά
που χρησιμοποιεί ο αλγόριθμος Πιστοποίησης (Authentication)
που χρησιμοποιείται από το IP Encapsulating Header (ESP).
- Διάρκεια
ζωής των κλειδιών ή ώρα που θα αλλάξουν τα κλειδιά.
- Διάρκεια
ζωής του συγκεκριμένου security association.
- Διεύθυνση(-σεις)
πηγής (Source) του security association.
- Επίπεδο
ευαισθησίας της πληροφορίας (π.χ. Μυστική, μη κατηγοριοποιημένη)
Τα
security association είναι μιας κατεύθυνσης και σαν συνέπεια
θα πρέπει να δημιουργείται ένα για κάθε κατεύθυνση μια αμφίδρομης
σύνδεσης. Η δημιουργία ενός security association ξεκινάει από
την μηχανή που παίζει το ρόλο του αποστολέα για την συγκεκριμένη
κατεύθυνση της επικοινωνίας, ή οποία και στέλνει τις επιλογές
που εκφράζουν τις απαιτήσεις σε ασφάλεια της επικοινωνίας. Η
δημιουργία ολοκληρώνεται από την μηχανή παραλήπτη που απαντάει
με ένα νούμερο το λεγόμενο Δείκτη Παραμέτρων Ασφαλείας(Security
Parameters Index - SPI) για την συγκεκριμένη σύνδεση. Η αναγνώριση
του security association γίνεται για τον αποστολέα με το συνδυασμό
τoυ SPI και της ταυτότητας του χρήστη (userid), ενώ για τον
παραλήπτη από το συνδυασμό του SPI και την διεύθυνση προορισμού
του πακέτου. Τέλος πρέπει να σημειώσουμε ότι η μηχανισμοί ασφάλειας
μπορούν να χρησιμοποιηθούν και σε διευθύνσεις multicast.
2.4.4 Εφαρμογή
των μηχανισμών ασφαλείας
Οι
μηχανισμοί ασφάλειας του IP μπορούν να εφαρμοστούν σε παραλλαγές
που επιτρέπουν την συμμετοχή μηχανών που δεν έχουν στη στοίβα
τους, υποστήριξη για τους μηχανισμούς αυτούς. Οι τρεις δυνατές
περιπτώσεις περιγράφονται στην συνέχεια.
- Σταθμός
εργασίας με Σταθμό εργασίας
Σε αυτή την περίπτωση έχουμε επικοινωνία μεταξύ δύο υπολογιστών,
που έχουν και οι δύο την ικανότητα να χρησιμοποιήσουν τους
μηχανισμού ασφαλείας.
- Δρομολογητής/
Πύλη Ασφάλειας με Σταθμό εργασίας
Ο ένας
από τους δύο host είναι διαθέτει μηχανισμού ασφαλείας. Ο άλλος
host βρίσκεται σε κάποιο δίκτυο στο οποίο όλοι οι host θεωρούνται
έμπιστοι μεταξύ τους και ένα gateway αναλαμβάνει να διασφαλίσει
την ασφάλεια των επικοινωνιών με τον υπόλοιπο κόσμο εκτός
του εσωτερικού δικτύου.
- Δρομολογητής/
Πύλη Ασφάλειας με Δρομολογητή/ Πύλη Ασφάλειας
Τέλος
έχουμε την περίπτωση δύο δικτύων που εμπιστεύονται όλους τους
host που το καθένα περιλαμβάνει και επιθυμούν μιλήσουν μεταξύ
τους εξασφαλίζοντας ασφάλεια από το υπόλοιπο δύκτιο. Ουσιαστικά
αυτή η περίπτωση απεικονίζει ένα VPN. Εδώ βρίσκει εφαρμογή
το Tunnel επίπεδο λειτουργίας της μεθόδου IP Encapsulating
security Payload του IPv6.
2.4.5 Το κόστος
της αυξημένης ασφάλειας σε απόδοση
Η
αύξηση της ασφάλειας αυξάνει τον υπολογιστικό φόρτο για κάθε
πακέτο που δημιουργείται. Σαν αποτέλεσμα αυξάνεται η καθυστέρηση
μετάδοσης της πληροφορίας. Ειδικά για την περίπτωση IP Encapsulating
Security Payload η μείωση της απόδοσης του δικτύου μπορεί να
είναι ιδιαίτερα αισθητή. Η μείωση αυτή της απόδοσης περιορίζεται
μόνο στις μηχανές που συμμετέχουν στους μηχανισμούς ασφαλείας
και δεν επηρεάζει τους ενδιάμεσους δρομολογητές όταν δεν συμμετέχουν
στον μηχανισμό.
2.5
Αύξηση της απόδοσης με το IPv6
Η
αύξηση της απόδοσης στο IPv6 έχει δύο βασικές κατευθύνσεις:
1. Πρόβλεψη
για Εγγυημένη ποιότητα εξυπηρέτησης από το δίκτυο Q.o.S.
Η απαίτηση για Q.o.S. είναι μια απαίτηση που εμφανίζεται κυρίως
λόγο των νέων δικτυακών εφαρμογών πολυμέσων. Οι εφαρμογές
αυτές στις περισσότερες περιπτώσεις περιλαμβάνουν εικόνα,
ήχο, και αλληλεπίδραση ανάμεσα στους συμμετέχοντες, γεγονός
που απαιτεί επικοινωνία πραγματικού χρόνου (real time). Η
ιδιαιτερότητα αυτή μεταφράζεται σε σχέση με το δίκτυο σε δύο
πράγματα:
- Ο όγκος
των πληροφοριών είναι μεγάλος και στο μεγαλύτερο μέρος τους
έχουν ένα σταθερό ρυθμό bit κατά την διάρκεια της μετάδοσης
(Constant Bit Rate -CBR).
- Η ποιότητα
του αποτελέσματος επηρεάζεται σε πολύ μεγάλο βαθμό από την
καθυστέρηση που κατά περίπτωση μπορεί να υπάρχει στην μεταφορά
την πληροφορίας.
Αυτά
τα δύο βασικά σημεία κάνουν πολύ δύσκολη την χρησιμοποίηση των
εφαρμογών αυτών στο σημερινό Internet με το IPv4 το οποίο δεν
είχε σχεδιαστεί για μεταφορά πληροφορίας πραγματικού χρόνου.
Τέτοιου τύπου εφαρμογές είναι επιθυμητό να χρησιμοποιούν κανάλια
με μικρή καθυστέρηση και εάν είναι δυνατό μεγάλου bandwidth,
αλλά κανάλια που εισάγουν μεγάλη καθυστέρηση είναι άσχημη επιλογή
ανεξάρτητος του bandwidth που παρέχουν.
Στο
IPv6 αναπτύσσονται ειδικοί μηχανισμοί για να εξυπηρετήσουν την
νέα αυτή ανάγκη. Η ανάπτυξη όμως της δυνατότητας Q.o.S. είναι
αυτή τη στιγμή η πιο πειραματική από όλες τις άλλες δυνατότητες
που παρέχει το IPv6.
2. Βελτιωμένη
εσωτερική σχεδίαση του πρωτοκόλλου.
Η
επιλογή για σχεδίαση του πρωτοκόλλου IPv6 από την αρχή και όχι
απλά εξελίσσοντας τον κώδικα που είδη είναι γραμμένος για το
IPv4 παρέχει πλεονεκτήματα και στον τομέα της απόδοσης του IPv6.
2.5.1
Εγγυημένη Ποιότητας Εξυπηρέτησης από το Δίκτυο - Q.o.S.
Το
IPv6 λαμβάνει υπόψη τις νέες απαιτήσεις των σύγχρονων εφαρμογών
και περιλαμβάνει ειδικές τεχνικές για την επίτευξη της ποιότητας
εξυπηρέτησης που επιθυμεί η εκάστοτε εφαρμογή.
Το θεμέλιο του Q.o.S. μπαίνει στην επικεφαλίδα του IPv6 με τα
δύο παιδεία Priority και Flow Label που φαίνονται στο σχήμα
1.
2.5.1.1
Επίπεδα Προτεραιότητας (Priority Level)
Το
IPv6 χωρίζει την πληροφορία την οποία προωθεί σε κατηγορίες
με αντίστοιχες απαιτήσεις για ποιότητα εξυπηρέτησης - προτεραιότητα
(Priority).
Τα
επίπεδα προτεραιότητας χωρίζονται σε δύο βασικές κατηγορίες:
- Πληροφορίες
που έχουν μηχανισμούς αποτροπής κορεσμού του δικτύου (congestion-controlled
traffic) και περιγράφονται στον πίνακα που ακολουθεί.
Προτεραιότητα
|
Τύπος
πληροφορίας
|
0
|
μη
χαρακτηρισμένη πληροφορία
|
1
|
"filler"
traffic (π.χ., netnews)
|
2
|
Μη
παρακολουθούμενη μεταφορά μεγάλης ποσότητας δεδομένων
(π.χ. email)
|
3
|
μελλοντική
χρήση
|
4
|
Παρακολουθούμενη
μεταφορά μεγάλης ποσότητας δεδομένων (π.χ.., FTP,
NFS)
|
5
|
μελλοντική
χρήση
|
6
|
Αλληλεπιδραστική
πληροφορία
(π.χ
telnet, X Windows)
|
7
|
Πληροφορία
ελέγχου του Internet
(π.χ.
πρωτόκολλα δρομολόγησης, SNMP)
|
- Πληροφορίες
που δεν έχουν μηχανισμούς αποτροπής κορεσμού του δικτύου
(non-congestion-controlled traffic).
Αυτού
του είδους η πληροφορία έχει αριθμούς προτεραιότητας από 8-15.
Η μικρότερη προτεραιότητα θα πρέπει να χρησιμοποιείτε για πληροφορία
που η απώλεια της θα επηρεάσει λιγότερο σε περίπτωση κορεσμού
του δικτύου (π.χ. υψηλής ποιότητας εικόνα). Αντίστοιχα η μεγαλύτερη
θα πρέπει να χρησιμοποιείτε για πιο απαραίτητη πληροφορία όπως
χαμηλής ποιότητας ήχος.
2.5.1.2
Ροές Πληροφοριών (Flows)
Το
IPv6 εισάγει την έννοια της ροής πληροφορίας, θεωρώντας ότι
τα πακέτα της πληροφορίας ρέουν μέσα από ένα ιδεατό κανάλι.
Οι δρομολογητές που αποτελούν αυτό το ιδεατό κανάλι έχουν φροντίσει
με κάποιο μηχανισμό να παρακρατήσουν τους απαραίτητους πόρους
για την εξυπηρέτηση της ροής. Επιπλέον οι απαραίτητη υπολογισμοί
για την προώθηση κάθε πακέτου που ανήκει σε μια ροή γίνονται
μόνο για το πρώτο πακέτο της πληροφορίας και εφαρμόζονται σε
κάθε πακέτο της ίδιας ροής , γλυτώνοντας έτσι υπολογιστική ισχύς
στον δρομολογητή και μειώνοντας σημαντικά την καθυστέρηση δρομολόγησης
του πακέτου.
Η αναγνώριση της ροής στην οποία ανήκει το πακέτο επιτυγχάνεται
με το πεδίο Flow Label της επικεφαλίδας του IPv6.
2.5.1.3
Δημιουργία και κατάργηση ροών με το Πρωτόκολλο Παρακράτησης
Πόρων (Resource Reservation Protocol - RSVP)
Το RSVP
είναι ένα βοηθητικό πρωτόκολλο επιπέδου μεταφοράς (Transport
Level).
Επίπεδο
Μεταφοράς (TCP/UDP)
|
|
RSVP
|
Internet
επίπεδο (IP)
|
Επίπεδο
Σύνδεσης (Link Level)
|
Φυσικό
Επίπεδο (Physical Level)
|
Σχήμα
2.1 Επίπεδο λειτουργίας του RSVP
Το
RSVP χρησιμοποιείται από μια μηχανή για να πραγματοποιήσει την
αίτηση για ένα συγκεκριμένο επίπεδο εξυπηρέτησης (Q.o.S.) από
το δίκτυο, εκ’μέρους μιας εφαρμογής και από τους δρομολογητές
για να μοιράσουν την αίτηση για Q.o.S. κατά μήκος όλης της διαδρομής
που θα ακολουθήσει μια ροή και να παρακρατηθούν οι αντίστοιχη
πόροι (εάν είναι δυνατό) σε κάθε δρομολογητή.
Η
διαδικασία της παρακράτησης πόρων είναι δυνατό να επιτευχθεί
για συνδέσεις είτε unicast, είτε multicast εφαρμογών. Για να
επιτευχθεί καλύτερη απόδοση ειδικά σε εφαρμογές multicasting
το RSVP αφήνει τον παραλήπτη να δημιουργήσει την αίτηση για
Q.o.S. Η κατάσταση των ροών ανανεώνεται περιοδικά επιτρέποντας
την ανανέωση των στοιχείων μιας ροής, γεγονός που είναι ιδιαίτερα
χρήσιμο σε εφαρμογές multicasting, όπου μηχανές εισάγονται και
αφαιρούνται από τις ομάδες multicasting δυναμικά. Ένα σημαντικό
χαρακτηριστικό του RSVP είναι η δημιουργία ροών μιας κατεύθυνσης
ανεξάρτητα εάν η επικοινωνία είναι αμφίδρομη, πράγμα που σημαίνει
ότι για μια unicast εφαρμογή αμφίδρομης επικοινωνίας θα πραγματοποιηθούν
δύο αιτήσεις μία από κάθε μέλος της επικοινωνίας.
Στο
Σχήμα 2.2 παρουσιάζεται η λειτουργία του RSVP στην περίπτωση
επικοινωνίας 2 μηχανών (hosts) διάμεσο ενός ή περισσότερων δρομολογητών.
Κάθε μηχανή και δρομολογητής που παρέχει την δυνατότητα Q.o.S.
πρέπει οπωσδήποτε να περιέχει στο λειτουργικό του, τις διεργασίες
που παρουσιάζονται στον Πίνακας 2.1
Διεργασία
|
Λειτουργία
|
RSVP
|
Υλοποίηση
του πρωτοκόλλου RSVP
|
Admission
Control
|
Ελέγχει
εάν η μηχανή έχει την δυνατότητα να παρέχει το ζητούμενο
Q.o.S.
|
Policy
Control
|
Ελέγχει
εάν επιτρέπεται στον χρήστη το ζητούμενο Q.o.S.
|
Classifier
|
Καθορίζει
το Q.o.S και την διαδρομή κάθε εισερχόμενου πακέτου.
|
Packet
Scheduler
|
Λαμβάνει
αποφάσεις για την προώθηση των εξερχόμενων πακέτων
από ένα interface, έτσι ώστε να επιτευχθεί το επιθυμητό
Q.o.S.
|
Routing
|
Παρέχει
τις πληροφορίες με τις οποίες θα αποφασισθεί το μονοπάτι
που θα ακολουθήσει το πακέτο, ώστε να επιτευχθεί το
ζητούμενο Q.o.S.
|
Πίνακας
2.1 Λογικές μονάδες που απαιτούνται για την παροχή Q.o.S.
Για
να επιτευχθεί η επικοινωνία με την απαιτούμενη ποιότητα εξυπηρέτησης
από το δίκτυο ακολουθούνται τα παρακάτω βήματα:
1.
Η εφαρμογή στο Host A ζητάει το απαιτούμενο Q.o.S. από την
διεργασία RSVP του Host A
2. Η
διεργασία RSVP ζητάει από το Admission Control να γίνει έλεγχος
για την διαθεσιμότητα των απαιτούμενων πόρων.
3. Η
διεργασία RSVP ζητάει από το Policy control να γίνει έλεγχος
εάν ο χρήστης έχει άδεια να ζητήσει το συγκεκριμένο Q.o.S.
4. Εάν
τα βήματα 2 και 3 είναι επιτυχής τότε γίνεται η ρύθμιση του
packet scheduler και του classifier για την δημιουργία της
ροής. Σε αντίθετη περίπτωση επιστρέφεται ένα μήνυμα λάθους
στην αρχική εφαρμογή που ζήτησε το Q.o.S. και διαγράφονται
οι πληροφορίες σχετικά με την συγκεκριμένη ροή.
5. Μετά
την δημιουργία της ροής στην μηχανή, η διεργασία του RSVP
επικοινωνεί με την επόμενη μηχανή στην οποία θα σταλεί το
πακέτο (δρομολογητής ή τελικός παραλήπτης) και ζητάει και
σε αυτή την δημιουργία της αντίστοιχης ροής.
6. Τα
βήματα 2 έως 5 επαναλαμβάνονται μέχρι να δημιουργηθεί η ροή
σε όλες τις μηχανές από τις οποίες θα διέλθει το πακέτο και
στην μηχανή παραλήπτη.
7. Τα
βήματα 1 έως 6 επαναλαμβάνονται προς την αντίθετη φορά δηλαδή
από το Host B στο Host A.
Με
την ολοκλήρωση της διαδικασίας των επτά (7) βημάτων το δίκτυο
είναι έτοιμο να παρέχει το απαιτούμενο επίπεδο εξυπηρέτησης
στις εφαρμογές και η επικοινωνία μπορεί να αρχίσει. Σημειώστε
ότι η διαδικασία παρακράτησης πόρων είναι μια διαδικασία που
εκτελείται μόνο μια φορά σε κάθε δημιουργία ροής και για αυτό
δεν υπάρχει κάποιος μηχανισμός που να εγγυάται την επιτυχία
της.
Τέλος πρέπει να διευκρινίσουμε ότι η διαδικασία ελέγχου δεν
είναι μέρος του RSVP, το οποίο συμπεριφέρεται απλά σαν ένας
πράκτορας που μεταφέρει πληροφορίες χωρίς συγκεκριμένο νόημα
για τον ίδιο. Περισσότερες πληροφορίες για το πρωτόκολλο RSVP
υπάρχουν στο Internet Draft Resource ReSerVation Protocol (RSVP)
-- Version 1 Functional Specification, , λεπτομέρειες για την
μορφή και το περιεχόμενο των παραμέτρων του Q.o.S. βρίσκονται
στο: Wroclawski, J., "The Use of RSVP with Integrated Services",
<draft-ietf-intserv-rsvp-use.00.txt>, Integrated Services
Working Group, July 1996.
Σχήμα
2.2 Λειτουργία RSVP
2.5.2
Βελτίωση στην εσωτερική σχεδίαση του IPv6
Η
εμπειρία που έχει αποκτηθεί από την πολύχρονη χρήση και βελτίωση
του IPv4 οδήγησαν στην απόρριψη χαρακτηριστικών που αποδείχτηκαν
μη αποδοτικά ή δεν χρειάζονταν πλέον. Αυτές οι αλλαγές φαίνονται
καθαρά στην καινούργια μορφή της επικεφαλίδας του IPv6 η οποία
φαίνεται στο σχήμα 1:
Version
|
priority
|
Flow
Label
|
Payload
Length
|
Next
Header
|
Hop
Limit
|
Source
Address
|
Destination
Address
|
Σχήμα
2.3 Μορφή Επικεφαλίδας IPv6
Version
|
hlen
|
tos
|
length
|
fragid
|
flags
|
fragoff
|
ttl
|
protocol
|
checksum
|
source
address
|
destination
address
|
options
|
padding
|
Σχήμα
2.4 Μορφή Επικεφαλίδας IPv4
Πεδίο
Επικεφαλίδας
|
Μήκος
(bit)
|
Σύντομη
περιγραφή
|
Version |
4
|
Αριθμός
έκδοσης του IP (6) |
Priority |
4
|
Προτεραιότητα
πακέτου |
Flow
Label |
24
|
Αναγνωριστικό
ροής |
Payload
Length |
16
|
Μήκος
της μεταφερόμενης πληροφορίας που ακολουθεί την επικεφαλίδα. |
Next
Header |
8
|
Ο
τύπος της επικεφαλίδας που ακολουθεί μετά την επικεφαλίδα
του IPv6 |
Hop
Limit |
8
|
Μέγιστος
αριθμός δρομολογητών που επιτρέπεται να περάσει το πακέτο
πριν απορριφθεί. |
Source
Address |
128
|
Διεύθυνση
αποστολέα |
Destination
Address |
128
|
Διεύθυνση
παραλήπτη. |
Πίνακας
2.2 Πεδία της επικεφαλίδας του IPv6
Συγκρίνοντας
την επικεφαλίδα του IPv6 με την επικεφαλίδα του IPv4 στο σχήμα
2 αμέσως παρατηρούμε την απλοποίηση που έχει γίνει στην μορφή
της επικεφαλίδας κρατώντας μόνο τις άκρως απαραίτητες πληροφορίες.
Σαν αποτέλεσμα έχουμε διπλάσιο μήκος σε bit της επικεφαλίδας
του IPv6 σε σχέση με το IPv4 παρόλο που το μέγεθος των διευθύνσεων
έχει τετραπλασιαστεί. Η επιλογές πλέον προστίθονται σαν επιπλέον
επικεφαλίδες που ακολουθούν την επικεφαλίδα του IPv6 όταν αυτές
χρειάζονται.
Οι
σχεδιαστές για να μειώσουν τον χρόνο που ένας δρομολογητής χρειάζεται
για να επεξεργαστεί ένα πακέτο φρόντισαν ώστε :
- Οι δρομολογητές
να χρειάζεται να επεξεργαστούν το πολύ μια επιπλέον επιλογή
ενώ οι υπόλοιπες να ελέγχονται μόνο από τον παραλήπτη του
πακέτου.
- Το πακέτο
πρέπει να ξεκινάει από τον αποστολέα με κατάλληλο μέγεθος
ώστε να είναι δυνατή η μετάδοση του, από όλες της τεχνολογίες
δικτύου που πρόκειται να συναντήσει στην πορεία του, χρησιμοποιώντας
την τεχνική αναζήτησης της μέγιστης δυνατής μονάδας πληροφορίας
(Path MTU Discovery).
Τέλος
η δυνατότητα μεγάλων IP πακέτων (Jumbograms) που επιτρέπει το
μεγέθους του IP πακέτου να ξεπεράσει το όριο των 65Kb που θέτει
το IPv4 επιτρέπει την καλύτερη εκμετάλλευση των νέων τεχνολογιών
δικτύων υψηλών ταχυτήτων όπως ATM, GigaBit Ethernet, κ.α.
|