Συστήματα Διαδικτύου SCRIBE: A large-scale and decentralized application-level multicast infrastructure Miguel Castro, Peter Druschel, Anne-Marie Kermarrec.

Slides:



Advertisements
Παρόμοιες παρουσιάσεις
ΑΠΟΤΙΜΗΣΗ ΑΠΟΔΟΣΗΣ ΔΙΚΤΥΩΝ ΠΟΥ ΧΡΗΣΙΜΟΠΟΙΟΥΝ ΑΞΙΟΠΙΣΤΑ ΠΡΩΤΟΚΟΛΛΑ ΜΕΤΑΦΟΡΑΣ ΚΑΙ ΑΞΙΟΠΙΣΤΑ ΠΡΩΤΟΚΟΛΛΑ ΣΥΝΔΕΣΗΣ Ιωάννης Κόμνιος Μεταπτυχιακή Διατριβή Τμήμα.
Advertisements

A Scalable Content- Addressable Network Sylvia Ratnasamy, Paul Francis, Mark Handley, Richard Karp, Scott Shenker Proceedings of ACM SIGCOMM ’01 Sections.
Chord: A scalable Peer-to-Peer Lookup Service for Internet Applications Παρουσίαση: Αθανασόπουλος, Αλεξάκης, Δεβελέγκα, Πεχλιβάνη, Φωτιάδου, Φωτόπουλος.
ΕΙΣΑΓΩΓΗ ΣΤΑ ΔΙΚΤΥΑ ΕΠΙΚΟΙΝΩΝΙΑΣ
A Peer-to-peer Framework for Caching Range Queries O. D. Sahin A. Gupta D. Agrawal A. El Abbadi Παρουσίαση: Καραγιάννης Τάσος, Κρεμμυδάς Νίκος, Μαργαρίτη.
EIΣΑΓΩΓΗ ΣΤΑ ΤΗΛΕΠΙΚΟΙΝΩΝΙΑΚΑ ΔΙΚΤΥΑ
ΠΑΡΑΔΟΣΕΙΣ ΜΑΘΗΜΑΤΟΣ «ΔΙΚΤΥΑ ΕΛΕΓΧΟΥ» ΟΚΤΩΒΡΙΟΣ 2004.
Συνάφεια Κρυφής Μνήμης σε Επεκτάσιμα Μηχανήματα. Συστήματα με Κοινή ή Κατανεμημένη Μνήμη  Σύστημα μοιραζόμενης μνήμης  Σύστημα κατανεμημένης μνήμης.
Λογισμικο συστηματοσ Κεφάλαιο 4ο
Διαχείριση Δικτύων Ευφυή Δίκτυα Άσκηση 1: Χρήση βασικών εργαλείων για συλλογή πληροφοριών για τη διαμόρφωση και την κατάσταση λειτουργίας του δικτύου.
Web Services Υπηρεσίες διαδικτύου
A Scalable Content- Addressable Network Sylvia Ratnasamy, Paul Francis, Mark Handley, Richard Karp, Scott Shenker Proceedings of ACM SIGCOMM ’01 ΠΑΡΟΥΣΙΑΣΗ:
Βάσεις Δεδομένων (ΚΒΔ)
1/23 DHTStrings: Συστήματα Δημοσιεύσεων/Συνδρομών σε DHT Δίκτυα με Υποστήριξη για Συμβολοσειρές Διανομή Περιεχομένου στο Διαδίκτυο Τμήμα ΜΗΥΠ Παν/μιο Πατρών.
Συστήματα Διαδικτύου To Δίκτυο Pastry A. Rowstron and P. Druschel
Κοντινότεροι Κοινοί Πρόγονοι α βγ θ δεζ η π ν ι κλμ ρσ τ κκπ(λ,ι)=α, κκπ(τ,σ)=ν, κκπ(λ,π)=η κκπ(π,σ)=γ, κκπ(ξ,ο)=κ ξο κκπ(ι,ξ)=β, κκπ(τ,θ)=θ, κκπ(ο,μ)=α.
Προσεγγιστικοί Αλγόριθμοι
ΠΡΩΤΟΚΟΛΛΑ ΕΠΙΚΟΙΝΩΝΙΑΣ Παράγραφος 1.7. ΠΡΩΤΟΚΟΛΛΑ ΕΠΙΚΟΙΝΩΝΙΑΣ Είσαι εκεί; Εδώ είμαι Είσαι έτοιμος να λάβεις ένα μήνυμα; Είμαι έτοιμος Πάρε το πρώτο.
Τεχνικές Μεταγωγής Παράγραφος 1.5.
1 Content Addressable Network Λίλλης Κώστας Καλλιμάνης Νικόλαος Αγάθος Σπυρίδων – Δημήτριος Σταθοπούλου Ευγενία Γεωργούλας Κώστας.
Δίκτυα Ι Βπ - 2ο ΕΠΑΛ ΝΕΑΣ ΣΜΥΡΝΗΣ 2011.
7.7 Πρωτόκολλο ARP Δίκτυα Υπολογιστών ΙΙ.
A Balanced Tree Structure for Peer-to-Peer Networks
Ψηφιακά Δένδρα TexPoint fonts used in EMF. Read the TexPoint manual before you delete this box.: AA A A A Μπορούμε να χρησιμοποιήσουμε την παραπάνω αναπαράσταση.
1 Έλεγχος ροής και συμφόρησης (flow and congestion control) flow control Ο όρος έλεγχος ροής (flow control) χρησιμοποιείται συχνά για να περιγράψει τους.
Κατανεμημένα Συστήματα με Java Ενότητα #13: Κατανεμημένοι πίνακες κατακερματισμού Διδάσκων: Γεώργιος Ξυλωμένος Τμήμα: Πληροφορικής.
Distributed Systems 2 Multicast DNS. Τι είναι; Πρωτόκολλο αντίστοιχο του DNS για τοπικά δίκτυα. Κάθε Η/Υ έχει την δική του λίστα με DNS records.
1 routing Δρομολόγηση (routing) σε δίκτυα Αυτοδύναμα Πακέτα (Datagrams): απόφαση δρομολόγησης για κάθε πακέτο. Εικονικά Κυκλώματα (Virtual Circuits): μία.
Μεταγωγή (Switching) Πως σχηματίζουμε διαδίκτυα. Περίληψη Μεταγωγή Κυκλωμάτων (Circuit switching) Μεταγωγή Πακέτων (Packet switching) Μεταγωγή Εικονικών.
1 Βέλτιστη δρομολόγηση (optimal routing) Αντιμετώπιση της δρομολόγησης σαν «συνολικό» πρόβλημα βελτιστoποίησης. Γιατί: Η αλλαγή της δρομολόγησης μιας συνόδου.
Μεταγωγή (Switching) Πως σχηματίζουμε διαδίκτυα. Περίληψη Μεταγωγή Κυκλωμάτων (Circuit switching) Μεταγωγή Πακέτων (Packet switching) Μεταγωγή Εικονικών.
CHORD A Scalable Peer-to-peer Lookup Service for Internet Applications Μαρίνα Δρόσου Νικόλαος Μπουντουρόπουλος Οδυσσέας Πετρόχειλος Παναγιώτης Δομουχτσίδης.
Λεξικό, Union – Find Διδάσκοντες: Σ. Ζάχος, Δ. Φωτάκης Επιμέλεια διαφανειών: Δ. Φωτάκης Σχολή Ηλεκτρολόγων Μηχανικών και Μηχανικών Υπολογιστών Εθνικό Μετσόβιο.
A Scalable Content-Addressable Network Μυρτώ Ντέτσικα Παναγιώτα Νικολαΐδου Ελένη Γεώργα Λαμπρινή Κώνστα Βαγγέλης Λάππας Γρηγόρης Τζώρτζης Γιώργος Καρπάθιος.
Τεχνολογία TCP/IP TCP/IP internet είναι ένα οποιοδήποτε δίκτυο το οποίο χρησιμοποιεί τα πρωτόκολλα TCP/IP. Διαδίκτυο (Internet) είναι το μεγαλύτερο δίκτυο.
Παράδειγμα B + -Tree Υποθέτουμε B + -Tree τάξης 3 (α=2, b=3)  Κάθε φύλλο θα έχει 2 ως 3 το πολύ στοιχεία  Κάθε εσωτερικός κόμβος θα έχει 2 ως 3 το πολύ.
Διαχείριση Δικτύων Ευφυή Δίκτυα Άσκηση 1: Χρήση βασικών εργαλείων για συλλογή πληροφοριών για τη διαμόρφωση και την κατάσταση λειτουργίας του δικτύου.
Σύνοψη 1 Αρχές διαδικτύου 1.1 Αναδρομή – εισαγωγή
Υποθέστε τρία τοπικά δίκτυα LAN όπως στο παρακάτω σχήμα.
Διαχείριση Δικτύων Ευφυή Δίκτυα Άσκηση 1: Χρήση βασικών εργαλείων για συλλογή πληροφοριών για τη διαμόρφωση και την κατάσταση λειτουργίας του δικτύου.
TRUST MODELS FOR P2P E-COMMERCE ΔΗΜΗΤΡΗΣ ΠΑΝΑΓΙΩΤΟΥ ΑΜ: ΑΘΗΝΑ, 12/10/2006 ΕΘΝΙΚΟ ΜΕΤΣΟΒΙΟ ΠΟΛΥΤΕΧΝΕΙΟ ΣΧΟΛΗ ΗΛΕΚΤΡΟΛΟΓΩΝ ΜΗΧΑΝΙΚΩΝ ΚΑΙ ΜΗΧΑΝΙΚΩΝ.
Διαχείριση Δικτύων Ευφυή Δίκτυα Άσκηση 2: Συλλογή πληροφοριών για τη διαμόρφωση και την κατάσταση λειτουργίας του δικτύου. Εργαστήριο Διαχείρισης και Βέλτιστου.
Storage management and caching in PAST, a large-scale persistent peer- to-peer storage utility Antony Rowstron – Peter Druschel Κατανεμημένα Συστήματα.
ΚΑΤΑΝΕΜΗΜΕΝΑ ΣΥΣΤΗΜΑΤΑ (ΕΡΓΑΣΤΗΡΙΟ). 2 Εξοικείωση με πρωτόκολλο TCP Connection Oriented Αξιοπιστία στην παράδοση Σειρά Καθυστερήσεις Χαρακτηριστικά.
Κεφάλαιο 7 Διαδικτύωση-Internet 7.3 Πρωτόκολλο TCP.
Κινητά και Διάχυτα Συστήματα Ενότητα # 6: Εφαρμογές DHT Διδάσκων: Γεώργιος Ξυλωμένος Τμήμα: Πληροφορικής.
Κεφάλαιο 7 Διαδικτύωση-Internet 7.5 Πρωτόκολλο ΙΡ (Internet Protocol)
Προχωρημένα Θέματα Δικτύων
Αποτελέσματα Έργου Έρευνας, Ανάπτυξης και Επίδειξης στα πλαίσια του ΣΥΝΕΡΓΑΣΙΑ11 ΕΣΠΑ Dynamic Cargo Routing on-the-Go Δυναμική Δρομολόγηση.
Δυναμικός Κατακερματισμός
Secure Sockets Layer (SSL)
Κεφάλαιο 4. Επίπεδο μεταφοράς
Internet Control Message Protocol (ICMP)
Βέλτιστη δρομολόγηση (optimal routing)
Κατανεμημένα Συστήματα
TCP/IP.
Κεφάλαιο 7 Διαδικτύωση-Internet
Ειδικά Θέματα σε Κινητά & Ασύρματα Δίκτυα
Κεφάλαιο 7: Διαδικτύωση-Internet
Λύσεις Ασφάλειας στο Επίπεδο Διασύνδεσης
Κεφάλαιο 7: Διαδικτύωση-Internet Μάθημα 7.9: Δρομολόγηση
Κεφάλαιο 7: Διαδικτύωση-Internet
Κεφάλαιο 7:Διαδικτύωση-Internet
Το μοντέλο πελάτη - εξυπηρετητή
Κεφάλαιο 7: Διαδικτύωση-Internet
Κεφάλαιο 4. Επίπεδο μεταφοράς
Δίκτυα Ι Βπ - 2ο ΕΠΑΛ ΝΕΑΣ ΣΜΥΡΝΗΣ 2011.
ONLINE ΕΙΣΑΓΩΓΗ ΠΑΚΕΤΩΝ ΚΑΙ OBLIVOUS ΔΡΟΜΟΛΟΓΗΣΗ ΣΕ ΔΙΚΤΥΑ ΑΙΣΘΗΤΗΡΩΝ ONLINE ΕΙΣΑΓΩΓΗ ΠΑΚΕΤΩΝ ΚΑΙ OBLIVOUS ΔΡΟΜΟΛΟΓΗΣΗ ΣΕ ΔΙΚΤΥΑ ΑΙΣΘΗΤΗΡΩΝ Ζώντου Αικατερίνη.
Εξωτερική Αναζήτηση Ιεραρχία Μνήμης Υπολογιστή Εξωτερική Μνήμη
Δυναμικός Κατακερματισμός
Μεταγράφημα παρουσίασης:

Συστήματα Διαδικτύου SCRIBE: A large-scale and decentralized application-level multicast infrastructure Miguel Castro, Peter Druschel, Anne-Marie Kermarrec and Antony Rowstron Kαθ. Παναγίωτης Τριανταφύλλου 1/9/20141

Scribe - Εισαγωγή Το Scribe προσομοιάζει σε ένα σύστημα δημοσίευσης/συνδρομής υιοθετώντας το μοντέλο ομάδων (group-based publish/subscribe) Το Scribe εναλλακτικά είναι ένα σύστημα για multicast επικοινωνία IP multicast και τα σχετικά πρωτόκολλα δεν έχουν κατορθώσει να «τρέξουν» σε μεγάλες εφαρμογές και Δυσκολεύονται στην (δυναμική) καταγραφή των μελών μιας ομάδας. Το Scribe λειτουργεί πάνω από το p2p δίκτυο Pastry σε επίπεδο εφαρμογών Προσφέρει παράδοση μηνυμάτων μέσω multicast δέντρων Είναι πλήρως κατανεμημένο Υποστηρίζει μεγάλο αριθμό ομάδων (groups) Υποστηρίζει ομάδες με μεγάλο αριθμό χρηστών 1/9/20142

Scribe API Στο Scribe υποστηρίζονται οι παρακάτω διεπαφές create (credentials, group-id) Δημιουργία ομάδας με συγκεκριμένα πιστοποιητικά πρόσβασης join (credentials, group-id, message-handler) Συμμετοχή σε ομάδα με συγκεκριμένο group-id leave (credentials, group-id) Απομάκρυνση από ομάδα με συγκεκριμένο group-id multicast (credentials, group-id, message) Δημοσίευση του μηνύματος στην ομάδα. Τα πιστοποιητικά (credentials) χρησιμοποιούνται για τον έλεγχο πρόσβασης των χρηστών στην ομάδα. 1/9/20143

Το Σύστημα Scribe Το Scribe λειτουργεί πάνω από το δίκτυο Pastry. Σε κάθε κόμβο εκτελούνται οι διεπαφές του Scribe. Διαστρωματωμένη αρχιτεκτονική: σε κάθε κόμβο, στο πιο πάνω στρώμα τρέχει το λογισμικό του Scribe και στο κατώτερο στρώμα τρέχει το λογισμικό του Pastry. Οι διεπαφές του Scribe, χρησιμοποιούνται για την δρομολόγηση και την παράδοση των μηνυμάτων στους κατάλληλους χρήστες. Ένας κόμβος του Pastry μπορεί είτε να προωθεί ένα μήνυμα (Forwarder) είτε (και) να το παραδίδει (Deliverer) τοπικά στην περίπτωση που αυτός είναι αποδέκτης (μέλος της ομάδας). 1/9/20144

Τύποι Μηνυμάτων στο Scribe CREATE Δημιουργία ομάδας – από τον «ιδρυτή» JOIN Συμμετοχή σε ομάδα LEAVE Απομάκρυνση από ομάδα MULTICAST Δημοσίευση μηνύματος σε όλα τα μέλη της ομάδας 1/9/20145

Προώθηση και Παράδοση Μηνυμάτων (1)forward(msg, key, nextID) (2)switch msg.type is (3)JOIN: if !(msg.group in groups) (4)group = groups U msg.group (5)route(msg,msg.group) (6)groups[msg.group].children U msg.source (7)nextId = null // Stop routing original message (1)deliver(msg, key) (2)switch msg.type is (3)CREATE: groups = groups U msg.group (4)JOIN: groups[msg.group].children U msg.source (5)MULTICAST:  node in groups[msg.group].children (6)send(msg, node) (7)if memberOf(msg.group) (8) invokeMsgHandler(msg.group, msg) (9)LEAVE:groups[msg.group].children -= msg.source (10)if (|groups[msg.group].children| = 0) (11)send(msg.groups[msg.group].parent 1/9/20146

Κόμβοι στο Scribe Ένας κόμβος στο Scribe μπορεί να: Δημιουργήσει μία ομάδα Να συμμετάσχει σε μία ομάδα Να γίνει η ρίζα του multicast δέντρου για την παράδοση μηνυμάτων της ομάδας Να δημοσιεύσει (προωθήσει/παραδώσει) νέα μηνύματα για κάποια ομάδα. 1/9/20147

Ομάδες στο Scribe Μία ομάδα στο Scribe Ορίζεται από ένα μοναδικό group-id Σχετίζεται με ένα multicast δέντρο που χρησιμοποιείται για την διάδοση των μηνυμάτων στους χρήστες Έχει ένα rendezvous κόμβο όπου είναι και η ρίζα του multicast δέντρου Μπορεί να περιέχει πολλαπλές πηγές μηνυμάτων (οποιοδήποτε μέλος της ομάδας μπορεί να στείλει μηνύματα). 1/9/20148

Multicast Δέντρο στο Scribe Στο Scribe δημιουργείται ένα multicast δέντρο για κάθε ομάδα με ρίζα τον rendezvous κόμβο, με σκοπό την διάδοση των μηνυμάτων Οι κόμβοι στο multicast δέντρο μπορούν να είναι: Forwarders Κόμβοι που απλά προωθούν τα μηνύματα και δεν είναι αναγκαίο να είναι μέλη της ομάδας. Διατηρούν πίνακες με τις ΙP διευθύνσεις των κόμβων-παιδιών στο multicast δέντρο μιας (ή περισσότερων) ομάδων Αυτοί οι πίνακες είναι επιπλέον των πινάκων που διατηρούν σαν κόμβοι του Pastry. Members Ενεργούν σαν Forwaders αλλά είναι και μέλη της ομάδας. Έτσι προωθούν αλλά και δέχονται (δηλαδή παραδίδουν τοπικά τα) μηνύματα. 1/9/20149

Διαδικασία Δημιουργίας Νέας Ομάδας Ο κόμβος στέλνει το μήνυμα CREATE με group-id ως κλειδί. Το δίκτυο Pastry αναλαμβάνει να παραδώσει το μήνυμα στον κόμβο με node-id αριθμητικά πιο κοντά στο group-id. Αυτός ο κόμβος είναι πλέον ο κόμβος rendezvous. Ελέγχονται τα πιστοποιητικά χρήσης της ομάδας. Η ομάδα προστίθεται στο σύνολο των ενεργών ομάδων που διατηρεί το σύστημα – δηλ. αρχικά στον κόμβο rendezvous. Group-id Προκύπτει χρησιμοποιώντας τη συνάρτηση κατακερματισμού (SHA-1) με όρισμα το αλφαριθμητικό όνομα του group και του δημιουργού του Άρα ανήκει στον ίδιο χώρο ονομάτων με τα nodeIds και άρα το δίκτυο Pastry μπορεί να τα δρομολογήσει. 1/9/201410

Συμμετοχή σε ομάδα Αποστολή JOIN μηνύματος με το group-id ως κλειδί Το Pastry δρομολογεί το μήνυμα στον rendezvous κόμβο χρησιμοποιώντας τη μέθοδο forward Αν ο ενδιάμεσος κόμβος είναι forwarder Προστίθεται αυτός ο κόμβος στον πίνακα παιδιών του forwarder Αν ο ενδιάμεσος κόμβος δεν είναι forwarder Δημιουργείται ένας πίνακας παιδιών (μελών της ομάδας) και προστίθεται αυτός ο κόμβος. Προωθεί το μήνυμα JOIN προς το rendezvous κόμβο. Προσέξτε ότι το κόστος για JOIN είναι το πολύ O(logN). Γιατί «το πολύ» ; 1/9/201411

Συμμετοχή σε ομάδα JOIN group Ρίζα rendezvous κόμβος JOIN group /9/201412

Απομάκρυνση από Ομάδα Ο κόμβος ενημερώνει τις τοπικές δομές ότι δεν είναι πλέον μέλος της ομάδας Ο κόμβος στέλνει ένα LEAVE μήνυμα στον πατέρα του Το μήνυμα ταξιδεύει προς τη ρίζα Το μήνυμα σταματάει σε ενδιάμεσο κόμβο που συνεχίζει να έχει παιδιά του στο group αυτό μετά την απομάκρυνση του κόμβου. 1/9/201413

Δημοσίευση Μηνύματος Ένας κόμβος που προτίθεται να δημοσιεύει πληροφορία στο Scribe στέλνει ένα MULTICAST μήνυμα στο rendezvous κόμβο. Αυτός ο κόμβος αποθηκεύει (σε cache) την IP διεύθυνση του rendezvous κόμβου (μετά την πρώτη δημοσίευσή του) για να μπορεί να του αποστείλει απευθείας τις επόμενες δημοσιεύσεις...(και να γλυτώσει έτσι τα O(logN) μηνύματα. Στο Scribe υπάρχει ένα multicast δέντρο ανά ομάδα. Με την παραλαβή του μηνύματος από το rendezvous κόμβο, ο το rendezvous κόμβος στέλνει το μήνυμα στα παιδιά του (που είναι μέλη αυτής της ομάδας). Το κάθε παιδί προωθεί το μήνυμα στα παιδιά του για αυτή την ομάδα. Ο έλεγχος πρόσβασης γίνεται στον rendezvous κόμβο 1/9/201414

Δημοσίευση Μηνύματος αποστολέας Μέλος ομάδας Μέλος ομάδας Ρίζα rendezvous κόμβος /9/201415

Ανοχή σε λάθη – Αναδόμηση Δέντρου Ανοχή / αντιμετώπιση «σπασμένων» συνδέσεων Αποτυχία/αστοχία ενδιάμεσου κόμβου οδηγεί στην αποκοπή ολόκληρων υποδένδρων από την υπόλοιπη ομάδα. Ανίχνευση: Κάθε ενδιάμεσος κόμβος στέλνει περιοδικά μηνύματα στα παιδιά του (“ping”, “are-you-alive”,…) μηνύματα, τα οποία αναμένονται από τα παιδιά. Ανάνηψη: Αν ένα παιδί δεν λάβει αυτό το μήνυμα Υποθέτει ότι ο πατέρας του έχει καταρρεύσει και βρίσκει νέο πατέρα στέλνοντας το JOIN μήνυμα με group-id ως κλειδί 1/9/201416

Αναδόμηση Δέντρου X JOIN JOIN /9/201417

Ανοχή σε λάθη – Αναδόμηση Δέντρου Κατάρρευση του rendevous κόμβου Η πληροφορία που κρατάει κάθε rendezvous κόμβος για τις ομάδες που διαχειρίζεται (δημιουργός, ACL, κλπ) αποθηκεύεται (αντιγράφεται) και στους k (~=5) (αριθμητικά) πιο κοντινούς κόμβους (που ανήκουν στο leaf set). Όταν η ρίζα καταρρεύσει, το δέντρο αναδομείται: τα παιδιά αποστέλλουν το μήνυμα JOIN πάλι Το Pastry θα το δρομολογήσει στο ζωντανό κόμβο που είναι αριθμητικά πιο κοντά στον κόμβο SHA-1(group_id) και επιλέγεται σαν νέα ρίζα ο κόμβος με node-id αριθμητικά πιο κοντά στο grou-id. Αυτός ο κόμβος έχει αποθηκευμένη την πληροφορία της προηγούμενης ρίζας (βρισκόταν στο leaf set του κόμβου που έφυγε) Προσέξτε: όλοι οι πιθανοί μελλοντικοί δημοσιευτές μένουν ανεπηρέαστοι!  Η ανοχή σε λάθη και η ανάνηψη επιτυγχάνεται κατανεμημένα και με ανταλλαγή ελάχιστων μηνυμάτων. 1/9/201418

Παροχή Αξιόπιστης Παράδοσης Το Scribe χρησιμοποιεί το TCP πρωτόκολλο μεταξύ πατέρα- παιδιών.  παρέχει αξιόπιστη παράδοση μηνυμάτων με σωστή σειρά μόνο όταν δεν παρουσιάζονται σφάλματα στο multicast δέντρο Υπό την παρουσία σφαλμάτων/λαθών το Scribe μπορεί να προσφέρει αξιόπιστη παράδοση παρέχοντας σχετικούς μηχανισμούς Το Scribe παρέχει χειριστές που μπορούν να χρησιμοποιήσουν κατάλληλα οι εφαρμογές που στηρίζονται στο Scribe Αυτοί οι χειριστές καλούνται πριν από την αντίστοιχη διεπαφή του Scribe και, στην ουσία τους, υλοποιούν μηχανισμούς αντίστοιχους με αυτούς του TCP αλλά πάνω στα overlay μονοπάτια (του mcast δένδρου). Απαιτείται αντιγραφή μηνυμάτων και στη ρίζα και σε ενδιάμεσους κόμβους και αρίθμηση μηνυμάτων (sequence numbers). 1/9/201419

Πειραματική Μελέτη Πειράματα Σύγκριση καθυστέρησης μετάδοσης, φόρτου στους κόμβους και στις συνδέσεις τους με το IP multicast Επεκτασιμότητα κάτω από μεγάλο αριθμό μικρών ομάδων Χαρακτηριστικά Πειραμάτων Το δίκτυο αποτελείται από δρομολογητές χρησιμοποιώντας τυχαίους γράφους GT-ΙΤΜ transit-stub model κόμβους του Scribe ομάδες Μέγεθος ομάδας: ελάχιστο 11 - μέγιστο /9/201420

Καθυστέρηση Μετρήθηκε η κατανομή των καθυστερήσεων για την παράδοση των μηνυμάτων σε κάθε μέλος χρησιμοποιώντας το Scribe και το IP multicast Μετρικές απόδοσης: Λόγος μέσης καθυστέρησης σε σχέση με το IP Multicast (RAD) 50% των ομάδων : 1.68 μέγιστο: 2 Λόγος μέγιστης καθυστέρησης σε σχέση με το IP Multicast (RMD) 50% των ομάδων: 1.69 Μέγιστο: 4.26 Η καθυστέρηση στο Scribe είναι μεγαλύτερη σε σχέση με το IP multicast. Μόνο στο 2.2% των ομάδων είναι μικρότερη Αθροιστική κατανομή καθυστέρησης σε σχέση με το IP Multicast 1/9/201421

Φόρτος στους κόμβους Για κάθε κόμβο μετράται ο αριθμός των ομάδων που υποστηρίζει Ο μέσος αριθμός πινάκων παιδιών ανά κόμβο είναι 2.4 με 1500 ομάδες στο σύστημα Τα αποτελέσματα δείχνουν ότι το Scribe κατανέμει τον φόρτο σε όλους τους κόμβους 1/9/201422

Φόρτος στις Συνδέσεις Μετράται ο αριθμός των πακέτων που αποστέλλονται πάνω από κάθε σύνδεση όταν μηνύματα αποστέλλονται στα μέλη 1500 ομάδων Ο μέσος αριθμός πακέτων ανά σύνδεση είναι Scribe : 2.4 (μέγιστη 4031) IP Multicast : 0.7 (μέγιστη 950) Στο Scribe παρατηρείται τετραπλάσιο φόρτος στις συνδέσεις σε σχέση με το IP Multicast 1/9/201423

Αντιμετώπιση Περιοχών Υψηλού Φόρτου Είναι δυνατό να μην έχουν όλοι οι κόμβοι την ίδια επεξεργαστική ισχύ ή bandwidth στις συνδέσεις τους με του υπόλοιπους Υπό υψηλό φόρτο, ορισμένοι κόμβοι (όχι και τόσο δυνατοί) μπορεί να υπερφορτωθούν και να καταρρεύσουν Η λύση είναι να μεταφερθεί ο πίνακας παιδιών ενός κόμβου Κ σε άλλο κόμβο Επιλογή της ομάδας στον Κ που προκαλεί τον περισσότερο φόρτο Επιλογή του πιο μακρινού παιδιού του Κ σε αυτή την ομάδα και αποστολή του πίνακα παιδιών σε αυτό Το συγκεκριμένο παιδί επιλέγει ανάμεσα στα υπόλοιπα παιδιά το καταλληλότερo (με βάση τις αποστάσεις τους) που θα παίξει το ρόλο του πατέρα 1/9/201424

Επεκτασιμότητα στο Scribe ομάδες με 11 μέλη ομάδες με 11 μέλη Το Multicast δέντρο στο Scribe δεν είναι αποδοτικό υπό την παρουσία πολλών μικρών ομάδων γιατί δημιουργούνται δέντρα με πολύ μακρινά μονοπάτια Λύση: απομάκρυνση από τα μονοπάτια κόμβων που δεν ανήκουν στην ομάδα και έχουν ένα μόνο παιδί στον πίνακα τους Παρατηρήθηκε μείωση του φόρτου στις συνδέσει από 6.1 σε 3.3, και μείωση στον αριθμό των παιδιών ανά κόμβο από 21.2 σε 8.5 1/9/201425

Συμπέρασμα Το Scribe είναι μία επεκτάσιμη υποδομή πάνω από το Pastry με επιτρέπει την παράδοση μηνυμάτων στα μέλη ομάδων δημιουργώντας multicast δέντρα για κάθε ομάδα Είναι πλήρως κατανεμημένο (Pastry) Αποδίδει ικανοποιητικά όσο ο αριθμός των ομάδων μεγαλώνει Μπορεί να λειτουργήσει υπό την παρουσία λαθών. Όμως: Δε λαμβάνει υπόψη του τα προβλήματα μεταβολών bandwidth του διαδικτύου και Δυνητικά υποφέρει από το πρόβλημα των «λεπτών» δένδρων (μεγάλα μονοπάτια ρίζα-φύλλο)...  μεγάλη καθυστέρηση παράδοσης. 1/9/201426

Ερωτήσεις κλειδιά: Αφού είναι αρκετά πιο ακριβό από το IP multicast, γιατί το χρειαζόμαστε και δε χρησιμοποιούμε το IP multicast ; Τί γίνεται αν ο κόμβος rendezvous είναι «αργός» (ή κάποιος άλλος κόμβος στα πρώτα επίπεδα του δένδρου); Υπάρχει η πιθανότητα >1 κόμβων rendezvous ; (ή «σπασίματος» υποδένδρων σε «παράλληλα» υποδένδρα); Υπάρχει τρόπος να δημιουργήσουμε δένδρα με «ελεγχόμενη» δομή (π.χ. Μήκος μέγιστου βάθους); Είναι τα δένδρα η κατάλληλη δομή για mutlicasting; 1/9/201427