Διπλωματική Εργασία του φοιτητή του Τμήματος Ηλεκτρολόγων Μηχανικών και Τεχνολογίας Υπολογιστών της Πολυτεχνικής Σχολής του Πανεπιστημίου Πατρών

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

Download "Διπλωματική Εργασία του φοιτητή του Τμήματος Ηλεκτρολόγων Μηχανικών και Τεχνολογίας Υπολογιστών της Πολυτεχνικής Σχολής του Πανεπιστημίου Πατρών"

Transcript

1 ΠΑΝΕΠΙΣΤΗΜΙΟ ΠΑΤΡΩΝ ΤΜΗΜΑ ΗΛΕΚΤΡΟΛΟΓΩΝ ΜΗΧΑΝΙΚΩΝ ΚΑΙ ΤΕΧΝΟΛΟΓΙΑΣ ΥΠΟΛΟΓΙΣΤΩΝ ΤΟΜΕΑΣ: Ηλεκτρονικής και Υπολογιστών ΕΡΓΑΣΤΗΡΙΟ: Συστημάτων Υπολογιστών Διπλωματική Εργασία του φοιτητή του Τμήματος Ηλεκτρολόγων Μηχανικών και Τεχνολογίας Υπολογιστών της Πολυτεχνικής Σχολής του Πανεπιστημίου Πατρών Αθανάσιος Τόλλος του Δημητρίου Αριθμός Μητρώου: 5150 Θέμα «Ανάπτυξη χρονοπρογραμματιστή με τυχαίες επιλογές» Επιβλέπων Σερπάνος Δημήτριος Αριθμός Διπλωματικής Εργασίας: Πάτρα, Φεβρουάριος 2013

2 1

3 ΠΕΡΙΛΗΨΗ Ο σύγχρονος κόσμος των δικτύων και του internet απαιτεί πολύ υψηλές ταχύτητες διασυνδέσεων στα διάφορα δίκτυα. Ξεκινώντας ακόμα και από τα οικιακά δίκτυα και τα τοπικά δίκτυα (LAN), στα πανεπιστημιακά δίκτυα (campus networks), στα μητροπολιτικά δίκτυα (MAN), στα δίκτυα ευρύτερης περιοχής (WAN) και στα δίκτυα κορμού του internet (core networks). Σε όλα αυτά τα δίκτυα χρησιμοποιούνται κατά κόρον μεταγωγείς (switches) και δρομολογητές (routers) προκειμένου να μεταφέρουν την δικτυακή πληροφορία από την αφετηρία της στον προορισμό της διασχίζοντας πληθώρα άλλων δικτύων. Πυρήνα των μεταγωγέων και των δρομολογητών αποτελεί ο χρονοπρογραμματιστής, ένας αλγόριθμος δηλαδή υλοποιημένος στο hardware της εκάστοτε συσκευής, που αποφασίζει την προώθηση της πληροφορίας από την είσοδό της στην έξοδό της, αφού προηγουμένως έχει καθοριστεί με άλλο μηχανισμό η θύρα εξόδου της πληροφορίας. Η σημασία του χρονοπρογραμματιστή γίνεται φανερή από την πληθώρα προβλημάτων που πρέπει να επιλύσει. Επιλεκτικά, κάποια από τα προβλήματα είναι ο ανταγωνισμός εισόδων για την ίδια έξοδο, το ταίριασμα εισόδων εξόδων, η ελάχιστη δυνατόν καθυστέρηση στην διερχόμενη πληροφορία, η σταθερότητα λειτουργίας, η μεγιστοποίηση της διαμεταγωγής (throughput), η δικαιοσύνη στην εξυπηρέτηση εισόδων και εξόδων, κ.α. Στην παρούσα διπλωματική παρουσιάζεται η οικογένεια αλγορίθμων χρονοπρογραμματισμού ROLM (Randomized On-Line Matching), η οποία υλοποιεί τυχαιότητα με αποδοτικό και αποτελεσματικό τρόπο. Οι επιδόσεις αυτές φαίνονται στη μικρή καθυστέρηση στην προώθηση πακέτων (packet forwarding), επιτυγχάνοντας έτσι υψηλή διαμεταγωγή (throughput) και στα χαρακτηριστικά δικαιοσύνης που προσφέρουν, σε σχέση με τις υπάρχουσες ανταγωνιστικές υλοποιήσεις, που δεν χρησιμοποιούν τυχαιότητα αλλά ντετερμινιστικές μεθόδους απόφασης. Τα αποτελέσματα αυτά οφείλονται στο βασικό αλγόριθμο της οικογένειας ROLM, τον Ranking, o οποίος υπολογίζει μέγιστο ταίριασμα εισόδων εξόδων. Οι αλγόριθμοι αυτοί επιλέγουν τυχαία εισόδους για προώθηση στις εξόδους που ζητούν, επιλογή η οποία μπορεί να οδηγήσει σε χρονοπρογραμματιστές υψηλών ταχυτήτων, ταχύτητες που ορίζει η εκάστοτε τεχνολογία υλοποίησης και η ταχύτητα των συνδέσμων δικτύου. Ο αλγόριθμος Ranking υλοποιείται σε software και σε hardware (υλικό), στην πλατφόρμα FPSLIC της ATMEL. Η πλατφόρμα αυτή περιέχει έναν 8μπιτο επεξεργαστή, τον AVR, και ένα προγραμματιζόμενο πίνακα πυλών (FPGA) στην ίδια πλακέτα κατασκευασμένα με την ίδια τεχνολογία. Έτσι, οι μετρήσεις των δύο υλοποιήσεων είναι συγκρίσιμες. Το πρόγραμμα που αναπτύσσεται, τόσο για την software όσο και για την hardware υλοποίηση, δέχεται ως παράμετρο το μέγεθος του μεταγωγέα. Έτσι, μετρώνται και συγκρίνονται χαρακτηριστικά όπως η ταχύτητα, ο χρόνος απόφασης, η επιφάνεια και το πλήθος θυρών I/O, για μεταγωγείς μεγέθους τεσσάρων εισόδων και τεσσάρων εξόδων (4x4), 8x8, 16x16 και 32x32. 2

4 3

5 ΠΕΡΙΕΧΟΜΕΝΑ ΚΕΦΑΛΑΙΟ 1 ΕΙΣΑΓΩΓΗ ΣΤΑ ΔΙΚΤΥΑ ΥΠΟΛΟΓΙΣΤΩΝ 6 ΜΕΤΑΓΩΓΕΙΣ (SWITCHES)... 8 ΔΡΟΜΟΛΟΓΗΤΕΣ (ROUTERS) ΑΡΧΙΤΕΚΤΟΝΙΚΕΣ ΜΕΤΑΓΩΓΕΩΝ SWITCH FABRICS ΚΟΙΝΟΧΡΗΣΤΗΣ ΜΝΗΜΗΣ SWITCH FABRICS ΚΟΙΝΟΥ ΜΕΣΟΥ SWITCH FABRICS ΠΛΗΡΟΥΣ ΔΙΑΣΥΝΔΕΣΗΣ SWITCH FABRICS ΔΙΑΙΡΕΣΗΣ ΧΩΡΟΥ OUTPUT QUEUING INPUT QUEUING ADVANCED INPUT QUEUING ADVANCED INPUT QUEUING ΜΕ ΟΥΡΕΣ ΕΞΟΔΟΥ ΚΕΦΑΛΑΙΟ 2 ΧΡΟΝΟΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ (SCHEDULING) 26 ΓΕΝΙΚΑ Ο ΑΛΓΟΡΙΘΜΟΣ RANKING Ο ΑΛΓΟΡΙΘΜΟΣ ROLM ΠΑΡΑΛΛΑΓΕΣ ΤΟΥ ΑΛΓΟΡΙΘΜΟΥ ROLM ΣΥΓΚΡΙΣΗ ROLM ΜΕ ΑΛΛΟΥΣ ΑΛΓΟΡΙΘΜΟΥΣ ΚΕΦΑΛΑΙΟ 3 ΥΛΟΠΟΙΗΣΗ ΑΛΓΟΡΙΘΜΟΥ RANKING ΣΤΟ FPSLIC 34 Η ΠΛΑΤΦΟΡΜΑ FPSLIC ΤΗΣ ATMEL ΑΝΑΠΤΥΞΗ ΧΡΟΝΟΠΡΟΓΡΑΜΜΑΤΙΣΤΗ ΣΤΟ ΛΟΓΙΣΜΙΚΟ ΒΕΛΤΙΣΤΟΠΟΙΗΣΗ ΚΩΔΙΚΑ ΜΕΤΡΗΣΕΙΣ - ΠΑΡΑΤΗΡΗΣΕΙΣ ΑΝΑΠΤΥΞΗ ΧΡΟΝΟΠΡΟΓΡΑΜΜΑΤΙΣΤΗ ΣΤΟ FPGA ΠΑΡΟΥΣΙΑΣΗ ΤΟΥ FPGA ΔΙΑΔΙΚΑΣΙΑ ΣΧΕΔΙΑΣΜΟΥ ΕΡΓΑΛΕΙΟ LEONARDO SPECTRUM ΕΡΓΑΛΕΙΟ MODELSIM ΜΕΤΡΗΣΕΙΣ ΣΥΓΚΡΙΣΗ ΥΛΟΠΟΙΗΣΗΣ RANKING ΣΤΟΝ AVR ΚΑΙ ΣΤΟ FPGA ΣΥΓΚΡΙΣΗ ΤΩΝ ROLM ΜΕΤΑΞΥ ΤΟΥΣ ΚΑΙ ΜΕ ΑΛΛΟΥΣ ΑΛΓΟΡΙΘΜΟΥΣ Διαμεταγωγή Δικαιοσύνη Πολυπλοκότητα υλοποίησης

6 ΚΕΦΑΛΑΙΟ 4 ΓΕΝΙΚΑ ΣΥΜΠΕΡΑΣΜΑΤΑ 67 ΒΙΒΛΙΟΓΡΑΦΙΑ 68 5

7 ΚΕΦΑΛΑΙΟ 1 Εισαγωγή στα δίκτυα υπολογιστών Cisco Networking Simplified, 2 nd edition, σελίδα 10 Ο βασικός κορμός ενός δικτύου σήμερα αποτελείται από μεταγωγείς (switches) και δρομολογητές (routers) καθώς και από τα διάφορα πρωτόκολλα επικοινωνίας που υλοποιούν οι παραπάνω συσκευές. Oι προσωπικοί υπολογιστές (PC) εμφανίστηκαν τη δεκαετία του 80. Για την δικτύωση τους δημιουργήθηκαν τα LAN (Local Area Network, τοπικό δίκτυο υπολογιστών), ένα σύνολο τεχνολογιών που καθιστά εφικτή την επικοινωνία μεταξύ τους. Πρωτόκολλα επικοινωνίας, όπως το Ethernet και το Token Ring έκαναν εφικτή την επικοινωνία διαφόρων συσκευών μεταξύ τους (PC, εκτυπωτές, κτλ). Από τη φύση τους όμως αυτές οι τεχνολογίες LAN εισήγαγαν περιορισμούς, όπως το πόσες συσκευές μπορούν να συνδεθούν καθώς και η μέγιστη απόσταση μεταξύ τους. Τα PC γίνονταν γρηγορότερα, ο αριθμός τους μεγάλωνε, τα λειτουργικά συστήματα πλέον μπορούσαν να εκτελούν πλήθος εφαρμογών ταυτόχρονα (multitasking) και οι εφαρμογές βασίζονταν όλο και περισσότερο σε δίκτυα. Όλα αυτά δημιουργούσαν συμφόρηση (congestion) στα LANs. Για να επιλυθούν τα παραπάνω προβλήματα δημιουργήθηκαν 2 τύποι συσκευών: επαναλήπτες (repeaters) και γέφυρες (bridges). Oι repeaters βασίζονται στο OSI (Open Systems Interconnection) layer 1 (επίπεδο φυσικού μέσου) και επιλύουν το πρόβλημα της απόστασης. Με αυτόν τον τρόπο, τα τοπικά δίκτυα μπορούν να καλύπτουν απόσταση πάνω από 100 μέτρα. Οι γέφυρες (bridges), που βασίζονται στο OSI layer 2 χωρίζουν ένα τμήμα του δικτύου σε επιμέρους δύο κι έτσι η κίνηση που προέρχεται από κάθε επιμέρους τμήμα περιορίζεται σε αυτό ενώ μέχρι πρότινος εκτεινόταν σε όλο το δίκτυο. Έτσι επιλύεται το πρόβλημα του πλήθους των διασυνδεδεμένων συσκευών στο ίδιο τοπικό δίκτυο. Τα LAN switches (δικτυακοί μεταγωγείς) αποτελούν τη συνέχεια των bridges φέρνοντας επανάσταση στα τοπικά δίκτυα. Κάθε δικτυακή συσκευή έχει ένα ρόλο: να μεταφέρει δικτυακή κίνηση από ένα τμήμα δικτύου (segment) σε ένα άλλο, από τις πόρτες εισόδου στις πόρτες εξόδου. Υπάρχουν βέβαια και εξαιρέσεις (πχ δικτυακές συσκευές που απλά αναλύουν την κίνηση που περνάει). Με δικτυακές συσκευές που αποφασίζουν ανεξάρτητα για την προώθηση της εισερχόμενης κίνησης, η δικτυακή κίνηση προωθείται από σημείο σε σημείο και εν τέλει καταλήγει στον προορισμό της. Σε όσο υψηλότερο OSI επίπεδο λειτουργεί μια δικτυακή συσκευή, τόσο βαθύτερα αναλύει κάθε πακέτο που περνάει από αυτήν προκειμένου να 6

8 αποφασίσει πού θα το προωθήσει. Αντίστοιχο παράδειγμα αποτελούν οι μεταγωγείς στις γραμμές των τραίνων. Οι μεταγωγείς αυτοί οδηγούν το τραίνο να ακολουθήσει τη σωστή τροχιά προς τον προορισμό του. Αν οι μεταγωγείς αυτοί είναι σε λανθασμένη θέση, τότε το τραίνο μπορεί να καταλήξει σε λάθος προορισμό η να κινείται σε επαναλαμβανόμενες τροχιές (loops). Η τεχνολογία των μεταγωγέων προέκυψε ως ο αντικαταστάτης των bridges. Οι μεταγωγείς επεκτείνουν τα πλεονεκτήματα των bridges, παρέχοντας πολύ μεγαλύτερη διαμεταγωγή (throughput), μεγαλύτερη πυκνότητα κίνησης ανά πόρτα (higher port density) και χαμηλότερο κόστος ανά πόρτα. Τύποι γεφύρωσης: Διαφανής γεφύρωση (transparent bridging) που εμφανίζεται στα δίκτυα ethernet Γεφύρωση πηγής (source route bridging) που εμφανίζεται στα δίκτυα token ring Γεφύρωση μετάφρασης (translational bridging) που εμφανίζεται κατά τη διασύνδεση διαφορετικών μέσων. Παράδειγμα διασύνδεση μεταξύ δικτύου Ethernet και δικτύου token ring. Η γεφύρωση και μεταγωγή (bridging and switching) πραγματοποιούνται στο επίπεδο 2 του OSI (data link layer), που σημαίνει ότι η διασύνδεση αυτή ελέγχει τη ροή των δεδομένων (data flow), παρέχει διόρθωση λαθών (transmission error handling) και παρέχει πρόσβαση στο φυσικό μέσο (physical media) του επιπέδου 1 του OSI. H βασική γεφύρωση είναι απλή: η γέφυρα ή ο μεταγωγέας αναλύουν το εισερχόμενο πλαίσιο (frame), αποφασίζουν που θα το προωθήσουν βάσει της πληροφορίας στην αρχή του πλαισίου (frame header) που περιλαμβάνει πληροφορία σχετικά με την αφετηρία και τον προορισμό του και τελικά το προωθούν στην πόρτα που η προηγούμενη απόφαση επιλογής κατέδειξε. Οι γέφυρες και οι μεταγωγείς χωρίζουν το δίκτυο σε επιμέρους τμήματα. Ακριβώς επειδή μόνο ένα τμήμα της δικτυακής κίνησης προωθείται, η γεφύρωση μειώνει την συνολική κίνηση που οι διάφορες συσκευές βλέπουν. Οι γέφυρες λειτουργούν και ως ένα είδος firewall, επειδή αποτρέπουν τα λάθη πλαισίου (frame-level errors) και επιπλέον κάνουν δυνατή την σύνδεση περισσότερων συσκευών στο δίκτυο από τον αντίστοιχο αριθμό συσκευών σε ένα επιμέρους κομμάτι του δικτύου (segment) χωρίς να παρεμβάλεται γέφυρα. Η βασική διαφορά μεταξύ μιας γέφυρας και ενός μεταγωγέα είναι ότι οι γέφυρες χωρίζουν το δίκτυο σε επιμέρους μικρότερα κομμάτια απ ότι τα επιμέρους κομμάτια δικτύου που χωρίζουν οι μεταγωγείς. Οι μεταγωγείς επειδή παρέχουν μεγαλύτερη πυκνότητα θυρών και ταχύτητας (port and speed density) επιτρέπουν τον διαχωρισμό του δικτύου σε τμήματα σε μεγαλύτερη κλίμακα. Οι σημερινοί μεταγωγείς που χρησιμοποιούνται στα εταιρικά δίκτυα (corporate networks) έχουν εκατοντάδες πόρτες. Ενδεικτικά για σύγκριση το ADSL router που έχουμε στο σπίτι μας έχει 4 πόρτες δικτύου. Επιπλέον, οι μεταγωγείς μπορούν και συνδέουν τμήματα δικτύου που λειτουργούν σε διαφορετική ταχύτητα. Στα παρακάτω σχήματα, φαίνονται κάποιοι μεταγωγείς με κάποια φυσικά χαρακτηριστικά τους (διαστάσεις σε ίντσες ή πόδια, διαμεταγωγή, κατανάλωση ενέργειας). 7

9 Μεταγωγείς (switches) H μεταγωγή συνδυάζει τεχνολογίες που επεκτείνουν τις τεχνολογίες των γεφυρών. Οι μεταγωγείς συνδέουν δύο ή περισσότερα τμήματα LAN (LAN segments) και παίρνουν αποφάσεις για το αν θα προωθήσουν την κίνηση από το ένα segment στο άλλο. Όταν κάποιο πλαίσιο καταφθάνει στον μεταγωγέα, ο μεταγωγέας ελέγχει την MAC address (Media Access Control διεύθυνση) της αφετηρίας και την αντίστοιχη διεύθυνση προορισμού του πακέτου. Ο μεταγωγέας εγγράφει σε έναν πίνακα γεφύρωσης (bridging table) την MAC αφετηρίας του πακέτου δηλώνοντας έτσι ότι η συγκεκριμένη MAC προήλθε από την συγκεκριμένη πόρτα εισόδου αυτού του πακέτου. Το ίδιο κάνει και για την MAC προορισμού. Εάν αυτές οι δύο πόρτες είναι διαφορετικές, τότε ο μεταγωγέας προωθεί το πλαίσιο αυτό στην πόρτα εξόδου. Σε αντίθετη περίπτωση, στην περίπτωση δηλαδή που οι δύο MAC διευθύνσεις προέρχονται από την ίδια πόρτα, ο μεταγωγέας δεν προωθεί το πακέτο και το επιστρέφει πίσω στην πόρτα εισόδου. Με αυτόν τον τρόπο ο μεταγωγέας μειώνει την συμφόρηση στο δίκτυο (reduces network congestion). Στην περίπτωση που η MAC διεύθυνση προορισμού δεν υπάρχει σε κανέναν πίνακα του μεταγωγέα, τότε το πακέτο προωθείται προς όλες τις πόρτες (flooding) εκτός από την πόρτα εισόδου του. Σε περίπτωση που η MAC διεύθυνση προορισμού βρεθεί μετά το flooding, τότε προστίθεται στον πίνακα μαζί με την αντίστοιχη πόρτα, αλλιώς το πακέτο απορρίπτεται. Κοιτώντας αφαιρετικά τον μεταγωγέα, ουσιαστικά αποτελεί γέφυρα με πολλές πόρτες (multiport bridge). Οι μεταγωγείς όμως έχουν εξελιχθεί σε έξυπνες συσκευές που έχουν αντικαταστήσει τις γέφυρες και τα hubs. Όχι μόνο μειώνουν την κίνηση χρησιμοποιώντας πίνακες γεφύρωσης, αλλά προσφέρουν μεγαλύτερη λειτουργικότητα υποστηρίζοντας συνδέσεις υψηλής ταχύτητας, εικονικά LANs (virtual LANs), ακόμα και κανονική δρομολόγηση. 8

10 9

11 Καθώς οι μεταγωγείς ethernet γίνονταν όλο και πιο φθηνοί, αντικατέστησαν τα hubs. Το hub είναι δικτυακή συσκευή ethernet που διασυνδέει άλλες συσκευές, χωρίς όμως να διαχωρίζει το δίκτυο σε segments. Ιεραρχικά, ανήκει στο φυσικό επίπεδο του OSI μοντέλου ( επίπεδο 1). Πλέον, η κάθε συσκευή συνδέεται σε ξεχωριστή πόρτα ethernet και η πιθανότητα σύγκρουσης μεταξύ των πακέτων (packet collision) εξαφανίζεται. Επειδή κάθε συσκευή συνδέεται σε δική της πόρτα στον μεταγωγέα (δηλαδή οι άκρες κάθε καλωδίου είναι η συσκευή και ο μεταγωγέας) η κάθε πόρτα μπορεί να λειτουργήσει σε full duplex mode. Αυτό σημαίνει ότι κάθε συσκευή μπορεί να δεχθεί και να μεταδώσει κίνηση ταυτόχρονα. Έτσι οι τερματικοί σταθμοί έχουν διαθέσιμο αρκετά μεγαλύτερο bandwidth στην διάθεσή τους. Το Ethernet τρέχει σε διάφορες ταχύτητες: 10Mbps, 100Mbps, 1Gbps και 10Gbps. Όμως, οι δικτυακές εφαρμογές και ο παγκόσμιος ιστός δημιουργούν ολοένα και αυξανόμενη δικτυακή κίνηση, κι έτσι εμφανίζεται ξανά το πρόβλημα της δικτυακής συμφόρησης. Οι μεταγωγείς χρησιμοποιούν διάφορες υπηρεσίες όπως τον ποιοτικό έλεγχο της υπηρεσίας (Quality of Service QoS) και άλλους μηχανισμούς ώστε να επιλύσουν το πρόβλημα της συμφόρησης. Καθώς οι μεταγωγείς γίνονταν ολοένα και πιο δημοφιλείς, οι κατασκευαστές τούς προσέθεταν επιπλέον δυνατότητες. Οι σύγχρονοι μεταγωγείς μπορούν να λάβουν αποφάσεις προώθησης κίνησης βασισμένοι στο επίπεδο 3 του OSI μοντέλου, όπως επίσης στο επίπεδο 4, ακόμα και σε ανώτερο. Παρόλο που οι μεταγωγείς μπορούν να εκπληρώσουν λειτουργίες συσκευών ανωτέρου επιπέδου, όπως δρομολογητών και μεταγωγέων περιεχομένου (content switches), εντούτοις οι λειτουργίες αυτές πρέπει να αποφεύγονται για την αποφυγή προβλημάτων που παρουσιάζονται σε ένα σημείο (single point of failure). Oι μεταγωγείς αποτελούν τον κορμό του δικτύου, παρέχοντας λειτουργίες που καλύπτουν όλα τα OSI επίπεδα, αποτελεσματικά και γρήγορα. Επίσης μπορούν να παράσχουν τροφοδοσία σε συσκευές μέσω του πρωτοκόλλου PoE (Power over Ethernet) χωρίς επιπλέον καλώδιο πέραν του UTP, για παράδειγμα σε δικτυακές συσκευές τηλεφώνου. Πλέον, οι γέφυρες και οι μεταγωγείς συνήθως ονομάζονται μεταγωγείς, μιας και τόσο από πλευράς λειτουργίας, όσο και από πλευράς κόστους, ο μεταγωγέας (switch) αποτελεί κυρίαρχη συσκευή, οδηγώντας στην εξάλειψη των γεφυρών με την ακριβή έννοια του όρου. 10

12 Cisco Networking Simplified, 2 nd edition, σελίδα 45 Στο παραπάνω σχήμα φαίνεται η εξέλιξη των μεταγωγέων από τη σύνδεση δικτυακών συσκευών με κοινό μέσο (bus) και τις διενέξεις που συνεπάγεται αυτή η διασύνδεση, στη σύνδεση κάθε δικτυακής συσκευής απευθείας στον μεταγωγέα, εξέλιξη που περιγράφεται αναλυτικά παραπάνω. 11

13 Δρομολογητές (routers) Ενώ οι μεταγωγείς και οι γέφυρες λειτουργούν στο επίπεδο 2 του μοντέλου OSI (data link layer) ως επί το πλείστον, οι δρομολογητές λειτουργούν στο επίπεδο 3 (επίπεδο δικτύου network layer). Όπως και στη γεφύρωση, η βασική λειτουργία των δρομολογητών συνίσταται στην προώθηση πακέτων από την αφετηρία τους προς τον προορισμό τους μέσα στο δίκτυο. Η διαφορά συνίσταται στην πληροφορία που χρησιμοποιείται για αυτή την προώθηση. Οι δρομολογητές αποφασίζουν για το που θα στείλουν τα πακέτα βασιζόμενοι σε πρωτόκολλα του επιπέδου δικτύου, όπως το Internet Protocol (IP) και το Novell NetWare Internetwork Packet Exchange (IPX). Η δρομολόγηση έγινε δημοφιλής στα τέλη της δεκαετίας του 80 ως αποτέλεσμα της διόγκωσης των δικτύων, διόγκωση που δεν ήταν δυνατόν να εξυπηρετηθεί από τις γέφυρες. Πριν από την είσοδό τους, τα δίκτυα ήταν μικρά και απομονωμένα και οι γέφυρες διαχειρίζονταν την προώθηση των πακέτων και την τμηματοποίηση (segmentation) του δικτύου. Καθώς τα δίκτυα μεγάλωναν, οι δρομολογητές προσέφεραν αποτελεσματική και ευέλικτη επέκταση (scaling), τόσο σε αριθμό διασυνδεδεμένων συσκευών όσο και σε γεωγραφική κατανομή. Παρόλο που οι δρομολογητές είναι αρκετά πιο ακριβοί και πιο πολύπλοκοι από τις γέφυρες, αποτελούν τον πυρήνα του internet σήμερα. Η δρομολόγηση συνίσταται από δύο διεργασίες: 1) ο προσδιορισμός της βέλτιστης διαδρομής μέσα στο δίκτυο, και β) η προώθηση των πακέτων στην επιλεχθείσα διαδρομή. Η πρώτη διεργασία της βέλτιστης διαδρομής γίνεται από τους αλγόριθμους δρομολόγησης. Καθώς υπολογίζουν τις εκάστοτε διαδρομές, πίνακες στους δρομολογητές αποθηκεύουν αυτήν την πληροφορία. Οι δρομολογητές επικοινωνούν μεταξύ τους και ανταλλάσσουν μηνύματα σχετικά με τις διαδρομές. Τα μηνύματα αυτά συνιστούν τις ενημερώσεις δρομολόγησης, οι οποίες συνίστανται σε τμήμα ή σύνολο του πίνακα δρομολόγησης κάποιου γειτονικού δρομολογητή. Έτσι κάθε δρομολογητής αποκτά πλήρη εικόνα για την τοπολογία του δικτύου στο οποίο ανήκει. Οι αλγόριθμοι δρομολόγησης καταγράφουν πληροφορία διαφόρων τύπων στους πίνακες δρομολόγησης. Ο βασικότερος τύπος αυτής της πληροφορίας είναι ο επόμενος προορισμός (next hop). Η πληροφορία next hop λέει στο δρομολογητή ότι για να στείλει πακέτα σε δεδομένο προορισμό, πρέπει να τα προωθήσει σε συγκεκριμένο δρομολογητή, ο οποίος αποτελεί τον επόμενο προορισμό (next hop) και είναι απευθείας συνδεδεμένος σε μια θύρα του δρομολογητή. Η διαδικασία ανταλλαγής πληροφοριών μεταξύ τους γίνεται χρησιμοποιώντας κάποιο πρωτόκολλο δρομολόγησης.. Με απλά λόγια, ένα πρωτόκολλο δρομολόγησης είναι μια διαδοχή μηνυμάτων τα οποία ανταλλάσσουν οι δρομολογητές σχετικά με το ποιες διασυνδέσεις είναι ενεργές ή όχι και ποια είναι τα next hops στο δίκτυο. Τα πιο διαδεδομένα πρωτόκολλα δρομολόγησης είναι 3: OSPF (Open Shortest Path First), EIGRP (Enhanced Interior Gateway Routing Protocol) και ο BGP (Border Gateway Protocol). Οι δρομολογητές δρομολογούν πακέτα Όταν ένας δρομολογητής δέχεται ένα πακέτο, προσπαθεί να ταιριάξει την διεύθυνση προορισμού του με το αντίστοιχο next hop στο πίνακα δρομολόγησης που έχει ήδη καταρτίσει. Επιπλέον, αποθηκεύονται κι άλλες πληροφορίες στους πίνακες δρομολόγησης. Για παράδειγμα, για προορισμούς που μπορούν να προσεγγιστούν μέσω διαφορετικών διαδρομών, ο πίνακας δρομολόγησης μπορεί να περιέχει πληροφορία για την επιθυμητή διαδρομή σε σχέση με τις υπόλοιπες. Ο καθορισμός της βέλτιστης διαδρομής είναι μια γενική έννοια, εξαρτάται ποιον ή ποιους παράγοντες θεωρεί το δίκτυο ως σημαντικούς. Αυτοί οι παράγοντες συνιστούν τα 12

14 metrics του δικτύου. Ο διαχειριστής του δικτύου (network administrator) καθορίζει ποιο ή ποια από τα metrics είναι σημαντικά. Παρατίθενται κάποια metrics: Αριθμός hop (hop count): ο αριθμός που δηλώνει πόσες φορές το πακέτο μπορεί να περάσει από έναν δρομολογητή. Καθυστέρηση (delay): ο χρόνος που απαιτείται για να φτάσει το πακέτο στον προορισμό του. Αξιοπιστία (reliability): ο ρυθμός δυαδικού σφάλματος (bit error rate) κάθε δικτυακού συνδέσμου (network link). Maximum Transmission Unit (MTU): το μέγιστο μέγεθος μηνύματος (ή πακέτου) που επιτρέπεται σε μια διαδρομή. Κόστος (cost): μια αυθαίρετη τιμή βασισμένη σε μια τιμή που θέτει ο διαχειριστής του δικτύου. Συνήθως το κόστος αποτελεί συνδυασμό άλλων metrics. Από τη στιγμή που ο δρομολογητής προσδιορίσει την βέλτιστη διαδρομή για ένα πακέτο, το επόμενο βήμα είναι να προωθήσει το πακέτο αυτό προς τον προορισμό του. Η διαδικασία της προώθησης ενός πακέτου από την θύρα εισόδου στην κατάλληλη θύρα εξόδου ονομάζεται μεταγωγή (switching). Παρόλο που η μεταγωγή σε ένα δρομολογητή είναι παρόμοια με την αντίστοιχη διαδικασία σε μεταγωγείς επιπέδου 2 στο μοντέλο OSI, τα κριτήρια αυτής της απόφασης και ο τρόπος διαχείρισης είναι διαφορετικά. Όταν ένας υπολογιστής (δικτυακή εφαρμογή) αποφασίζει να στείλει ένα πακέτο στο δίκτυο, εφοδιάζει αυτό το πακέτο με πληροφορία σχετικά με τον προορισμό του. Το πακέτο αυτό φτάνει στον δρομολογητή. Εάν ο δρομολογητής δεν γνωρίζει τον προορισμό, τότε το πακέτο απορρίπτεται. Εάν ο προορισμός είναι γνωστός, τότε ο δρομολογητής αλλάζει την φυσική διεύθυνση προορισμού του πακέτου (είναι διαφορετική από την διεύθυνση τελικού προορισμού του πακέτου που είναι η διεύθυνση δικτύου (επίπεδο 3 του OSI) ) σε αυτήν του next hop. Τέλος, το πακέτο προωθείται στον επόμενο δρομολογητή, όπου η διαδικασία επαναλαμβάνεται μέχρι τελικά το πακέτο να φτάσει στον τελικό προορισμό του. Οι δρομολογητές γεφυρώνουν και οι μεταγωγείς δρομολογούν Σε έναν ιδανικό κόσμο, το κάθε τι κάνει αυτό που είναι σχεδιασμένο να κάνει σε θεωρητικό επίπεδο. Αυτό δεν ισχύει με τις δικτυακές συσκευές. Οι δρομολογητές μπορούν να παράσχουν λειτουργίες γεφύρωσης και οι μεταγωγείς μεταμορφώνονται σε μεγάλης πυκνότητας θυρών (high density port), υψηλής ταχύτητας δρομολογητές του δικτύου. Δικτυακές συσκευές, συμπεριλαμβανομένων των μεταγωγών και των δρομολογητών, παίρνουν αποφάσεις προώθησης (forwarding decisions) σε επίπεδα του OSI μοντέλου υψηλότερα του επιπέδου δικτύου. Για παράδειγμα, δρομολογητές μπορούν να παράσχουν λειτουργίες τείχους προστασίας (firewall), στην οποία τα πακέτα ελέγχονται στην πληροφορία επιπέδου 4 που περιέχουν και μεταγωγείς, όπως οι μεταγωγείς περιεχομένου μπορούν να πάρουν αποφάσεις προώθησης βασιζόμενοι σε πληροφορία στα επίπεδα 5 έως και 7 (όπως πληροφορία για το URL σε ένα http πακέτο). 13

15 Cisco Networking Simplified, 2 nd edition, σελίδα 60 Cisco Networking Simplified, 2 nd edition, σελίδα 61 14

16 Τα παραπάνω σχήματα απεικονίζουν τη διασύνδεση μεταγωγέων και δρομολογητών στα σύγχρονα δίκτυα. Πιο συγκεκριμένα στο δεύτερο σχήμα απεικονίζεται ένα απλό οικιακό δίκτυο, όπου το ρόλο του δρομολογητή και του μεταγωγέα αναλαμβάνει το ADSL modem. Το βασικό δομικό στοιχείο μεταγωγέων και δρομολογητών αποτελεί αντικείμενο της παρούσας διπλωματικής. Είναι το κομμάτι που διασυνδέει θύρες εισόδου και εξόδου έπειτα από το στάδιο απόφασης σε ποια έξοδο πρέπει να προωθηθεί ποια είσοδος, στάδιο το οποίο συμβαίνει τόσο στους μεταγωγείς όσο και στους δρομολογητές όπως είδαμε παραπάνω. Τα πακέτα καταφθάνουν στις θύρες εισόδου από τους ελεγκτές εισόδου (Input Controllers). Αφού τα πακέτα εισόδου γνωρίζουν την θύρα εξόδου από το προηγούμενο στάδιο, η πληροφορία αυτή έχει καταγραφεί στο πακέτο. Στην παρούσα υλοποίηση η θύρα εξόδου είναι η μόνη πληροφορία που φέρει το πακέτο εισόδου. Στη συνέχεια, μέσω του switch fabric τα πακέτα προωθούνται στις αντίστοιχες εξόδους μέσω των ελεγκτών εξόδου (Output Controllers). 15

17 Αρχιτεκτονικές μεταγωγέων Οι αρχιτεκτονικές του μεταγωγέα (switch fabrics) χωρίζονται σε τέσσερις κατηγορίες: κοινόχρηστης μνήμης (shared memory) κοινού μέσου (shared medium) πλήρους διασύνδεσης (fully interconnected) διαίρεσης χώρου (space division) Switch fabrics κοινόχρηστης μνήμης Τα εισερχόμενα πακέτα μετατρέπονται από σειριακή σε παράλληλη μορφή (Serial to Parallel) και γράφονται διαδοχικά σε μια μνήμη τυχαίας προσπέλασης (random access memory) µε δύο θύρες. Οι κεφαλίδες των πακέτων παραδίδονται σε έναν ελεγκτή της μνήμης (memory controller), ο οποίος διατηρεί εγγραφές των θέσεων μνήμης των πακέτων που σχετίζονται με κάθε θύρα εξόδου. Ο ελεγκτής μνήμης κρατά σε διασυνδεδεμένες λίστες τις θέσεις μνήμης των εξερχόμενων πακέτων σχηματίζοντας, κατά αυτόν τον τρόπο, εικονικές ουρές εξόδου. Τα εξερχόμενα πακέτα αποπολυπλέκονται και προωθούνται προς την κατάλληλη θύρα εξόδου του switch fabric, όπου μετατρέπονται από παράλληλη σε σειριακή µορφή (Parallel to Serial). 16

18 Η αρχιτεκτονική αυτή έχει το πλεονέκτημα ότι μπορεί να επιτύχει κανονικοποιημένο throughput ίσο με 1, ενώ είναι απλή και διαμοιράζεται αποδοτικά η μνήμη. Ο διαμοιρασμός των buffers ελαχιστοποιεί την ποσότητά τους που χρειάζεται για να επιτευχθεί ένας συγκεκριμένος ρυθμός απώλειας πακέτων. Αυτό συμβαίνει σε περίπτωση που υπάρχει αυξημένη ζήτηση μιας συγκεκριμένης θύρας εξόδου (λόγω μεγάλης κυκλοφορίας), η κοινόχρηστη μνήμη απορροφά όσο περισσότερη μπορεί απ αυτή την κυκλοφορία. Ωστόσο υπάρχουν και κάποια μειονεκτήματα. Η κοινόχρηστη μνήμη πρέπει να λειτουργεί Ν φορές γρηγορότερα από την ταχύτητα των θυρών επειδή τα πακέτα πρέπει να διαβάζονται και να γράφονται ένα κάθε φορά. Έτσι η κοινόχρηστη μνήμη μπορεί να γράφει N πακέτα και επίσης να διαβάζει N πακέτα μέσα σε ένα δεδομένο χρονικό παράθυρο. Καθώς ο χρόνος πρόσβασης στη μνήμη έχει φυσικούς περιορισμούς, υπάρχει πρόβλημα κλιμάκωσης για μεταγωγείς με πολλές θύρες (το μέγεθος του switch fabric περιορίζεται από τον χρόνο προσπέλασης της μνήμης). Το προϊόν του αριθμού των θυρών επί της ταχύτητάς τους (NV) είναι περιορισμένο. Επιπλέον, ο ελεγκτής κεντρικοποιημένης μνήμης πρέπει να επεξεργαστεί τις κεφαλίδες των πακέτων και τις ετικέτες δρομολόγησης στον ίδιο ρυθμό με τη μνήμη. Αυτό είναι δύσκολο για τις πολλαπλές κατηγορίες προτεραιότητας, περίπλοκη δρομολόγηση πακέτων, multicasting και broadcasting. Switch fabrics κοινού μέσου Εκτός από την κοινόχρηστη μνήμη, τα πακέτα μπορούν να δρομολογηθούν μέσω ενός κοινού μέσου (shared medium), όπως είναι ο δακτύλιος (ring), δίαυλος (bus) ή dual bus. Η πολυπλεξία σε διαύλους µε διαίρεση χρόνου (time division multiplexing, TDM) είναι ένα δημοφιλές παράδειγμα αυτής της προσέγγισης. Τα εισερχόμενα πακέτα μεταδίδονται πάνω στο TDM δίαυλο (µε broadcast) µε έναν «κυκλικό» τρόπο (round-robin). Σε κάθε έξοδο τα κατάλληλα φίλτρα (address filter, AF) επιτρέπουν τη διέλευση των κατάλληλων πακέτων, σύμφωνα με το routing tag (εσωτερική ετικέτα που έχει το πακέτο). Η ταχύτητα του διαύλου πρέπει να είναι τουλάχιστον Ν*V για πακέτα/sec για ελαχιστοποιηθεί η ουρά στην είσοδο. Υπάρχουν μνήμες προσωρινής αποθήκευσης (buffers) στις θύρες εξόδου, καθώς υπάρχει το ενδεχόμενο μέσα σε ένα δεδομένο χρονικό παράθυρο περισσότερες της μιας θύρες εισόδου να στείλουν πακέτα µε προορισμό την ίδια θύρα εξόδου. 17

19 Οι έξοδοι είναι modular μορφής, η οποία επιτρέπει τα address filters και τους buffers εξόδου να υλοποιηθούν εύκολα. Πρέπει να αναφερθεί το γεγονός ότι προσφέρει βέλτιστο throughput με σχετικά εύκολη υλοποίηση. Επίσης η μορφή μετάδοσης και συλλογής (broadcast-and-select) της προσέγγισης αυτής επιτρέπει απλό multicasting και broadcasting. Η Σύγχρονη Μεταγωγή Σύνθετων Πακέτων (Synchronous Composite Packet Switching, SCPS), η οποία χρησιμοποιεί πολλαπλούς δακτυλίους, αποτελεί ένα παράδειγμα τέτοιας υλοποίησης. Παρ όλα αυτά, επειδή τα address filters και οι buffers εξόδου πρέπει να λειτουργούν με την ταχύτητα του κοινού μέσου, η οποία είναι N φορές γρηγορότερη από την ταχύτητα της θύρας, δημιουργούνται φυσικοί περιορισμοί στην κλιμάκωση. Το κοινό μέσο (bus) καθώς και τα φίλτρα διευθύνσεων θα πρέπει να λειτουργούν µε ρυθμό Ν*V πακέτα/sec, ενώ η ταχύτητα λειτουργίας των μνημών πρέπει να είναι (Ν+1)*V ΜHz. Επίσης, αντίθετα με την προσέγγιση της κοινόχρηστης μνήμης, οι buffers εξόδου δεν είναι κοινοί και απαιτείται μεγαλύτερη ποσότητα απ αυτούς για τον ίδιο ρυθμό απώλειας πακέτων. Switch fabrics πλήρους διασύνδεσης Σε αυτή την αρχιτεκτονική, υπάρχουν ανεξάρτητα μονοπάτια μεταξύ όλων των πιθανών ζευγαριών (Ν2) εισόδων και εξόδων. Έτσι, φτάνοντας τα πακέτα μεταφέρονται σε διαφορετικούς διαύλους προς όλες τις εξόδους και τα φίλτρα διευθυνσιοδότησης (address filters) επιτρέπουν τη διέλευση των κατάλληλων πακέτων στις ουρές εξόδου. 18

20 Αυτός ο σχεδιασμός έχει αρκετά πλεονεκτήματα. Όπως και προηγουμένως, όλες οι ουρές εμφανίζονται στις εξόδους. Επιπλέον, τα multicasting και broadcasting είναι φυσικά, όπως στην αρχιτεκτονική του κοινού μέσου. Τα address filters και οι buffers εξόδου είναι εύκολοι στην υλοποίηση και λειτουργούν με την ταχύτητα των θυρών. Καθώς όλο το υλικό λειτουργεί στην ίδια ταχύτητα, μπορεί να γίνει εύκολα κλιμάκωση σε μέγεθος και ταχύτητα. Δυστυχώς, η τετραγωνική αύξηση των buffers περιορίζει τον αριθμό των θυρών εξόδου για πρακτικούς λόγους. Η ταχύτητα θυρών παρ όλα αυτά δεν περιορίζεται από τους φυσικούς περιορισμούς στην ταχύτητα των address filters και buffers εξόδου. Ο μεταγωγέας Knockout από τους AT&T ήταν ένα πρωτότυπο όπου η ποσότητα των buffers είχε μειωθεί με κόστος τη μεγαλύτερη απώλεια πακέτων. Αντί για N buffers σε κάθε έξοδο, προτάθηκε η χρήση ενός συγκεκριμένου σταθερού αριθμού από buffers L ώστε συνολικά να υπάρχουν NxL buffers. Αυτή η τεχνική βασίστηκε στην παρατήρηση ότι είναι απίθανο περισσότερα από L πακέτα να φθάσουν για οποιαδήποτε έξοδο την ίδια στιγμή. Υποστηρίχτηκε ότι η επιλογή της L τιμής ίση με 8 ήταν ικανοποιητική για την επίτευξη ενός ρυθμού απώλειας πακέτων 1/1 εκατομμυρίων κάτω από ομοιόμορφες τυχαίες συνθήκες κυκλοφορίας για μεγάλες τιμές του N. Switch fabrics διαίρεσης χώρου Τα switch fabrics διαίρεσης χώρου κατηγοριοποιούνται σε δίκτυα διασύνδεσης πολλαπλών σταδίων (multistage interconnection networks, MIN s) και σε fabrics τύπου crossbar. Στους μεταγωγείς διαίρεσης χώρου πολλαπλά μονοπάτια δημιουργούνται μεταξύ των εισόδων και των εξόδων, κάθε ένα από τα οποία λειτουργεί με τον ίδιο ρυθμό δεδομένων με αυτόν των γραμμών εισόδου και εξόδου. 19

21 Τα δίκτυα διασύνδεσης πολλαπλών σταδίων αποτελούνται από ένα πλήθος στοιχείων μεταγωγής (switching elements, SE), τα οποία διατάσσονται σε στάδια και τα πακέτα για να φθάσουν από μία είσοδο σε μία έξοδο, περνούν από ένα SE κάθε σταδίου. Στο Σχήμα φαίνεται ένα δίκτυο Banyan, που είναι το πιο συνηθισμένο είδος MIN. Το βασικό συστατικό τους στοιχείο είναι ένα 2 2 SE, το οποίο δρομολογεί το κάθε εισερχόμενο πακέτο σε μία από τις δύο εξόδους του µε βάση ένα δυαδικό ψηφίο ελέγχου. Αν το δυαδικό ψηφίο ελέγχου είναι 0, το πακέτο μετάγεται στην πάνω θύρα εξόδου, ενώ αν είναι 1, μετάγεται στην κάτω θύρα εξόδου, ανεξαρτήτως της θύρας εισόδου από την οποία ήρθε στο SE. Χρησιμοποιώντας ως ψηφίο ελέγχου σε κάθε στάδιο το αντίστοιχο bit της διεύθυνσης της θύρας προορισμού (σε δυαδική μορφή), τα πακέτα μετάγονται προς την θύρα εξόδου που έχουν ως προορισμό. Μπορεί κάποιος να παρατηρήσει ότι ένα Ν Ν Banyan δίκτυο αποτελείται από ν = Log2N στάδια, ενώ το κάθε στάδιο έχει Ν/2 switching elements. Επειδή μόνο η διεύθυνση προορισμού αρκεί για να καθορίσει το µονοπάτι που πρέπει να ακολουθήσει το πακέτο, το σύστημα λέγεται ότι έχει την ιδιότητα της αυτο-δροµολόγησης (selfrouting). Το μειονέκτημα που έχουν τα Banyan δίκτυα είναι ότι, δεδομένου ότι δεν έχουν N2 σημεία διασταύρωσης και Ν2 ανεξάρτητες διαδροµές, οι διαδρομές δύο πακέτων που έχουν διαφορετικούς προορισμούς μπορεί να συγκρουστούν σε οποιοδήποτε στάδιο πριν το τελευταίο. Αυτό το γνώρισμα λέγεται «internal blocking» και οδηγεί στη μείωση της απόδοσης του συστήματος. Για να αποφευχθεί το προηγούμενο πρόβλημα χρησιμοποιούνται οι μεταγωγείς με crossbar fabric. Ο μεταγωγέας αυτός αποτελείται από έναν NxN πίνακα από σημεία διασταύρωσης (crosspoints), ένα για κάθε ζεύγος εισόδου-εξόδου. Για να επιτευχθεί η διαδρομή του κατάλληλου μονοπατιού, κλείνουν οι κατάλληλες συνδέσεις στα cross-points που απαιτούνται. 20

22 Πλεονεκτήματα της αρχιτεκτονικής αυτής είναι η ευκολία υλοποίησης και το γεγονός ότι δεν απαιτείται επιτάχυνση στον ρυθμό λειτουργίας του υλικού. Το σημαντικό μειονέκτημα όμως που παρουσιάζει είναι ότι μπλοκάρει τις εξόδους (output blocking), αφού στην περίπτωση που πακέτα από διαφορετικές εισόδους κατευθύνονται προς την ίδια έξοδο, μόνο ένα από αυτά φτάνει στην έξοδο ενώ τα υπόλοιπα είτε χάνονται είτε αποθηκεύονται προσωρινά σε buffers. Συνεπώς απαιτείται ένας μηχανισμός επίλυσης των συγκρούσεων ή αλλιώς ένας χρονοπρογραμματιστής, ούτως ώστε να διασφαλίζεται ότι κάθε φορά ένα πακέτο παραδίδεται σε κάθε έξοδο. Η τοπολογία των βοηθητικών μνημών (buffers) αποτελεί βασικό σχεδιαστικό θέμα σε έναν μεταγωγέα και είναι δυνατό χρησιμοποιώντας κατάλληλες τεχνικές να ξεπεραστούν τα όποια μειονεκτήματα του crossbar fabric. 21

23 Στην παρούσα διπλωματική χρησιμοποιείται η crossbar αρχιτεκτονική switch fabric. Στη συνέχεια αναλύονται οι υφιστάμενες τεχνικές αντιμετώπισης των περιορισμών αυτής της αρχιτεκτονικής, καθώς και η επιλεγείσα για την παρούσα υλοποίηση. Σε κάθε κύκλο ρολογιού ένα πακέτο από κάθε είσοδο προωθείται προς την έξοδο που ζητά. Πρόβλημα δημιουργείται όταν διαφορετικές είσοδοι ζητούν την ίδια έξοδο, οπότε πρέπει τα πακέτα που δεν εξυπηρετούνται να αποθηκεύονται προσωρινά σε προσωρινή μνήμη (buffer) η οποία μπορεί να τοποθετηθεί στην είσοδο, την έξοδο ή και στα δύο. Στο παραπάνω σχήμα απεικονίζεται η γενική μορφή ενός crossbar fabric με buffers στην είσοδο και στην έξοδο. 22

24 Output Queuing Πακέτα τα οποία ζητούν την ίδια έξοδο συγκεντρώνονται σε buffers στην έξοδο. Oι buffers ουσιαστικά είναι ουρές FIFO (First In First Out). Τα πλεονεκτήματα αυτής της μεθόδου είναι οι απλοί αλγόριθμοι χρονοπρογραμματισμού που τοποθετούν τα πακέτα στην ουρά εξόδου, ένα σημείο συμφόρησης (congestion point) που αποτελεί η εκάστοτε είσοδος και διαμεταγωγή (throughput) 100%. Όμως, απαιτείται switch fabric N φορές γρηγορότερο (όπου Ν ο αριθμός εισόδων (που ισούται με τον αριθμό των εξόδων) ) του ρυθμού εισόδου των πακέτων, που συνεπάγεται γρηγορότερες CPU (μεγαλύτερο κόστος, κατανάλωση). Επίσης, απαιτούνται ταχύτατες μνήμες, μιας και οι buffers εξόδου πρέπει να λειτουργούν στην ταχύτητα του switch fabric. Αυτά αυξάνουν την πολυπλοκότητα, κόστος και την κατανάλωση της σχεδίασης. Input Queuing 23

25 Σε κάθε είσοδο υπάρχουν ουρές FIFO. O χρονοπρογραμματιστής αποφασίζει το ποιο πακέτο θα εξυπηρετηθεί αν πολλά πακέτα ζητούν την ίδια έξοδο. Πλεονεκτήματα αποτελούν οι απλοί αλγόριθμοι χρονοπρογραμματισμού, καθώς και η ύπαρξη ενός σημείου συμφόρησης (congestion point) που αποτελεί η εκάστοτε ουρά εισόδου. Από την άλλη όμως, παρατηρείται μειωμένη διαμεταγωγή, καθώς και το φαινόμενο ΗοL (Head Of Line) Blocking. Αυτό παρατηρείται όταν στην κεφαλή (header) 2 ή περισσότερων ουρών εισόδου βρίσκονται πακέτα που ζητούν την ίδια έξοδο. Σε αυτή την περίπτωση ο χρονοπρογραμματιστής επιλέγει ένα πακέτο από μία συγκεκριμένη ουρά, οπότε οι υπόλοιπες ουρές δεν εξυπηρετούνται αφού το heading πακέτο ζητά ίδια έξοδο, ασχέτων αν τα υπόλοιπα πακέτα των μπλοκαρισμένων ουρών ζητούν εξόδους τις οποίες δεν ζητά καμία άλλη είσοδος. Στο παραπάνω παράδειγμα, έστω ότι ο χρονοπρογραμματιστής επιλέγει να εξυπηρετήσει την είσοδο 1 (αντί της 3, που και οι δύο ζητούν την έξοδο 4). Άρα στον τρέχοντα κύκλο εκτέλεσης θα εξυπηρετηθούν οι είσοδοι 1, 2 και 4, παρόλο που το 3 ο πακέτο της ουράς εισόδου 3 ζητά την έξοδο 3 που δεν την ζητά καμία άλλη είσοδος σε αυτή τη χρονική στιγμή. Έτσι η διαμεταγωγή μειώνεται στο 75% ενώ θα μπορούσε να ήταν 100%. Advanced Input Queuing Λύση στο πρόβλημα HOL Blocking δίνει η αρχιτεκτονική Advanced Input Queuing (AIQ) ή αλλιώς Input Queues + Virtual Output Queues. Στη συγκεκριμένη τεχνική κάθε είσοδος υλοποιεί ουρές για κάθε έξοδο. Με αυτόν τον τρόπο, πακέτα στην ουρά δεν μπλοκάρονται από το header πακέτο αν η έξοδος που ζητούν δεν εξυπηρετεί άλλη είσοδο. Έτσι επιτυγχάνεται υψηλό throughput χωρίς να απαιτείται λειτουργία του switch fabric σε υψηλότερη ταχύτητα από το ρυθμό εισόδου δεδομένων. Όμως, με αυτή τη μέθοδο, απαιτούνται περισσότερα resources ανά θύρα εισόδου και πολύπλοκος αλγόριθμος χρονοπρογραμματισμού. 24

26 Advanced Input Queuing με ουρές εξόδου Mε αυτή την τεχνική μπορεί να επιτευχθεί throughput της τάξης Τb/sec, μιας και μπορούν να αξιοποιηθούν όλες οι είσοδοι και οι έξοδοι. Από την άλλη, η πολυπλοκότητα σχεδίασης καθώς και των αντιστοίχων αλγορίθμων χρονοπρογραμματισμού είναι μεγάλη και υπάρχουν πολλά congestion points. Στην παρούσα υλοποίηση επιλέχθηκε η τεχνική Advanced Input Queuing μιας και προσφέρει μεγαλύτερη δικαιοσύνη στις εισόδους. Τμήμα του αλγόριθμου χρονοπρογραμματισμού που υλοποιήθηκε χρησιμοποιεί την συγκεκριμένη τεχνική. 25

27 ΚΕΦΑΛΑΙΟ 2 ΧΡΟΝΟΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ (SCHEDULING) Γενικά Βασικός ρόλος του αλγόριθμου χρονοπρογραμματισμού (scheduler) είναι να επιλύσει το πρόβλημα ταιριάσματος εισόδων με τις εξόδους που ζητούν, ειδικά όταν πολλές είσοδοι ανταγωνίζονται για την ίδια έξοδο. Στην περίπτωση του ανταγωνισμού, κάποια είσοδος επιλέγεται και οι υπόλοιπες περιμένουν στην αντίστοιχη ουρά εισόδου. Εάν η ουρά εισόδου είναι γεμάτη, τότε τα εισερχόμενα πακέτα απορρίπτονται. Γίνεται επομένως φανερό ότι μη αποδοτικός αλγόριθμος χρονοπρογραμματισμού μειώνει την απόδοση ολόκληρου του δικτύου. Άρα ο στόχος κάθε χρονοπρογραμματιστή είναι η μεγιστοποίηση του throughput με ταυτόχρονη μείωση του χρόνου καθυστέρησης (latency) κάθε πακέτου από την είσοδο στην αντίστοιχη έξοδο και η απαιτούμενη σταθερότητα. Ένας εξίσου σημαντικός παράγοντας είναι και το τελικό κόστος υλοποίησης. Ο ρόλος του γίνεται ακόμα πιο σημαντικός, αφού σε περίπτωση διενέξεων πρέπει να αποφασίζει δίκαια για την εξυπηρέτηση των πακέτων. Ακραίο παράδειγμα αποτελεί η περίπτωση όπου μια χρονική στιγμή όλα τα πακέτα εισόδου ζητούν την ίδια έξοδο. Πως θα εξυπηρετηθεί η κίνηση σε αυτό τον κύκλο ταιριάσματος; Βάσει κάποιου συνδιασμού εισόδων εξόδων; Βάσει προηγούμενων αποφάσεων; Τυχαία; Και αν τυχαία, πόσο τυχαία; Ή καλύτερα ντετερμινιστικά; Επιπλέον, υπάρχει περίπτωση η εισερχόμενη κίνηση να ακολουθεί κάποια κατανομή ή κάποια μοτίβα (patterns). Σε αυτή την περίπτωση η προσέγγιση θα μπορούσε να είναι διαφορετική από τις παραπάνω μεθόδους μιας και τώρα υπάρχει κάποια πρόβλεψη για την κίνηση που θα έρθει. Τι γίνεται όμως με τις αποκλίσεις από την κατανομή αυτή; Αυτά τα θέματα προσπαθεί να επιλύσει η οικογένεια αλγορίθμων ROLM (Randomized On Line Matching) που έχει επιλεχθεί στην παρούσα διπλωματική. Ο χρονοπρογραμματιστής κατά την διάρκεια T ενός δεδομένου χρονικού παραθύρου (cell time) εξετάζει τα περιεχόμενα των N 2 ουρών εισόδου (N 2 επειδή κάθε είσοδος υλοποιεί Advanced Input Queuing) και αφού υπολογίσει ένα ταίριασμα Μ μεταξύ των εισόδων και των εξόδων του μεταγωγέα απαλλαγμένο από οποιαδήποτε σύγκρουση, καθορίζει το πώς θα σχηματιστεί το crossbar fabric. Βασικό χαρακτηριστικό των επιλεγμένων αιτήσεων στις ουρές εισόδου (requests) προς εξυπηρέτηση είναι ότι μόνο ένα request ανά είσοδο και ανά έξοδο μπορεί να εξυπηρετηθεί. Η περίοδος Τ ονομάζεται χρόνος απόφασης του χρονοπρογραμματιστή. 26

28 To λογικό διάγραμμα της υλοποίησης φαίνεται στα παραπάνω σχήματα. Υπάρχουν δύο βασικές κατηγορίες αλγορίθμων χρονοπρογραμματισμού για τους advanced input queuing μεταγωγείς. Ανάλογα με τον τρόπο που λαμβάνονται οι αποφάσεις για την επιλογή των αιτήσεων προς εξυπηρέτηση, οι χρονοπρογραμματιστές διακρίνονται: α) στους κεντρικοποιημένους και β) στους κατανεμημένους. Οι κεντρικοποιημένοι (centralized) χρονοπρογραμματιστές διατηρούν όλες τις πληροφορίες ελέγχου σε ένα κεντρικοποιημένο κύκλωμα και λαμβάνουν αποφάσεις με βάση όλες τις διαθέσιμες από το σύστημα πληροφορίες. Χαρακτηριστικό κεντρικοποιημένο αλγόριθμο χρονοπρογραμματισμού αποτελεί ο 2-dimensional round robin (2DRR). Οι κατανεμημένοι (distributed) χρονοπρογραμματιστές δεν αποθηκεύουν τις πληροφορίες ελέγχου κεντρικά όπως οι προηγούμενοι, αλλά παίρνουν αποφάσεις χρησιμοποιώντας ένα πρωτόκολλο που ανταλλάσσει πληροφορίες μεταξύ εισόδων και εξόδων παράλληλα. Το πρωτόκολλο αυτό λέγεται πρωτόκολλο χειραψίας και έχει τρία βασικά βήματα: οι είσοδοι στέλνουν αιτήσεις (requests) στις εξόδους, οι έξοδοι επιλέγουν ένα request για να στείλουν σήμα παραχώρησης (grant) και οι είσοδοι επιλέγουν ένα grant από αυτά που λαμβάνουν και στέλνουν σήμα αποδοχής (accept). Χαρακτηριστικοί κατανεμημένοι αλγόριθμοι είναι οι PIM, islip, FIRM και Μutual Priority. Υπάρχει και η κατηγορία των αλγορίθμων ranking που αποτελούν συνδυασμό των παραπάνω. 27

29 Μία άλλη κατηγοριοποίηση χρονοπρογραμματιστών μπορεί να γίνει βάσει της τυχαιότητας της απόφασης. Έτσι έχουμε τους ντετερμινιστικούς αλγόριθμους (2DRR, islip, FIRM, RDSRR), τους ντετερμινιστικούς με κάποια τυχαιότητα (RRPM, LAURA) και αυτούς με τυχαίες επιλογές (PIM, οικογένεια ROLM αλγορίθμων). Η τυχαιότητα ως παράγοντας απόφασης του αλγόριθμου χρονοπρογραμματισμού μπορεί να έχει ως αποτέλεσμα υψηλή απόδοση και επιπλέον δικαιοσύνη μεταξύ των αιτήσεων, όταν χρησιμοποιείται αποδοτικά. Όμως, όπως έγινε φανερό από τον 1 ο αλγόριθμο χρονοπρογραμματισμού που λάμβανε υπόψη του την τυχαιότητα στις αποφάσεις του, τον PIM, η τυχαιότητα δεν είναι τόσο αποδοτική όταν χρησιμοποιείται σε μεταγωγείς, όπου απαιτούνται αποφάσεις υψηλών ταχυτήτων. Τη λύση στο παραπάνω πρόβλημα, που συνεπάγεται τυχαιότητα αποφάσεων με γρήγορες και χαμηλού κόστους υλοποιήσεις, έρχεται να λύσει η οικογένεια αλγορίθμων ROLM (Random On-Line Matching), που υπολογίζει μέγιστο ταίριασμα εισόδων-εξόδων κι έτσι οδηγεί σε χρονοπρογραμματιστές υψηλής απόδοσης που υπερτερούν των ντετερμινιστικών. Επιπλέον, η τυχαιότητα χρησιμοποιείται αποδοτικά, που συνεπάγεται χρονοπρογραμματιστές με διασυνδέσεις υψηλών ταχυτήτων. Η τεχνική Input Queuing σε συνδυασμό με Virtual Output Queuing που παρουσιάστηκε παραπάνω, αποτελεί την πιο διαδεδομένη αρχιτεκτονική μεταγωγέων για μεταγωγείς υψηλών ταχυτήτων βασισμένους σε κελιά (cell based high speed switches), επειδή προσφέρουν υψηλή απόδοση (χαμηλή καθυστέρηση και υψηλή διαμεταγωγή) και χαμηλό κόστος σε σύγκριση με μεταγωγείς που χρησιμοποιούν την τεχνική Input Queuing. Η απόδοση όμως του VOQ μεταγωγέα βασίζεται αποκλειστικά στην απόδοση του χρησιμοποιούμενου χρονοπρογραμματιστή, ο οποίος επιλύει διενέξεις μεταξύ των εισερχομένων αιτήσεων. Το πρόβλημα αυτό έχει συγκεντρώσει αρκετή προσοχή για πάνω από δέκα χρόνια και έχει οδηγήσει στην παρουσία αρκετών λύσεων, που περιλαμβάνουν τόσο κεντρικοποιημένους, όσο και κατανεμημένους χρονοπρογραμματιστές. Το πρόβλημα χρονοπρογραμματισμού σε έναν VOQ μεταγωγέα μοντελοποιείται σε πρόβλημα ταιριάσματος σε διμερή γράφο. Οι περισσότεροι συμβατικοί αλγόριθμοι πραγματοποιούν ταιριάσματα κεντρικοποιημένα, όπως ο αλγόριθμος 2DRR, ή κατανεμημένα όπως οι αλγόριθμοι islip, FIRM και RDSRR. Όλοι οι προαναφερθέντες αλγόριθμοι χρησιμοποιούν ντετερμινιστικές μεθόδους απόφασης επειδή θέλουν να κρατήσουν το κόστος χαμηλά. Όλοι οι κατανεμημένοι αλγόριθμοι βασίζονται ιστορικά σε έναν, τον PIM, ο οποίος χρησιμοποιεί τυχαιότητα, προκειμένου να επιτύχει απόδοση και δικαιοσύνη. Οι αλγόριθμοι islip, FIRM, RDSRR και άλλοι αναπτύχθηκαν αντικαθιστώντας την τυχαία απόφαση με άλλες ντετερμινιστικές, επειδή το κόστος υλοποίησης μια καλής γεννήτριας ψευδοτυχαίων αριθμών (υλοποιώντας έτσι σωστά τυχαίες αποφάσεις) είναι υψηλό. Η μείωση αυτού του κόστους ήταν το κίνητρο για την ανάπτυξη όλων των κατανεμημένων ντετερμινιστικών αλγορίθμων χρονοπρογραμματισμού. Παρ όλα αυτά, η τυχαιότητα, εξαιρουμένου του κόστους της, είναι ένα χρήσιμο και επιθυμητό χαρακτηριστικό στον χρονοπρογραμματισμό, επειδή παρέχει δικαιοσύνη, όταν χρησιμοποιείται αποδοτικά. Πρόσφατα, η τυχαιότητα προσέλκυσε αρκετό ενδιαφέρον ξανά και αρκετοί αλγόριθμοι χρονοπρογραμματισμού αναπτύχθηκαν όπως ο RRPM, LAURA και η τεχνική shakeup. Ο RRPM δημιουργεί ένα ταίριασμα επαναληπτικά, χρησιμοποιώντας ένα βήμα όπου οι είσοδοι προωθούν μία αίτηση ανά επανάληψη (με τεχνική round robin) και σε κάθε έξοδο, μία είσοδος επιλέγεται τυχαία. Ο LAURA χρησιμοποιεί τυχαιότητα προκειμένου να επιλέξει ποιο από τα προηγούμενα ταιριάσματα εισόδων μπορεί να συμμετάσχει στο επόμενο ταίριασμα. 28

30 Η τεχνική shakeup μπορεί να προστεθεί σε οποιοδήποτε άλλο ντετερμινιστικό αλγόριθμο χρονοπρογραμματισμού και βελτιώνει το μέγεθος του ταιριάσματος διαγράφοντας τυχαία και προσθέτοντας τμήματα ταιριάσματος από προηγούμενα ταιριάσματα. Παρ όλα αυτά, οι προαναφερθείσες τεχνικές χρησιμοποιούν τυχαιότητα συνδυάζοντας ντετερμινιστικές τεχνικές, ούτως ώστε να παράσχουν σταθερότητα και χαμηλότερο κόστος στους αντίστοιχους χρονοπρογραμματιστές. Δεν χρησιμοποιούν τυχαιότητα ως βασικό παράγοντα της απόφασής τους, αλλά ως συμπληρωματικό. Η οικογένεια αλγορίθμων ROLM (Random On-Line Matching) υλοποιεί τυχαιότητα ως πρωταρχικό παράγοντα απόφασης. Στη συνέχεια, παρουσιάζεται η οικογένεια ROLM και αναλύεται η απόδοσή της. Όπως φαίνεται από τα αποτελέσματα, οι αλγόριθμοι ROLM, έχουν σημαντικά υψηλότερη απόδοση και ισχυρά χαρακτηριστικά δικαιοσύνης σε σχέση τόσο με τον αλγόριθμο PIM (που είναι αντιπροσωπευτικός των αλγορίθμων χρονοπρογραμματισμού που χρησιμοποιούν τυχαιότητα), όσο και με τον αλγόριθμο FIRM που είναι ένας από τους πιο ανταγωνιστικούς ντετερμινιστικούς αλγόριθμους χρονοπρογραμματισμού με διάφορες παραμετροποιήσεις (με 1 και logn αριθμό επαναλήψεων). Επιπλέον, οι ROLM αλγόριθμοι χρησιμοποιούν τυχαιότητα με τέτοιο τρόπο ώστε επιτρέπουν ιδιαίτερα αποδοτικές υλοποιήσεις, ανεξάρτητα από το κόστος υλοποίησης του τυχαίου μηχανισμού. Αυτό συμβαίνει επειδή η τυχαιότητα μπορεί να χρησιμοποιηθεί σποραδικά κατά τη διάρκεια εκτέλεσης κι έτσι το κόστος υλοποίησης της τυχαίας απόφασης μειώνεται σημαντικά. Θεωρούμε έναν NxN μεταγωγέα (παραπάνω σχήμα), ο οποίος υλοποιεί Virtual Output Queuing, έχει Ν πόρτες εισόδου ( Ιn[0], In[N-1] ) και Ν πόρτες εξόδου ( Out[0], Out[N- 1] ). Κάθε πόρτα εισόδου Ιn[i] υλοποιεί Ν ουρές (μία για κάθε έξοδο), τις ΙnQ[0], InQ[N-1]. Θεωρούμε ότι η κίνηση εισόδου του μεταγωγέα αποτελείται από πακέτα σταθερού μήκους, τα οποία λέγονται και κελιά (cells). Επίσης ο μεταγωγέας λειτουργεί σύγχρονα και διασωληνωμένα (pipelined) με ένα κεντρικό ρολόι. Σε κάθε κύκλο ο χρονοπρογραμματιστής επιλέγει εκείνες τις εισόδους που θα βγουν στις αντίστοιχες εξόδους στον επόμενο κύκλο. Oι αλγόριθμοι χρονοπρογραμματισμού της οικογένειας ROLM χρησιμοποιούν τυχαίες επιλογές για τον υπολογισμό του μεγαλύτερου ταιριάσματος (το μέγιστο ταίριασμα που μπορεί να επιτευχθεί είναι 100% που σημαίνει ότι όλες οι είσοδοι βγαίνουν στις εξόδους στον επόμενο κύκλο ρολογιού), και βασίζονται στον αλγόριθμο Ranking. Παρακάτω παρουσιάζεται ο Ranking αλγόριθμος καθώς και όλες οι παραλλαγές του που συνιστούν την οικογένεια ROLM. 29

31 Ο αλγόριθμος Ranking Ο αλγόριθμος Ranking είναι ένας αλγόριθμος που βασίζεται σε τυχαίες επιλογές και χρησιμοποιεί μνήμη σε πολλαπλές ουρές εισόδου για την αποθήκευση πακέτων πριν την δρομολόγησή τους (randomized on-line algorithm). Υπολογίζει το μέγιστο ταίριασμα σε ένα διμερή γράφο. Ο αλγόριθμος θεωρεί ότι οι κόμβοι στο ένα μέρος του γράφου φτάνουν online, δηλαδή ο ένας μετά τον άλλο, και υπολογίζει ένα ταίριασμα σε κατάσταση on-line επίσης. Κατά τη διαδικασία μεταγωγής, ο αλγόριθμος Ranking παίρνει μια απόφαση ταιριάσματος λαμβάνοντας υπόψιν τις εξόδους διαδοχικά. Το μοντέλο του διμερούς γράφου και ο αλγόριθμος Ranking φαίνονται στο παρακάτω σχήμα. Συγκριτικά με το μοντέλο των κατανεμημένων αλγορίθμων, οι έξοδοι σύμφωνα με τον αλγόριθμο Ranking εισάγουν παράλληλα ένα Grant, αλλά παίρνουν την τελική απόφαση αφού λάβουν το ταίριασμα της προηγούμενης εξόδου. Έτσι, ο αλγόριθμος Ranking αποτελεί υβρίδιο των κεντροποιημένων και κατανεμημένων αλγορίθμων. Συγκεκριμένα, κατά τη διάρκεια κάθε κύκλου μεταγωγής, ο αλγόριθμος αυτός υπολογίζει το μέγιστο ταίριασμα, σύμφωνα με τα παρακάτω βήματα: Βήμα 1: Υπολογίζει μια τυχαία αντιμετάθεση (permutation) π(in) της διάταξης των εισόδων, η οποία είναι η ίδια για όλες τις εξόδους. Βήμα 2: Εξετάζει την έξοδο Out[0] και προσδιορίζει τις αιτήσεις της (δηλαδή η πρώτη είσοδος του π(in) που έχει αίτηση για την Out[0]). Οι αιτήσεις των επιλεγμένων εισόδων διαγράφονται από το γράφο. Βήμα 3: Ταιριάζει την Out[0] με την κατάλληλη είσοδο (αν υπάρχει) της μεγαλύτερης τάξης. Βήμα 4: Επαναλαμβάνει τα βήματα 2 3 για όλες τις υπόλοιπες εξόδους Out[0],..., Out[Ν-1]. Ο αλγόριθμος Ranking είναι αποτελεσματικός εξαιτίας του πρώτου βήματος, στο οποίο εκτελείται τυχαίο permutation των εισόδων. Αν μια τυχαία επιλογή γινόταν στο βήμα 3, όπως στον PIM αλγόριθμο, και όχι μια επιλογή από την τυχαία αναδιάταξη, ο αλγόριθμος δε θα μπορούσε να υπολογίσει μέγιστο ταίριασμα. 30

32 Ο αλγόριθμος ROLM Η ανάλυση του Ranking αλγορίθμου φανερώνει ότι υπάρχει μια κατηγορία αποτελεσματικών αλγορίθμων χρονοπρογραμματισμού από άποψη απόδοσης και κόστους εφαρμογής. Δύο είναι τα βασικά χαρακτηριστικά του Ranking αλγορίθμου: το τυχαίο permutation των εισόδων (Βήμα 1) και η on line εκτίμηση των εξόδων. Όπως αναφέρθηκε παραπάνω, στην έναρξη κάθε κύκλου απόφασης, ο αλγόριθμος υπολογίζει το permutation π(in), μια τυχαία αναδιάταξη των εισόδων. Υποθέτοντας πως ο χρονοπρογραμματιστής υπολογίζει ένα ταίριασμα σε κάθε κύκλο, κάποιος θα μπορούσε να αλλάξει τη συχνότητα με την οποία εκτελείται το βήμα 1, και να κάνει πιο αραιά ή πιο συχνά το τυχαίο permutation των εισόδων κατά τους κύκλους εκτέλεσης. Επιπλέον, θα μπορούσε κάθε έξοδος να έχει διαφορετική διάταξη εισόδων. Από τη άλλη πλευρά, η on line εκτίμηση των εξόδων γίνεται με σταθερή διάταξη. Αυτό θα μπορούσε να αλλάξει, αλλάζοντας τη σειρά των εξόδων σε κάθε κύκλο απόφασης. Ο ΡΙΜ δε δίνει ανάλογες παραλλαγές: αν οι τυχαίες επιλογές γίνονται πιο σπάνια κατά τη διάρκεια των κύκλων εκτέλεσης, πιθανόν να συμβούν συγκρούσεις (οι οποίες εμφανίζονται όταν διαφορετικές έξοδοι στέλνουν ένα Grant στην ίδια είσοδο) μέχρι να υπολογιστεί μια νέα επιλογή. Αυτό θα περιόριζε σημαντικά την επίδραση της εκτέλεσης πολλαπλών επιλογών και έτσι να περιόριζε την απόδοση του αλγορίθμου. Στον Randomized On-Line Matching (ROLM) αλγόριθμο, η τυχαία διάταξη των εισόδων (Βήμα 1), εκτελείται μια φορά σε κάθε R κύκλους μεταγωγής (switch cycles) (1 R ) και είναι η ίδια για όλες τις εξόδους. Οι έξοδοι έχουν σταθερή on line διάταξη. Τα λεπτομερή βήματα του αλγορίθμου κατά τη διάρκεια του i-οστού κύκλου χρονοπρογραμματισμού, από την έναρξη της λειτουργίας μεταγωγής, είναι: Βήμα 1: Αν (i (mod R) = = 0), τότε υπολογίζει ένα τυχαίο permutation π (In) των εισόδων. Βήμα 2: Οι είσοδοι στέλνουν τις αιτήσεις τους στις εξόδους. Βήμα 3: Η έξοδος Out [0] στέλνει ένα Grant στην κατάλληλη είσοδο (αν υπάρχει) της μεγαλύτερης προτεραιότητας (βασισμένη στην τυχαία διάταξη). Βήμα 4: Το βήμα 3 επαναλαμβάνεται για όλες τις υπόλοιπες εξόδους Out [0],, Out [N-1]. Παραλλαγές του αλγόριθμου ROLM Παραλλαγή του ROLM αλγορίθμου αποτελεί ο Dynamic Randomized On-Line Matching (DyROLM) αλγόριθμος. Στον αλγόριθμο αυτό, καθώς οι είσοδοι υπολογίζονται με τυχαία σειρά για όλες τις εξόδους για κάθε R κύκλους (1 R ), οι έξοδοι θεωρούνται σε ακολουθία round-robin, η οποία αλλάζει σε κάθε κύκλο εκτέλεσης. Συγκεκριμένα, σε κάθε κύκλο χρονοπρογραμματισμού, η πρώτη έξοδος από την ακολουθία εξόδων επίσκεψης, είναι η επόμενη από εκείνη του προηγούμενου κύκλου, σε διάταξη κυκλικού round-robin. Μια δεύτερη παραλλαγή αποτελεί ο αλγόριθμος Distributed Dynamic Randomized On-Line Matching (D-DyROLM). Κάθε έξοδος κάνει τους δικούς της υπολογισμούς από ένα τυχαίο permutation για τις εισόδους ένα για κάθε R κύκλους εκτέλεσης (1 R ). Το βήμα 1 των Ranking αλγορίθμων δεν εκτελείται κεντρικά, αλλά παράλληλα για κάθε έξοδο. Όπως και στον DyROLM αλγόριθμο, το ταίριασμα των εισόδων και των εξόδων γίνεται με on line εκτίμηση κυκλικού round-robin των εξόδων που αλλάζει δυναμικά κατά τους κύκλους εκτέλεσης. 31

33 Σύγκριση ROLM με άλλους αλγορίθμους Οι ROLM αλγόριθμοι στοχεύουν στη μείωση του latency που αφορά την harware υλοποίηση με τον υπολογισμό του τυχαίου permutation, και σε υψηλά ποσοστά δικαιοσύνης και throughput. Στο παραπάνω σχήμα παρουσιάζονται οι χαμηλές καθυστερήσεις πακέτων των ROLM αλγορίθμων για R=1 για υψηλά φορτία, συγκριτικά με τους αλγορίθμους PIM και FIRM. O PIM είναι αλγόριθμος που χρησιμοποιεί την τυχαιότητα, ενώ ο FIRM όχι. Οι αλγόριθμοι ROLM και D-DyROLM έχουν παρόμοια απόδοση. Στο παρακάτω σχήμα φαίνονται οι καθυστερήσεις πακέτων για R=100 και R= για τους ROLM αλγορίθμους και για πέντε επαναλήψεις των PIM και FIRM. Είναι εμφανές ότι οι ROLM αλγόριθμοι ξεπερνούν τους άλλους ακόμα και αν η αρχική φάση εκτελείται σπάνια ή μόνο μια φορά. Οι καθυστερήσεις για υψηλά φορτία είναι σημαντικά χαμηλότερες. 32

34 Από άποψη δικαιοσύνης, οι αλγόριθμοι ROLM παρουσιάζουν υψηλά ποσοστά. Συγκριτικά με τους PIM και FIRM, στην περίπτωση της μιας και log N επαναλήψεων παρέχουν λιγότερη δικαιοσύνη οι ROLM. Μεγαλύτερη δικαιοσύνη από τους αλγορίθμους ROLM, παρουσιάσει ο Dy-ROLM. Στην παρούσα διπλωματική υλοποιείται ο απλούστερος αλγόριθμος της οικογένειας ROLM, ο Ranking, τόσο σε software όσο και σε hardware και μετρώνται η ταχύτητα των διασυνδέσεων, ο χρόνος απόφασης, η επιφάνεια και ο αριθμός των απαιτούμενων πυλών. Η υλοποίηση παρουσιάζεται στα κεφάλαια που ακολουθούν. 33

35 ΚΕΦΑΛΑΙΟ 3 Υλοποίηση αλγόριθμου Ranking στο FPSLIC Η πλατφόρμα FPSLIC της ATMEL Το FPSLIC (Field Programmable System Level Integrated Circuits) είναι ένα System on Chip (SoC) που συνδυάζει όλα τα βασικά δομικά στοιχεία ενός ολοκληρωμένου συστήματος σε μια μονολιθική, SRAM-βασισμένη, προγραμματιζόμενη συσκευή. Συγκεκριμένα το FPSLIC περιέχει τα εξής: ένα ΑΤ40Κ FPGA, με ισοδύναμη χωρητικότητα μέχρι και πύλες τον 8-bit RISC μικροελεγκτή AVR, με 30 Mips και στάνταρ περιφερειακά Αναλυτικότερα AT40K FPGA core 10ns SRAM 40K logical gates,(2304 FPGA cells) 2862 Registers up to 16Kx16 Programmable SRAM 288 Ι/Ο pins Atmel AVR 8 bit microcontroller low-power CMOS Harvard architecture One instruction /clock cycle throughput approaches 1 MIPS per MHz 32 Χ 8 general-purpose registers 3 flexible timer/counters με prescaler 16 general-purpose I/O lines 2 UARTs 34

36 Το μοντέλο της συσκευής FPSLIC, που χρησιμοποιείται, είναι το ΑΤ94Κ25DQC. Ως περιβάλλον ανάπτυξης εφαρμογών για την συσκευή χρησιμοποιείται το System Designer. Στην παρούσα εργασία αναπτύσσεται ο αλγόριθμος Ranking (που ουσιαστικά είναι ο αλγόριθμος ROLM με ένα permutation), και η υλοποίησή του εκτελείται με δύο τρόπους: α) σε λογισμικό (AVR) και β) σε υλικό (FPGA). Η πλατφόρμα FPSLIC μας επιτρέπει να αξιολογήσουμε και να συγκρίνουμε τις hardware και software υλοποιήσεις του αλγορίθμου κατά έναν ρεαλιστικό τρόπο, αφού τόσο ο μικροελεγκτής (ΑVR), όσο και η προγραμματιζόμενη λογική (FPGA) είναι κατασκευασμένα με την ίδια ακριβώς τεχνολογία (Atmel 0.35μ, 5 επίπεδα μετάλλου CMOS τεχνολογία). 35

37 Ανάπτυξη χρονοπρογραμματιστή στο λογισμικό Τα γενικά χαρακτηριστικά του μικροελεγκτή AVR είναι: - 2 γενικού σκοπού θύρες Ι/Ο των 8 bit (Port D και Port E) - 32 x 8 καταχωρητές γενικού σκοπού - μετρητής πραγματικού χρόνου RTC (Real-time Counter) - 2 χρονομετρητές TC0 και ΤC2 (Timer/Counter) των 8 bit και 1 χρονομετρητής TC1 των 16 bit, με καταστάσεις σύγκρισης και διαμόρφωσης πλάτους - 2 σειριακές θύρες UARTs και μια δισύρματη σειριακή θύρα - προγραμματιζόμενο χρονομετρικό μηχανισμό φύλακα (Watchdog Timer) με εσωτερικό ταλαντωτή - 4 εξωτερικά και 16 FPGA-εσωτερικώς παραγόμενα σήματα διακοπών - μονάδα πολλαπλασιασμού (hardware multiplier) - 3 καταστάσεις εξοικονόμησης ενέργειας, οι οποίες επιλέγονται μέσω λογισμικού. Η συνολική SRAM (15ns) μνήμη που υπάρχει στο FPSLIC είναι 36K bytes και μπορεί να γίνει δυναμική ανάθεσή της σε μνήμη προγράμματος και μνήμη δεδομένων. Συγκεκριμένα το FPSLIC διαθέτει ένα προκαθορισμένο block μνήμης των 10Κ x 16 για μνήμη προγράμματος και άλλο ένα προκαθορισμένο block μνήμης των 4K x 8 για μνήμη δεδομένων. Υπάρχουν επίσης 6 επιπλέον μπλοκ μνήμης των 2Κ x 8, τα οποία μπορούν να προγραμματιστούν έτσι ώστε να αυξήσουν την μνήμη προγράμματος έως την τιμή 16Κ x 16 και/ή να αυξήσουν την μνήμη δεδομένων έως την τιμή 16Κ x 8. Εδώ πρέπει να σημειωθεί ότι η μνήμη δεδομένων μπορεί να προσπελαστεί και από τον AVR και από το FPGA ταυτόχρονα (dual ported). 36

38 Βασικός λόγος που επιλέχθηκε ο AVR και όχι απλά η υλοποίηση του Ranking σε software μέσω κάποιας άλλης software πλατφόρμας (Visual Studio πχ) είναι ότι ο AVR μας δίνει τη δυνατότητα να μετρήσουμε επακριβώς τον χρόνο εκτέλεσης του προγράμματος του χρονοπρογραμματιστή, μέτρηση της τάξης μικροδευτερολέπτων (μs). Ο έλεγχος της σχεδίασης γίνεται ως εξής: Η γεννήτρια ψευδοτυχαίων αριθμών της C αρχικοποιείται με έναν αριθμό (seed) o οποίος δίνεται από τη σειριακή θύρα του AVR. Από την ίδια σειριακή λαμβάνονται τα αποτελέσματα του Ranking στα διάφορα στάδια υπολογισμού (permutations και διάνυσμα εξόδου σε κάθε κύκλο), οπότε έτσι διαπιστώνεται η ορθότητα σχεδίασης. Επίσης, με τον AVR Debugger διαπιστώνονται σε κάθε κύκλο οι τιμές σε όλους τους καταχωρητές του μικροελεγκτή. Η διαδικασία που ακολουθείται είναι η εξής: Αρχικά, το πρόγραμμα γράφεται σε απλή C. Στη συνέχεια προστίθενται τα διάφορα κομμάτια κώδικα που χρειάζονται για τον AVR (αρχικοποίηση, προγραμματισμός σειριακής, κτλ). Ο κώδικας γίνεται compile με τον μεταγλωττιστή IAR, που υποστηρίζει γλώσσα μηχανής (binary code) για τον AVR. O ΙAR compiler παράγει ένα εκτελέσιμο *.hex αρχείο, το οποίο χρησιμεύει για τον προγραμματισμό της FPSLIC συσκευής και ένα αρχείο ubrof εκσφαλμάτωσης *.dbg. Το αρχείο hex μπορεί να φορτωθεί κατευθείαν στον AVR μέσω του προγράμματος CPS της ATMEL, ενώ το dbg αρχείο μπορεί να φορτωθεί στον AVR Debugger για τον περαιτέρω έλεγχο. Η δομή του C αρχείου φαίνεται παρακάτω 37

39 Ο Timer TC1 είναι 16bit, μετράει δηλαδή από 0 έως παλμούς ρολογιού στην είσοδό του. Με κάθε υπερχείλιση του μετρητή προκαλείται μία διακοπή υπερχείλισης (overflow interrupt), που αφενός μεν μας επιτρέπει να μετράμε από παλμούς και πάνω, αφετέρου εισάγει κάποια καθυστέρηση στην όλη λειτουργία του αλγορίθμου, μιας και απαιτούνται επιπλέον κύκλοι ρολογιού για την εξυπηρέτηση της ρουτίνας διακοπής (Interrupt Service Routine (ISR) ). Η μονάδα ρολογιού του Timer1 αποτελείται από έναν διαιρέτη συχνότητας (prescaler) πολλαπλών εξόδων συνδεδεμένο σε έναν πολυπλέκτη. Ο πολυπλέκτης χρησιμοποιείται για να επιλέξει ένα από τα διαιρεμένα σήματα ρολογιού, το οποίο θα χρησιμοποιηθεί ως είσοδος στον Timer1. Η λειτουργία του Timer1 είναι σύγχρονη και το ρολόι εισόδου του prescaler είναι ίδιο με αυτό του AVR μικροελεγκτή. Προκειμένου να επιτύχουμε το μικρότερο χρονικό βήμα που μας επιτρέπει ο AVR, πρέπει να θέσουμε τον prescaler (διαιρέτης συχνότητας του AVR) στη μέγιστη τιμή της, που είναι Το ρολόι του AVR είναι 18,432MHz, οπότε η συχνότητα του timer1 προκύπτει από τη σχέση (συχνότητα AVR)/(τιμή prescaler) = 18,432ΜHz / 1024 = 18 KHz. Οπότε το χρονικό βήμα μέτρησης που μας επιτρέπει ο AVR είναι: 1 / (18 KHz) = 55,56 μsec. Ο timer1 υπερχειλίζει κάθε (65536 παλμοί) / (18 ΚHz) = 3,641 sec. Βελτιστοποίηση κώδικα Χρησιμοποιήθηκαν διάφορες τεχνικές για την βελτίωση της ταχύτητας εκτέλεσης του αλγορίθμου, μιας και το περιβάλλον εκτέλεσης είναι ο AVR που είναι hardware πολύ συγκεκριμένων δυνατοτήτων και περιορισμών. 1. Χρησιμοποιούμε όπου είναι δυνατόν μεταβλητές 8 bit (unsigned char) επειδή ο AVR είναι 8μπιτος. Όπου δεν είναι δυνατόν, χρησιμοποιούμε unsigned short (2 bytes). 2. Αποφεύγουμε global μεταβλητές: αποθηκεύονται στην SRAM και η πρόσβαση σε αυτήν κοστίζει σημαντικά σε κύκλους εκτέλεσης. 38

40 Το παρακάτω παράδειγμα δείχνει την διαφορά στο μέγεθος του κώδικα και την ταχύτητα εκτέλεσής του, κατά την χρήση τοπικών (local) και γενικών (global) μεταβλητών. 8-bit Counter unsigned char count8 = 5; /* Declare a variable, assign a value */ // LDI R16,5 ; Init variable do /* Start a loop */ { }while(--count8); /* Decrement loop counter and check for zero */ //?0004:DEC R16 ; Decrement // BRNE?0004 ; Branch if not equal 16-bit Counter unsigned int count16 = 6; /* Declare a variable, assign a value */ // LDI R24,LOW(6) ; Init variable, low byte // LDI R25,0 ; Init variable, high byte do /* Start a loop */ { }while(--count16); /* Decrement loop counter and check for zero */ //?0004:SBIW R24,LWRD(1) ; Subtract 16-bit value // BRNE?0004 ; Branch if not equal Τύπος μεταβλητής Global Local Μέγεθος κώδικα (Bytes) 10 2 Χρόνος εκτέλεσης (Cycles)

41 3. Συγκεντρώνουμε όλες τις global μεταβλητές σε δομές Για παράδειγμα, χρησιμοποιούμε δομές της μορφής: Έτσι μπορούμε να έχουμε πρόσβαση στις μεταβλητές αυτές με έμμεσο τρόπο (structure pointers). Έτσι αποφεύγεται η χρήση των χρονοβόρων assembly εντολών STS,LDS και αυξάνεται η πιθανότητα της έμμεσης διευθυνσιοδότησης (indirect addressing) με χρήση του Z-pointer χωρίς επαναφόρτωση δεικτών. Συνεχίζοντας το προηγούμενο παράδειγμα: Μετρώντας τους κύκλους που απαιτούνται με χρήση δομών με έμμεση αναφορά στις μεταβλητές και χρήση δομών με άμεση αναφορά στις μεταβλητές προκύπτουν τα παρακάτω σε μια απλή ρουτίνα αρχικοποίησης πίνακα 8x8. Χρησιμοποιώντας δομή με αναφορά με έμμεσο τρόπο 40

42 Χρησιμοποιώντας δομή με άμεση αναφορά Όπως είναι φανερό η βελτίωση απόδοσης είναι μεγαλύτερη από 300%. 4. Όταν έχουμε συναρτήσεις με 3-4 γραμμές προτιμάμε τη χρήση μακροεντολών. Ενδεικτικό παράδειγμα: Εκτέλεση της μαθηματικής πράξης mod (τελεστής % σε ΑΝSI C) 5. Για την προσπέλαση στοιχείων των μεταβλητών τύπου πίνακα χρησιμοποιούνται δείκτες. Πετυχαίνεται έτσι έμμεση διευθυνσιοδότηση και έχουμε εντολές μιας λέξης (αυτές που σχετίζονται με τις λειτουργίες των δεικτών). Αντίθετα μπορεί να γίνει άμεση προσπέλαση (direct addressing) της μνήμης δεδομένων, όπου οι εντολές είναι των 2 λέξεων (4 bytes). Για πιο αποδοτικό χειρισμό των πινάκων στο πρόγραμμα χρησιμοποιείται έμμεση διευθυνσιοδότηση με μετά-αύξηση. 41

43 6. Οι βρόχοι υλοποιούνται με do{} while(), η οποία παράγει καλύτερο κώδικα σε σχέση με τις εκφράσεις for(expr1;expr2;expr3) και while(){}. Χρησιμοποιούνται ελαττούμενοι μετρητές βρόχων με προ-ελάττωση (pre- decrement). Μετρήσεις - Παρατηρήσεις Η μέτρηση του χρόνου εκτέλεσης του αλγορίθμου γίνεται με 2 τρόπους. Α) Κατά προσέγγιση κατά τη διάρκεια εκτέλεσης του αλγορίθμου στον AVR Προκειμένου να εξάγουμε τις μετρήσεις από τον AVR στη ρουτίνα εξυπηρέτησης της υπερχείλισης, αποθηκεύεται σε μεταβλητή ο αριθμός των υπερχειλίσεων που συνέβησαν. Στο τέλος εκτέλεσης του αλγορίθμου εμφανίζονται στα LED του FPSLIC διαδοχικά η τρέχουσα τιμή του timer1 και ο αριθμός των υπερχειλίσεων που συνέβησαν. H κατά προσέγγιση μέτρηση του χρόνου εκτέλεσης προκύπτει από την εξής σχέση: Συνολικος χρόνος = (αριθμός overflows)*toverflow + tstep* Timer1 Όπου tstep = 55,56μsec και Toverflow = 3,641sec Όμως αυτός ο τρόπος μέτρησης μετράει μίνιμουμ 55,56μsec μιας και ο timer1 χτυπά κάθε 1024 ticks του ρολογιού του AVR (18,432MHz). Για παράδειγμα, θεωρώντας ότι δεν συμβαίνει καμία υπερχείλιση, ο χρόνος εκτέλεσης πρέπει να είναι πολλαπλάσιο των 55,56μsec. Β) Ακριβής μέτρηση με το εργαλείο AVR Debugger. το dbg αρχείο που εξάγεται από τον IAR Compiler φορτώνεται στον AVR Debugger. Εκεί, όταν οι είσοδοι εμφανιστούν στις εξόδους η εκτέλεση διακόπτεται και μετρώνται οι κύκλοι εκτέλεσης του απαιτήθηκαν, αυτή τη φορά στη συχνότητα λειτουργίας του AVR (18,432MHz). O μέσος όρος των μετρήσεων αυτών φαίνεται στον πίνακα μετρήσεων παρακάτω. Ως στοιχειώδες μέγεθος πακέτου θεωρήθηκε το μέγεθος του ΑΤΜ κελιού = 53bytes Το bandwidth προκύπτει από την σχέση: (ΑΤΜ cell size) (decision cycle) = (53bytes) (8bits) (decision cycle) (1sec )/(10 6 μs) (bits/sec) 42

44 Στη συνέχεια παρατίθενται γραφικά ο τρόπος εξάρτησης του χρόνου απόφασης και της διαμεταγωγής με το μέγεθος μεταγωγέα. Όσον αφορά το χρόνο απόφασης παρατηρείται το εξής. Ο λόγος του χρόνου απόφασης από μεταγωγέα σε μεταγωγέα με το διπλάσιο αριθμό θυρών εισόδου είναι ίσος με 2,9 για μεταγωγείς 4x4, 8x8 και 16x16. Ο λόγος όμως αυτός γίνεται 3,4 από μεταγωγέα 16x16 σε μεταγωγέα 32x32. Αυτή η δυσαναλογία είναι πιθανόν να είναι λογική απόκλιση θεωρώντας και μεταγωγέα 64x64 αλλά αυτό δεν κατέστη δυνατό να μετρηθεί επειδή η εξομοίωση αυτού του μεταγωγέα κράσαρε το Leonardo Spectrum που χρησιμοποιήθηκε (version 2005a.82) Ίδια σχέση ισχύει για τη διαμεταγωγή, όπου εδώ οι λόγοι είναι ίσοι όπως ανωτέρω, κινούμενοι όμως από μεταγωγείς σε μεταγωγείς με το μισό αριθμό εισόδων. 43

45 Ανάπτυξη χρονοπρογραμματιστή στο FPGA Παρουσίαση του FPGA Στο σχήμα παρουσιάζεται η αρχιτεκτονική του ΑΤ40Κ FPGA, το οποίο περιέχεται στην συσκευή FPSLIC. Ο πυρήνας του FPGA βασίζεται σε μνήμη SRAM των 10 nsec, παρέχει δυνατότητα cache λογικής και η ισοδύναμη χωρητικότητά του φτάνει τις πύλες. Στην καρδιά της αρχιτεκτονικής του FPGA βρίσκεται ένας πλήρως συμμετρικός δισδιάστατος πίνακας από ταυτόσημα κελιά (cells), τα οποία συνδέονται με ένα αποδοτικό δίκτυο διαύλων. Συνολικά το FPGA περιέχει 2304 cells και 2864 καταχωρητές (registers). Μεταξύ των cells του πίνακα είναι διεσπαρμένα 144 blocks των 32x4 bit μνήμης SRAM (dual ή single ported). To FPGA έχει συνολικά 288 χρησιμοποιήσιμα Ι/Ο pins, τα οποία εμφανίζονται στις 3 από τις 4 πλευρές του πλέγματος. Κάθε cell περιέχει 2 LUTs (Look Up Tables) των τριών εισόδων, τα οποία μπορούν να συνδυαστούν για να παράγουν 1 LUT των τεσσάρων εισόδων. Αυτό σημαίνει ότι κάθε cell μπορεί να υλοποιήσει οποιοδήποτε ζεύγος λογικών συναρτήσεων των 3 εισόδων ή οποιαδήποτε συνάρτηση των τεσσάρων εισόδων. Μέσα σε κάθε cell υπάρχει επίσης ένα D flip-flop με σήματα set και reset, κι έτσι η έξοδος του cell μπορεί να είναι σύγχρονη (registered). Επιπλέον υπάρχει ένας 2 σε 1 πολυπλέκτης και μια AND πύλη στο εμπρόσθιο τμήμα του cell. 44

46 Το FPGA περιλαμβάνει πέντε πανομοιότυπα επίπεδα διαύλων (bussing planes), όπου κάθε επίπεδο αποτελείται από 3 πόρους διαύλων, έναν τοπικό πόρο διαύλου (local bus resource) και δυο ταχείς πόρους διαύλου (express bus resource). Οι δίαυλοι συνδέονται μεταξύ τους μέσω επαναληπτών (repeaters). H διεπαφή διαύλου κάθε κελιού επιτρέπει την σύνδεσή του με γειτονικά καθώς επίσης και με απομακρυσμένα κελιά. Μεταξύ ενός cell και των 8 πιο κοντινών γειτόνων του υπάρχουν απευθείας διασυνδέσεις. Με τον τρόπο αυτό το FPGA εξασφαλίζει επαρκείς πόρους δρομολόγησης, ώστε να είναι δυνατή η ανάπτυξη μιας μεγάλης ποικιλίας σχεδίων. 45

47 Διαδικασία σχεδιασμού Αρχικά, υλοποιείται ο Ranking σε γλώσσα VHDL (Vhsic Hardware Description Language; VHSIC: very-high-speed integrated circuit). H VHDL είναι γλώσσα περιγραφής υλικού, που χρησιμοποιείται στον αυτοματοποιημένο ηλεκτρονικό σχεδιασμό για να περιγράψει ψηφιακά συστήματα όπως FPGA (Field Programmable Gate Array) και ολοκληρωμένα κυκλώματα (Integrated Circuits ICs). Επίσης, χρησιμοποιείται και ως μια γενική γλώσσα παράλληλου προγραμματισμού. Στη συνέχεια ο κώδικας ελέγχεται και γίνεται compile χρησιμοποιώντας 2 εργαλεία: το Modelsim και το Leonardo Spectrum. Στο Modelsim γίνεται εξομοίωση της σχεδίασης χρησιμοποιώντας κατάλληλα δομημένη είσοδο, η οποία παράγεται υλοποιώντας ακριβώς την ίδια σχεδίαση σε ένα απλό πρόγραμμα σε C γλώσσα. Με το τέλος της εξομοίωσης παράγονται οι κυματομορφές σε κάθε είσοδο, έξοδο και εσωτερικό σήμα της hardware σχεδίασης και οι τιμές των εξόδων καταγράφονται σε αρχείο. Το αρχείο αυτό συγκρίνεται με την έξοδο της software υλοποίησης κι έτσι επιβεβαιώνεται η ορθότητα της hardware σχεδίασης. Με το εργαλείο Leonardo Spectrum, εξάγονται πληροφορίες για την μέγιστη συχνότητα λειτουργίας, τον αριθμό πυλών που απαιτείται καθώς και για την επιφάνεια που καταλαμβάνει η σχεδίαση. Η hardware σχεδίαση μετράται στα παραπάνω εργαλεία, χωρίς να κατεβαίνει στο FPGA του FPSLIC. 46

48 Εργαλείο Leonardo Spectrum Θεωρώντας το block diagram του Ranking, βλέπουμε ότι αποτελείται από τους διαύλους εισόδου και εξόδου, οι οποίοι φαίνονται αναλυτικά ως γραμμές ενός bit, το σήμα ρολογιού (Clk) και το σήμα Reset (Rst). Η μοναδική πληροφορία που φέρει κάθε είσοδος είναι η έξοδος που ζητά. Έτσι, με Ν τον αριθμό των εισόδων και εξόδων, κάθε είσοδος και έξοδος περιγράφεται με x bits, όπου x = log2n (2 x = N). Για μεταγωγέα 8 εισόδων και 8 εξόδων (8x8), όπως στο σχήμα, απαιτούνται 3 bits για να περιγράψουμε κάθε είσοδο και έξοδο. 47

49 Σε κάθε κύκλο σε κάθε είσοδο έρχεται μία αίτηση. Εσωτερικά, στις εισόδους υλοποιείται η τεχνική Advanced Input Queuing (aiq) και ουρές στις εισόδους με μήκος όσο και ο αριθμός εισόδων Ν του μεταγωγέα. Για λόγους απλότητας το ένα permutation των εισόδων είναι hardwired στο κύκλωμα και ως εκ τούτου δεν ενσωματώνεται κάποια γεννήτρια ψευδοτυχαίων αριθμών. Στη συνέχεια οι είσοδοι εισέρχονται στον aiq. Στο παρακάτω σχήμα φαίνεται το block διάγραμμα του aiq για το δεδομένο permutation. 48

50 Στη συνέχεια, κάθε έξοδος κοιτά όλες τις εισόδους που την ζητάνε και επιλέγει την πρώτη θέτοντας αντίστοιχα ένα valid σήμα που λέει ότι η τρέχουσα έξοδος είναι έγκυρη. Η διαδικασία αυτή γίνεται στο στοιχείο (component) InputSelector που απεικονίζεται στο παρακάτω σχήμα. Τα σήματα εισόδου InputQueues αποτελούν τον permuted aiq για τη συγκεκριμένη έξοδο. Δηλαδή, στον ακροδέκτη Output[2:0] συνδέεται η εκάστοτε έξοδος, που εξετάζει τις εισόδους που την ζητούν (ακροδέκτες InputQueues) με τη σειρά αφότου έχει γίνει το permutation. Για κάθε έξοδο υπάρχει ένας InputSelector. Όλοι οι ακροδέκτες OutputValid από κάθε έξοδο (που είναι ενός bit) μαζεύονται σε ένα δίαυλο Ν bits, οπότε γνωρίζουμε ποιες έξοδοι του Ranking είναι έγκυρες σε κάθε κύκλο εκτέλεσης. 49

51 Το behavioral διάγραμμα του Ranking φαίνεται στο παρακάτω σχήμα. 50

52 Η ιεραρχική απεικόνιση του Ranking 8x8 φαίνεται στο παρακάτω σχήμα. 51

53 Πέραν των παραπάνω διαγραμμάτων, το Leonardo μας δίνει το πλήθος των καταχωρητών (registers) καθώς και το πλήθος των LUTs που χρειάζονται για το κάθε μέγεθος μεταγωγέα. Για τον προσδιορισμό του συνολικού αριθμού πυλών (gates) που απαιτούνται, τα LUTs μετατρέπονται στον ισοδύναμο αριθμό NAND πυλών που καταλαμβάνουν. Input A Input B Output Q Έτσι κάθε LUT 2 εισόδων αντιστοιχεί σε 1 NAND πύλη, κάθε LUT 3 εισόδων σε 2 NAND πύλες και κάθε LUT 4 εισόδων σε 4 NAND πύλες. Οι καταχωρητές (registers -> Master-Slave D flip-flop με ρολόι) αντιστοιχούν σε 8 NAND πύλες, όπως φαίνεται στα παρακάτω σχήματα. D Q > Qnext 0 X Rising 0 1 X Rising 1 Σχηματικό διάγραμμα Master-Slave D flip-flop Σχηματικό RTL διάγραμμα Master-Slave D flip-flop 52

54 Εργαλείο Modelsim H εξομοίωση του κώδικα του Ranking στο Modelsim μας επιτρέπει να επιβεβαιώσουμε την ορθότητα λειτουργίας του, εισάγοντας τα ίδια διανύσματα εισόδου με αυτά της software υλοποίησης με το κατάλληλο *.do αρχείο και εξάγοντας τα ίδια διανύσματα εξόδου. Ένα στιγμιότυπο της εξομοίωσης φαίνεται στο παρακάτω σχήμα. Εδώ, στα 100ns το διάνυσμα εισόδου είναι { }, δηλαδή η είσοδος 0 είναι invalid (από το σήμα inputvalid), η είσοδος 1 ζητάει την έξοδο 3, οι είσοδοι 2 και 3 είναι invalid, η είσοδος 4 ζητάει την έξοδο 6, η 5 και η 7 είναι invalid και η 6 ζητάει την έξοδο 4. Δηλαδή η είσοδος είναι { x 4 x 6 x x 3 x }, όπου x οι invalid είσοδοι. Το permutation είναι { } (δεν φαίνεται εδώ), δηλαδή θα εξυπηρετηθεί πρώτα η είσοδος 2, μετά η 1, μετά η 6, κτλ. 53

55 Εδώ, δεν υπάρχει καμία διένεξη, οπότε στα 200ns η παραπάνω είσοδος εμφανίζεται στην έξοδο. Το διάνυσμα εξόδου είναι { }, δηλαδή στην έξοδο 3 εξυπηρετήθηκε το request της εισόδου 1, στην έξοδο 4 το request της εισόδου 6 και στην έξοδο 6 εξυπηρετήθηκε το request της εισόδου 4, σε συνδυασμό με το αντίστοιχο valid σήμα. Δηλαδή, η έξοδος είναι { x 4 x 6 1 x x x }. Τροποποιώντας το προηγούμενο παράδειγμα και εφαρμόζοντας στα 200ns είσοδο { }, έχουμε διένεξη: οι είσοδοι 4 και 6 ζητούν την έξοδο 4. Βάσει του ίδιου permutation { } βλέπουμε ότι η είσοδος 6 προηγείται της 4 οπότε τη χρονική στιγμή 200ns η έξοδος γίνεται { x x x 6 1 x x x }. Το διάνυσμα εισόδου τη χρονική στιγμή 200ns είναι { x x x x 1 0 x x }. Άρα τη χρονική στιγμή 300ns η έξοδος μαζί με την είσοδο 4 που βρίσκεται στον aiq από τη χρονική στιγμή 100ns, γίνεται { x x x 4 x x 3 2 }. To παράδειγμα αυτό φαίνεται στο παρακάτω σχήμα. 54

56 Μετρήσεις 55

57 Στους παραπάνω πίνακες, το decision cycle προκύπτει από το ρολόι σύμφωνα με τον τύπο: 1000 Decision Cycle = Ρολόι (nsec) Ως στοιχειώδες μέγεθος πακέτου θεωρήθηκε κι εδώ (όπως και στις μετρήσεις του AVR) το μέγεθος του ΑΤΜ κελιού = 53bytes. Το bandwidth (Link Speed) προκύπτει από την σχέση: (ΑΤΜ cell size) (decision cycle) = (53bytes) (8bits) (decision cycle) (1nsec ) (gigabits/sec) Από το Leonardo για μεταγωγέα 4x4 έχουμε: 10 registers, 20 LUT2, 24 LUT3 και 60 LUT4. Άρα ο συνολικός αριθμός πυλών προκύπτει από τον τύπο: 10*8 + 20*1 + 24*2 + 60*4 = 388 Ο αριθμός των θυρών (ports) προκύπτει ως εξής: (αριθμός εισόδων Ν)*(αριθμό bit που χρειάζονται για την περιγραφή του Ν)*(2 επειδή το ίδιο ισχύει και για την έξοδο) + 1 (για το ρολόι) + 1 (για το reset) + N (για το σήμα InputValid) + N (για το σήμα OutputValid). (Τα σήματα InputValid και OutputValid μπορούν να παραληφθούν αφού σε πραγματικό μεταγωγέα υπάρχει άλλος μηχανισμός που καθορίζει την εγκυρότητα εισόδων εξόδων) Για παράδειγμα, για 4x4 μεταγωγέα, ο αριθμός θυρών είναι: 4*2* = 26. Να σημειωθεί εδώ ότι ο 32x32 μεταγωγέας έχει 386 θύρες, αριθμός μεγαλύτερος από 288, που είναι ο αριθμός θυρών του FPGA του FPSLIC. 56

58 Γραφική απεικόνιση 57

59 Όσον αφορά την επιφάνεια της σχεδίασης που καθορίζεται από τον αριθμό των πυλών που απαιτούνται για το εκάστοτε μέγεθος μεταγωγέα, παρατηρούμε ότι ο ρυθμός αύξησης της επιφάνειας της σχεδίασης είναι περίπου ίσος με 4 (κατά μέσο όρο). Δηλαδή διπλασιασμός των θυρών εισόδου του μεταγωγέα συνεπάγεται τετραπλασιασμό της επιφάνειάς του, που επίσης είναι λογικό με το σκεπτικό ότι απαιτείται η διπλάσια επιφάνεια για τις θύρες εισόδου και η διπλάσια επιφάνεια για τις θύρες εξόδου. Αντίστοιχη σχέση ισχύει για τον αριθμό των θυρών, όπου εδώ ο λόγος του αριθμού των θυρών από μεταγωγέα σε μεταγωγέα με διπλάσιο αριθμό εισόδων είναι ίσος με 2,4. Όσον αφορά τη συχνότητα λειτουργίας και ως εκ τούτου και τη διαμεταγωγή παρατηρείται το εξής. Ο λόγος της διαμεταγωγής από μεταγωγέα σε μεταγωγέα με το μισό αριθμό θυρών εισόδου είναι σταθερός και ίσος με 1,5 για μεταγωγείς 32x32, 16x16 και 8x8. Ο λόγος όμςς αυτός γίνεται 2,7 από μεταγωγέα 8x8 σε μεταγωγέα 4x4. Αυτή η δυσαναλογία οφείλεται κατά πάσα πιθανότητα σε κάποια βελτιστοποίηση που τυχόν κάνει το Leonardo Spectrum σε μικρές σχεδιάσεις. Το Leonardo Spectrum ήταν ρυθμισμένο ώστε να κάνει βελτιστοποίηση ως προς τη συχνότητα λειτουργίας της παραγόμενης σχεδίασης. 58

60 Σύγκριση υλοποίησης Ranking στον AVR και στο FPGA Στον παραπάνω πίνακα παρουσιάζονται οι διαμεταγωγές των δύο υλοποιήσεων συγκεντρωμένες και αναφερόμενες στην ίδια μονάδα μέτρησης (Gbps). Στο παρακάτω σχήμα σχεδιάζεται γραφικά ο παραπάνω πίνακας. Παρατηρείται διαφορά 4 τάξεων μεγέθους μεταξύ των δύο υλοποιήσεων. Αυτή οφείλεται στους παρακάτω λόγους: Η υλοποίηση σε software εξαρτάται από το ρολόι του AVR (18,432MHz) Η υλοποίηση σε software εκτελείται σειριακά ενώ στο hardware (FPGA) εκτελείται παράλληλα. Ο κώδικας του Leonardo Spectrum (hardware υλοποίηση) είναι βελτιστοποιημένος ως προς την ταχύτητα λειτουργίας της παραγόμενης σχεδίασης. Δεν συμβαίνει το ίδιο για τον κώδικα του AVR (software υλοποίηση) που γίνεται compile από τον IAR. 59

8 η ιάλεξη: σε δίκτυα δεδομένων

8 η ιάλεξη: σε δίκτυα δεδομένων Εργαστήριο ικτύων Υπολογιστών 8 η ιάλεξη: Βασικές αρχές δρομολόγησης Βασικές αρχές δρομολόγησης σε δίκτυα δεδομένων ρομολόγηση (Routing) Μεταφορά μηνυμάτων μέσω του διαδικτύου από μία πηγή σε ένα προορισμό

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

ΔΙΚΤΥΑ (13) Π. Φουληράς

ΔΙΚΤΥΑ (13) Π. Φουληράς ΔΙΚΤΥΑ (13) Π. Φουληράς Τεχνολογίες WAN και Δρομολόγηση LAN Επεκτείνεται μόνον σε ένα κτίριο ή ομάδα κτιρίων WAN (Wide Area Network) Επεκτείνονται σε μεγάλες περιοχές MAN Ενδιάμεσο ως προς το μέγεθος της

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

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

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

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

Ενότητα 1. Εισαγωγή στις βασικές έννοιες των ικτύων ΗΥ

Ενότητα 1. Εισαγωγή στις βασικές έννοιες των ικτύων ΗΥ Ενότητα 1 Εισαγωγή στις βασικές έννοιες των ικτύων ΗΥ Εισαγωγή στις βασικές έννοιες των δικτύων υπολογιστών ικτυακός Καταµερισµός Εργασίας Το υπόδειγµα του Internet Εξοπλισµός ικτύου Κατηγοριοποίηση ικτύων

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

Ενότητα 3. Στρώµα Ζεύξης: Αρχές Λειτουργίας & Το Υπόδειγµα του Ethernet

Ενότητα 3. Στρώµα Ζεύξης: Αρχές Λειτουργίας & Το Υπόδειγµα του Ethernet Ενότητα 3 Στρώµα Ζεύξης: Αρχές Λειτουργίας & Το Υπόδειγµα του Ethernet Εισαγωγή στις βασικές έννοιες του στρώµατος Ζεύξης (Data Link Layer) στα δίκτυα ΗΥ Γενικές Αρχές Λειτουργίας ηµιουργία Πλαισίων Έλεγχος

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

1.1 Επαναλήπτες (repeaters ή regenerators)

1.1 Επαναλήπτες (repeaters ή regenerators) 1.1 Επαναλήπτες (repeaters ή regenerators) Οι επαναλήπτες λειτουργούν στο φυσικό επίπεδο του OSI μοντέλου. Χρησιμεύουν για την ενίσχυση των σημάτων που μεταφέρονται στο δίκτυο. Ένα σήμα μπορεί να ταξιδέψει

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

Δίκτυα Υπολογιστών. Δίκτυα υπολογιστών και το Διαδίκτυο Εισαγωγή. Κ. Βασιλάκης

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

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

Κεφάλαιο 1 Ε Π Α Ν Α Λ Η Ψ Η

Κεφάλαιο 1 Ε Π Α Ν Α Λ Η Ψ Η Κεφάλαιο 1 Ε Π Α Ν Α Λ Η Ψ Η Αρχές Δικτύων Επικοινωνιών Σελ. 9-50 Γεώργιος Γιαννόπουλος ΠΕ19, ggiannop (at) sch.gr http://diktya-epal-b.ggia.info/ Creative Commons License 3.0 Share-Alike Σύνδεση από σημείο

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

Πρωτόκολλα Επικοινωνίας Πρωτόκολλο IP

Πρωτόκολλα Επικοινωνίας Πρωτόκολλο IP Πρωτόκολλα Επικοινωνίας Πρωτόκολλο IP Πρωτόκολλα επικοινωνίας Ορισμός Σύνολα προσυμφωνημένων κανόνων που απαιτούνται για τον καθορισμό του τρόπου με τον οποίο επιτυγχάνεται η ανταλλαγή δεδομένων, και επομένως

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

Είναι η διαδικασία εύρεσης της διαδρομής που πρέπει να ακολουθήσει ένα πακέτο για να φτάσει στον προορισμό του. Η διαδικασία αυτή δεν είναι πάντα

Είναι η διαδικασία εύρεσης της διαδρομής που πρέπει να ακολουθήσει ένα πακέτο για να φτάσει στον προορισμό του. Η διαδικασία αυτή δεν είναι πάντα 1 Είναι η διαδικασία εύρεσης της διαδρομής που πρέπει να ακολουθήσει ένα πακέτο για να φτάσει στον προορισμό του. Η διαδικασία αυτή δεν είναι πάντα εύκολη, τη στιγμή που γνωρίζουμε ότι ένα σύνθετο δίκτυο

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

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

ΤΕΙ Στερεάς Ελλάδας Τμ. Ηλ.γων Μηχ/κων ΤΕ. Δίκτυα Υπολογιστών. Διάλεξη 1: Εισαγωγή στα δίκτυα υπολογιστών και βασικές αρχές ΤΕΙ Στερεάς Ελλάδας Τμ. Ηλ.γων Μηχ/κων ΤΕ Δίκτυα Υπολογιστών Διάλεξη 1: Εισαγωγή στα δίκτυα υπολογιστών και βασικές αρχές Γενικά Τα αρχεία των διαλέξεων του μαθήματος μπορείτε να βρείτε στο: http://eclass.gunet.gr/

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

ΔΙΚΤΥΑ Η/Υ ΙΙ. Γέφυρες

ΔΙΚΤΥΑ Η/Υ ΙΙ. Γέφυρες ΔΙΚΤΥΑ Η/Υ ΙΙ Γέφυρες Γενικά Οι γέφυρες (bridges) είναι συσκευές που επιτυγχάνουν τη διασύνδεση ενός απλού τοπικού δικτύου με άλλα παρόμοια τοπικά δίκτυα. Μια γενικότερη συσκευή και για τη διασύνδεση με

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

ίκτυα - Internet Μάθηµα 5ο Ενότητες Μαθήµατος Παρασκευή 01 ΕΚ 2006 ιευθυνσιοδότηση στα Τοπικά ίκτυα (LAN).

ίκτυα - Internet Μάθηµα 5ο Ενότητες Μαθήµατος Παρασκευή 01 ΕΚ 2006 ιευθυνσιοδότηση στα Τοπικά ίκτυα (LAN). Ιόνιο Πανεπιστήµιο Τµήµα Αρχειονοµίας-Βιβλιοθηκονοµίας, Κέρκυρα Παρασκευή 01 ΕΚ 2006 ίκτυα - Internet Μάθηµα 5ο Ενότητες Μαθήµατος 1. Τεχνικές Πολλαπλής Πρόσβασης Πρωτόκολλα LAN ιευθυνσιοδότηση στα Τοπικά

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

ίκτυα υπολογιστών Στόχοι κεφαλαίου ίκτυα

ίκτυα υπολογιστών Στόχοι κεφαλαίου ίκτυα Στόχοι κεφαλαίου ίκτυα υπολογιστών (Κεφαλαιο 15 στο βιβλιο) Περιγραφή των κύριων θεµάτων σχετικά µε τα δίκτυα υπολογιστών Αναφορά στα διάφορα είδη δικτύων Περιγραφή των διαφόρων τοπολογιών των τοπικών

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

Εισαγωγή στο διαδίκτυο

Εισαγωγή στο διαδίκτυο Εισαγωγή στο διαδίκτυο Στόχοι κεφαλαίου Περιγραφή των κύριων θεμάτων σχετικά με τα δίκτυα υπολογιστών Αναφορά στα διάφορα είδη δικτύων Περιγραφή των διαφόρων τοπολογιών των τοπικών δικτύων Περιγραφή των

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

Δίκτυα Υψηλών Ταχυτήτων Ενότητα 2: Τοπικά Δίκτυα

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

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

ΚΕΦ. 2 - Η Λειτουργία των Δικτύων

ΚΕΦ. 2 - Η Λειτουργία των Δικτύων ΚΕΦ. 2 - Η Λειτουργία των Δικτύων 2.1 Ethernet 2.2 Internet 2.3 Asynchronous Transfer Mode 2.4 Η αρχιτεκτονική του Δικτύου Δίκτυα Επικ. - Κεφ. 2A (Καθ. Ι. Σταυρακάκης, Τμήμα Πληροφ. & Τηλεπικ., Ε.Κ.Π.Α.)

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

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

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

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

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

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

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

Εισαγωγή στην επιστήμη των υπολογιστών. Υλικό Υπολογιστών Κεφάλαιο 6ο ίκτυα υπολογιστών

Εισαγωγή στην επιστήμη των υπολογιστών. Υλικό Υπολογιστών Κεφάλαιο 6ο ίκτυα υπολογιστών Εισαγωγή στην επιστήμη των υπολογιστών Υλικό Υπολογιστών Κεφάλαιο 6ο ίκτυα υπολογιστών 1 ίκτυα μικρά και μεγάλα Ένα δίκτυο υπολογιστών (computer network) είναι ένας συνδυασμός συστημάτων (δηλαδή, υπολογιστών),

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

ΒΑΣΙΚΕΣ ΥΠΗΡΕΣΙΕΣ Βελώνης Γεώργιος ΤΟΥ ΔΙΑΔΙΚΤΥΟΥ. Μάθημα 2ο. Βελώνης Γεώργιος - 1ο Τ.Ε.Ε. Κατερίνης. Καθηγητής Πληροφορικής ΠΕ20 2-1

ΒΑΣΙΚΕΣ ΥΠΗΡΕΣΙΕΣ Βελώνης Γεώργιος ΤΟΥ ΔΙΑΔΙΚΤΥΟΥ. Μάθημα 2ο. Βελώνης Γεώργιος - 1ο Τ.Ε.Ε. Κατερίνης. Καθηγητής Πληροφορικής ΠΕ20 2-1 ΒΑΣΙΚΕΣ ΥΠΗΡΕΣΙΕΣ Βελών ΤΟΥ ΔΙΑΔΙΚΤΥΟΥ Μάθημα 2ο Βελών - 1ο Τ.Ε.Ε. Κατερίν Καθηγητής Πληροφορικής ΠΕ20 2-1 Τεχνολογίες Μεταγωγής Δεδομένων Δίκτυα Μεταγωγής Βελών Βελών Δίκτυα Μεταγωγής Δίκτυα Μεταγωγής

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

Εισαγωγή στο πως λειτουργεί το διαδίκτυο

Εισαγωγή στο πως λειτουργεί το διαδίκτυο Εισαγωγή στο πως λειτουργεί το διαδίκτυο (και τι θα δούμε στο εργαστήριο δικτύων) Εργαστήριο Δικτύων Υπολογιστών 2014-2015 Τμήμα Μηχανικών Η/Υ και Πληροφορικής Διαδίκτυο - ένα δίκτυο δεδομένων Σημαντικό

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

ΔΙΚΤΥΑ ΕΠΙΚΟΙΝΩΝΙΩΝ. Ιωάννης Σταυρακάκης, Καθηγητής ioannis@di.uoa.gr. http://www.di.uoa.gr/~ioannis/courses.html Password: edi

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

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

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

ιαδίκτυα & Ενδοδίκτυα Η/Υ ιαδίκτυα & Ενδοδίκτυα Η/Υ ρ Θεοδώρου Παύλος pavlos@aegean.gr Βιβλίο Μαθήµατος: Επικοινωνίες Υπολογιστών & εδοµένων, William Stallings, 6/e, 2000. ΕΥ - κεφ.9 (1/2) ρ Παύλος Θεοδώρου 1 Εισαγωγή Εισαγωγή

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

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

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

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

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

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

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

Δίκτυα Επικοινωνίας Υπολογιστών Ενότητα 2: Εισαγωγή. Μιχαήλ Λογοθέτης Πολυτεχνική Σχολή Τμήμα Ηλεκτρολόγων Μηχανικών και Τεχνολογίας Υπολογιστών

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

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

HY-335 : Δίκτυα Υπολογιστών

HY-335 : Δίκτυα Υπολογιστών W N net works R E O T HY-335 : Δίκτυα Υπολογιστών K Μαρία Παπαδοπούλη Τμήμα Επιστήμης Υπολογιστών Πανεπιστήμιο Κρήτης Χειμερινό εξάμηνο 20010-2011 Θέματα προς συζήτηση Είδη πολυπλεξίας Μεταγωγή Καθυστερήσεις

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

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

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

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

Ενότητα 1. Εισαγωγή στις βασικές έννοιες των ικτύων ΗΥ

Ενότητα 1. Εισαγωγή στις βασικές έννοιες των ικτύων ΗΥ Ενότητα 1 Εισαγωγή στις βασικές έννοιες των ικτύων ΗΥ Εύρος Ζώνης και Ταχύτητα Μετάδοσης Η ταχύτητα µετάδοσης [εύρος ζώνης (banwidth)] των δεδοµένων αποτελεί ένα δείκτη επίδοσης των δικτύων και συνήθως

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

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

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

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

Τμήμα Οικιακής Οικονομίας και Οικολογίας. Οργάνωση Υπολογιστών

Τμήμα Οικιακής Οικονομίας και Οικολογίας. Οργάνωση Υπολογιστών Οργάνωση Υπολογιστών Υπολογιστικό Σύστημα Λειτουργικό Σύστημα Αποτελεί τη διασύνδεση μεταξύ του υλικού ενός υπολογιστή και του χρήστη (προγραμμάτων ή ανθρώπων). Είναι ένα πρόγραμμα (ή ένα σύνολο προγραμμάτων)

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

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

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

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

Αυτόνομα Συστήματα (ΑΣ)

Αυτόνομα Συστήματα (ΑΣ) Δρομολόγηση ΙI Αυτόνομα Συστήματα (ΑΣ) Αυτόνομο σύστημα ονομάζουμε εκείνο που έχει τα εξής χαρακτηριστικά: Είναι ένα σύνολο δρομολογητών και δικτύων υπό τη διαχείριση ενός και μόνο οργανισμού Αποτελείται

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

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

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

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

Ιόνιο Πανεπιστήµιο Τµήµα Πληροφορικής Συστήµατα Επικοινωνίας. Μοντέλο TCP/IP. Ενότητα E. Πόσοι εµπλέκονται σε ένα Σύστηµα Επικοινωνίας

Ιόνιο Πανεπιστήµιο Τµήµα Πληροφορικής Συστήµατα Επικοινωνίας. Μοντέλο TCP/IP. Ενότητα E. Πόσοι εµπλέκονται σε ένα Σύστηµα Επικοινωνίας Ιόνιο Πανεπιστήµιο Τµήµα Πληροφορικής ίκτυα Η/Υ Συστήµατα Επικοινωνίας (Ε) (PC) (N) Επικοινωνίες: Εφαρµογές Υπολογιστές ίκτυα Μοντέλο TCP/IP πολλές πολλοί N A N B Ενότητα E PC A PC B PC D PC E E A E B

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

Ιατρική Πληροφορική ΔΡ. Π. ΑΣΒΕΣΤΑΣ ΤΜΗΜΑ ΜΗΧΑΝΙΚΩΝ ΒΙΟΪΑΤΡΙΚΗΣ ΤΕΧΝΟΛΟΓΙΑΣ Τ. Ε. Χρήσιμοι Σύνδεσμοι

Ιατρική Πληροφορική ΔΡ. Π. ΑΣΒΕΣΤΑΣ ΤΜΗΜΑ ΜΗΧΑΝΙΚΩΝ ΒΙΟΪΑΤΡΙΚΗΣ ΤΕΧΝΟΛΟΓΙΑΣ Τ. Ε. Χρήσιμοι Σύνδεσμοι Ιατρική Πληροφορική ΔΡ. Π. ΑΣΒΕΣΤΑΣ ΤΜΗΜΑ ΜΗΧΑΝΙΚΩΝ ΒΙΟΪΑΤΡΙΚΗΣ ΤΕΧΝΟΛΟΓΙΑΣ Τ. Ε. Χρήσιμοι Σύνδεσμοι Διαλέξεις μαθήματος: http://medisp.teiath.gr/eclass/courses/tio103/ https://eclass.teiath.gr/courses/tio100/

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

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

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

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

ΗΜΥ 360: Δίκτυα Υπολογιστών. Εισαγωγή

ΗΜΥ 360: Δίκτυα Υπολογιστών. Εισαγωγή ΗΜΥ 360: Δίκτυα Υπολογιστών. Εισαγωγή Διδάσκων: Χρίστος Παναγιώτου Γιατί Δίκτυα Υπολογιστών; Επιχειρησιακές Εφαρμογές Π.χ., εξ αποστάσεως πρόσβαση σε βάσεις δεδομένων. Εξοικονόμηση χρημάτων από τον καταμερισμό

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

ΕΠΙΠΕΔΟ ΣΥΝΔΕΣΗΣ ΜΑC

ΕΠΙΠΕΔΟ ΣΥΝΔΕΣΗΣ ΜΑC ΕΠΙΠΕΔΟ ΣΥΝΔΕΣΗΣ Το επίπεδο σύνδεσης αποτελείται από δύο υποεπίπεδα: Το υποεπίπεδο ελέγχου προσπέλασης μέσων (Medium Access Control) Το υποεπίπεδο λογικού ελέγχου σύνδεσης (Logical Link Control) To υποεπίπεδο

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

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

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

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

Τρίτη Πρόοδος [110 μονάδες] Απαντήσεις

Τρίτη Πρόοδος [110 μονάδες] Απαντήσεις ΗY335: Δίκτυα Υπολογιστών Χειμερινό Εξάμηνο 2011-20112 Τμήμα Επιστήμης Υπολογιστών Πανεπιστήμιο Κρήτης Διδάσκουσα: Μαρία Παπαδοπούλη 15 Δεκεμβρίου 2011 Τρίτη Πρόοδος [110 μονάδες] Απαντήσεις 1. Θεωρήσετε

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

Σχεδίαση και Υλοποίηση Μηχανισμού Μεταφοράς Δεδομένων από Συσκευές Αποθήκευσης σε Δίκτυο Myrinet, Χωρίς τη Μεσολάβηση της Ιεραρχίας Μνήμης

Σχεδίαση και Υλοποίηση Μηχανισμού Μεταφοράς Δεδομένων από Συσκευές Αποθήκευσης σε Δίκτυο Myrinet, Χωρίς τη Μεσολάβηση της Ιεραρχίας Μνήμης Σχεδίαση και Υλοποίηση Μηχανισμού Μεταφοράς Δεδομένων από Συσκευές Αποθήκευσης σε Δίκτυο Myrinet, Χωρίς τη Μεσολάβηση της Ιεραρχίας Μνήμης Αναστάσιος Α. Νάνος ananos@cslab.ntua.gr Επιβλέπων: Νεκτάριος

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

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

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

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

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

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

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

Προγραμματισμός Ηλεκτρονικών Υπολογιστών 1

Προγραμματισμός Ηλεκτρονικών Υπολογιστών 1 Προγραμματισμός Ηλεκτρονικών Υπολογιστών 1 Ενότητα 8: Εισαγωγή στα Δίκτυα Δρ. Φραγκούλης Γεώργιος Τμήμα Ηλεκτρολογίας Άδειες Χρήσης Το παρόν εκπαιδευτικό υλικό υπόκειται σε άδειες χρήσης Creative Commons.

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

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

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

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

Διασυνδετικοί Δίαυλοι. Τι διασυνδέει ένας δίαυλος; Μεταφορά δεδομένων. Διασύνδεση Εισόδου-Εξόδου. Μ.Στεφανιδάκης

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

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

Packet Tracer. ηµιουργία τοπολογίας Βήµα 1: Εκτελούµε το Packet Tracer

Packet Tracer. ηµιουργία τοπολογίας Βήµα 1: Εκτελούµε το Packet Tracer Packet Tracer Το Packet Tracer είναι ένα πρόγραµµα που προσοµοιώνει τη λειτουργία ενός δικτύου και των πρωτοκόλλων µε τα οποία λειτουργεί. Αναπτύχθηκε από τον Dennis Frezzo και την οµάδα του στη Cisco

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

Πρόσβαση στο ίκτυο (Network Access) & ιασύνδεση ικτύων (internetworking) Ενότητα ΣΤ

Πρόσβαση στο ίκτυο (Network Access) & ιασύνδεση ικτύων (internetworking) Ενότητα ΣΤ Ιόνιο Πανεπιστήµιο Τµήµα Αρχειονοµίας Βιβλιοθηκονοµίας ίκτυα Η/Υ Πρόσβαση στο ίκτυο (Network Access) & ιασύνδεση ικτύων (internetworking) Ενότητα ΣΤ ρ. Ε. Μάγκος Ενότητες Μαθήµατος 1. Επίπεδο 2 στο Μοντέλο

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

ΡΟΜΠΟΤΙΚΗ. ΕΡΓΑΣΙΑ ΠΑΝΩ ΣΤΗΝ ΑΡΧΙΤΕΚΤΟΝΙΚΗ ΝΧΤ ΚΑΙ ΤΑ ΠΡΩΤΟΚΟΛΛΑ ΕΠΙΚΟΙΝΩΝΙΑΣ BLUETOOTH, I2C και serial communication

ΡΟΜΠΟΤΙΚΗ. ΕΡΓΑΣΙΑ ΠΑΝΩ ΣΤΗΝ ΑΡΧΙΤΕΚΤΟΝΙΚΗ ΝΧΤ ΚΑΙ ΤΑ ΠΡΩΤΟΚΟΛΛΑ ΕΠΙΚΟΙΝΩΝΙΑΣ BLUETOOTH, I2C και serial communication ΡΟΜΠΟΤΙΚΗ ΕΡΓΑΣΙΑ ΠΑΝΩ ΣΤΗΝ ΑΡΧΙΤΕΚΤΟΝΙΚΗ ΝΧΤ ΚΑΙ ΤΑ ΠΡΩΤΟΚΟΛΛΑ ΕΠΙΚΟΙΝΩΝΙΑΣ BLUETOOTH, I2C και serial communication ΜΠΑΝΤΗΣ ΑΝΤΩΝΙΟΣ 533 ΤΣΙΚΤΣΙΡΗΣ ΔΗΜΗΤΡΙΟΣ 551 ΑΡΧΙΤΕΚΤΟΝΙΚΗ ΤΟΥ ΡΟΜΠΟΤ LEGO NXT Το ρομπότ

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

Τεχνολογία μνημών Ημιαγωγικές μνήμες Μνήμες που προσπελαύνονται με διευθύνσεις:

Τεχνολογία μνημών Ημιαγωγικές μνήμες Μνήμες που προσπελαύνονται με διευθύνσεις: Σύστημα μνήμης Ο κύριος σκοπός στο σχεδιασμό ενός συστήματος μνήμης είναι να προσφέρουμε επαρκή χωρητικότητα αποθήκευσης διατηρώντας ένα αποδεκτό επίπεδο μέσης απόδοσης και επίσης χαμηλό μέσο κόστος ανά

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

- Εισαγωγή - Επίπεδα μνήμης - Ολοκληρωμένα κυκλώματα μνήμης - Συσκευασίες μνήμης προσωπικών υπολογιστών

- Εισαγωγή - Επίπεδα μνήμης - Ολοκληρωμένα κυκλώματα μνήμης - Συσκευασίες μνήμης προσωπικών υπολογιστών Μάθημα 4.5 Η Μνήμη - Εισαγωγή - Επίπεδα μνήμης - Ολοκληρωμένα κυκλώματα μνήμης - Συσκευασίες μνήμης προσωπικών υπολογιστών Όταν ολοκληρώσεις το μάθημα αυτό θα μπορείς: Να αναφέρεις τα κυριότερα είδη μνήμης

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

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

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

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

Μάθημα 8: Διαχείριση Μνήμης

Μάθημα 8: Διαχείριση Μνήμης Μάθημα 8: Διαχείριση Μνήμης 8.1 Κύρια και δευτερεύουσα μνήμη Κάθε μονάδα ενός υπολογιστή που χρησιμεύει για τη μόνιμη ή προσωρινή αποθήκευση δεδομένων ανήκει στην μνήμη (memory) του υπολογιστή. Οι μνήμες

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

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

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

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

Διαδίκτυα και το Διαδίκτυο (Internetworking and the Internet)

Διαδίκτυα και το Διαδίκτυο (Internetworking and the Internet) Διαδίκτυα και το Διαδίκτυο (Internetworking and the Internet) Περίληψη Πως τα διάφορα δίκτυα διαφέρουν μεταξύ τους Πως συνδέονται ανομοιογενή δίκτυα μεταξύ τους Εικονικά κυκλώματα συνδεδεμένα σε σειρά

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

Ανάλυση Επιδόσεων Συστημάτων Πραγματικού Χρόνου

Ανάλυση Επιδόσεων Συστημάτων Πραγματικού Χρόνου ΣΥΣΤΗΜΑΤΑ ΠΡΑΓΜΑΤΙΚΟΥ ΧΡΟΝΟΥ Μάθημα Επιλογής Ανάλυση Επιδόσεων Συστημάτων Πραγματικού Χρόνου Δρ. Γεώργιος Κεραμίδας e-mail: gkeramidas@teimes.gr 1 Διεργασίες: Κατάσταση Εκτέλεσης (3-σταδίων) Κατάσταση

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

ΜΕΤΑΔΟΣΗ ΔΕΔΟΜΕΝΩΝ & ΔΙΚΤΥΑ ΥΠΟΛΟΓΙΣΤΩΝ ΙΙ ΑΠΑΝΤΗΣΕΙΣ ΣΤΑ ΘΕΜΑΤΑ ΠΑΝΕΛΛΗΝΙΩΝ ΕΞΕΤΑΣΕΩΝ ΣΧΟΛΙΚΟΥ ΕΤΟΥΣ 2001-2 ΘΕΜΑΤΑ

ΜΕΤΑΔΟΣΗ ΔΕΔΟΜΕΝΩΝ & ΔΙΚΤΥΑ ΥΠΟΛΟΓΙΣΤΩΝ ΙΙ ΑΠΑΝΤΗΣΕΙΣ ΣΤΑ ΘΕΜΑΤΑ ΠΑΝΕΛΛΗΝΙΩΝ ΕΞΕΤΑΣΕΩΝ ΣΧΟΛΙΚΟΥ ΕΤΟΥΣ 2001-2 ΘΕΜΑΤΑ ΜΕΤΑΔΟΣΗ ΔΕΔΟΜΕΝΩΝ & ΔΙΚΤΥΑ ΥΠΟΛΟΓΙΣΤΩΝ ΙΙ ΑΠΑΝΤΗΣΕΙΣ ΣΤΑ ΘΕΜΑΤΑ ΠΑΝΕΛΛΗΝΙΩΝ ΕΞΕΤΑΣΕΩΝ ΣΧΟΛΙΚΟΥ ΕΤΟΥΣ 2001-2 ΘΕΜΑΤΑ ΘΕΜΑ1ο Α.1 Να αναφέρετε ονομαστικά τα πέντε (5) υποσυστήματα με τα οποία υλοποιείται

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

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

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

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

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

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

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

7.5 Πρωτόκολλο IP. Τεχνολογία ικτύων Επικοινωνιών ΙΙ

7.5 Πρωτόκολλο IP. Τεχνολογία ικτύων Επικοινωνιών ΙΙ Τεχνολογία ικτύων Επικοινωνιών ΙΙ 7.5 Πρωτόκολλο IP 38. Τι είναι το πρωτόκολλο ιαδικτύου (Internet Protocol, IP); Είναι το βασικό πρωτόκολλο του επιπέδου δικτύου της τεχνολογίας TCP/IP. Βασίζεται στα αυτοδύναµα

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

Σύστημα διασύνδεσης και. διαδικασία εισόδου-εξόδου

Σύστημα διασύνδεσης και. διαδικασία εισόδου-εξόδου ΑΡΧΙΤΕΚΤΟΝΙΚΗ ΥΠΟΛΟΓΙΣΤΩΝ Κεφάλαιο 6 Σύστημα διασύνδεσης και διαδικασία εισόδου-εξόδου Τι είναι αρτηρία (Bus) ; Ένα σύνολο γραμμών διασύνδεσης Πρωτόκολλο (protocol) Περιγραφή Πρωτοκόλλου χρονικό διάγραμμα

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

Περιεχόμενα. Κεφάλαιο 1 Εισαγωγή σε Έννοιες των Δικτύων Υπολογιστών...11. Κεφάλαιο 2 Αξιοπιστία...25. Κεφάλαιο 3 Αλγόριθμοι Πολλαπλής Πρόσβασης...

Περιεχόμενα. Κεφάλαιο 1 Εισαγωγή σε Έννοιες των Δικτύων Υπολογιστών...11. Κεφάλαιο 2 Αξιοπιστία...25. Κεφάλαιο 3 Αλγόριθμοι Πολλαπλής Πρόσβασης... Περιεχόμενα Εισαγωγή...7 Κεφάλαιο 1 Εισαγωγή σε Έννοιες των Δικτύων Υπολογιστών...11 Κεφάλαιο 2 Αξιοπιστία...25 Κεφάλαιο 3 Αλγόριθμοι Πολλαπλής Πρόσβασης...65 Κεφάλαιο 4 Μεταγωγή Δεδομένων και Δρομολόγηση...

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

ΕΠΛ 476: ΚΙΝΗΤΑ ΔΙΚΤΥΑ ΥΠΟΛΟΓΙΣΤΩΝ (MOBILE NETWORKS)

ΕΠΛ 476: ΚΙΝΗΤΑ ΔΙΚΤΥΑ ΥΠΟΛΟΓΙΣΤΩΝ (MOBILE NETWORKS) ΟΜΑΔΑ ΦΟΙΤΗΤΩΝ: Μιχαηλίνα Αργυρού Κασιανή Πάρη ΕΠΛ 476: ΚΙΝΗΤΑ ΔΙΚΤΥΑ ΥΠΟΛΟΓΙΣΤΩΝ (MOBILE NETWORKS) Δρ. Χριστόφορος Χριστοφόρου Πανεπιστήμιο Κύπρου - Τμήμα Πληροφορικής WiMAX (Worldwide Interoperability

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

Μάθημα 4.7 Θύρες περιφερειακών

Μάθημα 4.7 Θύρες περιφερειακών Μάθημα 4.7 Θύρες περιφερειακών - Εισαγωγή - Η σειριακή θύρα - Η παράλληλη θύρα - Οι θύρες πληκτρολογίου και ποντικιού τύπου PS/2 - Ο διάδρομος USB Όταν ολοκληρώσεις το μάθημα αυτό θα μπορείς: Να αναφέρεις

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

ΟΡΓΑΝΩΣΗ & ΔΙΑΧΕΙΡΙΣΗ ΠΛΗΡΟΦΟΡΙΩΝ 2011-12

ΟΡΓΑΝΩΣΗ & ΔΙΑΧΕΙΡΙΣΗ ΠΛΗΡΟΦΟΡΙΩΝ 2011-12 ΠΑΝΕΠΙΣΤΗΜΙΟ ΑΙΓΑΙΟΥ ΣΧΟΛΗ ΕΠΙΣΤΗΜΩΝ ΤΗΣ ΙΟΙΚΗΣΗΣ ΤΜΗΜΑ ΙΟΙΚΗΣΗΣ ΕΠΙΧΕΙΡΗΣΕΩΝ ΟΡΓΑΝΩΣΗ & ΔΙΑΧΕΙΡΙΣΗ ΠΛΗΡΟΦΟΡΙΩΝ Δρ. Ιάσων Κουφοδόντης ΚΕΦΑΛΑΙΟ 4 Σύνδεση με Προηγούμενα Ενότητες Μαθήματος E1 I. ΟΡΓΑΝΩΣΗ

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

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

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

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

ΠΤΥΧΙΑΚΗ. Θέμα πτυχιακής: Voice over IP. Ονοματεπώνυμο: Κόκκαλη Αλεξάνδρα

ΠΤΥΧΙΑΚΗ. Θέμα πτυχιακής: Voice over IP. Ονοματεπώνυμο: Κόκκαλη Αλεξάνδρα ΠΤΥΧΙΑΚΗ Θέμα πτυχιακής: Voice over IP Ονοματεπώνυμο: Κόκκαλη Αλεξάνδρα Εισαγωγή στην Υπηρεσία Voice over IP Το Voice over IP (VoIP) είναι μια καινούργια τεχνολογία η οποία προσφέρει φωνητική συνομιλία

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

ΕΛΛΗΝΙΚΟ ΑΝΟΙΚΤΟ ΠΑΝΕΠΙΣΤΗΜΙΟ. 2 η Γραπτή Εργασία ΠΛΗ 23 Ακαδημαϊκό Έτος 2012-2013 (Τόμος Α, Κεφάλαια 1-3) Ημερομηνία Παράδοσης 27/01/2013.

ΕΛΛΗΝΙΚΟ ΑΝΟΙΚΤΟ ΠΑΝΕΠΙΣΤΗΜΙΟ. 2 η Γραπτή Εργασία ΠΛΗ 23 Ακαδημαϊκό Έτος 2012-2013 (Τόμος Α, Κεφάλαια 1-3) Ημερομηνία Παράδοσης 27/01/2013. Στόχος: 2 η Γραπτή Εργασία ΠΛΗ 23 Ακαδημαϊκό Έτος 2012-2013 (Τόμος Α, Κεφάλαια 1-3) Ημερομηνία Παράδοσης 27/01/2013 Άσκηση 4 Η κατανόηση βασικών εννοιών όσον αφορά τη μετάδοση πολυμεσικής πληροφορίας,

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

ΙΑΛΕΞΗ 6 Η. ίκτυα Υπολογιστών & Επικοινωνία. ιδάσκουσα: : ρ. Παντάνο Ρόκου Φράνκα. ίκτυα Υπολογιστών και Επικοινωνία. ιάλεξη 6: H Πολύπλεξη

ΙΑΛΕΞΗ 6 Η. ίκτυα Υπολογιστών & Επικοινωνία. ιδάσκουσα: : ρ. Παντάνο Ρόκου Φράνκα. ίκτυα Υπολογιστών και Επικοινωνία. ιάλεξη 6: H Πολύπλεξη ίκτυα Υπολογιστών & Επικοινωνία ΙΑΛΕΞΗ 6 Η ιδάσκουσα: : ρ. Παντάνο Ρόκου Φράνκα ρ. Παντάνο Ρόκου Φράνκα 1 Πολύπλεξη ΗΠολύπλεξηείναι η µετάδοση διαφορετικών ρευµάτων πληροφορίας µέσα από την ίδια φυσική

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

ΤΕΙ Κρήτης, Παράρτηµα Χανίων

ΤΕΙ Κρήτης, Παράρτηµα Χανίων ΠΣΕ, Τµήµα Τηλεπικοινωνιών & ικτύων Η/Υ Εργαστήριο ιαδίκτυα & Ενδοδίκτυα Η/Υ ( ηµιουργία συστήµατος µε ροint-tο-ροint σύνδεση) ρ Θεοδώρου Παύλος Χανιά 2003 Περιεχόµενα 1 ΕΙΣΑΓΩΓΗ...2 2 ΤΟ ΚΑΝΑΛΙ PΟINT-TΟ-PΟINT...2

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

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

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

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

Πρωτόκολλο TCP Διάλεξη ΙΙI

Πρωτόκολλο TCP Διάλεξη ΙΙI Πρωτόκολλο TCP Διάλεξη ΙΙI Χρόνος επαναμετάδοσης Στην προηγούμενη διάλεξη είδαμε ότι: Η πρόβλεψη του χρόνου επαναμετάδοσης ενός πακέτου βάσει του εκθετικού μέσου παρατηρημένου χρόνου παράδοσης παλιότερων

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

ΕΡΓΑΣΤΗΡΙΑΚΗ ΑΣΚΗΣΗ #2 Ethernet MAC Στρώµα

ΕΡΓΑΣΤΗΡΙΑΚΗ ΑΣΚΗΣΗ #2 Ethernet MAC Στρώµα ΕΡΓΑΣΤΗΡΙΑΚΗ ΑΣΚΗΣΗ #2 Ethernet MAC Στρώµα 1. Αντικείµενο Η εργαστηριακή άσκηση αποσκοπεί στην εξοικείωση των φοιτητών µε το ζήτηµα των λογικών διαδικασιών, οι οποίες υλοποιούνται στο επίπεδο του στρώµατος

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

7.1.1 Επίπεδο δικτύου Γενικές Αρχές

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

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

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

ΤΕΧΝΟΛΟΓΙΑ ΔΙΚΤΥΩΝ ΕΠΙΚΟΙΝΩΝΙΩΝ 7.4 Πρωτόκολλο Μέχρι τώρα περιγράψαμε συνδέσεις, που χρησιμοποιούν το πρωτόκολλο TCP. Θυμηθείτε, ότι το TCP είναι υπεύθυνο για το τεμαχισμό των μηνυμάτων σε τμήματα και την επανασύνδεση τους στον προορισμό.

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

α. Συνόδου β. Μεταφοράς γ. Δικτύου δ. Διασύνδεσης δεδομένων ε. Φυσικού Επιπέδου (Μονάδες 5)

α. Συνόδου β. Μεταφοράς γ. Δικτύου δ. Διασύνδεσης δεδομένων ε. Φυσικού Επιπέδου (Μονάδες 5) ΜΑΘΗΜΑ / ΤΑΞΗ : ΔΙΚΤΥΑ ΥΠΟΛΟΓΙΣΤΩΝ ΙΙ / ΕΠΑΛ ΣΕΙΡΑ: ΗΜΕΡΟΜΗΝΙΑ: 30/11/2014 ΕΠΙΜΕΛΕΙΑ ΔΙΑΓΩΝΙΣΜΑΤΟΣ: Ι. ΜΙΧΑΛΕΑΚΟΣ, Α. ΙΛΕΡΗ ΘΕΜΑ Α Α1. Να χαρακτηρίσετε τις προτάσεις που ακολουθούν γράφοντας δίπλα στο

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

ΒΑΣΙΚΕΣ ΥΠΗΡΕΣΙΕΣ ΤΟΥ

ΒΑΣΙΚΕΣ ΥΠΗΡΕΣΙΕΣ ΤΟΥ ΒΑΣΙΚΕΣ ΥΠΗΡΕΣΙΕΣ ΤΟΥ ΔΙΑΔΙΚΤΥΟΥ ΜΑΘΗΜΑ 1ο - 1ο Τ.Ε.Ε. Κατερίνης Καθηγητής Πληροφορικής ΠΕ20 1-1 Δίκτυα Υπολογιστών Δίκτυο (Network) Δύο οι περισσότεροι υπολογιστές ή άλλα πληροφορικά μέσα (π.χ. εκτυπωτές,

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

Plugwise Business ιαχείριση και Εξοικονόµηση ενέργειας στο Εργασιακό περιβάλλον.

Plugwise Business ιαχείριση και Εξοικονόµηση ενέργειας στο Εργασιακό περιβάλλον. Plugwise Business ιαχείριση και Εξοικονόµηση ενέργειας στο Εργασιακό περιβάλλον. Το Plugwise είναι ένα εύχρηστο σύστηµα διαχείρισης ενέργειας σε εργασιακούς χώρους. Μετράει την κατανάλωση ρεύµατος κάθε

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

i Στα σύγχρονα συστήματα η κύρια μνήμη δεν συνδέεται απευθείας με τον επεξεργαστή

i Στα σύγχρονα συστήματα η κύρια μνήμη δεν συνδέεται απευθείας με τον επεξεργαστή Ιόνιο Πανεπιστήμιο Τμήμα Πληροφορικής Αρχιτεκτονική Υπολογιστών 2015-16 Τεχνολογίες Κύριας (και η ανάγκη για χρήση ιεραρχιών μνήμης) http://di.ionio.gr/~mistral/tp/comparch/ Μ.Στεφανιδάκης i Στα σύγχρονα

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

Υπάρχουν δύο τύποι μνήμης, η μνήμη τυχαίας προσπέλασης (Random Access Memory RAM) και η μνήμη ανάγνωσης-μόνο (Read-Only Memory ROM).

Υπάρχουν δύο τύποι μνήμης, η μνήμη τυχαίας προσπέλασης (Random Access Memory RAM) και η μνήμη ανάγνωσης-μόνο (Read-Only Memory ROM). Μνήμες Ένα από τα βασικά πλεονεκτήματα των ψηφιακών συστημάτων σε σχέση με τα αναλογικά, είναι η ευκολία αποθήκευσης μεγάλων ποσοτήτων πληροφοριών, είτε προσωρινά είτε μόνιμα Οι πληροφορίες αποθηκεύονται

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

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

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

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

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

ΤΕΧΝΟΛΟΓΙΑ ΔΙΚΤΥΩΝ ΕΠΙΚΟΙΝΩΝΙΩΝ Πολλοί μεγάλοι οργανισμοί συνηθίζουν να διαιρούν τα δίκτυα τους σε επιμέρους υποδίκτυα, αφήνοντας ένα μικρό αριθμό bits για τον προσδιορισμό των τελικών υπολογιστών. 128. 6. 5. x 128.6. x. x 128. 6. 4.

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

ΕΡΓΑΣΤΗΡΙΑΚΗ ΑΣΚΗΣΗ #3 Στρώµα ικτύου:ip Πρωτόκολλο και Πρωτόκολλα ροµολόγησης

ΕΡΓΑΣΤΗΡΙΑΚΗ ΑΣΚΗΣΗ #3 Στρώµα ικτύου:ip Πρωτόκολλο και Πρωτόκολλα ροµολόγησης ΕΡΓΑΣΤΗΡΙΑΚΗ ΑΣΚΗΣΗ #3 Στρώµα ικτύου:ip Πρωτόκολλο και Πρωτόκολλα ροµολόγησης 1. Αντικείµενο Η εργαστηριακή άσκηση αποσκοπεί στην εξοικείωση των φοιτητών µε το ζήτηµα των λογικών διαδικασιών, οι οποίες

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

Το υλικό του υπολογιστή

Το υλικό του υπολογιστή Το υλικό του υπολογιστή Ερωτήσεις 1. Τι αντιλαμβάνεστε με τον όρο υλικό; Το υλικό(hardware) αποτελείται από το σύνολο των ηλεκτρονικών τμημάτων που συνθέτουν το υπολογιστικό σύστημα, δηλαδή από τα ηλεκτρονικά

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

ΔΙΚΤΥΑ ΥΠΟΛΟΓΙΣΤΩΝ Ι (Θεωρία)

ΔΙΚΤΥΑ ΥΠΟΛΟΓΙΣΤΩΝ Ι (Θεωρία) ΔΙΚΤΥΑ ΥΠΟΛΟΓΙΣΤΩΝ Ι (Θεωρία) 4 ο Εξάμηνο Μέρος 3 Διδάσκων: Μαδεμλής Ιωάννης M.Sc Ηλεκτρονικός Μηχανικός 1 Εφαρμογές ΤΟΠΙΚΑ ΔΙΚΤΥΑ Δίκτυα Η/Υ Χαμηλό κόστος Δίκτυα BackEnd και Δίκτυα Αποθήκευσης Διασυνδέουν

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

Περιεχόµενα. Επικοινωνίες εδοµένων: Τρόποι Μετάδοσης και Πρωτόκολλα. Εισαγωγή

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

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

ΕΠΛ 012. Δίκτυα Τπολογιστών & Διαδίκτυο

ΕΠΛ 012. Δίκτυα Τπολογιστών & Διαδίκτυο ΕΠΛ 012 Δίκτυα Τπολογιστών & Διαδίκτυο Βιβλιογραφία: Nell Dale & John Lewis, Computer Science Illuminated, 2 nd Edition, 2005 Θέματα Η ανάγκη για δίκτυα Αναφορά στα διάφορα είδη δικτύων Περιγραφή των διαφόρων

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

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

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

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

Δίκτυα ATM. Τεχνολογία Πολυμέσων και Πολυμεσικές Επικοινωνίες 21-1

Δίκτυα ATM. Τεχνολογία Πολυμέσων και Πολυμεσικές Επικοινωνίες 21-1 Δίκτυα ATM Εισαγωγή Εικονικά κυκλώματα Πακέτα και κελιά Δρομολόγηση και προώθηση Ιεραρχία πρωτοκόλλων Επίπεδα προσαρμογής Ποιότητα υπηρεσίας Υποστήριξη IP Τεχνολογία Πολυμέσων και Πολυμεσικές Επικοινωνίες

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

Καθυστέρηση επεξεργασίας (processing delay) Έλεγχος επικεφαλίδας Καθορισµός εξερχόµενης ζεύξης 3

Καθυστέρηση επεξεργασίας (processing delay) Έλεγχος επικεφαλίδας Καθορισµός εξερχόµενης ζεύξης 3 Καθυστέρησησεδίκτυα µεταγωγήςπακέτων 2 ο Φροντιστήριο ΗΥ 335 Οι 4 συνιστώσες της καθυστέρησης πακέτων 2 Καθυστέρηση επεξεργασίας (processing delay) Έλεγχος επικεφαλίδας Καθορισµός εξερχόµενης ζεύξης 3

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

Βασικές Αρχές Δικτύωσης. Ευάγγελος Παπαπέτρου

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

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

.1 Βασικές Έννοιες Δικτύωσης. .2 Δίκτυα Άμεσου Συνδέσμου. .3 Δίκτυα Μεταγωγής και Διαδίκτυα. .4 Δικτύωση: συνολική θεώρηση

.1 Βασικές Έννοιες Δικτύωσης. .2 Δίκτυα Άμεσου Συνδέσμου. .3 Δίκτυα Μεταγωγής και Διαδίκτυα. .4 Δικτύωση: συνολική θεώρηση Δίκτυα Υπολογιστών Βασικές Αρχές Δικτύωσης 1 Βασικές Έννοιες Δικτύωσης 2 Δίκτυα Άμεσου Συνδέσμου Ευάγγελος Παπαπέτρου 3 Τμ Μηχ Η/Υ & Πληροφορικής, Παν Ιωαννίνων 4 Δικτύωση: συνολική θεώρηση 5 ΕΠαπαπέτρου

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

ΕΑΠ/ΠΛΗ22/ΑΘΗ.3 5 η ΟΣΣ 10/05/2014. Νίκος Δημητρίου ΣΕΠ/ΘΕ ΠΛΗ22

ΕΑΠ/ΠΛΗ22/ΑΘΗ.3 5 η ΟΣΣ 10/05/2014. Νίκος Δημητρίου ΣΕΠ/ΘΕ ΠΛΗ22 ΕΑΠ/ΠΛΗ22/ΑΘΗ.3 5 η ΟΣΣ 10/05/2014 Νίκος Δημητρίου ΣΕΠ/ΘΕ ΠΛΗ22 Λύσεις ΓΕ4 ΕΑΠ/ΠΛΗ22/ΑΘΗ.3/5η 2 3 A D 4 1 B 2 3 C 1. Μετάδοση A-D 2. Ο Α αποστέλλει ένα πακέτο με τη MAC address του D 3. O πίνακας του switch

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

ΘΕΜΑΤΑ ΔΙΠΛΩΜΑΤΙΚΩΝ ΕΡΓΑΣΙΩΝ

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

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

ΣΤΑΤΙΚΕΣ ΚΑΙ ΔΥΝΑΜΙΚΕΣ ΜΝΗΜΕΣ ΤΥΧΑΙΑΣ ΠΡΟΣΠΕΛΑΣΗΣ (Static and Dynamic RAMs). ΔΙΑΡΘΡΩΣΗ ΤΟΥ ΜΑΘΗΜΑΤΟΣ ΘΕΜΑΤΙΚΕΣ ΕΝΟΤΗΤΕΣ

ΣΤΑΤΙΚΕΣ ΚΑΙ ΔΥΝΑΜΙΚΕΣ ΜΝΗΜΕΣ ΤΥΧΑΙΑΣ ΠΡΟΣΠΕΛΑΣΗΣ (Static and Dynamic RAMs). ΔΙΑΡΘΡΩΣΗ ΤΟΥ ΜΑΘΗΜΑΤΟΣ ΘΕΜΑΤΙΚΕΣ ΕΝΟΤΗΤΕΣ ΣΤΑΤΙΚΕΣ ΚΑΙ ΔΥΝΑΜΙΚΕΣ ΜΝΗΜΕΣ ΤΥΧΑΙΑΣ ΠΡΟΣΠΕΛΑΣΗΣ (Static and Dynamic RAMs). ΔΙΑΡΘΡΩΣΗ ΤΟΥ ΜΑΘΗΜΑΤΟΣ ΘΕΜΑΤΙΚΕΣ ΕΝΟΤΗΤΕΣ ΒΑΣΙΚΑ ΣΤΟΙΧΕΙΑ ΗΜΙΑΓΩΓΙΚΩΝ ΜΝΗΜΩΝ. ΒΑΣΙΚΗ ΛΕΙΤΟΥΡΓΙΑ RAM CMOS. ΤΥΠΟΙ ΚΥΤΤΑΡΩΝ ΑΡΧΕΣ

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

Τεχνολογία TCP/IP ΙΑ ΙΚΤΥΩΣΗ- INTERNET. Τεχνολογίες Τηλεκπαίδευσης & Εφαρµογές - Ιούλιος 09 1 http://creativecommons.org/licenses/by-nc-nd/3.

Τεχνολογία TCP/IP ΙΑ ΙΚΤΥΩΣΗ- INTERNET. Τεχνολογίες Τηλεκπαίδευσης & Εφαρµογές - Ιούλιος 09 1 http://creativecommons.org/licenses/by-nc-nd/3. Τεχνολογία TCP/IP ΙΑ ΙΚΤΥΩΣΗ- INTERNET Εφαρµογές - Ιούλιος 09 1 Εισαγωγή στην τεχνολογία TCP/IP Τεχνολογία TCP/IP TCP/IP Πρωτόκολλα TCP/IP ή τεχνολογία TCP/IP ή τεχνολογία ιαδικτύου (Internet)( ιαδίκτυο

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