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



Σχετικά έγγραφα
Τηλεματική, Διαδίκτυα και Κοινωνία Το Ευρωπαϊκό Πρότυπο GSM

Ασφάλεια στο δίκτυο GSM

Αρχιτεκτονική ικτύου

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

Κινητές επικοινωνίες. Κεφάλαιο 2 Αρχιτεκτονική GSM

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

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

Το δίκτυο GSM. ρ Απόστολος Γεωργιάδης Εργαστήριο Κινητών Επικοινωνιών Τµήµα Πληροφορικής & Επικοινωνιών ΑΤΕΙ Σερρών

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

Special. Mobile το Πανευρωπαϊκό Σύστηµα Κινητών Επικοινωνιών Ψηφιακό Κυψελωτό Σύστηµα 2 ης Γενιάς

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

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

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

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

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

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

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

Εισαγωγή 6. Δημιουργία λογαριασμού 13. Εγκατάσταση και λειτουργία του Skype 28. Βασικές λειτουργίες 32. Επιλογές συνομιλίας 48

6.1 Επεκτείνοντας το δίκτυο 6.2 Επιλεγόμενες τηλεφωνικές γραμμές modems Πλεονεκτήματα Μειονεκτήματα Βασική χρήση

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

Προσαρμογή λειτουργιών Δικτύου Κινητής Τηλεφωνίας

ΑΝΑΚΟΙΝΩΣΗ ΔΙΑΔΙΚΑΣΙΑΣ ΑΠΕΥΘΕΙΑΣ ΑΝΑΘΕΣΗΣ. Αριθμ. Πρωτ.: /2017 Ο ΕΙΔΙΚΟΣ ΛΟΓΑΡΙΑΣΜΟΣ ΚΟΝΔΥΛΙΩΝ ΕΡΕΥΝΑΣ

Τεχνολογίες & Εφαρμογές Πληροφορικής Ενότητα 10: Κινητή Τηλεφωνία

επιφάνεια πυριτίου Αναφορά στο Εκπαιδευτικό Υλικό : 5. Αναφορά στο Εργαστήριο :

Σύστημα Διαχείρισης, Ελέγχου και Παρακολούθησης Ασθενοφόρων και Περιστατικών

Μάθημα 4: Πρότυπα, Πρωτόκολλα & Υπηρεσίες

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

Ενότητα 3: Διαχείριση πληροφοριακών πόρων με τη χρήση βάσεων δεδομένων

Πρόγραμμα Πιστοποίησης Γνώσεων και Δεξιοτήτων H/Y ΕΝΟΤΗΤΑ 1: «ΒΑΣΙΚΕΣ ΕΝΝΟΙΕΣ ΠΛΗΡΟΦΟΡΙΚΗΣ»

Διαχείριση Πολιτισμικών Δεδομένων

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

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

Κεφάλαιο 7. ΕΠΑΛ Σύμης Εφαρμογές πληροφορικής Ερωτήσεις επανάληψης

ΚΕΦΑΛΑΙΟ 5. Κύκλος Ζωής Εφαρμογών ΕΝΟΤΗΤΑ 2. Εφαρμογές Πληροφορικής. Διδακτικές ενότητες 5.1 Πρόβλημα και υπολογιστής 5.2 Ανάπτυξη εφαρμογών

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

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

ΠΑΡΑΡΤΗΜΑ 1 ΥΠΗΡΕΣΙΕΣ ΔΙΑΣΥΝΔΕΣΗΣ 1. ΒΑΣΙΚΕΣ ΥΠΗΡΕΣΙΕΣ ΔΙΑΣΥΝΔΕΣΗΣ ΠΟΥ ΠΡΟΣΦΕΡΟΝΤΑΙ ΑΠΟ ΤΗΝ MTN

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

ΠΑΡΑΡΤΗΜΑ 1: ΠΡΟΪΟΝΤΑ ΚΙΝΗΤΗΣ ΠΡΟΣΒΑΣΗΣ ΠΙΝΑΚΑΣ ΠΕΡΙΕΧΟΜΕΝΩΝ

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

Εισαγωγή στην εφαρμογή Βασική Σελίδα (Activity) Αναζήτηση Πελάτη... 6 Προβολή Πελάτη... 7 Επεξεργασία Πελάτη... 10

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

Η ΤΑΥΤΟΤΗΤΑ ΜΑΣ. Αναλαμβάνουμε τη μελέτη, εγκατάσταση και υποστήριξη όλων των τηλεπικοινωνιακών συστημάτων VοIP.

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

BO.M.I.S BOLLARD MANAGEMENT INFORMATION SYSTEM ΛΟΓΙΣΜΙΚΟ ΔΙΑΧΕΙΡΗΣΗΣ ΑΝΑΔΥΟΜΕΝΩΝ ΠΑΣΑΛΩΝ ΔΙΑΧΕΙΡΗΣΗΣ ΚΥΚΛΟΦΟΡΙΑΣ BOMIS-V1-2012

Κινητές επικοινωνίες. Κεφάλαιο 4 Βασικές λειτουργίες στο GSM

Οδηγός χρήσης Connection Manager

Οι βασικές λειτουργίες (ή πράξεις) που γίνονται σε μια δομή δεδομένων είναι:

Εισαγωγή στη Σχεδίαση Λογισμικού

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

Βάσεις Δεδομένων. Τ.Ε.Ι. Ιονίων Νήσων Σχολή Διοίκησης και Οικονομίας - Λευκάδα

ΠΑΡΑΡΤΗΜΑ 6 ΕΝΤΥΠΑ ΠΙΝΑΚΑΣ ΠΕΡΙΕΧΟΜΕΝΩΝ ΕΝΤΥΠΟ ΑΙΤΗΣΗΣ ΑΙΤΗΣΗ ΓΙΑ ΣΥΝΑΨΗ ΣΥΜΦΩΝΙΑΣ ΠΡΟΣΒΑΣΗΣ ΣΤΟ ΚΙΝΗΤΟ ΔΙΚΤΥΟ ΤΗΣ ΑΤΗΚ 2

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

Προσωπικών Επικοινωνιών. κυψελωτών συστημάτων

1.1. Οι τιμές συμπεριλαμβάνουν Φ.Π.Α. Ο Φ.Π.Α. χρεώνεται στο σύνολο της μηνιαίας κατάστασης του λογαριασμού του Πελάτη.

Αρχή Διασφάλισης του Απορρήτου των Επικοινωνιών

Τι είναι ένα δίκτυο υπολογιστών; Αρχιτεκτονική επιπέδων πρωτοκόλλων. Δικτυακά πρωτόκολλα

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

Λειτουργικά. Τεχνολογικό Εκπαιδευτικό Ίδρυμα Δυτικής Μακεδονίας Σιώζιος Κων/νος - Πληροφορική Ι

Τεχνολογία Δικτύων Επικοινωνιών (Ενότητα Πρωτόκολλα και Αρχιτεκτονική Δικτύου)

ΟΔΗΓΟΣ ΔΙΕΘΝΟΥΣ ΠΕΡΙΑΓΩΓΗΣ - international ROAMING ΤΑΞΙΔΕΨΤΕ ΣΤΟ ΕΞΩΤΕΡΙΚΟ ΚΑΙ ΜΙΛΗΣΤΕ ΣΤΟ ΚΙΝΗΤΟ ΣΑΣ ΑΞΙΟΠΟΙΩΝΤΑΣ ΤΗ ΔΙΕΘΝΗ ΠΕΡΙΑΓΩΓΗ

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

ίκτυα Κινητών και Προσωπικών Επικοινωνιών ιαχείριση κινητικότητας

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

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

4.1.1 Πρωτόκολλο TCP - Δομή πακέτου

TRAVIS TRAFFIC VIOLATION INFORMATION SYSTEM ΣΥΣΤΗΜΑ ΔΙΑΧΕΙΡΗΣΗΣ ΠΑΡΑΒΑΣΕΩΝ ΦΩΤΟΕΠΙΣΗΜΑΝΣΗΣ

Προσωπικών Επικοινωνιών. Διαχείριση κινητικότητας

Επαναληπτικές Ασκήσεις Μαθήματος

Ανατομία ενός πομποδέκτη σταθμού βάσης HSDPA (Node-B)

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

Φύλλο Κατανόησης 1.8

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

7.1.1 Επίπεδο δικτύου Γενικές Αρχές

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

Δίκτυα Υπολογιστών Firewalls. Χάρης Μανιφάβας

Εισαγωγή Κεφάλαιο 1: Εγκατάσταση της Access Κεφάλαιο 2: Βάσεις δεδομένων και δομικά στοιχεία της Access

ΠΑΡΑΡΤΗΜΑ 1: ΠΡΟΪΟΝΤΑ ΚΙΝΗΤΗΣ ΠΡΟΣΒΑΣΗΣ ΠΙΝΑΚΑΣ ΠΕΡΙΕΧΟΜΕΝΩΝ

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

ΠΛΑΤΩΝΑΣ Έργο ΓΓΕΤ 1SME2009

Η ανάγκη βελτίωσης του συγκοινωνιακού έργου των αστικών και υπεραστικών συγκοινωνιών με την ταυτόχρονη αναβάθμιση των προσφερόμενων υπηρεσιών προς

Επίπεδο Δικτύου: Διαδικτύωση

Περιεχόμενα. 2 Αριθμητικά συστήματα

ΠΤΥΧΙΑΚΗ ΕΡΓΑΣΙΑ. " Μαθηματική μοντελοποίηση της τηλεπικοινωνιακής κίνησης σε ένα κύτταρο GSM με την χρήση statistical counters τεχνολογίας Ericsson "

ΠΡΩΤΟΚΟΛΟ HTTP ΕΝΤΟΛΩΝ ΔΙΑΣΥΝΔΕΣΗΣ ΕΚΔΟΣΗ 1.2

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

1 Συστήματα Αυτοματισμού Βιβλιοθηκών

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

Εγχειρίδιο Χρήσης. 1bank Internet Banking για Εταιρικούς Συνδρομητές

ΕΚΦΩΝΗΣΕΙΣ ΘΕΜΑ Α. α. Πριν εμφανιστεί η τεχνολογία ISDN οι υπηρεσίες φωνής, εικόνας και δεδομένων απαιτούσαν διαφορετικά δίκτυα.

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

Λιβανός Γιώργος Εξάμηνο 2017Β

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

Τηλεφωνία. Νοήμον Δίκτυο

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

Δίκτυα Θεωρία

Όλες οι υπηρεσίες είναι διαθέσιμες μέσω διαδικτύου.

7.2.2 Σχέση OSI και TCP/IP

Μαλούτα Θεανώ Σελίδα 1

Πληροφορική Μάθημα 9

Transcript:

ΠΑΝΕΠΙΣΤΗΜΙΟ ΠΑΤΡΩΝ ΠΟΛΥΤΕΧΝΙΚΗ ΣΧΟΛΗ ΤΜΗΜΑ ΜΗΧΑΝΙΚΩΝ Η/Υ ΚΑΙ ΠΛΗΡΟΦΟΡΙΚΗΣ ΜΕΑΠΤΥΧΙΑΚΟ ΔΙΠΛΩΜΑΤΙΚΗΣ ΕΙΔΙΚΕΥΣΗΣ (ΜΔΕ) Επιστήμη και Τεχνολογία Υπολογιστών (ΕΤΥ) ΜΕΤΑΠΤΥΧΙΑΚΗ ΕΡΓΑΣΙΑ «ΚΑΤΑΣΚΕΥΗ ΑΝΕΣΤΡΑΜΜΕΝΟΥ ΕΥΡΕΤΗΡΙΟΥ ΓΙΑ ΤΗ ΔΕΙΚΤΟΔΟΤΗΣΗ ΜΗΝΥΜΑΤΩΝ ΚΙΝΗΤΗΣ ΤΗΛΕΦΩΝΙΑΣ» Ανδρέας Παπαδόπουλος AM 586 Επιβλέπων καθηγητής: Δημήτριος Χριστοδουλάκης Εξεταστική Επιτροπή: Δημήτριος Χριστοδουλάκης Βασίλειος Μεγαλοοικονόμου Σοφία Στάμου Πάτρα 2012

2

«Κατασκευή ανεστραμμένου ευρετηρίου για τη δεικτοδότηση μηνυμάτων κινητής τηλεφωνίας» Πάτρα 2012 3

ΠΡΟΛΟΓΟΣ Με τους συνδρομητές της κινητής τηλεφωνίας να έχουν φτάσει τα 3.7 εκατομμύρια συνδρομητές παγκοσμίως και με εκτίμηση για τουλάχιστον 4.5 εκατομμύρια έως το 2012, η κινητή τηλεφωνία έχει λάβει ηγετική θέση στο χώρο των ηλεκτρονικών. Οι συσκευές κινητής τηλεφωνίας εξελίσσονται ραγδαία, καθώς πρέπει να αντιμετωπίσουν ολοένα και περισσότερες προκλήσεις από εφαρμογές που απαιτούν μεγαλύτερη υπολογιστική ισχύ για τις καθημερινές εργασίες ενός χρήστη. Παιχνίδια 3D, Μίνι office, φωτογραφίες, Internet, εφαρμογές κοινωνικής δικτύωσης και βίντεο ψυχαγωγίας είναι μερικές από τις εφαρμογές που είναι ήδη ενσωματωμένες στις περισσότερες σύγχρονες συσκευές κινητής τηλεφωνίας. Οι εφαρμογές που αναπτύσσονται προσθέτουν ευελιξία στις καθημερινές δραστηριότητες των χρηστών και εναποθέτουν ολοένα και περισσότερες λειτουργίες για τη διαχείριση αρχείων, πληροφοριών και ταξινόμησης στα δεδομένα των χρηστών κατά το δοκούν. Το πιο διαδεδομένο υποσύστημα επικοινωνίας από την αρχή λειτουργίας των κινητών τηλεφώνων έως σήμερα αποτελεί το σύστημα των σύντομων γραπτών μηνυμάτων που ανταλλάσουν οι χρήστες μεταξύ τους. Η πληροφορία που αποθηκεύεται στα κινητά τηλέφωνα μέσω του συστήματος αυτού διογκώνεται με ταχύτατους ρυθμούς. Έτσι δημιουργούνται επιπρόσθετα προβλήματα στην ανεύρεση της επιθυμητής πληροφορίας από το χρήστη. Πολλές εφαρμογές έχουν προταθεί για το υποσύστημα των σύντομων γραπτών μηνυμάτων κινητής τηλεφωνίας, δίχως όμως να λαμβάνουν υπόψη σημαντικούς παράγοντες, όπως είναι ο όγκος της πληροφορίας και η ταχύτητα ανεύρεσης. Η παρούσα διπλωματική πραγματεύεται την αντιμετώπιση του προβλήματος διαχείρισης και αποκόμισης της κατάλληλης πληροφορίας των σύντομων γραπτών μηνυμάτων κινητής τηλεφωνίας. Η ανάκτηση της πληροφορίας μπορεί να βελτιωθεί σημαντικά κάνοντας χρήση διαφόρων τεχνικών δομών δεδομένων, ενώ για την αναζήτηση γίνεται και χρήση λογικών εκφράσεων που αποτελούν σημαντικό εργαλείο κατά την λήψη οποιουδήποτε κειμένου σε μεγάλες αποθήκες δεδομένων. Με τον πρόλογο αυτό θα ήθελα να ευχαριστήσω θερμά τον καθηγητή μου Χριστοδουλάκη Δημήτριο (Καθηγητή του τμήματος Μηχανικών Ηλεκτρονικών Υπολογιστών και Πληροφορικής του Πανεπιστημίου Πατρών) για την επίβλεψη της συγκεκριμένης μεταπτυχιακής εργασίας. Ακόμα, θα ήθελα να ευχαριστήσω τη Λέκτορα Στάμου Σοφία για την πολύτιμη βοήθεια και καθοδήγηση κατά τη διάρκεια 4

της εκπόνησης της μεταπτυχιακής μου εργασίας, για το χρόνο που μου αφιέρωσε και για τις ιδέες που μοιραστήκαμε καθ όλη τη διάρκεια της υλοποίησης. Ένα μεγάλο ευχαριστώ στη γυναίκα μου Κατερίνα για την αμέριστη συμπαράσταση στις επιλογές μου και για τις υποδείξεις της στην καθημερινότητά μου. Στην κορούλα μου Άρτεμις, ένα μεγάλο ευχαριστώ που ήρθε στη ζωή μου και έδωσε πνοή στα όνειρα και τις φιλοδοξίες μου. Που μου έδωσε το έναυσμα να παλεύω περισσότερο για όσα πραγματικά αξίζουν στη ζωή. Στους γονείς μου και στις αδερφές μου ένα μεγάλο ευχαριστώ για όλη τη στήριξη τους, για τις δύσκολες στιγμές που είναι εκεί και για όλες τις εποικοδομητικές συζητήσεις που έχουμε κάνει και που έχω αποκομίσει πολλά. Τέλος ένα ευχαριστώ στη γιαγιά μου Άννα που έφυγε πρόσφατα και που πίστευε πάντα σε μένα. Γιαγιά τα κατάφερα και πάλι! Πάτρα, 2012 Παπαδόπουλος Ανδρέας 5

ΠΕΡΙΕΧΟΜΕΝΑ ΠΕΡΙΕΧΟΜΕΝΑ ΠΡΟΛΟΓΟΣ...4 ΠΕΡΙΕΧΟΜΕΝΑ...6 ΛΙΣΤΑ ΠΙΝΑΚΩΝ...9 ΛΙΣΤΑ ΕΙΚΟΝΩΝ...11 ΓΛΩΣΣΑΡΙΟ...12 ΣΥΝΤΟΜΟΓΡΑΦΙΕΣ... 14 1 ΕΙΣΑΓΩΓΗ...15 1.1 Προσδιορισμός του προβλήματος... 15 1.2 Αντικείμενο διπλωματικής... 16 1.3 Συνεισφορά διπλωματικής... 17 1.4 Δομή της εργασίας... 18 2 ΔΟΜΙΚΑ ΣΤΟΙΧΕΙΑ ΤΟΥ ΔΙΚΤΥΟΥ ΤΗΣ ΚΙΝΗΤΗΣ ΤΗΛΕΦΩΝΙΑΣ... 19 2.1 Εισαγωγή... 19 2.2 Τα υποσυστήματα του δικτύου κινητής τηλεφωνίας... 19 2.3 Το υποσύστημα λειτουργίας και υποστήριξης...20 2.4 Το υποσύστημα δικτύου και μεταγωγής... 21 2.4.1 Επιλεκτικό μεταγωγικό κέντρο (MSC)... 21 2.4.2 Οικεία βάση δεδομένων (HLR)... 21 2.4.3 Βάση δεδομένων επισκεπτών (VLR)...22 2.5 Το υποσύστημα σταθμού βάσης...22 2.5.1 Ελεγκτής σταθμών βάσης (BSC)...22 2.5.2 Σταθμός βάσης (BTS)...22 2.5.3 Κινητός σταθμός (MS)...23 2.6 Τα γραπτά μηνύματα...23 2.7 Η υπηρεσία σύντομων γραπτών μηνυμάτων...24 2.7.1 Οι οντότητες των σύντομων γραπτών μηνυμάτων...24 2.7.2 Το κέντρο της υπηρεσίας...24 2.8 Βασικά γνωρίσματα των γραπτών μηνυμάτων...25 2.8.1 Αποστολή και παράδοση μηνύματος...25 2.8.2 Αναφορά παράδοσης...26 2.8.3 Η μορφή ενός σύντομου γραπτού μηνύματος...26 2.8.4 Αξιοπιστία ενός μηνύματος...26 2.8.5 Διάρκεια ζωής...26 6

ΠΕΡΙΕΧΟΜΕΝΑ 2.8.6 Πληροφορία του σύντομου γραπτού μηνύματος... 27 3 ΔΙΑΧΕΙΡΙΣΗ ΤΗΣ ΠΛΗΡΟΦΟΡΙΑΣ ΜΗΝΥΜΑΤΩΝ ΚΙΝΗΤΗΣ ΤΗΛΕΦΩΝΙΑΣ...29 3.1 Γενικά...29 3.2 Δομές δεδομένων και διαχείριση πληροφορίας...29 3.3 Ευρετηριοποίηση των δεδομένων...30 3.3.1 Δένδρα και πίνακες κατάληξης... 31 3.3.2 Αρχεία υπογραφών...32 3.3.3 Ανεστραμμένο ευρετήριο...32 3.4 Ανάλυση των ανεστραμμένων ευρετηρίων και των Β- δένδρων 35 3.5 Αποτίμηση των δομών δεδομένων ευρετηριοποίησης... 37 4 ΧΡΗΣΗ ΤΟΥ ΑΝΕΣΤΡΑΜΜΕΝΟΥ ΕΥΡΕΤΗΡΙΟΥ ΓΙΑ ΔΕΔΟΜΕΝΑ ΜΗΝΥΜΑΤΩΝ ΚΙΝΗΤΗΣ ΤΗΛΕΦΩΝΙΑΣ... 39 4.1 Εισαγωγή...39 4.2 Οι βάσεις δεδομένων του Android...39 4.3 Αποθήκευση μηνυμάτων στο Android...40 4.4 Τα πεδία της βάση δεδομένων στο Android...40 4.5 Δεικτοδότηση μηνυμάτων κινητής τηλεφωνίας με χρήση ανεστραμμένου ευρετηρίου... 41 4.6 Μεθοδολογία δημιουργίας ευρετηρίου για τα μηνύματα κινητής τηλεφωνίας...43 4.7 Αποθήκευση ολικού βάρους κάθε λέξης...45 4.8 Δεικτοδότηση μηνυμάτων σε ανεστραμμένο ευρετήριο...46 5 ΔΙΑΣΥΝΔΕΣΗ ΑΝΕΣΤΡΑΜΜΕΝΟΥ ΕΥΡΕΤΗΡΙΟΥ ΜΕ ΤΟ ΛΕΙΤΟΥΡΓΙΚΟ ΣΥΣΤΗΜΑ ΦΟΡΗΤΩΝ ΣΥΣΚΕΥΩΝ ANDROID...48 5.1 Εισαγωγή...48 5.2 Η επιλογή του Android...50 5.3 Ανάπτυξη εφαρμογών στο Android... 51 5.4 Η αρχιτεκτονική του Android...52 5.5 Το Android SDK...53 5.6 Η διεπαφή που δημιουργήθηκε για την ευρετηριοποίηση μηνυμάτων στο Android...53 5.6.1 Το κύριο μενού...54 5.6.2 Αποστολή και λήψη νέου μηνύματος... 55 5.6.3 Εισερχόμενα και εξερχόμενα μηνύματα...56 5.6.4 Ανακατασκευή του ευρετηρίου...58 5.6.5 Η αναζήτηση μηνυμάτων...58 6 ΑΞΙΟΛΟΓΗΣΗ ΤΗΣ ΑΠΟΔΟΣΗΣ ΤΟΥ ΣΥΣΤΗΜΑΤΟΣ...60 7

ΠΕΡΙΕΧΟΜΕΝΑ 6.1 Σύνολα δεδομένων που χρησιμοποιήθηκαν...60 6.2 Μετρικές αξιολόγησης...60 6.3 Κριτήρια επιλογής ερωτημάτων και δείκτες αξιολόγησης.. 61 6.3.1 Αποτελέσματα αναζήτησης σε σύνολο δεδομένων 1000 μηνυμάτων 63 6.3.2 Αποτελέσματα αναζήτησης σε σύνολο δεδομένων 2000 μηνυμάτων 66 6.3.3 Αποτελέσματα αναζήτησης σε σύνολο δεδομένων 3000 μηνυμάτων 70 6.4 Κόστος χρήσης του ευρετηρίου... 73 6.4.1 Κόστος σε χώρο αποθήκευσης στη συσκευή... 73 6.4.2 Κόστος ευρετηριοποίησης... 74 6.5 Συνολική αποτίμηση πειραματικής αξιολόγησης... 75 6.5.1 Αποτελέσματα χρονικής αναζήτησης... 76 6.5.2 Αποτελέσματα χωρικής έκτασης του ευρετηρίου... 76 7 ΑΠΟΤΙΜΗΣΗ ΤΟΥ ΕΡΓΟΥ... 78 7.1 Επίλογος...78 7.2 Μελλοντικές κατευθύνσεις... 79 ΒΙΒΛΙΟΓΡΑΦΙΚΕΣ ΑΝΑΦΟΡΕΣ...80 ΠΑΡΑΡΤΗΜΑ ΚΩΔΙΚΑΣ XML ΚΑΙ JAVA...83 8

ΛΙΣΤΑ ΠΙΝΑΚΩΝ Πίνακας 1. Τα χαρακτηριστικά γνωρίσματα του πίνακα sms...41 Πίνακας 2. Η αρχική ιδέα ευρετηριοποίησης του πίνακα sms... 42 Πίνακας 3. Οι χρόνοι αναζήτησης για την αρχική ιδέα ευρετηριοποίησης... 42 Πίνακας 4. Η τελική ιδέα ευρετηριοποίησης του πίνακα sms...43 Πίνακας 5. Ο πίνακας αποκλεισμού λέξεων της ευρετηριοποίησης...45 Πίνακας 6. Ένα παράδειγμα χρήσης του πίνακα sms... 46 Πίνακας 7. Ευρετηριοποίηση του παραπάνω πίνακα sms...47 Πίνακας 8. Οι πωλήσεις των κινητών τηλεφώνων παγκόσμια (σε χιλιάδες μονάδες)49 Πίνακας 9. Ο πίνακας των περιπτώσεων σύμφωνα με τις οποίες έγιναν οι μετρήσεις... 62 Πίνακας 10. Ο πίνακας των αποτελεσμάτων για το σύνολο δεδομένων των 1000 μηνυμάτων με διαφορετικό περιεχόμενο...63 Πίνακας 11. Ο πίνακας των αποτελεσμάτων για το σύνολο δεδομένων των 1000 μηνυμάτων με συναφές περιεχόμενο...65 Πίνακας 12. Ο πίνακας των αποτελεσμάτων για το σύνολο δεδομένων των 2000 μηνυμάτων με διαφορετικό περιεχόμενο...67 Πίνακας 13. Ο πίνακας των αποτελεσμάτων για το σύνολο δεδομένων των 2000 μηνυμάτων με συναφές περιεχόμενο... 68 Πίνακας 14. Ο πίνακας των αποτελεσμάτων για το σύνολο δεδομένων των 3000 μηνυμάτων με διαφορετικό περιεχόμενο...70 Πίνακας 15. Ο πίνακας των αποτελεσμάτων για το σύνολο δεδομένων των 3000 μηνυμάτων με συναφές περιεχόμενο...72 Πίνακας 16. Το αρχείο AndroidManifest.xml για τους πόρους που θα χρησιμοποιήσει η εφαρμογή μας... 83 Πίνακας 17. Το αρχείο της κεντρικής διεπαφής main.xml... 84 Πίνακας 18. Το αρχείο empty.xml για την εμφάνιση κενού μηνύματος... 84 Πίνακας 19. Το αρχείο exclude.xml για τον αποκλεισμό λέξεων...85 Πίνακας 20. Το αρχείο newsms.xml για την διεπαφή του νέου μηνύματος...85 Πίνακας 21. Το αρχείο openmessage.xml για την προβολή των στοιχείων ενός μηνύματος...87 Πίνακας 22. Το αρχείο search.xml για την προβολή των στοιχείων για αναζήτηση από τα μηνύματα... 88 Πίνακας 23. Το αρχείο smslist.xml για την προβολή της λίστα των μηνυμάτων που βρέθηκαν στα εισερχόμενα, εξερχόμενα και στην αναζήτηση... 88 Πίνακας 24. Το αρχείο strings.xml για την προβολή των μηνυμάτων που εμφανίζονται στην εφαρμογή... 90 Πίνακας 25. Το αρχείο ExcludeActivity.java για την δημιουργία διεργασία που θα αποκλείει λέξεις....93 Πίνακας 26. Το αρχείο NewSMSActivity.java για την αποστολή νέου μηνύματος....97 Πίνακας 27. Το αρχείο OpenSMSActivity.java για το άνοιγμα ενός μηνύματος.... 99 Πίνακας 28. Το αρχείο SearchSMSActivity.java για την διεπαφή της αναζήτησης μηνυμάτων.... 101 Πίνακας 29. Το αρχείο SearchSMSResultsActivity.java για την προβολή της λίστα των μηνυμάτων που βρέθηκαν κατά αναζήτηση...107 Πίνακας 30. Το αρχείο SendSMSActivity.java για την προβολή της λίστα των μηνυμάτων που βρέθηκαν εξερχόμενα... 112 Πίνακας 31. Το αρχείο sms.java της κλάσης sms για τα μηνύματα που διαχειρίζεται η εφαρμογή.... 115 Πίνακας 32. Το αρχείο SMSInboxActivity.java για την προβολή της των εισερχόμενων μηνυμάτων...120 Πίνακας 33. Το αρχείο SMSindexActivity.java για τη δημιουργία του ευρετηρίου..126 9

Πίνακας 34. Το αρχείο SMSQuery.java για την υποβολή ερωτημάτων στη βάση δεδομένων μηνυμάτων του Android....128 Πίνακας 35. Το αρχείο SmsReceiver.java για την λήψη μηνυμάτων στο κινητό τηλέφωνο Android... 131 Πίνακας 36. Το αρχείο SQLIndex.java για την υποβολή ερωτημάτων στη βάση δεδομένων του ευρετηρίου...140 Πίνακας 37. Το αρχείο word.java για τον κατάλληλο χειρισμό των λέξεων των μηνυμάτων κατά τη διαδικασία φιλτραρίσματος... 141 Πίνακας 38. Το αρχείο wordfiltering.java για το κατάλληλο φιλτράρισμα ολόκληρων των μηνυμάτων...142 10

ΛΙΣΤΑ ΕΙΚΟΝΩΝ Εικόνα 1. Η αρχιτεκτονική του δικτύου GSM... 20 Εικόνα 2. Βασική αρχιτεκτονική του δικτύου για την εφαρμογή ενός SMS...25 Εικόνα 3. Η υποβολή μηνύματος...27 Εικόνα 4. Ο τύπος PDU διάταξης για αποστολή SMS...27 Εικόνα 5. Δένδρο κατάληξης για την λέξη BANANA...31 Εικόνα 6. Αρχείο υπογραφής και η αντίστοιχη συνάρτηση κατακερματισμού...32 Εικόνα 7. Αναζήτηση σε συστήματα ανάκτησης πληροφορίας...33 Εικόνα 8. Ευρετηριοποίηση κειμένων με χρήση ανεστραμμένου ευρετηρίου...34 Εικόνα 9. Γενική μορφή ευρετηρίου...34 Εικόνα 10. Από τη γενική μορφή ευρετηρίου στη μορφή ανεστραμμένου ευρετηρίου...35 Εικόνα 11. Ο κόμβος ενός Β-δένδρου...36 Εικόνα 12. Η αρχιτεκτονική του Android...53 Εικόνα 13. Το κύριο μενού της εφαρμογής ευρετηριοποίησης...54 Εικόνα 14. Η αποστολή νέου μηνύματος της εφαρμογής ευρετηριοποίησης...55 Εικόνα 15. Η επιλογή εισερχόμενων ή εξερχόμενων μηνυμάτων της εφαρμογής ευρετηριοποίησης...56 Εικόνα 16. Η επιλογή ενός εισερχόμενου ή εξερχόμενων μηνύματος...57 Εικόνα 17. Η προβολή ενός εισερχόμενου ή εξερχόμενου μηνύματος...57 Εικόνα 18. Η ανακατασκευή του ευρετηρίου της εφαρμογής...58 Εικόνα 19. Η αναζήτηση λέξεων της εφαρμογής...59 Εικόνα 20. Αποτελέσματα αναζήτησης σε σύνολο από 1000 μηνύματα με διαφορετικό περιεχόμενο... 64 Εικόνα 21. Αποτελέσματα ακρίβειας κατά την αναζήτηση από 1000 διαφορετικά μηνύματα... 64 Εικόνα 22. Αποτελέσματα αναζήτησης σε σύνολο από 1000 μηνύματα συναφούς περιεχομένου...65 Εικόνα 23. Αποτελέσματα ακρίβειας κατά την αναζήτηση σε σύνολο από 1000 μηνύματα συναφούς περιεχομένου... 66 Εικόνα 24. Αποτελέσματα αναζήτησης σε σύνολο από 2000 μηνύματα με διαφορετικό περιεχόμενο...67 Εικόνα 25. Αποτελέσματα ακρίβειας κατά την αναζήτηση από 2000 διαφορετικά μηνύματα... 68 Εικόνα 26. Αποτελέσματα αναζήτησης σε σύνολο από 2000 μηνύματα συναφούς περιεχομένου... 69 Εικόνα 27. Αποτελέσματα ακρίβειας κατά την αναζήτηση σε σύνολο από 2000 μηνύματα συναφούς περιεχομένου... 69 Εικόνα 28. Αποτελέσματα αναζήτησης σε σύνολο από 3000 μηνύματα με διαφορετικό περιεχόμενο... 71 Εικόνα 29. Αποτελέσματα ακρίβειας κατά την αναζήτηση από 3000 διαφορετικά μηνύματα... 71 Εικόνα 30. Αποτελέσματα αναζήτησης σε σύνολο από 3000 μηνύματα συναφούς περιεχομένου...72 Εικόνα 31. Αποτελέσματα ακρίβειας κατά την αναζήτηση σε σύνολο από 3000 μηνύματα συναφούς περιεχομένου...73 Εικόνα 32. Μέγεθος του ευρετηρίου σε KB για διάφορα σύνολα δεδομένων...74 Εικόνα 33. Πλήθος των εγγραφών του ευρετηρίου για διάφορα σύνολα δεδομένων 75 11

ΓΛΩΣΣΑΡΙΟ API Ιστοσελίδα που συνήθως υπάρχει μόνο ένας συγγραφέας GSM Πρότυπο δικτύου κινητής τηλεφωνίας για την υποστήριξη φωνής και μηνυμάτων. BSS Υποσύστημα του GSM το οποίο επιτελεί τις απαραίτητες ενέργειες για τη σωστή λειτουργία μεταξύ κινητών τηλεφώνων και κεραιών. NSS OMS MSC HLR VLR BSC BTS IMSI MSISDN SIM MS IMEI TMSI LAI SMS SMSC Υποσύστημα του GSM το οποίο είναι υπεύθυνο τις λειτουργικές χρήσεις ενός δικτύου κινητής τηλεφωνίας όπως είναι η δρομολόγηση, η χρεώσεις κτλ Υποσύστημα του GSM που επιτρέπει τη συντήρηση και τη διαχείριση όλων των υπομονάδων ενός δικτύου κινητής τηλεφωνίας Το μεταγωγικό κέντρο που επιτελεί μεγάλο πλήθος ενεργειών του NSS υποσυστήματος Βάση δεδομένων για την διατήρηση των πληροφοριών οικείων χρηστών Βάση δεδομένων για την διατήρηση των πληροφοριών επισκεπτών χρηστών. Ο ελεγκτής των σταθμών βάσης. Ελέγχει πλήθος κεραιών Ο σταθμός μετάδοσης της πληροφορίας, η αλλιώς η κεραία Ο μοναδικός αριθμός για την αναγνώριση κινητού από το δίκτυο κινητής τηλεφωνίας Ο αριθμός κλήσης που χρησιμοποιεί κάθε συνδρομητής συνδεδεμένος στο δίκτυο Υπομονάδα αναγνώρισης ενός συνδρομητή στο δίκτυο κινητής τηλεφωνίας Κινητός σταθμός, κινητό τηλέφωνο Μοναδικό αναγνωριστικό του κινητού τηλεφώνου Προσωρινή ταυτότητα του χρήστη στο δίκτυο κινητής τηλεφωνίας που χρησιμοποιείται για λόγους ασφαλείας Αναγνώριση της περιοχής θέσης του χρήστη Υπηρεσία γραπτών μηνυμάτων Κέντρο της υπηρεσίας γραπτών μηνυμάτων 12

ΠΡΟΛΟΓΟΣ SM-MO SM-MT Ο αποστολέας ενός μηνύματος κινητής τηλεφωνίας Ο παραλήπτης ενός μηνύματος κινητής τηλεφωνίας PDU Μονάδα περιγραφής του πρωτοκόλλου που μεταδίδονται τα γραπτά μηνύματα κινητής τηλεφωνίας 13

ΣΥΝΤΟΜΟΓΡΑΦΙΕΣ API GSM BSS NSS OMS MSC HLR VLR BSC BTS IMSI MSISDN SIM MS IMEI TMSI LAI SMS SMSC SM-MO SM-MT PDU SQL RDMS Application Programming Interface Global System for Mobile Communications Basic Station Subsystem Network and Switching Subsystem Operation and Maintenance Subsystem Mobile Switching Center Home Location Register Visitor Location Register Basic Station Controller Basic Trasmition Station International Mobile Subscriber Identifier Mobile Subscriber Integrated Services Digital Network Number Subscriber Identity Module Mobile Station International Mobile Equipment Identity Temporary Mobile Subscriber Identifier Location Area Identity Short Message Service Short Message Service Center Short Message-Mobile Originating Short Message-Mobile Terminating Protocol Description Unit Structured Query Language Relational Database Management System 14

Κεφάλαιο 1 1 ΕΙΣΑΓΩΓΗ Η υπηρεσία γραπτών μηνυμάτων είναι μια από τις πρωταρχικές υπηρεσίες που προσφέρθηκε στους χρήστες της κινητής τηλεφωνίας. Για την υπηρεσία αυτή, αν και έχει μακροχρόνια διαδρομή, δεν έχει κατασκευαστεί κάποιο ειδικό λογισμικό που θα εξυπηρετεί τους χρήστες στο διαχωρισμό της χαώδους πληροφορίας των γραπτών μηνυμάτων. Θα δούμε στη συνέχεια τα προβλήματα που έχουμε να αντιμετωπίσουμε για την κατασκευή τέτοιου είδους λογισμικού και πως μπορούμε σήμερα να δώσουμε λύσεις που επιταχύνουν σημαντικά την ανεύρεση τα επιθυμητής πληροφορίας. 1.1 Προσδιορισμός του προβλήματος Οι συσκευές κινητής τηλεφωνίας από την αρχή της εμφάνισής τους διέθεταν προεγκατεστημένο λειτουργικό σύστημα με εφαρμογές, τις οποίες ο χρήστης χρησιμοποιούσε για την διαχείριση της πληροφορίας που διέθετε στο κινητό του, δίχως όμως να υπάρχει η δυνατότητα παράκαμψης ή φόρτωσης διαφορετικού λογισμικού που θα προσεγγίζει τις απαιτήσεις του εκάστοτε χρήστη. Σήμερα, τα δεδομένα στις συσκευές κινητής τηλεφωνίας έχουν αλλάξει άρδην με νέα πρωτοποριακά λειτουργικά συστήματα που παρέχουν τη δυνατότητα στους χρήστες να χρησιμοποιούν νέες εφαρμογές, εξυπηρετώντας τη διαχείριση οποιασδήποτε μορφή πληροφορίας. Βίντεο, εικόνες, έγγραφα και κείμενο που βρίσκονται αποθηκευμένα στο κινητό ενός χρήστη μπορούν πλέον να δομηθούν κατάλληλα και να γίνει ανάκτηση της πληροφορίας χρησιμοποιώντας αντίστοιχο λογισμικό. Τα μηνύματα που διαχειρίζονται οι διάφορες εφαρμογές, έχουν εμπλουτιστεί με επιπλέον υλικό όπως είναι βίντεο, ήχος και φωτογραφίες. Τα μηνύματα αυτά, γνωστά ως multimedia sms ή αλλιώς mms, περιέχουν σύνθετο υλικό στο οποίο για να γίνει κατάλληλο φιλτράρισμα και αξιοποίηση των δεδομένων θα πρέπει να ακολουθηθούν διαφορετικές τεχνικές εξόρυξης της πληροφορίας αντίστοιχες με αυτές χρησιμοποιούνται σε δυαδικά δεδομένα. Οι χρήστες όμως ως επί το πλείστον δεν χρησιμοποιούν τα mms, καθώς οι μορφές επικοινωνίας τους στηρίζονται σε δυο βασικές επικοινωνιακές αρχές. Η πρώτη αρχή βασίζεται στην οπτικοακουστική επαφή, όπου οι χρήστες προτιμούν να καλέσουν έναν άλλο χρήστη μέσω κλήσης ή βιντεοκλήσης και να συζητήσουν άμεσα οποιοδήποτε θέμα. Η δεύτερη αρχή επικοινωνίας βασίζεται στην έκφραση των χρηστών μέσω του γραπτού λόγου. 15

Ο γραπτός λόγος είναι μια από τις σημαντικότερες μορφές έκφρασης του ανθρώπου και αποτελεί την κύρια πρόκληση σε όλα τα σύγχρονα υπολογιστικά συστήματα. Διαρκώς αναπτύσσονται τεχνικές που επισταμένως προσπαθούν να αναλύσουν και να μιμηθούν τον σύνθετο τρόπο γραφής του ανθρώπου, ώστε να γίνεται όσο το δυνατόν καλύτερη ανάλυση και αξιοποίηση των δεδομένων γραφής των ανθρώπων. Κυρίως λοιπόν θα ασχοληθούμε με το κείμενο το οποίο ανταλλάσουν οι χρήστες μέσω των γραπτών μηνυμάτων και πως μπορούμε να αξιοποιήσουμε τα δεδομένα αυτά ώστε να κάνουμε την αναζήτηση πιο αποδοτική. 1.2 Αντικείμενο διπλωματικής Αρχικά θα μελετήσουμε κάποιες έννοιες σχετικές με το δίκτυο της κινητής τηλεφωνίας και θα ασχοληθούμε πιο συγκεκριμένα με τα υποσυστήματα που μεταφέρουν τα γραπτά μηνύματα κινητής τηλεφωνίας. Κύριο μέλημά μας όμως αποτελεί η ανάλυση του τρόπου αποθήκευσης των μηνυμάτων σε συσκευές κινητής τηλεφωνίας και πιο συγκεκριμένα σε συσκευές που έχουν εγκατεστημένο το λειτουργικό σύστημα Android. Θα μελετήσουμε το λειτουργικό σύστημα Android και θα δούμε ποια είναι τα σημαντικότερα πλεονεκτήματά του, ώστε ένας χρήστης να επιλέξει το συγκεκριμένο λειτουργικό σύστημα για τη συσκευή του, αλλά και γιατί αποτελεί πλέον κυρίαρχο λειτουργικό σύστημα για την ανάπτυξη μικροεφαρμογών από τους προγραμματιστές. Ως προς το λειτουργικό Android θα αναλύσουμε εκτενέστερα τον τρόπο αποθήκευσης των γραπτών μηνυμάτων και θα δούμε πως το Android δομεί το κείμενο των μηνυμάτων και τις διάφορες πληροφορίες που παρέχονται από το ίδιο το δίκτυο της κινητής τηλεφωνίας. Θα αναλύσουμε τα σύντομα γραπτά μηνύματα κινητής τηλεφωνίας, γνωστά και ως sms, που είναι η υπηρεσία σύμφωνα με την οποία οι χρήστες ανταλλάσσουν αποκλειστικά κείμενο διατυπώνοντας συναισθήματα, σκέψεις, καθώς και σημαντικές πληροφορίες. Οι πληροφορίες αυτές αποθηκεύονται στη συσκευή κάθε χρήστη και κάθε συσκευή αποτελεί το μοναδικό οικιακό αποθηκευτικό μέσο σε όλο το δίκτυο της κινητής τηλεφωνίας. Οι πληροφορίες που αποθηκεύεται στα sms, αποτελεί σύνθετο πρόβλημα ανάλυσης, καθώς απαρτίζεται από ελλιπής προτάσεις, μεικτό περιεχόμενο ελληνικών και greeklish γραμμάτων, καθώς και συντομογραφίες που ακολουθούν ένα προσωπικό τρόπο γραφής κάποιων λέξεων δίχως να ακολουθείται κάποια νόρμα σύνταξης, ορθογραφίας και συλλαβισμού στο κείμενο. Θα δούμε πως μπορούμε με κατάλληλο φιλτράρισμα της πληροφορίας των γραπτών μηνυμάτων να προσεγγίσουμε όσο το δυνατόν περισσότερο την ανθρώπινη λογική γραφής. Θα αναλύσουμε τα φιλτραρισμένα δεδομένα και θα περιγράψουμε πως μπορεί και ο ίδιος ο χρήστης να συμβάλλει σημαντικά στο φιλτράρισμα αυτό αποκλείοντας λέξεις της αρεσκείας του από τα σύνολο των δεδομένων που θα χρησιμοποιηθούν για ευρετηριοποίηση και πως αυτό επηρεάζει σημαντικά την απόδοση της αναζήτησης. Θα επικεντρωθούμε στις πιο διαδεδομένες δομές δεδομένων που χρησιμοποιούνται για ευρετηριοποίηση και θα αναλύσουμε ποια είναι η κατάλληλότερη δομή που πρέπει να χρησιμοποιηθεί στην περίπτωσή μας και πως αυτή τροποποιήθηκε για το σκοπό της μελέτης μας. Θα αναλύσουμε πως η 16

μετατροπή αυτή αποτέλεσε σημαντική εξέλιξη στην απόδοση του ευρετηρίου μας και πως η αναζήτηση με τη χρήση του ανεστραμμένου ευρετηρίου που αναπτύξαμε απογειώνει την ταχύτητα ανάκτησης των δεδομένων των μηνυμάτων. Τέλος, παραθέτουμε την εφαρμογή που αναπτύξαμε με τη χρήση της γλώσσας προγραμματισμού Java για το λειτουργικό σύστημα Android που ενσωματώνει το ανεστραμμένο ευρετήριο που αναπτύξαμε και βοηθά στην αναζήτηση οποιασδήποτε πληροφορίας από τα γραπτά μηνύματα είτε απευθείας από τη βάση των μηνυμάτων του Android είτε χρησιμοποιώντας το ευρετήριο. 1.3 Συνεισφορά διπλωματικής Η έμπρακτη εφαρμογή οποιασδήποτε ερευνητικής μελέτης βοηθά πάρα πολύ στην περεταίρω θεωρητική ανάλυση των όσων μελετάμε. Μέσα από διάφορα πειράματα αποδεικνύεται η ορθότητα της μελέτης μας και θεμελιώνεται ολοένα και περισσότερο η οποιαδήποτε θεώρηση είχε γίνει εξ αρχής. Για τη μελέτη μας στην ευρετηριοποίηση των κειμένων των γραπτών μηνυμάτων της κινητής τηλεφωνίας αναπτύξαμε μια εφαρμογή στο Android χρησιμοποιώντας το προγραμματιστικό περιβάλλον Eclipse με τη γλώσσα προγραμματισμού Java. Η εφαρμογή αυτή μας βοήθησε να αποδείξουμε εμπράκτως την αξία της ευρετηριοποίησης των μηνυμάτων κινητής τηλεφωνίας με τη μορφή της δομής του ανεστραμμένου ευρετηρίου που αναπτύξαμε. Μέσα από τα διάφορα πειράματα που εκτελέσαμε αποδεικνύεται η αξία χρήσης της δομής του ανεστραμμένου ευρετηρίου ως προς τη χρονική αναζήτηση οποιονδήποτε λέξεων μέσα από αυτό. Εφαρμογές τέτοιου είδους αναζήτησης μηνυμάτων στις συσκευές Android υπάρχουν ήδη διαθέσιμες στο Android Market της Google με αρκετές λειτουργίες που παρέχουν πλήρη ευελιξία ως την αναζήτηση κυρίως μιας λέξης. Ως προς την αναζήτηση των λέξεων όμως δεν παρέχεται η δυνατότητα χρήση λογικών τελεστών για τις λέξεις που αναζητάμε, ενώ η αναζήτηση ολόκληρης φράσης είναι ένα επιπλέον μοναδικό χαρακτηριστικό της εφαρμογής μας. Η συνεισφορά της διπλωματικής εκτός από την υλοποίηση μιας εφαρμογής που ενσωματώνει περεταίρω λειτουργίες και έχει πολύ καλύτερη χρονική ανταπόκριση ως προς την αναζήτηση λέξεων στα γραπτά μηνύματα κινητού τηλεφώνου Android, έχει και έναν ακόμα σκοπό. Αποδεικνύει εμπράκτως την αξία χρήσης του διαφοροποιημένου ανεστραμμένου ευρετηρίου που προτείνεται και που μπορεί να χρησιμοποιηθεί σε ήδη ευρετηριοποιημένα δεδομένα που αποθηκεύονται σε βάσεις δεδομένων τύπου SQL. Η περίπτωση του ευρετηρίου αυτού έχει ουσιώδη αξία όταν μας ενδιαφέρει η χρονική ανταπόκριση στην αναζήτηση δεδομένων από μικρά σύνολα κειμένων, όπως είναι τα γραπτά μηνύματα. Η αξιόλογη συμπεριφορά της αναζήτησης του ευρετηρίου μας για μικρά σύνολα δεδομένων έχει μεγάλη αξία χρήσης σε πολλές μικροεφαρμογές που η χρονική αναζήτηση οποιασδήποτε λέξης είναι πολύτιμη. Επιπρόσθετα για προβλήματα που μπορεί η αναζήτηση δεδομένων να ανατεθεί σε μικρότερα σύνολα δεδομένων χρησιμοποιώντας τεχνικές διαίρει και βασίλευε η χρήση ενός τέτοιου ευρετηρίου μπορεί επίσης να θεωρηθεί εξίσου σημαντική. 17

1.4 Δομή της εργασίας Στο κεφάλαιο αυτό κάναμε έγινε μια εισαγωγή για τον προσδιορισμό του προβλήματος που πρέπει να επιλύσουμε, τους τρόπους αντιμετώπισης και τη συνεισφορά της μελέτης μας πάνω στην ευρετηριοποίηση των δεδομένων των γραπτών μηνυμάτων κινητής τηλεφωνίας σε συσκευές Android. Στο 2 ο κεφάλαιο θα αναλύσουμε τα δομικά μέρη του δικτύου της κινητής τηλεφωνίας και θα αναλύσουμε πως από τους σταθμούς βάσης τα δεδομένα φτάνουν στα κινητά τηλέφωνα των χρηστών. Θα επισημάνουμε τα δεδομένα που μεταφέρονται από το δίκτυο και πως αυτά αποθηκεύονται στο ίδιο το κινητό. Στο 3 ο κεφάλαιο θα αναλύσουμε τις διαθέσιμες δομές δεδομένων που υπάρχουν για τη ευρετηριοποίηση των δεδομένων και θα εξετάσουμε τις περιπτώσεις χρήσης κάθε μιας από αυτές. Τέλος θα γίνει μια αποτίμηση των δομών αυτών και θα αξιολογήσουμε γιατί επιλέξαμε τη δομή του ανεστραμμένου ευρετηρίου για τη δεικτοδότηση των μηνυμάτων κινητής τηλεφωνίας. Στο κεφάλαιο 4 επεξηγούμε τη μορφή με την οποία αποθηκεύονται τα μηνύματα στο λειτουργικό σύστημα Android. Στο κεφάλαιο αυτό αναλύουμε ποια είναι η αρχική μορφή του ανεστραμμένου ευρετηρίου που υλοποιήσαμε, ποια είναι τα τεχνικά προβλήματα που συναντήσαμε και πως τροποποιήσαμε τη μορφή του ευρετηρίου μας ώστε να ανταποκρίνεται ταχύτητα στις διάφορες αναζητήσεις λέξεων από αυτό. Στο 5 ο κεφάλαιο γίνεται μια εκτενέστερη ανάλυση πάνω στο λειτουργικό σύστημα Android, στα πλεονεκτήματά του, στην αρχιτεκτονική του και επεξηγούμε τους λόγους για τους οποίους επιλέξαμε στο λειτουργικό της Google για την ανάπτυξη της εφαρμογής μας για την υλοποίηση του ανεστραμμένου ευρετηρίου. Τέλος παραθέτουμε τις εικόνες από την εφαρμογή που υλοποιήσαμε μέσω του Android SDK για την πειραματική μελέτη των αποτελεσμάτων του ανεστραμμένου ευρετηρίου μας. Το 6 ο κεφάλαιο αφιερώνεται στην ανάλυση των πειραμάτων που υλοποιήθηκαν για τα σύνολα δεδομένων των μηνυμάτων που ευρετηριοποιήσαμε. Παρατίθενται όλα τα σύνολα που επιλέξαμε για 1000,2000 και 3000 μηνύματα με τις αντίστοιχες αναζητήσεις που έγιναν καθώς και τα διαγράμματα που εμφανίζουν την υπεροχή της χρήσης του ανεστραμμένου ευρετηρίου σε ήδη ευρετηριοποιημένα δεδομένα βάσεων τύπου SQL. Στο τέλος του κεφαλαίου εξάγονται και τα συμπεράσματά μας ως προς την χρονική αναζήτηση λέξεων από το ευρετήριο και ως προς τη χωρική έκταση του ευρετηρίου. Το 7 ο κεφάλαιο αποτελεί τον επίλογο της εργασίας μας με τα γενικά συμπεράσματα που εξάγουμε και την αποτίμηση του έργου μας, καθώς και κάποιες μελλοντικές κατευθύνσεις σχετικά με την δουλειά που έγινε. 18

Κεφάλαιο 2 2 ΔΟΜΙΚΑ ΣΤΟΙΧΕΙΑ ΤΟΥ ΔΙΚΤΥΟΥ ΤΗΣ ΚΙΝΗΤΗΣ ΤΗΛΕΦΩΝΙΑΣ Στο κεφάλαιο αυτό θα αναφέρουμε επιγραμματικά τις βασικές δομικές μονάδες του δικτύου κινητής τηλεφωνίας. Σκοπός μας είναι ο αναγνώστης να έρθει σε επαφή με έννοιες του δικτύου της κινητής τηλεφωνίας, να κατανοήσει τον τρόπο λειτουργίας και μετάδοσης της πληροφορίας, ενώ θα επικεντρωθούμε ιδιαίτερα στην υπηρεσία των σύντομων γραπτών μηνυμάτων που αποτελούν και το αντικείμενο της μελέτης μας. 2.1 Εισαγωγή Το πιο γνωστό σύστημα στις ψηφιακές επικοινωνίες είναι το GSM. H αρμόδια ομάδα που συντάχθηκε προκειμένου να υλοποιήσει το πρότυπο αυτό ονομαζόταν Groupe Special Mobile που αργότερα δημιούργησε το πρότυπο Global System for Mobile Communications, ή αλλιώς GSM, το οποίο και αποτέλεσε το ευρωπαϊκό πρότυπο για την κινητή τηλεφωνία του οργανισμού ETSI - European Telecommunications Standards Institute. Το σύστημα αυτό αποτελούσε τη δεύτερη γενιά συστημάτων κινητής τηλεφωνίας, ενώ σήμερα βρισκόμαστε ήδη στην τέταρτη γενιά. Τα δομικά στοιχεία της δεύτερης γενιάς, παρόλα αυτά, δεν έχουν αλλάξει, απλώς έχουν εξελιχθεί ή έχουν προστεθεί νέα στοιχεία που παρέχουν νεότερες τεχνολογίες στους χρήστες, όπως είναι η χρήση βιντεοκλήσης, η αύξηση του εύρους ζώνης και της ταχύτητας στα δεδομένα των χρηστών και πολλές υπηρεσίες ψυχαγωγίας. Παρακάτω θα αναλύσουμε τα δομικά στοιχεία του δικτύου GSM που αποτελεί την κυρίαρχη δομή της κινητής τηλεφωνίας. 2.2 Τα υποσυστήματα του δικτύου κινητής τηλεφωνίας Σκοπός της ερευνητικής ομάδας που υλοποίησε το GSM ήταν η δημιουργία ενός συστήματος το οποίο θα επέτρεπε την πρόσβαση των χρηστών σε ολόκληρη την Ευρώπη μέσω περιαγωγής, ενώ θα παρείχε την πρόσβαση σε υπηρεσίες φωνής για ISDN και PSTN συστήματα. Το δίκτυο GSM αποτελείται από τα παρακάτω υποσυστήματα (εικόνα 1): 1. Το υποσύστημα Σταθμού βάσης (Basic Station Subsystem BSS). 2. Το υποσύστημα Δικτύου και Μεταγωγής (Network and Switching Subsystem NSS). 19

3. Το υποσύστημα Λειτουργίας και υποστήριξης (Operation and Maintenance Subsystem OMS). Εικόνα 1. Η αρχιτεκτονική του δικτύου GSM Παρακάτω θα δούμε το κάθε υποσύστημα του δικτύου GSM, τα επιμέρους δομικά στοιχεία που αποτελείται, τι επιτελεί το κάθε ένα από αυτά και πως μεταβιβάζεται η πληροφορία μέσω του δικτύου. Θα ξεκινήσουμε από το υψηλότερο επίπεδο που είναι το υποσύστημα λειτουργίας και υποστήριξης, θα συνεχίσουμε με την περιγραφή του μεσαίου επιπέδου που είναι το υποσύστημα δικτύου και μεταγωγής για να φτάσουμε στο κατώτερο επίπεδο που είναι το υποσύστημα σταθμού βάσης που εμπεριέχει τα κινητά τηλέφωνα. Θα εστιάσουμε περισσότερο στα κινητά τηλέφωνα όπου αποθηκεύεται η επιθυμητή πληροφορία των γραπτών μηνυμάτων. 2.3 Το υποσύστημα λειτουργίας και υποστήριξης Το υποσύστημα αυτό παρέχει τις απαραίτητες λειτουργίες για τη σωστή λειτουργία και το χειρισμό του δικτύου. Μερικές από τις λειτουργίες που επιτελεί είναι οι εξής: Χειρισμός των τερματικών, συνδρομητών, χρεώσεων, της δικτυακής κίνησης και των στατιστικών στοιχείων. Διαχείριση της ασφάλειας στο δίκτυο Εργασίες συντήρησης. Για την επίτευξη των λειτουργιών αυτών το υποσύστημα αυτό χρησιμοποιεί κάποια ξεχωριστά κέντρα με επισταμένες λειτουργίες. Επιγραμματικά αναφέρουμε ότι τα κέντρα αυτά είναι: Κέντρο Εποπτείας και Συντήρησης (Operation and Maintenance Center OMC). Κέντρο Ελέγχου και πιστοποίησης (Authentication Center AuC). Κέντρο Αναγνώρισης και Καταχώρησης εξοπλισμού (Equipment Identify Register EIR). 20

2.4 Το υποσύστημα δικτύου και μεταγωγής Το υποσύστημα δικτύου και μεταγωγής (NSS) αποτελεί το κύριο υποσύστημα του δικτύου GSM καθώς διασφαλίζει την διασύνδεση του δικτύου της κινητής τηλεφωνίας με άλλα δίκτυα, όπως είναι τα PSTN και ISDN, και την παροχή των ψηφιακών υπηρεσιών στο δίκτυο. Εμπεριέχει λειτουργίες όπως είναι ο εντοπισμός θέσης συνδρομητών παγκοσμίως, ενώ εξυπηρετεί την παροχή των αντίστοιχων χρεώσεων τιμολόγησης και περιαγωγής από οποιοδήποτε πάροχο σε οποιαδήποτε χώρα κι αν έχει συνδεθεί το κινητό τηλέφωνο. Ας δούμε τα επιμέρους συστήματα που χρησιμοποιούνται από το υποσύστημα δικτύου και μεταγωγής για την υλοποίηση των λειτουργιών του. 2.4.1 Επιλεκτικό μεταγωγικό κέντρο (MSC) Ένα από τα σημαντικότερα συστήματα στην κινητή τηλεφωνία είναι το επιλεκτικό μεταγωγικό κέντρο. Το MSC ελέγχει όλη την τηλεπικοινωνιακή κίνηση στο δίκτυο και είναι υπεύθυνο να καθιστά τις συνδέσεις με τους σταθμούς βάσης, με άλλα MSC καθώς και με σταθερά δίκτυα τηλεφωνίας. Για την επίτευξη του ρόλου αυτού το MSC χρησιμοποιεί το σύστημα σηματοδοσίας No 7 (ή αλλιώς SS7) το οποίο είναι από τα πιο διαδεδομένα πρωτόκολλα τηλεφωνικής σηματοδοσίας που χρησιμοποιούνται για την εγκαθίδρυση και τον τερματισμό τηλεφωνικών κλήσεων. Το SS7 χρησιμοποιείται επίσης για τη μεταγλώττιση και τη μεταφερσιμότητα αριθμών, τους μηχανισμούς προκαθορισμένης χρέωσης, τις υπηρεσίες γραπτών μηνυμάτων και ένα τεράστιο πλήθος τηλεπικοινωνιακών υπηρεσιών της αγοράς. 2.4.2 Οικεία βάση δεδομένων (HLR) Η πιο σημαντικότερη βάση δεδομένων του δικτύου GSM είναι η οικεία βάση δεδομένων HLR. Η HLR περιέχει λεπτομέρειες για κάθε συνδρομητή κινητής τηλεφωνίας που έχει εξουσιοδότηση να χρησιμοποιεί το GSM δίκτυο. Η HLR αποθηκεύει πληροφορίες για κάθε κάρτα SIM που δίνεται από τους παρόχους κινητής τηλεφωνίας. Κάθε κάρτα SIM περιέχει ένα μοναδικό διεθνή αναγνωριστικό αριθμό IMSI (International Mobile Subscriber Identity) το οποίο αποτελεί και πρωτεύον κλειδί για την HLR. Ένα ακόμα σημαντικό πεδίο που αποθηκεύεται στην HLR είναι το MSISDN το οποίο είναι ο αριθμός τηλεφώνου που αντιστοιχεί σε κάθε συνδρομητή και άρα σε κάθε IMSI που αποθηκεύεται στην HLR. Ο αριθμός αυτός χρησιμοποιείται για την αποστολή και λήψη κλήσεων και γραπτών μηνυμάτων, αλλά δίνεται η δυνατότητα η κάρτα SIM να έχει δευτερεύοντα MSISDN αριθμό που να σχετίζεται με δεδομένα fax 21

και δεδομένων. Τα δεδομένα στην HLR βάση διατηρούνται έως ότου ο συνδρομητής παραμείνει εγγεγραμμένος μέσα στο δίκτυο. 2.4.3 Βάση δεδομένων επισκεπτών (VLR) Η βάση δεδομένων επισκεπτών είναι μια βάση που αποθηκεύει τις πληροφορίες που σχετίζονται με τους σταθμούς βάσης, οι οποίοι εξυπηρετούνται τη δεδομένη χρονική στιγμή από ένα MSC. Κάθε σταθμός βάσης στο δίκτυο εξυπηρετείται από ακριβώς μια VLR, γι αυτό και ένας συνδρομητής δεν μπορεί να είναι παρών σε παραπάνω από μια βάσεις VLR. Τα δεδομένα που αποθηκεύονται στην VLR, είτε προέρχονται από την HLR, είτε έχουν συλλεχθεί από το ίδιο το κινητό του χρήστη. Κάθε VLR είναι υπεύθυνη για τη γεωγραφική περιοχή ενός ή περισσοτέρων MSC. Οι κινητοί σταθμοί κατά την περιαγωγή τους εγγράφονται στην αντίστοιχη VLR του οικείου ή του επισκεπτόμενου δικτύου. Έτσι, κάθε φορά που εισέρχεται το κινητό σε μια νέα θέση εντοπισμού, ξεκινά και πάλι η διαδικασία εγγραφής στην αντίστοιχη VLR. 2.5 Το υποσύστημα σταθμού βάσης Το υποσύστημα σταθμού βάσης είναι υπεύθυνο για το διαχωρισμό των πρωτοκόλλων επικοινωνίας μεταξύ των κινητών σταθμών (Mobile Station MS) και των σταθμών βάσης (Base Transceiver Station BTS). Το υποσύστημα εκτελεί όλες τις απαραίτητες λειτουργίες για να διατηρηθούν οι ραδιοσυνδέσεις με τον κινητό σταθμό, τις επεξεργασίες των σημάτων καθώς και την κωδικοποίηση και αποκωδικοποίηση των σημάτων. 2.5.1 Ελεγκτής σταθμών βάσης (BSC) Ο ελεγκτής σταθμών βάσης παρέχει ουσιαστικά την ευφυΐα που υπάρχει πίσω από τους σταθμούς βάσης. Τυπικά, κάθε BSC έχει υπό την εποπτεία του δεκάδες ή και εκατοντάδες BTS. Ο BSC αναλαμβάνει την ανάθεση των ραδιοκαναλιών μετάδοσης, συγκεντρώνει τις μετρήσεις από τους κινητούς σταθμούς και είναι υπεύθυνος για την ομαλή μετάβαση των κινητών από BTS σε κάποιο άλλο BTS, δίχως να γίνει αντιληπτό από τον χρήστη. Επίσης, διεκπεραιώνει υπηρεσίες τηλεειδοποίησης από και προς τον κινητό σταθμό και πολυπλέκει τα ραδιοκανάλια πάνω στις συνδέσεις του σταθερού δικτύου μέσω της διεπαφής Α (A-Interface). 2.5.2 Σταθμός βάσης (BTS) O Σταθμός Βάσης (Base Transceiver Station) είναι ένα από τα βασικότερα συστήματα του GSM ο οποίος εκτελεί τις λειτουργίες της ασύρματης διασύνδεσης του χρήστη με το δίκτυο. Ο χρήστης μπορεί να συνδεθεί με το δίκτυο με συσκευές, όπως ένα κινητό τηλέφωνο ή ένας υπολογιστής που να μπορεί να συνδεθεί σε 3G ίντερνετ. 22

Πρακτικά, o Σταθμός Βάσης συνδέει το Κινητό Σταθμό (Mobile Station) με το Βασικό Σταθμό Ελέγχου (Base Station Controler). Ο Σταθμός Βάσης περιλαμβάνει τα κατάλληλα περιφερειακά (κεραίες, ενισχυτές ισχύος) και το κατάλληλο λογισμικό για να το πετύχει. Ο τρόπος που λειτουργεί είναι με τη χρήση ενός ή περισσοτέρων ζευγών συχνοτήτων, όπου η μία συχνότητα χρησιμοποιείται για την μεταφορά δεδομένων από το χρήστη στο δίκτυο (uplink) και η άλλη για την μεταφορά από το σταθμό στο χρήστη (downlink). 2.5.3 Κινητός σταθμός (MS) Το πιο σημαντικό εργαλείο που έχει ο χρήστης στη διάθεσή του και που θα μελετήσουμε εκτενώς είναι το κινητό τηλέφωνο ή αλλιώς κινητός σταθμός. Ο κινητός σταθμός αποτελεί το φυσικό μέσο με το οποίο οποιοσδήποτε συνδρομητής συνδέεται στο δίκτυο. Ο κινητός σταθμός αποτελείται από 2 τμήματα, τον ηλεκτρονικό εξοπλισμό και την κάρτα πιστοποίησης συνδρομητή SIM. Κάθε κινητό αναγνωρίζεται σε διεθνές επίπεδο από ένα διεθνές αριθμό πιστοποίησης κινητού εξοπλισμού (International Mobile Equipment Identity - IMEI). Ο αριθμός αυτός είναι μοναδικός για κάθε κινητό τηλέφωνο και χρησιμεύει στο να αναγνωρίζονται υπαρκτές συσκευές από το δίκτυο. Με τον τρόπο αυτό, σε μια κλεμμένη συσκευή μπορεί να απαγορευτεί η πρόσβαση στο δίκτυο και να προστατευθεί ο αγοραστής της. Στην κάρτα SIM, τώρα, είναι περασμένος ένας άλλος μοναδικός αριθμός ο IMSI και χρησιμεύει για τη μοναδική αναγνώριση μιας κάρτας στο δίκτυο. Ο κινητός σταθμός αποθηκεύει δυναμικά δεδομένα για όσο χρόνο είναι συνδεδεμένος στο δίκτυο GSM, όπως είναι το κλειδί κρυπτογράφησης, απόκρυψης και της πληροφορίας που σχετίζεται με τη θέση του κινητού. Η πληροφορία αυτή συντίθενται από τον προσωρινό αριθμό πιστοποίησης κινητού συνδρομητή (Temporary Mobile Subscriber Identity TMSI) και αριθμό αναγνώρισης και εντοπισμού (Location Area Identity LAI). Η κάρτα SIM περιέχει όμως και άλλα στοιχεία όπως είναι ο τύπος της κάρτας, ο κωδικός αναγνώρισης PIN (Personal Identification Number) και ο κωδικός ξεκλειδώματος PUK (PIN Unlock Key), ο τηλεφωνικός κατάλογος, τα μηνύματα, καθώς και μια λίστα υπηρεσιών που είναι εγγεγραμμένος ο χρήστης. Οι κάρτες SIM, λοιπόν, αποτελούν μικρές βάσεις δεδομένων στις οποίες διατηρούνται όλα τα απαραίτητα στοιχεία που έχουν σχέση με τη χρήση του δικτύου από το χρήστη. 2.6 Τα γραπτά μηνύματα SMS είναι υπηρεσία της κινητής τηλεφωνίας, με την οποία ο χρήστης έχει τη δυνατότητα να αποστείλει ή να παραλάβει σύντομο γραπτό μήνυμα από άλλους χρήστες, στην οθόνη του κινητού του τηλεφώνου. Η λέξη είναι ακρωνύμιο των αγγλικών λέξεων Short Message Service που σημαίνει Υπηρεσία Σύντομου Μηνύματος και καθιερώθηκε για πρώτη φορά από τις εταιρείες κινητής τηλεφωνίας το 1992. Ένα απλό γραπτό μήνυμα ορίζεται στους 160 αλφαριθμητικούς χαρακτήρες, συμπεριλαμβανομένων και των κενών διαστημάτων. 23

Πέραν του ορίου αυτού, ένα μήνυμα ανάλογα με τις δυνατότητες του κινητού τηλεφώνου μπορεί να συνεχιστεί σε περισσότερους χαρακτήρες υπολογιζόμενο στη χρέωση του ως δεύτερο μήνυμα κ.ο.κ. Έχει υπολογιστεί πως το 74% των χρηστών κινητού τηλεφώνου παγκοσμίως χρησιμοποιούν αυτή την υπηρεσία, κάτι που μεταφράζεται σε περίπου 2,4 δισεκατομμύρια SMS ημερησίως. Στις περισσότερες περιπτώσεις χρησιμοποιείται αυτή η μέθοδος επικοινωνίας διότι το κόστος αποστολής ενός γραπτού μηνύματος είναι κατά πολύ μικρότερο από την απευθείας συνομιλία. 2.7 Η υπηρεσία σύντομων γραπτών μηνυμάτων Αναπτύχθηκε ως μέρος της φάσης 1 του GSM για τον καθορισμό του ETSI οργανισμού. Ο καθορισμός της υπηρεσίας αυτής αναπτύχθηκε από τον ETSI οργανισμό, αλλά πλέον έχει μεταφερθεί στον σκοπό των ενεργειών του 3GPP οργανισμού. Η υπηρεσία αυτή επιτρέπει σε κινητούς σταθμούς και άλλες συνδεδεμένες με το δίκτυο συσκευές να ανταλλάσουν σύντομα γραπτά μηνύματα. Αυτά τα μηνύματα μπορούν να αποσταλούν από GSM/UMTS κινητές συσκευές προς ένα μεγάλο πλήθος άλλων συσκευών όπως εξυπηρετητές διαδικτύου, τηλέγραφους, κτλ. Η υπηρεσία είναι πλέον πολύ ώριμη τεχνολογία και υποστηρίζεται από το 100% των GSM συσκευών και των περισσότερων GSM δικτύων παγκόσμια. Ας δούμε λοιπόν πως λειτουργεί η αποστολή ενός μηνύματος στο δίκτυο. 2.7.1 Οι οντότητες των σύντομων γραπτών μηνυμάτων Όλα τα στοιχεία εκείνα που συμμετέχουν στην αποστολή και λήψη γραπτών μηνυμάτων ονομάζονται οντότητες σύντομων γραπτών μηνυμάτων (Short Message Entity SME). Μια τέτοια οντότητα μπορεί να είναι μια εφαρμογή στο κινητό ή μια συσκευή στο δίκτυο που εξυπηρετεί αυτό το σκοπό. Μια SME μπορεί να είναι ένας εξυπηρετητής που κάνει τη διασύνδεση με το SMS κέντρο απευθείας ή μέσω κάποιας πύλης. Ένα τέτοιο SME είναι επίσης γνωστό ως εξωτερικό SME (External Short Message Entity). Τυπικά, ένα ESME αναπαριστά ένα WAP διακομιστή διαμεσολάβησης, μια πύλη E-mail ή κάποιο διακομιστή φωνητικού ταχυδρομείου. 2.7.2 Το κέντρο της υπηρεσίας Όταν ένας χρήστης στέλνει ένα γραπτό μήνυμα σε κάποιον άλλο χρήστη, το μήνυμα αποθηκεύεται στο κέντρο σύντομων γραπτών μηνυμάτων (Short Message Service Center - SMSC), το οποίο με τη σειρά του παραδίδει το μήνυμα στον παραλήπτη όταν είναι διαθέσιμος. Αυτή είναι η επιλογή της αποθήκευσης και προώθησης. Το κέντρο είναι υπεύθυνο για το χειρισμό των λειτουργιών SMS του ασύρματου δικτύου επιτελώντας τις παρακάτω ενέργειες: Όταν ένα γραπτό μήνυμα (SMS) στέλνεται από κάποιο κινητό θα φτάσει πρώτα στο κέντρο γραπτών μηνυμάτων. Το κέντρο ύστερα προωθεί το μήνυμα στον προορισμό του. 24

Ο κύριος σκοπός του SMSC είναι να καθορίσει τη διαδρομή των μηνυμάτων SMS και να κανονίσει τη διαδικασία με ομαλό τρόπο. Εάν ο παραλήπτης δεν είναι διαθέσιμος, για παράδειγμα έχει το κινητό του κλειστό, το SMSC θα πρέπει να αποθηκεύσει το SMS. Θα προωθήσει το μήνυμα όταν ο παραλήπτης θα είναι διαθέσιμος. Το SMSC συνδέεται με τα υπόλοιπα συστατικά στοιχεία του GSM όπως φαίνεται στην παρακάτω εικόνα Εικόνα 2. Βασική αρχιτεκτονική του δικτύου για την εφαρμογή ενός SMS 2.8 Βασικά γνωρίσματα των γραπτών μηνυμάτων Τα γραπτά μηνύματα ενσωματώνουν ένα αριθμό από βασικά γνωρίσματα. Αυτά περιλαμβάνουν τη διαβίβαση των μηνυμάτων, την παράδοσή τους, τη διαχείριση των αναφορών κατάστασης, τις αιτήσεις των εντολών εκτέλεσης, τα μονοπάτια απάντησης κτλ. Θα αναλύσουμε στη συνέχεια τα γνωρίσματα αυτά. 2.8.1 Αποστολή και παράδοση μηνύματος Τα μηνύματα που ξεκινούν από κινητά τηλέφωνα είναι μηνύματα τα οποία αποστέλλονται από τα κινητά σε ένα κέντρο SMSC. Τα μηνύματα αυτά στη συνέχεια διευθυνσιοδοτούνται προς άλλα SME δηλαδή άλλα κινητά ή άλλους διακομιστές. Ένα SME μπορεί να καθορίσει την περίοδο ύπαρξης ύστερα από την οποία το μήνυμα θεωρείται ότι δεν είναι υπαρκτό. Ένα μήνυμα το οποίο θεωρείται ότι πλέον δεν είναι υπαρκτό μπορεί να διαγραφεί από ένα κέντρο SMSC κατά τη μεταφορά του. (Short Messsage Mobile Originating, SM-MO). Τα μηνύματα που τερματίζουν σε κάποιο κινητό τηλέφωνο είναι μηνύματα τα οποία αποστέλλονται από ένα κέντρο SMSC σε κάποιο κινητό (Short Message Mobile Terminating, SM-MT). Τα SM-MO και SM-MT μηνύματα μπορούν να παραδοθούν ακόμα και εάν κάποια κλήση ή αποστολή δεδομένων βρίσκεται σε εξέλιξη. Τα μηνύματα μπορούν να σταλούν ή ληφθούν από GSM κανάλια σηματοδοσίας, αλλά επίσης και πάνω από GPRS κανάλια. Στο GSM, τα μηνύματα αποστέλλονται πάνω στα κανάλια SDCCH ή SACCH, ενώ στο GPRS, τα σύντομα γραπτά μηνύματα αποστέλλονται πάνω στα PDTCH κανάλια. Η επιλογή του μέσου μετάδοσης ενός μηνύματος συνήθως γίνεται σύμφωνα με την προκαθορισμένη πολιτική του δικτύου. 25

2.8.2 Αναφορά παράδοσης Είναι δυνατό ένα SME στοιχείο του δικτύου, που αποτελεί τον οδηγό για την καθοδήγηση ενός μηνύματος, να αιτηθεί μια αναφορά της κατάστασης που θα παραχθεί κατά την παράδοση του σύντομου μηνύματος στον αποστολέα SME. Η αναφορά κατάστασης δείχνει στον οδηγό κατά πόσο το σύντομο μήνυμα έχει παραδοθεί επιτυχώς στον αποστολέα SME. 2.8.3 Η μορφή ενός σύντομου γραπτού μηνύματος Η αποστολή ενός σύντομου γραπτού μηνύματος μεταξύ του SMSC και του κινητού πραγματοποιείται το τμήμα των εφαρμογών κινητού (Mobile Application Part MAP) στο πρωτόκολλο SS7. Τα μηνύματα αποστέλλονται με λειτουργίες MAP μεταξύ του SM-MO και SM-MT μηνυμάτων, των οποίων το διαθέσιμο μήκος φορτίου που μπορούν να δεχθούν είναι περιορίζεται από τα περιεχόμενα του πρωτοκόλλου σε 140 οκτάδες ή 140 * 8 bits = 1120 bits πληροφορίας. Τα μηνύματα μπορούν να κωδικοποιηθούν χρησιμοποιώντας ένα μεγάλο εύρος αλφάβητων, όπως είναι το GSM 7-bit αλφάβητο, το 8-bit και το 16-bit UCS2 αλφάβητο. Ανάλογα με το αλφάβητο που έχει επιλέξει ο χρήστης στη συσκευή του, αυτό οδηγεί σε διαφορετικό μέγιστο αριθμό χαρακτήρων για κάθε αλφάβητο. Έτσι έχουμε 160 χαρακτήρες για το GSM 7-bit, 140 χαρακτήρες για το 8-bit και 70 χαρακτήρες για το 16-bit UCS2. Το GSM 7-bit είναι υποχρεωτικό για όλες τις συσκευές, αλλά χαρακτήρες σε γλώσσες όπως είναι τα Αραβικά, Κινέζικα, Κορεάτικα, Γιαπωνέζικα ή γλώσσες του Κυριλλικού Αλφαβήτου (Ρώσικα, Σέρβικα, Βουλγάρικα κτλ) θα πρέπει να κωδικοποιηθούν με βάση το 16-bit UCS2. 2.8.4 Αξιοπιστία ενός μηνύματος Παρά τα αφοσιωμένα συστήματα γραπτών μηνυμάτων όπως είναι το SMSC, η παράδοση ενός μηνύματος δεν είναι εγγυημένη και πολλές υλοποιήσεις δεν παρέχουν μηχανισμούς κατά τους οποίους ο αποστολέας μπορεί να αναγνωρίσει εάν ένα SMS μήνυμα έχει παραδοθεί μέσα σε κάποιο χρονικό διάστημα. Τα γραπτά μηνύματα γενικά χειρίζονται από το δίκτυο ως ήσσονος σημασίας δικτυακή κίνηση σε σχέση με τη φωνή και πολλές μελέτες έχουν δείξει ότι ένα ποσοστό 1%-5% των μηνυμάτων χάνονται ακόμα και με κανονικές συνθήκες λειτουργίας του δικτύου, ενώ άλλα μπορεί να μην παραδίδονται ακόμα και όταν έχει περάσει αρκετός χρόνος από την λήξη της αναφορά τους. 2.8.5 Διάρκεια ζωής Ο οδηγός ενός μηνύματος έχει τη δυνατότητα να υποδείξει μια περίοδο ύπαρξης του μηνύματος. Αυτή η περίοδος ύπαρξης καθορίζει την προθεσμία ύστερα από την οποία το περιεχόμενο του μηνύματος μπορεί να απορριφθεί. Εάν ένα 26

μήνυμα δεν έχει παραδοθεί στον αποστολέα του πριν από την ημερομηνία λήξης, τότε το δίκτυο συνήθως απορρίπτει το μήνυμα δίχως περεταίρω προσπάθειες παράδοσης στον παραλήπτη. Τα χρονικά όρια ύπαρξης ενός μηνύματος μπορούν να τεθούν και από τον αποστολέα σύμφωνα με τις ανάγκες του. Παρόλα αυτά το ίδιο το δίκτυο έχει και αυτό ένα χρονικό όριο ύπαρξης το οποίο μπαίνει σε όλα τα μηνύματα ανεξάρτητα εάν ο αποστολέας έχει δώσει κάποια τιμή σε αυτό (συνήθως είναι 1 εβδομάδα). 2.8.6 Πληροφορία του σύντομου γραπτού μηνύματος Στο περιεχόμενο του SMS, ο όρος υποβολή αναφέρεται στη μεταφορά ενός τμήματος του μηνύματος από τον οδηγό SME στο κέντρο εξυπηρετητή SMSC όπως φαίνεται στην παρακάτω εικόνα. Εικόνα 3. Η υποβολή μηνύματος Από τη στιγμή που το τμήμα του μηνύματος έχει παραληφθεί από το κέντρο SMSC, ο οδηγός SMSC θέτει ερωτήματα στην HLR προκειμένου να δρομολογήσει το τμήμα του μηνύματος στην οντότητα παραλήπτη SME. Ο τρόπος με τον οποίο γίνεται η ανταλλαγή των μηνυμάτων ακολουθεί ένα πρότυπο που προέρχεται από τη μονάδα περιγραφής του πρωτοκόλλου αυτού PDU (Protocol Description Unti). Στο παρακάτω σχήμα εμφανίζονται οι πληροφορίες που περιέχει ένα απεσταλμένο γραπτό μήνυμα μέσα από την PDU διάταξη. Εικόνα 4. Ο τύπος PDU διάταξης για αποστολή SMS 27

Από την αποστολή της διάταξης αυτής με κάθε SMS μήνυμα θα δούμε στο κεφάλαιο 4 ότι μόνο μερικά από αυτά τα στοιχεία αποθηκεύονται στη συσκευή και τα υπόλοιπα αποτελούν περισσότερο στοιχεία του δικτύου που εξυπηρετούν την αποστολή-δρομολόγηση των μηνυμάτων. Θα εξετάσουμε στη συνέχεια πως μπορούμε να δομήσουμε κατάλληλα τέτοιου είδους πληροφορία, με ποιους τρόπους μπορεί να γίνει αυτό και ποιος αποτελεί την ιδανική λύση ώστε να έχουμε τη βέλτιστη απόδοση κατά την αναζήτηση επιθυμητής πληροφορίας. 28

Κεφάλαιο 3 3 ΔΙΑΧΕΙΡΙΣΗ ΤΗΣ ΠΛΗΡΟΦΟΡΙΑΣ ΜΗΝΥΜΑΤΩΝ ΚΙΝΗΤΗΣ ΤΗΛΕΦΩΝΙΑΣ Στο κεφάλαιο αυτό θα μελετήσουμε γενικούς τρόπους διαχείρισης της πληροφορίας και δομές δεδομένων που υπάρχουν διαθέσιμες για μεγάλο όγκο δεδομένων. Θα αναλύσουμε ποια είναι η βέλτιστη λύση και πως μπορεί να αξιοποιηθεί στη διαχείριση της πληροφορίας γραπτών μηνυμάτων. 3.1 Γενικά Η διαχείριση της πληροφορίας αποτελεί έναν από τους σημαντικότερους τομείς στην πληροφορική. Νέες τεχνικές αναπτύσσονται διαρκώς για την ανάκτηση σημαντικής πληροφορίας από αποθήκες δεδομένων με μεγάλο όγκο πληροφοριών. Οι τεχνικές που αναπτύσσονται ενσωματώνονται σε συστήματα ανάκτησης πληροφορίας, σκοπός των οποίων είναι η προβολή μόνο κατάλληλων εγγραφών που έχουν συναφές περιεχόμενο με αυτό που αναζητά ο χρήστης. Σκοπός μας στην ενότητα αυτή είναι να μελετήσουμε και να επιλέξουμε κατάλληλες δομές δεδομένων που μπορούν να χρησιμοποιηθούν για την οργάνωση και τη διαχείριση των μηνυμάτων της κινητής τηλεφωνίας προκειμένου στη συνέχεια να καταστήσουμε τα περιεχόμενά τους διαθέσιμα προς αναζήτηση. Θα μελετήσουμε τρεις δομές δεδομένων, που χρησιμοποιούνται στα πιο σύγχρονα συστήματα ανάκτησης πληροφορίας, και που αποτελούν τον πυρήνα για την ταχύτατη αποκόμιση της πληροφορίας από αναζητήσεις των χρηστών σε αποθήκες δεδομένων. Οι δομές αυτές είναι τα δένδρα καταλήξεων (suffix trees), τα αρχεία υπογραφών (signature files) και τα ανεστραμμένα αρχεία (inverted files). Οι δομές αυτές είναι οι πιο διαδεδομένες δομές δεδομένων που χρησιμοποιούνται για την ευρετηριοποίηση κειμένων και χρησιμοποιούνται ευρέως από τις περισσότερες μηχανές αναζήτησης. Οι κυριότεροι λόγοι χρήσης των δομών αυτών είναι η απόδοσή τους στην αναζήτηση λέξεων και η συμπίεση των δεδομένων που αποθηκεύονται κατά την ευρετηριοποίηση όπως θα δούμε και στη συνέχεια, όπου θα αναλύσουμε εκτενέστερα τις δομές δεδομένων. 3.2 Δομές δεδομένων και διαχείριση πληροφορίας Στην πληροφορική, η έννοια της δομής δεδομένων αναφέρεται στους διαφορετικούς δυνατούς τρόπους οργάνωσης και αποθήκευσης δεδομένων μέσα σε έναν υπολογιστή, ώστε τα δεδομένα αυτά να μπορούν να χρησιμοποιηθούν αποδοτικά. Για παράδειγμα ένα σύνολο από δεδομένα μπορεί να αποθηκευτεί σε δομή πίνακα, στοίβας, συνδεδεμένης λίστας, σωρού, ουράς και ούτω καθ εξής. 29

Δομές δεδομένων χρησιμοποιούνται σχεδόν σε κάθε πρόγραμμα ή σύστημα λογισμικού. Παρέχουν έναν τρόπο αποδοτικής διαχείρισης τεράστιου όγκου δεδομένων, όπως μεγάλες βάσεις δεδομένων και υπηρεσίες ευρετηρίου στο διαδίκτυο. Οι αποδοτικές δομές δεδομένων θεωρούνται συχνά ιδιαίτερα σημαντικές στη δημιουργία ενός αποδοτικού αλγορίθμου, σε τέτοιο βαθμό, ώστε κάποιες μέθοδοι σχεδίασης και γλώσσες προγραμματισμού δίνουν έμφαση σε δομές δεδομένων, παρά σε αλγορίθμους, ως το βασικό κριτήριο σχεδίασης λογισμικού. Ένα σύνολο από στοιχεία δεδομένων αποτελεί δομή όταν υπάρχουν καθορισμένες σχέσεις μεταξύ των στοιχείων. Μια δομή δεδομένων ορίζεται ως η διαδικασία εισαγωγής και απομάκρυνσης στοιχείων με τρόπο ώστε όλη η δομή να μην αλλοιώνεται. Κάθε δομή δεδομένων έχει ως αφηρημένη έννοια συγκεκριμένο ορισμό, δηλαδή διαδικασία εισαγωγής/απομάκρυνσης στοιχείων, αλλά μπορεί να υλοποιείται σε έναν Η/Υ με διαφορετικούς τρόπους. Οι βασικές λειτουργίες ή πράξεις επί των δομών δεδομένων είναι οι εξής: Προσπέλαση: Αναζήτηση ενός κόμβου της δομής για να εξεταστεί το περιεχόμενό του. Εισαγωγή: Πρόσθεση ενός κόμβου στη δομή. Διαγραφή: Το αντίθετο της εισαγωγής. Αναζήτηση: Αναζήτηση ενός κόμβου της δομής με κλειδί την τιμή ενός πεδίου του.. Ταξινόμηση: Οι κόμβοι της δομής ταξινομούνται με βάση τις τιμές σε ένα η περισσότερα πεδία, σε αύξουσα σειρά ή φθίνουσα σειρά. Αντιγραφή: Αντιγραφή όλων των κόμβων της δομής. Συγχώνευση: 2 ή περισσότερες δομές συγχωνεύονται σε μία ενιαία δομή. 3.3 Ευρετηριοποίηση των δεδομένων Ο κυριότερος λόγος για την αποθήκευση ενός ευρετηρίου είναι η βελτιστοποίηση της ταχύτητας και της απόδοσης στην εύρεση σχετικών κειμένων από ένα ερώτημα αναζήτησης. Δίχως το ευρετήριο, οι μηχανές αναζήτησης θα έπρεπε να αναζητήσουν κάθε κείμενο συνδεδεμένο με αυτές γεγονός που απαιτεί αξιοσημείωτο χρόνο και υπολογιστική ισχύ. Για παράδειγμα, ενώ ένα ευρετήριο 10.000 κειμένων μπορεί να ερωτηθεί μέσα σε millisecond, μια γραμμική αναζήτηση κάθε λέξης στο ίδιο σύνολο κειμένων μπορεί να πάρει αρκετές ώρες. Ο πρόσθετος αποθηκευτικός που απαιτείται για την αποθήκευση του ευρετηρίου, όπως και η χρονική αύξηση που λαμβάνεται υπόψη για μια ανανέωση του ευρετηρίου ανταλλάσσονται με το χρόνο που σώζουμε κατά την ανάκτηση της πληροφορίας. Οι αρχιτεκτονικές σχεδίασης μηχανών αναζήτησης συμπεριλαμβάνουν τους παρακάτω σχεδιαστικούς κανόνες: Παράγοντες συνένωσης. Θα πρέπει να γίνεται προσεκτική εισαγωγή στο ευρετήριο, διότι δεν θα πρέπει να επηρεάζεται η αναζήτηση άλλων χρηστών. Τεχνικές αποθήκευσης. Θα πρέπει να γίνεται κατάλληλο φιλτράρισμα ή συμπίεση της πληροφορίας. Μέγεθος ευρετηρίου. Θα πρέπει να λαμβάνεται υπόψη ο απαιτούμενος χώρος ώστε να υποστηρίζεται το ευρετήριο. Χρονική αναζήτηση. Πόσο γρήγορα μπορεί μια λέξη να βρεθεί στο ανεστραμμένο ευρετήριο. Ο χρόνος εύρεσης μια εγγραφής σε μια δομή δεδομένων, συγκρινόμενο με το χρόνο που απαιτείται για την ανανέωση ή την αφαίρεση της εγγραφής είναι κυρίαρχο θέμα στην επιστήμη των υπολογιστών. 30