1. Εισαγωγή 1. 1-1. Σύγκριση κυψελωτού δικτύου με ad hoc δίκτυο 4. 2. Οι αλγόριθμοι δρομολόγησης στα δίκτυα ad hoc 7



Σχετικά έγγραφα
Εργαστήριο 4 Πρωτόκολλα Δρομολόγησης

Ερώτηση 1 η μεταγωγής κυκλώματος? : Ποια είναι τα κύρια χαρακτηριστικά της. Ερώτηση 2 η : Ποια είναι τα κύρια χαρακτηριστικά της μεταγωγής μηνύματος?

ΕΛΕΓΧΟΣ ΣΥΜΦΟΡΗΣΗΣ ΣΕ ΑΣΥΡΜΑΤΑ ΔΙΚΤΥΑ

Τοπικά Δίκτυα. Ethernet Δίκτυα Δακτυλίου, (Token Ring) Άλλα Δίκτυα Σύνδεση Τοπικών Δικτύων.

Κεφάλαιο 1 Ε Π Α Ν Α Λ Η Ψ Η. Αρχές Δικτύων Επικοινωνιών

Διάρθρωση. Δίκτυα Υπολογιστών I Δίκτυα άμεσου συνδέσμου: Μέρος Α. Διάρθρωση. Δίκτυα άμεσου συνδέσμου και μοντέλο OSI (1/2) Ευάγγελος Παπαπέτρου

Διάρθρωση. Δίκτυα Υπολογιστών I Δίκτυα άμεσου συνδέσμου: Μέρος Α. Διάρθρωση. Δίκτυα άμεσου συνδέσμου και μοντέλο OSI (1/2) Ευάγγελος Παπαπέτρου

Δίκτυα Υπολογιστών I

ΚΕΦΑΛΑΙΟ 1: Τα είδη των Δικτύων Εισαγωγή

Αρχές Δικτύων Επικοινωνιών. Επικοινωνίες Δεδομένων Μάθημα 4 ο

Περίληψη. Ethernet Δίκτυα Δακτυλίου, (Token Ring) Άλλα Δίκτυα Σύνδεση Τοπικών Δικτύων.

2 η Σειρά Ασκήσεων Data Link Layer

Εισαγωγή - ορολογία. Προώθηση (forwarding): Δρομολόγηση (routing):

Δίκτυα Υπολογιστών Εργαστήρια

Πρωτόκολλα Ελέγχου προσπέλασης μέσου

Δίκτυα Τηλεπικοινωνιών. και Μετάδοσης

ZigBee. Φοιτητής: Μόσχογλου Στυλιανός Επιβλέπων καθηγητής: κ. Δοκουζγιάννης Σταύρος

Μάθημα 3: Τοπολογίες Δικτύων

ΙΚΤΥΑ ΕΠΙΚΟΙΝΩΝΙΩΝ Ασκήσεις για το φυσικό στρώμα. λ από τον ρυθμό μετάδοσής της. Υποθέτοντας ότι ο κόμβος A

Δίκτυα Υπολογιστών I

Κεφάλαιο 5: Τοπικά ίκτυα

ΔΙΚΤΥΑ ΥΠΟΛΟΓΙΣΤΩΝ Ι. Σημειώσεις Θεωρίας

Υλοποίηση Δικτυακών Υποδομών και Υπηρεσιών: Δρομολόγηση

Υπόστρωμα Ελέγχου Πρόσβασης Μέσου. Medium Access Control Sub-layer.

Λύση: Λύση: Λύση: Λύση:

Διάρθρωση. Δίκτυα Υπολογιστών I Βασικές Αρχές Δικτύωσης. Διάρθρωση. Δίκτυο Υπολογιστών: ένας απλός ορισμός. Ευάγγελος Παπαπέτρου

Δροµολόγηση (Routing)

Κεφάλαιο 1 Ε Π Α Ν Α Λ Η Ψ Η

ΕΠΙΚΟΙΝΩΝΙΕΣ ΔΕΔΟΜΕΝΩΝ ΚΑΙ ΤΕΧΝΟΛΟΓΙΕΣ INTERNET

Δρομολόγηση (Routing)

ΔΙΚΤΥΑ ΕΠΙΚΟΙΝΩΝΙΩΝ Ασκήσεις για το φυσικό στρώμα

Το Ασύρματο Δίκτυο TETRA. Αντωνίου Βρυώνα (Α.Μ. 1019)

Ethernet Ethernet ΙΕΕΕ CSMA/CD

Δίκτυα Υπολογιστών I

Κεφάλαιο 3 Πολυπλεξία

ίκτυα ίκτυο υπολογιστών: Ένα σύνολο από υπολογιστικές συσκευές που συνδέονται µεταξύ τους για σκοπούς επικοινωνίας και χρήσης πόρων. Συνήθως, οι συσκε

ΒΑΣΙΚΕΣ ΥΠΗΡΕΣΙΕΣ Βελώνης Γεώργιος ΤΟΥ ΔΙΑΔΙΚΤΥΟΥ. Μάθημα 2ο. Βελώνης Γεώργιος - 1ο Τ.Ε.Ε. Κατερίνης. Καθηγητής Πληροφορικής ΠΕ20 2-1

ΤΙΤΛΟΣ ΜΑΘΗΜΑΤΟΣ: Δίκτυα Μεταγωγής & Τεχνικές Μεταγωγής Σε Δίκτυα Ευρείας Περιοχής

Ad Hoc Routing Πρωτόκολλα. Κατηγορίες και κύρια πρωτόκολλα

ΕΠΙΚΟΙΝΩΝΙΕΣ ΔΕΔΟΜΕΝΩΝ ΚΑΙ ΤΕΧΝΟΛΟΓΙΕΣ INTERNET

T.E.I. ΗΠΕΙΡΟΥ ΤΜΗΜΑ ΤΗΛΕΠΛΗΡΟΦΟΡΙΚΗΣ & ΔΙΟΙΚΗΣΗΣ ΠΤΥΧΙΑΚΗ ΕΡΓΑΣΙΑ

ΕΠΛ 476: ΚΙΝΗΤΑ ΔΙΚΤΥΑ ΥΠΟΛΟΓΙΣΤΩΝ (MOBILE NETWORKS)

Δίκτυα Υπολογιστών. Δίκτυα υπολογιστών και το Διαδίκτυο Ο πυρήνας του δικτύου. Κ. Βασιλάκης

1 η ΣΕΙΡΑ ΑΣΚΗΣΕΩΝ. / 2. Οι όροι Eb. και Ec

Στόχοι. Υπολογιστικά συστήματα: Στρώματα. Βασικές έννοιες [7]

ΕΠΛ 001: ΕΙΣΑΓΩΓΗ ΣΤΗΝ ΕΠΙΣΤΗΜΗ ΤΗΣ ΠΛΗΡΟΦΟΡΙΚΗΣ. Δίκτυα Υπολογιστών

ΤΕΧΝΟΛΟΓΙΑ ΔΙΚΤΥΩΝ ΕΠΙΚΟΙΝΩΝΙΩΝ 1 ο ΚΕΦΑΛΑΙΟ

Νέες Επικοινωνιακές Τεχνολογίες

ΓΡΑΠΤΕΣ ΠΡΟΑΓΩΠΚΕΣ ΕΞΕΤΑΣΕΙΣ ΜΑΪΟΥ / ΙΟΥΝΙΟΥ 2014

Δίκτυα Κινητών και Προσωπικών Επικοινωνιών

Κινητές επικοινωνίες. Κεφάλαιο 3 Ένταση κίνησης σε δίκτυο

Κινητό τηλέφωνο. Κινητό τηλέφωνο

Δίκτυα Υπολογιστών. Δίκτυα υπολογιστών και το Διαδίκτυο Ο πυρήνας του δικτύου. Κ. Βασιλάκης

Εγγυημένη ποιότητα υπηρεσίας

ΔΙΑΣΥΝΔΕΣΗ ΔΙΚΤΥΩΝ (INTERNETWORKING)

Οι βασικές βαθμίδες του συστήματος των δορυφορικών επικοινωνιών δίνονται στο παρακάτω σχήμα :

Μάθημα 5: To Μοντέλο Αναφοράς O.S.I.

ΤΜΗΜΑ ΠΛΗΡΟΦΟΡΙΚΗΣ ΜΕΤΑΠΤΥΧΙΑΚΟ ΠΡΟΓΡΑΜΜΑ ΣΠΟΥΔΩΝ «ΠΡΟΗΓΜΕΝΕΣ ΔΙΚΤΥΑΚΕΣ ΤΕΧΝΟΛΟΓΙΕΣ» ΔΡΟΜΟΛΟΓΗΣΗ ΣΕ AD HOC ΔΙΚΤΥΑ. Γενικά

ιαδίκτυα & Ενδοδίκτυα Η/Υ

ΔΙΚΤΥΑ ΕΠΙΚΟΙΝΩΝΙΩΝ. Ιωάννης Σταυρακάκης, Καθηγητής Password: edi

Κινητές επικοινωνίες. Κεφάλαιο 7 Άσκηση επανάληψης Καθολική σχεδίαση δικτύου

HY-335 : Δίκτυα Υπολογιστών

Τοπικά Δίκτυα Local Area Networks (LAN)

Ιατρική Πληροφορική. Δρ. Π. ΑΣΒΕΣΤΑΣ ΤΜΗΜΑ ΜΗΧΑΝΙΚΩΝ ΒΙΟΪΑΤΡΙΚΗΣ ΤΕΧΝΟΛΟΓΙΑΣ Τ. Ε. Χρήσιμοι Σύνδεσμοι

1.5.1 ΓΕΦΥΡΑ (BRIDGE) Εικόνα Επίπεδα λειτουργίας επαναλήπτη, γέφυρας, δρομολογητή και πύλης ως προς το μοντέλο OSI.

Άσκηση 1. (σημειώστε πως 1KB = 2 10 bytes, 1Mbps = 10 6 bits/sec).

ΔΙΚΤΥΑ ΕΠΙΚΟΙΝΩΝΙΩΝ. Ιωάννης Σταυρακάκης, Καθηγητής Password: edi

Αυτόνομα Συστήματα (ΑΣ)

ΤΕΧΝΟΛΟΓΙΑ ΔΙΚΤΥΩΝ ΕΠΙΚΟΙΝΩΝΙΩΝ 5ο ΚΕΦΑΛΑΙΟ

1.1 Επαναλήπτες (repeaters ή regenerators)

Φροντιστήριο στο Mac Layer Καραγκούνης Δημήτρης

Δίκτυα Κινητών και Προσωπικών Επικοινωνιών

Τηλεματική, Διαδίκτυα και Κοινωνία Κυψελωτή Τηλεφωνία

Κατανεμημένα Συστήματα Ι

Διάρθρωση. Δίκτυα Υπολογιστών I Δίκτυα Μεταγωγής και Διαδίκτυα: Μέρος Γ. Διάρθρωση. Σκοπός της Δρομολόγησης. Ευάγγελος Παπαπέτρου

Δίκτυα Επικοινωνιών ΙΙ: Δρομολόγηση

ΔΙΚΤΥΑ ΕΠΙΚΟΙΝΩΝΙΩΝ Ασκήσεις στα Τοπικά Δίκτυα

Βασικές έννοιες και ιστορική αναδρομή

Βασικές έννοιες και ιστορική αναδρομή

Κινητές επικοινωνίες. Κεφάλαιο 6 Τεχνικές πoλυπλεξίας - CDMA

Βασικές έννοιες και ιστορική αναδρομή

Δίκτυα Υπολογιστών I

ΤΕΙ ΗΠΕΙΡΟΥ ΣΧΟΛΗ ΔΙΟΙΚΗΣΗΣ ΚΑΙ ΟΙΚΟΝΟΜΙΑΣ ΤΜΗΜΑ ΤΗΛΕΠΛΗΡΟΦΟΡΙΚΗΣ ΚΑΙ ΔΙΟΙΚΗΣΗΣ

- Δομή πλαισίου Ethernet - Πλαίσια Ethernet μεγάλου μεγέθους (Jumbo frames)

Διασύνδεση τοπικών δικτύων

Δίκτυα ΙΙ. Κεφάλαιο 7

ΚΕΦΑΛΑΙΟ 1.7. Πρωτόκολλα και Αρχιτεκτονική Δικτύου

ΕΠΙΚΟΙΝΩΝΙΑ Ε ΟΜΕΝΩΝ & ΙΚΤΥΑ ΥΠΟΛΟΓΙΣΤΩΝ. Στόχοι κεφαλαίου

Ενότητα 1. Εισαγωγή στις βασικές έννοιες των ικτύων ΗΥ

ΕΛΛΗΝΙΚΟ ΑΝΟΙΚΤΟ ΠΑΝΕΠΙΣΤΗΜΙΟ

ΕΠΛ 003: ΕΠΙΣΤΗΜΗ ΤΗΣ ΠΛΗΡΟΦΟΡΙΚΗΣ ΚΑΙ ΠΛΗΡΟΦΟΡΙΚΑ ΣΥΣΤΗΜΑΤΑ

Α5.1 Εισαγωγή στα Δίκτυα. Α Λυκείου

Δίκτυα Υπολογιστών I Εργαστήρια

Πρωτόκολλα Διαδικτύου

Πολυμέσα σε Δίκτυα Κινητών Συσκευών

Πτυχιακή Εργασία. Ασύρματα Δίκτυα της Τεχνολογίας Hot Spot

8 η ιάλεξη: σε δίκτυα δεδομένων

AEI Πειραιά Τ.Τ. Τμ. Μηχ/κων Αυτοματισμού ΤΕ. Δίκτυα Μετάδοσης Δεδομένων. Διάλεξη 1: Εισαγωγή στα δίκτυα υπολογιστών και βασικές αρχές

ΤΕΙ Κρήτης, Παράρτηµα Χανίων

Συνδεσιμότητα κινητού τηλεφώνου

Transcript:

Περιεχόμενα 1. Εισαγωγή 1 1-1. Σύγκριση κυψελωτού δικτύου με ad hoc δίκτυο 4 1-2. Η έρευνα στα ad hoc δίκτυα 6 2. Οι αλγόριθμοι δρομολόγησης στα δίκτυα ad hoc 7 2-1. Ο αλγόριθμος δρομολόγησης Fisheye State Routing (FSR) 10 3. Πρωτόκολλο πολλαπλής πρόσβασης 15 3-1. Το πρωτόκολλο Cluster Token 15 3-2. Φάση ελέγχου 16 3-3. Αλγόριθμος δημιουργίας κυψελών 17 3-4. Φάση πληροφορίας 20 3-5. Σχολιασμός της απόδοσης του Cluster Token 21 4. Προσομοίωση ενός δικτύου ad hoc 22 4-1.Αποτελέσματα προσομοίωσης 24 5. Το πρωτόκολλο Two-Hop Polling (2HP) 28 5-1. Προσομοίωση 30 6. Συμπεράσματα 34 Παράρτημα Α: Ψευδοκώδικας του αλγορίθμου δρομολόγησης FSR 35 Παράρτημα Β: Βιβλιογραφία 41

1. ΕΙΣΑΓΩΓΗ Οι ασύρματες επικοινωνίες είναι ένας από τους ταχύτερα αναπτυσσόμενους τομείς στο χώρο των τηλεπικοινωνιών. Τα τελευταία χρόνια οι φορητοί υπολογιστές γνώρισαν μια τεράστια αύξηση της δημοτικότητας τους. Η συνεχόμενη σμίκρυνση των συσκευών σε συνδυασμό με την αύξηση της υπολογιστικής ισχύς προσφέρουν περισσότερες και καλύτερες εφαρμογές στη διάθεση των χρηστών τους, οι οποίοι αποτελούν ένα κομμάτι του πληθυσμού το οποίο μεγαλώνει. Όσο οι φορητές υπολογιστικές συσκευές καθώς και οι τηλεπικοινωνιακές συσκευές γίνονται πιο δημοφιλείς, τόσο αυξάνεται και οι ζήτηση για δικτύωση τους. Ακόμα και τα πρώτα φορητά τηλέφωνα είχαν την ικανότητα να συνδέονται με άλλα τηλέφωνα. Οι πρώτοι φορητοί υπολογιστές δεν είχαν αυτήν τη δυνατότητα, αλλά σύντομα τα modem έγιναν ευρέως διαδεδομένα. Για να μπουν στο δίκτυο, αυτοί οι υπολογιστές έπρεπε να συνδεθούν με το τηλεφωνικό δίκτυο μέσω καλωδίου, με αποτέλεσμα οι υπολογιστές να είναι φορητοί αλλά όχι κινητοί. Για να γίνουν οι υπολογιστές πραγματικά κινητοί πρέπει η επικοινωνία να στηρίζεται σε ασύρματες και όχι ενσύρματες ζεύξεις. Τον τελευταίο καιρό, λοιπόν, τα ασύρματα δίκτυα παρουσιάζουν ιδιαίτερο ενδιαφέρον. Ένα από τα πιο σημαντικά παραδείγματα είναι το δίκτυο κινητής τηλεφωνίας, το οποίο σε ελάχιστο χρόνο κατέφερε να κερδίσει μεγάλο ποσοστό του πληθυσμού και να έχει την πιο γρήγορη διείσδυση στις δυτικές χώρες. Σύμφωνα με προβλέψεις, μέχρι το έτος 2002 περισσότερες από 200 εκατομμύρια συσκευές κινητής τηλεφωνία θα πωλούνται ετησίως, ενώ οι συνολικοί χρήστες θα ανέρχονται στο ένα δισεκατομμύριο. Αν και τα δίκτυα αυτά και συγκεκριμένα το GSM το οποίο προτάθηκε το 1992 από τον τηλεπικοινωνιακό ερευνητικό οργανισμό της ευρωπαϊκής 1

ένωσης ETSI, είναι από τις αρτιότερες σχεδιάσεις, σταδιακά αυξάνεται η ζήτηση για υπηρεσίες τις οποίες τα δίκτυα αυτά δεν είναι σε θέση να παρέχουν. Ειδικότερα, το παρόν πρότυπο κινητής τηλεφωνίας GSM δίνει πολύ μικρό εύρος ζώνης (bandwidth) στους συνδρομητές. Συνεπώς τα κινητά τηλέφωνα είναι περιορισμένα στη μετάδοση φωνής (η οποία με χρήση των κατάλληλων κωδικοποιητών απαιτεί ελάχιστο εύρος ζώνης), στη μετάδοση μικρών μηνυμάτων (υπηρεσία SMS) και σε εφαρμογές που ανταλλάσσουν μικρό όγκο δεδομένων, για παράδειγμα WAP. Για μεταφορά δεδομένων η ταχύτητα είναι περιορισμένη στα 9600 bps η οποία θεωρείται πολύ μικρή συγκρινόμενη με τα σημερινά δεδομένα. Ωστόσο, το δίκτυο κινητής τηλεφωνίας δεν είναι αμιγώς ασύρματο. Το δίκτυο είναι χτισμένο επάνω στο προϋπάρχον ενσύρματο δίκτυο τηλεφωνίας. Η επικοινωνία στηρίζεται στις ενσύρματες γραμμές που συνδέουν τις κεραίες του παροχέα κινητής τηλεφωνίας μεταξύ τους (backbone). Πρακτικά το δίκτυο κινητής τηλεφωνίας αποτελεί την επέκταση του ενσύρματου δικτύου τηλεφωνίας κατά ένα ασύρματο άλμα. Οι κεραίες αποτελούν πύλες που συνδέουν τα ασύρματα τερματικά (τηλέφωνα) με τον ενσύρματο δίκτυο, με αποτέλεσμα η μεταφορά των δεδομένων ή της φωνής ουσιαστικά να γίνεται ενσύρματα Για παράδειγμα δύο κινητά τηλέφωνα που βρίσκονται σε πολύ μικρή απόσταση δεν μπορούν να επικοινωνήσουν μεταξύ τους αν βρίσκονται εκτός της εμβέλειας μιας σταθερής κεραίας του παροχέα. Οποιοδήποτε μήνυμα δεν μπορεί να διαδοθεί απευθείας από τηλέφωνο σε τηλέφωνο, αντιθέτως η μετάδοση θα γίνει μέσω μιας σταθερής κεραίας. Το δίκτυο κινητής τηλεφωνίας, λοιπόν, απαιτεί μια υποδομή η οποία σε πολλές περιπτώσεις δεν γίνεται να υπάρχει είτε λόγω κόστους είτε επειδή το δίκτυο πρέπει να στηθεί σε ελάχιστο χρόνο. 2

Αυτές τις ελλείψεις των δικτύων κινητής τηλεφωνίας έρχονται να καλύψουν τα δίκτυα ad hoc. Ως ad hoc ορίζεται οποιοδήποτε ασύρματο δίκτυο το οποίο είναι ικανό να αυτοοργανώνεται και να αυτορυθμίζεται με τη δυνατότητα να στήνεται ταχύτατα ανάλογα με τις ανάγκες. Τα μηνύματα στα ad hoc δίκτυα σε αντίθεση με τα κυψελωτά δίκτυα μπορούν να κάνουν παραπάνω από ένα άλμα (hop) ασύρματα μέχρι να παραδοθούν στον τελικό τους προορισμό. Τα τερματικά σε αυτά τα δίκτυα παίζουν έναν ενεργό ρόλο στη δρομολόγηση των μηνυμάτων. Κάθε τερματικό δρομολογεί τα πακέτα που έχει κατά τον βέλτιστο τρόπο σύμφωνα με την εικόνα που έχει για το συνολικό δίκτυο στην εκάστοτε στιγμή. Τα δίκτυα αυτά επομένως είναι στιβαρά και ανθεκτικά στις βλάβες άλλων τερματικών. Το δίκτυο θα οργανωθεί για να αντισταθμίσει οποιαδήποτε αλλαγή στην τοπολογία του δικτύου. Τα παραπάνω χαρακτηριστικά κάνουν τα δίκτυα αυτά ιδιαίτερα ελκυστικά για στρατιωτικές εφαρμογές καθώς και για χρήση στα σώματα ασφαλείας (αστυνομία, πυροσβεστική). Εχθρικά περιβάλλοντα όπως η περιοχή μιας ξένης χώρας ή ακατοίκητες περιοχές καθιστούν την ανάπτυξη ενσύρματης υποδομής απαγορευτική, καθώς δεν μπορεί να αναπτυχθεί σε μικρό χρονικό διάστημα και επιπλέον είναι πολυέξοδη τόσο σε υλικό όσο και σε έμψυχο επίπεδο. Τα δίκτυα αυτά επίσης μπορούν να απευθυνθούν και σε πολιτικές / καταναλωτικές εφαρμογές, όπως για παράδειγμα εκθέσεις και συνέδρια όπου η ανάγκη για δικτύωση χρειάζεται για ένα μικρό χρονικό διάστημα, τέτοιο που να μην δικαιολογεί την εγκατάσταση ενός ενσύρματου δικτύου. Τα τερματικά ενός ad hoc δικτύου υποστηρίζουν πολυμέσα (ήχος και εικόνα) καθώς και μεταφορές δεδομένων ευρείας ζώνης. Η κινητικότητα των τερματικών του δικτύου, ο μεγάλος ενδεχομένως αριθμός των τερματικών που συνιστούν το δίκτυο και οι περιορισμένοι πόροι (για παράδειγμα το εύρος ζώνης και η ισχύς) καθιστούν δύσκολο το σχεδιασμό ενός τέτοιου δικτύου. Η πολλαπλή πρόσβαση απαιτεί 3

πρωτόκολλα τα οποία θα εξασφαλίζουν την αξιοποίηση του διαθέσιμου εύρους ζώνης κατά τον βέλτιστο τρόπο, γεγονός δύσκολο δεδομένης της έλλειψης κεντρικού συντονισμού, όπως στην περίπτωση των κυψελωτών δικτύων. Οι αλγόριθμοι δρομολόγησης επίσης θα πρέπει να προσαρμόζονται γρήγορα στις συχνές και απροσδόκητες μεταβολές της τοπολογίας, ενώ από την άλλη θα πρέπει να είναι φειδωλοί στην κατανάλωση επικοινωνιακών και υπολογιστικών πόρων. Στην παρούσα διπλωματική εξετάζεται ένα δίκτυο ad hoc στα 2 από τα 3 κατώτερα επίπεδα του μοντέλου OSI και συγκεκριμένα στο επίπεδο πολλαπλής πρόσβασης (MAC layer) και στο επίπεδο δικτύου (Network Layer). 1-1. Σύγκριση κυψελωτού δικτύου με ad hoc δίκτυο. Σχήμα 1. Τυπικό ad hoc δίκτυο Η μεγαλύτερη διαφορά των δικτύων έγκειται στη διαφορετική τοπολογία τους. Σε ένα ad hoc δίκτυο όλα τα τερματικά είναι ισοδύναμα. Κατά την μεταφορά ενός μηνύματος από ένα τερματικό σε ένα άλλο, διάφορα ενδιάμεσα τερματικά 4

συνεισφέρουν στην μεταφορά του μηνύματος. Στο σχήμα 1 παρουσιάζεται μια τυπική τοπολογία ενός ad hoc δικτύου. Τρεις διαφορετικοί τύποι τερματικών αποτελούν το δίκτυο. Κινητά τηλέφωνα, υπολογιστές παλάμης (palm tops) και φορητοί υπολογιστές είναι από τις συσκευές οι οποίες θα χρησιμοποιηθούν περισσότερο στα ad hoc δίκτυα. Όπως φαίνεται και από το σχήμα όλες οι πιθανές ζεύξεις χρησιμοποιούνται για τη μεταφορά δεδομένων, τα οποία είναι πραγματικού (φωνή, video) και μη πραγματικού χρόνου. Αντιθέτως στο σχήμα 2 παρουσιάζεται ένα τυπικό κυψελωτό δίκτυο κινητής τηλεφωνίας. Σε κάθε κυψέλη ουσιαστικά δημιουργείται ένα δίκτυο αστέρος με κεντρικό κόμβο την σταθερή κεραία του παροχέα. Αυτή η τοπολογία με συγκεντρωτικό έλεγχο αν και λύνει πολλά προβλήματα όπως το μοίρασμα του φάσματος στα τερματικά, καθιστά το δίκτυο ιδιαίτερα ευαίσθητο σε βλάβες τις κεντρικής κεραίας, οπότε και ολόκληρο το δίκτυο τίθεται εκτός λειτουργίας. Σε ένα ad hoc δίκτυο δεν υπάρχει τερματικό του οποίου Σχήμα 2. Τυπική κυψέλη δικτύου κινητής τηλεφωνίας 5

βλάβη θα προκαλέσει πτώση ολόκληρου του δικτύου. Αντιθέτως είτε θα υπολογιστούν καινούριες διαδρομές (routes) είτε στην χειρότερη περίπτωση μερικοί σταθμοί θα απομονωθούν από το δίκτυο. Επίσης για λόγους εύρους φάσματος τα παρόντα κυψελωτά δίκτυα κινητής τηλεφωνίας υποστηρίζουν λίγες υπηρεσίες όπως μετάδοση φωνής, αποστολή μικρών γραπτών μηνυμάτων και στοιχειώδεις δυνατότητες μεταφοράς δεδομένων. Τα ad hoc δίκτυα με ταχύτητες που αγγίζουν και τα 24 Mbps μπορούν να ανταποκριθούν σε ένα πολύ μεγαλύτερο φάσμα εφαρμογών. 1-2. Η έρευνα στα ad hoc δίκτυα Οι οργανισμοί που ασχολούνται εντατικά με την μελέτη ad hoc δικτύων είναι δύο. Το ινστιτούτο IEEE έχει δημιουργήσει την επιτροπή 802.11 [1] η οποία έχει εκδώσει το ομώνυμο σύνολο οδηγιών προς τους κατασκευαστές ασύρματων τοπικών δικτύων. Το 802.11 θεωρήθηκε αρχικά υπερβολικά ελαστικό αφήνοντας πολλά περιθώρια στους κατασκευαστές να προσθαφαιρέσουν λειτουργίες με αποτέλεσμα να βρίσκεται υπό αμφισβήτηση η αρμονική λειτουργία δικτύων που αποτελούνται από τερματικά διαφορετικών κατασκευαστών. Παρόλα αυτά με την πάροδο του χρόνου επεβλήθησαν σταδιακά από την αγορά και από μεταγενέστερες εκδόσεις του 802.11 οι τελικές προδιαγραφές του προτύπου. Επίσης, οι ταχύτητες μετάδοσης δεδομένων που ορίζει το 802.11 θεωρούνται μικρές αφού κυμαίνονται μεταξύ των 2 και 11 Mbps. Στην Ευρώπη, ο οργανισμός ETSI έχει ήδη εκδώσει οδηγίες για το HIPERLAN/1 [2], αλλά τώρα προχωράει στην μελέτη μιας καινούριας έκδοσης υποσχόμενη υψηλότερες ταχύτητες ονομαζόμενης HIPERLAN/2. 6

2. ΟΙ ΑΛΓΟΡΙΘΜΟΙ ΔΡΟΜΟΛΟΓΗΣΗΣ ΣΤΑ ΔΙΚΤΥΑ AD HOC Ένα από τα πιο ενδιαφέροντα θέματα στις μελέτες των ad hoc δικτύων αφορά το αν οι κόμβοι στο δίκτυο θα πρέπει να γνωρίζουν τις διαδρομές προς όλους τους άλλους κόμβους ή θα πρέπει να γνωρίζουν τις διαδρομές προς του κόμβους που τους ενδιαφέρουν άμεσα μόνο. Ένας κόμβος σε ένα ad hoc δίκτυο δεν χρειάζεται να γνωρίζει τη διαδρομή προς κάποιο άλλο κόμβο μέχρις ότου αυτός ο προορισμός θα αποτελέσει αποδέκτη των πακέτων που θα αποστείλει αυτός ο κόμβος, είτε ως ο αρχικός αποστολέας του πακέτου, είτε ως ένας ενδιάμεσος κόμβος κατά μήκος της διαδρομής μεταξύ αποστολέα και παραλήπτη. Τα πρωτόκολλα που καταγράφουν τις διαδρομές προς κάθε κόμβο του δικτύου έχουν το πλεονέκτημα ότι η επικοινωνία προς έναν τυχαίο προορισμό γνωρίζει ελάχιστη αρχική καθυστέρηση, καθώς η διαδρομή που θα ακολουθήσουν τα πακέτα επιλέγεται αμέσως από τον πίνακα όπου είναι αποθηκευμένες οι διαδρομές προς όλους του κόμβους του δικτύου. Αυτά τα πρωτόκολλα ονομάζονται proactive γιατί αποθηκεύουν πληροφορίες για διαδρομές ακόμα και πριν αυτές χρειαστούν. Ονομάζονται επίσης και table driven γιατί οι διαδρομές είναι διαθέσιμες ως μέρος ενός πίνακα. Τα πρωτόκολλα αυτής της κατηγορίας έχουν χρησιμοποιηθεί κατά κόρον στα ενσύρματα δίκτυα και στο διαδίκτυο (internet). Πολλά πρωτόκολλα που προτείνονται για χρήση σε ad hoc δίκτυα αποτελούν προσαρμογές ήδη δοκιμασμένων πρωτοκόλλων στο ιδιαίτερα απαιτητικό περιβάλλον ενός ασύρματου δικτύου. Παραδείγματα πρωτοκόλλων αυτής της κατηγορίας είναι τα FSR (Fisheye State Routing), GSR (Global State Routing), DSDV (Destination-Sequenced Distance Vector). 7

Τα πρωτόκολλα αυτού του τύπου όμως έχουν το μειονέκτημα του επιπλέον φόρτου στο δίκτυο για μηνύματα ελέγχου τα οποία χρειάζονται ώστε συνεχώς να ανανεώνονται οι πίνακες με τις διαδρομές ώστε να ανταποκρίνονται στην πραγματική τοπολογία του δικτύου. Όλα τα τερματικά στο δίκτυο κινούνται, με αποτέλεσμα οι διαδρομές να ακυρώνονται, καθώς δυο κινητοί κόμβοι οι οποίοι είχαν καταστήσει μια ζεύξη μεταξύ τους δεν είναι πλέον σε θέση να την κρατήσουν αφού απομακρύνθηκαν, και εν τέλει δεν μπορούν να συντηρήσουν οποιαδήποτε διαδρομή η οποία στηριζόταν σε αυτήν την ζεύξη. Αν οι διαδρομές οι οποίες καταστράφηκαν πρέπει να ξαναυπολογιστούν, ακόμα και αν καμία εφαρμογή δεν τις χρησιμοποιεί την δεδομένη στιγμή, η διαδικασία της επισκευής της διαδρομής μπορεί να θεωρηθεί μάταια. Αυτή η προσπάθεια αποτελεί σπατάλη ενός ήδη πολύτιμου εύρους ζώνης, ενώ προκαλείται επιπλέον συμφόρηση σε ενδιάμεσα σημεία του δικτύου καθώς τα πακέτα ελέγχου καταλαμβάνουν πολύτιμο χώρο στις ουρές (queues) των τερματικών. Συνήθως τα πακέτα ελέγχου μπαίνουν μπροστά στις ουρές, με αποτέλεσμα στα σημεία συμφόρησης να χάνονται πακέτα δεδομένων. Απώλεια πακέτων δεδομένων σημαίνει επανεκπομπή, καθυστέρηση και επιδείνωση της συμφόρησης. Τα proactive πρωτόκολλα συμπεριφέρονται καλά για μεγάλο φόρτο δικτύου αλλά η πρακτικότητα τους ελαχιστοποιείται καθώς το δίκτυο περιλαμβάνει μεγαλύτερο αριθμό κόμβων. Σε μεγάλο φόρτο δικτύου κάθε κόμβος χρησιμοποιεί ταυτόχρονα πολλές διαδρομές, οι οποίες είναι εκ των προτέρων υπολογισμένες, με αποτέλεσμα να μην επιβαρύνεται η λειτουργία του δικτύου. Όταν όμως ο πληθυσμός του δικτύου αυξάνεται κάθε κόμβος πρέπει να αποθηκεύει μεγάλους πίνακες στην μνήμη του και να υπολογίζει όλες τις διαδρομές τις οποίες ενδεχομένως να χρειαστεί. Αυτό έχει ως συνέπεια να υπάρχουν μεγάλες απαιτήσεις τόσο για μνήμη όσο και για υπολογιστική ισχύ. Επιπλέον, τα πακέτα ελέγχου διογκώνονται αφού πρέπει να περιέχονται σε αυτά 8

πληροφορίες για όλους τους κόμβους του δικτύου. Συνεπώς για μεγάλους πληθυσμούς τα proactive πρωτόκολλα παρουσιάζουν σημαντικά μειονεκτήματα. Από την άλλη μεριά τα on-demand ή reactive πρωτόκολλα έχουν σχεδιαστεί ώστε οι πληροφορίες για τις διαδρομές να αποκτούνται μόνο όταν χρειάζονται. Τα πρωτόκολλα αυτού του τύπου συνήθως καταναλώνουν πολύ μικρότερο εύρος ζώνης από τα πρωτόκολλα τύπου proactive, αλλά η καθυστέρηση μέχρι να αποκατασταθεί μια διαδρομή και να ξεκινήσουν οι εκπομπές των πακέτων αυξάνεται δραστικά. Οι περισσότερες εφαρμογές κατά πάσα πιθανότητα θα υποστούν μια μεγάλη καθυστέρηση μέχρι να βρεθεί η κατάλληλη διαδρομή μέχρι τον κόμβο αποδέκτη και να ξεκινήσει η επικοινωνία. Παραδείγματα πρωτοκόλλων αυτής της κατηγορίας είναι τα TORA (Temporally-Ordered Routing Algorithm), DSR (Dynamic Source Routing), AODV (Ad Hoc On-Demand Distance Vector). Σε αντίθεση με τα proactive, τα reactive ή on-demand πρωτόκολλα συμπεριφέρονται καλά στα δίκτυα με μεγάλο πλήθος κόμβων, ενώ η απόδοση τους σε δίκτυα μεγάλου φόρτου δεν είναι καλή. Τα πρωτόκολλα αυτά δεν επηρεάζονται από το πλήθος των κόμβων, πάντα αποθηκεύονται και υπολογίζονται μόνο οι διαδρομές που χρειάζονται. Συνεπώς δεν έχουν μεγάλες απαιτήσεις ούτε σε μνήμη, ούτε σε υπολογιστική ισχύ. Σε μεγάλα φορτία όμως καθώς κάθε τερματικό χρησιμοποιεί ταυτόχρονα όλο και περισσότερες διαδρομές, η διαδικασία εύρεσης και αποκατάστασης διαδρομών από πολλά τερματικά ταυτόχρονα επιβαρύνει σημαντικά την λειτουργία του δικτύου, με αποτέλεσμα από ένα σημείο και μετά να μην αποτελούν μια πρακτική επιλογή. 9

2-1. Ο αλγόριθμος δρομολόγησης Fisheye State Routing (FSR) Ο αλγόριθμος δρομολόγησης Fisheye State Routing [3] ανήκει στην πρώτη κατηγορία αλγορίθμων, δηλαδή ανά περιοδικά διαστήματα τα τερματικά ανταλλάσσουν πληροφορίες σχετικά με την τοπολογία του δικτύου με αποτέλεσμα κάθε κόμβος να έχει ανά πάσα στιγμή μια εικόνα για την τοπολογία του δικτύου. Βασίζεται στον αλγόριθμο (Link State) ο οποίος έχει χρησιμοποιηθεί σε ενσύρματα δίκτυα και κατά κύριο λόγο στο Internet, με αποτέλεσμα να μην υπάρχει η πιθανότητα να δημιουργηθούν διαδρομές βρόγχοι. Ως διαδρομές βρόγχοι ορίζονται οι διαδρομές που εκφυλίζονται σε κύκλους, με αποτέλεσμα τα πακέτα να περνούν συνεχώς από τα ίδια τερματικά ακολουθώντας κυκλικές διαδρομές. Η κεντρική ιδέα πίσω από τον αλγόριθμό είναι ότι αποδεικνύεται συμφέρον κάθε κόμβος να γνωρίζει καλύτερα την τοπολογία του δικτύου μέχρι μια ακτίνα γύρω από τον εαυτό του, ενώ για απομακρυσμένες περιοχές να έχει μια πιο ελλιπή γνώση της τοπολογίας. Συνεπώς για πακέτα που κατευθύνονται σε κοντινά τερματικά, η πορεία που θα ακολουθηθεί είναι απολύτως γνωστή. Για πακέτα που κατευθύνονται προς μακρινές περιοχές του δικτύου, το κάθε τερματικό γνωρίζει γενικά την κατεύθυνση προς την οποία θα πρέπει να το προωθήσει, χωρίς να είναι απολύτως σίγουρο για την διαδρομή που θα ακολουθηθεί τελικά. Έτσι καθώς το πακέτο ταξιδεύει προς τον τελικό του προορισμό θα περνάει από κόμβους που σταδιακά έχουν πιο ολοκληρωμένη εικόνα της τοπολογίας στην περιοχή του κόμβου αποδέκτη. Η εφαρμογή του αλγορίθμου απαιτεί κάθε κόμβος να έχει έναν μοναδικό αριθμό ταυτότητας. Επίσης, κάθε κόμβος i έχει τρεις πίνακες και μία λίστα. Αυτοί είναι: Η λίστα των γειτόνων Α i, ο πίνακας τοπολογίας ΤΤ i, ο πίνακας των επόμενων κόμβων NEXT i και ένας πίνακας με αποστάσεις, ο D i. Η λίστα των γειτόνων περιέχει όλους 10

τους κόμβους που είναι ένα άλμα μακριά από τον κόμβο i. Ο πίνακας τοπολογίας TT i αποτελείται από δύο μέρη: τον TT i.ls(j) και τον TT i.seq(j). Ο TT i.ls(j) περιέχει την κατάσταση των ζεύξεων του κόμβου j όπως αυτή αναφέρθηκε από τον ίδιο τον κόμβο j. Ο πίνακας TT i.seq(j) περιέχει την χρονική στιγμή (time stamp) κατά την οποία ο κόμβος j εξέδωσε αυτήν την αναφορά. Παρομοίως, για κάθε προορισμό j το στοιχείο NEXT i (j) περιέχει τον κόμβο προς τον οποίο προωθούνται τα πακέτα τα οποία έχουν ως τελικό προορισμό τον κόμβο j. Στον πίνακα αποστάσεων το στοιχείο D i (j) περιέχει την απόσταση της συντομότερης διαδρομής από τον κόμβο i στον κόμβο j. Για τον πίνακα αποστάσεων μπορούν να χρησιμοποιηθούν συναρτήσεις βαρών, ώστε να υπολογίζονται οι συντομότερες διαδρομές με κάποιους περιορισμούς. Σχήμα 3. Κατάσταση πινάκων αλγόριθμου δρομολόγησης 11

Για παράδειγμα θα μπορούσε να χρησιμοποιηθεί ως βάρος μια συνάρτηση του εύρους ζώνης μιας ζεύξης, ώστε ως συντομότερες διαδρομές να είναι οι διαδρομές με το μεγαλύτερο εύρος ζώνης. Στην παρούσα εργασία ως συντομότερες διαδρομές θεωρήθηκαν οι διαδρομές με το ελάχιστο αριθμό αλμάτων, επομένως τα βάρη των ζεύξεων είναι πάντα ίσα με 1. Όλα τα παραπάνω φαίνονται καλύτερα στο σχήμα 3, όπου απεικονίζονται οι πίνακες όπως θα συμπληρώνονταν από έναν κόμβο για ένα δίκτυο. Στο σχεδιάγραμμα της προηγούμενης σελίδας παραλείπεται ο πίνακας SEQ i, ο οποίος περιέχει τη χρονική στιγμή στην οποία ανάφερε τελευταία φορά ο κόμβος j πληροφορίες για την κατάσταση των ζεύξεών του. Βλέπουμε ότι ο πίνακας TT 3.LS περιέχει όλες τις ζεύξεις που υπάρχουν στο δίκτυο. Στο παραπάνω παράδειγμα ο πίνακας περιγράφει τέλεια το δίκτυο, συνήθως αυτό όμως δεν ανταποκρίνεται στην πραγματικότητα ιδιαίτερα για μακρινές περιοχές του δικτύου, αφού μέχρι να διαδοθεί ένα μήνυμα με πληροφορίες για τις ζεύξεις, η τοπολογία έχει ήδη μεταβληθεί λόγω της κινητικότητας των τερματικών. Ο πίνακας D 3 περιέχει τις αποστάσεις όλων των κόμβων από τον κόμβο 3 μετρημένα σε άλματα. Ο πίνακας NEXT 3 είναι ο πίνακας ο οποίος δημιουργείται αφού εκτελεστεί ο αλγόριθμός των συντομότερων διαδρομών πάνω στον πίνακα τοπολογίας TT 3.LS. Από εδώ ο κόμβος 3 βλέπει προς τα πού θα προωθεί τα πακέτα που δεν έχουν ως τελικό προορισμό τον εαυτό του. Έτσι πακέτα προς τους κόμβους 1 και 2 θα αποστέλλονται προς τον 1, ενώ τα πακέτα προς τους 4, 5, 6 και 7 θα προωθούνται προς τον κόμβο 5. Η λίστα A 3 περιέχει τους γειτονικούς κόμβους του 3, οι οποίοι στο παράδειγμα είναι οι 1 και 5. Από αυτήν την λίστα τα στοιχεία αντιγράφονται στον πίνακα τοπολογίας, όταν σημειωθεί μεταβολή στην γειτονιά του κόμβου 3. 12

Ανά τακτά χρονικά διαστήματα, κάθε κόμβος πληροφορεί τους γειτονικούς τους κόμβους για την τοπολογία του δικτύου όπως αυτός την έχει καταγράψει. Τα μηνύματα αυτά περιέχουν τις εξής πληροφορίες: Κόμβος j, χρονική στιγμή που ο j εξέδωσε την πληροφορία για τους γειτονικούς του κόμβους, γείτονες του j, για όλους τους κόμβους j οι οποίοι θα συμπεριληφθούν στο μήνυμα ανανέωσης της τοπολογίας. Κάθε κόμβος που λαμβάνει αυτό το μήνυμα συγκρίνει για κάθε κόμβο j αν στον πίνακα τοπολογίας του έχει πιο πρόσφατη αναφορά του j για τους γείτονες του. Αν ναι, αγνοεί την παλαιότερη κατάσταση του j η οποία συμπεριλήφθηκε στο μήνυμα, αν όχι αντικαθιστά στον πίνακα τοπολογίας του την παλιά αναφορά με την πιο πρόσφατη που μόλις έλαβε. Επίσης μεταβάλλει την τιμή στον SEQ i ώστε να καταγραφεί το γεγονός ότι πλέον η αναφορά στον πίνακά του είναι πιο πρόσφατη. Σχήμα 4. Ενδεικτικό δίκτυο και τα όρια της περιοχής δυο αλμάτων Η ιδιαιτερότητα του Fisheye State Routing είναι ότι κάθε κόμβος εκπέμπει πληροφορίες σχετικά με την τοπολογία πιο συχνά για κοντινούς κόμβους παρά για μακρινούς. Ορίζεται μια ακτίνα σε άλματα η οποία ονομάζεται scope. Κόμβοι εντός 13

αυτής της ακτίνας συμπεριλαμβάνονται πιο συχνά στα μηνύματα ανανέωσης της τοπολογίας, ενώ οι κόμβοι εκτός της ακτίνας συμπεριλαμβάνονται στα μηνύματα ανανέωσης της τοπολογίας με μικρότερη συχνότητα. Έτσι για παράδειγμα εάν η ακτίνα αυτή είναι 2 άλματα, στο παρακάτω διάγραμμα ο κόμβος που σημειώνεται με τετράγωνο στο κέντρο θα αναφέρεται πιο συχνά για την τοπολογία των κόμβων που είναι εντός του διακεκομμένου κύκλου και λιγότερο συχνά για αυτούς που είναι εκτός του κύκλου. Έτσι μηνύματα τοπολογίας αναφορικά με τους κόμβους εντός του κύκλου θα μπορούσαν να εκδίδονται κάθε 2 δευτερόλεπτα, ενώ αυτά που αφορούν τους κόμβους εξωτερικά του κύκλου να εκδίδονται κάθε 6 δευτερόλεπτα. Στο συγκεκριμένο παράδειγμα το δίκτυο μοιράστηκε σε δύο ζώνες. Είναι δυνατό όμως το δίκτυο να μοιραστεί σε περισσότερες ζώνες. Κόμβοι που ανήκουν στην πιο κοντινή ζώνη περιλαμβάνονται στα μηνύματα τοπολογίας πιο συχνά από αυτούς που ανήκουν σε πιο απομακρυσμένες ζώνες. 14

3. ΠΡΩΤΟΚΟΛΛΟ ΠΟΛΛΑΠΛΗΣ ΠΡΟΣΒΑΣΗΣ Τα πρωτόκολλα πολλαπλής πρόσβασης χωρίζονται σε δύο κατηγορίες ανάλογα με το υποκείμενο φυσικό επίπεδο στο μοντέλο OSI: Σε αυτά που χρησιμοποιούν ένα μόνο κανάλι σε ολόκληρο το δίκτυο Σε αυτά που έχουν στη διάθεση τους περισσότερα κανάλια. Όταν υπάρχει μόνο ένα διαθέσιμο κανάλι όλες οι εκπομπές γίνονται χρησιμοποιώντας το μοναδικό κανάλι. Είναι πολύ πιθανό επομένως να παρουσιαστούν συγκρούσεις λόγω της ταυτόχρονης εκπομπής από δυο ή περισσότερους κόμβους. Χρησιμοποιώντας διάφορες τεχνικές χειραψίας είναι δυνατό ο αριθμός των συγκρούσεων αυτών να μειωθεί αρκετά, αλλά όχι να εξαλειφθεί. Όταν υπάρχουν περισσότερα κανάλια το δίκτυο φροντίζει να οργανωθεί σε μικρές κυψέλες, μέσα στις οποίες όλες οι επικοινωνίες γίνονται χρησιμοποιώντας ένα κανάλι διαφορετικό από αυτό που χρησιμοποιούν οι γειτονικές κυψέλες. Συνήθως τα διαφορετικά κανάλια δημιουργούνται με τεχνικές διευρυμένου φάσματος (CDMA). Μέσα σε κάθε κυψέλη μπορούν να χρησιμοποιηθούν πάνω από το CDMA τεχνικές γνωστές από τα ενσύρματα δίκτυα όπως TDMA ή polling. Στην εργασία αυτή ως πρωτόκολλο επικοινωνίας χρησιμοποιήθηκε η τεχνική Cluster Token [4], η οποία ουσιαστικά είναι polling πάνω από CDMA. 3-1. Το πρωτόκολλο Cluster Token Στο πρωτόκολλο αυτό όπως προαναφέρθηκε υπάρχουν μέσω τεχνικών CDMA και κυρίως DS (Direct Sequence) πολλά κανάλια διαθέσιμα στο δίκτυο. Το δίκτυο αυτόοργανώνεται σε κυψέλες, στις οποίες αντιστοιχίζεται και ένας κώδικας CDMA για 15

την επικοινωνία μέσα στην κυψέλη. Ο χρόνος του δικτύου χωρίζεται σε δύο μέρη. Στη φάση ελέγχου (control phase) και στη φάση πληροφορίας (info phase). Στη φάση ελέγχου γίνονται όλες οι απαραίτητες διαδικασίες για τον συντονισμό και τον έλεγχο του δικτύου, ενώ στη φάση πληροφορίας διαδίδονται τα πακέτα πληροφορίας που διακινεί το δίκτυο. Ένα frame με χρήση αυτού του πρωτοκόλλου έχει την εξής μορφή: Σχήμα 5. Κατανομή του χρόνου στις δύο φάσεις του πρωτοκόλλου Cluster Token 3-2. Φάση ελέγχου Στη φάση ελέγχου όλες οι εκπομπές γίνονται σε προκαθορισμένο κανάλι ώστε να λαμβάνονται από όλους τους κόμβους. Οι εκπομπές γίνονται με πακέτα μικρού μήκους όπου κάθε σταθμός εκπέμπει με χρονική πολυπλεξία ξεκινώντας από αυτόν με τον μεγαλύτερο αριθμό ταυτότητας (ID) και καταλήγοντας σε αυτόν με τον μεγαλύτερο αριθμό ταυτότητας. Σε αυτή τη φάση κάθε κόμβος: Μαθαίνει τους γείτονες τους Συμμετέχει στη δημιουργία των κυψελών καθώς και στη διαδικασία εκλογής κόμβου συντονιστή της κυψέλης (clusterhead) Επίσης σε αυτή τη φάση οι κόμβοι θα μπορούσαν να εκπέμψουν πληροφορίες αναφορικά και με άλλα σημεία της οργάνωσης του δικτύου, όπως για παράδειγμα 16

πληροφορίες που αφορούν τον έλεγχο ισχύος στο τερματικό (power control) ή τη δημιουργία virtual circuit για την μεταφορά δεδομένων πραγματικού χρόνου. Κατά την εκκίνηση της φάσης ελέγχου, όλοι οι κόμβοι σβήνουν τους γειτονικούς κόμβους που έχουν στην μνήμη τους εκείνη την στιγμή. Όταν συμπληρωθεί η φάση ελέγχου, οι λίστες με τους γειτονικούς κόμβους θα έχουν συμπληρωθεί με την καινούρια τοπολογία που ενδεχομένως θα έχει σχηματιστεί λόγω της κινητικότητας των τερματικών του δικτύου. Κάθε κόμβος στη χρονοθυρίδα που του αντιστοιχεί εκπέμπει τις εξής πληροφορίες: Τον αριθμό ταυτότητας του και το αν έχει εκλεχθεί clusterhead ή όχι. Αυτά τα στοιχεία είναι αρκετά και για να πληροφορηθεί κάθε κόμβος για τους γείτονες του και για να εφαρμοστεί ο αλγόριθμος δημιουργίας κυψελών. 3-3. Αλγόριθμος δημιουργίας κυψελών Οι κυψέλες αποτελούν υποσύνολα των τερματικών του δικτύου. Μια κυψέλη ορίζεται με κέντρο τον clusterhead και συμπεριλαμβάνει όλα τα τερματικά που μπορούν και εξασφαλίζουν αμφίδρομη επικοινωνία με αυτόν. Σε κάθε κυψέλη ο clusterhead είναι μοναδικός, επομένως δεν είναι δυνατόν να μπορούν να επικοινωνήσουν δυο clusterheads απευθείας μεταξύ τους. Αντιθέτως είναι δυνατόν ένα τερματικό που δεν είναι clusterhead να επικοινωνεί με περισσότερους από ένα συντονιστές κυψέλης. Αυτά τα τερματικά ονομάζονται πύλες (gateways) και είναι αυτά που εξασφαλίζουν την επικοινωνία μεταξύ των κυψελών. Ένα παράδειγμα δικτύου στο οποίο έχουν δημιουργηθεί οι κυψέλες παρατίθεται παρακάτω: 17

Σχήμα 6. Δίκτυο μετά τη δημιουργία κυψελών Σε αυτό το παράδειγμα βλέπουμε ότι οι κόμβοι 1, 2 και 4 αποτελούν clusterheads και οι κυψέλες εκτείνονται μέχρι εκεί που δείχνουν οι κύκλοι με κέντρο τα αντίστοιχα τερματικά. Τα τερματικά που σημειώνονται με μαύρο κύκλο είναι οι πύλες. Τα τερματικά αυτά είναι που θα χρησιμοποιηθούν για την μεταφορά δεδομένων από την μία κυψέλη στην άλλη. Τέλος, τα τερματικά που σημειώνονται με τον κύκλο είναι απλά τερματικά, τα οποία είναι γειτονικά του clusterhead στον οποίο ανήκουν, δηλαδή είναι ένα άλμα μακριά του. Κυψέλες με αυτούς τους περιορισμούς μπορούν να δημιουργηθούν με πολλούς τρόπους. Η μέθοδος η οποία επιλέχθηκε για τη δημιουργία των κυψελών σε αυτήν την εργασία είναι αυτός του ελάχιστου αριθμού ταυτότητας [5]. Σε αυτόν τον αλγόριθμο απαιτείται κάθε κόμβος να έχει έναν μοναδικό αριθμό ταυτότητας (ID). Ο αλγόριθμος συνοψίζεται στα παρακάτω σημεία: 18

Κάθε κόμβος ο οποίος ακούει κόμβους, οι οποίοι έχουν όλοι αριθμό ταυτότητας μεγαλύτερο από τον δικό του είναι ένας συντονιστής κυψέλης (clusterhead) Ο κόμβος με τον μικρότερο αριθμό ταυτότητας που ακούει ένας κόμβος είναι ο συντονιστής της κυψέλης του, εκτός κι αν αυτός ο κόμβος αποποιείται του δικαιώματος να εκλεχθεί συντονιστής κυψέλης (επειδή λαμβάνει έναν άλλο κόμβο με ακόμα μικρότερο αριθμό ταυτότητας) Ένας κόμβος ο οποίος ακούει δύο ή παραπάνω συντονιστές κυψέλης αποτελεί μια πύλη. Σε κάθε άλλη περίπτωση ο κόμβος δεν διαφοροποιεί τις λειτουργίες του. Ο αλγόριθμος αυτός ουσιαστικά εξασφαλίζει ότι ένας κόμβος είτε είναι συντονιστής δικτύου, είτε έχει απευθείας επικοινωνία με έναν ή παραπάνω συντονιστές κυψέλης. Ο παραπάνω αλγόριθμος και κάθε αλγόριθμος δημιουργίας κυψελών πρέπει να εκτελεστεί όσο πιο γρήγορα γίνεται ώστε να μπορέσει το δίκτυο να παράγει πραγματικό έργο, δηλαδή να μεταφέρει δεδομένα από κόμβο σε κόμβο. Πρέπει να σημειωθεί ότι ο ρόλος που θα παίξει ένα τερματικό στο δίκτυο (συντονιστής κυψέλης, πύλη ή απλό τερματικό) δεν είναι γνωστός εκ των προτέρων. Ο ρόλος τους καθορίζεται από τη θέση που θα έχει το κάθε τερματικό τη στιγμή που θα εκτελεστεί ο αλγόριθμος, γεγονός που οδηγεί σε τυχαία ανάθεση των αρμοδιοτήτων στους κόμβους λόγω της κινητικότητας τους. Επομένως όλα τα τερματικά πρέπει να είναι εξοπλισμένα για όλες τις λειτουργίες που ενδεχομένως να χρειαστεί να αναλάβουν. Ειδικότερα για τις πύλες, οι οποίες συνδέουν δύο ή περισσότερες κυψέλες είναι απαραίτητο να μπορούν να λαμβάνουν ταυτόχρονα σε δύο ή και περισσότερα κανάλια. 19

3-4. Φάση πληροφορίας Στη φάση πληροφορίας το δίκτυο μόλις έχει οργανωθεί σε κυψέλες (οι κυψέλες μπορεί να έχουν παραμείνει οι ίδιες από την προηγούμενη φάση πληροφορίας ή λόγω κινητικότητας των τερματικών να έχουν αναδιαρθρωθεί) και το δίκτυο είναι έτοιμο να μεταφέρει δεδομένα. Σε κάθε κυψέλη έχουν μοιραστεί CDMA κώδικες οι οποίοι θα διασφαλίσουν τις χωρίς συγκρούσεις εκπομπές. Στην αρχή αυτής της φάσης, το τερματικό συντονιστής κάθε κυψέλης εκδίδει ένα token. Το token είναι ένα μικρό πακέτο που κυκλοφορεί μέσα στην κυψέλη και ο κάτοχος του έχει το δικαίωμα να εκπέμψει. Ο clusterhead εκπέμπει το πακέτο σε έναν από τους γείτονες του, ο οποίος στη συνέχεια δικαιούται να εκπέμψει δεδομένα. Αν δεν έχει δεδομένα προς εκπομπή ή μόλις τελειώσει την εκπομπή του, το επιστρέφει πίσω στον clusterhead. Αυτός με τη σειρά του το δίνει σε κάποιο άλλο γειτονικό του τερματικό και με αυτόν τον τρόπο όλα τα τερματικά της κυψέλης αποκτούν για κάποιο χρονικό διάστημα το δικαίωμα να εκπέμψουν. Η μέθοδος αυτή εξασφαλίζει την επικοινωνία χωρίς συγκρούσεις μέσα στην κυψέλη, αφού οι συγκρούσεις μεταξύ κόμβων διαφορετικών κυψελών έχει ήδη αποκλειστεί με χρήση διαφορετικών καναλιών στις γειτονικές κυψέλες. Ουσιαστικά κατά τη φάση πληροφορίας το πρωτόκολλο αυτό είναι μια μέθοδος polling. Το token όμως μπορεί να χαθεί. Αυτό μπορεί να συμβεί στην περίπτωση που ο clusterhead προσπαθήσει να το μεταβιβάσει σε ένα τερματικό το οποίο δεν ανήκει πλέον στην κυψέλη, αφού λόγω της κινητικότητας των τερματικών έχει απομακρυνθεί χωρίς να το αντιληφθεί ο clusterhead μέσω μιας φάσης ελέγχου. Επίσης το token μπορεί να χαθεί στην περίπτωση που γίνει προσπάθεια να μεταβιβαστεί σε πύλη, η οποία όμως εκπέμπει σε άλλη κυψέλη (χρησιμοποιώντας διαφορετικό κώδικα). Και στις δυο περιπτώσεις ο clusterhead περιμένει ένα 20

προκαθορισμένο χρονικό διάστημα, μετά το οποίο προβαίνει σε επανέκδοση του token και συνεχίζει να ρωτάει τους κόμβους για το αν έχουν δεδομένα προς αποστολή. 3-5. Σχολιασμός της απόδοσης του Cluster Token Το πρωτόκολλο που μόλις περιγράφηκε έχει θετικά και αρνητικά τα οποία διέπουν σχολιασμού. Το πιο σημαντικό πλεονέκτημα της μεθόδου έγκειται στο γεγονός ότι με χρήση του πρωτοκόλλου αυτού δεν υπάρχει πιθανότητα σύγκρουσης πακέτων. Σε ένα φορτισμένο δίκτυο, το χαρακτηριστικό αυτό είναι ιδιαίτερα επιθυμητό. Επίσης με την οργάνωση σε κυψέλες είναι πιο εύκολος ο συντονισμός και η διεύθυνση του δικτύου. Από την άλλη μεριά όμως η οργάνωση σε κυψέλες καταναλώνει ένα μέρος των τηλεπικοινωνιακών πόρων, αφού μεγάλο ποσοστό του εύρους ζώνης αναλίσκεται στη δημιουργία και συντήρηση των κυψελών. Επιπλέον, η χρήση χρονικής πολυπλεξίας στην φάση ελέγχου δεν ενδείκνυται για μεγάλα δίκτυα, αφού η διάρκεια αυτής της φάσης είναι ανάλογη του πλήθους των τερματικών που αποτελούν το δίκτυο. Επομένως το πρωτόκολλο αυτό είναι ιδιαίτερα στιβαρό σε περιβάλλοντα μεγάλου φορτίου, αλλά για μικρά φορτία, όπου οι τεχνικές τυχαίας πρόσβασης στο κανάλι, όπως για παράδειγμα η CSMA, έχουν μικρό ποσοστό σύγκρουσης, η μέθοδος αυτή αποδεικνύεται ιδιαίτερα βαριά και παρουσιάζει δυσανάλογο κόστος (εύρος ζώνης αφιερωμένο στον έλεγχο) σε σχέση με τον όγκο των δεδομένων που ουσιαστικά μεταφέρει. 21

4. ΠΡΟΣΟΜΟΙΩΣΗ ΕΝΟΣ ΔΙΚΤΥΟΥ AD HOC Η προσομοίωση του δικτύου ad hoc έγινε με πρόγραμμα γραμμένο σε C++ ειδικά για αυτόν τον σκοπό. Τα πρωτόκολλα που χρησιμοποιήθηκαν είναι τα Cluster Token, για το επίπεδο πολλαπλής πρόσβασης και το FSR (Fisheye State Routing) για το επίπεδο δικτύου. Προσομοιώθηκε ένας πληθυσμός 100 κόμβων, οι οποίοι κινούνται σε μια τετράγωνη περιοχή με μήκος πλευράς 1 km. Οι κόμβοι κινούνται με προκαθορισμένη ταχύτητα, η οποία είναι παράμετρος του προγράμματος, και πάντα σε ευθεία τροχιά. Όταν φτάσουν στα όρια της περιοχής της προσομοίωσης, τότε αντανακλώνται και συνεχίζουν με την ίδια ταχύτητα, αλλά με καινούρια διεύθυνση. Στο φυσικό επίπεδο, η προσομοίωση δεν ασχολήθηκε με πολύπλοκα φαινόμενα, όπως φαινόμενο doppler, φαινόμενο πολλαπλών διοδεύσεων, αλλά υιοθετήθηκε ένα απλουστευμένο μοντέλο, αυτό της διάδοσης στον ελεύθερο χώρο. Συγκεκριμένα, δύο τερματικά μπορούν να επικοινωνήσουν μεταξύ τους αν η απόσταση που τους χωρίζει είναι μικρότερη από ένα όριο, το οποίο αποτελεί επίσης παράμετρο του προγράμματος. Από τα παραπάνω είναι προφανές ότι όλες οι ζεύξεις είναι αμφίδρομες. Σε κάθε κανάλι του δικτύου, δηλαδή σε κάθε κώδικα CDMA, αντιστοιχεί ταχύτητα 2 Mbps. Για το πρωτόκολλο πολλαπλής πρόσβασης Cluster Token, το μήκος του πακέτου ελέγχου που εκπέμπουν όλα τα τερματικά στην ομώνυμη φάση είναι 500 bits, ενώ το μήκος του πακέτου token είναι 200 bits. Η διάρκεια της φάσης πληροφορίας, στην οποία ουσιαστικά διακινούνται τα δεδομένα, είναι 100 msec. Τέλος τα πακέτα που διακινούνται από το δίκτυο είναι σταθερού μεγέθους 10 kbps. Συνεπώς, οι χρόνοι εκπομπής των παραπάνω πακέτων είναι: 250 μsec για τα πακέτα ελέγχου, 100 μsec για το πακέτο token και 5 msec για τα πακέτα δεδομένων. Από εδώ μπορούμε εύκολα να υπολογίσουμε και την διάρκεια της φάσης ελέγχου, η οποία είναι το πλήθος των 22

κόμβων επί τη διάρκεια του πακέτου ελέγχου, αφού οι εκπομπές γίνονται με χρονική πολυπλεξία. Συνεπώς η φάση ελέγχου διαρκεί 25 msec, η οποία κρίνεται ικανοποιητική συγκρινόμενη με τα 100 msec της φάσης πληροφορίας. Αποτελεί όμως ένα σημαντικό κλάσμα της και για μεγαλύτερα δίκτυα το πρωτόκολλο θα ήταν υπερβολικά δυσκίνητο, καταναλώνοντας ένα μεγάλο ποσοστό του χρόνου του σε διαδικασίες οργάνωσης και ελέγχου των κυψελών του. Το φορτίο που δέχονται οι κόμβοι προσομοιώνεται με μια διαδικασία Poisson. Δημιουργούνται τυχαία μεταξύ των κόμβων 100 ζευγάρια τα οποία συνομιλούν μεταξύ τους. Οι χρόνοι άφιξης των πακέτων σε κάθε τερματικό ακολουθούν μια διαδικασία Poisson με μέση τιμή τα 2.5 sec. Κάθε τερματικό αποθηκεύει τοπικά τα πακέτα που έχει προς αποστολή σε μια ουρά (queue). Αυτή η ουρά είναι περιορισμένου μήκους και μπορεί να χωρέσει μέχρι και 15 πακέτα. Πέρα αυτού του αριθμού πακέτων, όλα τα υπόλοιπα απορρίπτονται. Τέλος, πακέτα που έχουν ως προορισμό ένα τερματικό προς το οποίο δεν έχει βρεθεί διαδρομή δεν κρατιούνται στην μνήμη, αλλά σβήνονται απευθείας. Το ίδιο συμβαίνει και στα πακέτα που έχουν διανύσει πάνω από 100 άλματα, γεγονός που υποδηλώνει ότι τα πακέτα αυτά έχουν μπλεχτεί σε βρόχους, με αποτέλεσμα να κινούνται συνεχώς σε κυκλικές τροχιές μέσα στο δίκτυο, σπαταλώντας έτσι πολύτιμους τηλεπικοινωνιακούς πόρους. Στο επίπεδο δικτύου, κάθε κόμβος χωρίζει το δίκτυο σε δύο ζώνες. Στη μία ανήκουν όλα τα τερματικά τα οποία απέχουν 2 ή λιγότερα άλματα από αυτόν και στην άλλη όλα τα υπόλοιπα. Το τερματικό εκπέμπει πληροφορίες για την κατάσταση των ζεύξεων των κόμβων που είναι στην κοντινή ζώνη κάθε 2 sec, ενώ όλα τα υπόλοιπα συμπεριλαμβάνονται στα μηνύματα ανανέωσης των πινάκων τοπολογίας κάθε 6 sec. 23

4-1.Αποτελέσματα προσομοίωσης Το πρόγραμμα της προσομοίωσης εκτελέστηκε με διάφορες παραμέτρους όσον αφορά την ταχύτητα και την ακτίνα κάλυψης του πομπού των τερματικών. Στο διάγραμμα του σχήματος 7 παρουσιάζεται το ποσοστό των εισερχόμενων πακέτων τα οποία έφτασαν επιτυχώς στον προορισμό τους. Η ταχύτητα των κόμβων είναι σταθερή και ίση με 8 m/s ενώ μεταβάλλεται η ακτίνα του πομπού. Παρατηρούμε ότι για ακτίνα κάλυψης ίση με 100 m, το δίκτυο εξυπηρετεί πολύ μικρό ποσοστό των πακέτων, ίσο με 7%. Σχήμα 7. Διάγραμμα ποσοστού επιτυχών παραδόσεων συναρτήσει της ακτίνας του πομπού Όσο μεγαλώνει αυτή η ακτίνα όμως μεγαλώνει και αυτό το ποσοστό, ώστε με ακτίνα 200 m, το 65% των πακέτων φτάνει στον προορισμό του. Αυτά τα ποσοστά είναι μικρά ακόμα και στην πιο ευνοϊκή περίπτωση όπου η ακτίνα κάλυψης είναι ίση με 24

200 m. Στην προσομοίωση, ωστόσο τα πακέτα δεν έχουν δεύτερη ευκαιρία, αλλά αν για οποιοδήποτε λόγο τα πακέτα δεν φτάσουν με την πρώτη προσπάθεια τότε απορρίπτονται. Στο διάγραμμα του σχήματος 8 παρουσιάζεται το ίδιο μέγεθος, δηλαδή το ποσοστό των πακέτων που φτάνουν επιτυχώς στον προορισμό τους, αλλά με παράμετρο αυτή τη φορά την ταχύτητα των κόμβων. Η ακτίνα κάλυψης των πομπών είναι ίση με 140 m σε όλες τις περιπτώσεις. Σε αυτή την περίπτωση όπως είναι λογικό το ποσοστό επιτυχούς παράδοσης μειώνει σταδιακά με την ταχύτητα. Λόγω της αυξημένης κινητικότητας οι πίνακες τοπολογίας δεν μπορούν να ανανεωθούν αρκετά συχνά ώστε να ανταποκρίνονται στην πραγματική τοπολογία του δικτύου, με αποτέλεσμα να μην υπάρχουν διαδρομές για την πλειοψηφία των πακέτων. Σχήμα 8. Διάγραμμα επιτυχών παραδόσεων συναρτήσει της ταχύτητας των τερματικών 25

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

η πιθανότητα να φτάσουν στον τελικό προορισμό τους, αν παραδοθεί ένα μήνυμα τοπολογίας σε κάποιο τερματικό που συμμετέχει στο βρόγχο, με αποτέλεσμα να εξαλειφθεί ο βρόγχος και να δημιουργηθεί μια σωστή διαδρομή προς τον τελικό προορισμό του πακέτου. Τα πακέτα αυτά φτάνουν στον προορισμό τους μετά από έναν πολύ μεγάλο αριθμό αλμάτων με αποτέλεσμα να μεταβάλλουν τον μέσο όρο και σταδιακά να τον αυξάνουν. Στον παρακάτω πίνακα ενδεικτικά παρουσιάζονται τα πακέτα που απερρίφθησαν λόγω εμπλοκής τους σε βρόγχους (ξεπέρασαν το όριο των 100 αλμάτων). 4 m/s 8 m/s 12 m/s 16 m/s 20 m/s 739 1316 1733 2058 2412 Παρατηρούμε ότι το πλήθος των πακέτων που απορρίπτονται λόγω εμπλοκής τους σε βρόγχους αυξάνεται με την ταχύτητα. Έτσι εξηγείται η απρόσμενη αύξηση του μέσου όρου των αλμάτων που κάνουν τα πακέτα. 27

5. ΤΟ ΠΡΩΤΟΚΟΛΛΟ TWO-HOP POLLING (2HP) Ένα από τα πιο σημαντικά μειονεκτήματα του πρωτοκόλλου πολλαπλής πρόσβασης Cluster Token, είναι ότι δεν υποστηρίζει μια κατηγορία ζεύξεων. Συγκεκριμένα, δεν είναι δυνατόν να επικοινωνήσουν τερματικά τα οποία ανήκουν σε διαφορετικές κυψέλες, αν και είναι εντός ακτίνας επικοινωνίας. Για παράδειγμα στο δίκτυο του παρακάτω σχήματος 10, οι κυψέλες που ορίζουν οι κόμβοι 1 και 2 δεν μπορούν να επικοινωνήσουν μεταξύ τους, επειδή δεν υπάρχει κοινός κόμβος και στις δυο κυψέλες. Ο κόμβος 3 θα μπορούσε να επικοινωνήσει με τους 7 και 5, όμως το πρωτόκολλο Cluster Token δεν υποστηρίζει τέτοιες ζεύξεις, οι οποίες ονομάζονται κατανεμημένες πύλες (distributed gateways). Τέτοιες ζεύξεις όμως είναι πολύ σημαντικές γιατί συνδέουν τις κυψέλες μεταξύ τους. Το πρωτόκολλο Two-hop polling [6] αποτελεί μια βελτίωση του Cluster Token και στοχεύει στην ενεργοποίηση των ζεύξεων των κατανεμημένων πυλών. Σχήμα 10.Παράδειγμα κατανεμημένων πυλών 28

Η διαφορά του από το Cluster Token και συνεπώς από το κανονικό polling έγκειται στο γεγονός ότι στο 2HP τα απλά τερματικά παίζουν πιο ενεργό ρόλο. Στο 2HP, αν ένας κόμβος αποτελεί μέλος μια κατανεμημένης πύλης, μόλις πάρει το token από το Clusterhead και εκπέμψει τα δεδομένα που έχει προς εκπομπή δεν επιστρέφει το token στον Clusterhead, αλλά το προωθεί στο άλλο τερματικό μαζί με το οποίο αποτελούν αυτήν την κατανεμημένη πύλη. Έτσι, το κάθε τερματικό της κατανεμημένης πύλης ρωτάει το ομόλογο τερματικό αν έχει δεδομένα προς αποστολή. Στο παράδειγμα που παρουσιάστηκε παραπάνω, μόλις ο κόμβος 3 λάβει το token, δεν το επιστρέφει πίσω στον Clusterhead του (κόμβος 2), αλλά το προωθεί στο τερματικό 5. Μόλις τελειώσει την εκπομπή του το τερματικό το επιστρέφει στο 3, το οποίο όμως πάλι δεν το προωθεί πίσω στον κόμβο 2, αλλά ρωτάει και τον κόμβο 7 για το αν έχει δεδομένα προς αποστολή. Μόλις ερωτηθούν όλοι οι κόμβοι με τους οποίους ο 3 αποτελεί κατανεμημένη πύλη, επιστρέφει το token στον Clusterhead του, δηλαδή στο τερματικό 2. Από την άλλη μεριά, μόνο ένας από τους δύο κόμβους 5 και 7 θα ρωτούσε τον 3 για δεδομένα, ώστε να μην ερωτείται ο συγκεκριμένος κόμβος 2 φορές σε κάθε γύρο του token. Όπως προαναφέρθηκε και στο Cluster Token οι κυψέλες που ορίζονται από τους κόμβους 1 και 2 χρησιμοποιούν διαφορετικούς κώδικες CDMA ώστε να μην υπάρχουν συγκρούσεις κατά τις εσωτερικές στις κυψέλες εκπομπές. Οι κόμβοι όμως που συμμετέχουν σε κατανεμημένες πύλες θα πρέπει όπως και οι κανονικές πύλες να ακούνε στους κώδικες και των δυο κυψελών. Κάθε εκπομπή κόμβων κατανεμημένων πυλών γίνονται στον κώδικα που χρησιμοποιείται στην κυψέλη η οποία χρησιμοποιεί το συγκεκριμένο token. Έτσι, συνεχίζοντας το προηγούμενο παράδειγμα, όταν ο κόμβος 3 προωθήσει το token στον κόμβο 5, το τερματικό αυτό θα εκπέμψει χρησιμοποιώντας τον κώδικα της κυψέλης 2, αφού σε αυτήν την κυψέλη 29

χρησιμοποιείται το συγκεκριμένο token. Με αυτόν τον τρόπο αποκλείεται να συγκρουστούν πακέτα, αφού με τη συγκεκριμένη μέθοδο είναι πιθανό να εκπέμπουν ταυτόχρονα δυο ή και περισσότεροι κόμβοι που ανήκουν στην ίδια κυψέλη. Θα ακουγόταν ενδεχομένως πιο λογικό, εκπομπές μέσω κατανεμημένων πυλών να γινόταν μόλις κάποιος κόμβος λάμβανε το token και επικοινωνούσε μέσω της πύλης με κάποιο άλλο τερματικό διαφορετικής κυψέλης. Αυτή η μέθοδος δεν είναι η βέλτιστη, αφού εμπεριέχει δυο σημαντικά προβλήματα. Πρώτον, ο συντονιστής της κυψέλης δεν θα γνώριζε ότι υπάρχει εκπομπή σε εξέλιξη αφού ο κάτοχος του token θα εξέπεμπε σε διαφορετικό κώδικα, με αποτέλεσμα να δημιουργήσει καινούριο token, υποθέτοντας ότι το προηγούμενο έχει χαθεί. Δεύτερον, με αυτόν τον τρόπο δεν εγγυάται ότι ο κόμβος στην άλλη μεριά της πύλης δεν εκπέμπει ο ίδιος με αποτέλεσμα να μην είναι σε θέση να δεχθεί πακέτα. 5-1. Προσομοίωση Η προσομοίωση έγινε χρησιμοποιώντας ακριβώς τις ίδιες παραμέτρους με την προηγούμενη προσομοίωση και μετρήθηκαν ίδια μεγέθη. Επίσης χρησιμοποιήθηκαν οι ίδιες ακολουθίες ψευδοτυχαίων αριθμών, ώστε τα τερματικά ακολουθούν τις ίδιες διαδρομές και έχουν τις ίδιες αφίξεις πακέτων. Στο διάγραμμα του σχήματος 11 παρουσιάζεται το ποσοστό των πακέτων που φτάνουν επιτυχώς στον προορισμό τους και για τις δυο μεθόδους πολλαπλής πρόσβασης. 30

Σχήμα 11. Διάγραμμα ποσοστού επιτυχών παραδόσεων συναρτήσει της ακτίνας πομπού Παρατηρούμε ότι στην περίπτωση του Two-Hop Polling, πολλά περισσότερα πακέτα φτάνουν τελικά στον προορισμό τους. Αυτό αιτιολογείται ως εξής: Στην περίπτωση του 2HP οι κατανεμημένες πύλες είναι ενεργοποιημένες. Έτσι οι κυψέλες είναι μεταξύ τους καλύτερα συνδεδεμένες με αποτέλεσμα να υπάρχουν περισσότερες διαδρομές για απομακρυσμένες περιοχές. Επίσης, τα μηνύματα που περιέχουν πληροφορίες για την ανανέωση των πινάκων τοπολογίας διαδίδονται πιο γρήγορα από κυψέλη σε κυψέλη μέσω των κατανεμημένων πυλών. Στο σχήμα 12 παρουσιάζονται οι καμπύλες των ποσοστών επιτυχών παραδόσεων για τα δύο πρωτόκολλα συναρτήσει τώρα όμως της ταχύτητας των τερματικών. Παρατηρείται ότι και σε αυτήν την περίπτωση το 2HP αποδεικνύεται πολύ πιο αποδοτικό σε σύγκριση με το πρωτόκολλο πολλαπλής πρόσβασης χωρίς χρήση κατανεμημένων πυλών. 31

Σχήμα 12. Διάγραμμα ποσοστού επιτυχών παραδόσεων συναρτήσει της ταχύτητας των τερματικών Στο τρίτο διάγραμμα (Σχήμα 13) παρουσιάζεται ο μέσος αριθμός αλμάτων που κάνουν τα πακέτα που φτάνουν επιτυχώς στον προορισμό τους συναρτήσει της ταχύτητας των τερματικών. Για μικρές ταχύτητες με χρήση του 2HP ο μέσος αριθμός αλμάτων είναι μεγαλύτερος σε σύγκριση με αυτόν που προκύπτει με χρήση polling. Αυτό είναι λογικό δεδομένου του γεγονότος ότι με το 2HP υπάρχουν διαδρομές για περισσότερες απομακρυσμένες περιοχές. Έτσι μεγαλύτερο ποσοστό των πακέτων παραδίδονται επιτυχώς και ο μέσος όρος αλμάτων είναι μεγαλύτερος. Καθώς αυξάνει η ταχύτητα των τερματικών, παρατηρούμε ότι στην μεν περίπτωση του polling ο μέσος αριθμός αλμάτων ακολουθεί αύξουσα πορεία, ενώ στην περίπτωση του 2HP, η καμπύλη παρουσιάζει ένα ελάχιστο και στη συνέχεια ακολουθεί αυξητική πορεία. 32

Σχήμα 13. Διάγραμμα μέσου όρου αλμάτων συναρτήσει της ταχύτητας των τερματικών Τελικά για τις μεγαλύτερες ταχύτητες στις οποίες δοκιμάστηκαν τα δύο πρωτόκολλα το polling παρουσιάζει μεγαλύτερο μέσο όρο αλμάτων ανά πακέτο, παρόλο που λίγα πακέτα φτάνουν στον προορισμό τους. Φυσικά τα πακέτα αυτά έχουν κάνει κατά κύριο λόγο μικρό αριθμό αλμάτων και διανύουν μικρές αποστάσεις μέσα στο δίκτυο. Ο μέσος όρος παρουσιάζεται ιδιαίτερα αυξημένος εξαιτίας των πακέτων που ενεπλάκησαν σε βρόγχους. Από το διάγραμμα συμπεραίνουμε ότι με τη μέθοδο του polling το πρόβλημα της παρουσίας βρόγχων είναι πολύ πιο σημαντικό παρά στην περίπτωση του 2HP. Στον παρακάτω πίνακα παρουσιάζεται το πλήθος των πακέτων που απορρίφθηκαν από το δίκτυο λόγο εμπλοκής τους σε βρόγχους. Εδώ φαίνεται πως πολλοί περισσότεροι βρόγχοι δημιουργήθηκαν χρησιμοποιώντας ως πρωτόκολλο πολλαπλής πρόσβασης το polling. 33

4 m/s 8 m/s 12 m/s 16 m/s 20 m/s Polling 739 1316 1733 2058 2412 2HP 353 756 992 1397 1626 6. Συμπεράσματα Στην παρούσα διπλωματική εξετάστηκε ένα τυπικό δίκτυο ad hoc στα 2 από τα 3 κατώτερα επίπεδα κατά το μοντέλο OSI. Έγινε σαφές από τα αποτελέσματα των προσομοιώσεων ότι υπάρχουν πολλά προβλήματα που πρέπει να λυθούν ώστε τα ad hoc δίκτυα να γίνουν θελκτικά προς το αγοραστικό κοινό. Μικρές αποδόσεις και μη ευρέως διαδεδομένος εξοπλισμός καθιστούν αυτά τα δίκτυα ακριβά και ασύμφορα για τους περισσότερους. Οι ταχύτητες των ενσύρματων δικτύων είναι τουλάχιστον μιας τάξης μεγέθους μεγαλύτερες, ενώ η αξιοπιστία τους είναι πολύ καλύτερη. Οι πομποδέκτες που χρησιμοποιούνται στα ad hoc δίκτυα βασίζονται σε τεχνικές διευρυμένου φάσματος, τεχνική η οποία δεν είναι ευρέως διαδεδομένη με αποτέλεσμα να είναι ακριβός ο τηλεπικοινωνιακός εξοπλισμός. Παρόλα αυτά τα ad hoc δίκτυα προσφέρουν απόλυτη ελευθερία κίνησης στους χρήστες, το οποίο είναι ένα πολύ σημαντικό πλεονέκτημα και θα τα βοηθήσει να βρουν τη θέση τους στην αγορά. 34

Παράρτημα Α: Ψευδοκώδικας του αλγορίθμου δρομολόγησης FSR Στο παράρτημα αυτό παρουσιάζεται ο ψευδοκώδικας του αλγορίθμου δρομολόγησης FSR (Fisheye State Routing). Το κάθε τερματικό i ξεκινάει με την εκτέλεση της συνάρτησης FSR (i). Οι μεταβλητές και οι παράμετροι που χρησιμοποιούνται στο ψευδοπρόγραμμα είναι οι εξής: Ως V ορίζεται το σύνολο του οποίου τα στοιχεία είναι όλοι οι κόμβοι οι οποίοι απαρτίζουν το δίκτυο. Η ουρά_πακέτων είναι μια ουρά (queue) η οποία περιέχει όλα τα πακέτα ανανέωσης της τοπολογίας που έχει λάβει το τερματικό και περιμένουν επεξεργασία. Οι πίνακες TT i.ls, TT i.seq, NEXT i, D i καθώς και η λίστα A i έχουν παρουσιαστεί στην παρουσίαση του αλγορίθμου FSR παραπάνω. Για τον υπολογισμό των συντομότερων διαδρομών χρησιμοποιήθηκε ο αλγόριθμος του Dijkstra. Συνάρτηση FSR (i) Αρχικοποίηση_FSR (i); Επανέλαβε για πάντα Αν ουρά_πακέτων ø Για κάθε πακέτο ουρά_πακέτων A i A i πακέτο.αποστολέας} Επεξεργάσου_πακέτο (i, πακέτο) } 35

} Έλεγξε_γείτονες (i); TT i.ls(i) A i ; Υπολόγισε_συντομότερες_διαδρομές (i); Στείλε_μήνυμα_ανανέωσης_τοπολογίας (i); } } Συνάρτηση Αρχικοποίηση_FSR (i) για κάθε j V A i (j) ø; D i (j) ; NEXT i (j) -1; TT i.seq(j) -1; } A i A i x υπάρχει ζεύξη (i, x)}; TT i.ls(i) A i ; D i (i) 0; NEXT i (i) i; t i 0; TT i.seq(i) t i ; } 36

Συνάρτηση Στείλε_μήνυμα_ανανέωσης_τοπολογίας (i) t i t i + 1; TT i.seq(i) t i ; TT i.ls(i) ø; για κάθε x A i TT i.ls(i) TT i.ls(i) x}; } μήνυμα.αποστολέας i; για κάθε x N Για ζώνη l = 1 μέχρι L Αν ( (Ρολόι() mod Περίοδος_Ανανέωσης l = 0) (D i (x) Ακτίνα l ) ) μήνυμα.tt μήνυμα.tt TT i.ls(x)}; } } } έκπεμψε (μήνυμα) προς όλους τους j A i ; } 37

Συνάρτηση Υπολόγισε_συντομότερες_διαδρομές (i) // Ο Αλγόριθμος του Dijkstra για υπολογισμό των συντομότερων διαδρομών P i}; D i (i) 0; Για κάθε x j (j V) (j i)} Αν x TT i.ls i (i) D i (x) βάρος (i, x); NEXT i (x) x; } αλλιώς D i (x) ; NEXT i (x) -1; } } Όσο P V Για κάθε k V P, l P Βρές τα (l, k) ώστε βάρος(i, k) = min (D i (l) + βάρος (l, k)}; 38

} P P k}; D i (k) D i (k) + βάρος (l, k); NEXT i (k) NEXT i (l); } } Συνάρτηση Επεξεργάσου_πακέτο (i, πακέτο) αποστολέας πακέτο.αποστολέας; για κάθε j V Αν ((j i) (πακέτο.seq(j) > TT i.seq(j)) TT i.seq(j) πακέτο.seq(j); TT i.ls(j) πακέτο.ls(j); } } } Συνάρτηση Ελεγξε_γείτονες (i) για κάθε j A i αν βάρος (i, j) = 39

A i = A i j}; } } } 40

Παράρτημα Β: Βιβλιογραφία [1] IEEE Standard for Wireless LAN Medium Access Control (MAC) and Physical Layer (PHY) Specifications, Nov. 1997, P802.11 [2] ETS 300 652 V.1.2.1, Broadband Radio Access Networks (BRAN); HIgh PErformance Radio Local Area Network (HIPERLAN) Type 1; Functional specification, European Telecommunications Standards Institute (ETSI), July 1998. [3] A. Iwata, C.-C. Chiang, G. Pei, M. Gerla and T.-W. Chen. Scalable Routing Strategies for Ad Hoc Wireless Networks. IEEE Journal on Selected Areas of Communications 17(8): 1369-1379, Aug 1999 [4] C.-H. Lin, A multihop Adaptive Mobile Multimedia Network: Architecture and Protocols, Ph. D. Dissertation, Computer Science Department, Univeristy of California, Los Angeles, 1996 [5] Anthony Ephremides, Jeffrey Wieselthier and Dennis Baker, A Design concept for reliable mobile radio networks with frequence hopping signaling, Proceedings of IEEE, 75(1): 56-73, 1987 [6] F. N. Pavlidou and G. Dimitriadis, Adaptive cluster link utilization based on a new two-hop approach, Proceedings of 3 rd Generation Infrastructures and services Symposium, 2001 41