Εισαγωγή Υλισµικό Λογισµικό Αρχές σχεδίασης ιαφάνεια Κλιµάκωση Παρεχόµενες υπηρεσίες Μοντέλο πελάτη εξυπηρετητή Μοντέλο πελάτη εξυπηρετητή τριών επιπέδων Κατανοµή επεξεργασίας Κατανεµηµένα Συστήµατα 01-1
Υλισµικό Συγκεντρωτικά και κατανεµηµένα συστήµατα Εξελίξεις στους προσωπικούς υπολογιστές Εξελίξεις στα δίκτυα υπολογιστών υνατότητα σύνδεσης πολλών επεξεργαστών Συστήµατα πολυεπεξεργαστών Πολλοί επεξεργαστές µε κοινή µνήµη Κατάλληλοι για παράλληλη επεξεργασία Επεξεργαστής 1 Επεξεργαστής 2 Επεξεργαστής 3 Λεωφόρος Συστήµατος Κοινή Μνήµη Κατανεµηµένα Συστήµατα 01-2
Υλισµικό Μνήµη 1 Μνήµη 2 Μνήµη 3 Επεξεργαστής 1 Επεξεργαστής 2 Επεξεργαστής 3 ίκτυο ιασύνδεσης Συστήµατα πολύ-υπολογιστών Αυτόνοµοι υπολογιστές ιασύνδεση µέσω δικτύου Οµοιογενείς ή ετερογενείς µηχανές Κατανεµηµένα συστήµατα Ανεξάρτητοι υπολογιστές Οµοιογενείς ή ετερογενείς µηχανές Εικόνα ενιαίου (ενός µόνο) συστήµατος Κατανεµηµένα Συστήµατα 01-3
Λογισµικό Λειτουργικά συστήµατα πολυεπεξεργαστών Κοινός χώρος διευθύνσεων και κοινό ρολόι Προσθήκη µηχανισµών συγχρονισµού επεξεργαστών Υποστήριξη συγχρονισµού µέσω υλισµικού Περιορισµένη κλιµάκωση Κατάλληλα για παράλληλη επεξεργασία Λειτουργικά συστήµατα δικτύων Ανεξάρτητα οµοιογενή ή ετερογενή συστήµατα Προσθήκη µηχανισµών επικοινωνίας µέσω δικτύου εν παρέχουν την εικόνα ενός ενιαίου συστήµατος Περιορισµένες υπηρεσίες Κατάλληλα για (κατα)µερισµό πόρων Κατανεµηµένα Συστήµατα 01-4
Λογισµικό Εφαρµογή Εφαρµογή Εφαρµογή ΚΛΣ Επεξεργαστής 1 Επεξεργαστής 2 Επεξεργαστής 3 ίκτυο ιασύνδεσης Κατανεµηµένα λειτουργικά συστήµατα Κατάλληλα για οµοιογενή συστήµατα πολύ-υπολογιστών Εικόνα ενός µόνο συστήµατος Ίδιος πυρήνας σε όλες τις µηχανές Απόκρυψη κατανεµηµένης επεξεργασίας Πολύ διαφορετικά από τα συγκεντρωτικά συστήµατα εν γνώρισαν ποτέ µεγάλη επιτυχία Κατανεµηµένα Συστήµατα 01-5
Λογισµικό Εφαρµογή Εφαρµογή Εφαρµογή Ενδιάµεσο λογισµικό ΛΣ1 ΛΣ2 ΛΣ3 Επεξεργαστής 1 Επεξεργαστής 2 Επεξεργαστής 3 ίκτυο ιασύνδεσης Σύγχρονα κατανεµηµένα συστήµατα Αξιοποίηση βασικών δικτυακών υπηρεσιών Προσθήκη υπηρεσιών από ενδιάµεσο λογισµικό Παροχή πραγµατικά κατανεµηµένων υπηρεσιών Μερική εικόνα ενιαίου συστήµατος Μόνο συγκεκριµένες υπηρεσίες είναι κατανεµηµένες Κατανεµηµένα Συστήµατα 01-6
Γενικές απαιτήσεις Αρχέςσχεδίασης Ισχύουν για οποιοδήποτε σύστηµα Ευελιξία: ευκολία αλλαγής ή επέκτασης του συστήµατος Ανοιχτή υλοποίηση: διαφορετικοί προµηθευτές Επίδοση: υψηλή ταχύτητα διεκπεραίωσης διεργασιών Ειδικές απαιτήσεις Ισχύουν ειδικά για κατανεµηµένα συστήµατα ιαφάνεια: εικόνα ενός ενιαίου συστήµατος Κλιµάκωση: απεριόριστη αύξηση επεξεργαστών Αξιοπιστία: υψηλή διαθεσιµότητα ασφάλεια λειτουργίας ανοχή στα σφάλµατα Κατανεµηµένα Συστήµατα 01-7
ιαφάνεια Απόκρυψη της κατανοµής από τους χρήστες Είδη διαφάνειας Προσπέλασης: προσπέλαση πόρων µε ενιαίο τρόπο Τοποθεσίας: προσπέλαση πόρων χωρίς γνώση θέσης Μετανάστευσης: µετακίνηση πόρων χωρίς αλλαγή προσπέλασης Μετάθεσης: µετακίνηση πόρων κατά τη χρήση τους Αναπαραγωγής: πολλά αντίγραφα πόρων Ταυτοχρονισµού: παράλληλη χρήση του ίδιου πόρου Αποτυχίας: απόκρυψη αποτυχιών από το σύστηµα ιαφάνεια ή επίδοση; Μεγάλο κόστος για επίτευξη πλήρους διαφάνειας Αδυναµία απόκρυψης εγγενών περιορισµών Καθυστέρηση διάδοσης, αποτυχίες δικτύου Κατανεµηµένα Συστήµατα 01-8
Κλιµάκωση Κλιµάκωση µεγέθους: αύξηση µηχανών και χρηστών Όχι συγκεντρωτικές υπηρεσίες, δεδοµένα και αλγόριθµοι εν υπάρχει πουθενά πλήρης πληροφόρηση Αποφάσεις µόνο µε τοπικά στοιχεία Ανοχή σε αποτυχίες µηχανών εν υπάρχει καθολικό ρολόι Γεωγραφική κλιµάκωση: αύξηση αποστάσεων Καθυστέρηση διάδοσης σηµάτων Αντικατάσταση σύγχρονης επικοινωνίας µε ασύγχρονη Κατανοµή πόρων στο δίκτυο Αναπαραγωγή αντιγράφων σε διαφορετικές τοποθεσίες Ενταµίευση δεδοµένων σε κρυφές µνήµες Κατανεµηµένα Συστήµατα 01-9
Παρεχόµενεςυπηρεσίες Υπηρεσίες επικοινωνίας Υπηρεσίες επικοινωνίας υψηλού επιπέδου Επικοινωνία οµάδων διεργασιών Ασύγχρονη επικοινωνία µε ουρές µηνυµάτων Επικοινωνία µε ηλεκτρονικό ταχυδροµείο Υπηρεσίες εκτέλεσης Αποµακρυσµένη εκτέλεση εντολών Αποµακρυσµένη χρήση τερµατικών σταθµών Αποµακρυσµένη εκτέλεση διεργασιών Μετανάστευση διεργασιών Αποµακρυσµένη κλήση διαδικασιών Αποµακρυσµένη κλήση µεθόδων αντικειµένων Κατανεµηµένα Συστήµατα 01-10
Παρεχόµενεςυπηρεσίες Υπηρεσίες ονοµασίας Παροχή ενιαίου χώρου ονοµάτων Μετάφραση των ονοµάτων των πόρων σε διευθύνσεις Υπηρεσίες ευρετηρίου Αναζήτηση διεύθυνσης µε πρόσθετα κριτήρια Τύπος, γεωγραφική θέση, ιδιοκτήτης πόρου Υπηρεσίες εντοπισµού Τρέχουσα θέση κινούµενου πόρου Συνδυασµός µε υπηρεσία ονοµασίας ή ευρετηρίου Υπηρεσίες αρχείων Συνοδεύονται από υπηρεσίες ευρετηρίων Προσπέλαση σε αρχεία αποµακρυσµένων µηχανών Εξειδικευµένοι εξυπηρετητές ή απλοί σταθµοί εργασίας Ενιαίος ή ανεξάρτητος χώρος ονοµάτων Κατανεµηµένα Συστήµατα 01-11
Παρεχόµενεςυπηρεσίες Υπηρεσίες συναλλαγών Εκτέλεση δέσµης ενεργειών µε ατοµικό τρόπο Συγχρονισµός πολλών παράλληλων συναλλαγών Υπηρεσίες αντικειµένων Αποµακρυσµένα ή κατανεµηµένα αντικείµενα Αντιγραφή, µετανάστευση ή µεταβίβαση αντικειµένων Υπηρεσίες αναπαραγωγής Αναπαραγωγή και συγχρονισµός αντιγράφων δεδοµένων Αύξηση επίδοσης λόγω τοπικής προσπέλασης Αύξηση αξιοπιστίας λόγω υποκατάστασης πόρων Υπηρεσίες ασφαλείας Πιστοποίηση ταυτότητας ιαφύλαξη απορρήτου Ανάγκη συνεργασίας αυτόνοµων µηχανών Κατανεµηµένα Συστήµατα 01-12
Μοντέλοπελάτη εξυπηρετητή Αίτηση Πελάτης Εξυπηρετητής Απόκριση ίκτυο ιασύνδεσης Επικοινωνία διεργασιών µέσω δικτύου Μόνο µέσω αποστολής µηνυµάτων Κλήσεις send και receive Μοντέλο πελάτη-εξυπηρετητή Λογική αφαίρεση για την επικοινωνία µεταξύ διεργασιών Εξυπηρετητής: παρέχει υπηρεσίες σε πελάτες Πελάτης: ζητάει υπηρεσίες από εξυπηρετητές Κατανεµηµένα Συστήµατα 01-13
Μοντέλοπελάτη εξυπηρετητή Πρωτόκολλο πελάτη-εξυπηρετητή Αίτηση από πελάτη σε εξυπηρετητή Επεξεργασία αίτησης από εξυπηρετητή Απόκριση από εξυπηρετητή σε πελάτη Επικοινωνία σε τοπικά δίκτυα Αξιόπιστη επικοινωνία ε χρειάζονται συνδέσεις Επικοινωνία σε δίκτυα ευρείας περιοχής Αναξιόπιστη επικοινωνία Πιθανή απώλεια αιτήσεων ή αποκρίσεων Αναµετάδοση αιτήσεων, πιθανή επανάληψη επεξεργασίας Χρήση αξιόπιστων πρωτοκόλλων Απαιτούνται συνδέσεις Κατανεµηµένα Συστήµατα 01-14
Μοντέλοτριών επιπέδων Πελάτης Επίπεδο ιεπαφής Επίπεδο Επεξεργασίας Επίπεδο Αποθήκευσης Εξυπηρετητής ίκτυο ιασύνδεσης ιεπαφή: αλληλεπίδραση µε εφαρµογή Τερµατικό κειµένου ή πλήρης γραφική διεπαφή χρήστη Επεξεργασία: γέφυρα µεταξύ επιπέδων Εξαρτάται από τη συγκεκριµένη εφαρµογή Αντλεί στοιχεία και τα επεξεργάζεται κατάλληλα Κατανεµηµένα Συστήµατα 01-15
Μοντέλοτριών επιπέδων Αποθήκευση: διαχείριση δεδοµένων Ανεξάρτητη από το επίπεδο επεξεργασίας Μπορεί να χρησιµοποιηθεί από διαφορετικές εφαρµογές Σύστηµα αρχείων ή βάση δεδοµένων Πολλές φορές είναι κληρονοµηµένο σύστηµα ιεπαφή µόνο στον πελάτη Απλούστερη µέθοδος κατανοµής Μέρος διεπαφής στον εξυπηρετητή Έλεγχος διεπαφής κεντρικά Μέρος επεξεργασίας στον πελάτη Τοπική επεξεργασία δεδοµένων και αποτελεσµάτων Μέρος αποθήκευσης στον πελάτη Ενταµίευση σε κρυφή µνήµη Κατανεµηµένα Συστήµατα 01-16
Μοντέλοτριών επιπέδων Πελάτης Επίπεδο ιεπαφής Επίπεδο Επεξεργασίας ίκτυο ιασύνδεσης Επίπεδο Αποθήκευσης Εξυπηρετητής Επίπεδο Αποθήκευσης Εξυπηρετητής Επίπεδο Αποθήκευσης Εξυπηρετητής Οριζόντιακατανοµή Ένα λογικό καθήκον σε πολλές µηχανές Κατακόρυφη κατανοµή ιαφορετικά λογικά καθήκοντα σε διαφορετικές µηχανές Κατανεµηµένα Συστήµατα 01-17