ΣΤΗΝ ΕΠΙΣΤΗΜΗ ΤΩΝ ΥΠΟΛΟΓΙΣΤΩΝ. «Ευρείας Κλίµακας Περιαγωγή σε Ασύρµατα Τοπικά ίκτυα : Αρχιτεκτονική & Αποτίµηση»



Σχετικά έγγραφα
ΣΤΗΝ ΕΠΙΣΤΗΜΗ ΤΩΝ ΥΠΟΛΟΓΙΣΤΩΝ. «Ευρείας Κλίµακας Περιαγωγή σε Ασύρµατα Τοπικά ίκτυα : Αρχιτεκτονική & Αποτίµηση»

Κινητές Πολυμεσικές Επικοινωνίες: Δικτυακές Υποδομές Χαμηλού Κόστους

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

Περίληψη Λαμπρόπουλος

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

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

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

ΚΑΤΑΝΕΜΗΜΕΝΑ ΣΥΣΤΗΜΑΤΑ. Παράδοση Ασκήσεων Κεφάλαιο 2 Ασκήσεις 3,6,8,9,15,22,24,26. Γεωργόπουλος Άλκης Α.Μ.: 39 Κοντογιώργης Αναστάσιος A.M.

Search and Replication in Unstructured Peer-to-Peer Networks

Περίληψη ιπλωµατικής Εργασίας

ΠΡΟΤΕΙΝΟΜΕΝΑ ΘΕΜΑΤΑ ΣΤΑ ΔΙΚΤΥΑ ΥΠΟΛΟΓΙΣΤΩΝ ΙΙ Γ Τάξη Ε.Π.Α.Λ.

Γενικές Αρχές. Τεχνολογία ικτύων Επικοινωνιών ΙΙ

7.2 Τεχνολογία TCP/IP

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

Τη φυσική (MAC) διεύθυνση που δίνει ο κατασκευαστής του δικτυακού υλικού στις συσκευές του (π.χ. στις κάρτες δικτύου). Η περιοχή διευθύνσεων που

ΚΕΦΑΛΑΙΟ 9 ο ΤΟ ΠΕΡΙΒΑΛΛΟΝ. 9.1 Εισαγωγή

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

ΠΑΝΕΠΙΣΤΗΜΙΟ ΚΥΠΡΟΥ ΤΜΗΜΑ ΠΛΗΡΟΦΟΡΙΚΗΣ ΠΡΟΓΡΑΜΜΑΤΙΣΤΙΚΗ ΑΣΚΗΣΗ 3

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

Σύστημα Διαμοιρασμού Βιβλιογραφικών Αναφορών. Κοντοτάσιου Ιωάννα ΑΜ 3125 Μπέσσας Απόστολος ΑΜ 3171

α. Συνόδου β. Μεταφοράς γ. Δικτύου δ. Διασύνδεσης δεδομένων ε. Φυσικού Επιπέδου (Μονάδες 5)

Περίληψη ιπλωµατικής Εργασίας

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

WIRELESS SENSOR NETWORKS (WSN)

Κατανόηση των βασικών σημείων των διευθύνσεων TCP/IP και της

Απαντήσεις. Απάντηση. Απάντηση

7.3 Πρωτόκολλο TCP. 1. Το TCP πρωτόκολλο παρέχει υπηρεσίες προσανατολισµένες σε σύνδεση. Σ Λ

Σύστημα Διαμοιρασμού Βιβλιογραφικών Αναφορών. Κοντοτάσιου Ιωάννα ΑΜ 3125 Μπέσσας Απόστολος ΑΜ 3171

Κάντε κλικ για έναρξη

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

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

SNMP ΔΙΑΧΕΙΡΙΣΗ ΔΙΚΤΥΟΥ ΒΑΣΙΚΕΣ ΕΝΝΟΙΕΣ

Πρότυπο Αναφοράς Open Systems Interconnection (OSI) Επικοινωνίες Δεδομένων Μάθημα 5 ο

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

Σηµειώσεις στις σειρές

7.6 ιευθυνσιοδότηση. Ερωτήσεις

KΕΦΑΛΑΙΟ 5 ΨΗΦΙΑΚΕΣ ΥΠΟΓΡΑΦΕΣ

Σχολή Προγραµµατιστών Ηλεκτρονικών Υπολογιστών (ΣΠΗΥ) Τµήµα Προγραµµατιστών Σειρά 112

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

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

Περιεχόμενο του μαθήματος

ΠΕΡΙΛΗΨΗ Vcommunity V Community

Τμήμα του εθνικού οδικού δικτύου (Αττική οδός)

Σύντομη παρουσίαση των εργαλείων/εντολών telnet, ping, traceroute nslookup και nmap, zenmap

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

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

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

Ηλεκτρονικό εμπόριο. HE 8 Εξατομίκευση

Αρχιτεκτονική του πληροφοριακού συστήµατος Cardisoft Γραµµατεία 2003 ιαχείριση Προσωπικού

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

Διακριτά Μαθηματικά ΙΙ Χρήστος Νομικός Τμήμα Μηχανικών Η/Υ και Πληροφορικής Πανεπιστήμιο Ιωαννίνων 2018 Χρήστος Νομικός ( Τμήμα Μηχανικών Η/Υ Διακριτά

Διαχείριση Ειδοποιήσεων με Κινητές Συσκευές

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

Διαχείριση Ασφάλειας και Εμπιστοσύνης σε Πολιτισμικά Περιβάλλοντα

ΠΑΝΕΠΙΣΤΗΜΙΟ ΜΑΚΕΔΟΝΙΑΣ - Π.Μ.Σ. ΕΦΑΡΜΟΣΜΕΝΗΣ ΠΛΗΡΟΦΟΡΙΚΗΣ

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

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

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

ΚΕΦΑΛΑΙΟ Μηχανική Μάθηση

Εργασία «Διαχείριση Δικτύων» Ιούνιος 2014, Θεσ/νίκη

Σχεδιασµός Οικολογικού ιαµεσολαβητή για την εποπτεία και διαχείριση δικτύου διανοµής ηλεκτρικής ενέργειας

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

Εισαγωγή στην Πληροφορική

Ασφάλεια Υπολογιστικών Συστηµάτων. Ορισµοί

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

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

Μάθημα 7: Διευθυνσιοδότηση σε Επίπεδο IP

HY380 Αλγόριθμοι και πολυπλοκότητα Hard Problems

ίκτυα υπολογιστών Στόχοι κεφαλαίου ίκτυα

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

ιεργασίες και Επεξεργαστές στα Κατανεµηµένων Συστηµάτων

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

Ορισµός. (neighboring) καταστάσεων. ηλαδή στην περίπτωση αλυσίδας Markov. 1.2 ιαµόρφωση µοντέλου

ΗΥ486 - Αρχές Κατανεμημένου Υπολογισμού Εαρινό Εξάμηνο Δεύτερη Προγραμματιστική Εργασία

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

Τεχνολογίες & Εφαρμογές Πληροφορικής Ενότητα 7: Τοπικά δίκτυα

Προβλήματα, αλγόριθμοι, ψευδοκώδικας

Υποστήριξη Κινητικότητας στο Internet. Σαράντης Πασκαλής Εθνικό και Καποδιστριακό Πανεπιστήµιο Αθηνών

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

Επιχειρηµατικές ιαδικασίες: Εισαγωγικές Έννοιες & Αρχικά στάδια µοντελοποίησης

Επίλυση Προβληµάτων µε Greedy Αλγόριθµους

Ηλεκτρονικό εμπόριο. HE 7 Τεχνολογίες ασφάλειας

ΚΡΥΠΤΟΓΡΑΦΙΑ ΚΑΙ ΑΣΦΑΛΕΙΑ ΥΠΟΛΟΓΙΣΤΩΝ Δ Εξάμηνο

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

Εργαστήριο Ασφάλεια Πληροφοριακών Συστημάτων. PGP (Pretty Good Privacy)

ΚΡΥΠΤΟΓΡΑΦΙΑ ΚΑΙ ΑΣΦΑΛΕΙΑ ΥΠΟΛΟΓΙΣΤΩΝ Δ Εξάμηνο. Ψηφιακή Υπογραφή και Αυθεντικοποίηση Μηνύματος

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

Κεφάλαιο 12. Επικοινωνίες-Δίκτυα-Διαδίκτυο. Εξαιρούνται οι παράγραφοι:

το ιαδίκτυο συνδέει εκατοµµύρια χρήστες αποτελώντας την µεγαλύτερη πηγή πληροφοριών και ανταλλαγής µηνυµάτων στον πλανήτη.

Κάθε διεύθυνση IP αποτελείται από δυο τμήματα.

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

Αλγόριθµοι δροµολόγησης µε µέσα µαζικής µεταφοράς στο µεταφορικό δίκτυο των Αθηνών

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

Τεχνικές ταξινόµησης αποτελεσµάτων µηχανών αναζήτησης µε βάση την ιστορία του χρήστη

Κατανεμημένα Συστήματα. Javascript LCR example

Σχεδιασμός Οικολογικού Διαμεσολαβητή για την εποπτεία και διαχείριση δικτύου διανομής ηλεκτρικής ενέργειας

Α2. Να γράψετε τους αριθμούς 1-5 από τη Στήλη Α και δίπλα το γράμμα της Στήλης Β που δίνει τη σωστή αντιστοίχηση.

Θέματα διπλωματικών εργασιών σε. Συστοιχίες παράλληλης εξυηρέτησης εφαρμογών Διαδικτύου

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

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

Transcript:

ΟΙΚΟΝΟΜΙΚΟ ΠΑΝΕΠΙΣΤΗΜΙΟ ΑΘΗΝΩΝ ΠΡΟΓΡΑΜΜΑ ΜΕΤΑΠΤΥΧΙΑΚΩΝ ΣΠΟΥ ΩΝ ΣΤΗΝ ΕΠΙΣΤΗΜΗ ΤΩΝ ΥΠΟΛΟΓΙΣΤΩΝ ιπλωµατική Εργασία Μεταπτυχιακού ιπλώµατος Ειδίκευσης «Ευρείας Κλίµακας Περιαγωγή σε Ασύρµατα Τοπικά ίκτυα : Αρχιτεκτονική & Αποτίµηση» ( Global Scale WLAN Roaming : Architecture & Evaluation ) Ευστράτιος Γ. ηµόπουλος Επιβλέπων: Γεώργιος Πολύζος Αθήνα, Ιούνιος 2007

Περίληψη Το Peer-to-Peer Wireless Network Confederation (P2PWNC) είναι ένα peer-topeer σύστηµα στο οποίο ο πόρος διαµοιρασµού είναι το εύρος ζώνης των σηµείων πρόσβασης των χρηστών που το αποτελούν.to σύστηµα βασίζεται στην ανταποδοτικότητα µεταξύ των χρηστών την οποία πετυχαίνει µε τα κατάλληλα κίνητρα. Η αρχιτεκτονική που ακολουθείται στο P2PWNC είναι πλήρως κατανεµηµένη και λειτουργεί πολύ καλά για την εξυπηρέτηση των χρηστών που κινούνται συνέχεια µέσα σε µια συγκεκριµένη περιοχή (πχ µια πόλη). Σε µια τέτοια περιοχή ένας χρήστης µπορεί να αποδείξει στο σηµείο πρόσβασης, ότι έχει συνεισφέρει στην κοινότητα και εποµένως δικαιούται υπηρεσία. Όταν όµως ένας χρήστης αποφασίσει, να πάει σε µια ξένη περιοχή (roaming) πιθανότατα δεν θα µπορέσει να πάρει υπηρεσία γιατί είναι πολύ µικρή η πιθανότητα να έχει συνεισφέρει σε κάποιο από τα µέλη της περιοχής αυτής κατά το πρόσφατο παρελθόν των συναλλαγών του. Για να µπορέσει λοιπόν, το σύστηµα να λειτουργήσει καθολικά, είναι απαραίτητη η προσθήκη τουλάχιστον ενός Super Peer σε κάθε περιοχή, ο οποίος θα µεσολαβεί ως εγγυητής για τις συναλλαγές που δεν θα µπορούσαν να ολοκληρωθούν χωρίς τη δική του παρέµβαση. Στην εργασία λοιπόν, προτείνεται µια νέα αρχιτεκτονική για το P2PWNC, βασισµένη σε super peers, ώστε να είναι εφικτές roaming συναλλαγές. Προσδιορίζεται ο αλγόριθµος που πρέπει να εκτελούν οι super peers, όταν καλούνται να εγγυηθούν για την υπηρεσία που θα πάρει κάποιος χρήστης καθώς και τα απαραίτητα µηνύµατα µε τα οποία πρέπει να επεκταθεί το πρωτόκολλο του P2PWNC σε επίπεδο υλοποίησης για να υποστηρίζει την επικοινωνία µε τους super peers. Παρουσιάζονται, τέλος, αποτελέσµατα προσοµοιώσεων µε τα οποία γίνεται σύγκριση του συστήµατος µε super peers σε σχέση µε το πλήρως κατανεµηµένο σύστηµα, ως προς την ποιότητα υπηρεσίας που λαµβάνουν οι roamers αλλά και οι κανονικοί χρήστες του συστήµατος. Ευστράτιος Γ. ηµόπουλος 2

Abstract Peer to Peer Wireless Network Confederation (P2PWNC) is a peer to peer approach to sharing local area networks (LANs). Incentives techniques are used to encourage system peers to cooperate obeying to some reciprocity rules. P2PWNC is fully decentralized and works well for city-wide roamers. In such areas a P2PWNC user can prove that he has offered his service to the community, and as a result that he deserves to consume service from others. However, when a user decides to roam to an area far away from his town, there is a small possibility that he will be able to consume service, because he has very little or no positive reputation to the visited area members. So, in order to achieve global scale roaming, it is crucial to add at least one Super Peer per P2PWNC region. Super peers will intervene, when transactions between users can not be completed without their help. A new P2PWNC architecture, based on super peers, is presented to make global scale roaming transactions between P2PWNC users feasible. An algorithm that super peers should follow, in order to warrantee for the services consumed by their users, is presented, accompanied with the required additional P2PWNC messages used for their communication. Finally, a comparison between the fully decentralized and the proposed P2PWNC architecture is attempted, through simulation results. Ευστράτιος Γ. ηµόπουλος 3

1 Εισαγωγή... 6 2 Peer-to-Peer Wireless Network Confederation... 10 2.1 ΚΊΝΗΤΡΟ... 10 2.2 ΠΕΡΙΓΡΑΦΗ... 11 2.3 ΟΝΤΟΤΗΤΕΣ...13 2.3.1 Οµάδες... 13 2.3.1.1 Εξυπηρετητής Οµάδας (Team Server)... 15 2.3.1.2 Μέλη οµάδας... 16 2.3.1.3 Σηµείο Πρόσβασης (Access Point)... 18 2.3.2 Αποδείξεις... 19 2.3.3 Αποθήκες αποδείξεων... 21 2.3.4 Super Peers... 22 2.3.5 Έµπιστη Κεντρική Οντότητα... 23 2.4 ΑΡΧΙΤΕΚΤΟΝΙΚΕΣ... 24 2.4.1 Κατανεµηµένη αρχιτεκτονική... 24 2.4.2 Κεντρικοποιηµένη αρχιτεκτονική... 26 2.4.3 Αρχιτεκτονική µε Super Peers... 27 2.5 ΜΗΝΥΜΑΤΑ ΠΡΩΤΟΚΟΛΛΟΥ P2PWNC... 28 2.6 ΑΛΓΟΡΙΘΜΟΙ ΠΡΩΤΟΚΟΛΛΟΥ... 32 2.6.1 Αλγόριθµος ανταποδοτικότητας... 32 2.6.1.1 Ο Γράφος των Αποδείξεων... 33 2.6.1.2 Αλγόριθµος Max Flow... 34 2.6.1.3 Generalized Max Flow αλγόριθµος... 35 2.6.1.4 Υπολογισµός Υποκειµενικής Μετρικής Φήµης (SRM)... 36 2.6.2 Αλγόριθµος gossiping... 38 2.6.2.1 Φάση ενηµέρωσης... 38 2.6.2.2 Φάση Συγχώνευσης... 39 2.6.3 Αλγόριθµος αυτοδύναµης εκκίνησης (bootstrap)... 40 3 Global Scale Roaming... 41 3.1 ΚΙΝΗΤΡΟ & ΠΡΟ ΙΑΓΡΑΦΕΣ... 41 3.2 ΑΛΓΟΡΙΘΜΟΣ... 43 3.2.1 Ανάλυση αλγορίθµου... 45 3.3 ΑΛΛΗΛΟΥΧΙΑ ΜΗΝΥΜΑΤΩΝ ΣΕ ΠΕΡΙΠΤΩΣΕΙΣ ROAMING... 51 3.4 ΕΠΕΚΤΑΣΗ ΜΗΝΥΜΑΤΩΝ ΠΡΩΤΟΚΟΛΛΟΥ P2PWNC... 54 3.4.1 Μήνυµα WARREQ (WARranty REQuest)... 55 3.4.2 Μήνυµα WARRES (WARranty RESponse)... 56 3.4.3 Μήνυµα WAR_NOTIFY (WARranty NOTIFY)... 56 3.4.4 Τροποποίηση µηνύµατος QRSP... 57 3.4.5 Τροποποίηση µηνύµατος RREQ... 58 4 Προσοµοιώσεις... 59 4.1 ΠΕΡΙΓΡΑΦΗ ΠΡΟΣΟΜΟΙΩΣΕΩΝ... 59 4.1.1 Γενικά Χαρακτηριστικά... 59 4.1.2 Μοντέλο Κίνησης Χρηστών... 61 4.1.3 Προσοµοιωτής Πλήρως Κατανεµηµένου Συστήµατος... 62 4.1.4 Προσοµοιωτής µε Super Peers... 64 4.2 ΑΠΟΤΕΛΕΣΜΑΤΑ... 65 4.2.1 Συγκριτικά αποτελέσµατα... 65 4.2.1.1 Επίδραση αριθµού και µεγέθους περιοχών... 65 4.2.1.2 Επίδραση Πιθανότητας Roaming... 70 Ευστράτιος Γ. ηµόπουλος 4

4.2.1.3 Επίδραση γύρων υποµονής και εκκίνησης roaming... 75 4.2.1.4 Επίδραση µεγέθους αποθήκης αποδείξεων πελάτη... 79 4.2.1.5 Επίδραση µεγέθους αποθήκης αποδείξεων εξυπηρετητή... 82 4.2.2 Αποτελέσµατα προσοµοιωτή µε Super Peers... 87 4.2.2.1 Επίδραση µεγέθους αποθήκης αποδείξεων πελάτη... 87 4.2.2.2 Επίδραση αριθµού Super Peers ανά περιοχή... 90 4.2.2.3 Επίδραση ποσοστών συµµετοχής των super peers οικείας και ξένης περιοχής... 96 4.2.2.4 Μελέτη κλιµάκωσης συστήµατος... 100 4.2.2.5 Επίδραση παραµέτρου alpha... 102 5 Συµπέρασµα... 104 6 Παράρτηµα... 106 6.1 ΕΥΤΕΡΕΥΟΝΤΑ ΑΠΟΤΕΛΕΣΜΑΤΑ ΓΙΑ ΤΟ ΠΛΗΡΕΣ ΚΑΤΑΝΕΜΗΜΕΝΟ ΣΥΣΤΗΜΑ... 106 6.1.1 Πιθανότητα roaming Vs. Χρόνος παραµονής στην ξένη περιοχή... 106 6.1.2 Επίδραση γύρων υποµονής (patience)... 110 6.1.3 Συµπεριφορά πλήρως κατανεµηµένου συστήµατος σε µεγάλη κλίµακα... 111 6.2 ΛΕΠΤΟΜΕΡΕΙΕΣ ΑΠΟΤΕΛΕΣΜΑΤΩΝ ΠΡΟΣΟΜΟΙΩΣΗΣ ΓΙΑ ΤΟ ΣΥΣΤΗΜΑ ΜΕ SUPER PEERS... 113 6.2.1 Λεπτοµέρειες σχετικά µε την επίδραση της πιθανότητας roaming... 113 6.2.2 Επίδραση πιθανότητας roaming µε 2 γύρους παραµονή στην ξένη περιοχή... 115 6.3 ΣΥΜΠΛΗΡΩΜΑΤΙΚΑ ΣΥΓΚΡΙΤΙΚΑ ΑΠΟΤΕΛΕΣΜΑΤΑ... 118 6.3.1 Λεπτοµέρειες επίδρασης πληθυσµού και αριθµού περιοχών... 118 7 Αναφορές... 121 Ευστράτιος Γ. ηµόπουλος 5

1 Εισαγωγή Στις µέρες µας, βρισκόµαστε ενώπιον µια ευρείας ανάπτυξης των τεχνολογιών ασύρµατης πρόσβασης και συγκεκριµένα των Wireless LANs. Το κόστος που χρειάζεται να πληρώσει ένας χρήστης για να συνδεθεί σε ένα WLAN δίκτυο είναι πλέον πολύ µικρό, ενώ η συχνότητα λειτουργίας των wi-fi συστηµάτων είναι σε µη αδειοδοτηµένο φάσµα, κάτι που βοηθάει στην γρηγορότερη εξάπλωση τους. Παρόλο που η κάλυψη των ασυρµάτων συστηµάτων έχει αυξηθεί σηµαντικά, δεν υπάρχει κάποιος ενοποιηµένος τρόπος πρόσβασης σε αυτά τα δίκτυα. Η ανάπτυξη της WLAN αγοράς δεν ακολούθησε τα παραδοσιακά επιχειρηµατικά µοντέλα άλλων τηλεπικοινωνιακών τεχνολογιών, όπως η κυψελωτή κινητή τηλεφωνία. Αντίθετα, αναπτύχθηκε µε έναν άναρχο τρόπο, κάτι το οποίο οδήγησε στο να µην υπάρχει συγκεκριµένο µοντέλο πρόσβασης στα WLAN δίκτυα. Επιπλέον η διάδοση της WLAN τεχνολογίας δεν ξεκίνησε από κάποια ιδιωτική πρωτοβουλία ή κάποιον µεγάλο τηλεπικοινωνιακό οργανισµό. Εξαιτίας του χαµηλού εξοπλιστικού κόστους, ανεξάρτητοι χρήστες, πανεπιστήµια, και open source κοινότητες υιοθέτησαν γρήγορα την WLAN τεχνολογία, σχηµατίζοντας µια µεγάλη βάση χρηστών χωρίς κανέναν έλεγχο από τους µεγάλους τηλεπικοινωνιακούς παρόχους. Έτσι, µαζί µε την εξάπλωση τεχνολογιών ευρυζωνικής πρόσβασης, όπως είναι το Xdsl, η ανάπτυξη των WLAN hotspots σχηµατίζει το αναγκαίο έδαφος για την παροχή διαδικτυακής πρόσβασης παντού και πάντα. Ωστόσο, η ετερογένεια των υπαρχόντων WLAN δικτύων και οι περιορισµοί που επιβάλλουν οι πάροχοι ασύρµατης πρόσβασης, εµποδίζουν την ανάπτυξη τέτοιων υπηρεσιών. Εποµένως, για να παρέχεται συνεχής πρόσβαση στο διαδίκτυο είναι απαραίτητη µία αρχιτεκτονική µε την οποία θα γίνεται διαµοιρασµός του διαθεσίµου φάσµατος, το οποίο µένει ανεκµετάλλευτο όταν ένα access point είναι ανοιχτό αλλά ο χρήστης του δεν χρησιµοποιεί το internet. Παρά το γεγονός ότι η Ευστράτιος Γ. ηµόπουλος 6

τεχνολογία για τον διαµοιρασµό του φάσµατος είναι διαθέσιµη, δεν υπάρχει ένα εδραιωµένο µοντέλο το οποίο παρέχει µια τέτοια υπηρεσία. Πάρα πολλές λύσεις έχουν προταθεί για την επίλυση αυτού του προβλήµατος. Ωστόσο, καµία από αυτές δεν έγινε καθολικά αποδεκτή για διαφόρους λόγους. Πιθανώς, ο πιο σηµαντικός από αυτούς ήταν η έλλειψη εδραιωµένων προτύπων για WLAN roaming καθώς και ότι η βάση των WLAN χρηστών αναπτύχθηκε µε έναν απρόσµενο τρόπο. Αποτέλεσµα αυτής της ανάπτυξης είναι η ταυτόχρονη ύπαρξη εµπορικών παρόχων που δίνουν πρόσβαση σε ένα συγκεκριµένο µέρος ( hotspot operators), δικτύων που καλύπτουν µια µικρή πόλη ή ένα τµήµα της, µη εµπορικών παρόχων, όπως είναι πανεπιστηµιακά ιδρύµατα, καθώς και ιδιόκτητων σηµείων πρόσβασης. Σε καµία από τις µέχρι τώρα προτεινόµενες λύσεις δεν έχει µελετηθεί το ενδεχόµενο διαµοιρασµού του διαθέσιµου εύρους ζώνης κάθε νοικοκυριού που διαθέτει σηµείο πρόσβασης. Μια τέτοια, πρωτοποριακή, λύση προτείνεται στα [10] και [11]. Το Peer-to-Peer Wireless Network Confederation (P2PWNC), όπως ονοµάζεται η προτεινόµενη αρχιτεκτονική, είναι ένα peer-to-peer σύστηµα στο οποίο δεν διαµοιράζονται αρχεία, όπως έχουµε συνηθίσει στα περισσότερα peer-to-peer συστήµατα, αλλά ο πόρος διαµοιρασµού είναι το εύρος ζώνης των σηµείων πρόσβασης. Στο σύστηµα αυτό οι χρήστες είναι µέλη µικρών οµάδων, κάθε µία εκ των οποίων είναι κάτοχος ενός ή περισσοτέρων σηµείων πρόσβασης. Οι οµάδες αυτές αποτελούν τους peers του συστήµατος µας. Οι χρήστες κάθε οµάδας είναι κινητοί χρήστες που κινούνται και σε περιοχές που καλύπτονται από σηµεία πρόσβασης που δεν ανήκουν στην δική τους οµάδα. Στην περίπτωση αυτή θα πάρουν πρόσβαση από το ξένο σε αυτούς σηµείο πρόσβασης, εάν µπορεί να αποδειχθεί ότι και η οµάδα τους εξυπηρετεί µέλη άλλων οµάδων. Εποµένως, το σύστηµα βασίζεται στην λογική της ανταποδοτικότητας και επιδιώκει να την εξασφαλίσει µέσα από συγκεκριµένα κίνητρα που θα δούµε παρακάτω. Ωστόσο, όλα τα µέλη του συστήµατος δρουν αυτόνοµα, επιλέγοντας τα ίδια την στρατηγική που θα ακολουθήσουν. Επίσης, θεωρούµε τα µέλη του συστήµατος λογικά µε την έννοια Ευστράτιος Γ. ηµόπουλος 7

ότι θα ακολουθήσουν την στρατηγική που συµφέρει την οµάδα τους, και εγωιστικά δηλαδή χωρίς να ενδιαφέρονται για τι είναι γενικά καλό για τη λειτουργία του συστήµατος. Το σηµαντικό είναι ότι η υπακοή στους κανόνες του συστήµατος πετυχαίνεται µέσα από τα κατάλληλα κίνητρα, όπως αναλύονται αυτά στο [9]. Μία οµάδα που για τους δικούς της λόγους δεν θα τηρήσει τους κανόνες του συστήµατος δεν τιµωρείται άµεσα, αλλά έχει εξασφαλιστεί, µέσω των κινήτρων, ότι θα πρέπει να υπακούσει µακροπρόθεσµα στους κανόνες του συστήµατος για να βγει κερδισµένη. Η αρχιτεκτονική που ακολουθείται στο P2PWNC είναι, όπως θα δούµε παρακάτω, κατανεµηµένη και λειτουργεί πολύ καλά για την εξυπηρέτηση των χρηστών που κινούνται συνέχεια µέσα σε µια συγκεκριµένη περιοχή (πχ µια πόλη). Οι χρήστες κινούνται µέσα στην περιοχή αυτή και κτίζουν την φήµη τους προσφέροντας υπηρεσία σε άλλους χρήστες που την ζητάνε από το σηµείο πρόσβασης της οµάδας τους. Έτσι όταν θελήσουν και αυτοί να έχουν πρόσβαση σε ένα ξένο Access Point, θα γίνουν δεκτοί επειδή θα µπορεί να αποδειχτεί πως και η οµάδα τους προσφέρει εύρος ζώνης όταν της ζητηθεί. Όταν όµως ένας χρήστης αποφασίσει να πάει σε µια περιοχή την οποία σπάνια επισκέπτεται (και αντίστοιχα οι χρήστες της περιοχής αυτής σπάνια επισκέπτονται την δική του) πιθανότατα δεν θα µπορέσει να πάρει υπηρεσία γιατί είναι πολύ µικρή η πιθανότητα να έχει συνεισφέρει σε κάποιο από τα µέλη της περιοχής αυτής Για να µπορέσει λοιπόν, το σύστηµα να λειτουργήσει καθολικά, είναι απαραίτητη η προσθήκη τουλάχιστον ενός Super Peer σε κάθε περιοχή. Γενικότερα, µε την αύξηση των χρηστών στο σύστηµα η χρήση super peers, όπως θα δείξουµε και στην ενότητα των προσοµοιώσεων, είναι αναπόφευκτη. Στο σηµείο αυτό πρέπει να σηµειωθεί ότι στην βιβλιογραφία έχει προταθεί και µία αρχιτεκτονική η οποία κάνει χρήση µίας έµπιστης κεντρικής οντότητας (Trusted Central Authority), την οποία όµως µπορούµε να αποφύγουµε µε την αρχιτεκτονική super peers που προτείνεται στην ενότητα 3. Ευστράτιος Γ. ηµόπουλος 8

Στις δεύτερη ενότητα θα δούµε αναλυτικά τις βασικές οντότητες του P2PWNC καθώς και τα µηνύµατα που ανταλλάσσουν µεταξύ τους. Στην τρίτη ενότητα περιγράφεται η αρχιτεκτονική που προτείνεται για την λειτουργία του P2PWNC σε καθολικό επίπεδο µε τη χρήση Super Peers καθώς και οι απαραίτητες επεκτάσεις στα υπάρχοντα µηνύµατα του πρωτοκόλλου. Στην ενότητα 4 περιγράφονται οι δύο προσοµοιωτές που αναπτύχθηκαν στα πλαίσια της εργασίας και παρουσιάζονται τα εξαγόµενα αποτελέσµατα για όλες τις παραµέτρους που µελετήθηκαν. Γίνεται σύγκριση µεταξύ ενός πλήρους κατανεµηµένου συστήµατος και του προτεινόµενου συστήµατος µε χρήση Super Peers. Η ενότητα 5 παρουσιάζει τα συµπεράσµατα και ζητήµατα που χρήζουν επιπλέον έρευνας. Τέλος στο παράρτηµα της ενότητας 6 παρουσιάζει λεπτοµέρειες που έχουν προκύψει από τα αποτελέσµατα τις προσοµοίωσης, καθώς και πιο εξειδικευµένα αποτελέσµατα προσοµοιώσεων. Ευστράτιος Γ. ηµόπουλος 9

2 Peer-to-Peer Wireless Network Confederation Το P2PWNC είναι µία Wi-Fi αρχιτεκτονική η οποία στοχεύει στην παροχή πρόσβασης στο διαδίκτυο κάνοντας χρήση του εύρους ζώνης των σηµείων πρόσβασης που έχουν οι οικιακοί χρήστες για να συνδέονται ευρυζωνικά στο διαδίκτυο µέσω Xdsl. Μέλος του P2PWNC µπορεί να είναι κάθε οµάδα χρηστών που ελέγχει ένα ή περισσότερα σηµεία πρόσβασης. Κάθε οµάδα λειτουργεί σαν ένας µικρός πάροχος που προσφέρει υπηρεσία (εύρος ζώνης συγκεκριµένα) στα υπόλοιπα µέλη του P2PWNC όταν αυτά της το ζητήσουν. 2.1 Κίνητρο Οι περισσότεροι οικιακοί χρήστες δεν χρησιµοποιούν τη σύνδεση τους για το διαδίκτυο συνέχεια ή την χρησιµοποιούν χωρίς να εκµεταλλεύονται όλο το εύρος ζώνης που τους προσφέρει. Με το P2PWNC το ανεκµετάλλευτο αυτό φάσµα χρησιµοποιείται για να µπορέσουν να έχουν πρόσβαση στο διαδίκτυο, δωρεάν, χρήστες που βρίσκονται µακριά από το δικό τους σηµείο πρόσβασης. Το κίνητρο λοιπόν είναι οι χρήστες του P2PWNC να µπορούν να χρησιµοποιήσουν µία ξένη σύνδεση για να πάρουν πρόσβαση στο διαδίκτυο, κάνοντας χρήση του pda, του φορητού υπολογιστή ή οποιασδήποτε άλλη συσκευής υποστηρίζει Wi-Fi. Μπορεί να καταλάβει κανείς πως αυτό σε συνδυασµό µε την VoIP τεχνολογία µπορεί να µειώσει το επικοινωνιακό κόστος των χρηστών ενός τέτοιου συστήµατος καθώς για την πραγµατοποίηση τηλεφωνηµάτων µπορεί πλέον να γίνεται χρήση του Wi-Fi δωρεάν, αντί των συστηµάτων 2G και 3G, αρκεί να υπάρχει ένα διαθέσιµο σηµείο πρόσβασης κοντά στην περιοχή που βρίσκεται ο χρήστης. Ευστράτιος Γ. ηµόπουλος 10

2.2 Περιγραφή Το P2PWNC είναι ένα roaming σχήµα στο οποίο συµµετέχουν χρήστες λογικοί, εγωιστές και αυτόνοµοι. Η συµπεριφορά των χρηστών του P2PWNC καθορίζεται από την θέληση τους να µεγιστοποιήσουν το κέρδος τους, µειώνοντας παράλληλα το κόστος τους. Αυτό σηµαίνει πρακτικά ότι θέλουν να γίνονται δέκτες όσο περισσότερης και καλύτερης υπηρεσίας γίνεται, προσφέροντας το ελάχιστο δυνατό στην κοινότητα. Στο προτεινόµενο σχήµα πολλοί χρήστες ενώνονται σχηµατίζοντας έτσι µία οµάδα. Η οµάδα είναι η βασική οντότητα του P2PWNC. Κάθε οµάδα διαθέτει έναν αριθµό σηµείων πρόσβασης και τα µέλη της είναι κινητοί χρήστες. Έτσι ο ρόλος της οµάδας είναι διττός. Από την µία µέσω των σηµείων πρόσβασης λειτουργεί σαν πάροχος της υπηρεσίας πρόσβασης στο διαδίκτυο και από την άλλη µέσω των κινητών χρηστών της λειτουργεί σαν καταναλωτής που ζητάει την υπηρεσία, δηλαδή την πρόσβαση στο διαδίκτυο. Όπως σε κάθε P2P σύστηµα, έτσι και στο P2PWNC η αξία του γίνεται µεγαλύτερη όσο οι χρήστες του γίνονται περισσότεροι. Έχοντας περισσότερους χρήστες και εποµένως περισσότερα σηµεία πρόσβασης, εξασφαλίζουµε ότι ένας χρήστης που συµµετέχει στο σύστηµα θα έχει πρόσβαση στο διαδίκτυο σχεδόν παντού. Με άλλα λόγια περισσότεροι χρήστες στο P2PWNC σηµαίνει µεγαλύτερη κάλυψη. Για αυτόν το λόγο πρέπει η συµµετοχή ενός χρήστη στο σύστηµα να διευκολύνεται όσο το δυνατόν περισσότερο. Όπως θα δούµε µια οµάδα µπορεί να δηµιουργεί και να καταστρέφει µόνη της τις ταυτότητες των µελών της, χωρίς κανένα κόστος. Επίσης για όλες τις αλληλεπιδράσεις ενός χρήστη στο σύστηµα το µόνο που χρειάζεται είναι το δηµόσιο κλειδί του και κανένα άλλο στοιχείο του. Όποιος θέλει, οποιαδήποτε στιγµή µπορεί να δηµιουργήσει µία οµάδα και να µπει στο σύστηµα on-the-fly. Ευστράτιος Γ. ηµόπουλος 11

Οι κινητοί χρήστες αλληλεπιδρούν µε τα σηµεία πρόσβασης των περιοχών που επισκέπτονται. Το αποτέλεσµα της αλληλεπίδρασης αυτής έχει δύο όψεις. Από την µεριά του καταναλωτή το αποτέλεσµα της αλληλεπίδρασης είναι η πρόσβαση στον διαδίκτυο µέσω του σηµείο πρόσβασης που λειτούργησε ως πάροχος. Από τη µεριά του σηµείου πρόσβασης που έδωσε την υπηρεσία (πάροχος) αποτέλεσµα της αλληλεπίδραση είναι η κατοχή (receipts) που φέρουν την ηλεκτρονική υπογραφή του χρήστη - καταναλωτή. H εγκυρότητα της παραπάνω διαδικασίας εξασφαλίζεται µε τη βοήθεια µηχανισµών κρυπτογράφησης. Το ιστορικό κάθε αλληλεπίδρασης οµάδων καταναλωτή παρόχου φυλάσσεται σε µια αποθήκη αποδείξεων (receipts repository). Η αρχιτεκτονική που µελετάµε είναι κατανεµηµένη και εποµένως κάθε οµάδα έχει την δική της αποθήκη αποδείξεων στην οποία φυλάσσει τις αποδείξεις των δικών της προσφορών υπηρεσίας καθώς και αποδείξεις που αφορούν προσφορές υπηρεσίας άλλων οµάδων(αυτές προκύπτουν όπως θα δούµε παρακάτω έπειτα από την φάση gossiping του αλγορίθµου). Πριν µελετήσουµε σε βάθος κάθε οντότητα του P2PWNC θα πρέπει να συνοψίσουµε κάποιες παραδοχές που ακολουθεί. Οι peers (οµότιµοι) αναγνωρίζονται από ένα απλό ζεύγος δηµόσιου/ ιδιωτικού κλειδιού. Τα µέλη κάθε οµάδας αναγνωρίζονται από ένα πιστοποιητικό το οποίο δηµιουργείται από την οµάδα στην οποία ανήκουν. Κάθε οµάδα είναι κάτοχος τουλάχιστον ενός σηµείου πρόσβασης µε το οποίο παρέχει υπηρεσία σε χρήστες άλλων οµάδων που βρίσκονται κοντά σε αυτό. Κάθε οµάδα δρα αυτόνοµα. Έτσι η απόφαση για το εάν δώσει ή όχι υπηρεσία σε έναν χρήστη που την ζητάει, εξαρτάται από καθαρά δικά της κριτήρια. Κανονικά η απόφαση αυτή θα πρέπει να βασίζεται στο Ευστράτιος Γ. ηµόπουλος 12

ιστορικό των συναλλαγών µε την οµάδα του χρήστη υπηρεσία, αλλά αυτό δεν επιβάλλεται. που ζητάει Η υπηρεσία παρέχεται βασιζόµενη στον παρακάτω κανόνα [5] «Οι οµάδες πρέπει να εξυπηρετούνται από σηµεία πρόσβασης που ανήκουν σε άλλες οµάδες, εάν µπορούν να αποδείξουν ότι και η οµάδα τους εξυπηρετεί µέλη άλλων οµάδων» Όλα τα µέλη του συστήµατος θεωρούνται λογικά, µε την έννοια ότι η απειλή του αποκλεισµού τους από το σύστηµα σε συνδυασµό µε την υπόσχεση ότι εάν είναι συνεργάσιµοι θα µπορούν να έχουν δωρεάν πρόσβαση στο διαδίκτυο µπορεί να αποτελεί ισχυρό κίνητρο για να συνεργαστούν και να υπακούουν στον βασικό κανόνα του συστήµατος που είναι η ανταποδοτικότητα. Μέσα στην κάθε οµάδα θεωρούµε ότι υπάρχει πλήρης εµπιστοσύνη. Αντίθετα δεν υποθέτουµε καµία σχέση εµπιστοσύνης µεταξύ ξένων οµάδων. 2.3 Οντότητες 2.3.1 Οµάδες Όπως έχουµε ήδη αναφέρει η βασική οντότητα του συστήµατος είναι η οµάδα. Μια οµάδα αποτελείται από µερικούς χρήστες που έχουν πλήρη εµπιστοσύνη ο ένας στον άλλον και διαθέτει ένα ή περισσότερα σηµεία πρόσβασης. Μια οµάδα είναι πάροχος και καταναλωτής υπηρεσίας ταυτόχρονα. Παρέχει υπηρεσία διαµέσου του σηµείου πρόσβασης (Access Point) σε χρήστες άλλων οµάδων που ζητάνε και καταναλώνει υπηρεσία µέσω των χρηστών της που µετακινούνται σε περιοχές άλλων οµάδων. Υπάρχουν πολλά οφέλη µε την οµαδοποίηση των χρηστών σε οµάδες. Ευστράτιος Γ. ηµόπουλος 13

Καταρχήν ανταποκρίνεται καλύτερα στην πραγµατικότητα. Με αυτήν την µοντελοποίηση «οµάδα» είναι ένα νοικοκυριό που διαθέτει ένα σηµείο πρόσβασης µε σύνδεση στο διαδίκτυο. Μέλη της οµάδας µπορούν να είναι όλα τα µέλη της οικογένειας και το κάθε ένα να µπορεί να καταναλώνει µε την προσωπική του κινητή συσκευή, ενώ όλα παρέχουν στην κοινότητα µέσω του κοινόχρηστου Access Point. Εάν θεωρούσαµε πως η βασική οντότητα του συστήµατος είναι κάθε χρήστης ξεχωριστά, τότε θα έπρεπε να µπορεί να καταναλώνει και να παρέχει ταυτόχρονα. Θα έπρεπε δηλαδή να θεωρήσουµε πως κάθε χρήστης είναι και κάτοχος σηµείου πρόσβασης µε σύνδεση στο διαδίκτυο, το οποίο βέβαια είναι παράλογο να απαιτείται. Ένας δεύτερο κέρδος που απορρέει µε την οµαδοποίηση των χρηστών σε οµάδες, είναι ότι µπορούν να συµµετέχουν µε αυτόν τον τρόπο στο P2PWNC χρήστες που είναι κάτοχοι κάποιου αποµακρυσµένου σηµείου πρόσβασης, το οποίο δέχεται σπάνια επισκέψεις από άλλους χρήστες. Εξαιτίας των σπάνιων επισκέψεων στο σηµείο πρόσβασης τους, οι χρήστες αυτοί, αν και είναι πρόθυµοι να προσφέρουν υπηρεσία όταν τους ζητηθεί, δεν θα µπορούσαν να καλλιεργήσουν καλή φήµη στην κοινότητα γιατί δεν είχαν συχνά την ευκαιρία να προσφέρουν υπηρεσία. Σαν αποτέλεσµα των παραπάνω, δεν θα µπορούσαν να πάρουν υπηρεσία αφού η φήµη τους θα ήταν κακή. Οι χρήστες αυτοί όµως µπορούν να κάνουν οµάδα µε άλλους, που το δικό τους σηµείο πρόσβασης βρίσκεται σε καλό σηµείο. Έτσι το σύστηµα κερδίζει διπλά. Από τη µία οι χρήστες της αποµακρυσµένης περιοχής καταφέρνουν να παίρνουν υπηρεσία από τα ξένα σηµεία πρόσβασης, αφού φαίνεται ότι συνεισφέρουν συχνά στην κοινότητα µε τα σηµεία πρόσβασης των υπολοίπων µελών της οµάδας και από την άλλη το P2PWNC βελτιώνει την κάλυψη του εντάσσοντας στην κοινότητα και σηµεία πρόσβασης που βρίσκονται σε αποµακρυσµένες περιοχές. Ένα τελευταίο σηµαντικό όφελος που έχουµε µε την οµαδοποίηση των χρηστών, είναι ότι καταφέρνουµε µε αυτόν τον τρόπο να µειώσουµε κατά πολύ τις οντότητες του συστήµατος. Αυτό βοηθάει πολύ στη διαχείριση του συστήµατος, Ευστράτιος Γ. ηµόπουλος 14

ιδιαίτερα στην περίπτωση που έχουµε super peers στο σύστηµα ή κεντρικοποιηµένη αρχιτεκτονική. Στην πρώτη περίπτωση οι super peers λειτουργούν αποδοτικότερα καθώς η πληροφορία που χρειάζεται να γνωρίζουν είναι ανά οµάδα και όχι ανά χρήστη, η λειτουργία του gossiping γίνεται επίσης αποδοτικότερα καθώς η ανταλλαγή πληροφορίας (µε τη µορφή των αποδείξεων) αφορά µεγαλύτερο τµήµα του συνόλου των χρηστών και όχι µεµονωµένους χρήστες. Στην περίπτωση της κεντρικής οντότητας έχουµε όφελος εξαιτίας των µειωµένων διαχειριστικών απαιτήσεων από αυτήν. Πολλές από τις διαχειριστικές λειτουργίες γίνονται από τους εξυπηρετητές των οµάδων. Μια οµάδα αποτελείται από λίγα µέλη, συνήθως µερικές δεκάδες. Μια οµάδα µπορεί να την αποτελούν τα µέλη µιας οικογένειας, µιας πολυκατοικίας ή µιας µικρής γειτονιάς. Ωστόσο, µπορεί και µόνο ένα µέλος να σχηµατίσει µία οµάδα. 2.3.1.1 Εξυπηρετητής Οµάδας (Team Server) Ο εξυπηρετητής µιας οµάδας είναι το πιο βασικό της στοιχεία. Η κύρια αρµοδιότητα του εξυπηρετητή είναι να τρέχει τον αλγόριθµο της ανταποδοτικότητας και να συντονίζει τα σηµεία πρόσβασης της οµάδας, µε την έννοια ότι όλα τα σηµεία πρόσβασης µιας οµάδας θα πρέπει πρώτα να συµβουλεύονται τον εξυπηρετητή πριν αποφασίσουν να συνεισφέρουν στο P2PWNC (προσφέροντας υπηρεσία σε έναν υποψήφιο πελάτη). Αυτό το κάνουν µε τη χρήση ειδικών µηνυµάτων του πρωτοκόλλου P2PWNC, τα οποία θα δούµε σε επόµενη ενότητα. Στο τέλος µιας συνόδου του P2PWNC (P2PWNC session), το σηµείο πρόσβασης που προσέφερε την υπηρεσία στέλνει την απόδειξη που αντιστοιχεί σε ολόκληρη τη σύνοδο στον εξυπηρετητή για να αποθηκευτεί. Ο εξυπηρετητής µια οµάδας είναι επίσης υπεύθυνος για το συντονισµό του αλγορίθµου gossiping. Στέλνει αποθηκευµένες αποδείξεις στα µέλη µιας οµάδας όποτε του ζητηθεί, για να µπορέσουν να τις δώσουν στα σηµεία πρόσβασης που έχουν επισκεφθεί. Οι εξυπηρετητές διαφορετικών οµάδων δεν επικοινωνούν Ευστράτιος Γ. ηµόπουλος 15

µεταξύ τους, µειώνοντας έτσι τον κίνδυνο επιθέσεων DoS από την έκθεση των IP διευθύνσεων τους. 2.3.1.2 Μέλη οµάδας Τα µέλη µιας οµάδας αναγνωρίζονται και αυτά από ένα ζεύγος ιδιωτικού/ δηµόσιου κλειδιού, το οποίο δηµιουργείται από τον αρχηγό κάθε οµάδας (team leader ή founder). Έχοντας ένα πιστοποιητικό το οποίο έχει υπογραφεί από τον αρχηγό της οµάδας (µε χρήση του ιδιωτικού κλειδιού της οµάδας), τα µέλη µπορούν να καταναλώνουν στο όνοµα της οµάδας. Εικόνα 1: Πιστοποιητικό µέλους P2PWNC Στην παραπάνω εικόνα φαίνεται πως είναι τα πιστοποιητικά των µελών. Κάνοντας σύγκριση µε ένα κλασικό ψηφιακό πιστοποιητικό µπορούµε να παρατηρήσουµε ότι λείπουν δύο πράγµατα. Καταρχήν δεν υπάρχει υπογραφή από καµία έµπιστη τρίτη οντότητα (trusted-third party). Αυτό οφείλεται στο γεγονός ότι το P2PWNC δεν βασίζεται σε καµία κεντρική οντότητα. Η µόνη σχέση που κωδικοποιεί ένα πιστοποιητικό µέλους είναι αυτή ανάµεσα σε ένα συγκεκριµένο αναγνωριστικό µέλους και σε ένα αναγνωριστικό οµάδας (member ID Team Ευστράτιος Γ. ηµόπουλος 16

ID). Κάποιος µπορεί να δηµιουργήσει αναρίθµητες ψεύτικες οµάδες, κάθε µία µε ψευδή µέλη. Το δεύτερο που λείπει από το πιστοποιητικό είναι η ηµεροµηνία λήξης. Παραδοσιακά αυτή χρησιµοποιείται για να δείξει το χρονικό διάστηµα εµπιστοσύνης µεταξύ ενός µέλους και µίας οµάδας. Στην περίπτωση του P2PWNC επειδή δεν υπάρχει κάποια οντότητα που να καθορίζει καθολικά τα πιστοποιητικά, το µόνο που θα πετυχαίναµε µε την προσθήκη ηµεροµηνίας λήξης θα ήταν να περιπλέξουµε την κατάσταση. Για αυτόν το λόγο το πιστοποιητικό έχει κρατηθεί όσο απλούστερο γίνεται. Σε περίπτωση που ένα µέλος πρέπει να εξαιρεθεί από την οµάδα (αυτό µπορεί να γίνει σε περιπτώσεις που το µέλος αυτό καταναλώνει πάρα πολύ και η κατανάλωση αυτή δεν µπορεί να αντισταθµιστεί από την προσφορά της οµάδας) στο P2PWNC γίνεται το παρακάτω: Ο αρχηγός της οµάδας δηµιουργεί ένα νέο αναγνωριστικό για την οµάδα και χρησιµοποιεί το ιδιωτικό κλειδί της οµάδας για να υπογράψει τα πιστοποιητικά όλων των µελών της οµάδας, εξαιρουµένου του χρήστη που θέλει να αποκλείσει. Επειδή η απόδοση µιας οµάδας στο P2PWNC εξαρτάται από το βραχυπρόθεσµο ιστορικό προσφοράς κατανάλωσης της οµάδας, η κίνηση αυτή θα οδηγούσε σε µια προσωρινή µόνο µείωση του κέρδους της οµάδας. Σε κάθε περίπτωση άλλωστε, ο αρχηγός επιλέγει εξαρχής ποια θα είναι µέλη της οµάδας και εποµένως τέτοιες συµπεριφορές δεν µπορεί να είναι συνηθισµένες από ένα µέλος που υποτίθεται ότι είναι έµπιστο. Όταν τα µέλη µιας οµάδας αποφασίζουν να πάρουν την κινητή τους συσκευή που υποστηρίζει Wi-Fi και να πάνε σε µια περιοχή εκτός της εµβέλειας των σηµείων πρόσβασης της δικής τους οµάδας, τότε θα αναφέρουµε τα µέλη αυτά ως «κινητοί χρήστες», «υποψήφιοι καταναλωτές», «υποψήφιοι πελάτες» ή «κανονικοί χρήστες» (αναφέρονται και ως team clients ή consumers σε µερικά σχήµατα). Στην βιβλιογραφία αναφέρονται και ως roamers, κάτι το οποίο αλλάζει όµως στην παρούσα εργασία. Ευστράτιος Γ. ηµόπουλος 17

Με τον όρο «roamer» όπως θα γίνει σαφέστερα κατανοητό στις επόµενες ενότητες θα αναφερόµαστε στους χρήστες που µετακινούνται σε ξένες περιοχές (όχι απλά ξένες οµάδες). Λέγοντας «περιοχή» εννοούµε το σύνολο των οµάδων που αλληλεπιδρούν συχνά µεταξύ τους. Ξένη περιοχή για τους χρήστες µιας οµάδας Α, θεωρείται η περιοχή εκείνη που αποτελείται από οµάδες που δεν έχουν συχνά επικοινωνία και εποµένως δεν γνωρίζουν το ιστορικό συναλλαγών των οµάδων και ούτε εκείνη γνωρίζει το ιστορικό συναλλαγών της οµάδας Α. Η «περιοχή» δηλαδή έχει περισσότερο λογική παρά γεωγραφική σηµασία, χωρίς όµως να αποκλείεται η συνύπαρξη των δύο. Για παράδειγµα οι χρήστες από µία γειτονιά της Αθήνας είναι µάλλον απίθανο να έχουν συχνές συναλλαγές µε µια γειτονιά της Θεσσαλονίκης. Περισσότερα όµως πάνω σε αυτό θα δούµε στην ενότητα 3. Αρκεί σε αυτό το σηµείο να γίνει κατανοητό πως τα µέλη µιας οµάδας µπορούν να ζητήσουν υπηρεσία είτε από άλλες οµάδες τις περιοχής τους, οπότε τα θεωρούµε «κανονικούς χρήστες» είτε από οµάδες ξένων περιοχών, οπότε τους θεωρούµε roamers. 2.3.1.3 Σηµείο Πρόσβασης (Access Point) Κάθε οµάδα του P2PWNC µπορεί να παρέχει υπηρεσία µέσω ενός ή περισσοτέρων σηµείων πρόσβασης που διαθέτει και διαχειρίζεται. Το σηµείο πρόσβασης είναι το µέσο µε το οποίο κάθε οµάδα µαζεύει πόντους (credits) µε τους οποίους τα µέλη της µπορούν να καταναλώσουν από ξένες οµάδες. Το σηµείο πρόσβασης είναι υπεύθυνο για τον έλεγχο της πρόσβασης στο δίκτυο της οµάδας αλλά και για τη συλλογή αποδείξεων από τα µέλη άλλων οµάδων στα οποία δόθηκε πρόσβαση. Οι αποδείξεις αυτές προωθούνται στη συνέχεια στην «αποθήκη αποδείξεων» (receipts repository). Όταν ένας ξένος χρήστης λοιπόν ζητήσει υπηρεσία από το σηµείο πρόσβασης αυτό θα συµβουλευτεί την αποθήκη αποδείξεων και θα κρίνει εάν πρέπει να του δώσει πρόσβαση. Στην περίπτωση που του δώσει πρόσβαση θα πρέπει στο τέλος, ή και κατά τη διάρκεια χρήσης της σύνδεσης του, να πάρει και να αποθηκεύσει Ευστράτιος Γ. ηµόπουλος 18

στην αποθήκη των αποδείξεων µία απόδειξη υπογεγραµµένη από τον καταναλωτή που να επιβεβαιώνει ότι του παρείχε υπηρεσία. 2.3.2 Αποδείξεις Το P2PWNC είναι ένα σύστηµα το οποίο βασίζεται στην ανταλλαγή υπηρεσίας µεταξύ των οµότιµων χρηστών του. Η µονάδα υπηρεσίας στο σύστηµα αυτό είναι η απόδειξη (receipt). Μια απόδειξη είναι η επικύρωση µιας συναλλαγής µεταξύ ενός µέλους µια οµάδας (καταναλωτής υπηρεσίας) και µιας οµάδας που παρέχει την υπηρεσία µέσω του σηµείο πρόσβασης της στο διαδίκτυο. Περιέχει το πιστοποιητικό του καταναλωτή, το δηµόσιο κλειδί του παρόχου, µια χρονική ένδειξη (timestamp) που δείχνει πότε ξεκίνησε η συναλλαγή και το βάρος της απόδειξης, το οποίο δείχνει την ποσότητα σε byte που προωθήθηκε από το σηµείο πρόσβασης εκ µέρους του καταναλωτή, κατά τη διάρκεια της συνόδου. Τέλος µια απόδειξη περιέχει την υπογραφή του καταναλωτή που επικυρώνει την εγκυρότητα των παραπάνω στοιχείων. Έτσι ο καταναλωτής επιβεβαιώνει ότι του προσφέρθηκε υπηρεσία συγκεκριµένης ποσότητας από το σηµείο πρόσβασης. Μια απόδειξη έχει τη µορφή που φαίνεται στο παρακάτω σχήµα: ηµόσιο κλειδί οµάδας-παρόχου Πιστοποιητικό καταναλωτή Timestamp Όγκος δεδοµένων κίνησης Υπογραφή µε το ιδιωτικό κλειδί του καταναλωτή Ευστράτιος Γ. ηµόπουλος 19

Ο όγκος δεδοµένων κίνησης (το βάρος της απόδειξης δηλαδή) καθορίζεται από το σηµείο πρόσβασης. Έτσι υπογράφοντας την απόδειξη ο καταναλωτής δέχεται την µέτρηση που έκανε το σηµείο πρόσβασης για την υπηρεσία που κατανάλωσε. Για την αποφυγή κακόβουλων χρηστών που θα µπορούσαν να αρνηθούν να υπογράψουν την απόδειξη ενώ κατανάλωσαν υπηρεσία, το σηµείο πρόσβασης µπορεί να στέλνει τµηµατικές αποδείξεις κατά τη διάρκεια της συνόδου, οι οποίες διαφέρουν µεταξύ τους µόνο στο αναγραφόµενο βάρος της αποδείξεις (το οποίο συνεχώς αυξάνεται). Ωστόσο µόνο η τελευταία απόδειξη που έχει υπογραφεί έχει νόηµα να κρατιέται από το σηµείο πρόσβασης. Έτσι λοιπόν η απόδειξη που χαρακτηρίζει τη σύνοδο µπορεί να αναγνωριστεί µοναδικά από την ακόλουθη πλειάδα (διπλότυπα αποδείξεων δεν επιτρέπονται αυτές µε µικρότερο βάρος αγνοούνται). Αναγνωριστικό απόδειξης: {Πιστοποιητικό καταναλωτή, ηµόσιο κλειδί παρόχου, timestamp}. Η εγκυρότητα µια απόδειξης µπορεί να ελεγχθεί επαληθεύοντας τις δύο ψηφιακές υπογραφές που περιέχει. Πρώτον η υπογραφή που περιέχεται στο πιστοποιητικό του καταναλωτή, ώστε να επιβεβαιωθεί ότι ο καταναλωτής είναι όντως µέλος της οµάδας που καθορίζεται στο πιστοποιητικό. εύτερον, η υπογραφή της απόδειξης η οποία επαληθεύεται χρησιµοποιώντας το δηµόσιο κλειδί του καταναλωτή (το οποίο περιέχεται στο πιστοποιητικό του). Οι αποδείξεις σχηµατίζουν ένα λογικό γράφο αποδείξεων. Οι κόµβοι του γράφου αυτού είναι τα αναγνωριστικά των οµάδων, ενώ οι κατευθυνόµενες ακµές του δείχνουν το χρέος από τον καταναλωτή προς τον πάροχο. Τα βάρη των ακµών είναι ίσα µε τον όγκο της κίνησης που κατανάλωσε ο κόµβος-πηγή από τον κόµβο-στόχο. Η απόδειξη ανάλογα µε τον αλγόριθµο κρυπτογράφησης που έχει χρησιµοποιηθεί µποερί να είναι από 211bytes µέχρι µερικά kilobytes. Το P2PWNC πρωτόκολλο υποστηρίζει RSA και ECC υπογραφές µεταβλητού µεγέθους. Περισσότερα µπορεί να διαβάσει κανείς στο [9]. Ευστράτιος Γ. ηµόπουλος 20