Ανάπτυξη, σχεδιασμός και υλοποίηση δικτυακών συστημάτων διαχείρισης πόρων και παροχής υπηρεσιών
Authors: Χρυσούλας Χρήστος 
Published: August 2021

Τα δίκτυα έχουν ζήσει μια αλματώδη ανάπτυξη τα τελευταία χρόνια. Ανάπτυξη που αφορά όχι μόνο το μέγεθος τους αλλά και τη λειτουργικότητά τους. Οι κόμβοι ενός δικτύου μπορούν πλέον να επιτελέσουν και λειτουργίες βασισμένες σε πολιτικές όπως το proxy-caching, το encryption, το tunneling και το firewalling. Στις μέρες μας έχει αρχίσει να εμφανίζετε η δυνατότητα προγραμματισμού στους κόμβους ενός δικτύου, επιτρέποντας έτσι τον πειραματισμό με ποιο πολύπλοκες υπηρεσίες. Η ανάγκη για πιο γρήγορη υλοποίηση νέων υπηρεσιών στα δίκτυα χρησιμοποιώντας τις ήδη υπάρχουσες πολύπλοκες δυνατότητες θέτει μια νέα, μεγάλη, πρόκληση στα ήδη υπάρχοντα εργαλεία ελέγχου των δικτύων. Η πολυπλοκότητα των υπηρεσιών, ο αριθμός των κόμβων του δικτύου, ο προγραμματισμός τέτοιων κόμβων, και η ταχύτητα απαιτούν μια πρωτοποριακή αντιμετώπιση του αντικειμένου που καλείται υλοποίηση υπηρεσιών (Service Deployment). Η παρούσα διδακτορική διατριβή παρουσιάζει μια αυτοματοποιημένη προσέγγιση σχετική με την υλοποίηση υπηρεσιών που μπορεί με ευκολία να εφαρμοστεί και σε μεγάλα ετερογενή δίκτυα. Η διατριβή επικεντρώνεται σε δυο κυρίως θέματα. Πρώτα παρουσιάζουμε ένα πλαίσιο που συνδέει τα επίπεδα του δικτύου και των κόμβων με ιεραρχικά κατανεμημένους υπολογισμούς. Και δεύτερον παρουσιάζουμε μια μέθοδο που χρησιμοποιήσαμε για να επιτύχουμε το ταίριασμα μεταξύ των προγραμματιστικών μοντέλων που χρησιμοποιούνται για τις υπηρεσίες και αυτών που χρησιμοποιούνται σαν δικτυακοί κόμβοι. Με τη βοήθεια των δυο παραπάνω προοπτικών οδηγούμαστε σε μια ολοκληρωμένη άποψη για το πώς πρέπει σε βάθος να αναλυθεί η έννοια της υλοποίησης υπηρεσιών (Service Deployment). Όταν νέες υπηρεσίες εγκαθιστούνται, το αυτοματοποιημένο σύστημα της υλοποίησης υπηρεσιών επιτρέπει στις κατανεμημένα και πολύπλοκα χαρακτηριστικά των δικτυακών στοιχείων να εντοπιστούν γρηγορότερα και να χρησιμοποιηθούν πιο αποδοτικά, σε σχέση πάντα με ένα παραδοσιακό κεντρικοποιήμενο σύστημα. Αυτό έχει σαν αποτέλεσμα την ταχύτερη εγκατάσταση και την βέλτιστη χρησιμοποίηση των διαθέσιμων υπηρεσιών. Η δομή της παρούσας διδακτορικής διατριβής είναι η ακόλουθη: Στο Κεφάλαιο 1 τονίζονται οι στόχοι της διδακτορικής διατριβής ενώ αναφέρονται περιληπτικά οι βασικές συνεισφορές της. Ο βασικός στόχος του Κεφαλαίου 2 είναι να εισάγει τον αναγνώστη στις αρχές της επιστήμης της XML. Αναφέρονται όλα τα βασικά στοιχεία που είναι απαραίτητα στο να διασαφηνιστούν έννοιες και αρχές σχετικά με την XML και τη χρήση της. Διευκρινίζονται θέματα όπως διαλειτουργικότητά της και η ανεξαρτησία που προσφέρει. Γίνεται μια σε βάθος περιγραφή από τα οφέλη που θα αποκομίσουμε υιοθετώντας μια τεχνολογία όπως η XML. Οφέλη που θα μας βοηθήσουν να αναπτύξουμε και να δημιουργήσουμε μια δυναμική αρχιτεκτονική που να ναι σε θέση να καλύψει τις ανάγκες μας. Στο Κεφάλαιο 3 παρουσιάζονται η μελέτη και εν συνεχεία ο σχεδιασμός του κατανεμημένου δρομολογητή (Distributed Router). Γίνεται μια παρουσίαση της προτεινόμενης λύσης. Παρουσιάζεται με έναν απλό και περιεκτικό τρόπο το FlexiNET κομμάτι του οποίου είναι ο κατανεμημένος δρομολογητής. Αναφερόμαστε στον διαχωρισμό του επιπέδου forwarding από το επίπεδο του control. Στη συνέχεια γίνεται μια λεπτομερής περιγραφή της προτεινόμενης αρχιτεκτονικής. Παρουσιάζεται μια λεπτομερής περιγραφή των επιμέρους επιπέδων του κατανεμημένου δρομολογητή. Παρουσιάζονται οι απαιτήσεις και προδιαγραφές των επιμέρους επιπέδων και γίνεται μια αντιστοίχηση με την αρχιτεκτονική του FlexiNET. Στο Κεφάλαιο 4 παρουσιάζεται μελέτη, ο σχεδιασμός και η υλοποίηση ενός ολοκληρωμένου συστήματος διαχείρισης πόρων και υλοποίησης υπηρεσιών. Αρχικά γίνεται μια παρουσίαση σχετικών εργασιών πάνω στο αντικείμενο που πραγματευόμαστε. Εντοπίζονται οι όποιες αδυναμίες και τονίζεται πως μπορούμε με τη βοήθεια του προτεινόμενου συστήματος να τις ξεπεράσουμε. Παρουσιάζουμε τις υπηρεσίες ιστού πάνω στις οποίες είναι δομημένο το σύστημά μας. Στη συνέχεια προχωράμε σε μια εις βάθος περιγραφή του συστήματος με τη χρήση εικόνων και σχεδιαγραμμάτων. Παρουσιάζουμε τον τρόπο με τον οποίο συνδέεται η προτεινόμενη αρχιτεκτονική με την αρχιτεκτονική του κατανεμημένου δρομολογητή. Χρησιμοποιούμε έναν απλό matchmaking αλγόριθμο για το τελικό τεστάρισμα του συστήματός μας. Και τέλος παρουσιάζουμε τον τρόπο με τον οποίο υλοποιείται μια υπηρεσία και καταγράφουμε τα πειραματικά αποτελέσματα. Έτσι γίνεται αναφορά στις παραμέτρους υλοποίησης του συστήματος και πως αυτές επηρεάζουν το συνολικό σύστημα. Στο Κεφάλαιο 5 παρουσιάζεται λεπτομερώς η διαδικασία μέσα από την οποία οδηγούμαστε από μια XML περιγραφή του κατανεμημένου μας δρομολογητή σε μια σημασιολογική περιγραφή αυτού. Αρχικά, παρουσιάζουμε με λεπτομέρεια τι είναι ο σημασιολογικός ιστός και πως δομείται. Στη συνέχεια παρουσιάζουμε τα πρότυπα και μοντέλα που χρησιμοποιεί και καταλήγουμε σε μια σημασιολογική περιγραφή του κατανεμημένου δρομολογητή. Μια βασισμένη σε οντολογίες περιγραφή του. Στο Κεφάλαιο 6 προτείνεται αρχιτεκτονική για δίκτυα σημασιολογικού Grid (Semantic Grid). Αρχικά δίνεται μια περιγραφή της τεχνολογίας Grid. Παρουσιάζονται οι στόχοι της και τα κυρία χαρακτηριστικά της συνοδευόμενα από μια γενική αρχιτεκτονική. Στη συνέχεια περνάμε στην προτεινόμενη αρχιτεκτονική. Με τη βοήθεια σχεδιαγραμμάτων και εικόνων δίνεται μια όσο το δυνατόν λεπτομερής περιγραφή του συστήματος και πως ενσωματώνει την σημασιολογική περιγραφή του κατανεμημένου δρομολογητή που παρουσιάσαμε στο προηγούμενο κεφάλαιο (Κεφάλαιο 5). Κλείνοντας το κεφάλαιο κάνουμε μια σύγκριση των αποτελεσμάτων που είχαμε πετύχει με το αρχικό μας σύστημα (Κεφάλαιο 4) σε σχέση με την υλοποίηση με τη βοήθεια του σημασιολογικού Grid. Τα αποτελέσματα και ο σχολιασμός της σύγκρισης παρουσιάζονται στο τέλος του κεφαλαίου. Συμπεράσματα και μελλοντικές προεκτάσεις της εργασίας αυτής παρουσιάζονται στο Κεφάλαιο 7