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



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

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

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

Τεχνολογία Πολυμέσων. Ενότητα # 16: Πολυεκπομπή Διδάσκων: Γεώργιος Ξυλωμένος Τμήμα: Πληροφορικής

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

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

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

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

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

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

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

ΔΙΚΤΥΑ (13) Π. Φουληράς

ΚΕΦΑΛΑΙΟ 4. Τεχνική Ανίχνευσης του. Πτυχιακή Εργασία Σελίδα 95

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

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

ΤΕΙ Στερεάς Ελλάδας Τμ. Ηλ.γων Μηχ/κων ΤΕ. Δίκτυα Υπολογιστών. Διάλεξη 4: Επίπεδο 3 το πρωτόκολλο IP

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

Εφαρμογές Υπολογιστικής Νοημοσύνης στις Ασύρματες Επικοινωνίες

Ειδικά Θέματα Δικτύων Ι

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

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

7.9 ροµολόγηση. Ερωτήσεις

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

WIRELESS SENSOR NETWORKS (WSN)

Οι δυναμικές δομές δεδομένων στην ΑΕΠΠ

1. Τι είναι η Κινηματική; Ποια κίνηση ονομάζεται ευθύγραμμη;

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

Ειδικά θέματα Αλγορίθμων και Δομών Δεδομένων (ΠΛΕ073) Απαντήσεις 1 ου Σετ Ασκήσεων

Πρωτόκολλα Διαδικτύου Μέρος 2ο. Επικοινωνίες Δεδομένων Μάθημα 3 ο

1. Τι είναι η Κινηματική; Ποια κίνηση ονομάζεται ευθύγραμμη;

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

Κίνηση ΚΕΦΑΛΑΙΟ 2 Β ΓΥΜΝΑΣΙΟΥ

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

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

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

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

7.5 Πρωτόκολλο IP. Τεχνολογία ικτύων Επικοινωνιών ΙΙ

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

ΔΙΚΤΥΑ Η/Υ ΙΙ. Αρχές δρομολόγησης

Αλγόριθμοι και Δομές Δεδομένων (IΙ) (γράφοι και δένδρα)

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

Αλγόριθμοι και Πολυπλοκότητα

Ασκήσεις μελέτης της 4 ης διάλεξης. ), για οποιοδήποτε μονοπάτι n 1

ΠΟΛΥΕΚΠΟΜΠΗ ΣΕ ΑΣΥΡΜΑΤΑ ΚΙΝΗΤΑ ΙΚΤΥΑ (MANET)( ΒΑΣΙΛΕΙΟΥ ΑΛΕΞΑΝ ΡΟΣ

ΕΘΝΙΚΟ ΜΕΤΣΟΒΙΟ ΠΟΛΥΤΕΧΝΕΙΟ

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

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

Είναι η διαδικασία εύρεσης της διαδρομής που πρέπει να ακολουθήσει ένα πακέτο για να φτάσει στον προορισμό του. Η διαδικασία αυτή δεν είναι πάντα

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

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

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

Ευθύγραμμες Κινήσεις

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

Συνοπτική Μεθοδολογία Ασκήσεων IP Fragmentation. Ασκήσεις στο IP Fragmentation

Θέμα 1: Robbie και Αναζήτηση

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

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

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

Το Πρόβλημα της Πινακοθήκης (The Art Gallery Problem)

3.6 Δρομολόγηση 1 22 /

Ειδικά Θέματα Δικτύων Ι

Πανεπιστήμιο Θεσσαλίας Τμήμα Ηλεκτρολόγων Μηχανικών & Μηχανικών Υπολογιστών Τμήμα Πληροφορικής

Το Πρόβλημα της Πινακοθήκης (The Art Gallery Problem)

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

Δίκτυα Υψηλών Ταχυτήτων Ενότητα 9: MPLS

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

Επικοινωνία με μηνύματα. Κατανεμημένα Συστήματα 1

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

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

Κεφάλαιο 3.3: Δίκτυα. Επιστήμη ΗΥ Κεφ. 3.3 Καραμαούνας Πολύκαρπος

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

Διάλεξη 21: Γράφοι IV - Βραχύτερα Μονοπάτια σε Γράφους

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

1. Ποια μεγέθη ονομάζονται μονόμετρα και ποια διανυσματικά;

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

Ειδικά Θέματα Δικτύων ΙΙ

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

J. Glenn Brookshear. Copyright 2008 Pearson Education, Inc. Publishing as Pearson Addison-Wesley

ΔΙΚΤΥΑ ΥΠΟΛΟΓΙΣΤΩΝ ΙΙ

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

Επίλυση Προβλημάτων 1

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

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

Δίκτυα ΙΙ Τομέας Πληροφορικής,

... Αν ν = 16 εγκαταλείπει τις προσπάθειες μετάδοσης του πακέτου. Τοπολογία Διαύλου (BUS).

Οδηγίες σχεδίασης στο περιβάλλον Blender

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

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

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

ΔΕΙΓΜΑ ΠΡΙΝ ΤΙΣ ΔΙΟΡΘΩΣΕΙΣ - ΕΚΔΟΣΕΙΣ ΚΡΙΤΙΚΗ

ΕΝΑΣ ΔΙΚΡΙΤΗΡΙΟΣ ΑΛΓΟΡΙΘΜΟΣ SIMPLEX

Ενδεικτικές Λύσεις 1ου Σετ Ασκήσεων

Τεχνητή Νοημοσύνη. 4η διάλεξη ( ) Ίων Ανδρουτσόπουλος.

1. Περιγράψετε τον πιο σημαντικό ρόλο του κάθε επιπέδου της TCP/IP στοίβας (δίνοντας και το όνομα του).

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

Συνοπτική Μεθοδολογία Ασκήσεων Κεφαλαίου 7. Ασκήσεις στο IP Fragmentation

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

Ενότητα 4. Πρωτόκολλα ροµολόγησης: Αρχές Λειτουργίας του OSPF (Open Shortest Path First)

z 1 E(G) 2(k 1) = 2k 3. x z 2 H 1 H 2

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

Transcript:

ΟΙΚΟΝΟΜΙΚΟ ΠΑΝΕΠΙΣΤΗΜΙΟ ΑΘΗΝΩΝ ΤΜΗΜΑ ΠΛΗΡΟΦΟΡΙΚΗΣ ΠΤΥΧΙΑΚΗ ΕΡΓΑΣΙΑ Γεωγραφικές Μέθοδοι Δρομολόγησης σε Αd Ηoc Ασύρματα Δίκτυα Φοιτητής: Άγγελος Φατούρος Αριθμός Μητρώου: 3040183 Επιβλέπων: Σταύρος Τουμπής Ιούλιος 2009

ΠΕΡΙΕΧΟΜΕΝΑ 1. ΕΙΣΑΓΩΓΗ 6 1.1 Αντικείμενο της εργασίας.................................. 6 1.2 Περιγραφή ad hoc δικτύων................................. 6 1.2.1 Κατηγορίες ad hoc δικτύων......................... 7 1.2.2 Εφαρμογές ad hoc δικτύων.......................... 8 1.3 Δρομολόγηση σε ad hoc δίκτυα............................. 9 1.3.1 Αλγόριθμοι βασισμένη στη τοπολογία................. 9 1.3.2 Γεωγραφική δρομολόγηση.......................... 10 1.4 Περιγραφή Δρομολογήσεων Τροχιάς (Trajectrory Based Forwarding) 11 1.5 Διάρθρωση της εργασίας................................... 12 1.6 Ευχαριστίες............................................. 12 2. ΑΠΛΗΣΤΕΣ ΜΕΘΟΔΟΙ ΠΡΟΩΘΗΣHΣ ΚΑΙ ΣΤΡΑΤΗΓΙΚΕΣ ΑΝΑΚΑΜΨΗΣ 13 2.1 Δρομολόγηση Τροχιάς με συνάρτηση κόστους................. 13 2.2.1 Κανόνες Περιορισμού Απόκλισης........................ 15 2.2 Μέθοδοι Άπληστης Προώθησης............................ 17 2.2.1 Μέγιστη προώθηση μέσα στην ακτίνα................... 17 2.2.2 Πλησιέστερος κόμβος με πρόοδο προς τα εμπρός......... 18 2.2.3 Ελάχιστη απόκλιση................................. 19 2.2.4 Τυχαία επιλογή..................................... 20 2.3 Μέθοδοι Δρομολόγησης σε όψεις (Face Routing Methods)....... 21 2.3.1 Geographical Perimeter Stateless Routing GPSR......... 22 2.3.2 Αλγόριθμος δρομολόγησης σε όψεις-2 και παραλλαγή...... 23 2.4 Αποτυχία άπληστων μεθόδων και ανάκαμψη με χρήση δρομολόγησης σε όψεις............................................... 24 2.5 Δρομολόγηση με τον αλγόριθμο του Dijkstra.................. 26 3. ΠΕΙΡΑΜΑΤΑ-ΣΥΓΚΡΙΣΗ ΜΕΘΟΔΩΝ ΚΑΙ ΣΥΜΠΕΡΑΣΜΑΤΑ 28 3.1 Μετρικές αξιολόγησης μεθόδων δρομολόγησης................ 28 3.2 Αποτελέσματα προσομοίωσης.............................. 30 3.2.1 Σύγκριση παραλλαγών δρομολόγησης τροχιάς............ 31 3.2.2 Σύγκριση παραλλαγών άπληστων μεθόδων............... 32 2

3.2.3 Σύγκριση παραλλαγών δρομολόγησης σε όψεις............ 34 3.2.4 Αποτελέσματα αλγόριθμος Dijkstra..................... 35 4. ΕΠΙΛΟΓΟΣ 36 4.1 Ανασκόπηση........................................... 36 4.2 Μελλοντικές Επεκτάσεις Βελτιώσεις υλοποίησης............. 36 ΠΑΡΑΡΤΗΜΑ A: Ορισμένοι Αλγόριθμοι 38 1. Αλγόριθμοι επιπεδοποίησης γραφήματος...................... 38 2. Κατασκευή όψεων....................................... 40 3. Εύρεση όψης που περικλείει ένα σημείο....................... 41 ΑΝΑΦΟΡΕΣ 43 3

4

Στους γονείς μου 5

ΚΕΦΑΛΑΙΟ 1 ΕΙΣΑΓΩΓΗ 1.1 Αντικείμενο της εργασίας Στόχος της εργασίας είναι η μελέτη των ad hoc δικτύων και συγκεκριμένα η δρομολόγηση σε αυτά χρησιμοποιώντας πρωτόκολλα γεωγραφική δρομολόγησης. Τα δίκτυα αυτά παρουσιάζουν μεγάλο ερευνητικό ενδιαφέρον, λόγω των ιδιαίτερων χαρακτηριστικών τους. Η εργασία αυτή σκοπεύει να παρουσιάσει κάποια δημοφιλή πρωτόκολλα δρομολόγησης που χρησιμοποιούνται σε αυτού τον τύπο δικτύων και στη συνέχεια να αξιολογήσει τη συμπεριφορά τους με συγκεκριμένες μετρικές απόδοσης. 1.2 Ad Hoc δίκτυα Η αλματώδης εξέλιξη των ασύρματων συσκευών επικοινωνίας (πχ κινητά τηλέφωνα, φορητοί υπολογιστές, PDAs), καθώς επίσης και η όλο και μεγαλύτερη διαθεσιμότητα των ασύρματων δικτύων, έχουν φέρει δραματικές αλλαγές στον τομέα των επικοινωνιών τα τελευταία χρόνια. Η μετάβαση από την εποχή του Προσωπικού Υπολογιστή (Personal Computer) στην εποχή του «Απανταχού Υπολογίζειν» (Ubiquitous Computing), στην οποία κάθε άνθρωπος αξιοποιεί ταυτόχρονα πολλές ηλεκτρονικές συσκευές για την ανάκτηση πληροφοριών οποτεδήποτε τις χρειαστεί και οπουδήποτε κι αν βρίσκεται, είναι περισσότερο από ποτέ εμφανής. Αναμφισβήτητα, τα ασύρματα δίκτυα αποτελούν την ευκολότερη και αποτελεσματικότερη λύση προς αυτή την κατεύθυνση, γεγονός που δικαιολογεί την έξαρση ερευνητικού ενδιαφέροντος στις ασύρματες επικοινωνίες. Ακόμα και σήμερα, η ασύρματη επικοινωνία ανάμεσα στις ηλεκτρονικές συσκευές επιτυγχάνεται, τις περισσότερες φορές, μέσω σταθερών, βασισμένων σε υποδομές δικτύων. Χαρακτηριστικό παράδειγμα αποτελούν τα κυψελοειδή δίκτυα της κινητής τηλεφωνίας, στα οποία τα κινητά τερματικά ανταλλάσσουν δεδομένα αποκλειστικά με σταθερούς κόμβους, τους 6

σταθμούς βάσης. Οι σταθμοί βάσης είναι υπεύθυνοι για την διασύνδεση και την επιτυχημένη επικοινωνία των κινητών κόμβων. Αντίστοιχα, οι φορητοί υπολογιστές συνδέονται στο Διαδίκτυο μέσω σταθερών σημείων πρόσβασης (access points). Με αυτόν τον τρόπο, οι τερματικές συσκευές έχουν περιορισμένες αρμοδιότητες και επομένως χαρακτηρίζονται από απλότητα και μειωμένο κόστος κατασκευής, τουλάχιστον στο κομμάτι που απαιτείται για την δικτύωση τους. Παρόλο που τα βασισμένα σε υποδομές δίκτυα παρέχουν με μεγάλη επιτυχία τις απαιτούμενες από τις κινητές συσκευές δικτυακές υπηρεσίες, δεν αποτελούν πάντοτε την καλύτερη λύση. Υπάρχουν περιπτώσεις στις οποίες το κόστος και ο χρόνος εγκατάστασης των απαιτούμενων υποδομών είναι απαγορευτικά, μετατρέποντας σε ασύμφορη την αρχιτεκτονική αυτή. Για αυτούς τους λόγους, τα τελευταία χρόνια έχουν αναπτυχθεί τα λεγόμενα αδόμητα (ad hoc) δίκτυα, τα οποία δεν απαιτούν καμία προϋπάρχουσα υποδομή. Σε αυτά τα δίκτυα, κάθε κόμβος συνδέεται ασύρματα με κάθε άλλον που βρίσκεται μέσα στην εμβέλεια εκπομπής του, σχηματίζοντας έτσι δυναμικά ένα ad hoc δίκτυο με μεγάλη ευελιξία. Οι κόμβοι συνεργάζονται μεταξύ τους για την μεταφορά και την δρομολόγηση των πληροφοριών, λειτουργούν δηλαδή, όχι μόνο ως τερματικές συσκευές, αλλά και ως δρομολογητές. Όπως γίνεται αντιληπτό, η πολυπλοκότητα των τερματικών συσκευών σε αυτή την αρχιτεκτονική αυξάνεται σημαντικά. Συνοπτικά, τα πλεονεκτήματα των ad hoc δικτύων περιλαμβάνουν: - ευκολία ανάπτυξης - ταχύτητα ανάπτυξης και - μειωμένη εξάρτηση από σταθερή υποδομή 1.2.1 Κατηγορίες ad hoc δικτύων Τα ad hoc δίκτυα μπορούν να χωριστούν σε 2 κατηγορίες: Στα στατικά και στα κινητά Στα στατικά δίκτυα οι κόμβοι από τη στιγμή που εισέρχονται στο δίκτυο, συνήθως δε μετακινούνται. Παράδειγμα αυτής της κατηγορίας αποτελούν τα δίκτυα που σχηματίζονται μεταξύ κεραιών που βρίσκονται στις οροφές κτηρίων. Αντίθετα στα κινητά ad hoc δίκτυα (Mobile Ad hoc Networks MANET), οι κόμβοι μπορούν να κινούνται αυθαίρετα. Τυπικά παραδείγματα όπου εφαρμόζονται τα MANET είναι η διασύνδεση κινούμενων οχημάτων ή συσκευών χειρός. Επίσης, ανάλογα με τις δυνατότητες και τις ευθύνες κάθε κόμβου προκύπτουν παραλλαγές των ad hoc δικτύων. Διακρίνονται οι εξής περιπτώσεις: Πλήρως Συμμετρικό Περιβάλλον o Όλοι οι κόμβοι έχουν τις ακριβώς τις ίδιες δυνατότητες και ευθύνες. Ασύμμετρες Δυνατότητες 7

o Η εμβέλεια μετάδοσης, η διάρκεια ζωής της μπαταρίας, οι υπολογιστικοί πόροι (CPU, memory) μπορεί να διαφέρουν από κόμβο σε κόμβο. o Ταχύτητα κίνησης (αν οι κόμβοι είναι κινητοί). Ασύμμετρες Ευθύνες o Μόνο κάποιοι κόμβοι μπορούν να δρομολογήσουν πακέτα o Κάποιοι κόμβοι μπορεί να λειτουργήσουν σαν αρχηγοί των γειτονικών κόμβων (π.χ. αρχηγός συστάδας στα δίκτυα αισθητήρων) 1.2.2 Εφαρμογές ad hoc δικτύων Αν και η έρευνα στα ad hoc δίκτυα έχει ενταθεί τα τελευταία χρόνια, η απαρχή της εντοπίζεται τη δεκαετία του 70 και είχε αρχικά αμιγώς στρατιωτικό χαρακτήρα (κάτι συνηθισμένο στις τεχνολογίες). Η ευελιξία και η δυναμική φύση των ad hoc δικτύων τα κατατάσσουν ως την ιδανική λύση για διάφορες στρατιωτικές εφαρμογές, κατά τις οποίες η κατασκευή υποδομών δεν είναι χρονικά εφικτή. Ακόμα όμως κι αν υπήρχε χρόνος για τη δημιουργία σταθμών βάσης, το όλο δίκτυο θα ήταν πολύ ευάλωτο στις επιθέσεις. Τα στρατιωτικά οχήματα σε ένα πεδίο μάχης ή ένας στόλος πλοίων στη θάλασσα αποτελούν περιπτώσεις τέτοιων δικτύων. Η ανάπτυξη νέων τεχνολογιών, όπως το Bluetooth και το IEEE 802.11, διευκόλυναν την επέκταση των ad hoc δικτύων πέρα από τον στρατιωτικό τομέα. Σημαντική εφαρμογή των ad hoc δικτύων αποτελούν τα δίκτυα αισθητήρων (Sensor Networks). Σε αυτά, οι αυτόνομοι κόμβοι του δικτύου περιέχουν αισθητήρες που καταγράφουν μετρήσεις για διάφορα φυσικά ή περιβαλλοντικά μεγέθη. Έτσι, για παράδειγμα, αξιοποιώντας τις μετρήσεις που στέλνουν οι αισθητήρες, το κέντρο ελέγχου μιας κρίσιμης υποδομής μπορεί να έχει συνέχεια μια ολοκληρωμένη εικόνα της κατάστασης της υποδομής. Τοποθετώντας αισθητήρες σε δάση, το δασαρχείο μπορεί να ενημερώνεται έγκαιρα για την παρουσία καπνού προλαβαίνοντας την εξάπλωση της φωτιάς. Η χρήση των δικτύων αισθητήρων επεκτείνεται στον ανθρώπινο οργανισμό, στο οδικό δίκτυο, στις μηχανές παραγωγής, στα έξυπνα σπίτια κ.α. με τον πλήθος των εφαρμογών τους να πολλαπλασιάζεται. Παρακάτω παρουσιάζονται μερικά περιβάλλοντα που εκμεταλλεύονται την ευελιξία και την ευκολία δημιουργίας των ad hoc δικτύων για την επίτευξη επικοινωνίας. - Επιχειρήσεις ομάδων διάσωσης: Τα μέλη της ομάδας, συνήθως κάτω από αντίξοες συνθήκες, πρέπει να βρίσκονται σε συνεχή επικοινωνία για την ανταλλαγή σχετικών πληροφοριών. - Υποανάπτυκτες περιοχές: Χώρες του τρίτου κόσμου αποτελούμενες από δύσβατα εδάφη, έχουν τη δυνατότητα να εγκαταστήσουν απευθείας ad hoc δίκτυα, χωρίς να πρέπει πρώτα να ξοδέψουν τον χρόνο, το χρήμα και την ενέργεια που απαιτούνται κατά την εγκατάσταση ενός ενσύρματου δικτύου. - Εμπορικά περιβάλλοντα: Προσφέρουν υπηρεσίες όπως το ηλεκτρονικό εμπόριο, τη δυναμική πρόσβαση σε στοιχεία πελατών που είναι αποθηκευμένα σε μια κεντρική μονάδα, την παροχή συνεπών βάσεων δεδομένων προς όλους τους πελάτες κ.α. 8

- Εκπαιδευτικές εφαρμογές: Όπως η δημιουργία εικονικών τάξεων ή συνεδριακών αιθουσών, η εγκαθίδρυση ad hoc επικοινωνίας κατά τη διάρκεια συνεδρίων,meetings ή διαλέξεων κ.α. - Υπηρεσίες με γνώση της τοποθεσίας: Περιλαμβάνουν υπηρεσίες πληροφορίας, όπως για παράδειγμα διαφήμιση ειδικών υπηρεσιών της τοποθεσίας ή εμφάνιση σε έναν τουρίστα ενός ταξιδιωτικού οδηγού μόλις εισέρχεται στην συγκεκριμένη περιοχή κ.α. 1.3 Δρομολόγηση στα ad hoc δίκτυα Η δρομολόγηση (routing) σε ένα οποιοδήποτε δίκτυο συνίσταται στην εύρεση μονοπατιού από ένα κόμβο πηγής (αποστολέα) σε έναν κόμβο προορισμού (παραλήπτη), κατά μήκος του οποίου θα μεταδοθεί η πληροφορία. Καθώς όμως, στα ad hoc δίκτυα η τοπολογία του δικτύου μπορεί να αλλάζει συνεχώς, με κόμβους να εισέρχονται και να εξέρχονται από αυτό αυθαίρετα και χωρίς προειδοποίηση, η δρομολόγηση σε αυτά χρήζει ιδιαίτερης έρευνας. Πέρα από τη φύση του δικτύου, οι αλγόριθμοι δρομολόγησης πρέπει να λάβουν υπ όψη τους τις περιορισμένες δυνατότητες των τερματικών συσκευών. Εξαιτίας της περιορισμένης εμβέλειας επικοινωνίας κάθε κόμβου, η αποστολή ενός μηνύματος από την πηγή στον προορισμό συνήθως απαιτεί την συνεργασία πολλών ενδιάμεσων κόμβων, οδηγώντας σε μονοπάτια με πολλά βήματα. Επιπλέον περιορισμοί, όπως η διάρκεια ζωής της μπαταρίας, καθώς επίσης και συνολικό εύρος ζώνης του δικτύου, υποδεικνύουν ότι η δρομολόγηση πρέπει να γίνεται με ένα ενεργειακά αποδοτικό τρόπο. Ο πιο απλός αλγόριθμος δρομολόγησης μηνυμάτων, ανεξαρτήτως τύπου δικτύου, είναι η πλημμύρα, στον οποίο κάθε εισερχόμενο πακέτο στέλνεται σε κάθε γείτονα με εξαίρεση αυτόν από τον οποία έφτασε. Μάλιστα, μπορούμε να πούμε ότι τα ασύρματα δίκτυα από τη φύση τους υλοποιούν πλημμύρα, αφού όλα τα μηνύματα που μεταδίδονται από ένα σταθμό μπορούν να ληφθούν από όλους τους άλλους σταθμούς που βρίσκονται εντός της εμβέλειας του. Όπως γίνεται αντιληπτό, ο αλγόριθμος της πλημμύρας δεν είναι καθόλου αποδοτικός, καθώς παράγει πολλά αντίγραφα και αυξάνει τον ανταγωνισμό και τις συγκρούσεις στο κανάλι. Στα ad hoc δίκτυα συγκεκριμένα, η χρήση απλής πλημμύρας οδηγεί στο λεγόμενο πρόβλημα καταιγίδας ευρυεκπομπών (broadcast storm problem) [5]. Προχωρώντας την μελέτη μας σε αλγόριθμους που σχεδιάστηκαν ειδικά για ad hoc δίκτυα μπορούμε να διακρίνουμε δύο διαφορετικές προσεγγίσεις δρομολόγησης, την βασισμένη στην τοπολογία (topology-based) δρομολόγηση και την βασισμένη στις θέσεις (position-based) ή αλλιώς γεωγραφική (geographic) δρομολόγηση. 1.3.1 Βασισμένη στην τοπολογία δρομολόγηση Τα πρωτόκολλα της βασισμένης στην τοπολογία δρομολόγησης αξιοποιούν πληροφορία σχετικά με τους συνδέσμους που υπάρχουν στο δίκτυο για να εκτελέσουν την προώθηση των πακέτων. Ανάλογα με τους αλγόριθμους που χρησιμοποιούν μπορούν να χωριστούν περαιτέρω σε προδραστικά, αντιδραστικά και υβριδικά πρωτόκολλα. 9

Στους προδραστικούς (proactive ή table-driven) αλγορίθμους οι κόμβοι διατηρούν και ενημερώνουν πληροφορίες για την δρομολόγηση πακέτων προς όλα τα διαθέσιμα μονοπάτια του δικτύου, ακόμα κι αν αυτά δεν σε χρήση. Κλασικοί proactive αλγόριθμοι είναι η δρομολόγηση με διανύσματα απόστασης (distance-vector routing, DSDV) και η δρομολόγηση με κατάσταση συνδέσμων (link-state routing, OLSR). Η διατήρηση και των αχρησιμοποίητων μονοπατιών συνιστά το κύριο μειονέκτημα αυτής της προσέγγισης, διότι καταναλώνει άσκοπα σημαντικό μέρος του διαθέσιμου εύρους ζώνης. Οι αντιδραστικοί (reactive ή on-demand-driven) αλγόριθμοι λύνουν ως ένα βαθμό το πρόβλημα αυτό, διατηρώντας μόνο τα μονοπάτια που βρίσκονται εν χρήσει. Αυτό σημαίνει, όμως, ότι κατά πάσα πιθανότητα, για να αρχίσει η μεταφορά των μηνυμάτων, θα πρέπει πρώτα να βρεθεί ένα μονοπάτι που να ενώνει τους κόμβους που θέλουν να επικοινωνήσουν, εισάγοντας έτσι καθυστέρηση στη μετάδοση του πρώτου πακέτου. Επιπρόσθετα, σε περιπτώσεις δικτύων που η τοπολογία αλλάζει συχνά (πχ ad hoc), ο φόρτος που εισάγεται στο δίκτυο παραμένει μεγάλος ακόμα και με τη διατήρηση μόνο των χρησιμοποιούμενων διαδρομών. Τέλος, αν η διαδρομή προς τον παραλήπτη αλλάζει, είναι πολύ πιθανό τα πακέτα που βρίσκονται στο δρόμο να χαθούν. Παραδείγματα reactive αλγορίθμων είναι η Δυναμική Δρομολόγηση Πηγής (Dynamic Source Routing - DSR), o Χρονικά Ταξινομημένος Αλγόριθμος Δρομολόγησης (Temporally-Ordered Routing Algorithm - TORA) και η Δρομολόγηση με Αντιδραστικό Διάνυσα Απόστασης (Ad hoc On-Demand Distance Vector(AODV). Τα υβριδικά (hybrid) πρωτόκολλα δρομολόγησης, όπως το Πρωτόκολλο Δρομολόγησης Ζώνης (Zone Routing Protocol - ZPR), συνδιάζουν τις δύο προαναφερθείσες τεχνικές, έτσι ώστε να πετύχουν μεγαλύτερη αποτελεσματικότητα και κλιμάκωση, διατηρώντας όμως κάποια από τα μειονεκτήματά τους. 1.3.2 Γεωγραφική Δρομολόγηση Οι αλγόριθμοι δρομολόγησης αυτής της προσέγγισης εξαλείφουν κάποια από τα προβλήματα των βασισμένων στην τοπολογία αλγορίθμων, χρησιμοποιώντας κάποιες επιπλέον πληροφορίες. Συγκεκριμένα, όπως δηλώνεται κι από το όνομα τους, απαιτούν να γνωρίζουν την γεωγραφική (φυσική) θέση των κόμβων. Συνήθως, κάθε κόμβος ενημερώνεται για τη θέση του μέσω κάποιας υπηρεσίας εντοπισμού θέσης, όπως το GPS. Ο αποστολέας ενός πακέτου προσδιορίζει τη θέση του παραλήπτη με τη βοήθεια μιας υπηρεσίας τοποθεσίας (location service) και την περιλαμβάνει στην διεύθυνση προορισμού του πακέτου. Η απόφαση δρομολόγησης σε κάθε κόμβο λαμβάνεται με βάση τη γεωγραφική θέση του κόμβου προορισμού που περιέχεται στο πακέτο και τις θέσεις των γειτόνων του κόμβου προώθησης. Έτσι, οι αλγόριθμοι της γεωγραφικής δρομολόγησης δεν απαιτούν ούτε την δημιουργία και διατήρηση μονοπατιών, ούτε την αποθήκευση πινάκων δρομολόγησης γλιτώνοντας έτσι και την αποστολή μηνυμάτων για να τους κρατάνε ενήμερους. Επίσης, πολύ σημαντικό είναι το γεγονός ότι η παράδοση των πακέτων δεν επηρεάζεται από αλλαγές στην τοπολογία του δικτύου ανάμεσα στον αποστολέα και τον παραλήπτη. Τέλος, ένα άλλο πλεονέκτημα αυτής της προσέγγισης είναι ότι υποστηρίζει την παράδοση πακέτων σε όλους τους κόμβους μια δοσμένης 10

γεωγραφικής περιοχής. Αυτό το είδος υπηρεσίας ονομάζεται γεωεκπομπή (geocasting) και είναι ένα είδος πολυεκπομπής. Να σημειώσουμε σε αυτό το σημείο ότι αν ένας κόμβος γνωρίζει μια πιο ακριβή διεύθυνση του προορισμού, έχει τη δυνατότητα να ενημερώσει τη διεύθυνση στο πακέτο πριν το προωθήσει. Όπως προαναφέραμε, απαιτείται η γνώση των θέσεων των γειτόνων του τρέχοντος κόμβου για να ληφθεί η απόφαση δρομολόγησης. Αυτό επιτυγχάνεται με την περιοδική αποστολή πλαισίων από κάθε κόμβο, που περιέχουν την διεύθυνσή τους. Με αυτό τον τρόπο οι κόμβοι ενημερώνονται για τους γείτονες τους. Υπάρχουν τρεις κύριες στρατηγικές για την προώθηση του πακέτου στη γεωγραφική δρομολόγηση: Άπληστη προώθηση (greedy routing): Το πακέτο προωθείται σε ένα γείτονα ενός βήματος που βρίσκεται πλησιέστερα στον προορισμό από ότι ο κόμβος προώθησης. Υπάρχουν διάφορες στρατηγικές για την επιλογή του γείτονα τις οποίες θα αναλύσουμε εκτενώς στο Κεφάλαιο 2. Περιορισμένη πλημμύρα (restricted flooding): Το πακέτο προωθείται όχι μόνο σε ένα αλλά σε πολλούς γείτονες ενός βήματος που βρίσκονται προς την κατεύθυνση του κόμβου προορισμού. Ιεραρχική Δρομολόγηση (hierarchical approaches): Οι τεχνικές αυτές εφαρμόζοντας κάποιο είδος ιεραρχίας στους κόμβους του δικτύου, μειώνουν τη πολυπλοκότητα τους και έτσι επιτυγχάνουν μεγάλη κλιμάκωση στο πλήθος των κόμβων. Για παράδειγμα, επιβάλλοντας μια ιεραρχία 2 επιπέδων, μπορούμε να εφαρμόζουμε τον proactive αλγόριθμο των διανυσμάτων απόστασης αν ο προορισμός είναι κοντά (σε πλήθος βημάτων) στον κόμβο προώθησης και άπληστη προώθηση αν είναι μακριά. (Terminodes project του [1]) Είναι προφανές ότι οι δύο πρώτες στρατηγικές μπορεί να αποτύχουν αν δεν υπάρχει γειτονικός κόμβος που να βρίσκεται πλησιέστερα στον προορισμό. Για την αντιμετώπιση αυτού του προβλήματος επιστρατεύονται τεχνικές ανάκαμψης, για τις οποίες θα μιλήσουμε στο επόμενο κεφάλαιο. 1.4 Περιγραφή Δρομολόγησης Τροχιάς Τα πλεονεκτήματα της γεωγραφικής δρομολόγησης κάνουν τους αλγόριθμους της κατάλληλους για μεγάλα δίκτυα, με κόμβους που χαρακτηρίζονται από ενεργειακούς περιορισμούς (δίκτυα αισθητήρων, οχηματικά δίκτυα). Η εμφάνιση τέτοιων δικτύων γίνεται όλο και πιο εμφανής, εντείνοντας παράλληλα τις έρευνες για τεχνικές δρομολόγησης σε αυτά. Μία σχετικά καινούργια τεχνική προώθησης, που ανήκει στην κατηγορία της γεωγραφικής δρομολόγησης, είναι η Προώθηση Τροχιάς (Trajectory Based Forwarding - TBF) [2]. Η βασική ιδέα της προσέγγισης αυτής είναι η δρομολόγηση των πακέτων κατά μήκος μιας τροχιάς (trajectory), που ενώνει τον αποστολέα με τον παραλήπτη. Η τροχιά υπολογίζεται πριν αρχικά και αποθηκεύεται στα πακέτα. Στη συνέχεια, όταν ένα πακέτο φτάσει σε ένα ενδιάμεσο κόμβο, ο 11

κόμβος στον οποίο θα προωθηθεί επιλέγεται συνυπολογίζοντας τα εξής δύο κριτήρια: 1) την πρόοδο του πακέτου κατά μήκος της τροχιάς και 2) την απόκλιση του πακέτου από τη τροχιά. Με βάση αυτά τα δύο κριτήρια έχουν προταθεί αρκετοί κανόνες για την επιλογή του επόμενου βήματος. Στο Κεφάλαιο 3 θα περιγράψουμε εκτενώς έναν τέτοιο κανόνα. Να επισημάνουμε σε αυτό το σημείο ότι η τροχιά δεν είναι ανάγκη να είναι ευθεία γραμμή. Για την ακρίβεια, υπάρχουν πολλές δικτυακές εφαρμογές που απαιτούν μονοπάτια διαφορετικά από το κοντινότερο μονοπάτι. Μία τέτοια χρήση είναι η αποστολή πακέτων από διαφορετικά μονοπάτια ώστε να επιτύχουμε ομοιόμορφη κατανάλωση μπαταρίας (εξισορρόπηση φορτίου). Επιπλέον, υπάρχει η περίπτωση η δρομολόγηση με βάση την ευθεία γραμμή που ενώνει τους κόμβους που θέλουν να ανταλλάξουν πληροφορία να μην είναι δυνατή. Αυτό μπορεί να συμβεί για διάφορους λόγους όπως εμπόδια που βρίσκονται ανάμεσα τους ή περιορισμούς ασφαλείας. 1.5 Διάρθρωση εργασίας Η δομή της εργασίας σε κεφάλαια συνοψίζεται ως εξής: Στο Κεφάλαιο 1 περιγράφουμε την έννοια των ad hoc δικτύων και καταγράφουμε τα χαρακτηριστικά και τις εφαρμογές τους. Στη συνέχεια, παρουσιάζουμε τις πιο γνωστές μεθόδους δρομολόγησης σε αυτά, δίνοντας έμφαση στη δρομολόγηση τροχιάς. Στο Κεφάλαιο 2 γίνεται λεπτομερής περιγραφή μιας σειράς διαφορετικών πρωτοκόλλων δρομολόγησης τροχιάς στα ad hoc δίκτυα. Το Κεφάλαιο 3 παρουσιάζονται τα αποτελέσματα της προσομοίωσης των πρωτοκόλλων δρομολόγησης. Στην αρχή του κεφαλαίου ορίζονται μετρικές απόδοσης των μεθόδων. Ακολουθεί αξιολόγηση και σύγκριση των πρωτοκόλλων δρομολόγησης. Τέλος, στο Κεφάλαιο 4 περιέχεται μια ανασκόπηση της εργασίας και προτείνονται πιθανές επεκτάσεις και βελτιώσεις στην υλοποίηση. 1.6 Ευχαριστίες Θα ήθελα να ευχαριστήσω θερμά τον κ. Σταύρο Τουμπή, που επέβλεψε την εργασία μου αυτή και που ήταν δίπλα μου σε κάθε δυσκολία πρόθυμος να με βοηθήσει. Η υποστήριξή του ήταν καίρια και καθοριστική για την ανάπτυξη και ολοκλήρωση της εργασίας. Να ευχαριστήσω επίσης τα μέλη και τη διοίκηση του Εργαστηρίου Πληροφοριακών Συστημάτων του Τμήματος Πληροφορικής του Οικονομικού Πανεπιστημίου Αθηνών για την άμεση παραχώρηση και παροχή πρόσβασης σε υπολογιστή του εργαστηρίου. 12

ΚΕΦΑΛΑΙΟ 2 ΑΠΛΗΣΤΕΣ ΜΕΘΟΔΟΙ ΠΡΟΩΘΗΣΗΣ ΚΑΙ ΣΤΡΑΤΗΓΙΚΕΣ ΑΝΑΚΑΜΨΗΣ Όπως αναφέρθηκε και στο προηγούμενο κεφάλαιο, στις άπληστες μεθόδους, η γεωγραφική θέση του τελικού παραλήπτη αποτελεί σημείο αναφοράς για την δρομολόγηση του πακέτου. Όταν ένας ενδιάμεσος κόμβος λάβει ένα πακέτο, το προωθεί σε γείτονα του που βρίσκεται προς την κατεύθυνση του κόμβου προορισμού. Καθώς όμως, τις περισσότερες φορές, θα υπάρχουν αρκετοί γείτονες που βρίσκονται πλησιέστερα από αυτόν στον προορισμό, επιστρατεύεται κάποια μέθοδος για την επιλογή ενός εξ αυτών. Θα αρχίσουμε την εξέταση του κεφαλαίου αυτού με την υλοποίηση μιας προσέγγισης δρομολόγησης Τροχιάς και μια παραλλαγή της που την βελτιώνει ελαφρώς και μετά θα εξετάσουμε τους διαφορετικούς τρόπους με τους οποίους μπορεί να γίνει η επιλογή επόμενου βήματος στις άπληστες μεθόδους. Στη συνέχεια θα αναφερθούμε στη δρομολόγηση με όψεις (face routing) και θα παρουσιάσουμε μερικές προσεγγίσεις αυτής της κατηγορίας. Θα δούμε επίσης, πώς ο συνδυασμός των άπληστων μεθόδων με μια τεχνική δρομολόγησης με όψεις μπορεί να επιτύχει εγγυημένη παράδοση των πακέτων. Τέλος, θα παρουσιάσουμε τον αλγόριθμο εύρεσης ελάχιστου μονοπατιού του Dijkstra και τη δρομολόγηση σε αυτό. Παραδοχές πρότυπου δικτύου Η προσομοίωση των αλγορίθμων υλοποιήθηκε σε ένα πρότυπο δίκτυο που διέπεται από κάποιες παραδοχές. Τα χαρακτηριστικά του δικτύου είναι: 1) Είναι πλήρως συμμετρικό. Αυτό σημαίνει, εκτός των άλλων, ότι όλοι οι κόμβοι του δικτύου έχουν την ίδια εμβέλεια (ακτίνα) εκπομπής. 2) Οι θέσεις των κόμβων στο δίκτυο παρήχθησαν τυχαία ακολουθώντας την ομοιόμορφη χωρική κατανομή Poisson. 3) Ως τροχιά (trajectory) θεωρούμε την ευθεία γραμμή που ενώνει τον αποστολέα με τον παραλήπτη και παριστάνεται στα σχήματα με μαύρο χρώμα 4) Ως αρχικός κόμβος (αποστολέας) επιλέγεται ο κόμβος που βρίσκεται πιο κοντά στην αρχή της τροχιάς και ως τελικός κόμβος (παραλήπτης) αυτός που βρίσκεται πιο κοντά στο τέλος της τροχιάς. 2.1 Δρομολόγηση Τροχιάς με Συνάρτηση Κόστους Ένα από τα πιο κρίσιμα ζητήματα που εισάγουν τα ad hoc δίκτυα είναι οι ενεργειακοί περιορισμοί που τα διέπουν. Μια τεχνική δρομολόγησης τροχιάς που λογαριάζει αυτούς τους 13

περιορισμούς, προτάθηκε στο [4]. Σκοπός της μεθόδου είναι να περιορίσει το κόστος ανά βήμα δρομολόγησης παρέχοντας όμως ταυτόχρονα και πρόοδο στη τροχιά. Το κόστος, που μπορεί να είναι η κατανάλωση οποιουδήποτε πόρου του δικτύου, υπολογίζεται βάσει μια συνάρτησης κόστους, που εξαρτάται από την απόσταση των δύο κόμβων που επικοινωνούν (περισσότερα για τη συνάρτηση κόστους θα πούμε στο στην Ενότητα 3.1). Έτσι χρησιμοποιώντας το λόγο (κόστος βήματος) / (πρόοδο κατά μήκος της τροχιάς), διαλέγει ως επόμενο βήμα, τον κόμβο που τον ελαχιστοποιεί. Στην εικόνα 2-1(α) απεικονίζεται το αποτέλεσμα δρομολόγησης με αυτή τη τεχνική προώθησης. Στη συνέχεια του [4] παρατηρήθηκε ότι σε μονοπάτια με μεγάλο πλήθος βημάτων, το μονοπάτι που προκύπτει είναι πολύ πιθανό να παρουσιάζει μεγάλη απόκλιση από τη τροχιά. Γι αυτό το λόγο υλοποιήθηκε μια παραλλαγή της μεθόδου η οποία χρησιμοποιεί έναν κανόνα που περιορίζει το πρόβλημα. Στην ενότητα που ακολουθεί παρουσιάζουμε τον κανόνα αυτό, μαζί με άλλες άλλους δύο κανόνες που υλοποιήσαμε για λογαριασμό της δικής μας υλοποίησης. Εικόνα 2-1: Δρομολόγηση τροχιάς με συνάρτηση κόστους: (α) απλή περίπτωση, (β) με εφαρμογή του ΚΠΑ-1, (γ) με εφαρμογή του ΚΠΑ-2. 14

2.1.1 Κανόνες Περιορισμού Απόκλισης Τους κανόνες που θα παρουσιάσουμε ευθύς αμέσως τους ονομάσαμε Κανόνες Περιορισμού Απόκλισης και από εδώ και στο εξής θα αναφερόμαστε σε αυτούς ως ΚΠΑ. Οι κανόνες αυτοί ουσιαστικά περιορίζουν ή αλλάζουν το σύνολο των γειτονικών κόμβων που μπορούν να επιλεγούν ως επόμενο βήμα, με σκοπό να μειώσουνε την απόκλιση του τελικού μονοπατιού από την τροχιά. ΚΠΑ-1 Ο κανόνας αυτός που χρησιμοποιήθηκε στο [4] εισάγει την εξής τροποποίηση στο σύνολο των διαθέσιμων για επιλογή γειτονικών κόμβων: αποκλείονται όλοι οι γειτονικοί κόμβοι οι οποίοι βρίσκονται από την ίδια πλευρά της τροχιάς με τον κόμβο προώθησης και έχουν απόσταση από τη τροχιά μεγαλύτερη από αυτή του κόμβου προώθησης. Στην Εικόνα 2-2 οι κόμβοι που βρίσκονται στη γκρι περιοχή αποκλείεται να επιλεγούν ως το επόμενο βήμα από τον κόμβο προώθησης F. Έτσι στο παράδειγμα της εικόνας ο μοναδικός υποψήφιος που μοιραία επιλέγεται είναι ο κόμβος Α. Η εκτέλεση του αλγορίθμου δρομολόγησης τροχιάς με συνάρτηση κόστους και εφαρμογή του ΚΠΑ-1 φαίνεται στην εικόνα 2-1(β). Εικόνα 2-2: Εφαρμογή του ΚΠΑ-1. Ο κόμβος προώθησης F επιλέγει ως επόμενο βήμα τον κόμβο Α, απορρίπτοντας τους κόμβους που βρίσκονται στη γκρι περιοχή. ΚΠΑ-2 Οι συγγραφείς του [4] εντόπισαν το εξής μειονέκτημα του ΚΠΑ-1. Συμβαίνει πολύ συχνά να υπάρχουν γειτονικοί κόμβοι με πολύ χαμηλό λόγο κόστους/προόδου, οι οποίοι όμως 15

απορρίπτονται διότι βρίσκονται ελάχιστα πιο μακριά από τη τροχιά από τον κόμβο προώθησης. Χαρακτηριστικό παράδειγμα αποτελεί η εικόνα 2-2. Ο κόμβος Ν δίνει σχεδόν την ίδια πρόοδο κατά μήκους της τροχιάς με τον κόμβο A, όμως η απόστασή του από τον κόμβο προώθησης F είναι αρκετά μικρότερη από αυτή του Α, άρα και το κόστος που απαιτείται. Παρόλα αυτά με χρήση του ΚΠΑ-1 επιλέγεται ο κόμβο Α όπως είδαμε. Ο ΚΠΑ-2 έρχεται να λύσει το μειονέκτημα αυτό ως εξής: Ένας γειτονικός κόμβος ανήκει στους υποψήφιους επόμενους κόμβους, αν το διάνυσμα με αρχή τον κόμβο προώθησης και πέρας τον γειτονικό κόμβο, σχηματίζει γωνία με την ευθεία της τροχιάς μικρότερη από κάποια ορισμένη γωνία α. Στην εικόνα 2-3 σημειώνεται με κίτρινο χρώμα η επιπλέον περιοχή που εξετάζει ο ΚΠΑ-2 για εύρεση του επόμενου βήματος συγκριτικά με τον ΚΠΑ-1. Συνεπώς, στο παράδειγμα της εικόνας με χρήση του ΚΠΑ-2 επιλέγεται ο κόμβος Ν. Στην Εικόνα 2-1(γ) φαίνεται το μονοπάτι που παράγει ο αλγόριθμος δρομολόγησης τροχιάς με συνάρτηση κόστους και εφαρμογή του ΚΠΑ-2. Εικόνα 2-3: Εφαρμογή του ΚΠΑ-2. Με κίτρινο χρώμα απεικονίζεται η επιπλέον περιοχή που εξετάζεται από τον ΚΠΑ-2 σε σχέση με τον ΚΠ-1. Επιλέγεται ο κόμβος Ν ως επόμενο βήμα. ΚΠΑ-3 Θέλοντας να χαλαρώσουμε κι άλλο τον ΚΠΑ, ώστε να μη βρεθούμε σε κατάσταση όπου δεν υπάρχουν υποψήφιοι γείτονες για επιλογή του επόμενου βήματος και εκμεταλλευόμενοι το γεγονός ότι η τροχιά που χρησιμοποιήσαμε στην υλοποίηση είναι ευθεία γραμμή, δημιουργήσαμε τον ΚΠΑ-3. Σε αυτόν τον κανόνα ο χώρος επιλογής του επόμενου κόμβου 16

εξαρτάται από το διάνυσμα με αρχή τον κόμβο προώθησης και πέρας τον κόμβο προορισμού και ορίζεται όπως φαίνεται στην Εικόνα 2-4. Εικόνα 2-4: Εφαρμογή ΚΠΑ-3. Ο κόμβος προώθησης F αποκλείει τους κόμβους που βρίσκονται στην γκρι περιοχή. 2.2 Μέθοδοι Άπληστης Προώθησης Το μεγαλύτερο πλεονέκτημα των άπληστων μεθόδων είναι ότι η πληροφορία που πρέπει να είναι αποθηκευμένη κάθε στιγμή σε κάθε κόμβο, ώστε να λάβουν την απόφαση δρομολόγησης είναι αμελητέα. Συγκεκριμένα, η πληροφορία εξαντλείται στη γνώση των θέσεων των γειτονικών κόμβων του κόμβου προώθησης, του αποστολέα και του παραλήπτη. Οι άπληστες μέθοδοι δεν είναι κατά βάση μέθοδοι δρομολόγησης τροχιάς. Αυτό έχει ως συνέπεια, μερικές από αυτές, να αποκλίνουν πολύ από τη τροχιά. Προσπαθώντας να μειώσουμε αυτή την απόκλιση, πλαισιώσαμε τις μεθόδους με κάποιο κανόνα περιορισμού απόκλισης. Οι σημαντικότερες μέθοδοι άπληστης προώθησης είναι οι εξής: 2.2.1 Μέγιστη Πρόοδος μέσα στην Ακτίνα (MFR) Στην στρατηγική αυτή επιλέγεται ο γειτονικός κόμβος ο οποίος βρίσκεται πλησιέστερα στον προορισμό. Μια παραλλαγή που χρησιμοποιήσαμε στην υλοποίηση μας, επιλέγει τον γείτονα που παρουσιάζει την μεγαλύτερη πρόοδο κατά μήκους της τροχιάς προς τον κόμβο προορισμού 17

(Εικόνα 2-5). Ουσιαστικά, ο αλγόριθμος βρίσκει τις προβολές των γειτονικών κόμβων πάνω στη τροχιά και επιλέγει εκείνον που η προβολή του είναι πιο μακριά από την προβολή του κόμβου προώθησης προς την κατεύθυνση του προορισμού. Σκοπός του MFR είναι να ελαχιστοποιήσει τον αριθμό των βημάτων (hops) που πρέπει να κάνει ένα πακέτο για να φτάσει στον προορισμό. Παρόλα αυτά, τείνει να παράγει μονοπάτια με αρκετά μεγάλη απόκλιση από την ιδανική τροχιά κάνοντας τη χρήση ενός κανόνα περιορισμού απόκλισης απαραίτητη. Εικόνα 2-5: Εφαρμογή της μεθόδου MFR. Το πακέτο προωθείται στον κόμβο που βρίσκεται μέσα στην εμβέλεια εκπομπής του κόμβου προώθησης και παρουσιάζει τη μεγαλύτερη πρόοδο στη τροχιά 2.2.2 Πλησιέστερος κόμβος με Πρόοδο προς τα Εμπρός (NFP) Στην στρατηγική αυτή επιλέγεται ο κοντινότερος γειτονικός κόμβος του τρέχοντος αποστολέα του πακέτου, με την προϋπόθεση πάντα ότι βρίσκεται πιο κοντά στον κόμβο προορισμού (Εικόνα 2-6). Έχει το πλεονέκτημα ότι αν όλοι οι κόμβοι χρησιμοποιούν NFP, η πιθανότητα να προκύψουν συγκρούσεις πακέτων μειώνεται σημαντικά. Όπως είναι φυσικό, σε αντίθεση με τον MFR, το τελικό μονοπάτι αποτελείται συνήθως από πολλά βήματα, ιδιότητα που δεν είναι απαραίτητα αρνητική. Αντιθέτως, αν το κόστος αποστολής του πακέτου αυξάνεται κατά πολύ όσο αυξάνεται η απόσταση του βήματος, μας συμφέρει η τελική διαδρομή να αποτελείται από βήματα μικρού μήκους. 18

Εικόνα 2-6: Εφαρμογή της μεθόδου NFP. Το πακέτο προωθείται στον πλησιέστερο που πραγματοποιεί πρόοδο στη τροχιά 2.2.3 Ελάχιστη Απόκλιση (Minimum Deviation) Στην στρατηγική αυτή επιλέγεται ο γειτονικός κόμβος ο οποίος έχει την μικρότερη απόσταση από τη τροχιά (Εικόνα 2-7). Με αυτό τον τρόπο το τελικό μονοπάτι παρουσιάζει τη μικρότερη (με βάση την εμβέλεια εκπομπής κάθε κόμβου) απόκλιση από τη τροχιά. Στην περίπτωση όπου η τροχιά είναι μια ευθεία γραμμή που ενώνει τον αποστολέα με τον παραλήπτη, η στρατηγική αυτή συμπίπτει με τη στρατηγική της Δρομολόγησης Πυξίδας (Compass Routing). Εικόνα 2-7: Εφαρμογή της μεθόδου NFP. Το πακέτο προωθείται στον πλησιέστερο γειτονικό κόμβο που πραγματοποιεί πρόοδο στη τροχιά 19

2.2.4 Τυχαία Επιλογή Στην στρατηγική αυτή επιλέγεται τυχαία ένας από τους γειτονικούς κόμβους που βρίσκεται πλησιέστερα στον προορισμό. Πλεονέκτημα της είναι ότι μειώνει την ακρίβεια που απαιτείται για τη θέση των γειτόνων, καθώς επίσης και την πολυπλοκότητα των πράξεων που εκτελούνται. Αν και πολύ απλή, εντούτοις αποδίδει καλύτερα σε ορισμένες ειδικές εφαρμογές [3]. Τέλος, στην Εικόνα 2-8 παρουσιάζονται τα παραγόμενα μονοπάτια των τριών πρώτων μεθόδων για το ίδιο δίκτυο. Εικόνα 2-8: Τα μονοπάτια που παρήγαγαν οι άπληστες μέθοδοι για το ίδιο δίκτυο. (α) Μέθοδος MFR, (β) μέθοδος NFP και (γ) μέθοδος ελάχιστης απόκλισης 20

2.3 Μέθοδοι Δρομολόγησης σε Όψεις Δυστυχώς, οι Άπληστες Μέθοδοι Δρομολόγησης δεν εγγυώνται ότι θα βρουν μονοπάτι που να ενώνει τον αποστολέα με τον παραλήπτη, ακόμα κι αν υπάρχει τέτοιο. Θα εξετάσουμε την αίτια του φαινόμενου αυτού στην επόμενη ενότητα. Εξαιτίας του προβλήματος αυτού, οι Άπληστες Μέθοδοι συνήθως πλαισιώνονται από κάποια Μέθοδο Δρομολόγησης σε Όψεις (Face Routing Methods). Στη συνέχεια της ενότητας αυτής θα περιγράψουμε τους δύο πιο γνωστούς αλγόριθμους δρομολόγησης σε όψεις και στην επόμενη ενότητα θα μιλήσουμε για το πώς χρησιμοποιούνται για ανάκαμψη από αποτυχίες των Άπληστων Μεθόδων. Οι μέθοδοι δρομολόγησης σε όψεις μπορούν να χωριστούν σε δύο στάδια: επιπεδοποίηση γράφου δικτύου και διαδοχική διάσχιση όψεων. Επιπεδοποίηση γράφου δικτύου Οι μέθοδοι δρομολόγησης σε όψεις εκτελούνται σε επίπεδους γράφους. Επίπεδο ς(planar) ονομάζεται ένας γράφος όταν μπορεί να σχεδιαστεί στο επίπεδο με τέτοιο τρόπο ώστε δύο οποιεσδήποτε ακμές του να συναντιούνται μόνο σε προκείμενες κορυφές. Ένας επίπεδος γράφος, δηλαδή, δεν περιέχει ακμές που διασταυρώνονται. Μπορούμε να θεωρήσουμε ένα ασύρματο δίκτυο ως ένα γράφο, στον οποίο οι κορυφές παριστάνουν τους κόμβους του δικτύου και μια ακμή μεταξύ δύο κορυφών υπάρχει, αν είναι αρκετά κοντά ώστε να μπορούν να επικοινωνούν μεταξύ τους. Όπως γίνεται εύκολα αντιληπτό, τα πραγματικά δίκτυα δεν μπορούν να παρασταθούν από επίπεδους γράφους, οπότε χρειάζεται να εκτελεστεί κάποιος αλγόριθμος επιπεδοποίησης του δικτύου. Οι πιο δημοφιλείς αλγόριθμοι για επιπεδοποίηση δημιουργούν γράφους γνωστούς στη βιβλιογραφία ως Gabriel Graph (GG) [6], Relative Neighborhood Graph (RNG)[7] και Restricted Delauny Graph (RDG)[8]. Οι αλγόριθμοι αυτοί παράγουν αποδεδειγμένα ένα συνεκτικό, επίπεδο γράφο, εφόσον ο αρχικός γράφος ήταν επίσης συνεκτικός. Περισσότερες πληροφορίες για τον τρόπο λειτουργίας των αλγορίθμων επιπεδοποίησης υπάρχουν στην ενότητα A του Παραρτήματος I. Να σημειώσουμε ότι στα παραδείγματα που ακολουθούν χρησιμοποιήθηκε ο αλγόριθμος Gabriel Graph για την επιπεδοποίηση του γράφου του δικτύου. Στην ενότητα 1 του Παραρτήματος Α, ο αναγνώστης μπορεί να βρει λεπτομέρειες σχετικά με τον τρόπο που επιτυγχάνεται επιπεδοποίηση γράφου με τον αλγόριθμο Gabriel Graph. Διαδοχική Διάσχιση Όψεων Ένας επίπεδος γράφος αποτελείται από όψεις. Οι όψεις είναι ουσιαστικά οι περιοχές πολύγωνα που σχηματίζονται από τις ακμές του γράφου. Οι ακμές χωρίζουν τον γράφο σε πολλές εσωτερικές και μία εξωτερική όψη. (Ο αλγόριθμος που χρησιμοποιήσαμε στην υλοποίηση μας για την εξαγωγή των όψεων από τον επίπεδο γράφο περιγράφεται στην ενότητα 2 του Παραρτήματος Α). Η βασική ιδέα των αλγορίθμων δρομολόγησης σε όψεις είναι η διαδοχική προώθηση των πακέτων σε γειτονικές όψεις του επίπεδου, πλέον, δικτύου, που προοδευτικά πλησιάζουν τον προορισμό (ουσιαστικά που «κόβονται» από τη τροχιά). Η διάσχιση κάθε όψης εκτελείται τοπικά σε κάθε κόμβο με εφαρμογή του γνωστού κανόνα του δεξιού ή αριστερού χεριού (right or left hand rule). Με εφαρμογή του κανόνα του δεξιού χεριού το πακέτο 21

προωθείται στην πρώτη ακμή που βρίσκεται δεξιόστροφα (clockwise) της ακμής από την οποία έφτασε το πακέτο. Αντίθετα στον κανόνα του αριστερού χεριού προωθείται στην πρώτη ακμή που βρίσκεται αριστερόστροφα (counterclockwise) της ακμής από την οποία έφτασε το πακέτο. Παραλλαγές Αλγορίθμων Δρομολόγησης σε Όψεις Υπάρχουν αρκετές παραλλαγές αλγορίθμων αυτής της προσέγγισης που διαφέρουν μεταξύ τους σε δύο σημεία: α) στη συνθήκη που πρέπει να ικανοποιηθεί για την αλλαγή όψης και β) στον κανόνα χεριού που θα εφαρμοστεί για τη διάσχιση της νέας όψης. Γενικά σε όλες τις παραλλαγές, η αλλαγή όψης πραγματοποιείται σε ακμή που τέμνει τη τροχιά. Αυτό που διαφέρει είναι ο κανόνας με τον οποίο θα βρεθεί αυτή η ακμή. Επίσης μια άλλη διαφοροποίηση των αλγορίθμων έγκειται στην επιλογή της ακμής της νέας όψης στην οποία θα προωθηθεί το πακέτο. Όταν ο αλγόριθμος αποφασίσει να αλλάξει όψη, ο κόμβος που πρόκειται να προωθήσει το πακέτο, μπορεί να επιλέξει μία από τις δύο πιθανές ακμές της όψης (κάθε κόμβος αποτελεί κορυφή δύο ακμών σε κάθε όψη). Γενικά, αν μια τεχνική δρομολόγησης σε όψεις προωθεί το πακέτο στην ακμή που δε τέμνεται με τη τροχιά, αποκαλείται ως πριν τη διασταύρωση παραλλαγή, ενώ αν το προωθεί στην άλλη αποκαλείται μετά τη διασταύρωση παραλλαγή. Ο αλγόριθμος όψης-2 (face-2 algorithm) και ο αλγόριθμος της Άπληστης Περιμετρικής Ακαταστασικής Δρομολόγησης (Greedy Perimeter Stateless Routing, GPSR) είναι δύο πολύ γνωστοί και παρόμοιοι αλγόριθμοι δρομολόγησης σε όψεις. Στη συνέχεια θα δούμε πώς λειτουργεί ο αλγόριθμος GPSR, καθώς και μια υλοποίηση του αλγόριθμου όψης-2 που χρησιμοποιεί ένα Γενικό Κανόνα Επιλογής Όψης (General Face Selection Rule) που προτάθηκε στο [9]. 2.3.1 Αλγόριθμος GPSR Στον αλγόριθμο Περιμετρικής Ακαταστασικής Δρομολόγησης (GPSR) εφαρμόζεται αυστηρά ο κανόνας του δεξιού (ή αριστερού) χεριού. Ο αλγόριθμος διασχίζει κάθε όψη μέχρι να βρει την πρώτη ακμή που τέμνει τη τροχιά. Τότε εφαρμόζεται αλλαγή όψης και ο κόμβος προωθείται στην ακμή της νέας όψης που δε τέμνει τη τροχιά. Είναι δηλαδή πριν τη διασταύρωση παραλλαγή. Στην Εικόνα 2-9 φαίνεται το αποτέλεσμα δρομολόγησης με τον αλγόριθμο GPSR στον επίπεδο γράφο του δικτύου μας. Εικόνα 2-9: Το μονοπάτι που προκύπτει με εκτέλεση του αλγορίθμου GPSR. Να υπογραμμίσουμε σε αυτό το σημείο ότι έχει αποδειχθεί ότι αλγόριθμος GPSR, όταν εφαρμόζεται μόνος του (και όχι ως συνδυασμός με κάποια άπληστη μέθοδο), δε μπορεί να 22

εγγυηθεί παράδοση σε αυθαίρετα σχηματισμένους επίπεδους γράφους, καθώς υπάρχει η περίπτωση να πέσει σε αέναη επανάληψη. 2.3.2 Αλγόριθμος υλοποίησης σε όψεις-2 και παραλλαγή Ο αλγόριθμος όψης-2 είναι «μετά τη διασταύρωση παραλλαγή». Για την απόφαση επιλογής κανόνα χεριού όταν το πακέτο προωθείται στην επόμενη όψη, ο Γενικός Κανόνας Επιλογής Όψης κοιτάει μόνο αν το πακέτο θα διατρέξει το πάνω ή το κάτω μέρος του επιπέδου που ορίζεται από τη τροχιά. Συγκεκριμένα, ο κανόνας που θα εφαρμοστεί για τη διάσχιση της νέας όψης θα είναι ο κανόνας του δεξιού χεριού αν ο κόμβος στον οποίο μόλις προωθήθηκε το πακέτο είναι στο κάτω μέρος της τροχιάς. Στην αντίθετη περίπτωση επιλέγεται ο κανόνας του αριστερού χεριού. Η εφαρμογή της προσέγγισης αυτής φαίνεται στην Εικόνα 2-10. Εικόνα 2-10: Υλοποίηση αλγόριθμου όψης-2. Όπως γίνεται αντιληπτό από το παράδειγμα, το πακέτο επιστρέφει αρκετές φορές σε κόμβους που έχει επισκεφθεί ήδη, γεγονός μη επιθυμητό στις επικοινωνίες. Μια παραλλαγή της παραπάνω τεχνικής που προτείνουμε, αποφεύγει τους κόμβους του δικτύου που έχει ήδη επισκεφθεί το πακέτο, λύνοντας έτσι το παραπάνω πρόβλημα και προσφέροντας μια καλύτερη δρομολόγηση (Εικόνα 2-11), με την παράλληλη απαίτηση, βέβαια, οι κόμβοι να γνωρίζουν αυτή τη πληροφορία. Η πληροφορία αυτή μπορεί να εισάγεται στην επικεφαλίδα κάθε πακέτου. Η πιο απλή λύση είναι το κάθε πακέτο να κρατάει όλους του κόμβους από τους οποίους έχει περάσει. Υπάρχει, όμως, η περίπτωση η πρόσθετη αυτή επιβάρυνση στο πακέτο να μην είναι αμελητέα. Γι αυτό το λόγο, ίσως είναι προτιμότερο, να αποθηκεύει μόνο τους ν τελευταίους κόμβους που έχει επισκεφθεί. Πώς όμως θα καθοριστεί το ν, ώστε να μη χάσει η παραλλαγή αυτή την ιδιότητα της; Για να απαντήσουμε σε αυτό, πρέπει πρώτα να κατανοήσουμε την αιτία του προβλήματος. Το πρόβλημα εμφανίζεται όταν η ακμή όψης που κόβει τη τροχιά καταλήγει στον κόμβο από τον οποίο ξεκίνησε η διάσχιση της όψης αυτής. Όταν, δηλαδή, το πακέτο έχει διασχίσει ολόκληρη την όψη. Μια καλή λύση θα ήταν να κρατάει αποθηκευμένους τόσους κόμβους όσο είναι το μέγιστο μήκος όψης στο δίκτυο, ώστε να είναι εγγυημένη η μη επανάληψη κόμβων στο μονοπάτι. Εικόνα 2-11: Βελτιωμένη παραλλαγή του αλγόριθμου όψης-2, χωρίς κύκλους στο μονοπάτι. 23

Σε αντίθεση με τον αλγόριθμο GPSR, ο αλγόριθμος όψης-2 προσφέρει εγγυημένη παράδοση σε οποιοδήποτε επίπεδο γράφο όταν εκτελείται μόνος του, όπως αποδεικνύεται στο [9]. 2.4 Αποτυχία Άπληστων Μεθόδων και Ανάκαμψη με χρήση Δρομολόγησης σε Όψεις Όπως αναφέρθηκε και στην προηγούμενη ενότητα υπάρχουν περιπτώσεις στις οποίες οι άπληστες μέθοδοι αποτυγχάνουν. Αυτό συμβαίνει όταν κανένας γειτονικός κόμβος δε βρίσκεται πλησιέστερα στον προορισμό απ ότι ο κόμβος προώθησης. Τότε ο αλγόριθμος φτάνει σε ένα τοπικό μέγιστο, από το οποίο δε μπορεί να ανακάμψει και η δρομολόγηση αποτυγχάνει. Ένα παράδειγμα αποτυχίας της άπληστης μεθόδου MFR φαίνεται στην Εικόνα 2-12 Ο κόμβος προώθησης είναι ο Ν και ο αλγόριθμος ψάχνει, χωρίς επιτυχία, στους γείτονες του, δηλαδή στους κόμβους που βρίσκονται εντός της εμβέλειας του, να βρει έναν κόμβο που να παρουσιάζει τη μεγαλύτερη πρόοδο στη τροχιά (μαύρη γραμμή στην εικόνα) σε σχέση με τον Ν. Εικόνα 2-12: Αποτυχία άπληστης μεθόδου. Ο κόμβος προώθησης Ν δεν έχει γειτονικούς κόμβους που να προσφέρουν πρόοδο στη τροχιά και να είναι μέσα στην εμβέλειά του. Συχνά, οι άπληστες μέθοδοι πλαισιώνονται με μεθόδους δρομολόγησης σε όψεις, ειδικά για την αντιμετώπιση αυτών των καταστάσεων. Ο αλγόριθμος GPSR και ο αλγόριθμος δρομολόγησης όψης-2, που περιγράψαμε στην προηγούμενη ενότητα αποτελούν τους πιο δημοφιλείς γι αυτό τον σκοπό. Όπως αναφέρεται στο Θεώρημα 4 του [9]: Ο συνδυασμός της άπληστης δρομολόγησης με οποιοδήποτε μηχανισμό ανάκαμψης σε επίπεδο γράφο παρέχει εγγυημένη παράδοση, αν η άπληστη δρομολόγηση μειώνει την απόσταση με τον κόμβο προορισμού σε κάθε βήμα προώθησης και αν ο χρησιμοποιούμενος μηχανισμός ανάκαμψης με όψεις έχει εγγυημένη παράδοση όταν εφαρμόζεται μόνος του. 24

Ο αλγόριθμος GPSR δεν παρέχει εγγυημένη παράδοση όταν εφαρμόζεται μόνος του, όμως όπως αποδεικνύεται στη συνέχεια στο [9] και συγκεκριμένα στο Θεώρημα 6: Ολόκληρο το πρωτόκολλο GPSR παρέχει εγγυημένη παράδοση σε γράφους Σχετικής Γειτονιάς (RNG) και σε γράφους Gabriel (GG). Ο αλγόριθμος δρομολόγησης όψης-2, που όταν εφαρμόζεται μαζί με άπληστη μέθοδο ονομάζεται και αλγόριθμος Άπληστης-σε Όψεις-Άπληστης δρομολόγησης (Greedy-Face- Greedy, GFG), περιλαμβάνεται στο Θεώρημα 4, καθώς προσφέρει εγγυημένη παράδοση όταν εκτελείται μόνος του. Όλοι οι αλγόριθμοι αυτής της κατηγορίας λειτουργούν σε δύο καταστάσεις: την κατάσταση της άπληστης δρομολόγησης και την κατάσταση την δρομολόγησης σε όψεις. Η δρομολόγηση αρχίζει στην κατάσταση της άπληστης δρομολόγησης με χρήση κάποιας αντίστοιχης μεθόδου. Όταν η άπληστη μέθοδος φτάσει σε ένα τοπικό μέγιστο, αποθηκεύεται η θέση του κόμβου αποτυχίας στο πακέτο και η κατάσταση του αλγόριθμου αλλάζει σε δρομολόγηση σε όψεις. Αρχικά υπολογίζεται ο επίπεδος γράφος του δικτύου που απαιτείται από τον αλγόριθμο αυτό. Έπειτα, ανακαλύπτουμε την όψη από την οποία θα ξεκινήσει ο αλγόριθμος και στη συνέχεια γίνεται η διάσχιση της όψης με τη φορά που ορίζει ο αλγόριθμος δρομολόγησης σε όψεις που χρησιμοποιείται. Η δρομολόγηση του πακέτου από όψη σε όψη συνεχίζεται μέχρι να βρεθεί ένας κόμβος ο οποίος να βρίσκεται πλησιέστερα στον προορισμό σε σχέση με την αποθηκευμένη σε αυτό θέση του κόμβου αποτυχίας. Τότε ο αλγόριθμος μπορεί να επιστρέψει στην κατάσταση δρομολόγησης με την άπληστη μέθοδο. Παρακάτω δίνεται ένα παράδειγμα που υλοποιεί τον αλγόριθμο GFG, χρησιμοποιώντας ως μέθοδο άπληστης δρομολόγησης την τεχνική MFR και ως μέθοδο δρομολόγησης σε όψεις την παραλλαγή του Face-2 αλγόριθμου που παρουσιάσαμε στην προηγούμενη ενότητα. Ο τρόπος που ανακάμπτει ο αλγόριθμος αυτός από την κατάσταση στην οποία απέτυχε προηγουμένως η τεχνική MFR, φαίνεται στην Εικόνα 2-13. Μετά την αποτυχία της τεχνικής MFR στον κόμβο Ν εκτελείται ο Face-2 αλγόριθμος. Παρατηρούμε ότι ενώ ο Ν βρίσκεται κάτω από τη τροχιά, αντί να εφαρμοστεί ο κανόνας του δεξιού χεριού, εφαρμόζεται αυτός του αριστερού. Αυτό συμβαίνει μόνο στην περίπτωση όπου η όψη που πρόκειται να διασχίσει το πακέτο είναι η εξωτερική. Αν εφαρμόζαμε τον κανόνα του δεξιού χεριού το πακέτο θα κατευθυνόταν προς τα πίσω ακολουθώντας την περίμετρο του επίπεδου γράφου. Μόλις ο κόμβος G λάβει το πακέτο, συγκρίνει την απόσταση του από τον κόμβο προορισμού με την αντίστοιχη απόσταση του Ν που είναι αποθηκευμένη στην επικεφαλίδα του πακέτου. Ο G βλέπει ότι είναι πιο κοντά στον προορισμό από ότι ο Ν και έτσι η δρομολόγηση επιστρέφει στην εκτέλεση της τεχνικής MFR, έχοντας ανακάμψει επιτυχώς. 25

Εικόνα 2-13: Ανάκαμψη από αποτυχία της άπληστης μεθόδου στον κόμβο Ν. Εκτελείται δρομολόγηση σε όψεις μέχρι τον κόμβο G. Εκεί η δρομολόγηση επιστρέφει στην άπληστη μέθοδο. (α) Ο επίπεδος γράφος του δικτύου. Με καφέ χρώμα οι κόμβοι στους οποίους εκτελείται δρομολόγηση σε όψεις. (β) Η διαδρομή που θα ακολουθήσει το πακέτο για την ανάκαμψη από την αποτυχία. 2.5 Δρομολόγηση με τον αλγόριθμο του Dijkstra Ο αλγόριθμος Dijkstra λύνει αποδεδειγμένα το πρόβλημα συντομότερης διαδρομής, παράγοντας ένα δέντρο με τα συντομότερα μονοπάτια από τη (μοναδική) πηγή προς όλους τους κόμβους του γράφου. Εφαρμόζεται για γράφους με μη αρνητικά βάρη στις ακμές. Ένα παράδειγμα δρομολόγησης φαίνεται με αυτή τη μέθοδο φαίνεται στην Εικόνα 2-14. Εικόνα 2-14: Το παραγόμενο (βέλτιστου κόστους) μονοπάτι που παράγεται από την εκτέλεση του αλγόριθμου Dijkstra Αξίζει να υπενθυμίσουμε όμως σε αυτό το σημείο ότι η δρομολόγηση πακέτων κατά μήκους του συντομότερου μονοπατιού δεν είναι πάντα η ενδεδειγμένη επιλογή, γιατί απαιτείται αρκετός χρόνος για τον υπολογισμό της διαδρομής, και στο εν τω μεταξύ η διαδρομή μπορεί να αλλάξει λόγω της κινητικότητας των κόμβων. 26

Αυτή η τεχνική δρομολόγησης εκτός των άλλων αποτελεί και ένα καλό μέτρο σύγκρισης της αποδοτικότητας των μεθόδων δρομολόγησης. 27

ΚΕΦΑΛΑΙΟ 3 ΠΕΙΡΑΜΑΤΑ, ΣΥΓΚΡΙΣΗ ΠΡΩΤΟΚΟΛΛΩΝ, ΣΥΜΠΕΡΑΣΜΑΤΑ Στο προηγούμενο κεφάλαιο είδαμε μερικά μόνο από τα δεκάδες υπάρχοντα διαφορετικά πρωτόκολλα δρομολόγησης σε ad hoc δίκτυα. Η μεγάλη αυτή ποικιλία πρωτοκόλλων και παραλλαγών τους οφείλεται στην ανάλογη ποικιλία δικτύων (αναφέραμε μερικές χαρακτηριστικές περιπτώσεις στο Κεφάλαιο 1) που συναντάμε, καθένα με διαφορετικές απαιτήσεις και προτεραιότητες. Το γεγονός αυτό, κάνει επιτακτική την ανάγκη για δυνατότητα αξιολόγησης των διαφορετικών πρωτοκόλλων, ώστε να επιλεγεί το κατάλληλο για κάθε περίπτωση δικτύου και εφαρμογής. Για την επίτευξη της αξιολόγησης των μεθόδων χρησιμοποιούνται συνήθως κάποιες μετρικές απόδοσης, οι οποίες ποσοτικοποιούν τα χαρακτηριστικά των μεθόδων κάνοντας πιο εύκολη τη σύγκρισή τους. Στην αρχή του κεφαλαίου αυτού, θα επιχειρήσουμε να περιγράψουμε τις πιο γνωστές μετρικές και τεχνικές αξιολόγησης των μεθόδων δρομολόγησης. Στη συνέχεια, θα παρουσιάσουμε τα αποτελέσματα της υλοποίησης μας και θα έχουμε την ευκαιρία να συγκρίνουμε και σχολιάσουμε κάθε μία από τις μεθόδους δρομολόγησης που αναφέρθηκαν στο Κεφάλαιο 2. 3.1 Μετρικές Αξιολόγησης Μεθόδων Δρομολόγησης Όπως αναφέραμε στην Ενότητα 1.3, οι κινητοί κόμβοι στα ad hoc δίκτυα διέπονται από περιορισμούς ενέργειας, ενώ και το συνολικό διαθέσιμο εύρος ζώνης του δικτύου είναι περιορισμένο. Έτσι, πρωτεύοντα ρόλο για την αξιολόγηση των μεθόδων δρομολόγησης παίζει ο βαθμός κατανάλωσης των πόρων του δικτύου. Εστιάζοντας συγκεκριμένα στη δρομολόγηση βασισμένη σε τροχιά, που αποτελεί το κύριο αντικείμενο αυτής της εργασίας, τα μονοπάτια που παράγουν οι μέθοδοι δρομολόγησης πρέπει να συμπίπτουν όσο το δυνατό περισσότερο με τη τροχιά που χρησιμοποιείται. Χρειάζεται, λοιπόν, μια επιπλέον μετρική που να δείχνει το βαθμό που κάθε μέθοδος το πετυχαίνει αυτό. Τέλος, στις μεθόδους οι οποίες δε παρέχουν εγγυημένη παράδοση πακέτων (άπληστες μέθοδοι), είναι ενδιαφέρον να δούμε την αποτελεσματικότητα εύρεσης μονοπατιού κάθε μεθόδου σε μια σειρά από διαφορετικές τοπολογίες δικτύων. 28

Οι δύο πρώτες μετρικές που θα παρουσιάσουμε έχουν στόχο την ποσοτικοποίηση της κατανάλωσης ενέργειας κάθε μεθόδου, η τρίτη την ποσοτικοποίηση της απόκλισης κάθε μεθόδου από τη τροχιά, ενώ η τελευταία στοχεύει την αποτελεσματικότητα εύρεσης μονοπατιού της μεθόδου. Απαρίθμηση αναπηδήσεων Η πιο δημοφιλής μετρική για μεθόδους δρομολόγησης είναι η απαρίθμηση αναπηδήσεων (hop count), η οποία καταγράφει το συνολικό πλήθος των μεταδόσεων μιας διαδρομής από μια πηγή σε έναν προορισμό. Όταν επιλέγουμε αυτή την μετρική, υποθέτουμε ότι οι κόμβοι δεν έχουν τη δυνατότητα να αυξομειώνουν την εμβέλεια εκπομπής τους, ώστε να μεταδώσουν στον επιλεγμένο γείτονα με την ελάχιστη κατανάλωση ενέργειας. Επίσης, θεωρούμε ότι η καθυστέρηση μετάδοσης είναι ανάλογη με το πλήθος των αναπηδήσεων και ότι το κόστος, σε κατανάλωση ενέργειας και εύρους ζώνης, που εισάγεται κατά την έναρξη επικοινωνίας κάθε κόμβου με τον γείτονά του είναι μεγάλο. Μετρική ενέργειας Σε δίκτυα όπου οι κόμβοι έχουν τη δυνατότητα να ρυθμίζουν την ενέργεια που καταναλώνουν για την εκπομπή τους (ξέροντας τη θέση των γειτόνων τους), η απαρίθμηση αναπηδήσεων μπορεί να αντικατασταθεί με μία μετρική ενέργειας (power metric). Στόχος της ρύθμισης της ενέργειας εκπομπής είναι να ελαχιστοποιηθεί η ενέργεια που καταναλώνεται σε κάθε βήμα της δρομολόγησης. Για την μέτρηση της ενέργειας που καταναλώνεται σε κάθε βήμα, η μετρική αυτή χρησιμοποιεί κάποια συνάρτηση κόστους (cost function) που εξαρτάται από την απόσταση των δύο κόμβων που επικοινωνούν. Ένα πολύ γνωστό μοντέλο που χρησιμοποιείται και εφαρμόσαμε και εμείς στην υλοποίηση μας είναι το εξής: αν η απόσταση μεταξύ των κόμβων είναι d, τότε η ενέργεια που απαιτείται να καταναλωθεί είναι u(d)=αd b +c. Η σταθερά c αναπαριστά την ενέργεια που καταναλώνεται στο εσωτερικό των δύο κόμβων και φυσικά είναι ανεξάρτητη από την απόσταση μεταξύ τους. Αντίθετα, ο όρος αd b αναπαριστά την ενέργεια που καταναλώνεται από τον ενισχυτή εκπομπής του αποστολέα για να φτάσει το σήμα στον παραλήπτη και εξαρτάται από την απόσταση μεταξύ τους. Η μεταβλητή b παίρνει τιμές στο διάστημα από 2 ως 6, ανάλογα με το περιβάλλον στο οποίο εκτελείται η επικοινωνία των κόμβων. Μέση απόκλιση από τη τροχιά Η μετρική που χρησιμοποιείται για να αξιολογήσουμε κατά πόσο το μονοπάτι που παράγεται από μια μέθοδο δρομολόγησης είναι συνεπές με την ιδεατή τροχιά είναι η μέση απόκλιση από τη τροχιά (average deviation from the trajectory). Στη μετρική αυτή, σε κάθε βήμα δρομολόγησης, 29

υπολογίζεται η απόσταση του κόμβου που προωθήθηκε το πακέτο από τη τροχιά και στο τέλος υπολογίζεται ο μέσος όρος αυτών των τιμών. Ποσοστό επιτυχημένων δρομολογήσεων Ο προφανής τρόπος να ποσοτικοποιήσουμε την αποτελεσματικότητα κάθε μεθόδου να βρίσκει μονοπάτι από τον αποστολέα στον προορισμό είναι να υπολογίσουμε το ποσοστό των επιτυχημένων δρομολογήσεων (success routing rate) σε διαφορετικές τοπολογίες δικτύων. Υπολογίζεται ως ο λόγος του πλήθους των επιτυχημένων δρομολογήσεων προς το σύνολο των δρομολογήσεων που επιχειρήθηκαν. 3.2 Αποτελέσματα προσομοίωσης Στα πλαίσια της εργασίας, υλοποιήσαμε τις εξής 10 παραλλαγές μεθόδων προώθησης (σε παρένθεση η συντομογραφία με την οποία θα αναφερόμαστε σε αυτές): - Απλή δρομολόγηση τροχιάς με συνάρτηση κόστους, χωρίς ΚΠΑ ( TBF-Simple) - Δρομολόγηση τροχιάς με συνάρτηση κόστους, εφαρμόζοντας τον ΚΠΑ 1 (TBF1) - Δρομολόγηση τροχιάς με συνάρτηση κόστους, εφαρμόζοντας τον ΚΠΑ 2 (TBF2) - Μέγιστη πρόοδο μέσα στην ακτίνα (MFR) - Πλησιέστερο με πρόοδο προς τα μπροστά (NFP) - Ελάχιστη απόκλιση (MinDev) - Δρομολόγηση σε όψεις-2 (Face2) - Δρομολόγηση σε όψεις-2 με βελτίωση (Face2 Impr) - Αλγόριθμος περιμετρικής ακαταστασικής δρομολόγησης (GPSR) - Αλγόριθμος άπληστης-σε όψεις-άπληστης δρομολόγησης (GFG) - Αλγόριθμος Dijkstra (Dijkstra) Στη συνέχεια προσομοιώσαμε τις παραλλαγές αυτές σε 50 διαφορετικές τοπολογίες δικτύων. Τα διαφορετικά δίκτυα δημιουργήθηκαν με τη διαδοχική εκτέλεση της μεθόδου rand() της Matlab (παράγει ψευδοτυχαίες τιμές), ακολουθώντας την ομοιόμορφη κατανομή Poisson και τις παραδοχές του πρότυπου δικτύου που παρουσιάστηκε στην εισαγωγή του Κεφαλαίου 2. Παραθέτουμε ξανά τις παραδοχές αυτές, προσθέτοντας επιπλέον συγκεκριμένα δεδομένα της προσομοίωσης. Παραδοχές πρότυπου δικτύου και παράμετροι προσομοίωσης 1) Το δίκτυο είναι πλήρως συμμετρικό. Αυτό σημαίνει, εκτός των άλλων, ότι όλοι οι κόμβοι του δικτύου έχουν την ίδια εμβέλεια (ακτίνα) εκπομπής. Στην προσομοίωση χρησιμοποιήθηκε ακτίνα r = 3. 30