Κατανεμημένα Συστήματα: Θεωρία και Προγραμματισμός

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

Download "Κατανεμημένα Συστήματα: Θεωρία και Προγραμματισμός"

Transcript

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

2 Χρηματοδότηση Το παρόν εκπαιδευτικό υλικό έχει αναπτυχθεί στα πλαίσια του εκπαιδευτικού έργου του διδάσκοντα. Το έργο «Ανοικτά Ακαδημαϊκά Μαθήματα στο Οικονομικό Πανεπιστήμιο Αθηνών» έχει χρηματοδοτήσει μόνο τη αναδιαμόρφωση του εκπαιδευτικού υλικού. Το έργο υλοποιείται στο πλαίσιο του Επιχειρησιακού Προγράμματος «Εκπαίδευση και Δια Βίου Μάθηση» και συγχρηματοδοτείται από την Ευρωπαϊκή Ένωση (Ευρωπαϊκό Κοινωνικό Ταμείο) και από εθνικούς πόρους. 2

3 Άδειες Χρήσης Το παρόν εκπαιδευτικό υλικό υπόκειται σε άδειες χρήσης Creative Commons. Οι εικόνες προέρχονται από το βιβλίο «Κατανεμημένα Συστήματα με Java», Ι. Κάβουρας, Ι. Μήλης, Γ. Ξυλωμένος, Α. Ρουκουνάκη, 3 η έκδοση, 2011, Εκδόσεις Κλειδάριθμος. 3

4 Σκοποί ενότητας Εισαγωγή στην έννοια του πίνακα κατακερματισμού και την κατανεμημένη μορφής του. Εξοικείωση με τη σχεδίαση και την υλοποίηση του συστήματος Chord και του συστήματος Pastry. Κατανόηση της λειτουργίας του συστήματος πολυεκπομπής Scribe. 4

5 Περιεχόμενα ενότητας (1 από 2) Κατανεμημένος κατακερματισμός Το σύστημα Chord Αναζήτηση στο Chord Προσχώρηση στο Chord Αποχώρηση από το Chord 5

6 Περιεχόμενα ενότητας (2 από 2) Το σύστημα Pastry Δρομολόγηση στο Pastry Προσχώρηση/αποχώρηση στο Pastry Επίδοση του Pastry Το σύστημα Scribe

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

8 Κατανεμημένη αναζήτηση (1 από 3) Πρόβλημα εντοπισμού πόρων Δίνεται το όνομα ενός πόρου Ζητείται η διεργασία που έχει πρόσβαση σε αυτόν Εμφανίζεται σε πολλά κατανεμημένα συστήματα Κατανεμημένα συστήματα ονομασίας Το DNS (και το X.500) παρέχει ιεραρχικά ονόματα Οι εξυπηρετητές οργανώνονται και αυτοί ιεραρχικά Καλή λύση για το μοντέλο πελάτη-εξυπηρετητή Ακατάλληλη για το μοντέλο ομοτίμων 8

9 Κατανεμημένη αναζήτηση (2 από 3) Δίκτυα καταμερισμού αρχείων Κάθε κόμβος διαθέτει αρχεία προς ανάκτηση Τα αρχεία συνεισφέρονται από τις διεργασίες Το σύστημα επιτρέπει τον εντοπισμό των αρχείων Κατανεμημένα συστήματα αποθήκευσης Κάθε κόμβος λειτουργεί ως εξυπηρετητής αρχείων Τα αρχεία συνεισφέρονται από τους πελάτες Το σύστημα επιτρέπει τον εντοπισμό των αρχείων Κάθε αρχείο αποθηκεύεται σε πολλούς εξυπηρετητές 9

10 Κατανεμημένη αναζήτηση (3 από 3) Γενικό πρόβλημα στα συστήματα ομοτίμων Έστω ένα κλειδί k Παράδειγμα 1: το όνομα ενός αρχείου Παράδειγμα 2: όνομα και αριθμός ομάδας αρχείου Ποια διεργασία διαθέτει τα στοιχεία για το k; Παράδειγμα 1: ποιες διεργασίες γνωρίζουν που βρίσκεται; Παράδειγμα 2: ποιες διεργασίες αποθηκεύουν το αρχείο; Πώς μπορούμε να έχουμε αποδοτική αναζήτηση; 10

11 Κατακερματισμός (1 από ) Ευρετήρια (πίνακες) κατακερματισμού Το κλειδί k περνά από συνάρτηση h Το πεδίο τιμών είναι οι ακέραιοι από 0 έως m-1 Τα στοιχεία του k αποθηκεύονται στην h(k) Ο πίνακας κατακερματισμού έχει μέγεθος m θέσεις Στόχος: ομοιόμορφη κατανομή κλειδιών Κάθε θέση ιδανικά αντιστοιχεί σε ένα μόνο κλειδί 11

12 Κατακερματισμός (2 από ) Κατανεμημένος πίνακας κατακερματισμού (DHT) Κάθε διεργασία περιέχει ένα μέρος του πίνακα Κατακερματίζουμε και τις διευθύνσεις των διεργασιών Σε κάθε διεργασία αναθέτουμε τα «κοντινά» της κλειδιά Ψάχνουμε τη διεργασία που βρίσκεται «κοντά» στο κλειδί Οι δύο έννοιες του «κοντά» Τοπολογική: αναφέρεται στο υποκείμενο δίκτυο Αριθμητική: αναφέρεται στο υπερκείμενο δίκτυο Γενικά τοπολογική και αριθμητική απόσταση διαφέρουν 12

13 Κατακερματισμός (3 από ) Παράδειγμα: οργάνωση διεργασιών σε δακτύλιο Κατακερματίζουμε τις διευθύνσεις των διεργασιών Ο δακτύλιος βασίζεται στις κατακερματισμένες διευθύνσεις Διεργασίες κοντά στο δίκτυο είναι τοπολογικά κοντά Οι διευθύνσεις τους είναι παρόμοιες Στο υπερκείμενο δίκτυο δεν είναι αριθμητικά κοντά Οι διευθύνσεις κατακερματίζονται σε διαφορετικές τιμές Διεργασίες κοντά στο δακτύλιο είναι μακρινές 13

14 Κατακερματισμός (4 από ) Στόχοι κατανεμημένου πίνακα κατακερματισμού Έστω N κόμβοι και K κλειδιά Σε κάθε κόμβο αντιστοιχεί 1/N του πεδίου τιμών Σε κάθε κόμβο αποθηκεύονται K/N κλειδιά Ισοκατανομή φόρτου στο σύστημα Αποδοτική υποστήριξη αναζήτησης κλειδιών Γρήγορος εντοπισμός του κατάλληλου κόμβου Δρομολόγηση (της αναζήτησης) με βάση το κλειδί Στο Internet έχουμε δρομολόγηση με βάση τη διεύθυνση 14

15 Κατακερματισμός (5 από ) Στόχοι κατανεμημένου πίνακα κατακερματισμού Σε κάθε αλλαγή μετακινούνται K/N κλειδιά Προσχώρηση στο ή αποχώρηση από το σύστημα Περίπου ο φόρτος που αντιστοιχεί σε έναν κόμβο Χρήση κρυπτογραφικών συναρτήσεων Είσοδος: συμβολοσειρές αυθαίρετου μήκους Διευθύνσεις IP, ονόματα DNS, ονόματα αρχείων Έξοδος: φυσικοί αριθμοί MD-5: έξοδος 128 bit SHA-1: έξοδος 10 bit 15

16 Κατακερματισμός ( από ) Χρήση κρυπτογραφικών συναρτήσεων Τα κλειδιά/αναγνωριστικά είναι επίπεδα Μικρές διαφορές στην είσοδο Πολύ διαφορετικά κλειδιά/αναγνωριστικά Απομακρύνονται στην έξοδο Ομοιόμορφη κατανομή στο πεδίο τιμών Ανεξάρτητα από κατανομή στο πεδίο ορισμού Ακατάλληλες για προσεγγιστικά ερωτήματα Παρόμοιες είσοδοι οδηγούν σε διαφορετικές εξόδους 1

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

18 Βασικά στοιχεία Chord (1 από 5) Κόμβοι / κλειδιά οργανώνονται σε δακτύλιο Κόμβοι: κατακερματισμός διευθύνσεων Κλειδιά: κατακερματισμός ονομάτων Συνήθως χρήση της SHA-1 Είσοδος: συμβολοσειρά οποιουδήποτε μήκους Έξοδος: αριθμός 10 bit Δακτύλιος με 2 10 αναγνωριστικά Και με 2 10 κλειδιά 18

19 Βασικά στοιχεία Chord (2 από 5) Ο κόμβος αποτελείται από δύο μέρη Βιβλιοθήκη του Chord Ανεξάρτητη από την εφαρμογή Παρέχει πολύ απλή διεπαφή Κώδικας εφαρμογής Αξιοποιεί τη βιβλιοθήκη του Chord Παρέχει πιο σύνθετη διεπαφή 19

20 Βασικά στοιχεία Chord (3 από 5) Διεπαφή βιβλιοθήκης του Chord find_successor(k) Εφαρμογή -> βιβλιοθήκη Επιστρέφει πρώτο κόμβο με αναγνωριστικό >=k Αυτός ο κόμβος είναι υπεύθυνος για το κλειδί k redistribute_keys(k) Βιβλιοθήκη -> εφαρμογή Το πρώτο κλειδί του κόμβου είναι αμέσως μετά το k Καλείται όταν αλλάζει η περιοχή ευθύνης του κόμβου Οι εφαρμογές δομούνται με βάση αυτές τις κλήσεις 20

21 Βασικά στοιχεία Chord (4 από 5) Παράδειγμα: δίκτυο καταμερισμού αρχείων Είσοδος κόμβου στο σύστημα Κατακερματισμός των ονομάτων αρχείων σε κλειδιά Εντοπισμός των κόμβων που ευθύνονται για τα κλειδιά Αποθήκευση διευθύνσεων αρχείων στους κόμβους Ανάκτηση αρχείου από το σύστημα Κατακερματισμός ζητούμενου ονόματος αρχείου σε κλειδί Εντοπισμός του κόμβου που ευθύνεται για το κλειδί Ανάκτηση της διεύθυνσης του αρχείου από αυτό τον κόμβο Ανάκτηση του αρχείου από τον κόμβο που το διαθέτει 21

22 Βασικά στοιχεία Chord (5 από 5) Παράδειγμα: δίκτυο καταμερισμού αρχείων Προσχώρηση ή αποχώρηση κόμβων Ενημέρωση των κόμβων που επηρεάζονται Η εφαρμογή φροντίζει για τη μεταφορά των κλειδιών Όρια ευθύνης της βιβλιοθήκης του Chord Η βιβλιοθήκη δεν ασχολείται με διαχείριση κλειδιών Αυτό είναι θέμα της εφαρμογής που την αξιοποιεί Η βιβλιοθήκη ασχολείται με όρια ευθύνης κόμβων Αναδιοργάνωση δακτυλίου σε προσχωρήσεις/αποχωρήσεις 22

23 Κόμβοι και κλειδιά (1 από 3) Ν1 Ν5 Ν8 Κ54 Ν51 Ν14 Ν48 Κ10 Ν21 Ν42 Κ38 Ν38 Ν32 Κ24 Κ30 successor(k): πρώτος κόμβος >=k Γεωμετρικά, πρώτος κόμβος μετά το k (δεξιόστροφα) Το κλειδί k αντιστοιχίζεται στον successor(k) 23

24 Κόμβοι και κλειδιά (2 από 3) Παράδειγμα: δίκτυο καταμερισμού αρχείων 10 κόμβοι, κύκλος με 4 κλειδιά/αναγνωριστικά Ο 1 θέλει να διαθέσει ένα αρχείο στο σύστημα Το όνομα αρχείου κατακερματίζεται στο 10 Ο 1 αποθηκεύει τη διεύθυνσή του στον successor(10) Μπορεί να είναι διεύθυνση IP και θύρα TCP Η αναζήτηση του αρχείου γίνεται μέσω του successor(10) 24

25 Κόμβοι και κλειδιά (3 από 3) Ανακατανομές κλειδιών O κόμβος αναλαμβάνει περιοχή πριν από αυτόν Προσχώρηση: ο κόμβος «παίρνει» κλειδιά Αποχώρηση: ο κόμβος «στέλνει» κλειδιά Πάντα από/προς τον επόμενο κόμβο Καλείται η redistribute_keys() όταν πρέπει Η μεταφορά των κλειδιών είναι θέμα εφαρμογής Οι ίδιοι οι πόροι δεν μετακινούνται, μόνο τα κλειδιά 25

26 Αναζήτηση στο Chord Μάθημα: Κατανεμημένα Συστήματα: Θεωρία και Προγραμματισμός, Ενότητα # 9: Κατανεμημένοι πίνακες κατακερματισμού Διδάσκων: Γιώργος Ξυλωμένος, Τμήμα: Πληροφορικής

27 Απλή αναζήτηση (1 από 3) Ν1 Ν5 Ν8 Κ54 Ν51 Ν14 Ν48 Ν21 Ν42 n.find_successor(k) Ν38 Ν32 Αν το k περιέχεται στο διάστημα (n, successor] Επίστρεψε successor Διαφορετικά Επίστρεψε successor.find_successor(k) 27

28 Απλή αναζήτηση (2 από 3) Συμβολισμοί ψευδοκώδικα n.func(): κλήση μεθόδου στον κόμβο n Απομακρυσμένες κλήσεις διαδικασιών (RPC) Απομακρυσμένες κλήσεις μεθόδων (RMI) n.: ανάγνωση της μεταβλητής Μέσω απομακρυσμένης μεθόδου ανάγνωσης Οι τοπικές κλήσεις παραλείπουν τον κόμβο n: διεύθυνση και αναγνωριστικό του κόμβου 28

29 Απλή αναζήτηση (3 από 3) Λειτουργία απλής αναζήτησης Ο κόμβος αρκεί να ξέρει τον successor του Κινούμαστε από κόμβο σε κόμβο Σταματάμε όταν το κλειδί ανήκει στον successor Πλήθος μηνυμάτων ανάλογο του Ν Οι τοπολογικές αποστάσεις μπορεί να είναι μεγάλες Παράδειγμα: αναζήτηση του Κ54 από τον κόμβο Ν8 Η αναζήτηση διατρέχει το δακτύλιο μέχρι τον κόμβο Ν5 29

30 Σύνθετη αναζήτηση (1 από 7) Ν1 Ν51 Ν5 Ν8 +1,2,4 Ν14 Ν8+1 Ν8+2 Ν14 Ν14 Ν8+4 Ν14 Ν8+8 Ν21 Ν8+1 Ν32 Ν8+32 Ν42 Ν Ν21 Ν42 Ν38 Ν32 Πίνακας δακτύλων για επιτάχυνση αναζήτησης n.finger[i] = successor(n+2 i-1 ) Παρατηρούμε ότι n.finger[1] = n.successor Το δάκτυλο i δείχνει στον successor(n+2 i-1 ) 30

31 Σύνθετη αναζήτηση (2 από 7) Αξιοποίηση πίνακα δακτύλων Εκμεταλλευόμαστε τις εκθετικές αποστάσεις Σε κάθε βήμα καλύπτουμε τουλάχιστο τη μισή απόσταση n.find_successor(k) Αν το k περιέχεται στο διάστημα (n, successor] Επίστρεψε successor Διαφορετικά n = closest_preceding_node(k) Επίστρεψε n.find_successor(k) 31

32 Σύνθετη αναζήτηση (3 από 7) Εντοπισμός του βέλτιστου δακτύλου n.closest_preceding_node(k) Για κάθε i από m μέχρι 1 Αν το finger[i] περιέχεται στο διάστημα (n, k) Επίστρεψε finger[i] Επίστρεψε n 32

33 Σύνθετη αναζήτηση (4 από 7) Εντοπισμός του βέλτιστου δακτύλου Πρώτο δάκτυλο που δείχνει πριν το κλειδί Μπορεί να υπάρχουν κι άλλοι κόμβοι ενδιάμεσα Ο πίνακας δακτύλων δεν περιέχει όλους τους κόμβους Σύγκριση με την πραγματική τιμή του δακτύλου Είναι ο successor της ονομαστικής τιμής Μπορεί να βρίσκεται μετά την ονομαστική τιμή 33

34 Σύνθετη αναζήτηση (5 από 7) Κ54 Ν5 Ν1 Ν8+1 Ν8+2 Ν8 Ν14 Ν14 Ν8+4 Ν14 Ν8+8 Ν21 Ν8+1 Ν32 Ν8+32 Ν42 Ν51 Ν14 Ν48 Ν21 Ν42+1 Ν42+2 Ν42 Ν48 Ν48 Ν42+4 Ν48 Ν42+8 Ν51 Ν42+1 Ν1 Ν42+32 Ν14 Παράδειγμα σύνθετης αναζήτησης Ν38 Ν32 34

35 Σύνθετη αναζήτηση ( από 7) Βασικές επισημάνσεις Δεν συγκρίνουμε με n+2 i-1 Συγκρίνουμε με successor(n+2 i-1 ) Τα άλματα γίνονται προς έναν προκάτοχο του k Στη χειρότερη περίπτωση, μόνο ο successor Κόστος σύνθετης αναζήτησης Έστω ότι οι πίνακες δακτύλων είναι ενημερωμένοι Αλλιώς η αναζήτηση θα είναι πιο αργή Κάθε άλμα μειώνει απόσταση τουλάχιστον στο μισό Το πλήθος των βημάτων είναι ανάλογο του log 2 N 35

36 Σύνθετη αναζήτηση (7 από 7) Συμπίεση πινάκων δακτύλων Πολλά δάκτυλα είναι ίδια Αναμενόμενο πλήθος διαφορετικών: log 2 N Αποθήκευση μόνο διαφορετικών δακτύλων Αρκεί να τα έχουμε στη σειρά Μπορούν να είναι σε πίνακα Τα εξετάζουμε πάντα γραμμικά Δεν χρειάζεται καν να χωράνε όλα! 3

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

38 Προσχώρηση κόμβων (1 από ) Απαιτούμενες εργασίες στην προσχώρηση Τροποποίηση δακτυλίου στο σημείο εισαγωγής Γίνεται άμεσα για να επιτυγχάνουν οι αναζητήσεις Αλλαγές σε προηγούμενο και επόμενο κόμβο Ανακατανομή κλειδιών στους νέους γείτονες Μπορεί να γίνει όταν ολοκληρωθεί η τροποποίηση Εξαρτάται από την εφαρμογή Ενδιάμεσα, οι αναζητήσεις προωθούνται σε γείτονες 38

39 Προσχώρηση κόμβων (2 από ) Απαιτούμενες εργασίες κατά την προσχώρηση Ενημέρωση πινάκων δακτύλων στο δακτύλιο Δεν είναι απαραίτητο να γίνει άμεσα Η αναζήτηση λειτουργεί με μη ενημερωμένους πίνακες Γίνεται περιοδικά αφού επηρεάζει πολλούς κόμβους Κάθε κόμβος συντηρεί τον πίνακά του 39

40 Προσχώρηση κόμβων (3 από ) Ξεκινάμε από έναν τυχαίο κόμβο Εντοπίζουμε κάποιον κόμβο στο δακτύλιο Υπάρχουν διάφορες τεχνικές εντοπισμού Κεντρικός εξυπηρετητής που γράφονται οι κόμβοι Παρόμοιος με tracker στο BitTorrent Πολυεκπομπή προς γνωστή διεύθυνση Δεν έχει κεντρικό εξυπηρετητή Λειτουργεί μόνο σε τοπικό δίκτυο 40

41 Προσχώρηση κόμβων (4 από ) Δημιουργία νέου δακτυλίου από τον n Όταν δεν υπάρχει κανείς στο δακτύλιο Ως successor ορίζουμε τον εαυτό μας Η predecessor δείχνει στον προκάτοχό μας Αόριστη: εκκρεμεί ανακατανομή κλειδιών n.create() predecessor = null successor = n 41

42 Προσχώρηση κόμβων (5 από ) Προσχώρηση του κόμβου n σε δακτύλιο Έστω ότι εντοπίσαμε τον κόμβο n Ζητάμε από τον n να βρει το διάδοχό μας Πρέπει να μπούμε ακριβώς πριν από αυτόν Ορισμός μόνο της successor Αλλά όχι της predecessor Γιατί εκκρεμεί η ανακατανομή κλειδιών 42

43 Προσχώρηση κόμβων ( από ) Προσχώρηση του κόμβου n σε δακτύλιο Τώρα μπορούμε να ξεκινήσουμε αναζητήσεις Ακόμη δεν είμαστε πλήρως συνδεδεμένοι Δεν μας γνωρίζει προηγούμενος και επόμενος Δεν μπορούμε να κάνουμε ανακατανομές κλειδιών n.join(n ) predecessor = null; successor = n.find_successor(n); 43

44 Σταθεροποίηση (1 από 4) Περιοδική σταθεροποίηση δακτυλίου Ολοκληρώνει την προσχώρηση Αποτελείται από δύο κλήσεις Έλεγχος του predecessor του successor Κανονικά πρέπει να είμαστε εμείς Αν είναι μετά από εμάς, τον κάνουμε επόμενο Πάντα ενημερώνουμε τον successor Του αναφέρουμε ότι είμαστε ο προηγούμενός του Είτε έχουμε αλλάξει successor είτε όχι 44

45 Σταθεροποίηση (2 από 4) Περιοδική σταθεροποίηση δακτυλίου n.stabilize() = successor.predecessor; Αν το περιέχεται στο διάστημα (n, successor) successor = successor.notify(n); 45

46 Σταθεροποίηση (3 από 4) Ενημέρωση του successor Ποιος είναι ο νέος του predecessor Αν δεν είχε predecessor δέχεται τη νέα τιμή Αλλιώς ελέγχει αν είναι στο σωστό διάστημα Αν δεν έχουμε αλλαγή, δεν γίνεται τίποτα Αν έχουμε αλλαγή, ανακατανομή κλειδών Η ανακατανομή θα γίνει από την εφαρμογή Αφορά τον κόμβο και τον νέο predecessor του 4

47 Σταθεροποίηση (4 από 4) Ενημέρωση του successor n.notify(n ) An predecessor == null ή το n περιέχεται στο διάστημα (predecessor,n) predecessor = n redistribute_keys(n ) 47

48 Παράδειγμα Ν21 Ν21 Ν32 Κ24 Κ30 Ν32 Κ24 Κ30 Ν2 (α) (β) Ν21 Ν21 Ν32 Κ30 Ν2 Κ24 Ν32 Κ30 Ν2 Κ24 (γ) Παράδειγμα προσχώρησης του κόμβου 2 Συνδέσεις με περιοδικές κλήσεις stabilize/notify Το stabilize του 2 οδηγεί σε notify στον 32 Το stabilize του 21 οδηγεί σε notify στον 2 (δ) 48

49 Ενημέρωση δακτύλων (1 από 2) Ενημέρωση πίνακα δακτύλων Περιοδική κλήση της fi_fingers Δημιουργία νέου πίνακα/ενημέρωση υπάρχοντα Κυκλική ενημέρωση των δακτύλων ενός κόμβου Τα δάκτυλα διατρέχονται σε αύξουσα σειρά Αξιοποιούμε το προηγούμενο για το επόμενο Λειτουργεί και με λίστα αντί για πίνακα Ενημέρωση μερικών δακτύλων κάθε φορά Ο πίνακας δακτύλων είναι απλά βελτιστοποίηση Δεν είναι απαραίτητο να είναι πάντα ενημερωμένος 49

50 Ενημέρωση δακτύλων (2 από 2) Ενημέρωση πίνακα δακτύλων n.fi_fingers() net = (net + 1) mod m finger[net] = find_successor(n + 2 net-1 ); 50

51 Έλεγχος προκατόχου Περιοδικός έλεγχος προκατόχου Για να κλείνουν τα κενά μετά από αποτυχίες Αλλιώς ο διάδοχος δεν θα αλλάξει προκάτοχο! Ο νέος προκάτοχος βρίσκεται με την stabilize/notify n.check_predecessor() Αν ο predecessor απέτυχε predecessor = null 51

52 Αποτυχία αναζήτησης Αποτυχίες στην αναζήτηση Η αναζήτηση επιτυγχάνει σχεδόν πάντα Αρκεί οι successor είναι σωστοί Αποτυχίες όταν δεν έχει κλείσει ο κύκλος Οι αποτυχίες αυτές είναι παροδικές Επανάληψη της αναζήτησης λίγες φορές Στην επόμενη δοκιμή ίσως να έχει κλείσει ο κύκλος 52

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

54 Αποχώρηση/αποτυχία (1 από ) Εντοπισμός αποτυχίας κόμβων Αποτυχία των κλήσεων stabilize(): αποτυχία διαδόχου check_predecessor(): αποτυχία προκατόχου find_successor(): αποτυχία δακτύλου Το σημαντικό είναι να βρούμε νέο διάδοχο Το σύστημα λειτουργεί με τους successor 54

55 Αποχώρηση/αποτυχία (2 από ) Εντοπισμός διαδόχου μέσω δακτύλων Διάδοχος: πρώτο δάκτυλο που δεν έχει αποτύχει n.find_new_successor() βρέθηκε = false Για κάθε i από 1 έως m Αν ο finger[i] δεν έχει αποτύχει και!βρέθηκε successor = finger[i] 55

56 Αποχώρηση/αποτυχία (3 από ) Ν1 Ν51 Ν5 Ν8 +1,2,4 Ν14 Ν8+1 Ν8+2 Ν14 Ν14 Ν8+4 Ν14 Ν8+8 Ν21 Ν8+1 Ν32 Ν8+32 Ν42 Ν Ν21 Ν42 Ν38 Γιατί ο πίνακας δακτύλων δεν φτάνει; Ν32 Μπορεί να οδηγήσει σε παράκαμψη πολλών κόμβων Απαιτούνται πολλά stabilize/notify για επισκευή Κάθε stabilize/notify βάζει έναν κόμβο στον δακτύλιο 5

57 Αποχώρηση/αποτυχία (4 από ) Εντοπισμός διαδόχου με λίστα διαδόχων Η λίστα καταγράφει τους l επόμενους κόμβους Σε κάθε αποτυχία δοκιμάζουμε επόμενο στη λίστα Χρειάζονται l αποτυχίες για να χαθεί ο διάδοχος Ιδιότητες λίστας διαδόχων Ο n έχει σχεδόν την ίδια λίστα με τον διάδοχό του n Αφαιρούμε την τελευταία καταχώρηση του n Προσθέτουμε ως πρώτη καταχώρηση τον n 57

58 Αποχώρηση/αποτυχία (5 από ) Συντήρηση λίστας διαδόχων Η λίστα κάθε κόμβου βασίζεται σε αυτή του διαδόχου Σε αλλαγή διαδόχου ζητάμε τη λίστα του νέου διάδοχου Σταδιακή κατασκευή λιστών όσο μεγαλώνει ο δακτύλιος Αξιοποίηση λίστας διαδόχων Χρήση για να συμπληρώσει τον πίνακα δακτύλων closest_preceding_node(): καλύτερος στόχος find_successor(): όταν ο διάδοχος έχει αποτύχει 58

59 Αποχώρηση/αποτυχία ( από ) Αποχώρηση κόμβου: παρόμοια με αποτυχία Καλύτερα να ενημερώσουμε το σύστημα όμως! Αλλιώς θα έχουμε αργή ανακατασκευή Στο μεσοδιάστημα αποτυγχάνουν οι αναζητήσεις Ενημέρωση προκατόχου για τον νέο διάδοχο Ενημέρωση διαδόχου για τον νέο προκάτοχο Μεταβίβαση κλειδιών στον διάδοχο Γίνεται πάντα μέσω της εφαρμογής Αλλιώς τα κλειδιά θα πρέπει να καταχωρηθούν ξανά 59

60 Ανάκαμψη εφαρμογής (1 από 2) Ανάκαμψη εφαρμογής από αποτυχίες Ο αντίκτυπος εξαρτάται από την εφαρμογή Έστω (κατά)μερισμός αρχείων Κάποια αρχεία δεν έχουν δείκτες Κάποιοι δείκτες δεν έχουν αρχεία Το Chord δεν ασχολείται με τα κλειδιά Δεν μπορεί να παρέχει σχετικές επανακλήσεις Μπορεί να βοηθήσει με redistribute_keys() 0

61 Ανάκαμψη εφαρμογής (2 από 2) Ανάκαμψη εφαρμογής από αποτυχίες Περιοδικός έλεγχος κλειδιών O κόμβος που αποθηκεύει τα κλειδιά μας απέτυχε; Τότε δεν μπορεί κανείς να τα βρει Αν ναι, αποθήκευση εκ νέου Περιοδικός έλεγχος αρχείων O κόμβος στον οποίο δείχνει η εγγραφή μας απέτυχε; Τότε τα κλειδιά μας δεν «δείχνουν» πουθενά Αν ναι, διαγραφή των κλειδιών 1

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

63 Βασικά στοιχεία Pastry (1 από 2) Προβλήματα επίδοσης του Chord Οι διαδρομές στο δίκτυο είναι μεγάλες Τουλάχιστον για τον αρχικό εντοπισμό ενός κόμβου Στη συνέχεια μπορούμε να χρησιμοποιήσουμε το IP Στην καλύτερη περίπτωση log 2 N βήματα Όταν οι πίνακες δακτύλων είναι ενημερωμένοι Κάθε βήμα μπορεί να καλύπτει όλο το δίκτυο! Αριθμητική απόσταση <> τοπολογική απόσταση 3

64 Βασικά στοιχεία Pastry (2 από 2) Το Pastry βελτιώνει την επίδοση Πίνακες δρομολόγησης με βάση και τοπολογία Κάθε κόμβος επιλέγει από πολλούς γείτονες Στο Chord ο πίνακας δακτύλων έχει μία επιλογή Ο επόμενος μπορεί να είναι πολύ μακριά Επιλέγονται οι τοπολογικά πλησιέστεροι κόμβοι Από τις διάφορες δυνατές επιλογές 4

65 Διεπαφή Pastry (1 από 3) Διεπαφή του Pastry route(msg, key): εφαρμογή -> βιβλιοθήκη Στέλνει το μήνυμα msg στον πλησιέστερο κόμβο στο key Ο κόμβος αυτός είναι υπεύθυνος για το κλειδί key Διαφορετικές κλήσεις για τελικό / ενδιάμεσους Οι ενδιάμεσοι μπορούν να επεξεργάζονται το μήνυμα deliver(msg, key): βιβλιοθήκη -> εφαρμογή Καλείται για να παραδοθεί το msg με κλειδί key Ο παρών κόμβος είναι ο πλησιέστερος στο key 5

66 Διεπαφή Pastry (2 από 3) Διεπαφή του Pastry forward(msg, key): βιβλιοθήκη -> εφαρμογή Καλείται πριν προωθηθεί το msg με κλειδί key Ο κόμβος είναι στη διαδρομή προς τον προορισμό newleafs(leafset): βιβλιοθήκη -> εφαρμογή Καλείται όταν αλλάζει το σύνολο φύλλων σε leafset Σημαίνει ότι γίνονται αλλαγές στη γειτονιά του κόμβου Μπορεί να αλλάζει και η περιοχή κλειδιών του Η εφαρμογή χειρίζεται το γεγονός κατάλληλα

67 Διεπαφή Pastry (3 από 3) Διεπαφή του Pastry distance(y): βιβλιοθήκη -> εφαρμογή Επιστρέφει την τοπολογική απόσταση του κόμβου y Αναφέρεται στο υποκείμενο δίκτυο Μπορεί να χρησιμοποιεί όποια μετρική θέλει η εφαρμογή Χρησιμοποιείται για την επιλογή γειτόνων Η διεπαφή είναι διαφορετική από του Chord Παράδοση μηνυμάτων αντί για εντοπισμός κόμβων Εύκολη μετατροπή από τη μία μορφή στην άλλη 7

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

69 Κόμβοι και κλειδιά Παρόμοια οργάνωση με το Chord Κόμβοι και κλειδιά οργανώνονται σε δακτύλιο Η αρχική υλοποίηση χρησιμοποιούσε m=128 bit Τα αναγνωριστικά/κλειδιά ερμηνεύονται διαφορετικά Πολυψήφιοι αριθμοί με βάση 2 b Το b είναι παράμετρος του συστήματος, τυπικά 2 ή 4 Με b=4 έχουμε δεκαεξαδικά ψηφία Αναγνωριστικά/κλειδιά m/b ψηφίων Η περιοχή ευθύνης είναι επίσης διαφορετική Ο κόμβος είναι υπεύθυνος για αριθμητικά πλησιέστερα κλειδιά 9

70 Κατάσταση κόμβων (1 από 5) Κατάσταση κόμβων του Pastry Πίνακας δρομολόγησης Σύνολο φύλλων Σύνολο γειτόνων Πίνακας δρομολόγησης Παραλλαγή πίνακα δακτύλων με δύο διαστάσεις Μία γραμμή ανά ψηφίο του αναγνωριστικού Μία στήλη για κάθε τιμή ψηφίου 70

71 Κατάσταση κόμβων (2 από 5) a b c d e f a b c d e f b 5 c 5 d 5 e 5 f 5 a 0 5 a 2 5 a 3 5 a 4 5 a 5 5 a 5 a 7 5 a 8 5 a 9 5 a a 5 a b 5 a c 5 a d 5 a e 5 a f 5 a a a a a a a 1 5 a a a a 1 a 5 a 1 b 5 a 1 c 5 a 1 d 5 a 1 e Πίνακας δρομολόγησης 71

72 Κατάσταση κόμβων (3 από 5) Πίνακας δρομολόγησης Παράδειγμα: κόμβος 5a1fc με m=24 και b=4 Σε πλήρη μορφή γραμμές και 1 στήλες Η r περιέχει κόμβους τα αναγνωριστικά των οποίων Στα r πρώτα ψηφία τους ταυτίζονται με τον τρέχοντα Στο ψηφίο r+1 διαφοροποιούνται από τον τρέχοντα Ο κόμβος στη στήλη c έχει το ψηφίο r+1 ίσο με c Η στήλη που αντιστοιχεί στο ψηφίο του κόμβου είναι κενή Τα επόμενα ψηφία των κόμβων δεν έχουν σημασία 72

73 Κατάσταση κόμβων (4 από 5) Διαφοροποίηση Pastry από Chord Αν b=1 μοιάζει με τον πίνακα δακτύλων Στο Chord η επιλογή κάθε γραμμής είναι μονοσήμαντη Στο Pastry έχουμε πολλές επιλογές όμως Επιλέγεται ο τοπολογικά πλησιέστερος κόμβος Πόσο μεγάλος είναι ο πίνακας δρομολόγησης; Όπως στο Chord, ο πίνακας δρομολόγησης είναι αραιός Τα αναγνωριστικά κόμβων είναι αραιά κατανεμημένα Στις τελευταίες γραμμές θα έχουμε πολλά κενά Κατά μέσο όρο έχει μόνο log 2b N(2 b -1) καταχωρίσεις 73

74 Κατάσταση κόμβων (5 από 5) Σύνολο φύλλων Περιέχει L αριθμητικά πλησιέστερους κόμβους L/2 αμέσως προηγούμενοι και L/2 αμέσως επόμενοι Τυπικά το L είναι 2 b ή 22 b Δείχνει αν ένα κλειδί είναι στην περιοχή ευθύνης Σύνολο γειτόνων Περιέχει K τοπολογικά πλησιέστερους κόμβους Τυπικά το K είναι 2 b ή 22 b 74

75 Δρομολόγηση (1 από 5) Δρομολόγηση μηνύματος με κλειδί key Αρχικά εξετάζεται το σύνολο φύλλων Το key βρίσκεται ανάμεσα στα δύο ακραία φύλλα; Αν ναι, τότε εντοπίζεται ο κόμβος στον οποίο ανήκει Το μήνυμα προωθείται στον κόμβο αυτό Ο κόμβος αυτός μπορεί να είναι και ο τοπικός Στη συνέχεια εξετάζεται ο πίνακας δρομολόγησης Έστω ότι το key ταυτίζεται σε r αρχικά ψηφία με κόμβο Έστω ότι το ψηφίο r+1 είναι ίσο με c Το μήνυμα προωθείται στον κόμβο στη θέση (r, c) 75

76 Δρομολόγηση (2 από 5) Δρομολόγηση μηνύματος με κλειδί key Τι γίνεται αν η θέση (r,c) είναι κενή Ελέγχουμε και τον πίνακα Ελέγχουμε και τα σύνολα φύλλων και γειτόνων Υπάρχει αριθμητικά πλησιέστερος κόμβος Που να ταυτίζεται σε r ψηφία; Αν όχι, τότε ο πλησιέστερος είναι ο τρέχων κόμβος 7

77 Δρομολόγηση (3 από 5) d471f1 d4a1c d47c4 d42ba d4213f d13da3 5a1fc Παράδειγμα: δρομολόγηση του κλειδιού d4a1c Στέλνεται από τον κόμβο 5a1fc Καταλήγει στον κόμβο d47c4 Τελικά πέφτουμε μέσα στο σύνολο φύλλων 77

78 Δρομολόγηση (4 από 5) Επίδοση δρομολόγησης Έστω πίνακες δρομολόγησης ενημερωμένοι Αναμενόμενο πλήθος βημάτων log 2b N Σε κάθε βήμα υποδιαιρούμε τις καταχωρίσεις κατά 2 b Το σύνολο φύλλων απαιτεί ένα ακόμα βήμα Πολύ σπάνια χρειάζεται άλλο ένα βήμα Όταν ο πίνακας δρομολόγησης έχει κενά 78

79 Δρομολόγηση (5 από 5) Σύγκριση με το Chord Όταν b=1 Pastry και Chord απαιτούν log 2 N Το ίδιο ισχύει και για την κατάσταση ανά κόμβο Αυξάνοντας το b μειώνουμε τα βήματα Ταυτόχρονα όμως αυξάνεται η κατάσταση Το b επιτρέπει να πετύχουμε συμβιβασμό Πιο γρήγορη αναζήτηση ή λιγότερη κατάσταση; 79

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

81 Προσχώρηση κόμβων (1 από 3) Προσχώρηση νέων κόμβων Αρχικά πρέπει να εντοπιστεί κάποιος κόμβος Με τον ίδιο τρόπο όπως και στο Chord Αν εντοπιστούν πολλοί, ο τοπολογικά πλησιέστερος Έστω ότι ο νέος κόμβος είναι ο X και επέλεξε τον A Ο X ζητά από τον A να δρομολογήσει το μήνυμα join Το join έχει ως κλειδί το X και περιέχει τη διεύθυνση του X Έστω ότι ακολουθεί τη διαδρομή A,B,C,,Z Ο Z είναι ο αριθμητικά πλησιέστερος κόμβος στο X 81

82 Προσχώρηση κόμβων (2 από 3) Προσχώρηση νέων κόμβων Κάθε κόμβος στέλνει την κατάστασή του στον X Ο X χρησιμοποιεί τα στοιχεία για να φτιάξει κατάσταση Το σύνολο γειτόνων αρχικοποιείται σε αυτό του A Το σύνολο φύλλων αρχικοποιείται σε αυτό του Z Ο A είναι τοπολογικά κοντά και ο Z είναι αριθμητικά κοντά Ο πίνακας δρομολόγησης αρχικοποιείται Ως γραμμή 0 χρησιμοποιούμε την αντίστοιχη γραμμή του A Ως γραμμή 1 χρησιμοποιούμε την αντίστοιχη γραμμή του B 82

83 Προσχώρηση κόμβων (3 από 3) Προσχώρηση νέων κόμβων O X στέλνει την κατάστασή του στους A,B,C,,Z Κάθε κόμβος διορθώνει την κατάστασή του Ο Z θα πρέπει να προσθέσει τον X στο σύνολο φύλλων Ο A ίσως θα πρέπει να προσθέσει τον X στο σύνολο γειτόνων Τα αρχικά μηνύματα περιέχουν χρονοσφραγίδες Ο X βάζει την ίδια χρονοσφραγίδα στα δικά του μηνύματα Αν κάποιος κόμβος έχει αλλάξει κατάσταση την ξαναστέλνει Ο X απαντά ξανά με τη νέα χρονοσφραγίδα Αντιμετώπιση ταυτόχρονων προσχωρήσεων / αποχωρήσεων 83

84 Αποχώρηση κόμβων (1 από 3) Αποχώρηση και αποτυχία κόμβων Αντιμετωπίζονται με τον ίδιο ακριβώς τρόπο Επιδιόρθωση πίνακα γειτόνων Περιοδικός έλεγχος όλων των γειτόνων Η δρομολόγηση δεν περιλαμβάνει πίνακες γειτόνων Έστω ότι δεν αποκρίνεται κάποιος γείτονας Ζητάμε από τους γείτονες τα δικά τους σύνολα Επιλέγουμε από αυτά έναν νέο κόμβο για το δικό μας 84

85 Αποχώρηση κόμβων (2 από 3) Επιδιόρθωση συνόλου φύλλων Έστω ότι ο X παρατηρεί ότι δεν αποκρίνεται το φύλλο Y Αυτό γίνεται όταν προσπαθήσουμε να του στείλουμε κάτι Αρχικά ο X ζητάει το σύνολο φύλλων του Z Ο Z είναι το ακραίο φύλλο προς την κατεύθυνση του Y Σε μεγάλο βαθμό τα δύο σύνολα φύλλων επικαλύπτονται Ο X επιδιορθώνει το σύνολο φύλλων με βάση αυτό του Z Με τον ίδιο τρόπο ενημερώνονται όλα τα σύνολα φύλλων Για αποτυχία πρέπει να χαθούν L/2 διαδοχικοί κόμβοι Πρέπει να χαθεί όλη η μία πλευρά του συνόλου φύλλων 85

86 Αποχώρηση κόμβων (3 από 3) Επιδιόρθωση πινάκων δρομολόγησης Έστω ότι δεν αποκρίνεται η θέση (r,c) Όταν προσπαθήσουμε να του στείλουμε κάτι Προσωρινά παρακάμπτουμε τον κόμβο αυτόν Επικοινωνούμε με άλλο κόμβο της γραμμής r Ζητάμε τη δική του καταχώριση σε αυτή τη θέση Αν δεν υπάρχει, επαναλαμβάνουμε με τη r+1 8

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

88 Βελτιστοποίηση διαδρομών (1 από 4) A X C B Πόσο καλοί είναι οι πίνακες δρομολόγησης; Η αρχική κατασκευή των πινάκων είναι αρκετά καλή Οι γείτονες του A θα είναι και γείτονες του X Η γραμμή 0 του A θα είναι καλή επιλογή για τον X 88

89 Βελτιστοποίηση διαδρομών (2 από 4) Πόσο καλοί είναι οι πίνακες δρομολογησης; Τι γίνεται με τις υπόλοιπες γραμμές του πίνακα; Ο B είναι κοντά στον A αλλά όχι και στον X Όμως στη γραμμή 1 έχουμε λιγότερες επιλογές Οι υποψήφιοι κόμβοι είναι πολύ λιγότεροι Άρα οι κόμβοι στην 1 θα είναι γενικά πιο μακριά Συνεπώς μπορεί να χρησιμοποιηθεί για τον X Με την ίδια λογική φτιάχνονται όλες οι γραμμές 89

90 Βελτιστοποίηση διαδρομών (3 από 4) Σταδιακή βελτίωση των πινάκων Περιοδικά κάθε κόμβος ζητάει την κατάσταση άλλων Όσων είναι σε πίνακα δρομολόγησης και σύνολο γειτόνων Όποτε βρει καλύτερες επιλογές τις χρησιμοποιεί Για τον πίνακα δρομολόγησης και το σύνολο γειτόνων Διαλέγουμε πάντα τοπολογικά πλησιέστερο κόμβο Χρησιμοποιούμε την distance για να επιλέξουμε 90

91 Βελτιστοποίηση διαδρομών (4 από 4) A Πόσο καλές είναι οι συνολικές διαδρομές; Κάθε βήμα δρομολόγησης είναι καλό από μόνο του Η συνολική δρομολόγηση είναι αρκετά καλή επειδή Σε κάθε βήμα δεν μπορούμε να μπούμε στον προηγούμενο κύκλο Κάθε βήμα δημιουργεί έναν πολύ μεγαλύτερο κύκλο 91

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

93 Εισαγωγή στο Scribe (1 από 4) Πολυεκπομπή στο Scribe Αξιοποιεί δρομολόγηση με βάση το κλειδί Σχεδιάστηκε για το Pastry Διεπαφή δρομολόγησης μηνυμάτων Μπορεί να χρησιμοποιηθεί με το Chord Πρέπει όμως να τροποποιηθεί η διεπαφή 93

94 Εισαγωγή στο Scribe (2 από 4) Ομάδες πολυεκπομπής Προσδιορίζονται από ένα κλειδί Όλες οι λειτουργίες γίνονται με βάση το κλειδί Δημιουργία ομάδας Προσχώρηση και αποχώρηση κόμβων Αποστολή δεδομένων στην ομάδα Τα δεδομένα λαμβάνονται από όλα τα μέλη 94

95 Εισαγωγή στο Scribe (3 από 4) Κλειδιά ομάδων Παράγονται με κατακερματισμό MD5, SHA-1, κ.λπ. Ίδιο πεδίο με τα κλειδιά των κόμβων Αυθαίρετα ονόματα ομάδων Ο κατακερματισμός τα κάνει ομοιόμορφα Συνυπάρχουν διάφοροι τύποι ονομάτων Παράδειγμα: ιεραρχικά, επίπεδα 95

96 Εισαγωγή στο Scribe (4 από 4) Scribe: βιβλιοθήκη πάνω από το Pastry Τέσσερις βασικές κλήσεις create(key): δημιουργία join(key,handler): προσχώρηση Τα μηνύματα προωθούνται στη handler leave(key): αποχώρηση multicast(key,msg): αποστολή Κάθε κλήση παράγει μήνυμα με το ίδιο όνομα 9

97 Δημιουργία δένδρου (1 από 4) Σημείο ραντεβού (rendezvous) της ομάδας Κόμβος με αριθμητικά πλησιέστερο κλειδί Τα μηνύματα δρομολογούνται εκεί create, join, leave, multicast Λειτουργεί ως ρίζα δένδρου πολυεκπομπής Προωθεί τα μηνύματα στους παραλήπτες Μαθαίνει ότι είναι σημείο ραντεβού στο create 97

98 Δημιουργία δένδρου (2 από 4) Επεξεργασία μηνυμάτων Τα μηνύματα στον παραλήπτη Το μήνυμα multicast έχει πολλούς παραλήπτες Το σημείο ραντεβού και τα μέλη της ομάδας Tα join/leave και στους ενδιάμεσους Χρησιμοποιούνται για την κατασκευή του δένδρου Το create μόνο στο σημείο ραντεβού Δημιουργεί τη ρίζα του δένδρου 98

99 Δημιουργία δένδρου (3 από 4) Κατάσταση κόμβων δένδρου πολυεκπομπής Πίνακας προώθησης ανά ομάδα Περιέχει τα παιδιά του κόμβου στο δένδρο Αρχικά είναι κενός Προσθήκη παιδιών: μηνύματα join Τα μηνύματα join δημιουργούν το δένδρο Διαγραφή παιδιών: μηνύματα leave Τα μηνύματα leave καταστρέφουν το δένδρο 99

100 Δημιουργία δένδρου (4 από 4) Δημιουργία ομάδας Μήνυμα create στο σημείο ραντεβού Το επεξεργάζεται μόνο το σημείο ραντεβού Δρομολόγηση μέσω του DHT Το σημείο δημιουργεί πίνακα προώθησης Αρχικά ο πίνακας είναι κενός Θα προστεθούν παιδιά σταδιακά Έλεγχος δικαιωμάτων δημιουργίας (προαιρετικά) 100

101 Προσχώρηση (1 από 3) Προσχώρηση σε ομάδα Αποστολή join στο σημείο ραντεβού Δρομολόγηση μέσω του DHT Κάθε ενδιάμεσος κόμβος εξετάζει το μήνυμα Αν έχει πίνακα προώθησης για την ομάδα Προσθέτει τον αποστολέα στον πίνακα Δεν προωθεί το join παραπέρα Ο αποστολέας έχει συνδεθεί στο δένδρο 101

102 Προσχώρηση (2 από 3) Προσχώρηση σε ομάδα Αν δεν έχει πίνακα προώθησης για την ομάδα Δημιουργεί τον πίνακα προώθησης Προσθέτει τον αποστολέα στον πίνακα Αλλάζει τον αποστολέα του join στον εαυτό του Προωθεί το join παραπέρα Σταδιακή δημιουργία δένδρου πολυεκπομπής Από τα φύλλα προς το σημείο ραντεβού 102

103 Προσχώρηση (3 από 3) d471f1 d4a1c d42ba d4213f d13da3 5a1fc 98fc35 Παράδειγμα προσχώρησης Ομάδα d4a1c, προσχωρούν 5a1fc και 98fc35 Το δεύτερο join δεν φτάνει στο σημείο ραντεβού Σταματάει στον πρώτο κόμβο που είναι ήδη στο δένδρο 103

104 Αποχώρηση Αποχώρηση από ομάδα Αποστολή leave στο σημείο ραντεβού Κάθε ενδιάμεσος κόμβος εξετάζει το μήνυμα Αφαίρεση αποστολέα από πίνακα προώθησης Αν o πίνακα προώθησης δεν μένει κενός Δεν προωθεί το leave παραπέρα Αν o πίνακα προώθησης μένει κενός Αλλάζει τον αποστολέα του leave στον εαυτό του Προωθεί το leave παραπέρα 104

105 Αποστολή μηνυμάτων Αποστολή μηνυμάτων στην ομάδα Αποστολή multicast στο σημείο ραντεβού Το σημείο ραντεβού προωθεί το μήνυμα Χρήση πάντα του DHT Αναδρομική προώθηση μέχρι τα φύλλα Σε κάθε μέλος καλείται η μέθοδος handler Ουσιαστικά είναι η μέθοδος λήψης μηνυμάτων Μπορεί να περάσουμε πολλά μέλη στη διαδρομή 105

106 Απόδοση (1 από 2) Πόσο αποδοτική είναι η πολυεκπομπή; Το δένδρο είναι ένωση μονοπατιών Τα μονοπάτια είναι αντίστροφα των επιθυμητών Από τα μέλη της ομάδας προς το σημείο ραντεβού Μπορεί να μην είναι συμμετρικά Τα μονοπάτια προς τα μέλη δεν είναι βέλτιστα Ως προς το υποκείμενο δίκτυο Το Pastry προσεγγίζει τα τοπολογικά βέλτιστα 10

107 Απόδοση (2 από 2) Πόσο αποδοτική είναι η πολυεκπομπή; Το σημείο ραντεβού δεν είναι βέλτιστο Τα μηνύματα κινούνται πρώτα προς σημείο ραντεβού Μπορεί να απομακρύνονται από τα μέλη της ομάδας Το μονοπάτι προς το ραντεβού δεν είναι βέλτιστο Ο αποστολέας μπορεί να αποθηκεύσει τη διεύθυνση Στη συνέχεια αποστολή μηνυμάτων μέσω IP 107

108 Αποτυχίες (1 από 2) Αποτυχία / αποχώρηση εσωτερικών κόμβων Κάθε κόμβος στέλνει περιοδικά μηνύματα Σε όλα τα παιδιά του Αν ένα παιδί δεν λάβει μήνυμα για αρκετή ώρα Υποθέτει ότι ο πατέρας του έχει αποτύχει Στέλνει νέο join προς το σημείο ραντεβού Το παιδί επανασυνδέεται με το δένδρο 108

109 Αποτυχίες (2 από 2) Αποτυχία ή αποχώρηση σημείου ραντεβού Το σημείο ραντεβού αναπαράγει την κατάστασή του Περιοδική αποστολή κατάστασης στο σύνολο φύλλων Αν αποτύχει, κάποιο φύλλο θα γίνει σημείο ραντεβού Τα παιδιά παρατηρούν την αποτυχία Δεν λαμβάνουν μήνυμα από τον πατέρα Στέλνουν νέο μήνυμα join προς το σημείο ραντεβού Τα μηνύματα join καταλήγουν στο νέο σημείο ραντεβού Παρόμοια αντιμετώπιση από τους αποστολείς 109

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

Δομές Δεδομένων. Ενότητα 11: Τεχνικές Κατακερματισμού. Καθηγήτρια Μαρία Σατρατζέμη. Τμήμα Εφαρμοσμένης Πληροφορικής.

Δομές Δεδομένων. Ενότητα 11: Τεχνικές Κατακερματισμού. Καθηγήτρια Μαρία Σατρατζέμη. Τμήμα Εφαρμοσμένης Πληροφορικής. Ενότητα 11: Τεχνικές Κατακερματισμού Καθηγήτρια Μαρία Σατρατζέμη Άδειες Χρήσης Το παρόν εκπαιδευτικό υλικό υπόκειται σε άδειες χρήσης Creative Commons. Για εκπαιδευτικό υλικό, όπως εικόνες, που υπόκειται

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

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

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

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

Τμήμα Μηχανικών Πληροφορικής και Τηλεπικοινωνιών

Τμήμα Μηχανικών Πληροφορικής και Τηλεπικοινωνιών Δομημένος Προγραμματισμός Ενότητα 5(γ): Εργαστηριακή Άσκηση Αναπλ. Καθηγητής: Κωνσταντίνος Στεργίου Τμήμα Μηχανικών Πληροφορικής και Τηλεπικοινωνιών Άδειες Χρήσης Το παρόν εκπαιδευτικό υλικό υπόκειται

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

Εκλογή αρχηγού σε σύγχρονο δακτύλιο: Οι αλγόριθμοι 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 είναι ένας αλγόριθμος εκλογής αρχηγού σε ένα

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

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

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

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

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

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

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

Αποµακρυσµένη κλήση διαδικασιών

Αποµακρυσµένη κλήση διαδικασιών Αποµακρυσµένηκλήση διαδικασιών Τοπική κλήση διαδικασιών Αποµακρυσµένη κλήση διαδικασιών Μεταβίβαση παραµέτρων Πρωτόκολλα επικοινωνίας Αντιγραφή µηνυµάτων Προδιαγραφές διαδικασιών RPC στο σύστηµα DCE Κατανεµηµένα

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

Ειδικά Θέματα Δικτύων ΙΙ

Ειδικά Θέματα Δικτύων ΙΙ Ειδικά Θέματα Δικτύων ΙΙ Ενότητα 9: Shortest Path First - SPF Νικολάου Σπύρος Τμήμα Μηχανικών Πληροφορικής ΤΕ Άδειες Χρήσης Το παρόν εκπαιδευτικό υλικό υπόκειται σε άδειες χρήσης Creative Commons. Για

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

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

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

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

Διαδικτυακό Περιβάλλον Διαχείρισης Ασκήσεων Προγραμματισμού

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

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

Άδειες Χρήσης Το παρόν εκπαιδευτικό υλικό υπόκειται σε άδειες χρήσης Creative Commons. Για εκπαιδευτικό υλικό, όπως εικόνες, που υπόκειται σε άλλου τύ

Άδειες Χρήσης Το παρόν εκπαιδευτικό υλικό υπόκειται σε άδειες χρήσης Creative Commons. Για εκπαιδευτικό υλικό, όπως εικόνες, που υπόκειται σε άλλου τύ Διακριτά Μαθηματικά Ι Ενότητα 2: Γεννήτριες Συναρτήσεις Μέρος 1 Διδάσκων: Χ. Μπούρας (bouras@cti.gr) Άδειες Χρήσης Το παρόν εκπαιδευτικό υλικό υπόκειται σε άδειες χρήσης Creative Commons. Για εκπαιδευτικό

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

Δομές Δεδομένων. Ενότητα 12: Κατακερματισμός: Χειρισμός Συγκρούσεων. Καθηγήτρια Μαρία Σατρατζέμη. Τμήμα Εφαρμοσμένης Πληροφορικής.

Δομές Δεδομένων. Ενότητα 12: Κατακερματισμός: Χειρισμός Συγκρούσεων. Καθηγήτρια Μαρία Σατρατζέμη. Τμήμα Εφαρμοσμένης Πληροφορικής. Ενότητα 12: Κατακερματισμός: Χειρισμός Συγκρούσεων Καθηγήτρια Μαρία Σατρατζέμη Άδειες Χρήσης Το παρόν εκπαιδευτικό υλικό υπόκειται σε άδειες χρήσης Creative Commons. Για εκπαιδευτικό υλικό, όπως εικόνες,

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

Ποσοτικές Μέθοδοι στη Διοίκηση Επιχειρήσεων ΙΙ Σύνολο- Περιεχόμενο Μαθήματος

Ποσοτικές Μέθοδοι στη Διοίκηση Επιχειρήσεων ΙΙ Σύνολο- Περιεχόμενο Μαθήματος Ποσοτικές Μέθοδοι στη Διοίκηση Επιχειρήσεων ΙΙ Σύνολο- Περιεχόμενο Μαθήματος Χιωτίδης Γεώργιος Τμήμα Λογιστικής και Χρηματοοικονομικής Άδειες Χρήσης Το παρόν εκπαιδευτικό υλικό υπόκειται σε άδειες χρήσης

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

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

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

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

Συστήματα Peer To Peer (P2P Systems) Γαλάνης Δημήτριος Παπαδημητρίου Χριστίνα

Συστήματα Peer To Peer (P2P Systems) Γαλάνης Δημήτριος Παπαδημητρίου Χριστίνα Συστήματα Peer To Peer (P2P Systems) Γαλάνης Δημήτριος Παπαδημητρίου Χριστίνα Τα Peer-To-Peer προσελκύουν το ενδιαφέρον Ακαδημαϊκά Προσπάθειες International Workshop on P2P Computing Global and P2P Computing

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

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

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

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

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

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

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

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

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

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

Τμήμα Μηχανικών Πληροφορικής και Τηλεπικοινωνιών

Τμήμα Μηχανικών Πληροφορικής και Τηλεπικοινωνιών Δομημένος Προγραμματισμός Ενότητα 4(β): Εργαστηριακή Άσκηση Αναπλ. Καθηγητής: Κωνσταντίνος Στεργίου Τμήμα Μηχανικών Πληροφορικής και Τηλεπικοινωνιών Άδειες Χρήσης Το παρόν εκπαιδευτικό υλικό υπόκειται

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

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

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

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

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

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

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

Δομές Δεδομένων. Δημήτρης Μιχαήλ. Κατακερματισμός. Τμήμα Πληροφορικής και Τηλεματικής Χαροκόπειο Πανεπιστήμιο

Δομές Δεδομένων. Δημήτρης Μιχαήλ. Κατακερματισμός. Τμήμα Πληροφορικής και Τηλεματικής Χαροκόπειο Πανεπιστήμιο Δομές Δεδομένων Κατακερματισμός Δημήτρης Μιχαήλ Τμήμα Πληροφορικής και Τηλεματικής Χαροκόπειο Πανεπιστήμιο Λεξικό Dictionary Ένα λεξικό (dictionary) είναι ένας αφηρημένος τύπος δεδομένων (ΑΤΔ) που διατηρεί

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

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

Εισαγωγή. E-03: Λειτουργικά Συστήµατα ΙΙ 6. Εαρινό Εξάµηνο 2005-06. Κατανεµηµένα συστήµατα αρχείων. Μέρη κατανεµηµένου συστήµατος αρχείων Εισαγωγή Ε-03: Λειτουργικά Συστήµατα ΙΙ Εαρινό Εξάµηνο 2005-06 «Κατανεµηµένα Συστήµατα Αρχείων (1/2)» ρ. Παναγιώτης Χατζηδούκας (Π..407/80) Σύστηµα αρχείων Αποθήκευση, προσπέλαση και διαχείριση δεδοµένων

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

Άδειες Χρήσης Το παρόν εκπαιδευτικό υλικό υπόκειται σε άδειες χρήσης Creative Commons. Για εκπαιδευτικό υλικό, όπως εικόνες, που υπόκειται σε άλλου τύ

Άδειες Χρήσης Το παρόν εκπαιδευτικό υλικό υπόκειται σε άδειες χρήσης Creative Commons. Για εκπαιδευτικό υλικό, όπως εικόνες, που υπόκειται σε άλλου τύ Θεωρία Υπολογισμού Ενότητα 24: Μη Ντεντερμινιστικές Μηχανές Turing Τμήμα Πληροφορικής Άδειες Χρήσης Το παρόν εκπαιδευτικό υλικό υπόκειται σε άδειες χρήσης Creative Commons. Για εκπαιδευτικό υλικό, όπως

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

Τμήμα Μηχανικών Πληροφορικής και Τηλεπικοινωνιών

Τμήμα Μηχανικών Πληροφορικής και Τηλεπικοινωνιών Δομημένος Προγραμματισμός Ενότητα 2(γ): Εργαστηριακή Άσκηση Αναπλ. Καθηγητής: Κωνσταντίνος Στεργίου Τμήμα Μηχανικών Πληροφορικής και Τηλεπικοινωνιών Άδειες Χρήσης Το παρόν εκπαιδευτικό υλικό υπόκειται

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

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

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

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

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

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

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

Άσκηση 3 (ανακοινώθηκε στις 14 Μαΐου 2018, προθεσμία παράδοσης: 8 Ιουνίου 2018, 12 τα μεσάνυχτα).

Άσκηση 3 (ανακοινώθηκε στις 14 Μαΐου 2018, προθεσμία παράδοσης: 8 Ιουνίου 2018, 12 τα μεσάνυχτα). Κ08 Δομές Δεδομένων και Τεχνικές Προγραμματισμού Διδάσκων: Μανόλης Κουμπαράκης Εαρινό Εξάμηνο 2017-2018. Άσκηση 3 (ανακοινώθηκε στις 14 Μαΐου 2018, προθεσμία παράδοσης: 8 Ιουνίου 2018, 12 τα μεσάνυχτα).

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

Τίτλος Μαθήματος: ΕΙΣΑΓΩΓΗ ΣΤΗΝ ΑΝΑΛΥΣΗ ΑΛΓΟΡΙΘΜΩΝ

Τίτλος Μαθήματος: ΕΙΣΑΓΩΓΗ ΣΤΗΝ ΑΝΑΛΥΣΗ ΑΛΓΟΡΙΘΜΩΝ Τίτλος Μαθήματος: ΕΙΣΑΓΩΓΗ ΣΤΗΝ ΑΝΑΛΥΣΗ ΑΛΓΟΡΙΘΜΩΝ Ενότητα 5: Ασκήσεις Μαρία Σατρατζέμη Τμήμα Εφαρμοσμένης Πληροφορικής Άδειες Χρήσης Το παρόν εκπαιδευτικό υλικό υπόκειται σε άδειες χρήσης Creative Commons.

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

ΕΙΣΑΓΩΓΗ ΣΤΗΝ ΑΝΑΛΥΣΗ ΑΛΓΟΡΙΘΜΩΝ

ΕΙΣΑΓΩΓΗ ΣΤΗΝ ΑΝΑΛΥΣΗ ΑΛΓΟΡΙΘΜΩΝ ΕΙΣΑΓΩΓΗ ΣΤΗΝ ΑΝΑΛΥΣΗ ΑΛΓΟΡΙΘΜΩΝ Ενότητα 7β: Όρια Αλγόριθμων Ταξινόμησης Μαρία Σατρατζέμη Τμήμα Εφαρμοσμένης Πληροφορικής Άδειες Χρήσης Το παρόν εκπαιδευτικό υλικό υπόκειται σε άδειες χρήσης Creative Commos.

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

ΑΝΑΠΤΥΞΗ ΕΦΑΡΜΟΓΩΝ ΣΕ ΠΡΟΓΡΑΜΜΑΤΙΣΤΙΚΟ ΠΕΡΙΒΑΛΛΟΝ ΕΠΑΝΑΛΗΠΤΙΚΟ ΔΙΑΓΩΝΙΣΜΑ ΣΧΟΛΙΚΟΥ ΕΤΟΥΣ 2013-2014

ΑΝΑΠΤΥΞΗ ΕΦΑΡΜΟΓΩΝ ΣΕ ΠΡΟΓΡΑΜΜΑΤΙΣΤΙΚΟ ΠΕΡΙΒΑΛΛΟΝ ΕΠΑΝΑΛΗΠΤΙΚΟ ΔΙΑΓΩΝΙΣΜΑ ΣΧΟΛΙΚΟΥ ΕΤΟΥΣ 2013-2014 ΑΝΑΠΤΥΞΗ ΕΦΑΡΜΟΓΩΝ ΣΕ ΠΡΟΓΡΑΜΜΑΤΙΣΤΙΚΟ ΠΕΡΙΒΑΛΛΟΝ ΕΠΑΝΑΛΗΠΤΙΚΟ ΔΙΑΓΩΝΙΣΜΑ ΣΧΟΛΙΚΟΥ ΕΤΟΥΣ 2013-2014 Επιμέλεια: Ομάδα Διαγωνισμάτων από το Στέκι των Πληροφορικών Θέμα Α A1. Να γράψετε στο τετράδιό σας τους

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

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

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

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

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

ΕΙΣΑΓΩΓΗ ΣΤΗΝ ΠΛΗΡΟΦΟΡΙΚΗ ΕΙΣΑΓΩΓΗ ΣΤΗΝ ΠΛΗΡΟΦΟΡΙΚΗ Ενότητα: 11Η ΕΡΓΑΣΤΗΡΙΑΚΗ ΑΣΚΗΣΗ Δρ. ΠΑΝΤΕΛΗΣ ΑΓΓΕΛΙΔΗΣ Τμήμα Μηχανικών Πληροφορικής και Τηλεπικοινωνιών Άδειες Χρήσης Το παρόν εκπαιδευτικό υλικό υπόκειται σε άδειες χρήσης Creative

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

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

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

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

ΤΕΧΝΟΛΟΓΙΑ ΛΟΓΙΣΜΙΚΟΥ Ι

ΤΕΧΝΟΛΟΓΙΑ ΛΟΓΙΣΜΙΚΟΥ Ι ΤΕΧΝΟΛΟΓΙΑ ΛΟΓΙΣΜΙΚΟΥ Ι κ. ΠΕΤΑΛΙΔΗΣ ΤΜΗΜΑ ΜΗΧΑΝΙΚΩΝ ΠΛΗΡΟΦΟΡΙΚΗΣ ΤΕ 1 Άδειες Χρήσης Το παρόν εκπαιδευτικό υλικό υπόκειται σε άδειες χρήσης Creative Commons. Για εκπαιδευτικό υλικό, όπως εικόνες, που υπόκειται

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

Ενότητα. Σχεδίαση Βάσεων Δεδομένων

Ενότητα. Σχεδίαση Βάσεων Δεδομένων Ενότητα 3 Σχεδίαση Βάσεων Δεδομένων 2 3 3.1 Εισαγωγή Μία βάση δεδομένων αποτελείται από δεδομένα για διάφορα θέματα τα οποία όμως σχετίζονται μεταξύ τους και είναι καταχωρημένα με συγκεκριμένο τρόπο. Όλα

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

TEC610 Δυναμικές Εφαρμογές Διαδικτύου (ΣΤ εξάμηνο)

TEC610 Δυναμικές Εφαρμογές Διαδικτύου (ΣΤ εξάμηνο) TEC610 Δυναμικές Εφαρμογές Διαδικτύου (ΣΤ εξάμηνο) Διδάσκων: Ανδρέας Γιαννακουλόπουλος Εαρινό εξάμηνο 2014-2015 Χρηματοδότηση Το παρόν εκπαιδευτικό υλικό έχει αναπτυχθεί στα πλαίσια του εκπαιδευτικού έργου

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

Εργαστηριακός Οδηγός. Βάσεις Δεδομένων της Γ' Τάξης ΕΠΑΛ

Εργαστηριακός Οδηγός. Βάσεις Δεδομένων της Γ' Τάξης ΕΠΑΛ Άδεια Χρήσης Creative Commons, Αναφορά Προέλευσης 3.0 Ελλάδα 2009-200, Βουρλάκος Μιχαήλ Εργαστηριακός Οδηγός για το μάθημα Βάσεις Δεδομένων της Γ' Τάξης ΕΠΑΛ σε περιβάλλον Microsoft Access Υπεύθυνος Καθηγητής:

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

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

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

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

Δομημένος Προγραμματισμός

Δομημένος Προγραμματισμός ΕΛΛΗΝΙΚΗ ΔΗΜΟΚΡΑΤΙΑ Ανώτατο Εκπαιδευτικό Ίδρυμα Πειραιά Τεχνολογικού Τομέα Δομημένος Προγραμματισμός Ενότητα: Συναρτήσεις θεωρία Δ. Ε. Μετάφας Τμ. Ηλεκτρονικών Μηχ. Τ.Ε. Άδειες Χρήσης Το παρόν εκπαιδευτικό

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

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

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

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

TEC610 Δυναμικές Εφαρμογές Διαδικτύου (ΣΤ εξάμηνο)

TEC610 Δυναμικές Εφαρμογές Διαδικτύου (ΣΤ εξάμηνο) TEC610 (ΣΤ εξάμηνο) Διδάσκων: Ανδρέας Γιαννακουλόπουλος Εαρινό εξάμηνο Χρηματοδότηση Το παρόν εκπαιδευτικό υλικό έχει αναπτυχθεί στα πλαίσια του εκπαιδευτικού έργου του διδάσκοντα. Το έργο «Ανοικτά Ακαδημαϊκά

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

Το Πρόβλημα του Περιοδεύοντος Πωλητή - The Travelling Salesman Problem

Το Πρόβλημα του Περιοδεύοντος Πωλητή - The Travelling Salesman Problem Το Πρόβλημα του Περιοδεύοντος Πωλητή - The Travelling Salesman Problem Έλενα Ρόκου Μεταδιδακτορική Ερευνήτρια ΕΜΠ Κηρυττόπουλος Κωνσταντίνος Επ. Καθηγητής ΕΜΠ Άδεια Χρήσης Το παρόν εκπαιδευτικό υλικό υπόκειται

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

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

ΕΘΝΙΚΟ ΜΕΤΣΟΒΙΟ ΠΟΛΥΤΕΧΝΕΙΟ ΤΜΗΜΑ ΗΛΕΚΤΡΟΛΟΓΩΝ ΜΗΧΑΝΙΚΩΝ ΚΑΙ ΜΗΧΑΝΙΚΩΝ ΥΠΟΛΟΓΙΣΤΩΝ ΛΥΣΗ ΣΤΗΝ ΕΥΤΕΡΗ ΑΣΚΗΣΗ ΕΘΝΙΚΟ ΜΕΤΣΟΒΙΟ ΠΟΛΥΤΕΧΝΕΙΟ ΤΜΗΜΑ ΗΛΕΚΤΡΟΛΟΓΩΝ ΜΗΧΑΝΙΚΩΝ ΚΑΙ ΜΗΧΑΝΙΚΩΝ ΥΠΟΛΟΓΙΣΤΩΝ ΛΥΣΗ ΣΤΗΝ ΕΥΤΕΡΗ ΑΣΚΗΣΗ ΜΑΘΗΜΑ ΒΑΣΕΙΣ Ε ΟΜΕΝΩΝ ΑΚΑ. ΕΤΟΣ 2012-13 Ι ΑΣΚΟΝΤΕΣ Ιωάννης Βασιλείου Καθηγητής, Τοµέας Τεχνολογίας

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

Διαχρονικές δομές δεδομένων

Διαχρονικές δομές δεδομένων Διαχρονικές δομές δεδομένων Μια τυπική δομή δεδομένων μεταβάλλεται με πράξεις εισαγωγής ή διαγραφής Π.χ. κοκκινόμαυρο δένδρο εισαγωγή 0 18 0 5 39 73 1 46 6 80 Αποκατάσταση ισορροπίας 5 39 73 0 46 6 80

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

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

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

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

Δομές Δεδομένων & Αλγόριθμοι

Δομές Δεδομένων & Αλγόριθμοι Θέματα Απόδοσης Αλγορίθμων 1 Η Ανάγκη για Δομές Δεδομένων Οι δομές δεδομένων οργανώνουν τα δεδομένα πιο αποδοτικά προγράμματα Πιο ισχυροί υπολογιστές πιο σύνθετες εφαρμογές Οι πιο σύνθετες εφαρμογές απαιτούν

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

Περιεχόμενα Ορισμός και λειτουργία των μηχανών Turing Θεωρία Υπολογισμού Ενότητα 20: Μηχανές Turing: Σύνθεση και Υπολογισμοί Επ. Καθ. Π. Κατσαρός Τμήμ

Περιεχόμενα Ορισμός και λειτουργία των μηχανών Turing Θεωρία Υπολογισμού Ενότητα 20: Μηχανές Turing: Σύνθεση και Υπολογισμοί Επ. Καθ. Π. Κατσαρός Τμήμ Θεωρία Υπολογισμού Ενότητα 20: Μηχανές Turing: Σύνθεση και Υπολογισμοί Τμήμα Πληροφορικής Άδειες Χρήσης Το παρόν εκπαιδευτικό υλικό υπόκειται σε άδειες χρήσης Creative Commons. Για εκπαιδευτικό υλικό,

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

ΑΣΦΑΛΕΙΑ & ΔΙΑΧΕΙΡΙΣΗ ΔΙΚΤΥΩΝ(Θ)

ΑΣΦΑΛΕΙΑ & ΔΙΑΧΕΙΡΙΣΗ ΔΙΚΤΥΩΝ(Θ) ΑΣΦΑΛΕΙΑ & ΔΙΑΧΕΙΡΙΣΗ ΔΙΚΤΥΩΝ(Θ) Ενότητα 10: ΑΣΦΑΛΕΙΑ & ΔΙΑΧΕΙΡΙΣΗ ΔΙΚΤΥΩΝ ΔΙΔΑΣΚΩΝ: ΚΩΝΣΤΑΝΤΙΝΟΣ ΧΕΙΛΑΣ ΣΧΟΛΗ ΤΕΧΝΟΛΟΓΙΚΩΝ ΕΦΑΡΜΟΓΩΝ ΤΜΗΜΑ ΜΗΧΑΝΙΚΩΝ ΠΛΗΡΟΦΟΡΙΚΗΣ ΤΕ 1 Άδειες Χρήσης Το παρόν εκπαιδευτικό

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

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

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

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

Ειδικά Θέματα Δικτύων ΙΙ. Ενότητα 7: Δρομολόγηση κατάστασης ζεύξης (Μέρος 1) Νικολάου Σπύρος Τμήμα Μηχανικών Πληροφορικής ΤΕ

Ειδικά Θέματα Δικτύων ΙΙ. Ενότητα 7: Δρομολόγηση κατάστασης ζεύξης (Μέρος 1) Νικολάου Σπύρος Τμήμα Μηχανικών Πληροφορικής ΤΕ Ειδικά Θέματα Δικτύων ΙΙ Ενότητα 7: Δρομολόγηση κατάστασης ζεύξης (Μέρος 1) Νικολάου Σπύρος Τμήμα Μηχανικών Πληροφορικής ΤΕ Άδειες Χρήσης Το παρόν εκπαιδευτικό υλικό υπόκειται σε άδειες χρήσης Creative

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

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

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

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

ΠΛΗΡΟΦΟΡΙΚΗ Ι Ενότητα 3: Συναρτήσεις

ΠΛΗΡΟΦΟΡΙΚΗ Ι Ενότητα 3: Συναρτήσεις ΠΛΗΡΟΦΟΡΙΚΗ Ι Ενότητα 3: Συναρτήσεις Μιχάλης Δρακόπουλος Σχολή Θετικών επιστημών Τμήμα Μαθηματικών Συναρτήσεις 60 Ροή ελέγχου Είναι η σειρά µε την οποία εκτελούνται οι εντολές. Μέχρι τώρα, «σειριακή»,

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

Κεφ.11: Ευρετήρια και Κατακερματισμός

Κεφ.11: Ευρετήρια και Κατακερματισμός Κεφ.11: Ευρετήρια και Κατακερματισμός Database System Concepts, 6 th Ed. See www.db-book.com for conditions on re-use Κεφ. 11: Ευρετήρια-Βασική θεωρία Μηχανισμοί ευρετηρίου χρησιμοποιούνται για την επιτάχυνση

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

Επίπεδο Δικτύου: Διαδικτύωση

Επίπεδο Δικτύου: Διαδικτύωση Επίπεδο Δικτύου: Διαδικτύωση Μάθημα «Δίκτυα Υπολογιστών» Τμήμα Πληροφορικής Οικονομικό Πανεπιστήμιο Αθηνών Εαρινό Εξάμηνο 2013-14 Γεώργιος Ξυλωμένος Γεώργιος Δ. Σταμούλης Βασίλειος Σύρης Εισαγωγή Υπάρχει

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

Συνοπτική Μεθοδολογία Ασκήσεων Κεφαλαίου 7. Ασκήσεις στο IP Fragmentation

Συνοπτική Μεθοδολογία Ασκήσεων Κεφαλαίου 7. Ασκήσεις στο IP Fragmentation Συνοπτική Μεθοδολογία Ασκήσεων Κεφαλαίου 7 Οι σημειώσεις που ακολουθούν περιγράφουν τις ασκήσεις που θα συναντήσετε στο κεφάλαιο 7. Η πιο συνηθισμένη και βασική άσκηση αναφέρεται στο IP Fragmentation,

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

Υπολογιστικά & Διακριτά Μαθηματικά

Υπολογιστικά & Διακριτά Μαθηματικά Υπολογιστικά & Διακριτά Μαθηματικά Ενότητα 5: Αναδρομικές σχέσεις - Υπολογισμός Αθροισμάτων Στεφανίδης Γεώργιος Άδειες Χρήσης Το παρόν εκπαιδευτικό υλικό υπόκειται σε άδειες χρήσης Creative Commons. Για

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

ΔΙΑΧΕΙΡΙΣΗ ΔΙΚΤΥΩΝ Δρομολόγηση στο Internet (II) Αλγόριθμοι Distance Vector (Bellman) Αλγόριθμοι Link State (Dijkstra)

ΔΙΑΧΕΙΡΙΣΗ ΔΙΚΤΥΩΝ Δρομολόγηση στο Internet (II) Αλγόριθμοι Distance Vector (Bellman) Αλγόριθμοι Link State (Dijkstra) ΔΙΑΧΕΙΡΙΣΗ ΔΙΚΤΥΩΝ Δρομολόγηση στο Internet (II) Αλγόριθμοι Distance Vector (Bellman) Αλγόριθμοι Link State (Dijkstra) Β. Μάγκλαρης maglaris@netmode.ntua.gr www.netmode.ntua.gr 2/11/2015 Άδεια Χρήσης Το

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

Προγραμματισμός Υπολογιστών & Υπολογιστική Φυσική

Προγραμματισμός Υπολογιστών & Υπολογιστική Φυσική ΑΡΙΣΤΟΤΕΛΕΙΟ ΠΑΝΕΠΙΣΤΗΜΙΟ ΘΕΣΣΑΛΟΝΙΚΗΣ ΑΝΟΙΚΤΑ ΑΚΑΔΗΜΑΪΚΑ ΜΑΘΗΜΑΤΑ Προγραμματισμός Υπολογιστών & Υπολογιστική Φυσική Ενότητα 7: Συναρτήσεις Νικόλαος Στεργιούλας Τμήμα Φυσικής Άδειες Χρήσης Το παρόν εκπαιδευτικό

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

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

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

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

Δομές Δεδομένων. Ενότητα 13: B-Δέντρα/AVL-Δέντρα. Καθηγήτρια Μαρία Σατρατζέμη. Τμήμα Εφαρμοσμένης Πληροφορικής. Δομές Δεδομένων

Δομές Δεδομένων. Ενότητα 13: B-Δέντρα/AVL-Δέντρα. Καθηγήτρια Μαρία Σατρατζέμη. Τμήμα Εφαρμοσμένης Πληροφορικής. Δομές Δεδομένων Ενότητα 13: B-Δέντρα/AVL-Δέντρα Καθηγήτρια Μαρία Σατρατζέμη Άδειες Χρήσης Το παρόν εκπαιδευτικό υλικό υπόκειται σε άδειες χρήσης Creative Commons. Για εκπαιδευτικό υλικό, όπως εικόνες, που υπόκειται σε

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

Δομές Δεδομένων. Καθηγήτρια Μαρία Σατρατζέμη. Τμήμα Εφαρμοσμένης Πληροφορικής. Δομές Δεδομένων. Τμήμα Εφαρμοσμένης Πληροφορικής

Δομές Δεδομένων. Καθηγήτρια Μαρία Σατρατζέμη. Τμήμα Εφαρμοσμένης Πληροφορικής. Δομές Δεδομένων. Τμήμα Εφαρμοσμένης Πληροφορικής Ενότητα 5: Δείκτες και Δυναμική Δέσμευση- Αποδέσμευση Μνήμης στη C/ Υλοποίηση ΑΤΔ Συνδεδεμένη Λίστα με δείκτες /Ένα πακέτο για τον ΑΤΔ Συνδεδεμένη Λίστα Καθηγήτρια Μαρία Σατρατζέμη Άδειες Χρήσης Το παρόν

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

ΠΑΝΕΠΙΣΤΗΜΙΟ ΙΩΑΝΝΙΝΩΝ ΑΝΟΙΚΤΑ ΑΚΑΔΗΜΑΪΚΑ ΜΑΘΗΜΑΤΑ

ΠΑΝΕΠΙΣΤΗΜΙΟ ΙΩΑΝΝΙΝΩΝ ΑΝΟΙΚΤΑ ΑΚΑΔΗΜΑΪΚΑ ΜΑΘΗΜΑΤΑ ΠΑΝΕΠΙΣΤΗΜΙΟ ΙΩΑΝΝΙΝΩΝ ΑΝΟΙΚΤΑ ΑΚΑΔΗΜΑΪΚΑ ΜΑΘΗΜΑΤΑ Μεταφραστές Εισαγωγή Διδάσκων: Επικ. Καθ. Γεώργιος Μανής Άδειες Χρήσης Το παρόν εκπαιδευτικό υλικό υπόκειται σε άδειες χρήσης Creative Commons. Για εκπαιδευτικό

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

Τμήμα Μηχανικών Πληροφορικής και Τηλεπικοινωνιών

Τμήμα Μηχανικών Πληροφορικής και Τηλεπικοινωνιών Δομημένος Προγραμματισμός Ενότητα 5(α): Εργαστηριακή Άσκηση Αναπλ. Καθηγητής: Κωνσταντίνος Στεργίου Τμήμα Μηχανικών Πληροφορικής και Τηλεπικοινωνιών Άδειες Χρήσης Το παρόν εκπαιδευτικό υλικό υπόκειται

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

ΑΝΤΙΚΕΙΜΕΝΟΣΤΡΕΦΗΣ ΑΝΑΛΥΣΗ Επιχειρηματική Μοντελοποίηση. Ιωάννης Σταμέλος Βάιος Κολοφωτιάς Πληροφορική

ΑΝΤΙΚΕΙΜΕΝΟΣΤΡΕΦΗΣ ΑΝΑΛΥΣΗ Επιχειρηματική Μοντελοποίηση. Ιωάννης Σταμέλος Βάιος Κολοφωτιάς Πληροφορική ΑΝΤΙΚΕΙΜΕΝΟΣΤΡΕΦΗΣ ΑΝΑΛΥΣΗ Επιχειρηματική Μοντελοποίηση Ιωάννης Σταμέλος Βάιος Κολοφωτιάς Πληροφορική Θεσσαλονίκη, Σεπτέμβριος 2013 Άδειες Χρήσης Το παρόν εκπαιδευτικό υλικό υπόκειται σε άδειες χρήσης

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

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

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

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

ΤΕΧΝΟΛΟΓΙΑ ΛΟΓΙΣΜΙΚΟΥ Ι

ΤΕΧΝΟΛΟΓΙΑ ΛΟΓΙΣΜΙΚΟΥ Ι ΤΕΧΝΟΛΟΓΙΑ ΛΟΓΙΣΜΙΚΟΥ Ι κ. ΠΕΤΑΛΙΔΗΣ ΤΜΗΜΑ ΜΗΧΑΝΙΚΩΝ ΠΛΗΡΟΦΟΡΙΚΗΣ ΤΕ 1 Άδειες Χρήσης Το παρόν εκπαιδευτικό υλικό υπόκειται σε άδειες χρήσης Creative Commons. Για εκπαιδευτικό υλικό, όπως εικόνες, που υπόκειται

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

Εισαγωγή στους Ηλεκτρονικούς Υπολογιστές. 6 ο Μάθημα. Λεωνίδας Αλεξόπουλος Λέκτορας ΕΜΠ. url:

Εισαγωγή στους Ηλεκτρονικούς Υπολογιστές. 6 ο Μάθημα. Λεωνίδας Αλεξόπουλος Λέκτορας ΕΜΠ.   url: στους Ηλεκτρονικούς Υπολογιστές 6 ο Μάθημα Λεωνίδας Αλεξόπουλος Λέκτορας ΕΜΠ email: leo@mail.ntua.gr url: http://users.ntua.gr/leo Άδεια Χρήσης Το παρόν εκπαιδευτικό υλικό υπόκειται σε άδειες χρήσης Creative

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

Μαθηματικά και Φυσική με Υπολογιστές

Μαθηματικά και Φυσική με Υπολογιστές ΠΑΝΕΠΙΣΤΗΜΙΟ ΙΩΑΝΝΙΝΩΝ ΑΝΟΙΚΤΑ ΑΚΑΔΗΜΑΪΚΑ ΜΑΘΗΜΑΤΑ Μαθηματικά και Φυσική με Υπολογιστές Εφαρμογές στα Μαθηματικά Διδάσκων: Καθηγητής Ι. Ρίζος Άδειες Χρήσης Το παρόν εκπαιδευτικό υλικό υπόκειται σε άδειες

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

ΤΕΧΝΗΤΗ ΝΟΗΜΟΣΥΝΗ. Ενότητα 6: Προβλήματα ικανοποίησης περιορισμών. Ρεφανίδης Ιωάννης Τμήμα Εφαρμοσμένης Πληροφορικής

ΤΕΧΝΗΤΗ ΝΟΗΜΟΣΥΝΗ. Ενότητα 6: Προβλήματα ικανοποίησης περιορισμών. Ρεφανίδης Ιωάννης Τμήμα Εφαρμοσμένης Πληροφορικής Ενότητα 6: Προβλήματα ικανοποίησης περιορισμών Ρεφανίδης Ιωάννης Άδειες Χρήσης Το παρόν εκπαιδευτικό υλικό υπόκειται σε άδειες χρήσης Creative Commons. Για εκπαιδευτικό υλικό, όπως εικόνες, που υπόκειται

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

ΕΙΣΑΓΩΓΗ ΣΤΗΝ ΑΝΑΛΥΣΗ ΑΛΓΟΡΙΘΜΩΝ

ΕΙΣΑΓΩΓΗ ΣΤΗΝ ΑΝΑΛΥΣΗ ΑΛΓΟΡΙΘΜΩΝ ΕΙΣΑΓΩΓΗ ΣΤΗΝ ΑΝΑΛΥΣΗ ΑΛΓΟΡΙΘΜΩΝ Ενότητα 13: Αλγόριθμοι-Μεγάλων ακεραίων- Εκθετοποίηση- Πολλαπλασιασμός πινάκων -Strassen Μαρία Σατρατζέμη Τμήμα Εφαρμοσμένης Πληροφορικής Άδειες Χρήσης Το παρόν εκπαιδευτικό

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

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

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

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

Άδειες Χρήσης Το παρόν εκπαιδευτικό υλικό υπόκειται σε άδειες χρήσης Creative Commons. Για εκπαιδευτικό υλικό, όπως εικόνες, που υπόκειται σε άλλου τύ

Άδειες Χρήσης Το παρόν εκπαιδευτικό υλικό υπόκειται σε άδειες χρήσης Creative Commons. Για εκπαιδευτικό υλικό, όπως εικόνες, που υπόκειται σε άλλου τύ Θεωρία Υπολογισμού Ενότητα 21: Υπολογισμοί ΜΤ - Αναδρομικές Γλώσσες Τμήμα Πληροφορικής Άδειες Χρήσης Το παρόν εκπαιδευτικό υλικό υπόκειται σε άδειες χρήσης Creative Commons. Για εκπαιδευτικό υλικό, όπως

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

Δομές Δεδομένων (Εργ.) Ακ. Έτος Διδάσκων: Ευάγγελος Σπύρου. Εργαστήριο 10 Δυαδικά Δένδρα Αναζήτησης

Δομές Δεδομένων (Εργ.) Ακ. Έτος Διδάσκων: Ευάγγελος Σπύρου. Εργαστήριο 10 Δυαδικά Δένδρα Αναζήτησης ΤΜΗΜΑ ΠΛΗΡΟΦΟΡΙΚΗΣ ΠΑΝΕΠΙΣΤΗΜΙΟ ΘΕΣΣΑΛΙΑΣ Δομές Δεδομένων (Εργ.) Ακ. Έτος 2017-18 Διδάσκων: Ευάγγελος Σπύρου Εργαστήριο 10 Δυαδικά Δένδρα Αναζήτησης 1. Στόχος του εργαστηρίου Στόχος του δέκατου εργαστηρίου

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

Σχεδίαση Δικτύων Υπολογιστών

Σχεδίαση Δικτύων Υπολογιστών Σχεδίαση Δικτύων Υπολογιστών Ενότητα 6: Δρομολόγηση κατάστασης ζεύξης Άγγελος Μιχάλας Τμήμα Μηχανικών Πληροφορικής ΤΕ Άδειες Χρήσης Το παρόν εκπαιδευτικό υλικό υπόκειται σε άδειες χρήσης Creative Commons.

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

Άδειες Χρήσης Το παρόν εκπαιδευτικό υλικό υπόκειται σε άδειες χρήσης Creative Commons. Για εκπαιδευτικό υλικό, όπως εικόνες, που υπόκειται σε άλλου τύ

Άδειες Χρήσης Το παρόν εκπαιδευτικό υλικό υπόκειται σε άδειες χρήσης Creative Commons. Για εκπαιδευτικό υλικό, όπως εικόνες, που υπόκειται σε άλλου τύ Θεωρία Υπολογισμού Ενότητα 18: Λήμμα Άντλησης για ΓΧΣ Τμήμα Πληροφορικής Άδειες Χρήσης Το παρόν εκπαιδευτικό υλικό υπόκειται σε άδειες χρήσης Creative Commons. Για εκπαιδευτικό υλικό, όπως εικόνες, που

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

Ενότητα 6: Κατακερματισμός Ασκήσεις και Λύσεις

Ενότητα 6: Κατακερματισμός Ασκήσεις και Λύσεις ΗΥ2, Ενότητα : Ασκήσεις και Λύσεις Ενότητα : Κατακερματισμός Ασκήσεις και Λύσεις Άσκηση 1 Χρησιμοποιήστε τη συνάρτηση κατακερματισμού της διαίρεσης ως πρωτεύουσα συνάρτηση κατακερματισμού και τη συνάρτηση

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