Μέγεθος: px
Εμφάνιση ξεκινά από τη σελίδα:

Download ""

Transcript

1 Εισαγωγή Μοντέλο Βασικοί Αλγόριθµοι Γράφων

2 Κατανεµηµένα Συστήµατα Ένα κατανεµηµένο σύστηµα είναι µια συλλογή από αυτόνοµες διεργασίες οι οποίες έχουν τη δυνατότητα να επικοινωνούν µεταξύ τους. Με βάση τον γενικό αυτό ορισµό, κατανεµηµένα συστήµατα είναι: ένα VLSI chip ένας στενά συνδεδεµένος πολυεπεξεργαστής µε διαµοιραζόµενη µνήµη ένα τοπικό δίκτυο υπολογιστών το Internet

3 Εφαρµογές Unix: Μοντέλο client-server: αρχεία (filing), εκτυπωτές (printing) και άλλες Ι/Ο συσκευές, επικοινωνία ευρείας κλίµακας (wide-area communication), πιστοποίηση χρηστών (user authentication). Υποστήριξη ιαδεργασιακής Επικοινωνίας. Κατανεµηµένο Σύστηµα Αρχείων. Εµϖορικές Εφαρµογές Συστήµατα Κρατήσεων αεροπορικών θέσεων Τραπεζικά συστήµατα Συστήµατα αλυσίδων Super-Markets και άλλων καταστηµάτων ικτυακές Εφαρµογές - Internet Απεριόριστη δυνατότητα κλιµάκωσης Υποστήριξη εφαρµογών: ηλεκτρονικό ταχυδροµείο, netnews, gopher, www. Εφαρµογές Πολυµέσων Ήχος και εικόνα, video, εφαρµογές τηλεδιάσκεψης, εφαρµογές εικονικής πραγµατικότητας

4 Πλεονεκτήµατα Κατανεµηµένων έναντι Κεντρικοϖοιηµένων Συστηµάτων Πλεονεκτήµατα Κατανεµηµένων Συστηµάτων έναντι Ανεξάρτητων PCs

5 Ζητήµατα Υλικού SISD (Simple Instruction Simple Data): υπολογιστές µε µοναδική ροή εντολών και µοναδική ροή δεδοµένων Παραδοσιακοί µονοεϖεξεργαστικοί υϖολογιστές SIMD (Single Instruction Multiple Data): υπολογιστές µε µοναδική ροή εντολών και πολλαπλές ροές δεδοµένων Υϖολογιστές σε ϖαράθεση (array processors) µε µια µονάδα εντολών (instruction unit), η οϖοία διαβάζει µια εντολή και δίνει εντολή σε ϖολλές µονάδες δεδοµένων να την εκτελέσουν ϖαράλληλα, κάθε µια µε τα δικά της δεδοµένα. MIMD (Multiple Instruction Multiple Data): υπολογιστές µε πολλαπλές ροές εντολών και πολλαπλές ροών δεδοµένων. Οµάδα ανεξάρτητων εϖεξεργαστών, ο κάθε ένας αϖό τους οϖοίους έχει το δικό του δείκτη εντολών ϖρογράµµατος, ϖρόγραµµα και δεδοµένα.

6 MIMD Υϖολογιστές Πολυεπεξεργαστές (multiprocessors): µε διαµοιραζόµενη µνήµη Πολυυπολογιστές (multicomputers): χωρίς διαµοιραζόµενη µνήµη Στενά Συνδεδεµένες Μηχανές (Tightly Coupled) Η καθυστέρηση που υπάρχει όταν ένα µήνυµα αποστέλλεται από έναν υπολογιστή σε έναν άλλο είναι µικρή και ο ρυθµός µετάδοσης των δεδοµένων υψηλός. Παράδειγµα: ύο ολοκληρωµένα κυκλώµατα CPU που βρίσκονται στην ίδια τυπωµένη πλακέτα κυκλωµάτων (circuit board) και συνδέονται µέσω αποτυπωµένων στην πλακέτα αγωγών. Χαλαρά Συνδεδεµένες Μηχανές (Loosely Coupled) Η καθυστέρηση του µηνύµατος ανάµεσα στις µηχανές είναι συνήθως µεγάλη και ο ρυθµός µετάδοσης των δεδοµένων είναι χαµηλός. Οι πολυεπεξεργαστές τείνουν να είναι περισσότερο στενά συνδεδεµένοι από τους πολυυπολογιστές γιατί µπορούν να ανταλλάσσουν δεδοµένα σε χρόνους αντίστοιχους της ταχύτητας πρόσβασης στη µνήµη.

7 MIMD Υϖολογιστές

8 Βασικά Χαρακτηριστικά - Ζητήµατα Σχεδίασης ιαφάνεια Η ψευδαίσθηση πως η συλλογή από µηχανές που απαρτίζουν το κατανεµηµένο σύστηµα είναι απλώς ένα παραδοσιακό µονοεπεξεργαστικό σύστηµα διαµοιρασµού χρόνου. Είδη ιαφάνειας Access Transparency (Πρόσβασης): η πρόσβαση σε τοπικά και αποµακρυσµένα αντικείµενα γίνεται µέσω των ίδιων λειτουργιών. Location Transparency (Τοϖοθέτησης): η πρόσβαση αντικειµένων δεν απαιτεί γνώση της τοποθεσίας τους στο κατανεµηµένο σύστηµα. Concurrency Transparency (Ταυτοχρονισµού): δυνατότητα πολλών διεργασιών να εκτελούνται ταυτόχρονα χρησιµοποιώντας (ενδεχοµένως) κοινά δεδοµένα χωρίς παρεµβολές.

9 Είδη ιαφάνειας Replication Transparency (Οµοιοτυϖίας): επιτρέπει την ύπαρξη πολλαπλών στιγµιότυπων πληροφορίας στο σύστηµα χωρίς αυτό να είναι ορατό στο χρήστη. Failure Transparency (ευελιξίας): επιτρέπει την εκτέλεση προγραµµάτων και εφαρµογών ανεξάρτητα από την ύπαρξη σφαλµάτων στο λογισµικό ή στο υλικό του συστήµατος (και χωρίς να είναι ορατή η ύπαρξη σφαλµάτων στο χρήστη). Migration Transparency (µετανάστευσης): επιτρέπει την κίνηση αντικειµένων πληροφορίας στο σύστηµα χωρίς να είναι αυτό ορατό στο χρήστη ή στις εφαρµογές του. Performance transparency (αϖόδοσης): επιτρέπει την αναδιοργάνωση του συστήµατος προκειµένου να επιτευχθεί καλύτερη απόδοση. Scaling Transparency (κλιµάκωσης): επιτρέπει την επέκταση του συστήµατος ή των εφαρµογών του χωρίς να προκαλούνται αλλαγές στη δοµή του συστήµατος ή στους αλγορίθµους των εφαρµογών.

10 Βασικά Χαρακτηριστικά Ζητήµατα Σχεδίασης Αξιοϖιστία Πολλές φορές τα συστήµατα υπολογιστών παρουσιάζουν σφάλµατα. Ορισµός Leslie Lamport για κατανεµηµένο σύστηµα: «Ένα σύστηµα στο οϖοίο δεν µϖορώ να κάνω καµία δουλειά εϖειδή έχει καταρρεύσει κάϖοια µηχανή για την οϖοία δεν έχω ϖοτέ ακούσει τίϖοτα!» Όψεις Αξιοϖιστίας ιαθεσιµότητα: Ποσοστό χρόνου κατά το οποίο το σύστηµα είναι διαθέσιµο. Πλεονασµός: ύπαρξη αντιγράφων των κύριων µερών υλικού και λογισµικού. Ύϖαρξη οµοιοτύϖων Θετικό: µεγαλύτερη διαθεσιµότητα Αρνητικό: συνέπεια Ανεκτικότητα σε σφάλµατα (fault tolerance) Αποφυγή επιβάρυνσης του συστήµατος στη συνήθη κατάσταση!!!

11 Βασικά Χαρακτηριστικά Ζητήµατα Σχεδίασης Ικανότητα Κλιµάκωσης υνατότητα εύκολης επέκτασης του συστήµατος ή των εφαρµογών του. Βασική Αρχή Πρέπει να αποφεύγονται τα κεντρικοποιηµένα δοµικά τµήµατα, πίνακες και αλγόριθµοι. Οι αποκεντρικοποιηµένοι αλγόριθµοι έχουν τα εξής χαρακτηριστικά: Καµία µηχανή δεν έχει ολοκληρωµένη πληροφόρηση για την κατάσταση του συστήµατος. Οι µηχανές παίρνουν αποφάσεις βασιζόµενες µόνο στις τοπικά διαθέσιµες πληροφορίες. Η κατάρρευση µιας µηχανής δεν καταστρέφει τον αλγόριθµο. εν υπονοείται ότι υπάρχει καθολικό ρολόι.

12 Βασικά Χαρακτηριστικά Ζητήµατα Σχεδίασης Αϖόδοση Η ταχύτητα µε την οποία εκτελείται µια εφαρµογή σε ένα κατανεµηµένο σύστηµα θα πρέπει να είναι εν γένει καλύτερη από την αντίστοιχη εκτέλεσης της εφαρµογής σε ένα σύστηµα µε µοναδικό επεξεργαστή. Ταυτοχρονισµός (Concurrency) υνατότητα ταυτόχρονης εκτέλεσης διεργασιών. Παραδείγµατα Χρήστες που εκτελούν εντολές ταυτόχρονα ή αλληλεπιδρούν µε την εκτέλεση προγραµµάτων. Πολλοί εξυπηρετητές (servers) τρέχουν ταυτόχρονα απαντώντας αιτήµατα από διάφορους πελάτες (clients).

13 Περιοχές αϖό όϖου ϖροέρχονται κλασικά ϖροβλήµατα στον κατανεµηµένο υϖολογισµό Λειτουργικά Συστήµατα ίκτυα Υπολογιστών Πολυ-επεξεργαστικά συστήµατα Κατανεµηµένες βάσεις δεδοµένων Ανάπτυξη λογισµικού ανθεκτικού σε σφάλµατα Χαρακτηριστικά στα οϖοία οι κατανεµηµένοι αλγόριθµοι διαφέρουν Μέθοδος διαδιεργασιακής επικοινωνίας Μοντέλο χρονισµού Μοντέλο αποτυχιών Προβλήµατα που µελετώνται Ένας κατανεµηµένος αλγόριθµος µπορεί να συµπεριφέρεται µε διαφορετικό τρόπο σε διαφορετικές εκτελέσεις ακόµη και αν η είσοδος είναι ίδια. Οι λόγοι είναι ακόλουθοι: Πολλές διεργασίες µε διαφορετικές ταχύτητες εκτελούνται ταυτόχρονα, ξεκινώντας πιθανόν διαφορετικές χρονικές στιγµές. Άγνωστοι χρόνοι παράδοσης µηνυµάτων Άγνωστη σειρά παράδοσης µηνυµάτων Αποτυχίες διεργασιών και συνδέσµων

14 Μετρικά Πολυϖλοκότητας Χρόνος Μνήµη που απαιτείται από κάθε διεργασία Κόστος επικοινωνίας (αριθµός και µέγεθος µηνυµάτων, αριθµός και µέγεθος κοινών µεταβλητών) Αριθµός αποτυχηµένων συνιστωσών Μοντέλα Χρονισµού Σύγχρονο Μοντέλο: η εκτέλεση εξελίσσεται σε σύγχρονους γύρους (rounds). Ασύγχρονο Μοντέλο: οι διάφορες διεργασίες εκτελούνται µε αυθαίρετη σειρά και µε αυθαίρετες ταχύτητες. Σύστηµα διαµοιραζοµένης µνήµης Σύστηµα µεταβίβασης-µηνύµατος Μερικώς Σύγχρονο Μοντέλο: υπάρχουν κάποιοι περιορισµοί στην σχετικό χρονισµό των γεγονότων, αλλά δεν είναι τόσο αυστηροί ώστε η εκτέλεση να εξελίσσεται σε γύρους (όπως στο σύγχρονο µοντέλο). Π.χ., µπορούν να υπάρχουν άνω και κάτω φράγµατα για το χρόνο εκτέλεσης κάθε εντολής.

15 Μοντέλα Αϖοτυχίας Αϖοτυχίες Κατάρρευσης: διεργασίες µπορούν να σταµατούν να εκτελούνται από κάποιο σηµείο και µετά χωρίς προειδοποίηση. Βυζαντινές Αϖοτυχίες: διεργασίες µπορούν να συµπεριφέρονται µε εντελώς αβίαστο τρόπο (δηλαδή να εκτελούν αυθαίρετο κώδικα που δεν σχετίζεται µε τον αλγόριθµο και ακόµη να είναι εχθρικές).

16 Συστήµατα Μεταβίβασης Μηνύµατος n: αριθµός διεργασιών/επεξεργαστών (p 0,, p n-1 ) Κάθε διεργασία µοντελοποιείται ως µια µηχανή καταστάσεων (state machine). Η κατάσταση π.χ., της διεργασίες p 0 αποτελείται από τις τοπικές της µεταβλητές, καθώς και από 6 πίνακες µηνυµάτων: inbuf 0 [1],, inbuf 0 [3]: µηνύµατα που έχουν σταλεί στην p 0, τα οποία ωστόσο η p 0 δεν έχει ακόµη επεξεργαστεί. outbuf 0 [1],, outbuf 0 [3]: µηνύµατα που έχουν σταλεί από την p0 σε κάθε µια από τις p 1, p 2, p 3, τα οποία δεν έχουν ακόµη παραδοθεί στις p 1, p 2, p 3. Κατάσταση ϖρόσβασης (access state) µιας διεργασίας είναι η κατάστασή της χωρίς τους πίνακες outbuf. Κάθε διεργασία έχει µια αρχική κατάσταση στην οποία όλοι οι inbuf πίνακες είναι κενοί. Σε κάθε βήµα που εκτελείται από την p 0, η p 0 επεξεργάζεται όλα τα µηνύµατα που βρίσκονται στους inbuf πίνακές της, η κατάστασή της p 0 αλλάζει, και αποστέλλεται το πολύ ένα µήνυµα προς κάθε γειτονική διεργασία.

17 Καθολικές Καταστάσεις (configurations) Μια καθολική κατάσταση είναι ένα διάνυσµα που περιέχει τις καταστάσεις όλων των διεργασιών (µια κατάσταση για κάθε διεργασία). Στις αρχικές καθολικές καταστάσεις, όλες οι διεργασίες είναι σε κάποια από τις αρχικές τους καταστάσεις. Γεγονότα σε συστήµατα µεταβίβασης µηνύµατος ύο είδη γεγονότων για κάθε διεργασία: Γεγονός αϖοστολής µηνύµατος (deliver event): µετακίνηση ενός µηνύµατος από τον outbuf του αποστολέα στον inbuf του παραλήπτη (del(k,j,m): αποστολή του µηνύµατος m από την p k στην p j ) Γεγονός υϖολογισµού (computational event): αλλαγή της τρέχουσας κατάστασης µιας διεργασίας εφαρµόζοντας τη συνάρτηση µετάβασης στην τρέχουσα κατάσταση πρόσβασής της (comp(i): η p i εκτελεί ένα βήµα)

18 Ασύγχρονες Εκτελέσεις Ένα τµήµα εκτέλεσης είναι µια ακολουθία (πεπερασµένη ή άπειρη) από καθολικές καταστάσεις και γεγονότα που εναλλάσσονται: C 0, e 1, C 1, e 2, C 2,, όπου κάθε e i είναι γεγονός και κάθε C i είναι καθολική κατάσταση, i 0. Για κάθε τριάδα (C i-1, e i, C i ), η C i είναι ίδια µε την C i-1 αλλά: Αν e i = del(k, j, m): ένα µήνυµα µεταφέρεται από κάποιον από τους πίνακες outbuf της p k σε κάποιον από τους πίνακες inbuf της p j. Αν e i = comp(j): εκτελείται ένα βήµα από την p j. Μια εκτέλεση είναι ένα τµήµα εκτέλεσης που όµως ξεκινά από µια αρχική καθολική κατάσταση. Σύγχρονες Εκτελέσεις Η ακολουθία από αλλεπάλληλες καθολικές καταστάσεις και γεγονότα πρέπει να µπορεί να χωριστεί σε σύγχρονους γύρους εκτέλεσης σε κάθε έναν από τους οποίους όλοι οι κόµβοι εκτελούν ένα βήµα. Ένας γύρος αποτελείται από την παράδοση όλων των εν αναµονή µηνυµάτων και από την εκτέλεση ενός βήµατος από κάθε διεργασία (µε οποιαδήποτε σειρά). Χρονοδιάγραµµα γεγονότων Το χρονοδιάγραµµα µιας εκτέλεσης είναι η ακολουθία από γεγονότα e 1, e 2, της εκτέλεσης.

19 Εϖιτρεϖτές Εκτελέσεις (admissible executions) Ιδιότητες Σιγουριάς (safety properties): πρέπει να ισχύουν για κάθε πεπερασµένο πρόθεµα µιας εκτέλεσης (υποδεικνύουν πως τίποτα κακό δεν έχει συµβεί µέχρι την τρέχουσα χρονική στιγµή) Ιδιότητες ενεργοϖοίησης (liveness propoerties): πρέπει να ισχύουν µία ή περισσότερες φορές µετά από κάποιο σηµείο της εκτέλεσης (υποδεικνύουν ότι κάτι καλό θα πρέπει να συµβεί κάποια χρονική στιγµή). Οι εκτελέσεις πρέπει να αποτελούνται από «σωστές ενέργειες». Οι «σωστές ενέργειες» ορίζονται βάσει των ιδιοτήτων σιγουριάς και ενεργοποίησης. ικαιοσύνη Σε µια άπειρου µήκους εκτέλεση, σε κάθε διεργασία πρέπει να δίνεται η δυνατότητα να εκτελέσει ένα ή περισσότερα βήµατα άπειρο αριθµό φορών. Κάθε φορά που αυτό συµβαίνει, η διεργασία είτε µπορεί να εκτελέσει ένα ακόµη βήµα (αν ο αλγόριθµός της της το επιτρέπει) ή όχι στην οποία περίπτωση δεν λαµβάνει χώρα καµία ενέργεια. Σε µια πεπερασµένη ακολουθία δεν θα πρέπει να υπάρχουν διεργασίες οι οποίες να µπορούν να εκτελέσουν και άλλα βήµατα.

20 Εϖιτρεϖτές Εκτελέσεις (admissible executions) Στα ασύγχρονα συστήµατα, µια εκτέλεση είναι επιτρεπτή (admissible) αν είναι δίκαιη και ισχύει πως οι διεργασίες έχουν παραλάβει και επεξεργαστεί όλα τα µηνύµατα που έχουν αποσταλεί (δεν υπάρχουν µηνύµατα στους πίνακες inbuf και outbuf στο τέλος της εκτέλεσης). Μετρικά Πολυϖλοκότητας Συστήµατα Μεταβίβασης Μηνύµατος Πολυϖλοκότητα εϖικοινωνίας (message complexity) Μέγιστος αριθµός µηνυµάτων που αποστέλλονται κατά τη διάρκεια της εκτέλεσης. Χρονική Πολυϖλοκότητα (time complexity) Μέγιστος χρόνος που απαιτείται µέχρι να επιτευχθεί τερµατισµός στην εκτέλεση. Υποθέτουµε ότι ο χρόνος που σπαταλιέται µεταξύ της αποστολής και της παραλαβής ενός µηνύµατος είναι το πολύ µια χρονική µονάδα. Με άλλα λόγια, εφαρµόζουµε κανονικοποίηση κάθε εκτέλεσης έτσι ώστε το η µεγαλύτερη καθυστέρηση µηνύµατος να είναι µια χρονική µονάδα. Η αυθαίρετη ανάµιξη των βηµάτων των διεργασιών εξακολουθεί να είναι δυνατή.

21 Παράδειγµα Εκϖοµϖή (broadcast) ϖολλαϖλών αϖοδεκτών δεδοµένου ενός δένδρου εϖικάλυψης µε ρίζα (rooted spanning tree) Ένας κόµβος p r θέλει να στείλει µήνυµα Μ σε όλους τους άλλους κόµβους. Περιγραφή: Ο p r αρχικά στέλνει το Μ στα παιδιά του Όταν ένας επεξεργαστής λαµβάνει το Μ από τον γονικό κόµβο, το στέλνει στα παιδιά του και τερµατίζει.

22 Κατάσταση µιας διεργασίας p i, i {0,, n-1} µια µεταβλητή parent i µια µεταβλητή children i µια µεταβλητή terminated i οι πίνακες inbuf και outbuf της διεργασίας Αρχική κατάσταση Όλες οι terminated µεταβλητές είναι false. Όλοι οι πίνακες inbuf είναι άδειοι για όλες τις διεργασίες. Οι πίνακες outbuf είναι άδειοι για όλες τις διεργασίες εκτός από την p r, αλλά outbuf r [j] περιέχει το Μ για όλα τα j children r. Πολυϖλοκότητες Πολυϖλοκότητα Εϖικοινωνίας; Χρονική Πολυϖλοκότητα;

23 Χρονική Πολυϖλοκότητα Σύγχρονο Μοντέλο Λήµµα: Κάθε διεργασία σε απόσταση t από την p r στο δένδρο επικάλυψης λαµβάνει το µήνυµα στον γύρο t. Αϖόδειξη: Με επαγωγή στην απόσταση t µιας διεργασίας από την p r. t = 1. Κάθε παιδί της p r λαµβάνει το µήνυµα από την p r στον πρώτο γύρο. Ας υποθέσουµε ότι ο ισχυρισµός ισχύει για t-1 1: Κάθε διεργασία σε απόσταση t-1 από την p r λαµβάνει το Μ στον γύρο t-1. Έστω ότι η p είναι µια διεργασία σε απόσταση t από την p r. Έστω ότι p είναι η γονική διεργασία στο δένδρο επικάλυψης. Τότε, η p είναι σε απόσταση t-1 από την p r. Από την επαγωγική υπόθεση, η p λαµβάνει το Μ στο γύρο t-1. Άρα, η p λαµβάνει από την p το Μ στον επόµενο γύρο.

24 Ασύγχρονο Μοντέλο Λήµµα: Κάθε διεργασία σε απόσταση t από την p r στο δένδρο επικάλυψης λαµβάνει το µήνυµα Μ µέχρι τη χρονική στιγµή t. Αϖόδειξη: t=1. Όλα τα παιδιά της p r λαµβάνουν το Μ µέχρι το τέλος της χρονικής στιγµής 1. Ας υποθέσουµε (επαγωγικά) ότι ο ισχυρισµός ισχύει για t-1 1. Έστω ότι p είναι µια διεργασία σε απόσταση t από την p r. Έστω ότι p είναι η γονική διεργασία στο δένδρο επικάλυψης. Τότε, η p είναι σε απόσταση t-1 από την p r. Από την επαγωγική υπόθεση, η p λαµβάνει το Μ µέχρι τη χρονική στιγµή t-1. Άρα, η p λαµβάνει από την p το Μ µέχρι τη χρονική στιγµή t. Θεώρηµα: Υπάρχει ασύγχρονος αλγόριθµος εκποµπής πολλαπλών αποδεκτών µε πολυπλοκότητα επικοινωνίας n-1 και χρονική πολυπλοκότητα d, όταν είναι γνωστό ένα δένδρο επικάλυψης του γράφου των διεργασιών µε βάθος d.

25 Convergecast (συλλογή σε έναν κόµβο ϖληροφοριών ϖου αϖοστέλλονται αϖό τους υϖόλοιϖους κόµβους) δεδοµένου ενός δένδρου εϖικάλυψης µε ρίζα Συλλογή στη ρίζα πληροφοριών που αποστέλλονται από τους υπόλοιπους κόµβους. O κόµβος i ξεκινά µε µια µεταβλητή x i, στην οποία είναι αποθηκευµένη η πληροφορία του. Ζητείται να αποσταλεί η µέγιστη από τις τιµές των µεταβλητών αυτών στη ρίζα. 2 βήµατα στην εκτέλεση του Convergcast αλγορίθµου Θεώρηµα: Υπάρχει ασύγχρονος convergecast αλγόριθµος µε πολυπλοκότητα επικοινωνίας n- 1 και χρονική πολυπλοκότητα d, όταν είναι γνωστό ένα δένδρο επικάλυψης του γράφου των διεργασιών µε βάθος d.

26 Εκϖοµϖή ϖολλαϖλών αϖοδεκτών χωρίς γνώση του δένδρου εϖικάλυψης Τι µϖορεί να γίνει όταν δεν γνωρίζουµε το δένδρο εϖικάλυψης; Αλγόριθµος Flooding Η p r στέλνει το Μ σε όλους του γείτονες του. Όταν κάποια διεργασία p i λαµβάνει το Μ για πρώτη φορά από κάποια άλλη διεργασία p j, το στέλνει σε όλους τους γείτονές της εκτός από την p j. 2 βήµατα στην εκτέλεση του αλγορίθµου flooding

27 Εκϖοµϖή ϖολλαϖλών αϖοδεκτών χωρίς γνώση του δένδρου εϖικάλυψης Πόσα µηνύµατα θα αϖοσταλούν συνολικά; Ποια είναι η χρονική ϖολυϖλοκότητα; Πολυϖλοκότητα εϖικοινωνίας: 2m-(n-1). Χρονική Πολυϖλοκότητα: D, όπου D η διάµετρος του γράφου των διεργασιών.

28 ηµιουργία ενός δένδρου εϖικάλυψης Πως θα µϖορούσε να τροϖοϖοιηθεί ο flooding ώστε να υϖολογίζεται ένα δένδρο εϖικάλυψης; Αλγόριθµος F-Spanning Tree H p r στέλνει το µήνυµά της σε όλους τους γείτονες της Όταν µια διεργασία p i λαµβάνει το Μ για πρώτη φορά από ενδεχόµενα περισσότερες από µία διεργασία, διαλέγει µια από αυτές να είναι η γονική της διεργασία (στο δένδρο επικάλυψης που θα προκύψει τελικά). Έστω ότι η διεργασία που επιλέγεται ως γονική είναι η p j. Η p i στέλνει µήνυµα τύπου <parent> στην p j και µήνυµα τύπου <already> σε όλες τις άλλες διεργασίες από τις οποίες έλαβε το Μ (για 1 η φορά). H p i στέλνει το Μ σε όλους τους γείτονές της και όταν λάβει απάντηση από αυτούς τερµατίζει.

29

30 2 βήµατα στην εκτέλεση του F-Spanning Tree Ορθότητα Γιατί δεν υϖάρχει κύκλος; Γιατί υϖάρχει µονοϖάτι αϖό τη ρίζα ϖρος κάθε άλλο κόµβο;

31 Τι συµβαίνει όταν το σύστηµα είναι σύγχρονο; Τι συµβαίνει όταν το σύστηµα είναι ασύγχρονο;

32

33 ηµιουργία ενός DFS (Depth-First-Search) ένδρου Εϖικάλυψης δεδοµένου του κόµβου ρίζα Άτυϖη Περιγραφή Κάθε κόµβος διατηρεί ένα σύνολο unexplored από «ανεξερεύνητους» γειτονικούς κόµβους και ένα σύνολο των κόµβων που θα αποτελέσουν παιδιά του στο δένδρο επικάλυψης που θα υπολογιστεί. Η ρίζα αρχικά στέλνει το Μ σε έναν από τους γείτονές της τον οποίο διαγράφει από το σύνολο unexplored. Όταν ένας κόµβος p i λάβει το Μ για πρώτη φορά από κάποιο κόµβο p j, ο p i σηµειώνει τον p j ως τον πατρικό του κόµβο στο δένδρο επικάλυψης. Στη συνέχεια, επιλέγει έναν από ανεξερεύνητους γείτονες του (δηλαδή έναν από τους κόµβους του unexplored) και του προωθεί το µήνυµα. Αν ο p i δεν λαµβάνει το Μ για πρώτη φορά, στέλνει ένα µήνυµα τύπου <already> στον αποστολέα του µηνύµατος και τον διαγράφει από το unexplored. Αν το unexplored είναι κενό, ο p i στέλνει ένα µήνυµα τύπου <parent> στον πατέρα του. Όταν ένας κόµβος λάβει µήνυµα τύπου <parent> ή <already>, στέλνει το µήνυµα σε έναν από ακόµη ανεξερεύνητους γείτονές του. Αν έχει λάβει το Μ ή µήνυµα τύπου <parent> ή <already> από όλους τους γείτονές του, ο κόµβος τερµατίζει.

34 ηµιουργία ενός DFS ένδρου Εϖικάλυψης δεδοµένου του κόµβου ρίζα

35 Παράδειγµα Εκτέλεσης του DFS-ST Αλγορίθµου unexplored 0 = {2} unexplored 1 = {0,2} unexplored 2 = {0,1,2} unexplored 3 = {2} parent 0 = nil parent 1 = nil parent 2 = nil parent 3 = nil children 0 = {} children 1 = {} children 2 = {} children 3 = {}

36 Ορθότητα Ανάλυση Λήµµα: Σε κάθε εκτέλεση του DFS-ST αλγορίθµου, κατασκευάζεται ένα DFS δένδρο επικάλυψης του γράφου διεργασιών µε ρίζα τον κόµβο p r που ξεκινά τον αλγόριθµο. Πολυϖλοκότητα Εϖικοινωνίας Λήµµα: Η πολυπλοκότητα επικοινωνίας του DFS-ST αλγορίθµου είναι O(m). Αϖόδειξη: Κάθε κόµβος (διεργασία) στέλνει το Μ το πολύ µια φορά σε κάθε µια από τις ακµές που πρόσκεινται σε αυτόν. Κάθε κόµβος που παραλαµβάνει το Μ αποστέλλει το πολύ ένα µήνυµα ως απάντηση σε κάθε µια από τις ακµές που πρόσκεινται σε αυτόν. Άρα συνολικά αποστέλλονται το πολύ 4m µηνύµατα (ή µήπως < 2m?).

37 Ανάλυση Χρονική Πολυϖλοκότητα Λήµµα: Η χρονική πολυπλοκότητα του αλγορίθµου DFS-ST είναι O(m). Αϖόδειξη Αφότου η ρίζα εκτελέσει το πρώτο της βήµα και πριν αυτή τερµατίσει, υπάρχει πάντα ακριβώς ένα µήνυµα υπό αποστολή. Σε κάθε ακµή δεν στέλνονται ποτέ περισσότερα από 2 µηνύµατα. Υπάρχουν m ακµές στο σύστηµα.

38 ηµιουργία ενός DFS ένδρου Εϖικάλυψης χωρίς να υϖάρχει καθορισµένος κόµβος ρίζα Έστω: p m : ο κόµβος µε το µεγαλύτερο αναγνωριστικό ανάµεσα στους κόµβους που ξυπνούν αυθόρµητα (και όχι επειδή έλαβαν κάποιο µήνυµα) m: το αναγνωριστικό του p m Παρατηρήσεις χρήσιµες για την αϖόδειξη ορθότητας του αλγορίθµου: Κόµβοι που θα λάβουν µήνυµα τύπου <leader> µε αναγνωριστικό m δεν θα απορρίψουν το µήνυµα αφού δεν υπάρχει περίπτωση να έχουν λάβει άλλο µήνυµα µε µεγαλύτερο αναγνωριστικό. Οµοίως, µηνύµατα τύπου <already> µε αναγνωριστικό m δεν θα απορριφθούν λόγω λάθος αναγνωριστικού Επίσης, µηνύµατα τύπου <parent> µε αναγνωριστικό m δεν θα απορριφθούν λόγω λάθος αναγνωριστικού Τέλος, µηνύµατα µε αναγνωριστικό m δεν θα απορριφθούν επειδή κάποιος κόµβος µπορεί να έχει τερµατίσει.

39

40 Εκλογή Αρχηγού σε ακτύλιο

41 Το Πρόβληµα Εκλογής Αρχηγού Κάθε διεργασία πρέπει να αποφασίσει αν είναι ο αρχηγός ή όχι. Μία µόνο από τις διεργασίες θα πρέπει να αποφασίσει πως είναι ο αρχηγός. Η διεργασία αρχηγός µπορεί να είναι υπεύθυνη για το συγχρονισµό µελλοντικών δραστηριοτήτων στο σύστηµα: επανα-δηµιουργία του αναγνωριστικού επαναφορά από αδιέξοδο να αποτελέσει τη διεργασία-ρίζα στη δηµιουργία ενός δένδρου επικάλυψης

42 Το Πρόβληµα Εκλογής Αρχηγού Φορµαλιστικά: Υπάρχουν δύο είδη τερµατικών καταστάσεων για µια διεργασία, η τερµατική κατάσταση στην οποία η διεργασία έχει εκλεγεί αρχηγός (κατάσταση ισχύος) και η τερµατική κατάσταση που η διεργασία δεν είναι ο αρχηγός (κατάσταση µη-ισχύος). Εϖιτρεϖτές Εκτελέσεις: Κάθε διεργασία τελικά εισέρχεται σε µια τερµατική κατάσταση, ισχύος ή µη. Μόνο µια διεργασία, ο αρχηγός, µπαίνει σε τερµατική κατάσταση ισχύος.

43 ακτύλιοι Κάθε διεργασία γνωρίζει ποιος είναι ο αριστερός και ποιος ο δεξιός της γείτονας: 1: αριστερά ή σύµφωνα µε τους δείκτες του ρολογιού 2: δεξιά ή αντίθετα µε τους δείκτες του ρολογιού n: αριθµός διεργασιών στο σύστηµα

44 ακτύλιοι Οι διεργασίες συνήθως έχουν µοναδικά αναγνωριστικά (τα οποία µπορούν να χρησιµοποιηθούν κατά το σχεδιασµό αλγορίθµων). Αναγνωριστικό: αυθαίρετος ακέραιος (πιθανόν διαφορετικό από τα 0,.., n-1). Κάθε διεργασία p i έχει µια µεταβλητή id i που αποθηκεύει το αναγνωριστικό της (η µεταβλητή id i είναι µέρος της κατάστασης κάθε διεργασίας) Ανώνυµοι ακτύλιοι Οι διεργασίες δεν έχουν µοναδικά αναγνωριστικά.

45 Εκλογή Αρχηγού σε Ανώνυµους ακτύλιους Κάθε διεργασία στο σύστηµα έχει την ίδια µηχανή καταστάσεων. Αδυναµία Εϖίλυσης Προβλήµατος σε Σύγχρονους ακτύλιους ιαισθητικά: Η συµµετρία δεν µπορεί να καταστραφεί χωρίς την ύπαρξη κάποιας ασυµµετρίας των διεργασιών στην αρχή (π.χ., διαφορετικά αναγνωριστικά). Α: Αλγόριθµος R: ακτύλιος

46 Εκλογή Αρχηγού σε Ανώνυµους ακτύλιους Λήµµα: Σε κάθε γύρο k µιας εκτέλεσης του Α στον R, οι καταστάσεις όλων των διεργασιών είναι ίδιες στο τέλος του γύρου k. Αϖόδειξη: Με επαγωγή στο k. k =0. Όλες οι διεργασίες έχουν την ίδια αρχική κατάσταση. Υποθέτουµε ότι ο ισχυρισµός ισχύει επαγωγικά για k-1 0. Αποδεικνύουµε τον ισχυρισµό για k: Στον γύρο k-1, όλες οι διεργασίες στέλνουν το ίδιο µήνυµα m r στον δεξιό γείτονά τους και τον ίδιο µήνυµα m l στον αριστερό γείτονά τους. Στον γύρο k, όλες οι διεργασίες λαµβάνουν τα ίδια µηνύµατα. εδοµένου ότι όλες εκτελούν τον ίδιο αλγόριθµο, βρίσκονται όλες στην ίδια κατάσταση στο τέλος του γύρου k.

47 Ισχύει το αρνητικό αυτό αποτέλεσµα για ασύγχρονους δακτύλιους; Ισχύει το αρνητικό αυτό αποτέλεσµα αν το n είναι άγνωστο;

48 Ένας τέτοιος αλγόριθµος θα λειτουργούσε σωστά και σε σύγχρονους δακτύλιους. Άτοπο. Ένας τέτοιος αλγόριθµος µπορεί να θεωρηθεί ως σωστός αλγόριθµος που επιλύει το πρόβληµα όταν το n είναι γνωστό (απλά η γνώση αυτή του n δεν χρησιµοποιείται). Άτοπο.

49 Ασύγχρονοι ακτύλιοι Ένας αλγόριθµος ϖου ϖροκαλεί την αϖοστολή O(n 2 ) µηνυµάτων Ενέργειες κάθε διεργασίας p: Αποστολή του αναγνωριστικού του στα αριστερά. Όταν η p λάβει ένα αναγνωριστικό (από δεξιά) κάνει τα εξής: o αν είναι µεγαλύτερο από το δικό της, το προωθεί προς τα αριστερά o αν είναι µικρότερο από το δικό της, το αγνοεί (και δεν το προωθεί) o αν είναι ίσο µε το δικό της, αποφασίζει πως αυτή είναι ο αρχηγός στο σύστηµα και στέλνει ένα µήνυµα τερµατισµού προς τα αριστερά Όταν η p λάβει µήνυµα τερµατισµού, το προωθεί προς τα αριστερά και εισέρχεται σε τερµατική κατάσταση µη-ισχύος.

50 Ασύγχρονοι ακτύλιοι Ένας αλγόριθµος ϖου ϖροκαλεί την αϖοστολή O(n 2 ) µηνυµάτων Πολυϖλοκότητα Εϖικοινωνίας Καµιά διεργασία δεν στέλνει περισσότερα από n µηνύµατα. Υπάρχει εκτέλεση στην οποία αποστέλλονται Θ(n 2 ) µηνύµατα;

51 Ένας Αλγόριθµος ϖου ϖροκαλεί την αϖοστολή O(nlogn) µηνυµάτων k-γειτονιά µιας διεργασία p i : το σύνολο των διεργασιών που βρίσκονται σε απόσταση το πολύ k από την p i στο δακτύλιο (είτε προς τα αριστερά ή προς τα δεξιά). Περιγραφή Αλγορίθµου Λειτουργεί σε φάσεις. Στην k-οστή φάση, ένας επεξεργαστής προσπαθεί να γίνει ο προσωρινός αρχηγός της 2 k - γειτονιάς του. Μόνο οι επεξεργαστές που εκλέγονται αρχηγοί στην k-οστή φάση θα συνεχίσουν στην (k+1)-οστή φάση.

52 Ένας Αλγόριθµος ϖου ϖροκαλεί την αϖοστολή O(nlogn) µηνυµάτων Περιγραφή k-οστής Φάσης Κάθε διεργασία p i, που εκλέχθηκε προσωρινός αρχηγός στην (k-1)-οστή φάση, στέλνει µηνύµατα τύπου <probe> µε το αναγνωριστικό της σε όλους τους κόµβους στην 2 k - γειτονιά της. Μια διεργασία αγνοεί ένα µήνυµα τύπου <probe> (δεν το αναµεταδίδει), αν αυτό περιέχει ένα αναγνωριστικό που είναι µικρότερο από το δικό της. Όταν ένα µήνυµα τύπου <probe> φθάσει στην τελευταία διεργασία στη τρέχουσα γειτονιά, τότε αυτή η διεργασία στέλνει στην p i ένα µήνυµα τύπου <reply>. Αν η p i λάβει το <reply> και από τις δύο κατευθύνσεις, αποφασίζει πως είναι ο αρχηγός της 2 k -γειτονιάς της στη φάση k. Η διεργασία που θα λάβει το δικό της µήνυµα τύπου <probe>, τερµατίζει σε κατάσταση ισχύος (στέλνοντας µήνυµα τερµατισµού στις υπόλοιπες).

53 Ένα µήνυµα τύπου <probe> περιέχει ένα αναγνωριστικό id, τον αριθµό της τρέχουσας φάσης k, και έναν µετρητή d (του µήκους του µονοπατιού που έχει ακολουθηθεί). Ένα µήνυµα τύπου <reply> περιέχει id και τον αριθµό της τρέχουσας φάσης k.

54 Ανάλυση του Αλγορίθµου Εκλογής Αρχηγού ϖου αϖοστέλλει O(nlogn) µηνύµατα Λήµµα: Για κάθε k 1, ο αριθµός των επεξεργαστών που εκλέγονται αρχηγοί στη φάση k είναι το πολύ n/(2 k +1). Αϖόδειξη: ύο αρχηγοί της k-οστής φάσης θα πρέπει να έχουν ανάµεσά τους τουλάχιστον 2 k διεργασίες. Παρατηρήσεις Υπάρχει µόνο ένας νικητής µετά από τουλάχιστον log(n-1) φάσεις. Ο συνολικός αριθµός µηνυµάτων είναι: 5n + Sum_{k=1 to \ceil{log(n-1)}+1} 4*2 k *n/(2 k-1 +1) < 5n + 8n(logn+2) Θεώρηµα: Υπάρχει ασύγχρονος αλγόριθµος εκλογής αρχηγού του οποίου η πολυπλοκότητα επικοινωνίας είναι O(nlogn).

55 Σύγχρονοι ακτύλιοι Η µη-λήψη ενός µηνύµατος αποτελεί τώρα χρήσιµη πληροφορία. Αϖλός Αλγόριθµος µε ϖολυϖλοκότητα Εϖικοινωνίας Ο(n) Η διεργασία µε το µικρότερο id εκλέγεται αρχηγός. Ο αλγόριθµος δουλεύει σε φάσεις που κάθε µια αποτελείται από n γύρους. Στη φάση i, η διεργασία µε αναγνωριστικό i (αν υπάρχει), στέλνει µήνυµα που θα κάνει το γύρο του δακτύλιου και στη συνέχεια αποφασίζει πως είναι ο αρχηγός. Παράδειγµα Έστω n=5 και ελάχιστο αναγνωριστικό = 12. Στις πρώτες 11 φάσεις κανένα µήνυµα δεν αποστέλλεται. Στην αρχή της 12 ης φάσης, η διεργασία µε id=12 στέλνει ένα µήνυµα προς τα αριστερά. Κάθε επεξεργαστής που λαµβάνει το µήνυµα το προωθεί προς τα αριστερά. Μετά από n γύρους το µήνυµα έχει ληφθεί από όλες τις διεργασίες στο δακτύλιο. Η φάση τότε τελειώνει και η διεργασία µε id=12 εκλέγεται αρχηγός.

56 Σύγχρονοι ακτύλιοι Ένας αϖλός αλγόριθµος ϖου αϖαιτεί O(n) µηνύµατα Πολυϖλοκότητα Εϖικοινωνίας Ο(n): βέλτιστη!!! Χρονική Πολυϖλοκότητα Ο(n*x), όπου x είναι το µικρότερο αναγνωριστικό στο σύστηµα Ερωτήµατα Ποια είναι τα θετικά του αλγορίθµου; Ποια είναι τα αρνητικά του αλγορίθµου; Σε τι ο αλγόριθµος αυτός είναι καλύτερος αϖό όλους τους ασύγχρονους αλγορίθµους για το ϖρόβληµα εκλογής αρχηγού ϖου µελετήθηκαν; Πως το εϖιτυγχάνει αυτό;

57 Ένας ακόµη σύγχρονος αλγόριθµος εκλογής αρχηγού µε ϖολυϖλοκότητα εϖικοινωνίας O(n) Οι διεργασίες ξεκινούν τον αλγόριθµο είτε αυτογενώς (αυθόρµητα) σε κάποιο αυθαίρετο γύρο ή µε τη λήψη ενός µηνύµατος. Κάθε διεργασία που ξεκινά αυτογενώς θεωρείται ενεργή και στέλνει το µήνυµά της σε ένα γρήγορο µήνυµα (fast message) το οποίο ταξιδεύει µε ταχύτητα 1 ακµή/γύρο. Μια διεργασία που ξεκινά τον αλγόριθµο µε τη λήψη ενός µηνύµατος λειτουργεί µόνο ως αναµεταδότης µηνυµάτων (relay). Ένα γρήγορο µήνυµα γίνεται αργό όταν παραλαµβάνεται από την πρώτη ενεργή διεργασία. Ένα αργό µήνυµα, το οποίο προέρχεται από τη διεργασία i, καθυστερείται κατά 2 i -1 γύρους σε κάθε διεργασία που το παραλαµβάνει και στη συνέχεια µεταδίδεται στην επόµενη διεργασία προς τα αριστερά στο δακτύλιο. Μια διεργασία εκλέγεται αρχηγός, αν λάβει το δικό της µήνυµα.

58 Ένας ακόµη σύγχρονος αλγόριθµος εκλογής αρχηγού µε ϖολυϖλοκότητα εϖικοινωνίας O(n)

59 Ένας ακόµη σύγχρονος αλγόριθµος εκλογής αρχηγού µε ϖολυϖλοκότητα εϖικοινωνίας O(n) Λήµµα 1 Μόνο η διεργασία µε το µικρότερο αναγνωριστικό ανάµεσα στις ενεργές διεργασίες λαµβάνει το δικό της µήνυµα. Για να υπολογιστεί ο αριθµός µηνυµάτων που αποστέλλονται, κατηγοριοποιούµε τα µηνύµατα σε 3 κατηγορίες: Κατηγορία 1: Μηνύµατα 1 ης φάσης Κατηγορία 2: Μηνύµατα 2 ης φάσης που αποστέλλονται πριν το µήνυµα του µελλοντικού αρχηγού µπει στη 2 η φάση Κατηγορία 3: Μηνύµατα 3 ης φάσης που αποστέλλονται αφού το µήνυµα του µελλοντικού αρχηγού µπει στη 2 η φάση Λήµµα 2 Ο συνολικός αριθµός µηνυµάτων στην πρώτη κατηγορία είναι το πολύ n. Αϖόδειξη: Το πολύ ένα µήνυµα 1 ης φάσης µεταδίδεται από κάθε διεργασία.

60 Ένας ακόµη σύγχρονος αλγόριθµος εκλογής αρχηγού µε ϖολυϖλοκότητα εϖικοινωνίας O(n) Έστω r ο πρώτος γύρος στον οποίο κάποια διεργασία ξεκινά την εκτέλεση του αλγορίθµου και έστω p i µια από αυτές τις διεργασίες. Λήµµα 3 Αν η p είναι σε απόσταση k δεξιά από την p i, τότε το πρώτο µήνυµα 1 ης φάσης λαµβάνεται από την p το αργότερο ως τον γύρο r+k. Λήµµα 4 Ο συνολικός αριθµός µηνυµάτων κατηγορίας 2 είναι το πολύ n. Αϖόδειξη: Το µήνυµα του µελλοντικού αρχηγού µπαίνει στην 2 η φάση το πολύ µετά από n γύρους από όταν το πρώτο µήνυµα του αλγορίθµου αποστέλλεται. Κάθε µήνυµα <i> αποστέλλεται το πολύ n/2 i φορές. Χειρότερη Περίπτωση: Όλες οι διεργασίες συµµετέχουν και τα αναγνωριστικά είναι όσο το δυνατό µικρότερα. Ο αριθµός µηνυµάτων στην κατηγορία 2 είναι Sum_{i=1 to n-1} n/2 i n.

61 Ένας ακόµη σύγχρονος αλγόριθµος εκλογής αρχηγού µε ϖολυϖλοκότητα εϖικοινωνίας O(n) Λήµµα 5 Ο συνολικός αριθµός µηνυµάτων κατηγορίας 3 είναι το πολύ 2n. Αϖόδειξη Έστω p i ο µελλοντικός αρχηγός και p j µια άλλη ενεργή διαδικασία (p i < p j ). Το πολύ n * 2 idi γύροι απαιτούνται από το µήνυµα <id i > για να επιστρέψει στον p i µηνύµατα κατηγορίας 3 στέλνονται µόνο κατά τη διάρκεια n*2 idi γύρων. Το µήνυµα <id j > προωθείται το πολύ: n*2 idi / 2 idj = n / 2 idj-idi Ο συνολικός αριθµός µηνυµάτων που αποστέλλονται σε αυτή την κατηγορία είναι: Sum_{j=0 to n-1} n/2 idj-idi. Στη χειρότερη περίπτωση όλες οι διεργασίες είναι ενεργές και τα αναγνωριστικά είναι όσο το δυνατόν µικρότερα: Sum_{k=0 to n-1} n/2 k 2n.

Κατανεµηµένα Συστήµατα Ένα κατανεµηµένο σύστηµα είναι µια συλλογή από αυτόνοµες διεργασίες οι οποίες έχουν τη δυνατότητα να επικοινωνούν µεταξύ τους.

Κατανεµηµένα Συστήµατα Ένα κατανεµηµένο σύστηµα είναι µια συλλογή από αυτόνοµες διεργασίες οι οποίες έχουν τη δυνατότητα να επικοινωνούν µεταξύ τους. Εισαγωγή Μοντέλο Βασικοί Αλγόριθµοι Γράφων Παναγιώτα Φατούρου Κατανεµηµένος Υπολογισµός 1 Κατανεµηµένα Συστήµατα Ένα κατανεµηµένο σύστηµα είναι µια συλλογή από αυτόνοµες διεργασίες οι οποίες έχουν τη δυνατότητα

Διαβάστε περισσότερα

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

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

Διαβάστε περισσότερα

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

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

Διαβάστε περισσότερα

Τεχνολογικά Επιτεύγµατα. Πλεονεκτήµατα. Ορισµός Κατανεµηµένου Συστήµατος. Μειονεκτήµατα. E-03: Λειτουργικά Συστήµατα ΙΙ 6. Εαρινό Εξάµηνο 2005-06

Τεχνολογικά Επιτεύγµατα. Πλεονεκτήµατα. Ορισµός Κατανεµηµένου Συστήµατος. Μειονεκτήµατα. E-03: Λειτουργικά Συστήµατα ΙΙ 6. Εαρινό Εξάµηνο 2005-06 Τεχνολογικά Επιτεύγµατα Ε-03: Λειτουργικά Συστήµατα ΙΙ Εαρινό Εξάµηνο 2005-06 Ανάπτυξη ισχυρών µικροεπεξεργαστών ηµιουργία τοπικών δικτύων υψηλών ταχυτήτων «Εισαγωγή στα Κατανεµηµένα Λειτουργικά Συστήµατα»

Διαβάστε περισσότερα

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

Διάλεξη 1: Εισαγωγή στον Κατανεμημένο Υπολογισμό. ΕΠΛ 432: Κατανεμημένοι Αλγόριθμοι Διάλεξη 1: Εισαγωγή στον Κατανεμημένο Υπολογισμό ΕΠΛ 432: Κατανεμημένοι Αλγόριθμοι Τι θα δούμε σήμερα Τι είναι ένα Κατανεμημένο Σύστημα; Επικοινωνία, Χρονισμός, Σφάλματα Μοντέλο Ανταλλαγής Μηνυμάτων 1

Διαβάστε περισσότερα

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

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

Διαβάστε περισσότερα

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

Κατανεμημένα Συστήματα Ι Κατανεμημένα Συστήματα Ι Εκλογή αρχηγού και κατασκευή BFS δένδρου σε σύγχρονο γενικό δίκτυο Παναγιώτα Παναγοπούλου Περίληψη Εκλογή αρχηγού σε γενικά δίκτυα Ορισμός του προβλήματος Ο αλγόριθμος FloodMax

Διαβάστε περισσότερα

Εισαγωγή. Κατανεµηµένα Συστήµατα 01-1

Εισαγωγή. Κατανεµηµένα Συστήµατα 01-1 Εισαγωγή Υλισµικό Λογισµικό Αρχές σχεδίασης ιαφάνεια Κλιµάκωση Παρεχόµενες υπηρεσίες Μοντέλο πελάτη εξυπηρετητή Μοντέλο πελάτη εξυπηρετητή τριών επιπέδων Κατανοµή επεξεργασίας Κατανεµηµένα Συστήµατα 01-1

Διαβάστε περισσότερα

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

Αµοιβαίοςαποκλεισµός. Κατανεµηµένα Συστήµατα 03-1 Αµοιβαίοςαποκλεισµός Εισαγωγή Συγκεντρωτική προσέγγιση Κατανεµηµένη προσέγγιση Αλγόριθµος Lamport Αλγόριθµος Ricart-Agrawala Προσέγγιση µεταβίβασης σκυτάλης Αλγόριθµος LeLann Αλγόριθµος Raymond Αλγόριθµος

Διαβάστε περισσότερα

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

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

Διαβάστε περισσότερα

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

Κατανεμημένα Συστήματα Ι Εκλογή αρχηγού σε γενικά δίκτυα 20 Οκτωβρίου 2016 Παναγιώτα Παναγοπούλου Εκλογή αρχηγού σε γενικά δίκτυα Προηγούμενη διάλεξη Σύγχρονα Κατανεμημένα Συστήματα Μοντελοποίηση συστήματος Πρόβλημα εκλογής αρχηγού

Διαβάστε περισσότερα

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

Κατανεμημένα Συστήματα Ι Κατανεμημένα Συστήματα Ι Συναίνεση και Σφάλματα Διεργασιών Παναγιώτα Παναγοπούλου Περίληψη Συναίνεση με σφάλματα διεργασιών Το πρόβλημα Ο αλγόριθμος FloodSet Επικύρωση δοσοληψιών Ορισμός του προβλήματος

Διαβάστε περισσότερα

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

Ενδεικτικές Λύσεις 1ου Σετ Ασκήσεων Κ Σ Ι Ενδεικτικές Λύσεις 1ου Σετ Ασκήσεων Παναγιώτα Παναγοπούλου Άσκηση 1. Υποθέστε ότι οι διεργασίες ενός σύγχρονου κατανεμημένου συστήματος έχουν μοναδικές ταυτότητες (UIDs), γνωρίζουν ότι είναι συνδεδεμένες

Διαβάστε περισσότερα

Ασύγχρονο Σύστηµα ιαµοιραζόµενης Μνήµης Το σύστηµα περιέχει n διεργασίες p 0,, p n-1 και m καταχωρητές R 0,, R m-1. Κάθε διεργασία µοντελοποιείται ως

Ασύγχρονο Σύστηµα ιαµοιραζόµενης Μνήµης Το σύστηµα περιέχει n διεργασίες p 0,, p n-1 και m καταχωρητές R 0,, R m-1. Κάθε διεργασία µοντελοποιείται ως Αµοιβαίος Αϖοκλεισµός Παναγιώτα Φατούρου Κατανεµηµένα Συστήµατα 1 Ασύγχρονο Σύστηµα ιαµοιραζόµενης Μνήµης Το σύστηµα περιέχει n διεργασίες p 0,, p n-1 και m καταχωρητές R 0,, R m-1. Κάθε διεργασία µοντελοποιείται

Διαβάστε περισσότερα

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

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

Διαβάστε περισσότερα

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

Κατανεμημένα Συστήματα Ι Κατανεμημένα Συστήματα Ι Μοντέλο σύγχρονου κατανεμημένου δικτύου Εκλογή αρχηγού σε σύγχρονο δακτύλιο Παναγιώτα Παναγοπούλου Περίληψη Σύγχρονα Κατανεμημένα Συστήματα Μοντέλο Σφάλματα Πολυπλοκότητα Εκλογή

Διαβάστε περισσότερα

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

Εκλογή αρχηγού σε σύγχρονο δακτύλιο: Οι αλγόριθμοι LCR και HS. 1 Ο αλγόριθμος LCR (Le Lann, Chang, and Roberts) Κ Σ Ι Εκλογή αρχηγού σε σύγχρονο δακτύλιο: Οι αλγόριθμοι LCR και HS Παναγιώτα Παναγοπούλου 1 Ο αλγόριθμος LCR (Le Lann, Chang, and Roberts) Ο αλγόριθμος LCR είναι ένας αλγόριθμος εκλογής αρχηγού σε ένα

Διαβάστε περισσότερα

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

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

Διαβάστε περισσότερα

Αιτιώδεις Σχέσεις και Χρονισµός Παναγιώτα Φατούρου Κατανεµηµένα Συστήµατα 1 Η Σχέση Happens-Before (Συµβαίνει-ϖριν) Οι εκτελέσεις, ως ακολουθίες γεγονότων, καθορίζουν µια καθολική διάταξη σε αυτά. Ωστόσο

Διαβάστε περισσότερα

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

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

Διαβάστε περισσότερα

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

Διάλεξη 5: Κάτω Φράγμα για Αλγόριθμους Εκλογής Προέδρου. ΕΠΛ 432: Κατανεμημένοι Αλγόριθμοι Διάλεξη 5: Κάτω Φράγμα για Αλγόριθμους Εκλογής Προέδρου ΕΠΛ 432: Κατανεμημένοι Αλγόριθμοι Κάτω Φράγμα στον Αριθμό Μηνυμάτων Ένας οποιοσδήποτε αλγόριθμος εκλογής προέδρου Α ο οποίος 1. Δουλεύει σε ασύγχρονο

Διαβάστε περισσότερα

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

Κατανεμημένα Συστήματα Ι Συναίνεση με σφάλματα διεργασιών Κατανεμημένα Συστήματα Ι 5η Διάλεξη 10 Νοεμβρίου 2016 Παναγιώτα Παναγοπούλου Κατανεμημένα Συστήματα Ι 5η Διάλεξη 1 Συναίνεση με σφάλματα διεργασιών Προηγούμενη διάλεξη

Διαβάστε περισσότερα

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

Κατανεμημένα Συστήματα Ι Σύγχρονα Κατανεμημένα Συστήματα 13 Οκτωβρίου 2016 Παναγιώτα Παναγοπούλου Περίληψη 1 Σύγχρονα Κατανεμημένα Συστήματα 2 Το πρόβλημα εκλογής αρχηγού Ο αλγόριθμος LCR Ο αλγόριθμος HS 1 Σύγχρονα Κατανεμημένα

Διαβάστε περισσότερα

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

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

Διαβάστε περισσότερα

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

ιεργασίες και Επεξεργαστές στα Κατανεµηµένων Συστηµάτων ιεργασίες και Επεξεργαστές στα Κατανεµηµένων Συστηµάτων Μαρία Ι. Ανδρέου ΗΜΥ417, ΗΜΥ 663 Κατανεµηµένα Συστήµατα Χειµερινό Εξάµηνο 2006-2007 Τµήµα Ηλεκτρολόγων Μηχανικών & Μηχανικών Υπολογιστών Πανεπιστήµιο

Διαβάστε περισσότερα

Δροµολόγηση (Routing)

Δροµολόγηση (Routing) Δροµολόγηση (Routing) Περίληψη Flooding Η Αρχή του Βέλτιστου και Δυναµικός Προγραµµατισµός Dijkstra s Algorithm Αλγόριθµοi Δροµολόγησης Link State Distance Vector Δροµολόγηση σε Κινητά Δίκτυα Δροµολόγηση

Διαβάστε περισσότερα

7.3 Πρωτόκολλο TCP. 1. Το TCP πρωτόκολλο παρέχει υπηρεσίες προσανατολισµένες σε σύνδεση. Σ Λ

7.3 Πρωτόκολλο TCP. 1. Το TCP πρωτόκολλο παρέχει υπηρεσίες προσανατολισµένες σε σύνδεση. Σ Λ Ερωτήσεις 7.3 Πρωτόκολλο TCP 1. Τι είναι το τµήµα (segment) στο πρωτόκολλο TCP; Από ποια µέρη αποτελείται; 2. Για ποιο σκοπό χρησιµοποιείται ο Αριθµός ειράς στην επικεφαλίδα ενός segment TCP; 3. την περίπτωση

Διαβάστε περισσότερα

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

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

Διαβάστε περισσότερα

Αιτιώδεις Σχέσεις και Χρονισµός. Παναγιώτα Φατούρου Αρχές Κατανεµηµένου Υπολογισµού

Αιτιώδεις Σχέσεις και Χρονισµός. Παναγιώτα Φατούρου Αρχές Κατανεµηµένου Υπολογισµού Αιτιώδεις Σχέσεις και Χρονισµός Η Σχέση Happens-Before (Συµβαίνει-πριν) Οι εκτελέσεις, ως ακολουθίες γεγονότων, καθορίζουν µια καθολική διάταξη σε αυτά. Ωστόσο είναι δυνατό δύο υπολογιστικά γεγονότα από

Διαβάστε περισσότερα

Δρομολόγηση (Routing)

Δρομολόγηση (Routing) Δρομολόγηση (Routing) Περίληψη Flooding Η Αρχή του Βέλτιστου και Δυναμικός Προγραμματισμός ijkstra s Algorithm Αλγόριθμοi Δρομολόγησης Link State istance Vector Δρομολόγηση σε Κινητά Δίκτυα Δρομολόγηση

Διαβάστε περισσότερα

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

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

Διαβάστε περισσότερα

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

Ανοχή απέναντι σε Σφάλµατα Fault Tolerance Ανοχή απέναντι σε Σφάλµατα Fault Tolerance Μαρία Ι. Ανδρέου ΗΜΥ417, ΗΜΥ 663 Κατανεµηµένα Συστήµατα Χειµερινό Εξάµηνο 2006-2007 Τµήµα Ηλεκτρολόγων Μηχανικών & Μηχανικών Υπολογιστών Πανεπιστήµιο Κύπρου Βασικές

Διαβάστε περισσότερα

Βασικές έννοιες. Κατανεμημένα Συστήματα 1

Βασικές έννοιες. Κατανεμημένα Συστήματα 1 Βασικές έννοιες Κατανεμημένα Συστήματα 1 lalis@inf.uth.gr Ορισμός κατανεμημένου συστήματος Ένα σύστημα από ξεχωριστές ενεργές οντότητες (ονομάζονται «κόμβοι» ή «διεργασίες») που εκτελούνται ταυτόχρονα/ανεξάρτητα

Διαβάστε περισσότερα

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

Κατανεμημένα Συστήματα Ι Συναίνεση χωρίς την παρουσία σφαλμάτων Κατανεμημένα Συστήματα Ι 4η Διάλεξη 27 Οκτωβρίου 2016 Παναγιώτα Παναγοπούλου Κατανεμημένα Συστήματα Ι 4η Διάλεξη 1 Συναίνεση χωρίς την παρουσία σφαλμάτων Προηγούμενη

Διαβάστε περισσότερα

Ενότητα 9 Ξένα Σύνολα που υποστηρίζουν τη λειτουργία της Ένωσης (Union-Find)

Ενότητα 9 Ξένα Σύνολα που υποστηρίζουν τη λειτουργία της Ένωσης (Union-Find) Ενότητα 9 Ξένα Σύνολα που υποστηρίζουν τη (Union-Find) ΗΥ240 - Παναγιώτα Φατούρου 1 Ξένα Σύνολα που υποστηρίζουν τη λειτουργία της Ένωσης Έστω ότι S 1,, S k είναι ξένα υποσύνολα ενός συνόλου U, δηλαδή

Διαβάστε περισσότερα

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

Κατανεμημένα Συστήματα Ι Ασύγχρονα Κατανεμημένα Συστήματα Κατανεμημένα Συστήματα Ι 6η Διάλεξη 24 Νοεμβρίου 2016 Παναγιώτα Παναγοπούλου Κατανεμημένα Συστήματα Ι 6η Διάλεξη 1 Ασύγχρονα Κατανεμημένα Συστήματα Περίληψη 1 Ασύγχρονα

Διαβάστε περισσότερα

ΚΕΦΑΛΑΙΟ 1: Τα είδη των Δικτύων Εισαγωγή

ΚΕΦΑΛΑΙΟ 1: Τα είδη των Δικτύων Εισαγωγή ΚΕΦΑΛΑΙΟ 1: Τα είδη των Δικτύων 1.1. Εισαγωγή Γενικότερα δεν υπάρχει κάποια ταξινόμηση των πιθανών δικτύων κάτω από την οποία να ταιριάζουν όλα τα δίκτυα. Παρόλα αυτά η ταξινόμηση τους είθισται να γίνεται

Διαβάστε περισσότερα

ΕΠΙΚΟΙΝΩΝΙΕΣ ΔΕΔΟΜΕΝΩΝ ΚΑΙ ΤΕΧΝΟΛΟΓΙΕΣ INTERNET

ΕΠΙΚΟΙΝΩΝΙΕΣ ΔΕΔΟΜΕΝΩΝ ΚΑΙ ΤΕΧΝΟΛΟΓΙΕΣ INTERNET ΕΠΙΚΟΙΝΩΝΙΕΣ ΔΕΔΟΜΕΝΩΝ ΚΑΙ ΤΕΧΝΟΛΟΓΙΕΣ INTERNET Κεφάλαιο 4: Τεχνικές Μετάδοσης ΜΕΤΑΓΩΓΗ Τεχνική µεταγωγής ονομάζεται ο τρόπος µε τον οποίο αποκαθίσταται η επικοινωνία ανάµεσα σε δύο κόµβους με σκοπό την

Διαβάστε περισσότερα

Ασύγχρονο Σύστηµα ιαµοιραζόµενης Μνήµης Το σύστηµα περιέχει n διεργασίες p 0,, p n-1 και m καταχωρητές R 0,, R m-1. Κάθε διεργασία µοντελοποιείται ως

Ασύγχρονο Σύστηµα ιαµοιραζόµενης Μνήµης Το σύστηµα περιέχει n διεργασίες p 0,, p n-1 και m καταχωρητές R 0,, R m-1. Κάθε διεργασία µοντελοποιείται ως Αµοιβαίος Αϖοκλεισµός Παναγιώτα Φατούρου Κατανεµηµένα Συστήµατα 1 Ασύγχρονο Σύστηµα ιαµοιραζόµενης Μνήµης Το σύστηµα περιέχει n διεργασίες p 0,, p n-1 και m καταχωρητές R 0,, R m-1. Κάθε διεργασία µοντελοποιείται

Διαβάστε περισσότερα

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

Διάλεξη 17: Συμφωνία με Βυζαντινά Σφάλματα. ΕΠΛ 432: Κατανεμημένοι Αλγόριθμοι Διάλεξη 17: Συμφωνία με Βυζαντινά Σφάλματα ΕΠΛ 432: Κατανεμημένοι Αλγόριθμοι Βυζαντινά Σφάλματα Τι θα δούμε σήμερα Κάτω Φράγμα για Αλγόριθμους Συμφωνίας με Βυζαντινά Σφάλματα: n > 3f Αλγόριθμος Συμφωνίας

Διαβάστε περισσότερα

Παράλληλη Επεξεργασία Κεφάλαιο 7 ο Αρχιτεκτονική Συστημάτων Κατανεμημένης Μνήμης

Παράλληλη Επεξεργασία Κεφάλαιο 7 ο Αρχιτεκτονική Συστημάτων Κατανεμημένης Μνήμης Παράλληλη Επεξεργασία Κεφάλαιο 7 ο Αρχιτεκτονική Συστημάτων Κατανεμημένης Μνήμης Κωνσταντίνος Μαργαρίτης Καθηγητής Τμήμα Εφαρμοσμένης Πληροφορικής Πανεπιστήμιο Μακεδονίας kmarg@uom.gr http://eos.uom.gr/~kmarg

Διαβάστε περισσότερα

Αρχιτεκτονική Υπολογιστών

Αρχιτεκτονική Υπολογιστών Γιώργος Δημητρίου Ενότητα 11 η : Εισαγωγή σε Παράλληλες Αρχιτεκτονικές Παράλληλη Επεξεργασία Επίπεδο Παραλληλισμού Από εντολές έως ανεξάρτητες διεργασίες Οργανώσεις Παράλληλων Αρχιτεκτονικών Συμμετρικοί,

Διαβάστε περισσότερα

Συνεχής ροή πολυµέσων

Συνεχής ροή πολυµέσων Συνεχής ροή πολυµέσων Εισαγωγή ικτυακά πρωτόκολλα Πολυµέσα και δίκτυα Συνεχής ροή Ροή από εξυπηρετητές ιστοσελίδων Ροή από εξυπηρετητές µέσων Πρωτόκολλο RTSP Πρωτόκολλο RTP οµή πακέτων RTP Πρωτόκολλο RTCP

Διαβάστε περισσότερα

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

Απαντήσεις. Απάντηση. Απάντηση 6 η σειρά ασκήσεων Άλκης Γεωργόπουλος Α.Μ. 39 Αναστάσιος Κοντογιώργης Α.Μ. 43 Άσκηση 1. Απαντήσεις Η αλλαγή ενός ρολογιού προς τα πίσω µπορεί να προκαλέσει ανεπιθύµητη συµπεριφορά σε κάποια προγράµµατα.

Διαβάστε περισσότερα

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

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

Διαβάστε περισσότερα

h/2. Άρα, n 2 h/2-1 h 2log(n+1). Πως υλοποιούµε τη LookUp()? Πολυπλοκότητα?

h/2. Άρα, n 2 h/2-1 h 2log(n+1). Πως υλοποιούµε τη LookUp()? Πολυπλοκότητα? Κόκκινα-Μαύρα ένδρα (Red-Black Trees) Ένα κόκκινο-µαύρο δένδρο είναι ένα δυαδικό δένδρο αναζήτησης στο οποίο οι κόµβοι µπορούν να χαρακτηρίζονται από ένα εκ των δύο χρωµάτων: µαύρο-κόκκινο. Το χρώµα της

Διαβάστε περισσότερα

Ασύγχρονο Σύστηµα ιαµοιραζόµενης Μνήµης Το σύστηµα περιέχει n διεργασίες p 0,, p n-1 και m καταχωρητές R 0,, R m-1. Κάθε διεργασία µοντελοποιείται ως

Ασύγχρονο Σύστηµα ιαµοιραζόµενης Μνήµης Το σύστηµα περιέχει n διεργασίες p 0,, p n-1 και m καταχωρητές R 0,, R m-1. Κάθε διεργασία µοντελοποιείται ως Αµοιβαίος Αϖοκλεισµός Παναγιώτα Φατούρου Κατανεµηµένα Συστήµατα 1 Ασύγχρονο Σύστηµα ιαµοιραζόµενης Μνήµης Το σύστηµα περιέχει n διεργασίες p 0,, p n-1 και m καταχωρητές R 0,, R m-1. Κάθε διεργασία µοντελοποιείται

Διαβάστε περισσότερα

Μέγιστη ροή. Κατευθυνόμενο γράφημα. Συνάρτηση χωρητικότητας. αφετηρίακός κόμβος. τερματικός κόμβος. Ροή δικτύου. με τις ακόλουθες ιδιότητες

Μέγιστη ροή. Κατευθυνόμενο γράφημα. Συνάρτηση χωρητικότητας. αφετηρίακός κόμβος. τερματικός κόμβος. Ροή δικτύου. με τις ακόλουθες ιδιότητες Κατευθυνόμενο γράφημα Συνάρτηση χωρητικότητας 12 16 2 Ροή δικτύου Συνάρτηση αφετηρίακός κόμβος 13 1 με τις ακόλουθες ιδιότητες 4 14 9 7 4 τερματικός κόμβος Περιορισμός χωρητικότητας: Αντισυμμετρία: Διατήρηση

Διαβάστε περισσότερα

ιαδίκτυα & Ενδοδίκτυα Η/Υ

ιαδίκτυα & Ενδοδίκτυα Η/Υ ιαδίκτυα & Ενδοδίκτυα Η/Υ (Kεφ. 10) ΡΟΜΟΛΟΓΗΣΗ Χαρακτηριστικά Στρατηγικές ροµολόγησης Παραδείγµατα Βιβλίο Μαθήµατος: Επικοινωνίες Υπολογιστών & εδοµένων, William Stallings, 6/e, 2000. ΕΥ - κεφ.10 (2/3)

Διαβάστε περισσότερα

Λειτουργικά Συστήματα 7ο εξάμηνο, Ακαδημαϊκή περίοδος

Λειτουργικά Συστήματα 7ο εξάμηνο, Ακαδημαϊκή περίοδος ΕΘΝΙΚΟ ΜΕΤΣΟΒΙΟ ΠΟΛΥΤΕΧΝΕΙΟ ΣΧΟΛΗ ΗΛΕΚΤΡΟΛΟΓΩΝ ΜΗΧΑΝΙΚΩΝ KΑΙ ΜΗΧΑΝΙΚΩΝ ΥΠΟΛΟΓΙΣΤΩΝ ΤΟΜΕΑΣ ΤΕΧΝΟΛΟΓΙΑΣ ΠΛΗΡΟΦΟΡΙΚΗΣ ΚΑΙ ΥΠΟΛΟΓΙΣΤΩΝ ΕΡΓΑΣΤΗΡΙΟ ΥΠΟΛΟΓΙΣΤΙΚΩΝ ΣΥΣΤΗΜΑΤΩΝ http://www.cslab.ece.ntua.gr Λειτουργικά

Διαβάστε περισσότερα

Κεφάλαιο 3 Πολυπλεξία

Κεφάλαιο 3 Πολυπλεξία Κεφάλαιο 3 Πολυπλεξία Μάθημα 3.1: Μάθημα 3.2: Μάθημα 3.3: Πολυπλεξία επιμερισμού συχνότητας χρόνου Συγκριτική αξιολόγηση τεχνικών πολυπλεξίας Στατιστική πολυπλεξία Μετάδοση Δεδομένων Δίκτυα Υπολογιστών

Διαβάστε περισσότερα

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

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

Διαβάστε περισσότερα

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

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

Διαβάστε περισσότερα

Γενικές Αρχές. Τεχνολογία ικτύων Επικοινωνιών ΙΙ

Γενικές Αρχές. Τεχνολογία ικτύων Επικοινωνιών ΙΙ Τεχνολογία ικτύων Επικοινωνιών ΙΙ 7.1.1. Γενικές Αρχές 1. Τι ονοµάζεται επικοινωνιακό υποδίκτυο και ποιο είναι το έργο του; Το σύνολο όλων των ενδιάµεσων κόµβων που εξασφαλίζουν την επικοινωνία µεταξύ

Διαβάστε περισσότερα

Άπληστοι Αλγόριθµοι. Αλγόριθµοι & Πολυπλοκότητα (Χειµώνας 2011) Άπληστοι Αλγόριθµοι 1

Άπληστοι Αλγόριθµοι. Αλγόριθµοι & Πολυπλοκότητα (Χειµώνας 2011) Άπληστοι Αλγόριθµοι 1 Άπληστοι Αλγόριθµοι Αλγόριθµοι & Πολυπλοκότητα (Χειµώνας 2011) Άπληστοι Αλγόριθµοι 1 Άπληστοι Αλγόριθµοι... για προβλήµατα βελτιστοποίησης: Λειτουργούν σε βήµατα. Κάθε βήµα κάνει µια αµετάκλητη επιλογή

Διαβάστε περισσότερα

7.9 ροµολόγηση. Ερωτήσεις

7.9 ροµολόγηση. Ερωτήσεις 7.9 ροµολόγηση Ερωτήσεις 1. Να δώσετε τον ορισµό της δροµολόγησης; 2. Από τι εξαρτάται η χρονική στιγµή στην οποία λαµβάνονται οι αποφάσεις δροµολόγησης; Να αναφέρετε ποια είναι αυτή στην περίπτωση των

Διαβάστε περισσότερα

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

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

Διαβάστε περισσότερα

Πολυπύρηνοι επεξεργαστές Multicore processors

Πολυπύρηνοι επεξεργαστές Multicore processors Πολυπύρηνοι επεξεργαστές Multicore processors 1 Μετάβαση στους πολυπύρηνους(1) Απόδοση των µονοεπεξεργαστών 25% ετήσια βελτίωση της απόδοσης από το 1978 έως το 1986 Κυρίως από την εξέλιξη της τεχνολογίας

Διαβάστε περισσότερα

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

Υπολογιστικό Πρόβληµα Υπολογιστικό Πρόβληµα Μετασχηµατισµός δεδοµένων εισόδου σε δεδοµένα εξόδου. Δοµή δεδοµένων εισόδου (έγκυρο στιγµιότυπο). Δοµή και ιδιότητες δεδοµένων εξόδου (απάντηση ή λύση). Τυπικά: διµελής σχέση στις

Διαβάστε περισσότερα

Ενότητα 9 Ξένα Σύνολα που υποστηρίζουν τη λειτουργία της Ένωσης (Union-Find)

Ενότητα 9 Ξένα Σύνολα που υποστηρίζουν τη λειτουργία της Ένωσης (Union-Find) Ενότητα 9 (Union-Find) ΗΥ240 - Παναγιώτα Φατούρου 1 Έστω ότι S 1,, S k είναι ξένα υποσύνολα ενός συνόλου U, δηλαδή ισχύει ότι S i S j =, για κάθε i,j µε i j και S 1 S k = U. Λειτουργίες q MakeSet(X): επιστρέφει

Διαβάστε περισσότερα

Επικοινωνία με μηνύματα. Κατανεμημένα Συστήματα 1

Επικοινωνία με μηνύματα. Κατανεμημένα Συστήματα 1 Επικοινωνία με μηνύματα Κατανεμημένα Συστήματα 1 lalis@inf.uth.gr Επικοινωνία με ανταλλαγή μηνυμάτων Η επικοινωνία με μηνύματα είναι ο πιο ευέλικτος τρόπος αλληλεπίδρασης σε κατανεμημένα συστήματα πιο

Διαβάστε περισσότερα

ΚΕΦΑΛΑΙΟ 3: Τοπολογίες Δικτύων Εισαγωγή

ΚΕΦΑΛΑΙΟ 3: Τοπολογίες Δικτύων Εισαγωγή ΚΕΦΑΛΑΙΟ 3: Τοπολογίες Δικτύων 3.1. Εισαγωγή Υπάρχουν τέσσερις βασικοί τρόποι διασύνδεσης των μηχανημάτων που απαρτίζουν ένα δίκτυο: διασύνδεση διαύλου, αστέρα, δέντρου και δακτυλίου. Στις παραγράφους

Διαβάστε περισσότερα

Βασικές έννοιες. Κατανεμημένα Συστήματα 1

Βασικές έννοιες. Κατανεμημένα Συστήματα 1 Βασικές έννοιες Κατανεμημένα Συστήματα 1 lalis@inf.uth.gr Ορισμός κατανεμημένου συστήματος Ένα σύστημα από ξεχωριστές ενεργές οντότητες (ονομάζονται «κόμβοι» ή «διεργασίες») που εκτελούνται ταυτόχρονα/ανεξάρτητα

Διαβάστε περισσότερα

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

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

Διαβάστε περισσότερα

Εντοπισμός τερματισμού. Κατανεμημένα Συστήματα 1

Εντοπισμός τερματισμού. Κατανεμημένα Συστήματα 1 Εντοπισμός τερματισμού Κατανεμημένα Συστήματα 1 lalis@inf.uth.gr Μοντέλο συστήματος Μια ομάδα διεργασιών εκτελεί έναν υπολογισμό Κατάσταση διεργασίας: ενεργητική ή παθητική (ανάλογα με το αν εκτελεί μέρος

Διαβάστε περισσότερα

Ισορροπημένα Δένδρα. για κάθε λειτουργία; Ισορροπημένο δένδρο : Διατηρεί ύψος κάθε εισαγωγή ή διαγραφή

Ισορροπημένα Δένδρα. για κάθε λειτουργία; Ισορροπημένο δένδρο : Διατηρεί ύψος κάθε εισαγωγή ή διαγραφή Ισορροπημένα Δένδρα Μπορούμε να επιτύχουμε για κάθε λειτουργία; χρόνο εκτέλεσης Ισορροπημένο δένδρο : Διατηρεί ύψος κάθε εισαγωγή ή διαγραφή μετά από Περιστροφές x αριστερή περιστροφή από το x y α β y

Διαβάστε περισσότερα

Search and Replication in Unstructured Peer-to-Peer Networks

Search and Replication in Unstructured Peer-to-Peer Networks Search and Replication in Unstructured Peer-to-Peer Networks Presented in P2P Reading Group in 11/10/2004 Abstract: Τα µη-κεντρικοποιηµένα και µη-δοµηµένα Peer-to-Peer δίκτυα όπως το Gnutella είναι ελκυστικά

Διαβάστε περισσότερα

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

Κατανεμημένα Συστήματα Ι Κατανεμημένα Συστήματα Ι Παναγιώτα Παναγοπούλου Χριστίνα Σπυροπούλου 8η Διάλεξη 8 Δεκεμβρίου 2016 1 Ασύγχρονη κατασκευή BFS δέντρου Στα σύγχρονα συστήματα ο αλγόριθμος της πλημμύρας είναι ένας απλός αλλά

Διαβάστε περισσότερα

ιαδίκτυα & Ενδοδίκτυα Η/Υ

ιαδίκτυα & Ενδοδίκτυα Η/Υ ιαδίκτυα & Ενδοδίκτυα Η/Υ ΙΑ ΙΚΤΥΑΚΗ ΛΕΙΤΟΥΡΓΙΑ (Kεφ. 16) ΠΡΩΤΟΚΟΛΛΑ ΡΟΜΟΛΟΓΗΣΗΣ Αυτόνοµα Συστήµατα Πρωτόκολλο Συνοριακών Πυλών OSPF ΑΡΧΙΤΕΚΤΟΝΙΚΗ ΟΛΟΚΛΗΡΩΜΕΝΩΝ ΥΠΗΡΕΣΙΩΝ (ISA) Κίνηση ιαδικτύου Προσέγγιση

Διαβάστε περισσότερα

HY-486 Αρχές Κατανεμημένου Υπολογισμού Εαρινό Εξάμηνο

HY-486 Αρχές Κατανεμημένου Υπολογισμού Εαρινό Εξάμηνο HY-486 Αρχές Κατανεμημένου Υπολογισμού Εαρινό Εξάμηνο 2016-2017 Δέυτερη Προγραμματιστική Εργασία Προθεσμία παράδοσης: 19/6/2017 1. Γενική Περιγραφή Στην δεύτερη προγραμματιστική εργασία καλείστε να υλοποιήσετε

Διαβάστε περισσότερα

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

Διάλεξη 16: Πρόβλημα Συμφωνίας. ΕΠΛ 432: Κατανεμημένοι Αλγόριθμοι Διάλεξη 16: Πρόβλημα Συμφωνίας ΕΠΛ 432: Κατανεμημένοι Αλγόριθμοι Τι θα δούμε σήμερα Ορισμός του προβλήματος Συμφωνίας Αλγόριθμος Συμφωνίας με Σφάλματα Κατάρρευσης ΕΠΛ432: Κατανεµηµένοι Αλγόριθµοι 1 Πρόβλημα

Διαβάστε περισσότερα

Ανοχήβλαβών. Κατανεµηµένα Συστήµατα 19-1

Ανοχήβλαβών. Κατανεµηµένα Συστήµατα 19-1 Ανοχήβλαβών Εισαγωγή Πλεονασµός Ενεργή παραγωγή αντιγράφων Παθητική παραγωγή αντιγράφων Σύγχρονο πρωτόκολλο Ασύγχρονο πρωτόκολλο Επανόρθωση Ενεργητική ή παθητική; Κατανεµηµένη συµφωνία Πρόβληµα των δύο

Διαβάστε περισσότερα

Τη φυσική (MAC) διεύθυνση που δίνει ο κατασκευαστής του δικτυακού υλικού στις συσκευές του (π.χ. στις κάρτες δικτύου). Η περιοχή διευθύνσεων που

Τη φυσική (MAC) διεύθυνση που δίνει ο κατασκευαστής του δικτυακού υλικού στις συσκευές του (π.χ. στις κάρτες δικτύου). Η περιοχή διευθύνσεων που 7.7 Πρωτόκολλο ARP 1 ύο είδη διευθύνσεων: MAC - IP Τη φυσική (MAC) διεύθυνση που δίνει ο κατασκευαστής του δικτυακού υλικού στις συσκευές του (π.χ. στις κάρτες δικτύου). Η περιοχή διευθύνσεων που µπορεί

Διαβάστε περισσότερα

2 η Σειρά Ασκήσεων Data Link Layer

2 η Σειρά Ασκήσεων Data Link Layer HY335: Δίκτυα Υπολογιστών Χειμερινό Εξάμηνο 2017-2018 Διδάσκουσα: Μαρία Παπαδοπούλη Τμήμα Επιστήμης Υπολογιστών, Πανεπιστημίου Κρήτης 2 η Σειρά Ασκήσεων Data Link Layer Άσκηση 1 Αναφέρεται τα 4 επιθυμητά

Διαβάστε περισσότερα

for for for for( . */

for for for for( . */ Εισαγωγή Στον Προγραµµατισµό «C» Βρόχοι Επανάληψης Πανεπιστήµιο Πελοποννήσου Τµήµα Πληροφορικής & Τηλεπικοινωνιών Νικόλαος Δ. Τσελίκας Νικόλαος Προγραµµατισµός Δ. Τσελίκας Ι Ο βρόχος for Η εντολή for χρησιµοποιείται

Διαβάστε περισσότερα

Επαναληπτικές Ασκήσεις Μαθήματος

Επαναληπτικές Ασκήσεις Μαθήματος Επαναληπτικές Ασκήσεις Μαθήματος Ερώτηση: EAM1. Ποιο από τα παρακάτω χαρακτηριστικά δεν αποτελεί κριτήριο κατηγοριοποίησης δικτύων. Κλίμακα Τεχνολογία μετάδοσης Πλήθος τερματικών εντός του δικτύου Ερώτηση:

Διαβάστε περισσότερα

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

Διάλεξη 10: Αλγόριθμοι Αμοιβαίου Αποκλεισμού σε περιβάλλον ανταλλαγής μηνυμάτων. ΕΠΛ 432: Κατανεμημένοι Αλγόριθμοι Διάλεξη 10: Αλγόριθμοι Αμοιβαίου Αποκλεισμού σε περιβάλλον ανταλλαγής μηνυμάτων ΕΠΛ 432: Κατανεμημένοι Αλγόριθμοι Τι θα δούμε σήμερα Αλγόριθμος Χρήση Συντονιστή Αλγόριθμος του Lamport Αλγόριθμος LeLann:

Διαβάστε περισσότερα

7.11 Πρωτόκολλα Εφαρµογής. 7.11.2 Βασικές και Προηγµένες Υπηρεσίες ιαδικτύου. Ηλεκτρονικό Ταχυδροµείο. Τεχνολογία ικτύων Επικοινωνιών ΙΙ

7.11 Πρωτόκολλα Εφαρµογής. 7.11.2 Βασικές και Προηγµένες Υπηρεσίες ιαδικτύου. Ηλεκτρονικό Ταχυδροµείο. Τεχνολογία ικτύων Επικοινωνιών ΙΙ Τεχνολογία ικτύων Επικοινωνιών ΙΙ 7.11 Πρωτόκολλα Εφαρµογής 104. Αναφέρετε ονοµαστικά τις πιο χαρακτηριστικές εφαρµογές που υποστηρίζει η τεχνολογία TCP/IP οι οποίες είναι διαθέσιµες στο ιαδίκτυο 1. Ηλεκτρονικό

Διαβάστε περισσότερα

ιαδίκτυα & Ενδοδίκτυα Η/Υ

ιαδίκτυα & Ενδοδίκτυα Η/Υ ιαδίκτυα & Ενδοδίκτυα Η/Υ ΠΡΩΤΟΚΟΛΛΑ ΙΑ ΙΚΤΥΩΣΗΣ (Kεφ. 15) IPV6 ΠΟΛΛΑΠΛΗ ΑΠΟΣΤΟΛΗ ΙΡ ΠΡΟΒΛΗΜΑΤΑ επί του κεφ. 15 Βιβλίο Μαθήµατος: Επικοινωνίες Υπολογιστών & εδοµένων, William Stallings, 6/e, 2000. ΕΥ -

Διαβάστε περισσότερα

Εφαρµογές Πληροφορικής Υπολογιστών. Κεφάλαιο 3 Το υλικό του υπολογιστή

Εφαρµογές Πληροφορικής Υπολογιστών. Κεφάλαιο 3 Το υλικό του υπολογιστή Κεφάλαιο 3 Το υλικό του υπολογιστή Εισαγωγή Τµήµατα του Η/Υ καιοργάνωση Μονάδα Κεντρικής Μνήµης Κεντρική Μονάδα Επεξεργασίας (CPU) Μονάδα Εισόδου Εξόδου ίαυλοι Επικοινωνίας Εναλλακτικές αρχιτεκτονικές

Διαβάστε περισσότερα

ΗΥ486 - Αρχές Κατανεμημένου Υπολογισμού Εαρινό Εξάμηνο Δεύτερη Προγραμματιστική Εργασία

ΗΥ486 - Αρχές Κατανεμημένου Υπολογισμού Εαρινό Εξάμηνο Δεύτερη Προγραμματιστική Εργασία ΗΥ486 - Αρχές Κατανεμημένου Υπολογισμού Εαρινό Εξάμηνο 2015-2016 Δεύτερη Προγραμματιστική Εργασία Γενική περιγραφή Στη δεύτερη προγραμματιστική εργασία καλείστε να υλοποιήσετε ένα διομότιμο σύστημα (Peer-to-

Διαβάστε περισσότερα

Δίκτυα Υπολογιστών Firewalls. Χάρης Μανιφάβας

Δίκτυα Υπολογιστών Firewalls. Χάρης Μανιφάβας Δίκτυα Υπολογιστών Firewalls Χάρης Μανιφάβας 1 Επικοινωνία Βασίζεται στη μεταβίβαση μηνυμάτων (λόγω απουσίας διαμοιραζόμενης μνήμης) Απαιτείται συμφωνία φόρμας μηνυμάτων Πρότυπο Στόχος τυποποίησης = Συνεργασία

Διαβάστε περισσότερα

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

Αλγόριθμοι και Πολυπλοκότητα Αλγόριθμοι και Πολυπλοκότητα Ροή Δικτύου Δημήτρης Μιχαήλ Τμήμα Πληροφορικής και Τηλεματικής Χαροκόπειο Πανεπιστήμιο Μοντελοποίηση Δικτύων Μεταφοράς Τα γραφήματα χρησιμοποιούνται συχνά για την μοντελοποίηση

Διαβάστε περισσότερα

Λογισµικό (Software SW) Λειτουργικά Συστήµατα και ίκτυα

Λογισµικό (Software SW) Λειτουργικά Συστήµατα και ίκτυα Λογισµικό (Software SW) Λειτουργικά Συστήµατα και ίκτυα Μαζική επεξεργασία ή επεξεργασία κατά δέσµες (batch processing) Χώρος χρήστη Εργασίες (Jobs): Πρόγραµµα, δεδοµένα και οδηγίες Αποτελέσµατα Χώρος

Διαβάστε περισσότερα

Αποτίµησηκαθολικού κατηγορήµατος

Αποτίµησηκαθολικού κατηγορήµατος Αποτίµησηκαθολικού κατηγορήµατος Εισαγωγή Ιδιότητες καθολικών κατηγορηµάτων Αδιέξοδα Ανίχνευση αδιεξόδων Συγκεντρωτική ανίχνευση Ιεραρχική ανίχνευση Κατανεµηµένη ανίχνευση Επανόρθωση αδιεξόδων Κατανεµηµένος

Διαβάστε περισσότερα

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

Διάλεξη 18: Πρόβλημα Βυζαντινών Στρατηγών. ΕΠΛ 432: Κατανεμημένοι Αλγόριθμοι Διάλεξη 8: Πρόβλημα Βυζαντινών Στρατηγών ΕΠΛ 432: Κατανεμημένοι Αλγόριθμοι Ορισμός Προβλήματος Τι θα δούμε σήμερα Συνθήκες Συμφωνίας κάτω από Βυζαντινό Στρατηγό Πιθανοτικοί αλγόριθμοι επίλυσης Βυζαντινής

Διαβάστε περισσότερα

Παράδειγµα: Προσοµοίωση µιας ουράς FIFO Οι λειτουργίες που υποστηρίζονται από µια ουρά FIFO είναι: [enq(q,x), ack(q)] [deq(q), return(q,x)] όπου x είν

Παράδειγµα: Προσοµοίωση µιας ουράς FIFO Οι λειτουργίες που υποστηρίζονται από µια ουρά FIFO είναι: [enq(q,x), ack(q)] [deq(q), return(q,x)] όπου x είν Wait-free προσοµοιώσεις αυθαίρετων αντικειµένων Έχουµε δει ότι το πρόβληµα της οµοφωνίας δεν µπορεί να επιλυθεί µε χρήση µόνο read/write καταχωρητών. Πολλοί µοντέρνοι επεξεργαστές παρέχουν επιπρόσθετα

Διαβάστε περισσότερα

Λύση: Λύση: Λύση: Λύση:

Λύση: Λύση: Λύση: Λύση: 1. Ένας δίαυλος έχει ρυθµό δεδοµένων 4 kbps και καθυστέρηση διάδοσης 20 msec. Για ποια περιοχή µηκών των πλαισίων µπορεί η µέθοδος παύσης και αναµονής να έχει απόδοση τουλάχιστον 50%; Η απόδοση θα είναι

Διαβάστε περισσότερα

Μη κατευθυνόµενα γραφήµατα. Στοιχεία Θεωρίας Γραφηµάτων (1) Υπογραφήµατα.

Μη κατευθυνόµενα γραφήµατα. Στοιχεία Θεωρίας Γραφηµάτων (1) Υπογραφήµατα. Κατευθυνόµενα γραφήµατα Απλό κατευθυνόµενο Γράφηµα G είναι διατεταγµένο Ϲεύγος (V, E), µε: Στοιχεία Θεωρίας Γραφηµάτων (1) σύνολο κορυφών / κόµβων V, Ορέστης Τελέλης tllis@unipi.r Τµήµα Ψηφιακών Συστηµάτων,

Διαβάστε περισσότερα

ΙΚΤΥΑ ΕΠΙΚΟΙΝΩΝΙΩΝ. Ιωάννης Σταυρακάκης, Καθηγητής Password: edi

ΙΚΤΥΑ ΕΠΙΚΟΙΝΩΝΙΩΝ. Ιωάννης Σταυρακάκης, Καθηγητής  Password: edi ΙΚΤΥΑ ΕΠΙΚΟΙΝΩΝΙΩΝ Ιωάννης Σταυρακάκης, Καθηγητής ioannis@di.uoa.gr http://www.di.uoa.gr/~ioannis/courses.html Password: edi ίκτυα Επικ. - Κεφ. 1 ( Καθ. Ι. Σταυρακάκης, Τµήµα Πληροφ. & Τηλεπικ. - Ε.Κ.Π.Α.)

Διαβάστε περισσότερα

Επικοινωνία με μηνύματα. Κατανεμημένα Συστήματα 1

Επικοινωνία με μηνύματα. Κατανεμημένα Συστήματα 1 Επικοινωνία με μηνύματα Κατανεμημένα Συστήματα 1 lalis@inf.uth.gr Επικοινωνία με ανταλλαγή μηνυμάτων Η επικοινωνία με μηνύματα είναι ο πιο ευέλικτος τρόπος αλληλεπίδρασης σε κατανεμημένα συστήματα πιο

Διαβάστε περισσότερα

ΔΙΑΣΥΝΔΕΣΗ ΔΙΚΤΥΩΝ (INTERNETWORKING)

ΔΙΑΣΥΝΔΕΣΗ ΔΙΚΤΥΩΝ (INTERNETWORKING) ΔΙΑΣΥΝΔΕΣΗ ΔΙΚΤΥΩΝ (INTERNETWORKING) Α. Α. Οικονομίδης Πανεπιστήμιο Μακεδονίας Διασυνδεδεμένο δίκτυο διασύνδεση δικτύων που το καθένα διατηρεί την ταυτότητά του χρησιμοποιώντας ειδικούς μηχανισμούς διασύνδεσης

Διαβάστε περισσότερα

Ασκήσεις μελέτης της 4 ης διάλεξης. ), για οποιοδήποτε μονοπάτι n 1

Ασκήσεις μελέτης της 4 ης διάλεξης. ), για οποιοδήποτε μονοπάτι n 1 Οικονομικό Πανεπιστήμιο Αθηνών, Τμήμα Πληροφορικής Μάθημα: Τεχνητή Νοημοσύνη, 2016 17 Διδάσκων: Ι. Ανδρουτσόπουλος Ασκήσεις μελέτης της 4 ης διάλεξης 4.1. (α) Αποδείξτε ότι αν η h είναι συνεπής, τότε h(n

Διαβάστε περισσότερα

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

Γ. Κορίλη Αλγόριθµοι ροµολόγησης - Γ. Κορίλη Αλγόριθµοι ροµολόγησης http://www.seas.upenn.edu/~tcom50/lectures/lecture.pdf ροµολόγηση σε ίκτυα εδοµένων Αναπαράσταση ικτύου µε Γράφο Μη Κατευθυνόµενοι Γράφοι Εκτεταµένα έντρα Κατευθυνόµενοι

Διαβάστε περισσότερα

ΗΥ335 - Δίκτυα Υπολογιστών Χειμερινό εξάμηνο 2010-2011 Φροντιστήριο Ασκήσεις στο TCP

ΗΥ335 - Δίκτυα Υπολογιστών Χειμερινό εξάμηνο 2010-2011 Φροντιστήριο Ασκήσεις στο TCP ΗΥ335 - Δίκτυα Υπολογιστών Χειμερινό εξάμηνο 2010-2011 Φροντιστήριο Ασκήσεις στο TCP Άσκηση 1 η : Καθυστερήσεις Θεωρείστε μία σύνδεση μεταξύ δύο κόμβων Χ και Υ. Το εύρος ζώνης του συνδέσμου είναι 10Gbits/sec

Διαβάστε περισσότερα

Εγγυημένη ποιότητα υπηρεσίας

Εγγυημένη ποιότητα υπηρεσίας Εγγυημένη ποιότητα υπηρεσίας Απαιτήσεις ποιότητας υπηρεσίας Μηχανισμοί κατηγοριοποίησης Χρονοπρογραμματισμός Μηχανισμοί αστυνόμευσης Ενοποιημένες υπηρεσίες Διαφοροποιημένες υπηρεσίες Τεχνολογία Πολυμέσων

Διαβάστε περισσότερα

Εισαγωγή στην Πληροφορική

Εισαγωγή στην Πληροφορική Εθνικό Μετσόβιο Πολυτεχνείο Σχολή Αγρονόµων Τοπογράφων Μηχανικών Εισαγωγή στην Πληροφορική Αστροφυσικός Αναπλ. Καθηγητής ΕΜΠ romylos@survey.ntua.gr Λειτουργικά συστήµατα, διεργασίες και δροµολόγηση Σύνδεση

Διαβάστε περισσότερα

ΚΑΤΑΝΕΜΗΜΕΝΑ ΣΥΣΤΗΜΑΤΑ. Παράδοση Ασκήσεων Κεφάλαιο 2 Ασκήσεις 3,6,8,9,15,22,24,26. Γεωργόπουλος Άλκης Α.Μ.: 39 Κοντογιώργης Αναστάσιος A.M.

ΚΑΤΑΝΕΜΗΜΕΝΑ ΣΥΣΤΗΜΑΤΑ. Παράδοση Ασκήσεων Κεφάλαιο 2 Ασκήσεις 3,6,8,9,15,22,24,26. Γεωργόπουλος Άλκης Α.Μ.: 39 Κοντογιώργης Αναστάσιος A.M. ΚΑΤΑΝΕΜΗΜΕΝΑ ΣΥΣΤΗΜΑΤΑ Παράδοση Ασκήσεων Κεφάλαιο 2 Ασκήσεις 3,6,8,9,15,22,24,26 Γεωργόπουλος Άλκης Α.Μ.: 39 Κοντογιώργης Αναστάσιος A.M.: 43 Άσκηση 3 Μια αξιόπιστη multicast υπηρεσία επιτρέπει σε έναν

Διαβάστε περισσότερα

Κατανεµηµένασυστήµατα αρχείων

Κατανεµηµένασυστήµατα αρχείων Κατανεµηµένασυστήµατα αρχείων Θέµατα σχεδίασης ιεπαφή υπηρεσίας αρχείων και ευρετηρίων Ονόµατα και αναγνωριστικά Οργάνωση εξυπηρετητών Σηµασιολογία (κατα)µερισµού αρχείων Ενταµίευση αρχείων Συνέπεια συστήµατος

Διαβάστε περισσότερα

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

Καθολικέςκαταστάσεις. Ορισµοί Κατασκευή καθολικών καταστάσεων Παθητική στρατηγική Ενεργητική στρατηγική. Κατανεµηµένα Συστήµατα 04-1 Καθολικέςκαταστάσεις Ορισµοί Κατασκευή καθολικών καταστάσεων Παθητική στρατηγική Ενεργητική στρατηγική Κατανεµηµένα Συστήµατα 04-1 Ορισµοί Τοπικήιστορία διεργασίας p i Έστω ότι e ij είναι το γεγονός jτης

Διαβάστε περισσότερα