Σκοπός του µαθήµατος. Κατανεµηµένα Συστήµατα Ι Μάθηµα Βασικής Επιλογής, Χειµερινού Εξαµήνου Τοµέας Εφαρµογών και Θεµελιώσεων

Σχετικά έγγραφα
Σκοπός του µαθήµατος. Κατανεµηµένα συστήµατα. Μάθηµα Βασικής Επιλογής, Χειµερινού Εξαµήνου Τοµέας Εφαρµογών και Θεµελιώσεων

Μοντέλο Σύγχρονου ικτύου. Κατανεµηµένα Συστήµατα Ι Μάθηµα Βασικής Επιλογής, Χειµερινού Εξαµήνου Τοµέας Εφαρµογών και Θεµελιώσεων

Κατανεμημένα Συστήματα Ι

Προηγούµενο Μάθηµα. Κατανεµηµένα Συστήµατα Ι Μάθηµα Βασικής Επιλογής, Χειµερινού Εξαµήνου Τοµέας Εφαρµογών και Θεµελιώσεων

Προηγούµενο Μάθηµα. Κατανεµηµένα Συστήµατα Ι Μάθηµα Βασικής Επιλογής, Χειµερινού Εξαµήνου Τοµέας Εφαρµογών και Θεµελιώσεων

Μοντέλο Σύγχρονου ικτύου. Κατανεµηµένα Συστήµατα Ι Μάθηµα Βασικής Επιλογής, Χειµερινού Εξαµήνου Τοµέας Εφαρµογών και Θεµελιώσεων

Προηγούµενο Μάθηµα. Κατανεµηµένα Συστήµατα Ι Μάθηµα Βασικής Επιλογής, Χειµερινού Εξαµήνου Τοµέας Εφαρµογών και Θεµελιώσεων. Υποστήριξη Φοιτητών

Προηγούµενο Μάθηµα. Κατανεµηµένα Συστήµατα Ι Μάθηµα Βασικής Επιλογής, Χειµερινού Εξαµήνου Τοµέας Εφαρµογών και Θεµελιώσεων. Σύνοψη 3 ης ιάλεξης

Ενδεικτικές Λύσεις 1ου Σετ Ασκήσεων

Κατανεμημένα Συστήματα Ι

Κατανεμημένα Συστήματα Ι

Κατανεμημένα Συστήματα Ι

Κατανεμημένα Συστήματα Ι

Γενικά. Κατανεµηµένα Συστήµατα Ι Μάθηµα Βασικής Επιλογής, Χειµερινού Εξαµήνου Τοµέας Εφαρµογών και Θεµελιώσεων. Βασικοί Ορισµοί

Προηγούµενο Μάθηµα. Κατανεµηµένα Συστήµατα Ι Μάθηµα Βασικής Επιλογής, Χειµερινού Εξαµήνου Τοµέας Εφαρµογών και Θεµελιώσεων. Υποστήριξη Φοιτητών

Προηγούµενο Μάθηµα. Κατανεµηµένα Συστήµατα Ι Μάθηµα Βασικής Επιλογής, Χειµερινού Εξαµήνου Τοµέας Εφαρµογών και Θεµελιώσεων

Κατανεμημένα Συστήματα Ι

Κατανεμημένα Συστήματα Ι

Το Πρόβληµα Οµοφωνίας Σύγχρονα Συστήµατα Μεταβίβασης Μηνύµατος Μοντέλο Κατάρρευσης (crash model) Οι διεργασίες µπορούν να σταµατούν να εκτελούνται σε

Εκλογή αρχηγού σε σύγχρονο δακτύλιο: Οι αλγόριθμοι LCR και HS. 1 Ο αλγόριθμος LCR (Le Lann, Chang, and Roberts)

Σύνοψη Μαθήµατος. Κατανεµηµένα Συστήµατα Ι Μάθηµα Βασικής Επιλογής, Χειµερινού Εξαµήνου Τοµέας Εφαρµογών και Θεµελιώσεων

Σύνοψη Μαθήµατος. Κατανεµηµένα Συστήµατα Ι Μάθηµα Βασικής Επιλογής, Χειµερινού Εξαµήνου Τοµέας Εφαρµογών και Θεµελιώσεων. Βυζαντινοί Στρατηγοί

Εκλογήαρχηγού. Εισαγωγή Ισχυρά συνδεδεµένος γράφος ακτύλιος µίας κατεύθυνσης Τοπολογία δένδρου. Κατανεµηµένα Συστήµατα 06-1

Προηγούµενο Μάθηµα. Κατανεµηµένα Συστήµατα Ι Μάθηµα Βασικής Επιλογής, Χειµερινού Εξαµήνου Τοµέας Εφαρµογών και Θεµελιώσεων. Η σχέση συνέβη-πριν

Προηγούµενο Μάθηµα. Κατανεµηµένα Συστήµατα Ι Μάθηµα Βασικής Επιλογής, Χειµερινού Εξαµήνου Τοµέας Εφαρµογών και Θεµελιώσεων. Η σχέση συνέβη-πριν

Σύνοψη Μαθήµατος. Κατανεµηµένα Συστήµατα Ι Μάθηµα Βασικής Επιλογής, Χειµερινού Εξαµήνου Τοµέας Εφαρµογών και Θεµελιώσεων

Το Πρόβληµα Οµοφωνίας Σύγχρονα Συστήµατα Μεταβίβασης Μηνύµατος Μοντέλο Κατάρρευσης (crash model) Οι διεργασίες µπορούν να σταµατούν να εκτελούνται σε

Προηγούµενο Μάθηµα. Κατανεµηµένα Συστήµατα Ι Μάθηµα Βασικής Επιλογής, Χειµερινού Εξαµήνου Τοµέας Εφαρµογών και Θεµελιώσεων. Η σχέση συνέβη-πριν

Προηγούµενο Μάθηµα. Κατανεµηµένα Συστήµατα Ι Μάθηµα Βασικής Επιλογής, Χειµερινού Εξαµήνου Τοµέας Εφαρµογών και Θεµελιώσεων

Διάλεξη 1: Εισαγωγή στον Κατανεμημένο Υπολογισμό. ΕΠΛ 432: Κατανεμημένοι Αλγόριθμοι

Αµοιβαίοςαποκλεισµός. Κατανεµηµένα Συστήµατα 03-1

Υπολογιστικό Πρόβληµα

Διάλεξη 17: Συμφωνία με Βυζαντινά Σφάλματα. ΕΠΛ 432: Κατανεμημένοι Αλγόριθμοι

Κατανεμημένα Συστήματα Ι

Προηγούµενο Μάθηµα. Κατανεµηµένα Συστήµατα Ι Μάθηµα Βασικής Επιλογής, Χειµερινού Εξαµήνου Τοµέας Εφαρµογών και Θεµελιώσεων. Αυτόµατα Εισόδου/Εξόδου

Σύνοψη Προηγούµενου Μαθήµατος. Κατανεµηµένα Συστήµατα Ι Μάθηµα Βασικής Επιλογής, Χειµερινού Εξαµήνου Τοµέας Εφαρµογών και Θεµελιώσεων

ιακριτά Μαθηµατικά και Μαθηµατική Λογική ΠΛΗ20 Ε ρ γ α σ ί α 3η Θεωρία Γραφηµάτων

ιεργασίες και Επεξεργαστές στα Κατανεµηµένων Συστηµάτων

Ανοχή απέναντι σε Σφάλµατα Fault Tolerance

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

Το Πρόβληµα Οµοφωνίας Σύγχρονα Συστήµατα Μεταβίβασης Μηνύµατος Μοντέλο Κατάρρευσης (crash model) Οι διεργασίες µπορούν να σταµατούν να εκτελούνται σε

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

Αλγόριθµοι και Πολυπλοκότητα

3 Αναδροµή και Επαγωγή

Κεφάλαιο 2. Παραγοντοποίηση σε Ακέραιες Περιοχές

Γ. Κορίλη Αλγόριθµοι ροµολόγησης

Διάλεξη 4: Εκλογή Προέδρου σε Δακτύλιους. ΕΠΛ 432: Κατανεμημένοι Αλγόριθμοι

Μονοπάτια και Κυκλώµατα Euler. Στοιχεία Θεωρίας Γραφηµάτων (3,4) Παραδείγµατα. Κριτήρια Υπαρξης.

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

Στοιχεία Θεωρίας Γραφηµάτων (4) - έντρα

Αλγόριθμοι και Πολυπλοκότητα

Άπληστοι Αλγόριθµοι (CLR, κεφάλαιο 17)

Αριθµητική Ανάλυση 1 εκεµβρίου / 43

Εισαγωγή στους Αλγόριθµους. Αλγόριθµοι. Ιστορικά Στοιχεία. Ο πρώτος Αλγόριθµος. Παραδείγµατα Αλγορίθµων. Τι είναι Αλγόριθµος

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

Τεχνολογίες Υλοποίησης Αλγορίθµων

Διάλεξη 18: Πρόβλημα Βυζαντινών Στρατηγών. ΕΠΛ 432: Κατανεμημένοι Αλγόριθμοι

Γραµµική Αλγεβρα Ι. Ενότητα: ιανυσµατικοί χώροι. Ευάγγελος Ράπτης. Τµήµα Μαθηµατικών

ροµολόγηση πακέτων σε δίκτυα υπολογιστών

Τ και τιµή του Β θετική µετατρέπεται ισοδύναµα στην εντολή Όσο ως εξής:

Καθολικέςκαταστάσεις. Ορισµοί Κατασκευή καθολικών καταστάσεων Παθητική στρατηγική Ενεργητική στρατηγική. Κατανεµηµένα Συστήµατα 04-1

Μεθοδολογίες παρεµβολής σε DTM.

ΘΕΩΡΙΑ ΑΡΙΘΜΩΝ. Ασκησεις - Φυλλαδιο 4. ιδασκων: Α. Μπεληγιάννης Ιστοσελιδα Μαθηµατος :

Ασκήσεις για το µάθηµα «Ανάλυση Ι και Εφαρµογές» (ε) Κάθε συγκλίνουσα ακολουθία άρρητων αριθµών συγκλίνει σε άρρητο αριθµό.

Σύνοψη Μαθήµατος. Κατανεµηµένα Συστήµατα Ι Μάθηµα Βασικής Επιλογής, Χειµερινού Εξαµήνου Τοµέας Εφαρµογών και Θεµελιώσεων

Ανάπτυξη Εφαρµογών σε Προγραµµατιστικό Περιβάλλον

q={(1+2)/2}=1 A(1,2)= MERGE( 4, 6 ) = 4 6 q=[(3+4)/2]=3 A(1,4)= MERGE( 4 6, 5 8 ) = q=[(5+6)/2]=5 A(5,6)= MERGE( 2, 9 ) = 2 9

Μια TM µπορεί ένα από τα δύο: να αποφασίζει µια γλώσσα L. να αναγνωρίζει (ηµιαποφασίζει) µια γλώσσα L. 1. Η TM «εκτελεί» τον απαριθµητή, E.

ΘΕΩΡΙΑ ΑΡΙΘΜΩΝ. Λυσεις Ασκησεων - Φυλλαδιο 4

ΠΑΝΕΠΙΣΤΗΜΙΟ ΜΑΚΕ ΟΝΙΑΣ ΟΙΚΟΝΟΜΙΚΩΝ ΚΑΙ ΚΟΙΝΩΝΙΚΩΝ ΕΠΙΣΤΗΜΩΝ ΠΜΣΕ ΣΤΗΝ ΕΦΑΡΜΟΣΜΕΝΗ ΠΛΗΡΟΦΟΡΙΚΗ ΝΕΥΡΩΝΙΚΑ ΙΚΤΥΑ ΚΑΙ ΕΞΕΛΙΚΤΙΚΟΙ ΑΛΓΟΡΙΘΜΟΙ

ΘΕΩΡΙΑ ΑΡΙΘΜΩΝ Ασκησεις - Φυλλαδιο 4

Σύνοψη Προηγούµενου. Γλώσσες χωρίς Συµφραζόµενα (2) Ισοδυναµία CFG και PDA. Σε αυτό το µάθηµα. Αυτόµατα Στοίβας Pushdown Automata

Εγχειρίδιο Φοιτητών. 1. Εισαγωγή

Κατανεµηµένα Συστήµατα Ι Μάθηµα Βασικής Επιλογής, Χειµερινού Εξαµήνου Τοµέας Εφαρµογών και Θεµελιώσεων

Προβλήματα, αλγόριθμοι, ψευδοκώδικας

Ενότητα 1: Εισαγωγή Ασκήσεις και Λύσεις

ΘΕΩΡΙΑ ΑΡΙΘΜΩΝ Ασκησεις - Φυλλαδιο 4

ΘΕΩΡΙΑ ΑΡΙΘΜΩΝ Ασκησεις - Φυλλαδιο 3

Ελεγχος, Αξιοπιστία και Διασφάλιση Ποιότητας Λογισµικού Πολυπλοκότητα

Επισκόπηση. Κατανεµηµένα Συστήµατα Ι Μάθηµα Βασικής Επιλογής, Χειµερινού Εξαµήνου Τοµέας Εφαρµογών και Θεµελιώσεων. Λεπτοµέρειες υλοποίησης αλγορίθµων

Λύσεις Παλιών Θεµάτων. Συστήµατα Παράλληλης Επεξεργασίας, 9ο εξάµηνο Υπεύθ. Καθ. Νεκτάριος Κοζύρης

Πληροφορική 2. Αλγόριθμοι

Consensus and related problems

f (x) = l R, τότε f (x 0 ) = l. = lim (0) = lim f(x) = f(x) f(0) = xf (ξ x ). = l. Εστω ε > 0. Αφού lim f (x) = l R, υπάρχει δ > 0

ΕΠΛ 211: Θεωρία Υπολογισμού και Πολυπλοκότητας. Διάλεξη 13: Παραλλαγές Μηχανών Turing και Περιγραφή Αλγορίθμων

Εγχειρίδιο Φοιτητών. 1. Εισαγωγή

Απαντήσεις. Απάντηση. Απάντηση

Εισαγωγή στους Αλγορίθμους

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

2 Αποδείξεις. 2.1 Εξαντλητική µέθοδος. Εκδοση 2005/03/22. Υπάρχουν πολλών ειδών αποδείξεις. Εδώ ϑα δούµε τις πιο κοινές:

Σύνοψη Προηγούµενου. Κανονικές Γλώσσες (1) Προβλήµατα και Γλώσσες. Σε αυτό το µάθηµα. ιαδικαστικά του Μαθήµατος.

ΕΛΛΗΝΙΚΟ ΑΝΟΙΚΤΟ ΠΑΝΕΠΙΣΤΗΜΙΟ ΠΡΟΓΡΑΜΜΑ ΣΠΟΥ ΩΝ «ΠΛΗΡΟΦΟΡΙΚΗ» ΜΑΘΗΜΑΤΙΚΑ Ι (ΘΕ ΠΛΗ 12) ΕΡΓΑΣΙΑ 4

Διάλεξη 6: Εκλογή Προέδρου σε Σύγχρονους Δακτύλιους. ΕΠΛ 432: Κατανεμημένοι Αλγόριθμοι

Συνεκτικά σύνολα. R είναι συνεκτικά σύνολα.

ΕΠΛ 211: Θεωρία Υπολογισμού και Πολυπλοκότητας. Διάλεξη 2: Μαθηματικό Υπόβαθρο

Η NTM αποδέχεται αν µονοπάτι στο δέντρο που οδηγεί σε αποδοχή.

Εγχειρίδιο Χρήστη - Μαθητή

Ειδικά θέματα Αλγορίθμων και Δομών Δεδομένων (ΠΛΕ073) Απαντήσεις 1 ου Σετ Ασκήσεων

Εισαγωγή στον Προγραµµατισµό. Ανάλυση (ή Επιστηµονικοί8 Υπολογισµοί)

... a b c d. b d a c

Transcript:

Σκοπός του µαθήµατος Κατανεµηµένα Συστήµατα Ι Μάθηµα Βασικής Επιλογής, Χειµερινού Εξαµήνου Τοµέας Εφαρµογών και Θεµελιώσεων Ιωάννης Χατζηγιαννάκης ευτέρα, 4 Ιανουαρίου, 008 Αίθουσα Β3 Μελέτη ϐασικών ϑεωρητικών µοντέλων αναπαράστασης του κατανεµηµένου υπολογισµού Κατανόηση των ϐασικών προβληµάτων που αντιµετωπίζουν τα κατανεµηµένα σύστηµα υπολογιστών Μελέτη ορισµένων χαρακτηριστικών µηχανισµών για την επίλυση τους Σχεδιασµός κατανεµηµένων αλγορίθµων Χρήση αλγοριθµικών τεχνικών για την ανάλυση της λειτουργίας τους Υλοποίηση κατανεµηµένων αλγορίθµων Πειραµατική αξιολόγηση κατανεµηµένων αλγορίθµων Βασικά Μοντέλα Αναπαράστασης Μοντελοποίηση του Κατανεµηµένου Υπολογισµού Επικοινωνίας Σύγχρονη Εκτέλεση Ασύγχρονη Εκτέλεση Αυτόµατα Εισόδου / Εξόδου Τοπολογίας ικτύου ίκτυα ακτυλίου Κατευθηνόµενα / µή-κατευθηνόµενα Γενικά ίκτυα Ισχυρά Συνεκτικά ίκτυα Κλίκες Παρουσίας Σφαλµάτων Σφάλµατα Επικοινωνίας Σφάλµατα Τερµατισµού Βυζαντινά Σφάλµατα Η επιλογή ενός συγκεκριµένου µοντέλου εξαρτάται από το πρόβληµα που εξετάζουµε τον τύπο του αλγορίθµου που µελετάµε Ο στόχος είναι να µας επιτρέπει να αναλύσουµε το σύστηµα Σε ένα µοντέλο µπορουµε να ϐεβαιωθούµε ότι ένας καταναµηµένος αλγόριθµος λειτουργεί σωστά (λύνει το πρόβληµα) µετρήσουµε τον χρόνο εκτέλεσης το πλήθος των δεδοµένων που ανταλλάσονται Αναζητούµε το ελάχιστο µοντέλο ποιο αφαιρετικό µοντέλο Το µοντέλο πρέπει να είναι ιδιαίτερα ακριβές δίκαια σύγκρηση απόδοσης διαφορετικών συστηµάτων

Μοντελοποίηση Ασύγχρονων Συστηµάτων () Μοντελοποίηση Ασύγχρονων Συστηµάτων () Μελετάµε κατανεµηµένα συστήµατα, όπου. τα επιµέρους συστήµατα εκτελούν τις εργασίες τους µε οποιαδήποτε, ακαθόριστη, σειρά µε οποιαδήποτε, ακαθόριστη, ταχύτητα σε σχέση µε τα υπόλοιπα υποσυστήµατα δεν κάνουµε καµία παραδοχή ως προς τον ϱυθµό που εκτελεί εντολές. τα κανάλια επικοινωνίας παραδίδουν τα µηνύµατα µε οποιαδήποτε, ακαθόριστη, ταχύτητα σε σχέση µε τα υπόλοιπα κανάλια δεν κάνουµε καµία παραδοχή ως προς τον ϱυθµό παράδοσης µηνυµάτων Μοντελοποιούµε αυτή την απροσδιόριστη χρονικά συµπεριφορά χρησιµοποιώντας αυτόµατα εισόδου/εξόδου Κάθε διεργασία µοντελοποιείτε απο ένα αυτόµατο εισόδου/εξόδου Κάθε κανάλι επικοινωνίας µοντελοποιείτε απο ένα αυτόµατο εισόδου/εξόδου Το µοντέλο των αυτόµατων εισόδου/εξόδου είναι αρκετά γενικό Μπορούµε να το χρησιµοποιήσουµε για να περιγράψουµε σχεδόν όλους τους τύπους ασύγχρονων συστηµάτων Αυτόµατα Εισόδου/Εξόδου Ορισµός Αυτόµατου Εισόδου/Εξόδου Ενα αυτόµατο εισόδου/εξόδου µοντελοποιεί ένα στοιχείο του κατανεµηµένου συστήµατος το οποίο αλληλεπιδρά µε άλλα στοιχεία του συστήµατος Είναι ένα αυτόµατο καταστάσεων (state machine) όπου οι µεταβάσεις µεταξύ καταστάσεων συνδέονται µε ένα σύνολο ενεργειών Οι ενέργειες κατηγοριοποιούνται ως εξής:. Ενέργειες εισόδου. Ενέργειες εξόδου 3. Εσωτερικές ενέργειες Ενα αυτόµατο εισόδου/εξόδου A αποτελείται από: Τρία σύνολα απο ενέργειες εισόδου in(a) -- ενέργειες εξόδου out(a), και εσωτερικές ενέργειες int(a) Ενα σύνολο καταστάσεων states(a) Ορισµένες τις ονοµάζουµε αρχικές καταστάσεις start(a) Ορισµένες τις ονοµάζουµε καταστάσεις τερµατισµού halt(a) Μια συνάρτηση αλλαγής κατάστασης trans(a) states(a) (in(a) out(a) int(a)) states(a) Για κάθε κατάσταση κ και κάθε ενέργεια ɛ Υπάρχει µια µετάβαση (κ, ɛ, κ ) trans(a)

Σύνθεση Αυτόµατων Εισόδου/Εξόδου Σύνθεση Αυτόµατων Εισόδου/Εξόδου Παράδειγµα Συστήµατος Παράδειγµα Συστήµατος Η µοντελοποίηση ενός ασύγχρονου κατανεµηµένου συστήµατος προκύπτει απο την σύνθεση ενός πλήθους αυτόµατων εισόδου/εξόδου Αντιστοιχούµε ένα αυτόµατο P3 Η µοντελοποίηση ενός ασύγχρονου κατανεµηµένου συστήµατος προκύπτει απο την σύνθεση ενός πλήθους αυτόµατων εισόδου/εξόδου Αντιστοιχούµε ένα αυτόµατο P3. σε κάθε διεργασία P P P P Σύνθεση Αυτόµατων Εισόδου/Εξόδου ιατύπωση Προβλήµατος Η µοντελοποίηση ενός ασύγχρονου κατανεµηµένου συστήµατος προκύπτει απο την σύνθεση ενός πλήθους αυτόµατων εισόδου/εξόδου Αντιστοιχούµε ένα αυτόµατο. σε κάθε διεργασία. σε κάθε κανάλι επικοινωνίας Παράδειγµα Συστήµατος C,3 C3, P3 C,3 C, P P C, C3, Ορισµός του ϑεωρητικού προβλήµατος σύµφωνα µε το µοντέλο Προδιαγραφές σωστής λύσης Παράµετροι απόδοσης µέτρηση πολυπλοκότητας Παραλλαγές µοντέλου Αναγωγή σε ϑεµελιώδες πρόβληµα ή υπο-περίπτωση Εκλογή Αρχηγού Αναζήτηση κατά Εύρος Συντοµότερα Μονοπάτια Συναίνεση µε Σφάλµατα Επικύρωση µε Σφάλµατα Συγχρονισµός ιάταξη Γεγονότων Αποτύπωση Καθολικών Καταστάσεων Αποτίµηση Καθολικού Κατηγορήµατος

Σχεδιασµός αλγοριθµικών λύσεων Βασικές αλγοριθµικές λύσεις Χαρακτηρισµός λύσης συγκεντρωτικός, αποκεντρωτικός Καταγραφή αρχικής γνώσης Ορισµός αλφάβητου µηνυµάτων δοµή µηνυµάτων Αποτύπωση εσωτερικών καταστάσεων των διεργασιών χαρακτηρισµός απαιτήσεων αποθήκευσης δεδοµένων Ορισµός µεταβάσεων εναλλαγή καταστάσεων Τερµατισµός Ελεγχος Ορθότητας σύµφωνα µε το µοντέλο, πρόβληµα Ανάλυση απόδοσης Χαρακτηρισµός ανεκτηκότητας σε σφάλµατα Περιφορά Σκυτάλης / Κουπονιού LCR (ο αλγόριθµος των LeLann, Chang και Roberts) LeLannME (ο αλγόριθµος του LeLann) Πλυµµήρα FloodMax, OptFloodMax FloodSet Ενδιάµεσο Επίπεδο Συγχρονισµός Σταθεροποίηση Τυχαιοκρατικοί IR (ο αλγόριθµος των Itai και Rodeh) Υλοποίηση κατανεµηµένων αλγόριθµων Επιλογή τεχνολογικής πλατφόρµας Επιλογή τεχνολογίας υλοποίησης Αποτύπωση αρχικής γνώσης παραµέτρων εισόδου ορισµός εξωτερικών ενεργειών µε interfaces Ορισµός δοµών µηνυµάτων Υλοποίηση διεργασιών Προσθέτουµε κώδικα για την αποσφαλµάτωση και µέτριση απόδοσης Εκτέλεση της υλοποίησης σε πειραµατικό πλαίσιο προσοµοιωτής, εργαστηριακές εγκαταστάσεις µελέτη της συµπεριφοράς του συστήµατος σύµφωνα µε ελεγχόµενα σενάρια µέτρηση της πραγµατικής απόδοσης του συστήµατος αµεση επιβεβαίωση για την εφαρµοσιµότητα µιας λύσης στις πραγµατικές υφιστάµενες τεχνολογίες Υλοποίηση Αλγόριθµων Εκλογής Αρχηγού Πλατφόρµα TinyOS γλώσσα προγραµµατισµού nesc ύο τύποι δικτύων: ίκτυα ακτυλίου, Γενικά ίκτυα Τρείς αλγόριθµοι: LCR, FloodMax, OptFloodMax Ταυτόχρονη εκκίνηση διεργασιών. Ασύγχρονη εκτέλεση ϐηµάτων. εν είναι σαφές τι είναι ενα ϐήµα. Τα ϱολόγια των διεργασιών δεν ειναι συγχρονισµένα. ιαχείρηση συµβάντων λειτουργικού συστήµατος. Χρήση timer. Εκτέλεση γενικού αλγόριθµου σε ειδική τοπολογία. Απώλια µηνυµάτων. Απόκληση από τις ϑεωρητικές πολυπλοκότητες.

ιττή Προσέγγιση Κύκλος Θεωρητικής και Πειραµατικής Προσέγγισης Η κάθε προσέγγιση έχει ϑετικά και αρνητικά σηµεία: Η Θεωρητική µελέτη προσφέρει λύσεις που είναι αποδείξιµα σωστές, αποδοτικές... που µπορεί να µην είναι εφαρµόσιµες ή πολύ δύσκολο να προγραµµατιστούν Η πρακτική µελέτη αντιµετωπίζει άµεσα τα τεχνολογικά ϑέµατα... που µπορεί να µην είναι καινοτόµες και αποδοτικές σε µεγάλα συστήµατα Για να είµαστε αποτελεσµατικοί πρέπει να ακολουθήσουµε διττή προσέγγιση. Καταγραφή Υποθέσεων / Μοντέλου Αρχικές Υποθέσεις Εντοπισµός αρχικών υποθέσεων Μοντέλο Επικοινωνίας Τοπολογία ικτύου Σφάλµατα Γνώσεις διεργασιών Κατανόηση Προβλήµατος Χαρακτηρισµός Προβλήµατος Προσπαθούµε να περιγράψουµε το ΚΣ (όπου εµφανίζεται το πρόβληµα) Η περιγραφή γίνεται µε αφαιρετικό τρόπο οι αρχικές υποθέσεις Ενα πρόβληµα µπορεί να διαφοροποιηθεί αν αλλάξουν οι αρχικές υποθέσεις είτε να γίνει ποιο εύκολο, είτε ποιο δύσκολο ακόµα και τελείως διαφορετικό Προτού αρχίσουµε να εξετάζουµε το πρόβληµα πρέπει να καταγράψουµε όλες τις αρχικές υποθέσεις που γίνονται Πρέπει να κατανοήσουµε ακριβώς γιατί δίνεται µια αρχική υπόθεση

Μοντέλο Επικοινωνίας Τοπολογία ικτύου Σύγχρονο δίκτυο επικοινωνίας ή Ασύγχρονο δίκτυο επικοινωνίας ; Η πρώτη άσκηση αφορούσε το σύγχρονο µοντέλο Η δεύτερη άσκηση αφορούσε το ασύγχρονο µοντέλο Η πρώτη διαφορά είναι το ϑέµα συγχρονισµού στην εκτέλεση των ϐηµάτων Η ουσιαστική διαφορά είναι η χρονική απροσδιοριστία ως προς τους χρόνους εκτέλεσης των ϐηµάτων ως προς τους χρόνους ανταλλαγής µηνυµάτων Για την µελέτη της απόδοσης στα ασύγχρονα δίκτυα πρέπει να υποθέσουµε κάποια άνω όρια Η πολυπλοκότητα (χρονική ή µηνυµάτων) εκφράζεται πάντα µε ϐάση αυτών των ορίων Το δίκτυο µοντελοποιείται σύµφωνα µε ένα γράφηµα επικοινωνίας Κορυφές αντιστοιχούν στις διεργασίες Ακµές αντιστοιχούν στα κανάλια επικοινωνίας Ποιες είναι οι υποθέσεις για το γράφηµα επικοινωνίας ; Είναι ιδιαίτερης κατηγορίας (π.χ. δακτύλιος) ή είναι γενικό ; Κατευθυνόµενο ή µη-κατευθυνόµενο ; Είναι πλήρως συνδεδεµένο ; Γνωρίζουµε το πλήθος των κορυφών και των ακµών ; Πρέπει να κατανοήσουµε ακριβώς το δίκτυο η λύση µας µπορεί να είναι εντελώς λάθος Συνήθως τα προβλήµατα υποθέτουν ένα γενικό, µη-κατευθυνόµενο δίκτυο επικοινωνίας µε n διεργασίες και m κανάλια επικοινωνίας Μοντέλο Σφαλµάτων Αρχικές Γνώσεις ιεργασιών Υπάρχουν σφάλµατα στο σύστηµα ; Σφάλµατα στις διεργασίες Σφάλµατα στα κανάλια επικοινωνίας Τα σφάλµατα είναι παροδικά ; Γνωρίζουµε το πλήθος των σφαλµάτων που µπορούν να συµβούν κατά την εκτέλεση του αλγορίθµου ; Πρέπει να κατανοήσουµε ακριβώς το µοντέλο σφαλµάτων η λύση µας µπορεί να είναι εντελώς λάθος Η µελέτη της απόδοσης ίσως να πρέπει να γίνει σε σχέση µε το πλήθος σφαλµάτων Συνήθως τα προβλήµατα δεν κάνουν υποθέσεις σφαλµάτων τα µελετήσαµε στην 4η διάλεξη Τι γνωρίζουν οι διεργασίες για το σύστηµα ; Την τοπολογία Την διάµετρο Το πλήθος των διεργασιών Οι διεργασίες έχουν (ή δεν έχουν) µοναδικές ταυτότητες Υπάρχει µια διεργασία που την γνωρίζουν όλες οι άλλες (π.χ., u0) ίνεται είσοδος κάποια τιµή ακέραιος αριθµός iu σύµφωνα κάποιο σύνολο S Πρέπει να κατανοήσουµε ακριβώς γιατί δίνεται (ή δεν δίνεται) ένα κοµµάτι γνώσης

Ζητούµενο Πρόβληµα Αρχική Προσέγγιση Εχουµε κάποια διαίσθηση για την λύση ; Ποιο είναι το Ϲητούµενο ; Ποιο πρόβληµα ϑέλουµε να λύσουµε ; Τι ϑέλουµε να µάθουν οι διεργασίες ; Ταιριάζει σε κάποιο από τα προβλήµατα που έχουµε µελετήσει ; Πως διαφοροποιούνται οι αρχικές υποθέσεις ; Μήπως στις σηµειώσεις υποθέτουµε περισσότερη αρχική γνώση ; Απαιτείται ιδιαίτερη τοπολογία που στην συγκεκριµένη ερώτηση δεν δίνεται ; Πρέπει ο αλγόριθµος να τερµατίζει ; Εχουµε πάρει κάποια πρώτη απόφαση για την λύση που ϑα δώσουµε ; σκεφτείτε το ξανά! µήπως µας έχει ξεφύγει κάτι ; Σκιαγραφήστε την λύση ελέγχουµε αν συµφωνεί µε τις αρχικές υποθέσεις έχουµε χρησιµοποιήσει όλες τις πληροφορίες Είναι η λύση σωστή ; µπορούµε να επιχειρηµατολογήσουµε ; Ποια είναι η πολυπλοκότητα (χρονική, επικοινωνίας) ; Ποια είναι η ανεκτικότητα σε σφάλµατα ; Μήπως υπάρχει καλύτερη λύση ; Σχεδιασµός Λύσης Χρειάζεται να τρέξουµε κάποιο αλγόριθµο για να αποκτήσουµε κάποια πληροφορία ; εκλογή αρχηγού για να προκύψει µια µοναδική διεργασία (π.χ., u0) καταµέτρηση για να ϐρεθεί το πλήθος των διεργασιών (n) υπολογισµός διαµέτρου Αν το δίκτυο είναι γενικό απαιτείτε κάποια συγκεκριµένη τοπολογία ; χρειαζόµαστε ένα δένδρο / δακτύλιο ; συνήθως κάνει το πρόβληµα πιο εύκολο ή την λύση πιο αποδοτική Αποτύπωση γενικής ιδέας παράγραφος ποια είναι η ϐασική ιδέα ; τι κάνει ο αλγόριθµος ; γιατί είναι σωστός ; Αποτύπωση Λύσης Αναλυτική καταγραφή µεταβλητών σκοπός χρήση τύπος µεταβλητής αρχική τιµή Αναλυτική καταγραφή µηνυµάτων σκοπός χρήση περιεχόµενα µηνυµάτων Αρχικοποίηση συστήµατος δηµιουργία κάποιας συγκεκριµένης εικονικής τοπολογίας εκτέλεση αλγόριθµου (απόκτηση γνώσης) αρχικοποίηση µεταβλητών Βασικός γύρος εκτέλεσης Ειδικές περιπτώσεις Τερµατισµός Αλλες πληροφορίες

Σχεδιασµός Κατανεµηµένου Αλγόριθµου Ολοκληρωµένη Σχεδίαση. Σύντοµη Περιγραφή. Περιγραφή ιεργασιών µεταβλητές τύποι µηνυµάτων αρχικοποίηση 3. Βοηθητικοί Αλγόριθµοι 4. Βασικός Αλγόριθµος περιγραφή εκτέλεσης απλός / τυπικός γύρος εκτέλεσης ειδικές περιπτώσεις 5. Ψευδοκώδικα (αν υπάρχει χρόνος) 6. Ορθότητα Συζήτηση... Απόδειξη 7. Χρονική Πολυπλοκότητα Συζήτηση... Απόδειξη 8. Πολυπλοκότητα Μηνυµάτων Συζήτηση... Απόδειξη Requests For Comments Μία σειρά εγγράφων που γράφονται από τους σχεδιαστές των πρωτοκόλλων του ιαδικτύου. Κάθε ένα από τα οποία είναι γνωστό µε έναν αριθµό. Οι λεπτοµέρειες των πρωτοκόλλων επικοινωνίας του ιαδικτύου εκδόθηκαν σε αυτή τη σειρά. Η τακτική αποτελεί τη ϐάση της τεχνικής κατοχύρωσης µέσω εγγράφων του ιαδικτύου Περιλαµβάνει συζητήσεις και λεπτοµέρειες πρωτοκόλλων NTP Protocol: http://www.faqs.org/rfcs/rfc958.html Αντίγραφα µπορούν να αναζητηθούν στο www.ietf.org Συµπληρωµατική Ασκηση Α Συµπληρωµατική Ασκηση Β Θεωρείστε ένα σύγχρονο κατανεµηµένο σύστηµα µε n διεργασίες συνδεδεµένες µέσω ενός γενικού, µη-κατευθυνόµενου δικτύου µε m κανάλια επικοινωνίας, όπου κάθε διεργασία δεν γνωρίζει το σύνολο των διεργασιών, ούτε την τοπολογία του δικτύου. Κάθε διεργασία u δέχεται ως είσοδο έναν ακέραιο αριθµό iu. Σχεδιάστε έναν κατανεµηµένο αλγόριθµο που επιτρέπει στη διεργασία u0 να υπολογίσει τον µέγιστο αριθµό από αυτούς που έχουν δοθεί στις διεργασίες. Αναλύστε την χρονική πολυπλοκότητα και πολυπλοκότητα µηνυµάτων. Σχεδιάστε έναν αλγόριθµο για το πρόβληµα της αναζήτησης κατά ϐάθος σε σύγχρονα κατανεµηµένα συστήµατα, όπου το δίκτυο επικοινωνίας µπορεί να αναπαρασταθεί από ένα γενικό γράφηµα (µη-κατευθηνόµενο). Υποθέτουµε µια διεργασία u0 η οποία ξεκινάει την εκτέλεση του αλγορίθµου. Στο τέλος της εκτέλεσης του αλγορίθµου όλες οι διεργασίες γνωρίζουν τον γονέα τους στο δέντρο αναζήτησης κατά ϐάθος. Περιγράψτε τον αλγόριθµό σας, δώστε ψευδο-κώδικα και αναλύστε την χρονική πολυπλοκότητα και πολυπλοκότητα µηνυµάτων.

Συµπληρωµατική Ασκηση Γ Απάντηση στο πρώτο υπο-ερώτηµα Θεωρείστε ένα ασύγχρονο κατανεµηµένο σύστηµα µε n διεργασίες συνδεδεµένες µέσω ενός γενικού, µη-κατευθυνόµενου δικτύου µε m κανάλια επικοινωνίας, όπου κάθε διεργασία γνωρίζει τη διάµετρο του δικτύου. Για την εκποµπή ενός µηνύµατος M από µια διεργασία-ποµπό σε όλες τις άλλες διεργασίες του δικτύου, εκτελείται ο ακόλουθος αλγόριθµος: Η διεργασία-ποµπός επιλέγει µια τιµή T µεγαλύτερη ή ίση µε τη διάµετρο του δικτύου και στέλνει < M, T > σε όλους τους γείτονες της. Οταν µια διεργασία λάβει ένα µήνυµα < M, t >, αν t > 0, στέλνει το µήνυµα < M, t > σε όλους τους γείτονες της.. είξτε ότι κάθε διεργασία λαµβάνει το M σε χρόνο ανάλογο της απόστασής της από τη διεργασία-ποµπό.. Εστω ότι ο µέσος ϐαθµός του δικτύου επικοινωνίας είναι k (δηλ. µέσος αριθµός γειτόνων). Αναλύστε την πολυπλοκότητα µηνυµάτων για µια εκποµπή, σαν συνάρτηση των T και k. Θέλουµε να αποδείξουµε ότι κάθε διεργασία u του κατανεµηµένου δικτύου λαµβάνει το µήνυµα M ύστερα από χρόνο ανάλογο της απόστασής της από τη διεργασία ποµπό, έστω u0 (dist(u, u0)). Για το σκοπό αυτό, εισαγάγουµε το επόµενο λήµµα: Υστερα από r διαδοχικές εκποµπές του αρχικού µηνύµατος < M, T > και χρόνο r(l + d) από την πρώτη αποστολή, όπου 0 < r diam, το µήνυµα < M, T r + > έχει ϕτάσει στον κόµβο u, ο οποίος απέχει r ϐήµατα από τον ποµπό u0. Η απόδειξη γίνεται επαγωγικά ως προς την απόσταση r. Επαγωγική Βάση Επαγωγική Υπόθεση Επαγωγικό Βήµα Απάντηση στο δεύτερο υπο-ερώτηµα () Απάντηση στο δεύτερο υπο-ερώτηµα () εν υπάρχει κανένας περιορισµός στην προώθηση ενός µηνύµατος από τη διεργασία που το έλαβε προς τους γείτονές της. εν εξετάζεται το κανάλι από το οποίο εστάλη το µήνυµα, οπότε, αν µια διεργασία i στείλει ένα µήνυµα στη διεργασία u, τότε η διεργασία u ϑα προωθήσει το µήνυµα αυτό σε όλους τους γείτονές της συµπεριλαµβανοµένου του i. Η εκποµπή αυτή σταµατάει µόνο όταν ένα µήνυµα περάσει από T διεργασίες. Χρησιµοποιώντας, λοιπόν, την πληροφορία ότι ο µέσος ϐαθµός του δικτύου επικοινωνίας είναι k, συµπεραίνουµε τα ακόλουθα µέσω επαγωγής: Το µήνυµα < m, T > στέλνεται από τη διεργασία/ποµπό στις k γειτονικές διεργασίες της κατά µέσω όρο. Σύνολο: διεργασία k µηνύµατα = k µηνύµατα. Το µήνυµα < m, T > στέλνεται από τις k κατά µέσω όρο διεργασίες που έλαβαν το µήνυµα του προηγούµενου ϐήµατος στις k γειτονικές διεργασίες τους κατά µέσω όρο. Σύνολο: k διεργασίες k µηνύµατα = k µηνύµατα. Το µήνυµα < m, T > στέλνεται από τις k κατά µέσω όρο διεργασίες που έλαβαν το µήνυµα του προηγούµενου ϐήµατος στις k γειτονικές διεργασίες τους κατά µέσω όρο. Σύνολο: k διεργασίες k µηνύµατα = k 3 µηνύµατα. Επαγωγικά, χρησιµοποιώντας την ίδια λογική, το µήνυµα < m, 0 > στέλνεται από τις k T κατά µέσω όρο διεργασίες που έλαβαν το µήνυµα του προηγούµενου ϐήµατος στις k γειτονικές διεργασίες τους κατά µέσω όρο. Σύνολο: k T διεργασίες k µηνύµατα = k T+ µηνύµατα.

Απάντηση στο δεύτερο υπο-ερώτηµα () Συµπληρωµατική Ασκηση Αρα η πολυπλοκότητα µηνυµάτων σε µια εκποµπή είναι k T+ µηνύµατα κατά µέσω όρο. Χρησιµοποιώντας ασυµπτωτική ανάλυση, η πολυπλοκότητα µηνυµάτων είναι Θ(k T+ ). Εστω ασύγχρονο δίκτυο G που αποτελείτε απο δύο διεργασίες V = {u, v} συνδεδεµένες απο µια µη-κατευθυνόµενη ακµή uv. Σχεδιάστε έναν κατανεµηµένο αλγόριθµο που να λύνει το πρόβληµα της συντονισµένης επίθεσης υπό την παρουσία σ σφαλµάτων επικοινωνίας. Αποδείξτε την ορθότητα του αλγορίθµου σας. ώστε την χρονική πολυπλοκότητα και την πολυπλοκότητα µηνυµάτων του αλγόριθµου σας. Συµπληρωµατική Ασκηση Ε Θεωρείστε ένα σύγχρονο κατανεµηµένο σύστηµα µε n διεργασίες συνδεδεµένες µέσω ενός γενικού, µη-κατευθυνόµενου δικτύου µε m κανάλια επικοινωνίας, όπου κάθε διεργασία γνωρίζει τη δοµή του δικτύου. Κάθε διεργασία u δέχεται ως είσοδο µία τιµή iu από το σύνολο S, δηλ. iu S. Οι διεργασίες πρέπει να συµφωνήσουν σε µια κοινή τιµή εκτελώντας τον αλγόριθµο συναίνεσης FloodSet. Εστω ότι κατά την εκτέλεση του αλγόριθµου προκύπτουν σ σφάλµατα τερµατισµού. Επιτρέπουµε στον αλγόριθµο να εκτελεστεί για σ γύρους αντί για σ + γύρους.. Περιγράψτε ένα σενάριο όπου παραβιάζονται τα κριτήρια που διατυπώθηκαν για το πρόβληµα της συναίνεσης.. Ποιος είναι ο µεγαλύτερος αριθµός από διαφορετικές αποφάσεις που µπορεί να πάρουν οι διεργασίες που δεν παρουσιάζουν σφάλµα; Υποθέτουµε ένα δίκτυο από n διεργασίες, συνδεδεµένες από ένα µη-κατευθυνόµενο γράφηµα, όπου κάθε διεργασία γνωρίζει τη δοµή του γραφήµατος. Κάθε διεργασία u δέχεται ως είσοδο µία τιµή iu απο το σύνολο S, δηλ. iu S Ενας αλγόριθµος λύνει το πρόβληµα συναίνεσης εφόσον πληροί τις παρακάτω προδιαγραφές:. Συµφωνία: Κανένα Ϲεύγος διεργασιών δεν αποφασίζει διαφορετικές τιµές εξόδου, δηλ. u, v : ou ov. Εγκυρότητα: Αν όλες οι διεργασίες αρχίζουν µε την ίδια τιµή i S δηλ. u [, n] : iu = i, τότε η τιµή i είναι η µόνη πιθανή τελική απόφαση, δηλ. u [, n] : ou = i 3. Τερµατισµός: Ολες οι διαδικασίες τελικά αποφασίζουν

Συµπληρωµατική Ασκηση ΣΤ Αλγόριθµος Συναίνεσης FloodSet Κάθε διεργασία u [, n] διατηρεί µια λίστα lu µε τιµές εισόδου, η οποία αρχικά περιέχει ένα µόνο την τιµή εισόδου iu S της u, lu = {iu}. Σε κάθε γύρο, οι διεργασίες εκπέµπουν την λίστα l σε όλους τους γείτονες. Μόλις λάβουν µία λίστα lv απο κάποιον γείτονα v, την ενοποιούν µε την δικιά τους. Μετά απο σ + γύρους, αν η λίστα lu περιέχει µία µόνο τιµή ( lu = ) η διεργασία u αποφασίζει την τιµή που περιέχει η λίστα αλλιώς αποφασίζει την προκαθορισµένη τιµή p S. Το γράφηµα G είναι πλήρες Γνωρίζουν το συνολικό αριθµό σφαλµάτων σ Συµβολίζουµε µε lu(γ) την τιµή της λίστας lu που διατηρεί η διεργασία u τον γύρο γ Θεωρείστε ένα σύγχρονο κατανεµηµένο σύστηµα µε n διεργασίες συνδεδεµένες µέσω ενός πλήρως συνδεδεµένου δικτύου όπου παρουσιάζονται σφάλµατα κατά την αποστολή µηνυµάτων. Οι διεργασίες γνωρίζουν τη δοµή του δικτύου και δέχονται ως είσοδο µία τιµή iu απο το σύνολο S, δηλ. iu S. Οι διεργασίες του συστήµατος ϑέλουν να συναινέσουν σε µια µοναδική τιµή.. ιατυπώστε τις ϐασικές συνθήκες που πρέπει να πληροί ένας αλγόριθµος που λύνει το πρόβληµα συναίνεσης.. Σχεδιάστε έναν αλγόριθµο που να λύνει το πρόβληµα της συναίνεσης χωρις να κάνετε επιπλέον υποθέσεις για το δίκτυο, τα σφάλµατα και τις γνώσεις των διεργασιών πέρα από αυτές που έχουν διατυπωθεί παραπάνω. Αποδείξτε τους ισχυρισµούς σας. Παράδειγµα Συντονισµένη Επίθεση () Συντονισµένη Επίθεση ύο στρατηγοί διοικούν τον κόκκινο στρατό και τον πράσινο στρατό. Θέλουν να συντονίσουν την επίθεση κατά του µπλε στρατού. Εάν επιτεθούν µόνοι τους, ο µπλε στρατός ϑα τους νικήσει. Οι στρατηγοί πρέπει να συµφωνήσουν αν ϑα κάνουν µαζί επίθεση, ϐασισµένοι στις τοπικές τους εκτιµήσεις για την άποψη του άλλου στρατηγού Πρόβληµα συναίνεσης σε ένα σύστηµα µε n = διεργασίες Οι πιθανές τιµές εισόδου/εξόδου µπορεί να είναι ναι και όχι δηλ. S = { ναι, όχι } Θεωρούµε ότι οι δύο στρατηγοί συντονίζουν την επίθεση όταν ικανοποιούνται οι τρεις συνθήκες:. Συµφωνία: Οι στρατηγοί u, v παίρνουν την ίδια απόφαση, δηλ. ou = ov. Εγκυρότητα: Αν η αρχική άποψη κάθε στρατηγού είναι όχι, τότε η µοναδική αποδεκτή απόφαση είναι το όχι Αν η αρχική άποψη κάθε στρατηγού είναι ναι, και δεν χαθεί κανένα µήνυµα, τότε η µοναδική αποδεκτή απόφαση είναι το ναι 3. Τερµατισµός: Οι δύο στρατηγοί τελικά αποφασίζουν

Συντονισµένη Επίθεση () Αλγόριθµος A για Συντονισµένη Επίθεση Συνθήκη Εγκυρότητας Αν η αρχική άποψη όλων των στρατηγων είναι όχι, τότε η µόνη δυνατή απόφαση είναι το όχι Αν η αρχική άποψη όλων των στρατηγων είναι ναι, και δεν χαθεί κανένα µήνυµα, τότε η µόνη δυνατή απόφαση είναι το ναι Η συνθήκη της εγκυρότητας είναι εύκολη Οι διεργασίες µπορούν να αποφασίσουν ναι ακόµα και αν µόνο µια διεργασία ξεκινήσει µε ναι Οι διεργασίες µπορούν να αποφασίσουν όχι ακόµα και αν όλες οι διεργασίες ξεκινήσουν µε ναι αλλά χαθεί ένα µήνυµα Εστω ότι υπάρχει ένας αλγόριθµος A λύνει το πρόβληµα της Συντονισµένης Επίθεσης υπό την παρουσία σφαλµάτων επικοινωνίας έχει αρχικές καταστάσεις για κάθε τιµή εισόδου, δηλ. u [, n], startu = για µια συγκεκριµένη ανάθεση αρχικών καταστάσεων και επιτυχής ανταλλαγή συγκεκριµένων µηνυµάτων, υπάρχει µόνο µια δυνατή εκτέλεση σε κάθε γύρο, όλες οι διεργασίες στέλνουν ένα µήνυµα µπορούν να στείλουν null Εξέταση αλγόριθµου A () Εξέταση αλγόριθµου A () Εστω µια εκτέλεση ɛ του A οι δύο διεργασίες ξεκινάνε µε αρχική τιµή ναι, δηλ. i = i = ναι όλα τα µηνύµατα παραδίδονται Σύµφωνα µε την συνθήκη τερµατισµού υπάρχει κάποιος γύρος γ όπου και οι δύο διεργασίες ϑα έχουν αποφασίσει Σύµφωνα µε την συνθήκη εγκυρότητας οι δύο διεργασίες αποφασίζουν ναι, δηλ. o = o = ναι Εστω η εκτέλεση ɛ, που προκύπτει από την ɛ του A, όπου µετά τον γύρο γ όλα τα µηνύµατα χάνονται Εκτέλεση ɛ διάγραµµα µηνυµάτων i = ναι i = ναι Σε ένα διάγραµµα µηνυµάτων o = ναι τα τόξα αντιπροσωπεύουν αποστολές µηνυµάτων που ολοκληρώνονται επιτυχώς οι αποστολές που αντιµετώπισαν σφάλµα επικοινωνίας δεν εµφανίζονται

Εξέταση αλγόριθµου A (3) Εστω η εκτέλεση ɛ που προκύπτει από την ɛ, όπου τον γύρο γ το µήνυµα του κόκκινου στρατηγού χάνεται Εκτέλεση ɛ διάγραµµα µηνυµάτων Εξέταση αλγόριθµου A (4) Εστω η εκτέλεση ɛ3 που προκύπτει από την ɛ, όπου τον γύρο γ το µήνυµα του πράσινου στρατηγού χάνεται Εκτέλεση ɛ 3 διάγραµµα µηνυµάτων i = ναι i = ναι i = ναι o = ναι i = ναι o = ναι Η απόφαση του πράσινου στρατηγού στο τέλος του γύρου γ µπορεί να είναι διαφορετική στην ɛ από την ɛ Οµως ο κόκκινος στρατηγός δεν το γνωρίζει η κατάσταση της στην ɛ είναι η ίδια µε στην ɛ Λόγω της συνθήκης συµφωνίας: η αποφασίζει το ίδιο µε την Η απόφαση του κόκκινου στρατηγού στο τέλος του γύρου γ µπορεί να είναι διαφορετική στην ɛ3 από την ɛ Οµως ο πράσινος στρατηγός δεν το γνωρίζει η κατάσταση της στην ɛ3 είναι η ίδια µε στην ɛ Λόγω της συνθήκης συµφωνίας: η αποφασίζει το ίδιο µε την Εξέταση αλγόριθµου A (5) Εξέταση αλγόριθµου A (5) Συνεχίζοντας µε τον ίδιο τρόπο, καταλήγουµε στην εκτέλεση ɛ, όπου τελικά δεν παραδίδεται κανένα µήνυµα Εκτέλεση ɛ διάγραµµα µηνυµάτων Συνεχίζοντας µε τον ίδιο τρόπο, καταλήγουµε στην εκτέλεση ɛ, όπου τελικά δεν παραδίδεται κανένα µήνυµα Εκτέλεση ɛ διάγραµµα µηνυµάτων i = ναι i = ναι i = ναι o = ναι i = ναι o = ναι Αφού ο γύρος γ είναι ένας πεπερασµένος αριθµός, σε πεπερασµένο αριθµό ϐηµάτων ϑα έχουµε την εκτέλεση ɛ Οι δύο στρατηγοί ξεκινούν µε αρχικές απόψεις ναι Αποφασίζουν και οι δύο ναι χωρίς να ανταλλάξουν κανένα µήνυµα Αφού ο γύρος γ είναι ένας πεπερασµένος αριθµός, σε πεπερασµένο αριθµό ϐηµάτων ϑα έχουµε την εκτέλεση ɛ Οι δύο στρατηγοί ξεκινούν µε αρχικές απόψεις ναι Αποφασίζουν και οι δύο ναι χωρίς να ανταλλάξουν κανένα µήνυµα

Εξέταση αλγόριθµου A (5) Εξέταση αλγόριθµου A (5) Συνεχίζοντας µε τον ίδιο τρόπο, καταλήγουµε στην εκτέλεση ɛ, όπου τελικά δεν παραδίδεται κανένα µήνυµα Εκτέλεση ɛ διάγραµµα µηνυµάτων Συνεχίζοντας µε τον ίδιο τρόπο, καταλήγουµε στην εκτέλεση ɛ, όπου τελικά δεν παραδίδεται κανένα µήνυµα Εκτέλεση ɛ διάγραµµα µηνυµάτων i = ναι i = ναι i = ναι o = ναι i = ναι o = ναι Αφού ο γύρος γ είναι ένας πεπερασµένος αριθµός, σε πεπερασµένο αριθµό ϐηµάτων ϑα έχουµε την εκτέλεση ɛ Οι δύο στρατηγοί ξεκινούν µε αρχικές απόψεις ναι Αποφασίζουν και οι δύο ναι χωρίς να ανταλλάξουν κανένα µήνυµα Αφού ο γύρος γ είναι ένας πεπερασµένος αριθµός, σε πεπερασµένο αριθµό ϐηµάτων ϑα έχουµε την εκτέλεση ɛ Οι δύο στρατηγοί ξεκινούν µε αρχικές απόψεις ναι Αποφασίζουν και οι δύο ναι χωρίς να ανταλλάξουν κανένα µήνυµα Εξέταση αλγόριθµου A (5) Εξέταση αλγόριθµου A (5) Συνεχίζοντας µε τον ίδιο τρόπο, καταλήγουµε στην εκτέλεση ɛ, όπου τελικά δεν παραδίδεται κανένα µήνυµα Εκτέλεση ɛ διάγραµµα µηνυµάτων Συνεχίζοντας µε τον ίδιο τρόπο, καταλήγουµε στην εκτέλεση ɛ, όπου τελικά δεν παραδίδεται κανένα µήνυµα Εκτέλεση ɛ διάγραµµα µηνυµάτων i = ναι i = ναι i = ναι o = ναι i = ναι o = ναι Αφού ο γύρος γ είναι ένας πεπερασµένος αριθµός, σε πεπερασµένο αριθµό ϐηµάτων ϑα έχουµε την εκτέλεση ɛ Οι δύο στρατηγοί ξεκινούν µε αρχικές απόψεις ναι Αποφασίζουν και οι δύο ναι χωρίς να ανταλλάξουν κανένα µήνυµα Αφού ο γύρος γ είναι ένας πεπερασµένος αριθµός, σε πεπερασµένο αριθµό ϐηµάτων ϑα έχουµε την εκτέλεση ɛ Οι δύο στρατηγοί ξεκινούν µε αρχικές απόψεις ναι Αποφασίζουν και οι δύο ναι χωρίς να ανταλλάξουν κανένα µήνυµα

Εξέταση αλγόριθµου A (5) Συνεχίζοντας µε τον ίδιο τρόπο, καταλήγουµε στην εκτέλεση ɛ, όπου τελικά δεν παραδίδεται κανένα µήνυµα Εκτέλεση ɛ διάγραµµα µηνυµάτων i = ναι Εξέταση αλγόριθµου A (6) Εστω η εκτέλεση ɛ που προκύπτει από την ɛ, όταν ο πράσινος στρατηγός έχει αρχική άποψη όχι Εκτέλεση ɛ διάγραµµα µηνυµάτων i = ναι i = ναι o = ναι i = όχι o = ναι Αφού ο γύρος γ είναι ένας πεπερασµένος αριθµός, σε πεπερασµένο αριθµό ϐηµάτων ϑα έχουµε την εκτέλεση ɛ Οι δύο στρατηγοί ξεκινούν µε αρχικές απόψεις ναι Αποφασίζουν και οι δύο ναι χωρίς να ανταλλάξουν κανένα µήνυµα Η απόφαση του πράσινου στρατηγού στο τέλος του γύρου γ µπορεί να είναι διαφορετική στην ɛ από την ɛ Οµως ο κόκκινος στρατηγός δεν το γνωρίζει η κατάσταση της είναι η ίδια στην ɛ από την ɛ Λόγω της συνθήκης συµφωνίας: η αποφασίζει το ίδιο µε την Εξέταση αλγόριθµου A (7) Εστω η εκτέλεση ɛ που προκύπτει από την ɛ, όταν ο κόκκινος στρατηγός έχει αρχική άποψη όχι Εκτέλεση ɛ διάγραµµα µηνυµάτων i = όχι i = όχι o = ναι Η απόφαση του κόκκινου στρατηγού στο τέλος του γύρου γ µπορεί να είναι διαφορετική στην ɛ από την ɛ Οµως ο πράσινος στρατηγός δεν το γνωρίζει η κατάσταση της είναι η ίδια στην ɛ από την ɛ Λόγω της συνθήκης συµφωνίας: η αποφασίζει το ίδιο µε την Εξέταση αλγόριθµου A (8) Ατοπο οι δύο στρατηγοί έχουν την ίδια αρχική άποψη ( όχι ) σύµφωνα µε την συνθήκης εγκυρότητας η µοναδική αποδεκτή απόφαση είναι το όχι Εκτέλεση ɛ διάγραµµα µηνυµάτων i = όχι i = όχι o = ναι Αρα ο αλγόριθµος A δεν λύνει το πρόβληµα της Συντονισµένης Επίθεσης

Αδυναµία Εύρεσης Λύσης Θεώρηµα Εστω σύγχρονο δίκτυο G που αποτελείτε απο δύο διεργασίες V = {u, v} συνδεδεµένες απο µια µη-κατευθυνόµενη ακµή uv. εν υπάρχει αλγόριθµος που να λύνει το πρόβληµα της συντονισµένης επίθεσης υπό την παρουσία σφαλµάτων επικοινωνίας. Βασικός περιορισµός στις δυνατότητες των κατανεµηµένων δικτύων Για να ξεπεραστεί πρέπει να κάνουµε πιο ισχυρό το µοντέλο Υποθέτουµε ότι ενας ϕραγµένος αριθµός µηνύµατα χάνονται Υποθέτουµε ότι τα µηνύµατα χάνονται µε πιθανότητα p Συµπληρωµατική Ασκηση Η Σχεδιάστε έναν αλγόριθµο που λύνει το πρόβληµα της εκλογής αρχηγού σε γενικό µη κατευθυνόµενο δίκτυο του οποίου η διάµετρος δεν είναι γνωστή στις διεργασίες. Κάθε διεργασία i έχει µοναδικό κωδικό ci. ώστε την χρονική πολυπλοκότητα και πολυπλοκότητα επικοινωνίας του αλγόριθµου σας. Για να ξεπεραστεί πρέπει να κάνουµε πιο ασθενές το πρόβληµα Επιτρέπουµε την παραβίαση της συνθήκης της συµφωνίας υπό ορισµένες συνθήκες Επιτρέπουµε την παραβίαση της συνθήκης της εγκυρότητας υπό ορισµένες συνθήκες Συµπληρωµατική Ασκηση Ι Εστω ένα ασύγχρονο δίκτυο από n διεργασίες, όπου κάθε διεργασία έχει µια µοναδική ταυτότητα και δεν γνωρίζει το σύνολο των διεργασιών. Σχεδιάστε έναν κατανεµηµένο αλγόριθµο που να λύνει το πρόβληµα της αναγνώρισης : κάθε διεργασία είναι ενήµερη για τις ταυτότητες όλων των άλλων διεργασιών. ώστε την χρονική πολυπλοκότητα και την πολυπλοκότητα µηνυµάτων του αλγόριθµου σας.