Περίληψη : | Ο όρος το Διαδίκτυο των Πραγμάτων (Internet of Things, IoT) σημαίνει τη σύνδεση οποιασδήποτε συσκευής στο Internet, αποτελώντας ουσιαστικά ένα όραμα για τη διασύνδεση όλων των "αντικειμένων" στον κόσμο. Η έννοια "Things" (αντικείμενα) αναφέρεται σε μία ευρεία ποικιλία συσκευών εντελώς διαφορετικών μεταξύ τους, όπως κάμερες, κλιματιστικά, φώτα, συστήματα ασφαλείας, smartwatches ακόμα και αυτοκίνητα των οποίων οι περίπλοκοι αισθητήρες εντοπίζουν αντικείμενα στην πορεία τους. Η Πληροφοριοκεντρική Δικτύωση (Information-Centric Networking, ICN) είναι μια πολλά υποσχόμενη προσέγγιση για το IoT, καθώς η πρόσβαση στο περιεχόμενο στο ICN βασίζεται σε ονόματα δεδομένων και όχι σε διευθύνσεις IP. Η ονομαστική δικτύωση δεδομένων (Named data networking, NDN) είναι μια αρχιτεκτονική που μπορεί να ονομάσει μεμονωμένες τιμές δεδομένων, όπως όλες οι τιμές θερμοκρασίας σε ένα κτίριο, καθώς και ομάδες τιμών, χρησιμοποιώντας ένα σχήμα ιεραρχικής ονομασίας. Ωστόσο, δεν μπορεί να υποστηρίζει πολλές ιεραρχίες ονομάτων με οικονομικό τρόπο, επομένως τα ερωτήματα για τα δεδομένα περιορίζονται να ακολουθούν μία συγκεκριμένη σειρά ομαδοποίησης.Η δρομολόγηση με βάση λέξεις-κλειδιά (keywords) για το IoT (KIOT) είναι ένα πρωτόκολλο που βασίζεται στην προσέγγιση ICN, και συγκεκριμένα στην αρχιτεκτονική NDN, η οποία βασίζεται στην αποστολή μηνύματος Ενδιαφέροντος (interest) για ονόματα δεδομένων και τη λήψη των αντίστοιχων μηνυμάτων Δεδομένων (data). Το σκεπτικό του KIOT είναι να χρησιμοποιεί σύνολα λέξεων-κλειδιών (keywords) τόσο για τις τιμές των ετικετών (gr, aueb, Antoniadou, floor2, room5, temperature), όσο και για να εκφράζει αιτήματα για δεδομένα, π.χ. (gr, aueb, temperature). Ο στόχος είναι ένα ερώτημα με συγκεκριμένες λέξεις-κλειδιά να εντοπίζει και να επιστρέφει όλες τις τιμές δεδομένων που χαρακτηρίζονται από ένα υπερσύνολο των κλειδιών αυτών. Η παρούσα εργασία ξεκινά από μία υπάρχουσα υλοποίηση του συστήματος KIOT σε Java και Python, και έχει ως στόχο την αναλυτική τεκμηρίωση της υλοποίησης, την αντιμετώπιση προβλημάτων της υπάρχουσας υλοποίησης, και της προετοιμασίας του συστήματος για περαιτέρω εξέλιξη από μεταγενέστερους μελετητές. The term Internet of Things (IoT) means connecting any device to the Internet, a vision for the interconnection of all "things" in the world. The term "Things" refers to a wide variety of devices quite different from each other, such as cameras, air conditioners, lights, security systems, smartwatches, and even cars whose complex sensors detect objects along the way.Information-Centric Networking (ICN) is a promising approach to IoT, as access to ICN content is based on data names rather than IP addresses. Named data networking (NDN) is an architecture that can name individual data values, such as the temperature values in a building, as well as groups of values, using a hierarchical name scheme. However, it cannot support many name hierarchies in a cost-effective way, so data queries are limited to a specific batch sequence.Keyword-based routing (KIOT) is a protocol based on the ICN approach, namely the NDN architecture, which is based on sending an interest message in order to receive the corresponding data messages. KIOT's reasoning is to use keyword sets for both tag values (gr, aueb, Antoniadou, floor2, room5, temperature) and to express data requests, e.g. (gr, aueb, temperature). The target is a query with specific keywords to locate and return all data values that are characterized by a superset of these keys.This work starts from an existing implementation of the KIOT system to Java and Python, and aims to analyze the implementation, troubleshoot the existing implementation, and prepare the system for further development by subsequent scholars.
|
---|