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

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

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

Transcript

1 Κατανεμημένα Συστήματα Βασικές Έννοιες, Αρχιτεκτονικά Μοντέλα, Σχεδιαστικές Προκλήσεις Χρήστος Γκουμόπουλος Πανεπιστήμιο Αιγαίου Τμήμα Μηχανικών Πληροφοριακών και Επικοινωνιακών Συστημάτων

2 ΒΑΣΙΚΕΣΕΝΝΟΙΕΣ 2

3 Τι είναι ένα Κατανεμημένο Σύστημα (ΚΣ) Ένα σύνολο αυτόνομων υπολογιστών το οποίο παρουσιάζεται στους χρήστες του σαν ένας ενιαίος υπολογιστής. Σύστημα του οποίου τα συστατικά (υλικό και λογισμικό) βρίσκονται σε δικτυωμένους υπολογιστές και επικοινωνούν μεταξύ τους για να συντονίσουν τη δράση τους με ανταλλαγή μηνυμάτων 3

4 Διαμοίραση πόρων Η διαμοίραση πόρων (resource sharing) είναι το βασικό κίνητρο για την κατασκευή των κατανεμημένων συστημάτων. Οι πόροι μπορεί να αναφέρονται σε συστατικά υλικού, λογισμικού ή δεδομένων και παραδείγματα μπορεί να είναι : ο εκτυπωτής που μοιράζεται στο εργαστήριο ΗΛΕΚΤΡΑ του τμήματος ΜΠΕΣ, το υλικό μιας διάλεξης, μια ιστοσελίδα με το βιογραφικό σας, επεισόδια της τηλεοπτικής σειράς Lost, μουσική στο itunes, μια μηχανή αναζήτησης στο Διαδίκτυο 4

5 Διαμοίραση πόρων Υλικό Υπολογιστική ισχύς (CPU): Κάθε είδους εξυπηρετητής, εξυπηρετητές υπολογισμών σε αρχιτεκτονικές thin client, εφαρμογές τύπου Περιφερειακά: εκτυπωτές, μηχανές στοιχειοθέτησης (typesetters), drum scanners, επιστημονικά όργανα, κ.α. Αποθηκευτικός χώρος: μνήμη(proxy server), δίσκος (file/db server) Οθόνες: Συστήματα όπως το Χ-11(διαφορετικές διεργασίες ενημερώνουν το περιεχόμενο μιας οθόνης) Μέσο μετάδοσης: Ασύρματα ή ενσύρματα φυσικά δίκτυα 5

6 Διαμοίραση πόρων Λογισμικό ή Δεδομένα Ιστοσελίδες,είτε στατικές (π.χ. το υλικό μιας διάλεξης), είτε δυναμικές (π.χ. για την υποστήριξη web-banking) Εφαρμογές, π.χ. μια μηχανή αναζήτησης στο Διαδίκτυο Βάσεις Δεδομένων, π.χ. Γεωγραφικές ΒΔ για συστήματα εντοπισμού θέσης, μουσική στο itunes, επεισόδια της τηλεοπτικής σειράς Lost Αρχεία, σε έναν file server 6

7 Παράδειγμα ΚΣ: Διαδίκτυο 7

8 Παράδειγμα ΚΣ: Εταιρικά Δίκτυα 8

9 Παράδειγμα ΚΣ: Συστήματα Κινητού και Διάχυτου Υπολογισμού Internet Host intranet Wireless LAN WAP gateway Home intranet Printer Camera Mobile phone Laptop Host site 9

10 Διάχυτο σύστημα ηλεκτρονικών διοδίων Θεωρούμε το σενάριο ενός πλήρως αυτοματοποιημένου διάχυτου συστήματος ηλεκτρονικών διοδίων στην περίμετρο μιας πόλης το οποίο για να επιτρέπει την ανεμπόδιστη ροή των οχημάτων δεν έχει μπάρα που να απαγορεύει τη δίοδο στα αυτοκίνητα που δε διαθέτουν ηλεκτρονική κάρτα διοδίων. Ποιες είναι οι βασικές τεχνολογικές υποδομές που απαιτούνται για τη λειτουργία του; Ποιες παραμέτρους πλαισίου μπορεί να αξιοποιήσει; Ποιες άλλες υπηρεσίες θα μπορούσε να παρέχει επιπρόσθετα στη χρέωση του αντιτίμου του διοδίου; 10

11 Διάχυτο σύστημα διοδίων: τεχνολογικές υποδομές RFID reader στο σταθμό διοδίων RFID tag στην ηλεκτρονική κάρτα διοδίων του αυτοκινήτου Κάμερα για την εξακρίβωση του τύπου του οχήματος και ανάγνωση της πινακίδας του αυτοκινήτου (ώστε αν το όχημα δεν διαθέτει ηλεκτρονική κάρτα διοδίων να στέλνεται κλήση στη διεύθυνση του ιδιοκτήτη του οχήματος. 11

12 Παράμετροι πλαισίου Πλαίσιο (context) περιγραφή του περιβάλλοντος στο οποίο λειτουργεί η εφαρμογή Παραδείγματα: Θέση, χρόνος, προσανατολισμός, καιρός, φωτεινότητα, θερμοκρασία, ταχύτητα, άλλοι χρήστες ή συσκευές στο περιβάλλον, κλπ Εφαρμογή με επίγνωση πλαισίου (context-aware application): Έχει τη δυνατότητα να συλλάβει/αντιληφθεί το πλαίσιο Αποδίδει σημασία σε αυτό Μεταβάλλει τη συμπεριφορά της αντίστοιχα 12

13 Διάχυτο σύστημα διοδίων: παράμετροι πλαισίου Ταυτότητα οχήματος τα φορτηγά πληρώνουν περισσότερο από τα Ι.Χ. ένα όχημα με μεγάλη συχνότητα διέλευσης πληρώνει λιγότερο Ώρα της ημέρας (ακριβότερα διόδια σε ώρες αιχμής) 13

14 Διάχυτο σύστημα διοδίων: άλλες υπηρεσίες Ο σταθμός διοδίων ειδοποιεί την αστυνομία όταν διέλθει αυτοκίνητο με κλεμμένες πινακίδες Ειδοποιούν την τροχαία για παραβάσεις του ΚΟΚ και επιβολή προστίμων (π.χ. εφόσον ένα αυτοκίνητο διέλθει από δύο συνεχόμενους σταθμούς διοδίων σε χρόνο μικρότερο από Tθα κοπεί πρόστιμο για υπερβολική ταχύτητα Πληροφόρηση για εκτιμώμενο χρόνο διαδρομής από το παρόν σημείο μέχρι κάποιο άλλο σημείο (βάσει του ρυθμού διέλευσης των οχημάτων) 14

15 Ζητήματα σχεδίασης ΚΣ ΚΣ = σύστημα του οποίου τα συστατικά (υλικό και λογισμικό) βρίσκονται σε δικτυωμένους υπολογιστές και επικοινωνούν μεταξύ τους για να συντονίσουν τη δράση τους με ανταλλαγή μηνυμάτων Ταυτοχρονισμός Απουσία σφαιρικού ρολογιού Ανεξάρτητες αστοχίες 15

16 Ταυτοχρονισμός Αφορά τη δυνατότητα ταυτόχρονης εκτέλεσης προγραμμάτων σε δίκτυο υπολογιστών. Ο χρήστης Χ εκτελεί εργασίες στον υπολογιστή του, ενώ ο χρήστης Υ εκτελεί τις δικές του εφαρμογές στον δικό του υπολογιστή και ταυτόχρονα μοιράζονται πόρους, όπως ιστοσελίδες και αρχεία, όταν χρειάζεται. Ο συντονισμός προγραμμάτων που εκτελούνται ταυτόχρονα και μοιράζονται πόρους είναι ένα σημαντικό ζήτημα στην σχεδίαση κατανεμημένων συστημάτων. 16

17 Απουσία σφαιρικού ρολογιού Αφορά το γεγονός ότι οι υπολογιστές που επικοινωνούν με ανταλλαγή μηνυμάτων σε ένα κατανεμημένο σύστημα δεν διαθέτουν ένα κοινό ρολόι για την μέτρηση του χρόνου, και υπάρχουν όρια στην ακρίβεια με την οποία μπορούν να συγχρονιστούν ως προς το χρόνο. Από την άλλη πλευρά, η επιτυχής συνεργασία των προγραμμάτων εξαρτάται από μια θεώρηση κοινού χρόνου βάσει του οποίου λαμβάνουν χώρα οι ενέργειές τους. 17

18 Διάταξη συμβάντων Θεωρώντας ως συμβάν την αποστολή ή τη λήψη ενός μηνύματος μας ενδιαφέρει να γνωρίζουμε τη χρονική διάταξη των συμβάντων σε σχέση με την εκτέλεση των διεργασιών του κατανεμημένου συστήματος. Η εκτέλεση ενός κατανεμημένου αλγόριθμου μπορεί να περιγραφεί υπό τη μορφή διάταξης συμβάντων, ακόμη και χωρίς την ύπαρξη κοινού ρολογιού. 18

19 Παράδειγμα: λήψη εκτός σειράς 19

20 Ανεξάρτητες αστοχίες Αφορά το γεγονός ότι κάθε συστατικό ενός κατανεμημένου συστήματος (υλικό, λογισμικό, δίκτυο) μπορεί να αποτύχει ανεξάρτητα από τα υπόλοιπα. Για παράδειγμα εάν αποτύχει το δίκτυο, τα προγράμματα που εκτελούνται στους υπολογιστές και επικοινωνούν με άλλους υπολογιστές δεν θα είναι εύκολο να αποφανθούν εάν το δίκτυο έχει αποτύχει, ή είναι αργό λόγω συμφόρησης, ή ακόμη εάν ο υπολογιστής ή το πρόγραμμα με το οποίο επικοινωνούν έχουν αποτύχει 20

21 Κατηγορίες αστοχιών αστοχία παράλειψης (omission failure), αυθαίρετη αστοχία (arbitrary failure) και αστοχία συγχρονισμού (timing failure). 21

22 Αστοχία παράλειψης Τα σφάλματα που κατατάσσονται σε αυτή την κατηγορία αφορούν τις περιπτώσεις που μια διεργασία ή ένα κανάλι επικοινωνίας αποτυγχάνει να διεκπεραιώσει τις λειτουργίες για τις οποίες δημιουργήθηκε. Οι διεργασίες αποτυγχάνουν στην εκτέλεσή τους (κατάρρευση) και τα κανάλια επικοινωνίας αποτυγχάνουν στην παράδοση των μηνυμάτων. Ένα κανάλι επικοινωνίας παράγει αστοχία παράλειψης αν δεν μεταφέρει ένα μήνυμα από τον απομονωτή (buffer)εξόδου της διεργασίας αποστολέα στον απομονωτή εισόδου της διεργασίας παραλήπτη. Αυτό μπορεί να συμβεί λόγω έλλειψης χώρου στον απομονωτή εισόδου ή σε κάποια ενδιάμεση πύλη δικτύου ή σε λάθος του δικτύου μετάδοσης. 22

23 Αυθαίρετες αστοχίες Ο όρος αυθαίρετη ή Βυζαντινή αστοχία χρησιμοποιείται για να περιγράψει τη χειρότερη περίπτωση σφάλματος όπου οποιοδήποτε λάθος μπορεί να συμβεί. 23

24 αστοχίες συγχρονισμού Σε ένα ΚΣ είναι δύσκολο να τεθούν χρονικά όρια σε σχέση με τον χρόνο που απαιτείται για την ολοκλήρωση μιας διεργασίας, την παράδοση ενός μηνύματος ή για τον ρυθμό ολίσθησης του ρολογιού. Δύο αντίθετες θεωρήσεις της παραπάνω παραδοχής μας δίνουν δύο απλά μοντέλα: Το μοντέλο σύγχρονων ΚΣ θέτει μια αυστηρή παραδοχή για τον χρόνο Το μοντέλο ασύγχρονων ΚΣ δεν θέτει καμιά. Οι αστοχίες συγχρονισμού συμβαίνουν μόνον στα σύγχρονα ΚΣ. Στα ασύγχρονα ΚΣ μπορεί να παρουσιαστούν μεγάλες καθυστερήσεις, αλλά δεν θεωρούνται αστοχίες, καθώς δεν προβλέπεται κάποιο χρονικό όριο απόκρισης. 24

25 ΑΡΧΙΤΕΚΤΟΝΙΚΑΜΟΝΤΕΛΑ 25

26 Αρχιτεκτονικά μοντέλα Για να διαχειριστούμε την ανάπτυξη πολύπλοκων συστημάτων είναι απαραίτητο να αντιμετωπίσουμε την πολυπλοκότητά τους με την διαίρεσή τους σε τμήματα. Τα αρχιτεκτονικά μοντέλα εκφράζουν τρόπους οργάνωσης των τμημάτων ενός συστήματος και τρόπους δόμησης των συσχετίσεων μεταξύ αυτών. Η αρχιτεκτονική προσέγγιση επίσης βοηθά : στην κατανόηση του συστήματος, στην οργάνωση της ανάπτυξής του, στην επαναχρησιμοποίηση των συστατικών του, στην συντήρηση και εξέλιξη του συστήματος 26

27 Αρχιτεκτονικά μοντέλα ΚΣ Για τα ΚΣ τα δύο βασικά αρχιτεκτονικά μοντέλα είναι: το μοντέλο πελάτη/εξυπηρετητή και το μοντέλο ομότιμων. 27

28 Μοντέλο client/server To μοντέλο περιλαμβάνει τους εξής ρόλους: service: η εργασία που ο server μπορεί να εκτελέσει server: η διεργασία/μηχανή που εκτελεί την εργασία client: η διεργασία/μηχανή που ζητά την εκτέλεση της εργασίας Directory server Print server File server client client 28

29 Μοντέλο client/server Πελάτης (client) Αναµονή απάντησης Αίτηση Απόκριση Εξυπηρετητής (server) Παροχή υπηρεσίας

30 Παραλλαγές Client/Server Υπηρεσίες παρεχόμενες από πολλαπλούς εξυπηρετητές Πληρεξούσιοι εξυπηρετητές (proxy servers) και προσωρινή αποθήκη(caching) Κινητός κώδικας (mobile code) Κινητοί πράκτορες (mobile agents) Υπολογιστές δικτύου (network computers) Ελαφριοί (λεπτοί) πελάτες (thin clients) Βαριοί πελάτες (fat clients) 30

31 Πολλαπλοί εξυπηρετητές 31

32 Πολλαπλοί εξυπηρετητές Ο στόχος αυτής της παραλλαγής του βασικού μοντέλου πελάτη-εξυπηρετητή είναι η αναβάθμιση της απόδοσης και της ανθεκτικότητας του συστήματος. Υπηρεσίες με μεγάλη ζήτηση, όπως οι μηχανές αναζήτησης, μπορεί να διαθέτουν πολλούς εξυπηρετητές αφιερωμένους σε μια συγκεκριμένη εργασία. Η πολλαπλότητα στην προσφορά της υπηρεσίας μπορεί να ακολουθήσει δύο προσεγγίσεις: είτε τα αντικείμενα που υλοποιούν την υπηρεσία μοιράζονται μεταξύ πολλαπλών εξυπηρετητών, είτε αντίγραφα των αντικειμένων διατηρούνται σε κάθε εξυπηρετητή. 32

33 Πληρεξούσιοι εξυπηρετητές (proxy servers) και προσωρινή αποθήκη(caching) 33

34 Πληρεξούσιοι εξυπηρετητές (proxy servers) και προσωρινή αποθήκη(caching) Ο στόχος αυτής της παραλλαγής του βασικού μοντέλου πελάτη-εξυπηρετητή είναι η αναβάθμιση της διαθεσιμότητας και της απόδοσης μιας υπηρεσίας (π.χ. εξυπηρετητής ιστού) με την μείωση του φορτίου στο δίκτυο ευρείας κλίμακας (π.χ. Διαδίκτυο) και επάνω στην ίδια την υπηρεσία. Η προσωρινή αποθήκηαποθηκεύει πρόσφατα δεδομένα που έχουν παραδοθεί από τον εξυπηρετητή στον πελάτη και βρίσκονται πιο κοντά του από ότι τα πραγματικά δεδομένα (π.χ. cache σε προγράμματα περιήγησης ιστού). Ένας πληρεξούσιος εξυπηρετητήςείναι μία διεργασία που αναλαμβάνει να παίξει το ρόλο του ενδιάμεσου ανάμεσα στον πραγματικό εξυπηρετητή και στον πελάτη που ζητά για παράδειγμα κάποια ιστοσελίδα ή το κατέβασμα κάποιου αρχείου του. 34

35 Πληρεξούσιοι εξυπηρετητές (proxy servers) και προσωρινή αποθήκη(caching) Προκειμένου να διεκπεραιώσει το αίτημα του πελάτη ο πληρεξούσιος εξυπηρετητής ελέγχει πρώτα αν διαθέτει την πληροφορία στην δικιά του προσωρινή αποθήκη. Αν τη διαθέτει, τη στέλνει κατευθείαν, χωρίς να χρειάζεται επικοινωνία με τον πραγματικό εξυπηρετητή. Αν δεν έχει διαθέσιμη την πληροφορία, τότε αναλαμβάνει να την ζητήσει και στην συνέχεια να την προωθήσει στον πελάτη, ενώ ταυτόχρονα την αποθηκεύει προσωρινά για την περίπτωση που του ζητηθεί ξανά η ίδια πληροφορία, είτε από τον ίδιο πελάτη, είτε από κάποιον άλλο πελάτη. Εκτός από την προσωρινή αποθήκευση αντικειμένων πιο κοντά στους πελάτες, οι πληρεξούσιοι εξυπηρετητές μπορεί να αναλάβουν και άλλους ρόλους, όπως για παράδειγμα την μετατροπή μιας υπηρεσίας από μια μορφή σε μια άλλη (π.χ. από HTML σε WAP). 35

36 Κινητός κώδικας (mobile code) Κώδικας μπορεί να μετακινηθεί από τον εξυπηρετητή και να εκτελεστεί στον υπολογιστή που φιλοξενεί την διεργασία του πελάτη. Ένα συνηθισμένο παράδειγμα τέτοιου κώδικα είναι τα Java applets που εκτελούνται τοπικά από το πρόγραμμα περιήγησης ιστού του πελάτη. Το πλεονέκτημα είναι η άμεση αλληλεπίδραση με τον χρήστη, χωρίς τις καθυστερήσεις του δικτύου επικοινωνίας. 36

37 Κινητός κώδικας (mobile code) Το αίτηµα του πελάτη προκαλεί την µεταφόρτωση του applet O πελάτης αλληλεπιδρά µε το applet 37

38 Κινητός κώδικας (mobile code) Σε άλλες περιπτώσεις, οι εξυπηρετητές παρέχουν λειτουργικότητα που δεν είναι τυποποιημένη και διαθέσιμη στα προγράμματα περιήγησης και χρειάζεται να σταλεί κώδικας από τον εξυπηρετητή στον πελάτη που όταν εκτελεστεί θα επικοινωνεί με τον εξυπηρετητή. Τέτοιος επιπρόσθετος κώδικας μπορεί να υλοποιεί το λεγόμενο μοντέλο ώθησης (push model) κατά το οποίο ο εξυπηρετητής, αντί του πελάτη, ξεκινά μια αλληλεπίδραση. Για παράδειγμα ο εξυπηρετητής μπορεί να τροφοδοτεί τον πελάτη με δεδομένα όταν αυτά γίνονται διαθέσιμα, χωρίς ο πελάτης να μεριμνά για την ζήτησή τους. 38

39 Κινητοί πράκτορες (mobile agents) Κινητός πράκτορας είναι ένα εκτελέσιμο πρόγραμμα (περιλαμβάνει τόσο κώδικα όσο και δεδομένα) που ταξιδεύει από υπολογιστή σε υπολογιστή μέσω δικτύου και διεκπεραιώνει κάποιες εργασίες, όπως συλλογή πληροφοριών, για λογαριασμό κάποιας οντότητας, στην οποία τελικά επιστρέφει κάποια αποτελέσματα. Συγκρίνοντας αυτή την αρχιτεκτονική με αυτή του στατικού πελάτη που εκτελεί απομακρυσμένες κλήσεις σε αντικείμενα, πιθανώς συνοδευόμενες από μεταφορά μεγάλου όγκου δεδομένων, μπορούμε να διαπιστώσουμε μια μείωση του κόστους και χρόνου επικοινωνίας λόγω της αντικατάστασης των απομακρυσμένων κλήσεων με τοπικές. 39

40 Κινητοί πράκτορες (mobile agents) Από την άλλη πλευρά, οι κινητοί πράκτορες (όπως και ο κινητός κώδικας) συνιστούν πιθανή απειλή στην ασφάλεια του υπολογιστή που επισκέπτονται, καθώς μπορεί να περιέχουν κακόβουλο λογισμικό, όπως ιούς. Για αυτό το λόγο η εκτέλεση κινητών πρακτόρων θα πρέπει να επιτρέπεται μόνο μετά από ασφαλή αναγνώριση της ταυτότητας της οντότητας για λογαριασμό της οποίας αυτοί λειτουργούν. 40

41 Υπολογιστές δικτύου (network computers) Οι υπολογιστές δικτύου (ΥΔ) είναι υπολογιστές χαμηλού σχετικά κόστους, οι οποίοι συνήθως δεν διαθέτουν κάποιο τοπικό μόνιμο αποθηκευτικό μέσο (π.χ. σκληρό δίσκο) παρά μόνο μνήμη RAM. Τα προγράμματα που τρέχουν στους υπολογιστές αυτούς, ακόμη και το λειτουργικό τους σύστημα, βρίσκονται αποθηκευμένα σε απομακρυσμένους εξυπηρετητές αρχείων. Η πλειοψηφία των προγραμμάτων είναι γραμμένα σε κάποια από τις εκδόσεις της Java, έτσι ώστε να μπορούν να είναι ανεξάρτητα της πλατφόρμας στην οποία θα τρέξουν. Κατά συνέπεια το μόνο που χρειάζεται να διαθέτει ένας ΥΔ είναι μια αξιόπιστη και γρήγορη σύνδεση με το Διαδίκτυο. Εταιρείες όπως η Sun και η Oracle υποστηρίζουν την αρχιτεκτονική των ΥΔ. 41

42 Ελαφρείς πελάτες (thin clients) H παραλλαγή του ελαφρύ πελάτη αναφέρεται σε έναν υπολογιστή ή ένα στρώμα λογισμικού που προσφέρει κυρίως την διεπαφή χρήσης μιας εφαρμογής, ενώ όλη η επιχειρησιακή λογική εκτελείται σε έναν άλλο απομακρυσμένο υπολογιστή. Η αρχιτεκτονική αυτή χαρακτηρίζεται από το χαμηλό κόστος λειτουργίας και διαχείρισης, παρόμοια με την περίπτωση των υπολογιστών δικτύου, αλλά αντί τα προγράμματα εφαρμογών να μεταφορτώνονται στον υπολογιστή του πελάτη, αυτά εκτελούνται σε εξυπηρετητές και χρησιμοποιείται το δίκτυο για την μεταφορά των δεδομένων. 42

43 Ελαφρείς πελάτες (thin clients) Ένας ελαφρύς πελάτης μπορεί να τρέχει σε έναν υπολογιστή με περιορισμένες δυνατότητες για εφαρμογές όπως διαχείριση ηλεκτρονικού ταχυδρομείου και περιήγηση ιστού, ενώ μπορεί να συνδέεται σε ένα μεγαλύτερο δίκτυο, για παράδειγμα, μιας εταιρείας ή ενός σχολείου. Η δομή του ελαφρύ πελάτη διευκολύνει τον εντοπισμό προβλημάτων λειτουργίας, μειώνει την πολυπλοκότητα για τον τελικό χρήστη, καθώς αυτός περιορίζεται μόνο στην εκμάθηση της χρήσης μιας εφαρμογής αντί ενός υπολογιστικού περιβάλλοντος γενικού σκοπού, και τέλος διευκολύνει την παροχή μηχανισμών εξασφάλισης, καθώς αυτοί μπορούν να υλοποιηθούν κεντρικά στον εξυπηρετητή υπολογισμών (compute server). 43

44 Ελαφρύς πελάτης και εξυπηρετητής υπολογισμών 44

45 Κινητές συσκευές και αυθόρμητη διαλειτουργικότητα Κινητές συσκευές όπως φορητοί υπολογιστές, κινητά τηλέφωνα και PDAs μπορούν να συνδέονται στο δίκτυο χρησιμοποιώντας ασύρματες τεχνολογίες όπως GSM, 3G, WiFi και Bluetooth. Η κινητικότητα οδηγεί σε μια παραλλαγή του μοντέλου πελάτη-εξυπηρετητή κατά το οποίο οι συσχετίσεις μεταξύ των συσκευών έχουν εφήμερη μορφή. Καθώς ο χρήστης κινείται από το ένα δίκτυο στο άλλο του προσφέρονται υπηρεσίες που σχετίζονται με το φυσικό περιβάλλον, όπως πληροφορίες για αξιοθέατα στην περίπτωση που ο χρήστης ταξιδεύει σε διακοπές. 45

46 Κινητές συσκευές και αυθόρμητη διαλειτουργικότητα Η κυριότερη πρόκληση σε αυτή την αρχιτεκτονική είναι να επιτευχθεί γρήγορα και εύκολα (αυθόρμητα) η διαλειτουργικότητα μεταξύ της συσκευής που φέρει ο χρήστης και των προσφερόμενων υπηρεσιών ακόμη και σε χώρους που ο χρήστης επισκέπτεται για πρώτη φορά. Χρειάζεται συνεπώς μια ευέλικτη διαδικασία αναζήτησης υπηρεσιών(service discovery) ώστε οι πελάτες να ανακαλύπτουν ποιες υπηρεσίες είναι διαθέσιμες στο δίκτυο και ποιες είναι οι ιδιότητές τους. 46

47 Αυθόρμητη δικτύωση σε ένα ξενοδοχείο 47

48 Αρχιτεκτονική 3-επιπέδεων Η αρχιτεκτονική client/server είναι γνωστή ως αρχιτεκτονική 2- επιπέδων (2-tier architecture). Στο μοντέλο 2-επιπέδων δεν είναι πάντα σαφής η διάκριση των δύο ρόλων Ένας εξυπηρετητής ΒΔ είναι πελάτης σε εξυπηρετητή αρχείων Οι εξυπηρετητές ιστού, όπως και πολλές υπηρεσίες του Διαδικτύου, γίνονται πελάτες της DNS υπηρεσίας η οποία μεταφράζει Internet Domain Names σε διευθύνσεις δικτύου. Μια μηχανή αναζήτησης στο Διαδίκτυο είναι ταυτόχρονα τόσο εξυπηρετητής, όσο και πελάτης: ως εξυπηρετητής αποκρίνεται στα ερωτήματα των προγραμμάτων περιήγησης και ως πελάτης ενεργοποιεί προγράμματα ανίχνευσης ιστού (web crawlers) Κερδίζει έδαφος η διάκριση σε τρία επίπεδα: Επίπεδο παρουσίασης (διεπαφής χρήστη) Επίπεδο εφαρμογής (επεξεργασίας) Επίπεδο δεδομένων

49 Αρχιτεκτονική 3-επιπέδεων Η αρχιτεκτονική client-server 3-επιπέδων αποτελείται από τρία λογικά επίπεδα, που στην γενική περίπτωση, υλοποιούνται σε διαφορετικές μηχανές. Το υψηλότερο επίπεδο περιλαμβάνει την διεπαφή του πελάτη (επίπεδο παρουσίασης) Το ενδιάμεσο επίπεδο περιέχει την επιχειρησιακή λογική (επίπεδο εφαρμογής) Το κατώτερο επίπεδο διαχειρίζεται τα δεδομένα που χρησιμοποιούνται από την εφαρμογή (επίπεδο δεδομένων) Συνηθίζεται σε Web εφαρμογές, όπου το ενδιάμεσο επίπεδο είναι ένας Web Server που αποθηκεύει το λογισμικό σύνδεσης και το τμήμα της λογικήςτης εφαρμογής που χρησιμοποιείται για προσπέλαση των αντίστοιχων δεδομένων από τον DB Server. 49

50 Αρχιτεκτονική 3-επιπέδεων 50

51 Αρχιτεκτονική 3-επιπέδεων Το κάθε επίπεδο υποβάλλει αιτήσεις και περιμένει αποτελέσματα από το επόμενο ιεπαφή Αίτηση επεξεργασίας Αναµονή αποτελέσµατος Απόκριση Εφαρµογή Αίτηση δεδοµένων Αναµονή δεδοµένων Παροχή δεδοµένων εδοµένα Χρόνος

52 Επίπεδο διεπαφής χρήστη Σε επίπεδο (τελικού) πελάτη Προγράμματα που επιτρέπουν στους χρήστες να αλληλεπιδρούν με υπηρεσίες-δεδομένα Διαφορετικά επίπεδα εξέλιξης: Προσανατολισμένα σε χαρακτήρες «χαζά» τερματικά Παραθυρικά περιβάλλοντα Παραθυρικά περιβάλλοντα με αλληλεπίδραση μεταξύ εφαρμογών σε διαφορετικά παράθυρα

53 Επίπεδο εφαρμογής Εδώ γίνεται η «πραγματική» δουλειά Λιγότερο ή περισσότερο πολύπλοκη, ανάλογα με την εφαρμογή Παραδείγματα: Google: προσπέλαση μέσω web είσοδος:url, έξοδος:html, επεξεργασία: αναζήτηση στη βάση δεδομένων των σελίδων, εξαγωγή σχετικών σελίδων, ταξινόμηση βάσει σχετικότητας Διαχείριση παραγγελιών: καταχώρηση νέας παραγγελίας, ακύρωση υπάρχουσας, αλλαγή κατάστασης παραγγελίας κ.λπ. Η ίδια λειτουργικότητα μπορεί να προσπελαύνεται από διαφορετικές διεπαφές χρήστη Π.χ. Wikipedia προσπελαύνεται μέσω προγράμματος πλοήγησης θα μπορούσε να προσπελαύνεται μέσα από το OpenOffice

54 Επίπεδο δεδομένων Παρέχει τη δυνατότητα μόνιμης αποθήκευσης των δεδομένων Από απλό σύστημα αρχείων μέχρι πλήρη και πολύπλοκη βάση δεδομένων Υπεύθυνο επίσης για τη διατήρηση της συνέπειας μεταξύ των πολλαπλών αντιγράφων των δεδομένων Συνηθέστερο: σχεσιακή ΒΔ Όχι πάντα η καλύτερη επιλογή π.χ. για αποθήκευση πολύπλοκων δεδομένων (μηχανικά σχέδια κ.ο.κ.) οι αντικειμενοστρεφείς βάσεις είναι προτιμότερες

55 Πλεονεκτήματα αρχιτεκτονικής 3-επιπέδων Οι πελάτες δεν έχουν άμεση γνώση του μοντέλου προσπέλασης της ΒΔ Εύκολη εισαγωγή νέων τεχνολογιών ΒΔ ή χρήση legacy συστημάτων για την παροχή υπηρεσιών στους πελάτες Ενίσχυση της ασφάλειας των δεδομένων (προσπέλαση στον εξυπηρετητή της ΒΔ μόνο μέσω του ενδιάμεσου επιπέδου) Η ανάπτυξη του μεσαίου επιπέδου με τεχνολογίες όπως η αντικειμενοστρεφής ή βασισμένων σε ψηφίδες λογισμικού ενισχύει την δυνατότητα επαναχρησιμοποίησης τμημάτων του λογισμικού Οι διαφορετικοί εξυπηρετητές μπορούν να βελτιστοποιηθούν ανεξάρτητα και εστιασμένα ο καθένας στην λειτουργία του 55

56 Πέραν των 3-επιπέδων 56

57 Ν-tier Οι περισσότερες αρχιτεκτονικές είναι multi-tiered firewall firewall load balancer web server Java application server client database Object Store

58 Gartner Group ταξινόμηση για μοντέλο πελάτη-εξυπηρετητή Τα τρία λογικά επίπεδα των εφαρμογών αρκετές φορές συμπτύσσονται σε δύο μόνο μηχανήματα 58

59 Αρχιτεκτονική κατανεμημένης παρουσίασης Εντάσσεται στον ευρύτερο χώρο των thin client τεχνολογιών. H οργάνωση παραπέμπει σε ένα σχήμα όπου ένα μικρό συνήθως τμήμα του επιπέδου παρουσίασης εκτελείται στον πελάτη, ενώ το υπόλοιπο τμήμα της παρουσίασης καθώς και εξ ολοκλήρου η εφαρμογή και τα δεδομένα βρίσκονται στον εξυπηρετητή. Εδώ, ο πελάτης μπορεί να παρουσιάζει την επεξεργασμένη γραφική αναπαράσταση του GUI μιας εφαρμογής που στέλνεται μέσω του δικτύου. Παραδείγματα τεχνολογιών που ακολουθούν αυτό το σχήμα είναι το Χ-11 Window System των Unix συστημάτων, το Virtual Network Computer των ΑΤ&Τ Labs, το Remote Desktop Protocol της Microsoft, κ.α. Η αρχιτεκτονική αυτή περιγράφει επίσης εφαρμογές γνωστές ως screenscraping (emulation-based) που αναλαμβάνουν την διασύνδεση κληροδοτημένων συστημάτων (legacy systems) που υποστηρίζουν textbased διεπαφή με σύγχρονα windows-based συστήματα. Οι πελάτες μπορεί να λειτουργούν ως «κουτά» τερματικά (dumb terminals). 59

60 Αρχιτεκτονική απομακρυσμένης παρουσίασης Το χαρακτηριστικό της είναι ότι το επίπεδο της παρουσίασης διεκπεραιώνεται αποκλειστικά στην πλευρά του πελάτη. Το σχήμα εντάσσεται στον χώρο των thin client τεχνολογιών. Σε αυτή την κατηγορία κατατάσσονται πληθώρα εφαρμογών όπου ο πελάτης αναλαμβάνει εξ ολοκλήρου την παρουσίαση, συνήθως με γραφικό τρόπο, ενώ η εφαρμογή και τα δεδομένα βρίσκονται εξολοκλήρου στον εξυπηρετητή. Παραδείγματα εφαρμογών μπορεί να είναι on-line transaction συστήματα, δικτυακές εφαρμογές (ftp, telnet, κ.α.) και Web εφαρμογές όπου οι πελάτες είναι Web browsers. 60

61 Αρχιτεκτονική κατανεμημένης λειτουργίας Το βασικό χαρακτηριστικό στην οργάνωση αυτού του σχήματος είναι η κατανομή της επιχειρησιακής λογικής (application logic) μεταξύ του πελάτη και του εξυπηρετητή. Συνήθως στην πλευρά του πελάτη τοποθετείται επιχειρησιακή λογική που έχει άμεση σχέση με την παρουσίαση (π.χ. έλεγχος στοιχείων σε μια φόρμα). Στην πλευρά του πελάτη τοποθετείται εξ ολοκλήρου η παρουσίαση και στην πλευρά του εξυπηρετητή η διαχείριση των δεδομένων. Παράδειγμα είναι μια Web εφαρμογή κατά την οποία ένα τμήμα (συνήθως μικρό) της τρέχει στον πελάτη, για παράδειγμα, ως Java applet. 61

62 Αρχιτεκτονική απομακρυσμένων δεδομένων Εδώ ο πελάτης χαρακτηρίζεται ως fat-client και συνήθως τρέχει σε ένα σύγχρονο PC. Όλη η επιχειρησιακή λογική και η παρουσίαση τρέχουν στον πελάτη και όλα τα δεδομένα αποθηκεύονται στον εξυπηρετητή. Προϊόντα σχεσιακών ΣΔΒΔ (DB2, Oracle, Informix, κ.α.) υποστηρίζουν αυτή την αρχιτεκτονική για εφαρμογές client/server και παρέχουν ένα στρώμα λογισμικού στην πλευρά του πελάτη για την διεκπεραίωση της επικοινωνίας με τον εξυπηρετητή του ΣΔΒΔ. Προϊόντα Συστημάτων Αρχείων Δικτύου (Network File Systems) ανήκουν επίσης σε αυτή την κατηγορία. Άλλο παράδειγμα εφαρμογής που ακολουθεί τέτοια οργάνωση είναι ένα τυπικό Σύστημα Υποστήριξης Αποφάσεων (Decision Support System) όπου ο ρόλος του εξυπηρετητή είναι κυρίως να παρέχει τα δεδομένα, ενώ οι αλγόριθμοι για την λήψη των αποφάσεων εκτελούνται στον πελάτη. 62

63 Αρχιτεκτονική κατανεμημένων δεδομένων Είναι παραλλαγή του προηγούμενου σχήματος με κατανομή των δεδομένων μεταξύ πελάτη και εξυπηρετητή. Είναι περίπτωση fat-client με ενδιάμεση μνήμη (cache) για καλύτερη απόκριση του συστήματος. Σύγχρονα κατανεμημένα συστήματα αρχείων δικτύου (π.χ. NFS) και κατανεμημένων ΣΔΒΔ ακολουθούν αυτήν την προσέγγιση. 63

64 Μοντέλο ομότιμων κόμβων Ομότιμοι κόμβοι (Peer-to-Peer) Κάθε διεργασία μπορεί να παίξει όλους τους ρόλους (πελάτης, εξυπηρετητής) Οι περισσότερες εφαρμογές αφορούν διαμοίραση δεδομένων Κλιμακώνεται σε μεγάλα μεγέθη Παραδείγματα: Napster, Gnutella, FastTrack, Kontiki, Osiris, Skype) 64

65 Μοντέλο ομότιμων κόμβων Οι κόμβοι μπορούν να εισέρχονται και να εξέρχονται από το σύστημα με μεγάλη συχνότητα, χωρίς αυτό να επηρεάζει τη διαθεσιμότητα των υπηρεσιών του συστήματος (λόγω πλεονασμού πόρων). Σε κάθε κόμβο υπάρχουν πόροι (π.χ. καταχωρημένα δεδομένα) οι οποίοι είναι διαθέσιμοι, τμηματικά, στο δίκτυο από τη στιγμή της σύνδεσης του κόμβου μέχρι την αποσύνδεσή του. Η πληροφορία των διαθέσιμων πόρων έχει μία δομή, που πρέπει ο κάθε κόμβος να διαφημίσει στους γειτονικούς του, έτσι ώστε εκείνοι να είναι σε θέση να την αντλήσουν διατυπώνοντας κατάλληλα αιτήματα. Τα αιτήματα για έναν πόρο διαχέονται μέσα στο δίκτυο και όλοι μαζί οι κόμβοι που διατηρούν σχετική πληροφορία, τη στέλνουν πίσω στον κόμβο που έθεσε το αίτημα ως μία συνολική απάντηση από το δίκτυο. Με αυτή την οργάνωση, εφαρμογές μεγάλης κλίμακας μπορούν να υλοποιηθούν, καθώς η αποθήκευση, η επεξεργασία και το φορτίο επικοινωνίας για την πρόσβαση στα δεδομένα κατανέμεται σε πολλά υπολογιστικά συστήματα και συνδέσμους δικτύων. 65

66 ΠΑΡΑΔΕΙΓΜΑCLIENT/SERVER ΕΦΑΡΜΟΓΗΣ 66

67 header.h header.h /* definitions needed by clients and servers.*/ #define MAX_PATH 255 /* maximum length of a file name */ #define BUF_SIZE 1024 /* how much data to transfer at once */ #define FILE_SERVER 243 /* file server s network address */ /* definitions of the allowed operations. */ #define CREATE 1 /* create a new file */ #define READ 2 /* read a piece of a file and return it */ #define WRITE 3 /* write a piece of a file */ #define DELETE 4 /* delete an existing file */

68 header.h /* Error codes. */ #define OK 0 /* operation performed correctly */ #define E_BAD_OPCODE 1 /* unknown operation requested */ #define E_BAD_PARAM 2 /* error in a parameter */ #define E_IO 3 /* disk error or other I/O error */

69 header.h /* Definition of the message format. */ struct message { long source; /* sender s identity */ long dest; /* receiver s identity */ long opcode; /* which operation: CREATE, READ, etc. */ long count; /* how many bytes to transfer */ long offset; /* where in file to start reading or writing */ long extra1; /* extra field */ long extra2; /* extra field */ long result; /* result of the operation reported here */ char name[max_path]; /* name of the file being operated on */ char data[buf_size]; /* data to be read or written */ };

70 Πλευρά του server #include <header.h> void main(void) { struct message m1, m2; /* incoming and outgoing messages */ int r; /* result code */ while (1) {/* server runs forever */ receive(any, &m1);/* block waiting for a message */ switch(m1.opcode) { /* dispatch on type of request */ case CREATE: r = do_create(&m1, &m2); break; case READ: r = do_read(&m1, &m2); break; case WRITE: r = do_write(&m1, &m2); break; case DELETE: r = do_delete(&m1, &m2); break; default: r = E_BAD_OPCODE; } m2.result = r; /* return result to client */ send(m1.source, &m2); /* send reply */ } }

71 Πλευρά του client #include <header.h> int copy (char*src, char *dst) {/* procedure to copy file using the server */ struct message m1; /* message buffer */ long position; /* current file position */ long client = 110; /* client s address */ initialize(); /* prepare for execution */ position = 0;

72 Πλευρά του client do {/* get a block of data from the source file. */ m1.opcode = READ; /* operation is a read */ m1.offset = position; /* current position in the file */ strcpy(&m1.name, src); /* copy name of file to be read to message */ send(file_server, &m1);/* send the message to the file server */ receive(file_server, &m1);/* block waiting for the reply */ /* write the data just received to the destination file. */ m1.opcode = WRITE; /* operation is a write */ m1.offset = position; /* current position in the file */ m1.count = m1.result; /* how many bytes to write */ strcpy(&m1.name, dst); /* copy name of file to be written to buf */ send(file_server, &m1);/* send the message to the file server */ receive(file_server, &m1);/* block waiting for the reply */ position += m1.result; /* m1.result is number of bytes written */ } while (m1.result > 0); /* iterate until done */ return (m1.result >=0 > OK: m1.result); /* return OK or error code */ }/* copy */

73 ΣΧΕΔΙΑΣΤΙΚΕΣΠΡΟΚΛΗΣΕΙΣ 73

74 Σχεδιαστικές προκλήσεις Οι σχεδιαστές ΚΣ καλούνται να αντιμετωπίσουν έναν αριθμό από δύσκολα ζητήματα που σχετίζονται με την κατανεμημένη φύση των συστημάτων αυτών: ετερογένεια των συστατικών του, η ανοικτότητα, η οποία επιτρέπει την προσθήκη ή την αντικατάσταση συστατικών, η εξασφάλιση, η κλιμάκωση (επεκτασιμότητα) ως η δυνατότητα της αποτελεσματικής λειτουργίας του συστήματος όταν ο αριθμός των χρηστών αυξάνει, η αντιμετώπιση σφαλμάτων, ο ταυτοχρονισμός και η διαφάνεια. 74

75 Ετερογένεια Ένα ΚΣ συνήθως περιλαμβάνει πολλά συστατικά, που μπορεί και να ακολουθούν διαφορετικά πρότυπα, ωστόσο θα πρέπει να συνεργαστούν μεταξύ τους. Για παράδειγμα, η διαφορετικότητα μπορεί να αναφέρεται: στο δίκτυο (π.χ., Ethernet, Token Ring, FDDI) στην αρχιτεκτονική των υπολογιστών με επίπτωση στην αναπαράσταση των δεδομένων (π.χ., Big Endian, Little Endian) στο λειτουργικό σύστημα (π.χ., Unix, MAC OS, MS Windows) στη γλώσσα προγραμματισμού με επίπτωση στην αναπαράσταση των δομών δεδομένων (π.χ., αναπαράσταση πινάκων ή εγγραφών σε Java, C++, Python) στις προδιαγραφές υλοποίησης 75

76 Ετερογένεια Τα TCP/IP πρωτόκολλα επικοινωνίας (πρωτόκολλα Διαδικτύου) συμβάλουν ουσιαστικά στην αντιμετώπιση της ετερογένειας σε ότι αφορά τα δίκτυα. Το ενδιάμεσο λογισμικό (middleware) επιστρατεύεται για την αντιμετώπιση της ετερογένειας στις υπόλοιπες περιπτώσεις. Το ενδιάμεσο λογισμικό εμφανίζεται σε ένα κατανεμημένο περιβάλλον επεξεργασίας ως ένα στρώμα κατανεμημένου λογισμικού, μεταξύ της υπολογιστικής πλατφόρμας και των εφαρμογών, και παρέχει μια προγραμματιστική αφαίρεση υπό τη μορφή μιας κοινής και πρότυπης διεπαφής. Έτσι, το ενδιάμεσο λογισμικό κρύβει από τις εφαρμογές την ετερογένεια της υπολογιστικής πλατφόρμας προσφέροντας τις κατάλληλες υπηρεσίες και τα πρωτόκολλα για την επικοινωνία μεταξύ των εφαρμογών 76

77 Σχεδιαστικές προκλήσεις Οι σχεδιαστές ΚΣ καλούνται να αντιμετωπίσουν έναν αριθμό από δύσκολα ζητήματα που σχετίζονται με την κατανεμημένη φύση των συστημάτων αυτών: ετερογένεια των συστατικών του, η ανοικτότητα, η οποία επιτρέπει την προσθήκη ή την αντικατάσταση συστατικών, η εξασφάλιση, η κλιμάκωση (επεκτασιμότητα) ως η δυνατότητα της αποτελεσματικής λειτουργίας του συστήματος όταν ο αριθμός των χρηστών αυξάνει, η αντιμετώπιση σφαλμάτων, ο ταυτοχρονισμός και η διαφάνεια. 77

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

79 Ανοικτά συστήματα Η χρήση διεπαφών επιτρέπει σε οποιαδήποτε διεργασίανα ζητήσει μία υπηρεσία από οποιονδήποτε την προσφέρει Δεν ενδιαφέρει η υλοποίηση μπορεί να υπάρχουν πολλές διαφορετικές υλοποιήσεις Δεν ενδιαφέρουν τα στοιχεία για το υλικό, το λειτουργικό σύστημα ή το λογισμικό για κανένα από τα δύο περιβάλλοντα Οι σωστές προδιαγραφές υπηρεσιών πρέπει να είναι πλήρεις και ουδέτερες Πλήρεις: περιγράφονται όλα τα στοιχεία για την υπηρεσία που πρέπει να προδιαγραφούν Αν δεν γίνει αυτό, κάθε υλοποίηση θα πρέπει να κάνει παραδοχές που θα οδηγήσουν σε ασυβατότητες Ουδέτερες: δεν υποδεικνύουμε πώς πρέπει να γίνει

80 Ανοικτάσυστήματα Πληρότητα + ουδετερότητα διαλειτουργικότητα + μεταφερσιμότητα + ευελιξία Διαλειτουργικότητα: διαφορετικές υλοποιήσεις συστημάτων από διαφορετικούς κατασκευαστές συνεργάζονται, βασιζόμενες αποκλειστικά σε υπηρεσίες που το κάθε σύστημα προσφέρει στα άλλα Μεταφερσιμότητα: μία εφαρμογή που εκτελείται σε ένα κατανεμημένο σύστημα Α μπορεί να εκτελεστεί σε ένα κατανεμημένο σύστημα Β αρκεί το τελευταίο να υλοποιεί τις ίδιες διεπαφές με το πρώτο Ευελιξία: είναι δυνατόν να χρησιμοποιηθούν τμήματα από διαφορετικούς κατασκευαστές, να αντικατασταθούν τμήματα από άλλα ισοδύναμα, ή να προστεθούν νέα χωρίς να υπάρξει πρόβλημα

81 Σχεδιαστικές προκλήσεις Οι σχεδιαστές ΚΣ καλούνται να αντιμετωπίσουν έναν αριθμό από δύσκολα ζητήματα που σχετίζονται με την κατανεμημένη φύση των συστημάτων αυτών: ετερογένεια των συστατικών του, η ανοικτότητα, η οποία επιτρέπει την προσθήκη ή την αντικατάσταση συστατικών, η εξασφάλιση, η κλιμάκωση (επεκτασιμότητα) ως η δυνατότητα της αποτελεσματικής λειτουργίας του συστήματος όταν ο αριθμός των χρηστών αυξάνει, η αντιμετώπιση σφαλμάτων, ο ταυτοχρονισμός και η διαφάνεια. 81

82 Εξασφάλιση Η διαμοίραση πόρων μέσω κατανεμημένων συστημάτων είναι ωφέλιμη, αλλά ταυτόχρονα εκθέτει τους πόρους σε καταστάσεις ανεπιθύμητης χρήσης. Ένα πρόβλημα, για παράδειγμα, με την ανταλλαγή μηνυμάτων στο δίκτυο είναι ότι τα μηνύματα αυτά μπορεί εύκολα να συλληφθούν και να διαβαστούν σχεδόν από τον καθένα. Άλλο πρόβλημα είναι η αναγνώριση της ταυτότητας εκείνου που επικοινωνεί μαζί μας. Για να αντιμετωπισθούν τέτοιου είδους προβλήματα τα κατανεμημένα συστήματα χρησιμοποιούν διαδικασίες κρυπτογράφησηςκαι αυθεντικοποίησης. Δύο προβλήματα ασφάλειας που δεν έχουν ακόμη αντιμετωπισθεί πλήρως είναι η επίθεση άρνησης παροχής υπηρεσίας και η ασφάλεια κινητού κώδικα. 82

83 Εξασφάλιση Η εξασφάλιση ενός ΚΣ μπορεί να επιτευχθεί με την εξασφάλιση των διεργασιών, την εξασφάλιση των καναλιών επικοινωνίας και προστατεύοντας τα αντικείμενα που υλοποιούν τις υπηρεσίες από μη εξουσιοδοτημένη πρόσβαση. Η προστασία των αντικειμένων μπορεί να επιτευχθεί χρησιμοποιώντας τυπικές τεχνικές ελέγχου δικαιωμάτων πρόσβασης (access rights) που συναντάμε και στα ΛΣ. Για να μοντελοποιηθούν οι απειλές στο μοντέλο εισάγουμε την έννοια του εχθρού που είναι ικανός να στείλει οποιοδήποτε μήνυμα σε οποιαδήποτε διεργασία και να διαβάσει ή να αντιγράψει οποιοδήποτε μήνυμα που μεταδίδεται μεταξύ ενός ζευγαριού διεργασιών. Οι απειλές μπορούν να αντιμετωπιστούν με τον ορισμό ενός ασφαλούς καναλιού (secure channel) που χρησιμοποιεί μηχανισμούς κρυπτογραφίας και αυθεντικοποίησης. Παραδείγματα ασφαλών καναλιών είναι τα Virtual Private Networks και το Secure Sockets Layer πρωτόκολλο. 83

84 Σχεδιαστικές προκλήσεις Οι σχεδιαστές ΚΣ καλούνται να αντιμετωπίσουν έναν αριθμό από δύσκολα ζητήματα που σχετίζονται με την κατανεμημένη φύση των συστημάτων αυτών: ετερογένεια των συστατικών του, η ανοικτότητα, η οποία επιτρέπει την προσθήκη ή την αντικατάσταση συστατικών, η εξασφάλιση, η κλιμάκωση (επεκτασιμότητα) ως η δυνατότητα της αποτελεσματικής λειτουργίας του συστήματος όταν ο αριθμός των χρηστών αυξάνει, η αντιμετώπιση σφαλμάτων, ο ταυτοχρονισμός και η διαφάνεια. 84

85 Κλιμάκωση Τα ΚΣ αναπτύσσονται με την πάροδο του χρόνου. Η ανάπτυξη μπορεί να αφορά τον αριθμό των χρηστών, των αριθμό των υπολογιστών που συνδέονται, ακόμη και την απόδοση του συστήματος. Ένα ΚΣ είναι κλιμακώσιμο όταν το κόστος προσθήκης ενός χρήστη είναι ανάλογο μια σταθεράς σε σχέση με τους πόρους που θα πρέπει να προστεθούν στο σύστημα. Η κλιμάκωση διευκολύνεται από τη χρήση αλγορίθμων που αποφεύγουν καταστάσεις συμφόρησης κατά την πρόσβαση κοινών δεδομένων. Τα δεδομένα θα πρέπει να οργανώνονται ιεραρχικά, χρησιμοποιώντας τις κατάλληλες δομές δεδομένων στην υλοποίηση, ώστε να επιτυγχάνονται οι καλύτεροι δυνατοί χρόνοι προσπέλασης. Μπορεί να γίνει χρήση αντιγράφων για τα δεδομένα που προσπελαύνονται συχνά για να επιτύχουμε καλύτερες επιδόσεις του συστήματος. 85

86 Κλιμάκωση Τρεις διαστάσεις: Μέγεθος: μπορούμε να προσθέσουμε χρήστες και πόρους Γεωγραφική κατανομή:μπορεί να εκταθεί σε οσοδήποτε μεγάλο χώρο Δυνατότητα διαχείρισης:μπορούμε να το διαχειριστούμε, ακόμη και αν τμήματά του βρίσκονται σε διοικητικά ανεξάρτητους μεταξύ τους οργανισμούς Ατυχώς, η ικανότητα κλιμάκωσης συνήθως οδηγεί σε υποβάθμιση της απόδοσης

87 Κλιμάκωση και μέγεθος Προβλήματα λόγω ορίων τα οποία είναι έμφυτα στα κεντρικοποιημένα συστήματα Κεντρικό σημείο εξυπηρέτησης Αποτελεί σημείο συμφόρησης και σημείο ολικής αστοχίας Μερικές φορές δεν είναι εύκολο να αντιμετωπισθεί Π.χ. Πολλαπλοί εξυπηρέτες δυσχερέστερη διαχείριση ασφάλειας Κεντρική αποθήκευση δεδομένων Όρια στην αποθηκευτική ικανότητα ενός μοναδικού συστήματος Οι γραμμές επικοινωνίας προς αυτό θα αποτελέσουν σημείο συμφόρησης, και το ίδιο το σύστημα σημείο ολικής αποτυχίας Αλγόριθμοι με κεντρικοποιημένη φιλοσοφία. Σε ένα κατανεμημένο σύστημα (αλγόριθμο) ισχύουν τα εξής: ΔΕΝ υπάρχει υπολογιστής με πλήρη γνώση της κατάστασης όλου του συστήματος (π.χ. αλγόριθμοι βέλτιστης δρομολόγησης) Οι υπολογιστές λαμβάνουν αποφάσεις βάσει μόνο τοπικών πληροφοριών Η αστοχία ενός υπολογιστή δεν οδηγεί σε αστοχία του αλγορίθμου Δεν υπάρχει «καθολικό ρολόι» (π.χ. στις 12:00 σημειώστε τον φόρτο σας)

88 Κλιμάκωση και γεωγραφική κατανομή Το μοντέλο του «αιτούμαι-περιμένω-λαμβάνω απάντηση» είναι καλό για τοπικά δίκτυα Στα ευρείας κλίμακας το περιμένωδιογκώνεται και το μοντέλο γίνεται ακατάλληλο για διαλογικές εφαρμογές Αναξιόπιστες συνδέσεις Τα πακέτα σπάνια χάνονται / αλλοιώνονται / αναδιατάσσονται σε τοπικά δίκτυα εν αντιθέσει με τα ευρείας κλίμακας Απουσία δυνατοτήτων στα ευρείας κλίμακας δίκτυα Καθολική εκπομπή για ενημέρωση και εντοπισμό Η ανάγκη για γεωγραφική κατανομή επιβάλλειτα κατανεμημένα συστήματα Λόγω απόδοσης: άστοχο να στέλνω μηνύματα στον διπλανό μου μέσω υπολογιστή στην άλλη άκρη της γης

89 Κλιμάκωση και διαχείριση, πολιτική, ασφάλεια... Τι συμβαίνει όταν ένα κατανεμημένο σύστημα εκτείνεται σε πολλαπλές διαχειριστικές περιοχές; Αντικρουόμενες πολιτικές για χρήση και χρέωση πόρων, διαχείριση και ασφάλεια Π.χ. το πληροφοριακό σύστημα οικονομικής διαχείρισης μπορεί να εμπιστεύεται τους υπαλλήλους του λογιστηρίου... και το σύστημα διεκπεραίωσης παραγγελιών τους υπαλλήλους της αποθήκης... αλλά τι γίνεται αν τα συνδέσουμε; Συνήθως ορίζονται κανόνες π.χ. δεδομένα μπορεί να διατίθενται για ανάγνωση μόνο, επεξεργασία μόνο με πιστοποιημένες εφαρμογές, όχι κατέβασμα applets, τήρηση αρχείων καταγραφής κ.ο.κ. Η εφαρμογή των κανόνων δεν είναι πάντα εύκολη!

90 Τεχνικές κλιμάκωσης Τα περισσότεραπροβλήματα κλιμάκωσης παραπέμπουν σε ζητήματα απόδοσης υπολογιστική ισχύς, αποθηκευτική ικανότητα, εύρος ζώνης και καθυστέρηση επικοινωνίας Τρεις τεχνικές αντιμετώπισης: Απόκρυψη της καθυστέρησης που εισάγει το δίκτυο Κατανομή Αντίγραφα

91 Απόκρυψη της καθυστέρησης Πολύ σημαντική για τη γεωγραφική κλιμάκωση Βασική ιδέα: στέλνουμε την αίτηση και μέχρι να έρθει η απάντηση κάνουμε κάτι άλλο χρήσιμο Όταν φτάσει η απάντηση την επεξεργαζόμαστε Τελικά πρόκειται για ασύγχρονη επικοινωνία Κατάλληλη τεχνική για συστήματα μαζικής επεξεργασίας με εργασίες που εκτελούνται ανεξάρτητα Λιγότερο κατάλληλη για διαλογικές εφαρμογές Μπορούμε όμως να μεταφέρουμε λειτουργίεςστον πελάτη, π.χ. τον κώδικα που διενεργεί ελέγχους σε μία φόρμα ή εκτελεί κάποια επεξεργασία, για να μειώσουμε το πλήθος των αιτήσεων/αποκρίσεων

92 Κατανομή Τεμαχίζουμεμία υπηρεσία ή μία συνιστώσα σε μικρότερες ενότητες και τις διασπείρουμε στο σύστημα Παράδειγμα: DNS Οργάνωση σε ανεξάρτητες ζώνες, κάθε μία από τις οποίες (δυνητικά) εξυπηρετείται από τον δικό της server Αντίστοιχα το web είναι τεµαχισµένο σε περιοχές µε (δυνητικά) ανεξάρτητους εξυπηρετητές για κάθε περιοχή

93 Αντίγραφα Χρησιμοποιούμε πολλαπλά αντίγραφα ενός πόρου Αύξηση αξιοπιστίας και διαθεσιμότητας, αντιμετώπιση ορίων κλιμάκωσης, απόκρυψη καθυστέρησης δικτύου (με κατάλληλη τοποθέτηση) Ειδική περίπτωση: κρυφή μνήμη Ίδια αρχή, αλλά τηρείται από τον πελάτη, όχι από τον ιδιοκτήτη/πάροχο του πόρου Πολλαπλά αντίγραφα ζητήματα συνέπειας Μπορεί κάποια αντίγραφα να είναι ενημερωμένα, κάποια όχι Το πόσο κακό είναι, εξαρτάται (π.χ. τελευταία νέα έναντι τιμής μετοχής) Οι ενημερώσεις πρέπει να γίνονται με την ίδια σειρά Η αναγκαιότητα για συνέπεια πολλές φορές οδηγεί σε συγκεντρωτικές ή/και μη επιδεχόμενες κλιμάκωσης λύσεις

94 Σχεδιαστικές προκλήσεις Οι σχεδιαστές ΚΣ καλούνται να αντιμετωπίσουν έναν αριθμό από δύσκολα ζητήματα που σχετίζονται με την κατανεμημένη φύση των συστημάτων αυτών: ετερογένεια των συστατικών του, η ανοικτότητα, η οποία επιτρέπει την προσθήκη ή την αντικατάσταση συστατικών, η εξασφάλιση, η κλιμάκωση (επεκτασιμότητα) ως η δυνατότητα της αποτελεσματικής λειτουργίας του συστήματος όταν ο αριθμός των χρηστών αυξάνει, η αντιμετώπιση σφαλμάτων, ο ταυτοχρονισμός και η διαφάνεια. 94

95 Αντιμετώπιση σφαλμάτων Τα ΚΣ είναι πιο πιθανό να χρειαστεί να αντιμετωπίσουν σφάλματα από ότι άλλα συστήματα καθώς αποτελούνται από πολλά συστατικά καθένα από τα οποία μπορεί να αποτύχει ανεξάρτητα. Ένα καλά σχεδιασμένο σύστημα δεν πρέπει να αποτυγχάνει πλήρως όταν ένα συστατικό ή ένα μέρος του συστήματος αποτυγχάνει. Παρόλη την μερική αστοχία που μπορεί να εμφανιστεί σε ένα ΚΣ, το υπόλοιπο σύστημα θα εξακολουθήσει να λειτουργεί. Κατά συνέπεια κάθε συστατικό του συστήματος θα πρέπει να «αντιλαμβάνεται» τους δυνατούς τρόπους αστοχίας των συστατικών του συστήματος από τα οποία εξαρτάται και να είναι σχεδιασμένο να μπορεί να αντιμετωπίσει με κατάλληλους μηχανισμούς κάθε τέτοια αστοχία. 95

96 Αντιμετώπιση σφαλμάτων Η ακριβής ανίχνευση αστοχιώνδεν είναι πάντα εύκολη υπόθεση, ειδικά σε πολύ μεγάλα συστήματα. Εφόσον είναι δυνατή η ανίχνευση μια αστοχίας, μπορούν να χρησιμοποιηθούν μηχανισμοί απόκρυψηςτων αστοχιών που όμως δεν εγγυώνται λύση σε καταστάσεις χειρότερης περίπτωσης. Σε περίπτωση αστοχίας ολοκλήρωσης ενός υπολογισμού ή μιας συναλλαγής σε μια Βάση Δεδομένων, μηχανισμοί ανάνηψης σφαλμάτωνείναι απαραίτητοι για την αποκατάσταση της ακεραιότητας των δεδομένων. Τα συστήματα που διαθέτουν τέτοιους μηχανισμούς παρουσιάζουν όπως λέμε ανοχή σε σφάλματα. Η τεχνική του πλεονασμού(redundancy) μπορεί να επιστρατευθεί για να ενισχυθεί η ανοχή σε σφάλματα. 96

97 Άσκηση αντιμετώπισης αστοχίας Θεωρήστε ότι μια βασική λειτουργία ανάγνωσης στο δίσκο μπορεί μερικές φορές να επιστρέψει τιμές διαφορετικές από αυτές που είναι αποθηκευμένες στο δίσκο. Ποιο είναι το είδος της παραπάνω αστοχίας. αστοχία παράλειψης (omission failure), αυθαίρετη αστοχία (arbitrary failure), αστοχία συγχρονισμού (timing failure). Με ποιον τρόπο μπορεί η παραπάνω αστοχία να καλυφθεί έτσι ώστε να παράγεται αστοχία πιο ήπιας μορφής; Στη συνέχεια προτείνετε πως μπορεί να καλυφθεί και η ήπια αστοχία. 97

98 Σχεδιαστικές προκλήσεις Οι σχεδιαστές ΚΣ καλούνται να αντιμετωπίσουν έναν αριθμό από δύσκολα ζητήματα που σχετίζονται με την κατανεμημένη φύση των συστημάτων αυτών: ετερογένεια των συστατικών του, η ανοικτότητα, η οποία επιτρέπει την προσθήκη ή την αντικατάσταση συστατικών, η εξασφάλιση, η κλιμάκωση (επεκτασιμότητα) ως η δυνατότητα της αποτελεσματικής λειτουργίας του συστήματος όταν ο αριθμός των χρηστών αυξάνει, η αντιμετώπιση σφαλμάτων, ο ταυτοχρονισμός και η διαφάνεια. 98

99 Ταυτοχρονισμός Η παρουσία πολλών χρηστών σε ένα κατανεμημένο σύστημα μπορεί να προκαλέσει ταυτόχρονες αιτήσεις σε διαθέσιμες υπηρεσίες. Κάθε διαθέσιμος πόρος του συστήματος θα πρέπει να σχεδιασθεί έτσι ώστε η χρήση του να είναι ασφαλής σε περιβάλλον ταυτοχρονισμού. Για παράδειγμα, ένα αντικείμενο λογισμικού που παρέχει μια υπηρεσία σε ένα κατανεμημένο περιβάλλον θα πρέπει να συγχρονίσει τις μεθόδους του, π.χ. κάνοντας χρήση σημαφόρων, ώστε τα δεδομένα του να είναι σε συνέπεια αν προκύψουν πολλές ταυτόχρονες αιτήσεις. 99

100 Άσκηση σε ταυτοχρονισμό Για το σενάριο που θα περιγράψουμε θα θεωρήσουμε ότι ο ίδιος τραπεζικός λογαριασμός μπορεί να προσπελασθεί από πολλούς πελάτες (κοινός λογαριασμός). Για κάθε αίτημα που φθάνει στον εξυπηρετητή δημιουργείται ένα διαφορετικό νήμα που τρέχει τον κώδικα εξυπηρέτησης. Ας υποθέσουμε ότι για την διαχείριση της ανάληψης ενός ποσού (amount) από έναν λογαριασμό (που αναγνωρίζεται με το PIN mypin) χρησιμοποιείται ο παρακάτω κώδικας που τρέχει εντός του κάθε νήματος (thread)που εξυπηρετεί έναν πελάτη. Υποθέτουμε μονοεπεξεργαστικό σύστημα στην πλευρά του εξυπηρετητή. 1. case CMD_WITHDRAW: 2. Account sessionacc = getsessionaccount(mypin); // τοπικό αντίγραφο Account 3. String result = sessionacc.withdraw(amount); // ανάληψη του ποσού 4. savesessionaccount(sessionacc); // αποθήκευση τοπικού αντιγράφου 5. break; 100

101 Άσκηση σε ταυτοχρονισμό Toσενάριο έχει ως εξής: δυο πελάτες (Π1 και Π2) διαθέτουν έναν κοινό λογαριασμό (Λ) και αφού έχουν ελέγξει το υπόλοιπο του λογαριασμού, το οποίο είναι 5000, στην συνέχεια προσπαθούν ταυτόχρονα να κάνουν ανάληψη ποσού 3000 ο πρώτος και 4000 ο δεύτερος. Περιγράψτε ένα σενάριο που οδηγεί σε συνθήκες ανταγωνισμού. Συνθήκη ανταγωνισμού (race condition) έχουμε όταν δύο νήματα προσπαθούν να προσπελάσουν το ίδιο αντικείμενο ταυτόχρονα και η συμπεριφορά του προγράμματος δεν εξαρτάται πλέον μόνο από τις εντολές του, αλλά και από το ποιο νήμα προηγείται στη σειρά προσπέλασης. Toπεδίο εφαρμογής της άσκησης ευνοεί την εμφάνιση καταστάσεων ανταγωνισμού και δημιουργεί αντίστοιχες απαιτήσεις για την αντιμετώπισή τους. 101

102 Σχεδιαστικές προκλήσεις Οι σχεδιαστές ΚΣ καλούνται να αντιμετωπίσουν έναν αριθμό από δύσκολα ζητήματα που σχετίζονται με την κατανεμημένη φύση των συστημάτων αυτών: ετερογένεια των συστατικών του, η ανοικτότητα, η οποία επιτρέπει την προσθήκη ή την αντικατάσταση συστατικών, η εξασφάλιση, η κλιμάκωση (επεκτασιμότητα) ως η δυνατότητα της αποτελεσματικής λειτουργίας του συστήματος όταν ο αριθμός των χρηστών αυξάνει, η αντιμετώπιση σφαλμάτων, ο ταυτοχρονισμός και η διαφάνεια. 102

103 Διαφάνεια Η διαφάνεια ορίζεται ως η απόκρυψη της διαφοροποίησης των συστατικών του κατανεμημένου συστήματος από τον χρήστη και τον προγραμματιστή εφαρμογών, έτσι ώστε το σύστημα να γίνεται αντιληπτό σαν μια ολότητα παρά ως συλλογή ανεξάρτητων συστατικών. Η διαφάνεια κατηγοριοποιείται στις παρακάτω περιπτώσεις: Διαφάνεια προσπέλασηςεπιτρέπει την ομοιόμορφη προσπέλαση τοπικών και απομακρυσμένων πόρων Διαφάνεια θέσης επιτρέπει την προσπέλαση των πόρων ανεξάρτητα από τη φυσική τους ή λογική τους θέση (για παράδειγμα, σε ποιο κτίριο ή σε ποια IP διεύθυνση) Διαφάνεια ταυτοχρονισμούεπιτρέπει την ταυτόχρονη λειτουργία πολλών προγραμμάτων με πρόσβαση σε κοινούς πόρους, χωρίς να παρεμβάλλονται μεταξύ τους 103

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

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

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

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

Λειτουργικά Συστήματα Ι. Καθηγήτρια Παπαδάκη Αναστασία

Λειτουργικά Συστήματα Ι. Καθηγήτρια Παπαδάκη Αναστασία Λειτουργικά Συστήματα Ι Καθηγήτρια Παπαδάκη Αναστασία 2013 1 Ηλεκτρονικός Υπολογιστής αποτελείται: 1. Από Υλικό Hardware (CPUs, RAM, Δίσκοι), & 2. Λογισμικό - Software Και μπορεί να εκτελέσει διάφορες

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

Χαρακτηρισµός Κατανεµηµένων Συστηµάτων

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

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

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

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

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

Επικοινωνία Client/Server

Επικοινωνία Client/Server Επικοινωνία Client/Server Χάρης Μανιφάβας Τμήμα Εφ. Πληροφορικής & Πολυμέσων ΤΕΙ Κρήτης Επικοινωνία - Client/Server 1 Μοντέλο Πελάτη-Εξυπηρετητή Βασική ιδέα: να δομηθεί το λειτουργικό σύστημα ως συνεργαζόμενες

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

Αρχιτεκτονική του πληροφοριακού συστήµατος Cardisoft Γραµµατεία 2003 ιαχείριση Προσωπικού

Αρχιτεκτονική του πληροφοριακού συστήµατος Cardisoft Γραµµατεία 2003 ιαχείριση Προσωπικού Αρχιτεκτονική του πληροφοριακού συστήµατος Cardisoft Γραµµατεία 2003 ιαχείριση Προσωπικού Γενικά Η αρχιτεκτονική ανάπτυξης τους πληροφοριακού συστήµατος Γραµµατεία 2000 υποσύστηµα διαχείρισης προσωπικού

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

Κάντε κλικ για έναρξη

Κάντε κλικ για έναρξη Σημειώσεις : Χρήστος Μουρατίδης Κάντε κλικ για έναρξη Ορισμός Δίκτυο Υπολογιστών = Mία ομάδα από 2 ή περισσότερους υπολογιστές που είναι συνδεδεμένοι μεταξύ τους. Ο κύριος σκοπός είναι να ανταλλάσσουν

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

Κεφάλαιο 7 Διαδικτύωση-Internet. 7.2 Τεχνολογία TCP/IP

Κεφάλαιο 7 Διαδικτύωση-Internet. 7.2 Τεχνολογία TCP/IP Κεφάλαιο 7 Διαδικτύωση-Internet 7.2 Τεχνολογία TCP/IP Τι δηλώνει ο όρος «TCP/IP»; Ο όρος TCP/IP αναφέρεται σε μια ομάδα ομοειδών πρωτοκόλλων που χρησιμοποιούνται για την επικοινωνία των δικτύων υπολογιστών

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

Πρότυπο Αναφοράς Open Systems Interconnection (OSI) Επικοινωνίες Δεδομένων Μάθημα 5 ο

Πρότυπο Αναφοράς Open Systems Interconnection (OSI) Επικοινωνίες Δεδομένων Μάθημα 5 ο Πρότυπο Αναφοράς Open Systems Interconnection (OSI) Επικοινωνίες Δεδομένων Μάθημα 5 ο Πρωτόκολλα και Αρχιτεκτονική Δικτύου Για να ανταλλάξουν δεδομένα δύο σταθμοί, εκτός από την ύπαρξη διαδρομής μεταξύ

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

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

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

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

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

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

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

SNMP ΔΙΑΧΕΙΡΙΣΗ ΔΙΚΤΥΟΥ ΒΑΣΙΚΕΣ ΕΝΝΟΙΕΣ

SNMP ΔΙΑΧΕΙΡΙΣΗ ΔΙΚΤΥΟΥ ΒΑΣΙΚΕΣ ΕΝΝΟΙΕΣ Κεφάλαιο 4 SNMP ΔΙΑΧΕΙΡΙΣΗ ΔΙΚΤΥΟΥ ΒΑΣΙΚΕΣ ΕΝΝΟΙΕΣ 1 4.1 ΕΙΣΑΓΩΓΗ...3 4.2 ΒΑΣΙΚΕΣ ΕΝΝΟΙΕΣ...3 4.2.1 Η ΑΡΧΙΤΕΚΤΟΝΙΚΗ ΤΗΣ ΔΙΑΧΕΙΡΙΣΗΣ ΔΙΚΤΥΟΥ...3 4.2.1.1 ΣΤΑΘΜΟΣ ΔΙΑΧΕΙΡΙΣΗΣ ΔΙΚΤΥΟΥ...4 4.2.1.2 ΔΙΑΧΕΙΡΙΖΟΜΕΝΟΙ

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

Εργαλεία ανάπτυξης εφαρμογών internet Ι

Εργαλεία ανάπτυξης εφαρμογών internet Ι IEK ΟΑΕΔ ΚΑΛΑΜΑΤΑΣ ΤΕΧΝΙΚΟΣ ΕΦΑΡΜΟΓΩΝ ΠΛΗΟΦΟΡΙΚΗΣ Εργαλεία ανάπτυξης εφαρμογών internet Ι Διδάσκουσα: Κανελλοπούλου Χριστίνα ΠΕ19 Πληροφορικής 4 φάσεις διαδικτυακών εφαρμογών 1.Εφαρμογές στατικής πληροφόρησης

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

Διαχείριση Πολιτισμικών Δεδομένων

Διαχείριση Πολιτισμικών Δεδομένων Διαχείριση Πολιτισμικών Δεδομένων Μάθημα 1 Εισαγωγή στις Βάσεις Δεδομένων Τζανέτος Πομόνης ΤΕΙ Ιονίων Νήσων Τμήμα Τεχνολόγων Περιβάλλοντος Κατεύθυνση Συντήρησης Πολιτισμικής Κληρονομιάς Τι είναι οι Βάσεις

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

Ιόνιο Πανεπιστήμιο Τμήμα Πληροφορικής Εισαγωγή στην Επιστήμη των Υπολογιστών 2014-15. Δίκτυα υπολογιστών. (και το Διαδίκτυο)

Ιόνιο Πανεπιστήμιο Τμήμα Πληροφορικής Εισαγωγή στην Επιστήμη των Υπολογιστών 2014-15. Δίκτυα υπολογιστών. (και το Διαδίκτυο) Ιόνιο Πανεπιστήμιο Τμήμα Πληροφορικής Εισαγωγή στην Επιστήμη των Υπολογιστών 2014-15 Δίκτυα υπολογιστών (και το Διαδίκτυο) http://di.ionio.gr/~mistral/tp/csintro/ Μ.Στεφανιδάκης Τι είναι ένα δίκτυο υπολογιστών;

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

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

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

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

Ανάπτυξη & Σχεδίαση Λογισμικού (ΗΥ420)

Ανάπτυξη & Σχεδίαση Λογισμικού (ΗΥ420) Ανάπτυξη & Σχεδίαση Λογισμικού (ΗΥ420) Διάλεξη 8: Σχεδίαση Συστήματος Σχεδίαση Συστήματος 2 Διεργασία μετατροπής του προβλήματος σε λύση. Από το Τί στο Πώς. Σχέδιο: Λεπτομερής περιγραφή της λύσης. Λύση:

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

Τι είναι ένα δίκτυο υπολογιστών; Αρχιτεκτονική επιπέδων πρωτοκόλλων. Δικτυακά πρωτόκολλα

Τι είναι ένα δίκτυο υπολογιστών; Αρχιτεκτονική επιπέδων πρωτοκόλλων. Δικτυακά πρωτόκολλα Ιόνιο Πανεπιστήμιο Τμήμα Πληροφορικής Εισαγωγή στην Επιστήμη των Υπολογιστών 2014-15 Δίκτυα υπολογιστών (και το Διαδίκτυο) http://di.ionio.gr/~mistral/tp/csintro/ Μ.Στεφανιδάκης Τι είναι ένα δίκτυο υπολογιστών;

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

Βασικές Έννοιες Web Εφαρμογών

Βασικές Έννοιες Web Εφαρμογών ΟΙΚΟΝΟΜΙΚΟ ΠΑΝΕΠΙΣΤΗΜΙΟ ΑΘΗΝΩΝ ΤΜΗΜΑ ΔΙΟΙΚΗΤΙΚΗΣ ΕΠΙΣΤΗΜΗΣ ΚΑΙ ΤΕΧΝΟΛΟΓΙΑΣ Τεχνολογίες και Εφαρμογές Διαδικτύου Βασικές Έννοιες Web Εφαρμογών Κατερίνα Πραματάρη Τεχνολογίες και Εφαρμογές Διαδικτύου Περιεχόμενα

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

Σύντομη παρουσίαση των εργαλείων/εντολών telnet, ping, traceroute nslookup και nmap, zenmap

Σύντομη παρουσίαση των εργαλείων/εντολών telnet, ping, traceroute nslookup και nmap, zenmap Σύντομη παρουσίαση των εργαλείων/εντολών telnet, ping, traceroute nslookup και nmap, zenmap Version 2.00 Επιμέλεια Σημειώσεων: Δημήτρης Κόγιας Πατρικάκης Χαράλαμπος Πίνακας περιεχομένων TELNET... 2 PING...

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

Αρχιτεκτονικές κατανεμημένων συστημάτων. I. Sommerville 2006 Βασικές αρχές Τεχνολογίας Λογισμικού, 8η αγγ. έκδοση Κεφ. 12

Αρχιτεκτονικές κατανεμημένων συστημάτων. I. Sommerville 2006 Βασικές αρχές Τεχνολογίας Λογισμικού, 8η αγγ. έκδοση Κεφ. 12 Αρχιτεκτονικές κατανεμημένων συστημάτων Στόχοι Εξήγηση των πλεονεκτημάτων και των μειονεκτημάτων των αρχιτεκτονικών κατανεμημένων συστημάτων Εξέταση των αρχιτεκτονικών συστημάτων πελάτηδιακομιστή και των

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

Αρχιτεκτονικές κατανεμημένων συστημάτων. I. Sommerville 2006 Βασικές αρχές Τεχνολογίας Λογισμικού, 8η αγγ. έκδοση Κεφ. 12

Αρχιτεκτονικές κατανεμημένων συστημάτων. I. Sommerville 2006 Βασικές αρχές Τεχνολογίας Λογισμικού, 8η αγγ. έκδοση Κεφ. 12 Αρχιτεκτονικές κατανεμημένων συστημάτων Στόχοι Εξήγηση των πλεονεκτημάτων και των μειονεκτημάτων των αρχιτεκτονικών κατανεμημένων συστημάτων Εξέταση των αρχιτεκτονικών συστημάτων πελάτηδιακομιστή και των

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

Μετακινούμενος Κώδικας (Mobile Code) Κατανεμημένα Συστήματα 1

Μετακινούμενος Κώδικας (Mobile Code) Κατανεμημένα Συστήματα 1 Μετακινούμενος Κώδικας (Mobile Code) Κατανεμημένα Συστήματα 1 lalis@inf.uth.gr Γιατί μετακινούμενος κώδικας; Ευελιξία διαχείρισης μετακίνηση υπηρεσιών του συστήματος Μείωση επικοινωνίας / τοπικής επεξεργασίας

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

Λειτουργικά. Τεχνολογικό Εκπαιδευτικό Ίδρυμα Δυτικής Μακεδονίας Σιώζιος Κων/νος - Πληροφορική Ι

Λειτουργικά. Τεχνολογικό Εκπαιδευτικό Ίδρυμα Δυτικής Μακεδονίας Σιώζιος Κων/νος - Πληροφορική Ι Λειτουργικά Συστήματα 1 Λογισμικό του Υπολογιστή Για να λειτουργήσει ένας Η/Υ εκτός από το υλικό του, είναι απαραίτητο και το λογισμικό Το σύνολο των προγραμμάτων που συντονίζουν τις λειτουργίες του υλικού

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

Σχολή Προγραµµατιστών Ηλεκτρονικών Υπολογιστών (ΣΠΗΥ) Τµήµα Προγραµµατιστών Σειρά 112

Σχολή Προγραµµατιστών Ηλεκτρονικών Υπολογιστών (ΣΠΗΥ) Τµήµα Προγραµµατιστών Σειρά 112 Σχολή Προγραµµατιστών Ηλεκτρονικών Υπολογιστών (ΣΠΗΥ) Τµήµα Προγραµµατιστών Σειρά 112 Πλωτάρχης Γ. ΚΑΤΣΗΣ ΠΝ Γιατί χρησιµοποιούµε δίκτυα? Δίκτυο Σύνολο Η/Υ και συσκευών Συνδεδεµένα µε κάποιο µέσο Stand-alone

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

Web and HTTP. Βασικά Συστατικά: Web Server Web Browser HTTP Protocol

Web and HTTP. Βασικά Συστατικά: Web Server Web Browser HTTP Protocol HTTP Protocol Web and HTTP Βασικά Συστατικά: Web Server Web Browser HTTP Protocol Web Servers (1/2) Ένα πρόγραμμα (λογισμικό) που έχει εγκατασταθεί σε ένα υπολογιστικό σύστημα (έναν ή περισσότερους υπολογιστές)

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

ΤΕΧΝΟΛΟΓΙΑ ΙΚΤΥΩΝ ΕΠΙΚΟΙΝΩΝΙΩΝ

ΤΕΧΝΟΛΟΓΙΑ ΙΚΤΥΩΝ ΕΠΙΚΟΙΝΩΝΙΩΝ Ηυιοθέτησητης τεχνολογίαςκαι αρχιτεκτονικής TCP/IP δεν έρχεται σε σύγκρουσηµε το µοντέλο του OSI και αυτό γιατί και τα δυο συστήµατααναπτύχθηκαν συγχρόνως. Παρόλα αυτά, υπάρχουν ορισµένες ουσιώδεις διαφορές

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

3.3 Πρωτόκολλα ανεύρεσης και απόδοσης διευθύνσεων, Address Resolution Protocol (ARP) και Dynamic Host Configuration Protocol (DHCP)

3.3 Πρωτόκολλα ανεύρεσης και απόδοσης διευθύνσεων, Address Resolution Protocol (ARP) και Dynamic Host Configuration Protocol (DHCP) 3.3 Πρωτόκολλα ανεύρεσης και απόδοσης διευθύνσεων, Address Resolution Protocol (ARP) και Dynamic Host Configuration Protocol (DHCP) 1 / 32 Σε έναν κόμβο ο οποίος επιθυμεί να αποστείλει δεδομένα σε κάποιον

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

PROXY SERVER. Άριστη πύλη διαχωρισμού μεταξύ του εσωτερικού δικτύου και του Internet.

PROXY SERVER. Άριστη πύλη διαχωρισμού μεταξύ του εσωτερικού δικτύου και του Internet. PROXY SERVER Άριστη πύλη διαχωρισμού μεταξύ του εσωτερικού δικτύου και του Internet. Αποτελεσματικό εργαλείο για την απόκρυψη των εσωτερικών λεπτομερειών και διευθύνσεων IP του δικτύου. Αυξάνει τη συνολική

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

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

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

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

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

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

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

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

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

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

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

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

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

TRAVIS TRAFFIC VIOLATION INFORMATION SYSTEM ΣΥΣΤΗΜΑ ΔΙΑΧΕΙΡΗΣΗΣ ΠΑΡΑΒΑΣΕΩΝ ΦΩΤΟΕΠΙΣΗΜΑΝΣΗΣ

TRAVIS TRAFFIC VIOLATION INFORMATION SYSTEM ΣΥΣΤΗΜΑ ΔΙΑΧΕΙΡΗΣΗΣ ΠΑΡΑΒΑΣΕΩΝ ΦΩΤΟΕΠΙΣΗΜΑΝΣΗΣ TRAFFIC VIOLATION INFORMATION SYSTEM ΣΥΣΤΗΜΑ ΔΙΑΧΕΙΡΗΣΗΣ ΠΑΡΑΒΑΣΕΩΝ ΦΩΤΟΕΠΙΣΗΜΑΝΣΗΣ TRAVIS-V1-2012 TRAVIS Λογισμικό Διαχείρισης Παραβάσεων Φωτοεπισήμανσης Το σύστημα διαχείρισης παραβάσεων φωτοεπισήμανσης

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

ΟΙΚΟΝΟΜΙΚΟ ΠΑΝΕΠΙΣΤΗΜΙΟ ΑΘΗΝΩΝ ΤΜΗΜΑ ΙΟΙΚΗΤΙΚΗΣ ΕΠΙΣΤΗΜΗΣ ΚΑΙ ΤΕΧΝΟΛΟΓΙΑΣ. Ηλεκτρονικό Εμπόριο

ΟΙΚΟΝΟΜΙΚΟ ΠΑΝΕΠΙΣΤΗΜΙΟ ΑΘΗΝΩΝ ΤΜΗΜΑ ΙΟΙΚΗΤΙΚΗΣ ΕΠΙΣΤΗΜΗΣ ΚΑΙ ΤΕΧΝΟΛΟΓΙΑΣ. Ηλεκτρονικό Εμπόριο ΟΙΚΟΝΟΜΙΚΟ ΠΑΝΕΠΙΣΤΗΜΙΟ ΑΘΗΝΩΝ ΤΜΗΜΑ ΙΟΙΚΗΤΙΚΗΣ ΕΠΙΣΤΗΜΗΣ ΚΑΙ ΤΕΧΝΟΛΟΓΙΑΣ Ηλεκτρονικό Εμπόριο Αναπτύσσοντας ένα Ηλεκτρονικό Κατάστημα Ηλεκτρονικό Εμπόριο Λειτουργικότητα Εφαρμογής Κατάλογος προϊόντων Καλάθι

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

Μάθημα 4: Πρότυπα, Πρωτόκολλα & Υπηρεσίες

Μάθημα 4: Πρότυπα, Πρωτόκολλα & Υπηρεσίες Μάθημα 4: Πρότυπα, Πρωτόκολλα & Υπηρεσίες 4.1 Γενικά Σκοπός ενός δικτύου υπολογιστών είναι οι χρήστες να έχουν τη δυνατότητα να διαμοιράζονται πληροφορίες και συσκευές του δικτύου. Η σχεδίαση και η ανάπτυξη

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

Linux Terminal Server Project

Linux Terminal Server Project Linux Terminal Server Project Ένα κεντρικό σύστημα διαχείρισης των τερματικών κοινού της Βιβλιοθήκης & Κέντρου Πληροφόρησης του Πανεπιστημίου Μακεδονίας Κολοβός Φίλιππος filippos@uom.gr Ευάγγελος Μπάνος

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

ΚΕΦΑΛΑΙΟ 1.7. Πρωτόκολλα και Αρχιτεκτονική Δικτύου

ΚΕΦΑΛΑΙΟ 1.7. Πρωτόκολλα και Αρχιτεκτονική Δικτύου ΚΕΦΑΛΑΙΟ 1.7 Πρωτόκολλα και Αρχιτεκτονική Δικτύου Επικοινωνία δύο σταθμών Ύπαρξη διαδρομής Αποκατάσταση σύνδεσης Ο σταθμός-πηγή πρέπει να ξέρει πότε ο σταθμός-προορισμός είναι έτοιμος να λάβει δεδομένα.

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

Τεχνολογίες & Εφαρμογές Πληροφορικής Ενότητα 7: Τοπικά δίκτυα

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

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

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

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

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

Λειτουργικά Συστήματα Η/Υ

Λειτουργικά Συστήματα Η/Υ Λειτουργικά Συστήματα Η/Υ Κεφάλαιο 4 «Αρχιτεκτονικές ΛΣ» Διδάσκων: Δ Λιαροκάπης Διαφάνειες: Π. Χατζηδούκας 1 1. Μονολιθικά συστήματα Αρχιτεκτονικές ΛΣ 2. Στρωματοποιημένη αρχιτεκτονική 3. Αρχιτεκτονική

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

Επίπεδο δικτύου IP Forwading κτλ

Επίπεδο δικτύου IP Forwading κτλ Επίπεδο δικτύου IP Forwading κτλ (IP για που το έβαλες) Εργαστήριο Δικτύων Υπολογιστών 2014-2015 Τμήμα Μηχανικών Η/Υ και Πληροφορικής Επίπεδο δικτύου (Network layer) Επίπεδο εφαρμογής (Application layer):

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

Κατανεμημένα συστήματα και Επικοινωνία Πραγματικού Χρόνου

Κατανεμημένα συστήματα και Επικοινωνία Πραγματικού Χρόνου Λειτουργικά Συστήματα Πραγματικού Χρόνου 2006-07 Κατανεμημένα συστήματα και Επικοινωνία Πραγματικού Χρόνου Μ.Στεφανιδάκης Κατανεμημένα συστήματα ελέγχου Α Β διασυνδετικό δίκτυο Γ Δ Ε π.χ. οι επιμέρους

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

7.2.2 Σχέση OSI και TCP/IP

7.2.2 Σχέση OSI και TCP/IP Κεφάλαιο 7 7.2.2 Σχέση OSI και TCP/IP Σελ. 226-230 Γεώργιος Γιαννόπουλος ΠΕ19, ggiannop (at) sch.gr ΕΣΠΕΡΙΝΟ ΕΠΑΛ Κομοτηνής http://diktya-epal-g.ggia.info/ Γνωστό μοντέλο OSI διασύνδεσης ανοικτών συστημάτων.

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

Νέες Επικοινωνιακές Τεχνολογίες

Νέες Επικοινωνιακές Τεχνολογίες Νέες Επικοινωνιακές Τεχνολογίες Λύσεις Θεμάτων http://nop33.wordpress.com Τι ορίζουμε ως Τοπικό Δίκτυο Υπολογιστών; Ποια είναι τα βασικά χαρακτηριστικά των Τοπικών Δικτύων; Ποιες οι βασικές τοπολογίες

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

ΟΙΚΟΝΟΜΙΚΗ ΠΡΟΣΦΟΡΑ ΣΧΕ ΙΑΣΗΣ ΚΑΙ ΚΑΤΑΣΚΕΥΗΣ web εφαρµογής - ηλεκτρονικού κατατήµατος για έξυπνα κινητά

ΟΙΚΟΝΟΜΙΚΗ ΠΡΟΣΦΟΡΑ ΣΧΕ ΙΑΣΗΣ ΚΑΙ ΚΑΤΑΣΚΕΥΗΣ web εφαρµογής - ηλεκτρονικού κατατήµατος για έξυπνα κινητά ΟΙΚΟΝΟΜΙΚΗ ΠΡΟΣΦΟΡΑ ΣΧΕ ΙΑΣΗΣ ΚΑΙ ΚΑΤΑΣΚΕΥΗΣ web εφαρµογής - ηλεκτρονικού κατατήµατος για έξυπνα κινητά Για την STUDIO KOSTA BODA ILLUM Χανίων Πέµπτη, 9 Φεβρουαρίου 2012 Για την εταιρεία ACTS : Παπαγεωργίου

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

Σκοπιµότητα των firewalls

Σκοπιµότητα των firewalls Σκοπιµότητα των firewalls Παρέχουν προστασία των εσωτερικών δικτύων από απειλές όπως: Μη εξουσιοδοτηµένη προσπέλαση των δικτυακών πόρων: όταν επίδοξοι εισβολείς προσπαθούν να εισχωρήσουν στο δίκτυο και

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

Τεχνολογία Δικτύων Επικοινωνιών (Ενότητα Πρωτόκολλα και Αρχιτεκτονική Δικτύου)

Τεχνολογία Δικτύων Επικοινωνιών (Ενότητα Πρωτόκολλα και Αρχιτεκτονική Δικτύου) Τεχνολογία Δικτύων Επικοινωνιών (Ενότητα 1.7 - Πρωτόκολλα και Αρχιτεκτονική Δικτύου) Πρωτόκολλο είναι ένα σύνολο κανόνων που πρέπει να ακολουθήσουν όλοι οι σταθμοί εργασίας σε ένα δίκτυο ώστε να μπορούν

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

ΒΑΣΕΙΣ ΔΕΔΟΜΕΝΩΝ. Ενότητα 1: Εισαγωγή στις Βάσεις Δεδομένων. Αθανάσιος Σπυριδάκος Διοίκηση Επιχειρήσεων

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

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

ΚΕΦΑΛΑΙΟ 4. Τεχνική Ανίχνευσης του. Πτυχιακή Εργασία Σελίδα 95

ΚΕΦΑΛΑΙΟ 4. Τεχνική Ανίχνευσης του. Πτυχιακή Εργασία Σελίδα 95 ΚΕΦΑΛΑΙΟ 4 Τεχνική Ανίχνευσης του ICMP Echo Spoofing Πτυχιακή Εργασία Σελίδα 95 Περιεχόμενα ΕΙΣΑΓΩΓΗ 98 ΜΕΡΟΣ Α: Έλεγχος του Icmp Echo Reply Πακέτου 103 A.1. Ανίχνευση του spoofed Icmp Echo Request Πακέτου.

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

Αρχιτεκτονικές Συστημάτων

Αρχιτεκτονικές Συστημάτων ΟΙΚΟΝΟΜΙΚΟ ΠΑΝΕΠΙΣΤΗΜΙΟ ΑΘΗΝΩΝ ΤΜΗΜΑ ΔΙΟΙΚΗΤΙΚΗΣ ΕΠΙΣΤΗΜΗΣ ΚΑΙ ΤΕΧΝΟΛΟΓΙΑΣ Αρχιτεκτονικές Συστημάτων Κατερίνα Πραματάρη Αρχιτεκτονικές Συστημάτων Σχεδίαση και Αρχιτεκτονική Συστήματος Αρχιτεκτονική Πελάτη-Εξυπηρετητή

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

1 Συστήματα Αυτοματισμού Βιβλιοθηκών

1 Συστήματα Αυτοματισμού Βιβλιοθηκών 1 Συστήματα Αυτοματισμού Βιβλιοθηκών Τα Συστήματα Αυτοματισμού Βιβλιοθηκών χρησιμοποιούνται για τη διαχείριση καταχωρήσεων βιβλιοθηκών. Τα περιεχόμενα των βιβλιοθηκών αυτών είναι έντυπα έγγραφα, όπως βιβλία

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

Λιβανός Γιώργος Εξάμηνο 2017Β

Λιβανός Γιώργος Εξάμηνο 2017Β Λιβανός Γιώργος Εξάμηνο 2017Β Υπολογιστικό σύστημα Υλικό (hardware) Λογισμικό (Software) Ολοκληρωμένα κυκλώματα, δίσκοι, οθόνη, κλπ. Λογισμικό συστήματος Προγράμματα εφαρμογών Χρειάζονται ένα συντονιστή!!!

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

Ερώτηση 1 η μεταγωγής κυκλώματος? : Ποια είναι τα κύρια χαρακτηριστικά της. Ερώτηση 2 η : Ποια είναι τα κύρια χαρακτηριστικά της μεταγωγής μηνύματος?

Ερώτηση 1 η μεταγωγής κυκλώματος? : Ποια είναι τα κύρια χαρακτηριστικά της. Ερώτηση 2 η : Ποια είναι τα κύρια χαρακτηριστικά της μεταγωγής μηνύματος? Μετάδοση Δεδομένων Δίκτυα Υπολογιστών 68 Ερώτηση 1 η μεταγωγής κυκλώματος? : Ποια είναι τα κύρια χαρακτηριστικά της Απάντηση : Στα δίκτυα μεταγωγής κυκλώματος (circuit switching networks), η μετάδοση των

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

Στόχοι. Υπολογιστικά συστήματα: Στρώματα. Βασικές έννοιες [7]

Στόχοι. Υπολογιστικά συστήματα: Στρώματα. Βασικές έννοιες [7] Στόχοι ΕΠΛ 003: ΕΙΣΑΓΩΓΗ ΣΤΗΝ ΕΠΙΣΤΗΜΗ ΤΗΣ ΠΛΗΡΟΦΟΡΙΚΗΣ 1 Να εξηγήσουμε τι είναι τα δίκτυα υπολογιστών, ποιες είναι οι βασικές κατηγορίες τους και ποιες οι πιο συνηθισμένες τοπολογίες τους. Να περιγράψουμε

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

ΕΠΛ 001: ΕΙΣΑΓΩΓΗ ΣΤΗΝ ΕΠΙΣΤΗΜΗ ΤΗΣ ΠΛΗΡΟΦΟΡΙΚΗΣ. Δίκτυα Υπολογιστών

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

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

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

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

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

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

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

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

ΚΕΦΑΛΑΙΟ 10. Υπηρεσίες και εφαρμογές Διαδικτύου. ΚΕΦΑΛΑΙΟ 10 Υπηρεσίες και εφαρμογές Διαδικτύου. Α Γενικού Λυκείου

ΚΕΦΑΛΑΙΟ 10. Υπηρεσίες και εφαρμογές Διαδικτύου. ΚΕΦΑΛΑΙΟ 10 Υπηρεσίες και εφαρμογές Διαδικτύου. Α Γενικού Λυκείου Α Γενικού Λυκείου 87 Διδακτικές ενότητες 10.1 Υπηρεσίες Διαδικτύου 10.2 Ο παγκόσμιος ιστός, υπηρεσίες και εφαρμογές Διαδικτύου Διδακτικοί στόχοι Σκοπός του κεφαλαίου είναι οι μαθητές να μπορούν να διακρίνουν

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

Διαχείριση Ειδοποιήσεων με Κινητές Συσκευές

Διαχείριση Ειδοποιήσεων με Κινητές Συσκευές Διαχείριση Ειδοποιήσεων με Κινητές Συσκευές Λαμπαδαρίδης Αντώνιος el04148@mail.ntua.gr Διπλωματική εργασία στο Εργαστήριο Συστημάτων Βάσεων Γνώσεων και Δεδομένων Επιβλέπων: Καθηγητής Τ. Σελλής Περίληψη

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

Κεφάλαιο 1ο. 1.1.5 Πολυπρογραμματισμός 1.1.6 Πολυδιεργασία 1.2.2. Κατηγορίες Λειτουργικών Συστημάτων

Κεφάλαιο 1ο. 1.1.5 Πολυπρογραμματισμός 1.1.6 Πολυδιεργασία 1.2.2. Κατηγορίες Λειτουργικών Συστημάτων Κεφάλαιο 1ο 1.1.5 Πολυπρογραμματισμός 1.1.6 Πολυδιεργασία 1.2.2. Κατηγορίες Λειτουργικών Συστημάτων http://leitourgika-systhmata-epal-b.ggia.info Creative Commons License 3.0 Share-Alike Πολυπρογραμματισμός

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

6.1 Επεκτείνοντας το δίκτυο 6.2 Επιλεγόμενες τηλεφωνικές γραμμές modems Πλεονεκτήματα Μειονεκτήματα Βασική χρήση

6.1 Επεκτείνοντας το δίκτυο 6.2 Επιλεγόμενες τηλεφωνικές γραμμές modems Πλεονεκτήματα Μειονεκτήματα Βασική χρήση 6.1 Επεκτείνοντας το δίκτυο Τοπικά δίκτυα (LAN): επικοινωνία με περιορισμένη απόσταση κάλυψης (μικρή εμβέλεια) Δίκτυα Ευρείας Περιοχής (WAN): επικοινωνία σε ευρύτερη γεωγραφική κάλυψη. Από την άποψη του

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

ίκτυα - Internet Υπηρεσίες Internet O Παγκόσµιος Ιστός (World Wide Web) Ηλεκτρονική Αλληλογραφία (E-mail) Υπηρεσία FTP (File Transfer Protocol)

ίκτυα - Internet Υπηρεσίες Internet O Παγκόσµιος Ιστός (World Wide Web) Ηλεκτρονική Αλληλογραφία (E-mail) Υπηρεσία FTP (File Transfer Protocol) Ιόνιο Πανεπιστήµιο Τµήµα Αρχειονοµίας-Βιβλιοθηκονοµίας Κέρκυρα ίκτυα - Internet 2 Υπηρεσίες Internet O Παγκόσµιος Ιστός (World Wide Web) ΜηχανέςΑναζήτησηςστοWeb Ηλεκτρονική Αλληλογραφία (E-mail) Υπηρεσία

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

Κεφάλαιο 4: Λογισμικό Συστήματος

Κεφάλαιο 4: Λογισμικό Συστήματος Κεφάλαιο 4: Λογισμικό Συστήματος Ερωτήσεις 1. Να αναφέρετε συνοπτικά τις κατηγορίες στις οποίες διακρίνεται το λογισμικό συστήματος. Σε ποια ευρύτερη κατηγορία εντάσσεται αυτό; Το λογισμικό συστήματος

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

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

Εισαγωγή στην Πληροφορική Ανοικτά Ακαδημαϊκά Μαθήματα στο ΤΕΙ Ιονίων Νήσων Εισαγωγή στην Πληροφορική Ενότητα 13: Κατανεμημένα Συστήματα [βασισμένο στο Coulouris, Dollimore and Kindberg, Distributed Systems: Concepts and Design,

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

Όλες οι υπηρεσίες είναι διαθέσιμες μέσω διαδικτύου.

Όλες οι υπηρεσίες είναι διαθέσιμες μέσω διαδικτύου. ΚΕΦΑΛΑΙΟ 13 Όλες οι υπηρεσίες είναι διαθέσιμες μέσω διαδικτύου. Οι υπηρεσίες νέφους παρέχονται με τέτοιο τρόπο ώστε ο τελικός χρήστης δεν μπορεί να διακρίνει τεχνικές λεπτομέρειες. Η χρηστικότητα, η διαθεσιμότητα

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

Υπηρεσίες Ιστού (Web Services) ΜΙΧΑΛΗΣ ΜΑΛΙΑΠΠΗΣ

Υπηρεσίες Ιστού (Web Services) ΜΙΧΑΛΗΣ ΜΑΛΙΑΠΠΗΣ Υπηρεσίες Ιστού (Web Services) ΜΙΧΑΛΗΣ ΜΑΛΙΑΠΠΗΣ Μάθημα Πρώτο Εισαγωγή στις Υπηρεσίες Ιστού (Web Services) Μοντέλα WS JSON Χρήση (consume) WS μέσω python Πρόσβαση σε WS και άντληση δεδομένων Παραδείγματα

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

ίκτυα - Internet Μάθηµα 3ο Ενότητα Β: Το Πρότυπο ΤCP/IP Eισαγωγή - Επικοινωνία µεταξύ δύο Υπολογιστών Παρασκευή 10 NOE 2006 ιευθύνσεις

ίκτυα - Internet Μάθηµα 3ο Ενότητα Β: Το Πρότυπο ΤCP/IP Eισαγωγή - Επικοινωνία µεταξύ δύο Υπολογιστών Παρασκευή 10 NOE 2006 ιευθύνσεις Ιόνιο Πανεπιστήµιο Τµήµα Αρχειονοµίας-Βιβλιοθηκονοµίας, Κέρκυρα Παρασκευή 10 NOE 2006 ίκτυα - Internet Μάθηµα 3ο Ενότητα Β: Το Πρότυπο ΤCP/IP Eισαγωγή - Επικοινωνία µεταξύ δύο Υπολογιστών Α Ίδιο τοπικό

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

Πρωτόκολλα Διαδικτύου

Πρωτόκολλα Διαδικτύου Πρωτόκολλα Διαδικτύου Μέρος 1ο Επικοινωνίες Δεδομένων Μάθημα 3 ο Εισαγωγή στην Τεχνολογία TCP/IP To TCP/IP σημαίνει Transmission Control Protocol / Internet Protocol και θα μπορούσε να θεωρηθεί ότι πρόκειται

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

Ενότητα 12 (κεφάλαιο 28) Αρχιτεκτονικές Εφαρμογών

Ενότητα 12 (κεφάλαιο 28) Αρχιτεκτονικές Εφαρμογών ΕΠΛ362: Τεχνολογία Λογισμικού ΙΙ (μετάφραση στα ελληνικά των διαφανειών του βιβλίου Software Engineering, 9/E, Ian Sommerville, 2011) Ενότητα 12 (κεφάλαιο 28) Αρχιτεκτονικές Εφαρμογών Οι διαφάνειες αυτές

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

Τεχνική Οδηγία. Εγκατάσταση & ρύθμιση MS ISA Server 2000 στο περιβάλλον των σχολικών εργαστηρίων. Έκδοση 1.0. Ιανουάριος 2005

Τεχνική Οδηγία. Εγκατάσταση & ρύθμιση MS ISA Server 2000 στο περιβάλλον των σχολικών εργαστηρίων. Έκδοση 1.0. Ιανουάριος 2005 Πληροφοριακών Συστημάτων Σχολείων ΥΠΟΥΡΓΕΙΟ ΕΘΝΙΚΗΣ ΠΑΙΔΕΙΑΣ & ΘΡΗΣΚΕΥΜΑΤΩΝ ΕΠΙΧΕΙΡΗΣΙΑΚΟ ΠΡΟΓΡΑΜΜΑ Κοινωνία της Πληροφορίας Έργο: Δράσεις Υποστήριξης των Πληροφοριακών Συστημάτων των σχολείων Τεχνική

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

AEI Πειραιά Τ.Τ. Τμ. Μηχ/κων Αυτοματισμού ΤΕ. Δίκτυα Μετάδοσης Δεδομένων. Διάλεξη 1: Εισαγωγή στα δίκτυα υπολογιστών και βασικές αρχές

AEI Πειραιά Τ.Τ. Τμ. Μηχ/κων Αυτοματισμού ΤΕ. Δίκτυα Μετάδοσης Δεδομένων. Διάλεξη 1: Εισαγωγή στα δίκτυα υπολογιστών και βασικές αρχές AEI Πειραιά Τ.Τ. Τμ. Μηχ/κων Αυτοματισμού ΤΕ Δίκτυα Μετάδοσης Δεδομένων Διάλεξη 1: Εισαγωγή στα δίκτυα υπολογιστών και βασικές αρχές Γενικά Διδάσκουσα: Ελένη Αικατερίνη Λελίγκου Γραφείο ΖΑ202. Ε-mail:

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

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

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

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

Επιχειρησιακά Πληροφοριακά Συστήματα. Site: www.aggelopoulos.tk e-mail: ioannis.aggelopoulos@gmail.com. Στόχος Σκοπός μαθήματος

Επιχειρησιακά Πληροφοριακά Συστήματα. Site: www.aggelopoulos.tk e-mail: ioannis.aggelopoulos@gmail.com. Στόχος Σκοπός μαθήματος Επιχειρησιακά Πληροφοριακά Συστήματα Διδάσκων: Αγγελόπουλος Γιάννης Δευτέρα 3-5 Τρίτη 4-6 Εργαστήριο Α Site: www.aggelopoulos.tk e-mail: ioannis.aggelopoulos@gmail.com 1 Στόχος Σκοπός μαθήματος Σκοπός:

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

Εργαστήριο Λειτουργικών Συστημάτων 8o εξάμηνο, Ροή Υ, ΗΜΜΥ

Εργαστήριο Λειτουργικών Συστημάτων 8o εξάμηνο, Ροή Υ, ΗΜΜΥ ΕΘΝΙΚΟ ΜΕΤΣΟΒΙΟ ΠΟΛΥΤΕΧΝΕΙΟ Σχολή Ηλεκτρολόγων Μηχανικών και Μηχανικών Υπολογιστών Εργαστήριο Λειτουργικών Συστημάτων 8o εξάμηνο, Ροή Υ, ΗΜΜΥ Σχεδιασμός και υλοποίηση υποδομής σημείωσης διεργασιών στον

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

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

ΠΤΥΧΙΑΚΗ ΕΡΕΥΝΑ ΥΠΗΡΕΣΙΕΣ ΚΑΙ ΕΦΑΡΜΟΓΕΣ ΑΣΥΡΜΑΤΩΝ ΔΙΚΤΥΩΝ ΙΩΑΝΝΟΥ ΓΕΩΡΓΙΟΣ ΛΕΥΚΩΣΙΑ-ΚΥΠΡΟΣ ΑΝΩΤΑΤΟ ΤΕΧΝΟΛΟΓΙΚΟ ΕΚΠΑΙΔΕΥΤΙΚΟ ΙΔΡΥΜΑ ΗΠΕΙΡΟΥ ΤΜΗΜΑ ΤΗΛΕΠΛΗΡΟΦΟΡΙΚΗ ΚΑΙ ΔΙΟΙΚΗΣΗ ΠΤΥΧΙΑΚΗ ΕΡΕΥΝΑ ΙΩΑΝΝΟΥ ΓΕΩΡΓΙΟΣ ΛΕΥΚΩΣΙΑ-ΚΥΠΡΟΣ 1 ΠΡΟΛΟΓΟΣ Δυο από τα σημαντικότερα επιτεύγματα της τεχνολογίας είναι:

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

Πρωτόκολλα Επικοινωνίας και Τείχος Προστασίας

Πρωτόκολλα Επικοινωνίας και Τείχος Προστασίας Β5.1.2 Πρωτόκολλα Επικοινωνίας και Τείχος Προστασίας Τι θα μάθουμε σήμερα: Να ορίζουμε τι είναι πρωτόκολλο επικοινωνίας Να εξηγούμε τη χρησιμότητα των πρωτοκόλλων επικοινωνίας Να ονομάζουμε τα σημαντικότερα

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

Βασικές Υπηρεσίες Διαδικτύου. Επικοινωνίες Δεδομένων Μάθημα 2 ο

Βασικές Υπηρεσίες Διαδικτύου. Επικοινωνίες Δεδομένων Μάθημα 2 ο Βασικές Υπηρεσίες Διαδικτύου Επικοινωνίες Δεδομένων Μάθημα 2 ο Μεταφορά αρχείων (File Transfer Protocol, FTP) user at host FTP user interface FTP client local file system file transfer FTP server remote

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

ΚΑΤΑΝΕΜΗΜΕΝΑ ΣΥΣΤΗΜΑΤΑ. Παράδοση Ασκήσεων Κεφάλαιο 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 υπηρεσία επιτρέπει σε έναν

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

Εικονική Μνήμη (Virtual Μemory)

Εικονική Μνήμη (Virtual Μemory) ΗΥ 431 Αρχιτεκτονική Παραλλήλων Συστημάτων Διάλεξη 16 Εικονική Μνήμη (Virtual Μemory) Νίκος Μπέλλας Τμήμα Ηλεκτρολόγων Μηχανικών και Μηχανικών Η/Υ Απλό πείραμα int *data = malloc((1

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

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

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

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

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

Εισαγωγή στην Πληροφορική Ανοικτά Ακαδημαϊκά Μαθήματα στο ΤΕΙ Ιονίων Νήσων Εισαγωγή στην Πληροφορική Ενότητα 8: Λειτουργικά Συστήματα Το περιεχόμενο του μαθήματος διατίθεται με άδεια Creative Commons εκτός και αν αναφέρεται διαφορετικά

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

Είδη Groupware. Λογισμικό Συνεργασίας Ομάδων (Groupware) Λογισμικό Groupware. Υπάρχουν διάφορα είδη groupware ανάλογα με το αν οι χρήστες εργάζονται:

Είδη Groupware. Λογισμικό Συνεργασίας Ομάδων (Groupware) Λογισμικό Groupware. Υπάρχουν διάφορα είδη groupware ανάλογα με το αν οι χρήστες εργάζονται: Μάθημα 10 Συστήματα Διάχυσης και Διαχείρισης Γνώσης Chapter 10 Knowledge Transfer In The E-world Chapter 13 Knowledge Management Tools and Knowledge Portals Συστήματα Διάχυσης και Διαχείρισης Γνώσης Λογισμικό

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

Θέματα διπλωματικών εργασιών σε. Συστοιχίες παράλληλης εξυηρέτησης εφαρμογών Διαδικτύου

Θέματα διπλωματικών εργασιών σε. Συστοιχίες παράλληλης εξυηρέτησης εφαρμογών Διαδικτύου Θέματα διπλωματικών εργασιών σε συστοιχίες παράλληλης εξυπηρέτησης εφαρμογών Διαδικτύου Εθνικό Μετσόβιο Πολυτεχνείο Σχολή Ηλεκτρολόγων Μηχανικών και Μηχανικών Υπολογιστών Τομέας Τεχνολογίας Πληροφορικής

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

ΔΙΚΤΥΑ ΥΠΟΛΟΓΙΣΤΩΝ ΙΙ

ΔΙΚΤΥΑ ΥΠΟΛΟΓΙΣΤΩΝ ΙΙ ΔΙΚΤΥΑ ΥΠΟΛΟΓΙΣΤΩΝ ΙΙ 1 o ΔΙΑΓΩΝΙΣΜΑ ΘΕΜΑ 1 ο Α) Ποια είναι τα βασικά στοιχεία, τα οποία χαρακτηρίζουν το ISDN; Η ψηφιακή μετάδοση. Όλα τα σήματα μεταδίδονται σε ψηφιακή μορφή απ' άκρη σ' άκρη του δικτύου,

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

ΤΕΧΝΟΛΟΓΙΑ ΔΙΚΤΥΩΝ ΕΠΙΚΟΙΝΩΝΙΩΝ 1 ο ΚΕΦΑΛΑΙΟ

ΤΕΧΝΟΛΟΓΙΑ ΔΙΚΤΥΩΝ ΕΠΙΚΟΙΝΩΝΙΩΝ 1 ο ΚΕΦΑΛΑΙΟ ΤΕΧΝΟΛΟΓΙΑ ΔΙΚΤΥΩΝ ΕΠΙΚΟΙΝΩΝΙΩΝ 1 ο ΚΕΦΑΛΑΙΟ ΕΡΩΤΗΣΕΙΣ - ΑΣΚΗΣΕΙΣ 1. Έστω ότι θέλετε να συνδέσετε 20 υπολογιστές με συνδέσεις από σημείο σε σημείο (point-to-point), ώστε να είναι δυνατή η επικοινωνία όλων

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

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

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

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

Αρχιτεκτονική Λογισμικού

Αρχιτεκτονική Λογισμικού Αρχιτεκτονική Λογισμικού περιεχόμενα παρουσίασης Τι είναι η αρχιτεκτονική λογισμικού Αρχιτεκτονική και απαιτήσεις Σενάρια ποιότητας Βήματα αρχιτεκτονικής σχεδίασης Αρχιτεκτονικά πρότυπα Διαστρωματωμένη

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

Δίκτυα Υπολογιστών. Το επίπεδο εφαρμογής (application layer) Κ. Βασιλάκης

Δίκτυα Υπολογιστών. Το επίπεδο εφαρμογής (application layer) Κ. Βασιλάκης Δίκτυα Υπολογιστών Το επίπεδο εφαρμογής (application layer) Κ. Βασιλάκης Περίγραμμα ενότητες που εξετάζονται Αρχές δικτυακών εφαρμογών Αρχιτεκτονικές Μοντέλα υπηρεσιών επιπέδου μεταφοράς Μοντέλο πελάτη

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

Ιστορική Αναδρομή Λειτουργικών Συστημάτων (ΛΣ) Εισαγωγή : ο πυρήνας (kernel) / ο φλοιός (shell) Β ΕΠΑΛ

Ιστορική Αναδρομή Λειτουργικών Συστημάτων (ΛΣ) Εισαγωγή : ο πυρήνας (kernel) / ο φλοιός (shell) Β ΕΠΑΛ Ιστορική Αναδρομή Λειτουργικών Συστημάτων (ΛΣ) Εισαγωγή : ο πυρήνας (kernel) / ο φλοιός (shell) Β ΕΠΑΛ http://leitourgika-systhmata-epal-b.ggia.info/ Σύγχρονο Λειτουργικό Σύστημα - ΛΣ Λειτουργικό Σύστημα:

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

Δίκτυα Υπολογιστών I

Δίκτυα Υπολογιστών I Δίκτυα Υπολογιστών I Σχεδίαση και Αρχιτεκτονική Δικτύων Ευάγγελος Παπαπέτρου Τμ. Μηχ. Η/Υ & Πληροφορικής, Παν. Ιωαννίνων Ε.Παπαπέτρου (Τμ.Μηχ. Η/Υ & Πληροφορικής) MYY703: Δίκτυα Υπολογιστών I 1 / 19 Διάρθρωση

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

Ιόνιο Πανεπιστήµιο Τµήµα Αρχειονοµίας - Βιβλιοθηκονοµίας. Υπηρεσίες Internet. ίκτυα Η/Υ. Επίπεδο Εφαρµογής. Ενότητα θ

Ιόνιο Πανεπιστήµιο Τµήµα Αρχειονοµίας - Βιβλιοθηκονοµίας. Υπηρεσίες Internet. ίκτυα Η/Υ. Επίπεδο Εφαρµογής. Ενότητα θ Ιόνιο Πανεπιστήµιο Τµήµα Αρχειονοµίας - Βιβλιοθηκονοµίας Υπηρεσίες Internet ίκτυα Η/Υ Επίπεδο Εφαρµογής O Παγκόσµιος Ιστός (World Wide Web) Ηλεκτρονική Αλληλογραφία (E-mail) Υπηρεσία FTP (File Transfer

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

Περιεχόμενο του μαθήματος

Περιεχόμενο του μαθήματος ΤΕΧΝΟΛΟΓΙΑ ΛΟΓΙΣΜΙΚΟΥ Απαιτήσεις Λογισμικού Περιπτώσεις χρήσης Δρ Βαγγελιώ Καβακλή Τμήμα Πολιτισμικής Τεχνολογίας και Επικοινωνίας Πανεπιστήμιο Αιγαίου Εαρινό Εξάμηνο 2012-2013 1 Περιεχόμενο του μαθήματος

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

4.1.1 Πρωτόκολλο TCP - Δομή πακέτου

4.1.1 Πρωτόκολλο TCP - Δομή πακέτου 4.1.1 Πρωτόκολλο TCP - Δομή πακέτου 1 / 38 Παράδειγμα Έστω ότι θέλουμε να αποστείλουμε ένα μήνυμα μέσω ηλεκτρονικού ταχυδρομείου. Αρχικά η εφαρμογή χρησιμοποιώντας τα πρωτόκολλα του επιπέδου εφαρμογής

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

Δίκτυα Η/Υ στην Επιχείρηση

Δίκτυα Η/Υ στην Επιχείρηση Δίκτυα Η/Υ στην Επιχείρηση Δικτυακά πρωτόκολλα και εφαρμογές, Δρομολόγηση Γκάμας Βασίλειος, Εργαστηριακός Συνεργάτης Μοντέλο πελάτη-εξυπηρετητή Προκειμένου να χρησιμοποιήσουμε μια υπηρεσία του Internet

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

Λειτουργικά Συστήματα Ι. Κεφάλαιο 1 Βασικές Έννοιες Λειτουργικών Συστημάτων

Λειτουργικά Συστήματα Ι. Κεφάλαιο 1 Βασικές Έννοιες Λειτουργικών Συστημάτων Λειτουργικά Συστήματα Ι Κεφάλαιο 1 Βασικές Έννοιες Λειτουργικών Συστημάτων Δομή Η/Υ Ο Η/Υ αποτελείται από δυο βασικά στοιχεία: Υλικό (το ηλεκτρονικό-μηχανικό μέρος πχ συσκευές, πλακέτες κλπ) Λογισμικό

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

Δίκτυα Υπολογιστών ΙΙ (Ασκήσεις Πράξης)

Δίκτυα Υπολογιστών ΙΙ (Ασκήσεις Πράξης) TEI Σερρών Τμήμα Πληροφορικής και Επικοινωνιών Δίκτυα Υπολογιστών ΙΙ (Ασκήσεις Πράξης) Ανάλυση Πρωτοκόλλων Τομέας Τηλεπικοινωνιών και Δικτύων Δρ. Αναστάσιος Πολίτης Καθηγητής Εφαρμογών anpol@teiser.gr

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

ΟΙΚΟΝΟΜΙΚΗ ΠΡΟΣΦΟΡΑ ΣΧΕ ΙΑΣΗΣ ΚΑΙ ΚΑΤΑΣΚΕΥΗΣ ΙΑ ΙΚΤΥΑΚΟΥ ΠΛΗΡΟΦΟΡΙΑΚΟΎ ΣΥΣΤΗΜΑΤΟΣ. Τρίτη, 7 Φεβρουαρίου 2012

ΟΙΚΟΝΟΜΙΚΗ ΠΡΟΣΦΟΡΑ ΣΧΕ ΙΑΣΗΣ ΚΑΙ ΚΑΤΑΣΚΕΥΗΣ ΙΑ ΙΚΤΥΑΚΟΥ ΠΛΗΡΟΦΟΡΙΑΚΟΎ ΣΥΣΤΗΜΑΤΟΣ. Τρίτη, 7 Φεβρουαρίου 2012 ΟΙΚΟΝΟΜΙΚΗ ΠΡΟΣΦΟΡΑ ΣΧΕ ΙΑΣΗΣ ΚΑΙ ΚΑΤΑΣΚΕΥΗΣ ΙΑ ΙΚΤΥΑΚΟΥ ΠΛΗΡΟΦΟΡΙΑΚΟΎ ΣΥΣΤΗΜΑΤΟΣ Τρίτη, 7 Φεβρουαρίου 2012 Για την εταιρεία ACTS : Παπαγεωργίου Κων/νος Ποτιέ 21/ Χανιά, ΤΚ 73100 AΦΜ: 065439343 Τηλ./Fax:

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

Μάθημα 5: To Μοντέλο Αναφοράς O.S.I.

Μάθημα 5: To Μοντέλο Αναφοράς O.S.I. Μάθημα 5: To Μοντέλο Αναφοράς O.S.I. 5.1 Γενικά Τα πρώτα δίκτυα χαρακτηρίζονταν από την «κλειστή» αρχιτεκτονική τους με την έννοια ότι αυτή ήταν γνωστή μόνο στην εταιρία που την είχε σχεδιάσει. Με τον

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

Εργαλεία Ανάπτυξης Εφαρμογών Internet I

Εργαλεία Ανάπτυξης Εφαρμογών Internet I Εργαλεία Ανάπτυξης Εφαρμογών Internet I 2: Εισαγωγή στον περιβάλλον με δομή πελάτη-εξυπηρετητή Σταύρος Καμμάς 4 φάσεις διαδικτυακών εφαρμογών 1. Εφαρμογές στατικής πληροφόρησης 2. Εφαρμογές με απλή αμφίδρομη

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