Περίληψη: | Η ραγδαία ανάπτυξη του διαδικτύου και των τεχνολογιών που το υποστηρίζουν έχει οδηγήσει στην ραγδαία αύξηση των εφαρμογών διαμοίρασης δεδομένων. Ταυτόχρονα, οι ανάγκες για ταχεία μεταφορά δεδομένων γίνονται ολοένα και μεγαλύτερες. Μία από τις πιο απαιτητικές κατηγορίες εφαρμογών που διανέμουν πληροφορία είναι οι εφαρμογές πολλαπλής αποστολής δεδομένων. Σε αυτές τις εφαρμογές, ένας αποστολέας θέλει να στείλει δεδομένα σε μία ομάδα παραληπτών, οι οποίοι στη γενική περίπτωση είναι γεωγραφικά κατανεμημένοι. Είναι προφανές ότι ο αποστολέας δεν μπορεί να στείλει τα δεδομένα σε όλους τους παραλήπτες ταυτόχρονα, γιατί το έυρος ζώνης που διαθέτει είναι περιορισμένο, ενώ οι παραλήπτες μπορεί να είναι χιλιάδες. Έτσι, υιοθετείται συνήθως η τακτική δημιουργίας ενός δέντρου διανομής, όπου ο αρχικός κόμβος στέλνει σε μερικούς μόνο παραλήπτες, οι οπόιοι προωθούν το μήνυμα στα παιδιά τους κ.ο.κ. Το δέντρο διανομής συνήθως κατασκευάζεται πάνω από ένα δομημένο δίκτυο ομοτίμων (p2p networks) και πιο συγκεκριμένα πάνω από ένα δίκτυο βασισμένο σε Κατανεμημένους Πίνακες Κατακερματισμού (Distributed Hash Tables - DHT). Αυτή η τεχνική, αν και λύνει το πρόβλημα της πολλαπλής αποστολής, αντιμετωπίζει όμως κάποια προβλήματα. Πιο συγκεκριμένα, το δέντρο διανομής είναι στατικό, δηλαδή δεν μπορεί να μεταβληθούν οι συνδέσεις μεταξύ των κόμβων αν αλλάξουν οι συνθήκες του υφιστάμενου δικτύου. Ακόμα, δεν υπάρχει κάποιος έλεγχος για τις δυνατότητες των κόμβων που βρίσκονται στα υψηλότερα επίπεδα του δέντρου. Αυτό έχει σαν αποτέλεσμα το δέντρο να χάνει μεγάλο μέρος από την αποδοτικότητά του. Στα πλαίσια της εργασίας αυτής, μελετάμε τη δημιουργία ενός δυναμικού δέντρου διανομής, το οποίο μπορεί να αναπροσαρμόζεται στις εκάστοτε συνθήκες, αυξάνοντας έτσι σημαντικά τη συνολική αποδοτικότητα. Πιο συγκεκριμένα, η βασική μετρική είναι το εύρος ζώνης που παρατηρούν οι χρήστες κατα τη διάρκεια μιας αποστολής δεδομένων. Παρουσιάζουμε διάφορα στατιστικά στοιχεία που δείχνουν τη δραστική βελτίωση που επιτυγχάνουμε με τη χρήση του συγκεκριμένου αλγορίθμου. Ακόμα, μελετάμε τη δημιουργία ενός δέντρου διανομής που θα εκμεταλλεύεται τη δομή των DHT δίκτύων και θα μπορεί να διανέμει την πληροφορία αξιόπιστα (με χρήση erasure coding τεχνικών) ενώ θα εγγυάται ένα λογαριθμικό μέσο αριθμό βημάτων για την αποστολή των δεδομένων. Ταυτόχρονα, το σύστημα προσπαθεί να ισοκατανείμει το φόρτο προώθησης των μηνυμάτων σε όλους τους κόμβους του δικτύου. Και τα δύο συστήματα έχουν υλοποιηθέι και αξιολογηθεί χρησιμοποιώντας το DHT σύστημα Pastry και την υλοποίησή του σε Java (FreePastry).
|