Εργαστήριο μαθήματος Δίκτυα Υπολογιστών Ι

Σχετικά έγγραφα
ΠΑΝΕΠΙΣΤΗΜΙΟ ΠΕΙΡΑΙΩΣ. Εργαστηριακές Ασκήσεις για το Μάθημα: «Δίκτυα Υπολογιστών I»

Εργαστηριακή Άσκηση 1

ΙΚΤΥΑ ΕΠΙΚΟΙΝΩΝΙΩΝ Εργαστηριακή Άσκηση 1

ΠΑΝΕΠΙΣΤΗΜΙΟ ΠΕΙΡΑΙΩΣ. Εργαστηριακές Ασκήσεις για το Μάθημα «Δίκτυα Υπολογιστών I»

ΔΙΚΤΥΑ ΕΠΙΚΟΙΝΩΝΙΩΝ Εργαστηριακή Άσκηση 3

ΠΑΝΕΠΙΣΤΗΜΙΟ ΠΕΙΡΑΙΩΣ. Εργαστηριακές Ασκήσεις για το Μάθημα: Δίκτυα Υπολογιστών I

ΙΚΤΥΑ ΕΠΙΚΟΙΝΩΝΙΩΝ Εργαστηριακή Άσκηση 3

ΠΑΝΕΠΙΣΤΗΜΙΟ ΠΕΙΡΑΙΩΣ ΤΜΗΜΑ ΨΗΦΙΑΚΩΝ ΣΥΣΤΗΜΑΤΩΝ

ΙΚΤΥΑ ΕΠΙΚΟΙΝΩΝΙΩΝ Εργαστηριακή Άσκηση 7 ρομολόγηση ιανύσματος Αποστάσεων

Εργαστήριο Δικτύων. 6 η Διάλεξη: Network Simulator NS

ΙΚΤΥΑ ΕΠΙΚΟΙΝΩΝΙΩΝ Εργαστηριακή Άσκηση 2

MYY703: Δίκτυα Υπολογιστών I Εργαστήρια

ΙΚΤΥΑ ΕΠΙΚΟΙΝΩΝΙΩΝ Εργαστηριακή Άσκηση 9 Επαναληπτικά Θέματα στη Μελέτη Πρωτοκόλλων με το NS2

ΔΙΚΤΥΑ ΕΠΙΚΟΙΝΩΝΙΩΝ Εργαστηριακή Άσκηση 6 Δρομολόγηση Διανύσματος Αποστάσεων

ΠΑΝΕΠΙΣΤΗΜΙΟ ΠΕΙΡΑΙΩΣ

Εργαστηριακή Άσκηση 4

ΙΚΤΥΑ ΕΠΙΚΟΙΝΩΝΙΩΝ Εργαστηριακή Άσκηση 4

Ns-allinone. Currently the package contains:

Δίκτυα Ι. Πρόγραμμα Προπτυχιακών Σπουδών Τμήμα Ψηφιακών Συστημάτων. Καθ. Π. Δεμέστιχας Δρ. Κ. Τσαγκάρης Δ. Καρβουνάς

Τί είναι ο Network Simulator-2

ΙΚΤΥΑ ΕΠΙΚΟΙΝΩΝΙΩΝ Εργαστηριακή Άσκηση 5

ΙΚΤΥΑ ΕΠΙΚΟΙΝΩΝΙΩΝ Εργαστηριακή Άσκηση 6 Επίδοση Τοπικών ικτύων IEEE 802.3

ΙΚΤΥΑ ΕΠΙΚΟΙΝΩΝΙΩΝ Εργαστηριακή Άσκηση 4

Δίκτυα Υπολογιστών Εργαστήρια

Εργαστηριακές Ασκήσεις για το Μάθημα «Δίκτυα Υπολογιστών ΙI»

Εργαστήριο Διοίκησης Παραγωγής & Έργων. Εισαγωγή στην προσομοίωση διεργασιών χρησιμοποιώντας το λογισμικό Extend

Επικοινωνιακή Διάταξη Σημείου-προς-Σημείο

ΕΙΣΑΓΩΓΗ ΣΤΗΝ ΠΡΟΣΟΜΟΙΩΣΗ ΔΙΕΡΓΑΣΙΩΝ ΧΡΗΣΙΜΟΠΟΙΩΝΤΑΣ ΤΟ ΛΟΓΙΣΜΙΚΟ EXTEND. 1 ο εργαστήριο Διοίκησης και Παραγωγής Έργων

Αρχιτεκτονικές Δικτύων & Πρωτόκολλα Ι

Αρχιτεκτονικές Δικτύων & Πρωτόκολλα Ι

ΛΟΓΙΣΜΙΚΟ ΠΡΟΣΟΜΟΙΩΣΗΣ ANYLOGIC

ΠΑΝΕΠΙΣΤΗΜΙΟ ΠΕΙΡΑΙΩΣ. «Μελέτη συστήματος αναμονής M/M/1 με χρήση του Network Simulator-2»

Προσομείωση ασύρματων δικτύων με τη χρήση του OPNET Modeler

Ο στόχος του εργαστηρίου είναι να παρουσιάσει τις δύο βασικές καταστάσεις λειτουργίας ενός ασύρματου τοπικού δικτύου (ad hoc και υποδομής).

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

Λουκάς Ελευθέριος

Οδηγίες για την εγκατάσταση του πακέτου Cygwin

Χρήση βασικών εργαλείων συλλογής πληροφοριών για τη διαμόρφωση και την κατάσταση λειτουργίας του δικτύου

Δίκτυα Υπολογιστών Ι. Εγκατάσταση του Network Simulator-2 σε περιβάλλον Cygwin. Δ. Καρβουνάς, Δρ. Κ. Τσαγκάρης, Καθηγ. Π.

8. Προσομοίωση Λειτουργίας Ασύρματων Δικτύων Υποδομής

Εισαγωγή στο προγραμματιστικό περιβάλλον ANSI

Πανεπιστήμιο Δυτικής Μακεδονίας. Τμήμα Μηχανικών Πληροφορικής & Τηλεπικοινωνιών. Ηλεκτρονική Υγεία. Εργαστήριο 4 ο : MATLAB

ΤΕΙ ΘΕΣΣΑΛΟΝΙΚΗΣ - ΤΜΗΜΑ ΠΛΗΡΟΦΟΡΙΚΗΣ ΜΑΘΗΜΑ: ΔΙΚΤΥΑ Η/Υ

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

Κεφάλαιο 5: Εισαγωγή στην Προσομοίωση

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

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

Χρόνοι Μετάδοσης και Διάδοσης

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

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

ΠΑΡΑΔΕΙΓΜΑ ΣΤΟ BIZAGI ΕΘΝΙΚΗ ΣΧΟΛΗ ΔΗΜΟΣΙΑΣ ΔΙΟΙΚΗΣΗΣ & ΑΥΤΟΔΙΟΙΚΗΣΗΣ

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

Εργαστήριο 4 Πρωτόκολλα Δρομολόγησης

Τμήμα Τεχνολογίας Πληροφορικής και Τηλεπικοινωνιών. Βαρτζιώτης Φώτης. ΠΡΟΧΩΡΗΜΕΝΑ ΘΕΜΑΤΑ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ ΔΙΚΤΥΩΝ ] Εργαστήριο 2

Άσκηση 1. (σημειώστε πως 1KB = 2 10 bytes, 1Mbps = 10 6 bits/sec).

VERSION 1.0 ΝΟΕΜΒΡΙΟΣ, 2016 ΤΕΧΝΟΛΟΓΙΕΣ ΥΠΟΛΟΓΙΣΤΙΚΟΥ ΝΕΦΟΥΣ ΔΗΜΙΟΥΡΓΩΝΤΑΣ ΤΟΠΟΛΟΓΙΕΣ ΔΙΚΤΥΩΝ ΣΤΟ CLOUDSIM ΕΠΙΜΕΛΕΙΑ: ΒΑΣΙΛΕΙΟΣ ΤΣΑΚΑΝΙΚΑΣ

Δίκτυο Άμεσης Σύνδεσης με Έλεγχο Πρόσβασης στο Μέσο

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

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

ΣΥΣΤΗΜΑΤΑ ΑΝΑΜΟΝΗΣ Queuing Systems Εισαγωγή

7. Προσομοίωση Λειτουργίας Ασύρματων Τοπικών Δικτύων

Πανεπιστήμιο Κύπρου DEPARTMENT OF COMPUTER SCIENCE

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

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

Τεχνικές Εκτίμησης Υπολογιστικών Συστημάτων Ενότητα 5: Εισαγωγή στην Προσομοίωση

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

ΙΚΤΥΑ ΕΠΙΚΟΙΝΩΝΙΩΝ Εργαστηριακή Άσκηση 5 Επίδοση Τοπικών ικτύων 802.3

Άσκηση 2 η Πρωτόκολλο επικοινωνίας TCP/IP

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

SMPcache. Ένα εργαλείο για προσομοίωση-οπτικοποίηση κρυφής μνήμης (Cache)

Μεταγωγή Τοπικής Κλίμακας

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

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

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

Σχήμα 1: TCP αποστολέας με παράθυρο αποστολέα = 1

Προσομοίωση Συστημάτων

ΣΥΣΤΗΜΑΤΑ ΑΝΑΜΟΝΗΣ Queuing Systems

How do loss and delay occur?

Adaptive Distributed Routing Algorithms & QoS in Mobile Networks. Καραβέτσιος Άκης MIS

Δίκτυα ΙΙ Τομέας Πληροφορικής,

MIPS Interactive Learning Environment. MILE Simulator. Version 1.0. User's Manual

Ethernet Ethernet ΙΕΕΕ CSMA/CD

6. Ethernet. 6.1 Εισαγωγή

Προσομοίωση Βιομηχανικής Παραγωγής & Επιχειρήσεων

ΠΛΗΡΟΦΟΡΙΚΗ Ι Εργαστήριο 1 MATLAB ΠΛΗΡΟΦΟΡΙΚΗ Ι ΕΡΓΑΣΤΗΡΙΟ 1. Θέμα εργαστηρίου: Εισαγωγή στο MATLAB και στο Octave

Εγχειρίδιο Ζωντανών Μεταδόσεων Υπηρεσιών Βίντεο. Πανεπιστημίου Κρήτης. Εγχειρίδιο τεχνικού μετάδοσης

ΕΝΔΕΙΚΤΙΚΕΣ ΑΣΚΗΣΕΙΣ

Επίπεδο δικτύου IP διευθυνσιοδότηση

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

Εργαστήριο Ethereal: ICMP

ΠΑΝΕΠΙΣΤΗΜΙΟΥ ΠΕΛΟΠΟΝΝΗΣΟΥ ΤΜΗΜΑ ΕΠΙΣΤΗΜΗΣ ΚΑΙ ΤΕΧΝΟΛΟΓΙΑΣ ΤΗΛΕΠΙΚΟΙΝΩΝΙΩΝ Υλοποίηση Δικτυακών Υποδομών και Υπηρεσιών

ΣΥΣΤΗΜΑΤΑ ΑΝΑΜΟΝΗΣ Queuing Systems Παράμετροι Συστημάτων Αναμονής Τύπος Little

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

Χρησιμοποιούμε από το Λογισμικό Προσομοίωσης AnyLogic το αρχείο-μοντέλο Call Center.alp που υπάρχει στο φάκελο \models\call Center\

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

Η-Υ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ. Εργαστήριο 1 Εισαγωγή στη C. Σοφία Μπαλτζή s.mpaltzi@di.uoa.gr

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

ProcSim οδηγίες χρήσης.

7. Hubs ή Switches? 7.1 Εισαγωγή

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

Transcript:

Πανεπιστήμιο Πειραιώς Τμήμα Ψηφιακών Συστημάτων Εργαστήριο μαθήματος Δίκτυα Υπολογιστών Ι Διδάσκουσα Δρ.Αρίστη Γαλάνη Ακαδημαϊκό Έτος 2016-2017

Εισαγωγή στο Εργαστήριο Δίκτυα Υπολογιστών Ι Δρ.Αρίστη Γαλάνη 2

Στοιχεία επικοινωνίας Γραφείο: 321 (Κέντρο Διαχείρισης Δικτύων), Κεντρικό Κτίριο (Οδός Μ.Καραολή & Α.Δημητρίου, 80) Ηλεκτρονική διεύθυνση: agalani@unipi.gr Ώρες γραφείου: Τρίτη 11.00-13.00 Δίκτυα Υπολογιστών Ι Δρ.Αρίστη Γαλάνη 3

Ομάδες εργαστηρίου 4 Ομάδες εργαστηρίου Εγγραφή στον Εύδοξο Από αύριο 7/3 έως Δευτέρα 13/3 1 η ομάδα και 3 η ομάδα Τετάρτη 14.00-16.00 2 η ομάδα Πέμπτη 14.00-16.00 Τετάρτη 16.00-18.00 (μία εβδομάδα στις 18/5) 4 η ομάδα Πέμπτη 14.00-16.00 Δίκτυα Υπολογιστών Ι Δρ.Αρίστη Γαλάνη 4

Εργαστηριακές Ασκήσεις 3 Εργαστηριακές Ασκήσεις Βρίσκονται στον δικτυακό τόπο του μαθήματος στον Εύδοξο (https://evdoxos.ds.unipi.gr) Έγγραφα Εργαστηριακές Ασκήσεις Δίκτυα Υπολογιστών Ι Δρ.Αρίστη Γαλάνη 5

Εργαστηριακές Ασκήσεις 3 Εργαστηριακές Ασκήσεις Στόχος: εισαγωγή στην προσομοίωση δικτύων Δίκτυα Υπολογιστών Ι Δρ.Αρίστη Γαλάνη 6

Προσομοίωση Τι είναι η προσομοίωση; Δίκτυα Υπολογιστών Ι Δρ.Αρίστη Γαλάνη 7

Προσομοίωση Τι είναι η προσομοίωση; Η αναπαραγωγή σεναρίων πραγματικών συνθηκών με την χρήση υπολογιστικών προγραμμάτων Δίκτυα Υπολογιστών Ι Δρ.Αρίστη Γαλάνη 8

Προσομοίωση Οι προσομοιώσεις στα δίκτυα υπολογιστών στη γενική τους μορφή συνίστανται από 3 στάδια: Στάδιο 1 Σχεδιασμός (Planning): περιλαμβάνει τον καθορισμό του προβλήματος, το σχεδιασμό του αντίστοιχου μοντέλου και την εξαγωγή της ομάδας των πειραμάτων/δοκιμών για το καθορισμένο μοντέλο προσομοίωσης. Συνίσταται η χρήση του 40% του συνολικού διαθέσιμου χρόνου και προσπάθειας σε αυτό το στάδιο Δίκτυα Υπολογιστών Ι Δρ.Αρίστη Γαλάνη 9

Προσομοίωση Οι προσομοιώσεις στα δίκτυα υπολογιστών στη γενική τους μορφή συνίστανται από 3 στάδια: Στάδιο 2 Υλοποίηση (Implementing): υλοποίηση των προγραμμάτων που συνίσταται από 3 βήματα Βήμα 1- Αρχικοποίηση (Initialization): πραγμάτωση αρχικών συνθηκών (π.χ. θέση μεταβλητών σε κατάλληλες τιμές) ώστε η προσομοίωση να ξεκινήσει από συγκεκριμένη (γνωστή) κατάσταση Βήμα 2- Παραγωγή αποτελεσμάτων (Result generation): η προσομοίωση δημιουργεί και παράγει γεγονότα (events), και συλλέγει απαραίτητη πληροφορία που παράχθηκε από τα συγκεκριμένα γεγονότα Βήμα 3- Επεξεργασία (Processing): τα δεδομένα που συλλέχθηκαν υφίστανται κατάλληλη επεξεργασία ώστε να «μεταφραστούν» σε πληροφορία απόδοσης που μας ενδιαφέρει Συνίσταται η χρήση του 20% του συνολικού διαθέσιμου χρόνου σε αυτό το στάδιο Δίκτυα Υπολογιστών Ι Δρ.Αρίστη Γαλάνη 10

Προσομοίωση Οι προσομοιώσεις στα δίκτυα υπολογιστών στη γενική τους μορφή συνίστανται από 3 στάδια: Στάδιο 3 Έλεγχος (Testing): επαλήθευση/επικύρωση του μοντέλου προσομοίωσης, πιθανότατα βελτίωση/προσαρμογή των πειραμάτων/δοκιμών (που καθορίστηκαν στο στάδιο 1), και ανάλυση των αποτελεσμάτων Χρήση του υπόλοιπου 40% του συνολικού διαθέσιμου χρόνου Δίκτυα Υπολογιστών Ι Δρ.Αρίστη Γαλάνη 11

Απόδοση Προσομοίωσης (Simulation Performance) Η απόδοση της προσομοίωσης αξιολογείται σε σχέση με τους ακόλουθους δείκτες: Ταχύτητα εκτέλεσης (Execution speed): πόσο γρήγορα η προσομοίωση ολοκληρώνεται Κόστος (Cost): Κόστος για την προμήθεια του απαραίτητου software/hardware, την ανάπτυξη simulation programs, και την απόκτηση simulation results Ακρίβεια (Fidelity): Αξιοπιστία των simulation results Η ακρίβεια μπορεί να αυξηθεί με την ενσωμάτωση περισσότερων στοιχείων στην προσομοίωση Επαναληπτικότητα (Repeatability): Η διασφάλιση ότι αν το πείραμα επαναληφθεί, τα αποτελέσματα θα είναι τα ίδια Κλιμάκωση (Scalability): Η επίδραση του μεγέθους του προβλήματος (π.χ. ο αριθμός των κόμβων, η εισερχόμενη κίνηση) σε άλλες μετρήσεις απόδοσης Δίκτυα Υπολογιστών Ι Δρ.Αρίστη Γαλάνη 12

Στοιχεία Προσομοίωσης (Simulation Components) Entities (οντότητες): αντικείμενα που αλληλεπιδρούν μεταξύ τους σε ένα simulation program Προκαλούν αλλαγές στην κατάσταση του συστήματος Στο πλαίσιο ενός computer network περιλαμβάνουν computer nodes, packets, flows of packets,κ.ά., ή μη φυσικά αντικείμενα, όπως ρολόγια προσομοίωσης Δίκτυα Υπολογιστών Ι Δρ.Αρίστη Γαλάνη 13

Στοιχεία Προσομοίωσης (Simulation Components) Resources (πόροι): περιορισμένα ιδεατά (virtual) στοιχεία (assets) που διαμοιράζονται μεταξύ των οντοτήτων π.χ. bandwidth Δίκτυα Υπολογιστών Ι Δρ.Αρίστη Γαλάνη 14

Στοιχεία Προσομοίωσης (Simulation Components) Activities (ενέργειες) & Events (γεγονότα): Οι οντότητες εκτελούν κάποιες ενέργειες που παράγουν γεγονότα και προκαλούν μεταβολές στην κατάσταση του συστήματος Χαρακτηριστικά παραδείγματα γεγονότων είναι η λήψη πακέτων (packet reception) και η ενημέρωση των διαδρομών (route update events) Δίκτυα Υπολογιστών Ι Δρ.Αρίστη Γαλάνη 15

Στοιχεία Προσομοίωσης (Simulation Components) Scheduler (οργανωτής): διατηρεί μία λίστα γεγονότων και τον χρόνο εκτέλεσής τους (execution time). Κατά τη διάρκεια της προσομοίωσης, με βάση το ρολόι προσομοίωσης (simulation clock), εκτελεί τα γεγονότα με χρονολογική σειρά Δίκτυα Υπολογιστών Ι Δρ.Αρίστη Γαλάνη 16

Στοιχεία Προσομοίωσης (Simulation Components) State & Global Variables Οι state variables (μεταβλητές κατάστασης) παρακολουθούν την κατάσταση του συστήματος (system state) Μπορούν να κατηγοριοποιηθούν ως local variables (τοπικές μεταβλητές) & global variables (καθολικές μεταβλητές) βάση του πεδίου λειτουργίας τους Οι local variables είναι έγκυρες σε μία περιορισμένη κλίμακα, ενώ οι global variables είναι «κατανοητές» από όλες τις οντότητες Γενικά, οι global state variables αντιπροσωπεύουν γενική πληροφορία που διαμοιράζεται μεταξύ διάφορων οντοτήτων, όπως ο συνολικός αριθμός κόμβων, πληροφορίες σχετικές με την γεωγραφική περιοχή, κλπ. Δίκτυα Υπολογιστών Ι Δρ.Αρίστη Γαλάνη 17

Στοιχεία Προσομοίωσης (Simulation Components) Random Number Generator (RNG): εισάγει τυχαιότητα σε ένα μοντέλο προσομοίωσης, παράγοντας τυχαίους αριθμούς Χωρίς τυχαιότητα τα αποτελέσματα κάθε εκτέλεσης της προσομοίωσης θα ήταν τα ίδια Δύο προσομοιώσεις για τις οποίες ο RNG επιλέγει διαφορετικές αρχικές θέσεις, θα παράγουν διαφορετικά αποτελέσματα προσομοίωσης Παράδειγμα: σε computer network simulation, μια packet arrival process συνήθως μοντελοποιείται ως random process και υλοποιείται με τη βοήθεια ενός RNG Δίκτυα Υπολογιστών Ι Δρ.Αρίστη Γαλάνη 18

Στοιχεία Προσομοίωσης (Simulation Components) Statistics Gatherer (συλλέκτης στατιστικών): συγκεντρώνει δεδομένα (π.χ. packet arrival & departure time) μέσω της χρήσης μεταβλητών. Αυτά τα δεδομένα μπορούν στη συνέχεια να χρησιμοποιηθούν για τον υπολογισμό μετρήσεων απόδοσης (π.χ. average queuing delay για data packets που «ταξιδεύουν» στο δίκτυο) Δίκτυα Υπολογιστών Ι Δρ.Αρίστη Γαλάνη 19

Confidence interval Χρήσιμο μαθηματικό εργαλείο που επιτρέπει την ποσοτικοποίηση του επιπέδου επαναληπτικότητας Δίκτυα Υπολογιστών Ι Δρ.Αρίστη Γαλάνη 20

Προσομοίωση για εμάς με.. NS-2 (Network Simulator version 2) Δίκτυα Υπολογιστών Ι Δρ.Αρίστη Γαλάνη 21

Τι είναι ο Network Simulator-2 (NS-2); O NS (Network Simulator) είναι ένας προσομοιωτής διακριτών γεγονότων προσανατολισμένος στην έρευνα και εκπαίδευση γύρω από τα δίκτυα Ο NS παρέχει σημαντική υποστήριξη Στην προσομοίωση πρωτοκόλλων επικοινωνίας, δρομολόγησης κ.ά. επάνω σε ενσύρματα αλλά και ασύρματα δίκτυα Στη σύγκριση πρωτοκόλλων Σε νέα αρχιτεκτονικά σχέδια NS-2 είναι ένα δωρεάν λογισμικό πρόγραμμα με μεγάλο πλήθος βιβλιοθηκών Ανοικτός κώδικας Δίκτυα Υπολογιστών Ι Δρ.Αρίστη Γαλάνη 22

Τι είναι ο Network Simulator-2 (NS-2); Ο NS-2 θεωρείται ένα ισχυρό εργαλείο προσομοίωσης, αλλά... απαιτεί μελέτη εξάσκηση κυρίως για την «πραγματική εργασία» στον NS-2 (δηλ. αλλαγές στον κώδικα) Είναι αποτέλεσμα συνεχιζόμενης ερευνητικής και προγραμματιστικής προσπάθειας Υπάρχουν λάθη στο software ανακαλύπτονται συνεχώς και διορθώνονται. Η επικύρωση της ορθότητας των αποτελεσμάτων προσομοίωσης είναι δική μας υπόθεση Δίκτυα Υπολογιστών Ι Δρ.Αρίστη Γαλάνη 23

Τι είναι ο Network Simulator-2 (NS-2); Ο δικτυακός τόπος της ομάδας εξέλιξης του NS είναι http://www.isi.edu/nsnam/ns/ Η ιστοσελίδα αυτή περιέχει βοήθεια σχετικά με τον NS καθώς και τον πηγαίο κώδικά του Οι οδηγίες χρήσεως του NS (αρχείο pdf) βρίσκονται στη διεύθυνση http://www.isi.edu/nsnam/ns/doc/ns_doc.pdf Δίκτυα Υπολογιστών Ι Δρ.Αρίστη Γαλάνη 24

Network Simulator-2 (NS-2) Υποστηριζόμενες πλατφόρμες FreeBSD, Linux, Solaris, Windows, Mac Για να «τρέξει» ο NS2 σε Windows-based operating systems, πρέπει να έχουμε Windows-based machines που εξομοιώνουν την λειτουργικότητα Unix-like περιβάλλοντος. Ένα σχετικό δημοφιλές πρόγραμμα είναι το Cygwin Μετά την εγκατάσταση του Cygwin, η ίδια διαδικασία με Unixbased installation μπορεί να ακολουθηθεί. Το Default Cygwin δεν περιέχει όλα τα packages που είναι απαραίτητα για να τρέξει NS2. Πιθανότατα ο χρήστης θα πρέπει να εγκαταστήσει manually τα επιπλέον packages Δίκτυα Υπολογιστών Ι Δρ.Αρίστη Γαλάνη 25

Network Simulator-2 (NS-2) NS2 συνίσταται από δύο key languages: C++ και Object-oriented Tool Command Language (otcl/ Tcl) Γιατί; Δίκτυα Υπολογιστών Ι Δρ.Αρίστη Γαλάνη 26

Network Simulator-2 (NS-2) NS2 συνίσταται από δύο key languages: C++ και Object-oriented Tool Command Language (OTcl) Διότι οι βασικές απαιτήσεις του προσομοιωτή είναι δύο Λεπτομερής προσομοίωση πρωτοκόλλου: Ταχύτητα χρόνου εκτέλεσης C++ : γρήγορη στην εκτέλεση αλλά αργή στις αλλαγές Γρήγορη μεταβολή παραμέτρων του configuration: Ευκολία χρήσης OTcl : εύκολη στην κωδικοποίηση αλλά τρέχει αργά Δίκτυα Υπολογιστών Ι Δρ.Αρίστη Γαλάνη 27

Network Simulator-2 (NS-2) Ο NS-2 είναι ένας προσομοιωτής διακριτών γεγονότων (discreteevent simulator) Φυσικές δραστηριότητες μεταφράζονται σε γεγονότα (events) π.χ. επαναμετάδοση πακέτου μετά από λήξη timeout Η «καρδιά» του NS-2 είναι ο scheduler Στην αρχή της προσομοίωσης ο χρήστης δρομολογεί έναν αριθμό από γεγονότα που θα εκτελεσθούν π.χ. έναρξη μιας εφαρμογής Τα αντικείμενα του scheduler δρομολογούν άλλα γεγονότα Όλα τα γεγονότα μπαίνουν σε μια λίστα ανάλογα με το χρόνο εκτέλεσή τους Ο scheduler αποσπά από τη λίστα το γεγονός είναι πρώτο, ενημερώνει το χρόνο, εκτελεί το γεγονός, αποσπά νέο γεγονός...κ.ο.κ μέχρι το γεγονός εξόδου Δίκτυα Υπολογιστών Ι Δρ.Αρίστη Γαλάνη 28

Network Simulator-2 (NS-2) Δυνατότητες Μοντέλα κίνησης (Traffic models) και Εφαρμογές (applications): Web, FTP, telnet, constant-bit rate(cbr), Πρωτόκολλα μεταφοράς (Transport protocols): TCP, UDP,.. Δρομολόγηση (Routing) και ουρές αναμονής (queuing): Static routing, Ad-Hoc routing Διαχείριση ουρών αναμονής (Queuing disciplines) Φυσικά μέσα διάδοσης (Physical media): Ενσύρματα, Ασύρματα, Δορυφορικά Δίκτυα Υπολογιστών Ι Δρ.Αρίστη Γαλάνη 29

Στις εργασίες θα χρησιμοποιήσουμε.. NS-2 για τον καθορισμό και την εκτέλεση της προσομοίωσης και την παραγωγή των αντίστοιχων αποτελεσμάτων (ίχνη - traces) NAM (Network AniMator) για την οπτικοποίηση (visualization) (γραφική απεικόνιση) της προσομοίωσης που εκτελέστηκε του NS Παρέχει GUI για την κατασκευή απλών σεναρίων Xgraph (xgraph.exe) για την αναπαράσταση των αποτελεσμάτων με τη δημιουργία γραφικών παραστάσεων Δίκτυα Υπολογιστών Ι Δρ.Αρίστη Γαλάνη 30

Network Simulator-2 (NS-2) Δίκτυα Υπολογιστών Ι Δρ.Αρίστη Γαλάνη 31

Εργαστηριακές Ασκήσεις 3 Εργαστηριακές Ασκήσεις 1 η Εργαστηριακή άσκηση Στην άσκηση αυτή θα γράψετε βήμα προς βήμα ένα Tcl script για τον NS, το οποίο προσομοιώνει μια απλή τοπολογία δικτύου. Θα μάθετε πώς εγκαθίστανται κόμβοι και ζεύξεις, πώς να στέλνετε δεδομένα από τον ένα κόμβο στον άλλον, πώς να παρακολουθείτε μια ουρά αναμονής και πώς να χρησιμοποιήσετε το NAM (Network Animator) για να αναπαραστήσετε γραφικά την προσομοίωση που κάνετε. Θα χρησιμοποιήσετε το Xgraph για να δημιουργήσετε γραφικές παραστάσεις της κίνησης στο δίκτυο που ήδη μελετάτε Δίκτυα Υπολογιστών Ι Δρ.Αρίστη Γαλάνη 32

Εργαστηριακές Ασκήσεις 3 Εργαστηριακές Ασκήσεις 2 η Εργαστηριακή άσκηση Συνθετότερα προβλήματα µε τον NS2 Θα ορίσουμε στον NS2 µια τοπολογία µε τέσσερις κόμβους, στην οποία ένας κόμβος λειτουργεί ως δρομολογητής και προωθεί τα δεδομένα που στέλνουν δύο κόμβοι στον τέταρτο κόμβο Θα βρούμε έναν τρόπο να διακρίνουμε τις ροές δεδομένων των δύο κόμβων αποστολής και θα δείξουμε πώς μπορεί να επιβλέπεται κάθε ουρά, ώστε να μπορούμε να αποφανθούμε για ερωτήματα όπως το πόσο γεμάτη είναι και πόσα πακέτα απορρίπτονται Δίκτυα Υπολογιστών Ι Δρ.Αρίστη Γαλάνη 33

Εργαστηριακές Ασκήσεις 3 Εργαστηριακές Ασκήσεις 3 η Εργαστηριακή άσκηση Μετάδοση δεδομένων σε δίκτυο με σχετικά σύνθετη τοπολογία θα ορίσετε στο NS2 ένα δίκτυο που αποτελείται από εννέα κόμβους και θα επιλέξετε δύο κόμβους του δικτύου, που δεν συνδέονται άμεσα μεταξύ τους, να ανταλλάσσουν δεδομένα Σκοπός είναι να δείτε πώς επηρεάζεται η δρομολόγηση της ροής των δεδομένων μεταξύ των κόμβων αποστολής και λήψης από τον αριθμό των παρεμβαλλόμενων κόμβων και ζεύξεων, καθώς και από το κόστος των ζεύξεων. Δίκτυα Υπολογιστών Ι Δρ.Αρίστη Γαλάνη 34

Εργαστηριακές Ασκήσεις 1 η Εργαστηριακή άσκηση Ξεκινώντας Δίκτυα Υπολογιστών Ι Δρ.Αρίστη Γαλάνη 35

Εργαστηριακές Ασκήσεις Βασικά στοιχεία.. Το εκτελέσιμο αρχείο του NS είναι το ns.exe Η διάταξη του δικτύου που θέλουμε να προσομοιώσουμε καθώς και όλα τα υπόλοιπα πρέπει να οριστούν σε ένα αρχείο κειμένου. Η γλώσσα που χρησιμοποιείται είναι η Tcl Μπορείτε να αρχίσετε τον NS από ένα παράθυρο εντολών (command prompt) και να τρέξετε τα αρχεία με την εντολή ns file.tcl υποθέτοντας ότι είστε στον κατάλογο (directory) που βρίσκεται το αρχείο (το file.tcl είναι το όνομα του κειμένου σε γλώσσα Tcl που περιγράφει την προσομοίωση) Τα αποτελέσματα της προσομοίωσης θα είναι είτε αρχεία που προορίζονται για χρήση στο NAM και το όνομά τους θα έχει τη μορφή filename.nam είτε αρχεία που προορίζονται για χρήση στο Χgraph (filename.tr). Τα ονόματα των αρχείων αυτών (δηλ. των filename) ορίζονται εντός του αρχείου Tcl της προσομοίωσης. Δίκτυα Υπολογιστών Ι Δρ.Αρίστη Γαλάνη 36

Εργαστηριακές Ασκήσεις Βασικά στοιχεία.. Μπορείτε να γράψετε τα Tcl scripts με οποιονδήποτε επεξεργαστή κειμένου (π.χ.το Notepad, το Textpad ή το Word σε Windows, Kedit, Kwrite, Nano, ακόμα και vi σε περιβάλλοντα Linux) Για τη δημιουργία του αρχείου Tcl θα πρέπει να δημιουργήσετε πρώτα ένα αρχείο Notepad με κατάληξη *.tcl, όπου θα γράψετε το script σε γλώσσα Tcl Μπορείτε να σώσετε το πρώτο αρχείο που θα δημιουργήσετε με την ονομασία exercise1.tcl, το οποίο θα αποτελεί βασικό πρότυπο (template) το οποίο θα μπορείτε να χρησιμοποιείτε για όλα τα αρχικά Tcl scripts Δίκτυα Υπολογιστών Ι Δρ.Αρίστη Γαλάνη 37

Εργαστηριακές Ασκήσεις Βασικά στοιχεία.. Αρχικά, πρέπει να δημιουργήσετε ένα αντικείμενο (object) προσομοίωσης, το οποίο πραγματοποιείται με την εντολή: set ns [new Simulator] Δίκτυα Υπολογιστών Ι Δρ.Αρίστη Γαλάνη 38

Εργαστηριακές Ασκήσεις Βασικά στοιχεία.. Στη συνέχεια χρειάζεται να δώσετε εντολή να ανοιχτεί ένα αρχείο από το πρόγραμμα για να γραφτούν τα δεδομένα που πρόκειται να χρησιμοποιηθούν από το ΝΑΜ, δηλαδή τα λεγόμενα trace data: set nf [open out.nam w] $ns namtrace-all $nf Η πρώτη γραμμή ανοίγει ένα αρχείο (namfile) με όνομα out.nam για εγγραφή Στη δεύτερη γραμμή λέμε στο αντικείμενο της προσομοίωσης που δημιουργήθηκε προηγουμένως να γράφει όλα τα δεδομένα που έχουν σχέση με το ΝΑΜ σ αυτό το αρχείο Δίκτυα Υπολογιστών Ι Δρ.Αρίστη Γαλάνη 39

Εργαστηριακές Ασκήσεις Βασικά στοιχεία.. Το επόμενο βήμα έχει ως στόχο να προσθέσει μια διαδικασία finish η οποία κλείνει το αρχείο δεδομένων trace. proc finish {} { global ns nf $ns flush-trace close $nf exit 0 } Το «proc» δηλώνει μία διεργασία (procedure) που σε αυτή την περίπτωση καλείται «finish» και δεν έχει arguments Το «global» καθορίζει ότι χρησιμοποιούνται μεταβλητές (variables) που δηλώνονται εκτός procedure Η μέθοδος προσομοίωσης flush-trace θα τοποθετήσει τα ίχνη στα αντίστοιχα files Η tcl command close κλείνει τα trace files Η εντολή εξόδου «exit» κλείνει την εφαρμογή και επιστρέφει το 0 ως κατάσταση του συστήματος (το 0 είναι το default για ολοκλήρωση χωρίς πρόβλημα. Άλλες τιμές μπορούν να χρησιμοποιηθούν όταν υπάρχει έξοδος επειδή υπήρχε κάποιο πρόβλημα). Δίκτυα Υπολογιστών Ι Δρ.Αρίστη Γαλάνη 40

Εργαστηριακές Ασκήσεις Βασικά στοιχεία.. Η επόμενη γραμμή λέει στο αντικείμενο προσομοίωσης να εκτελέσει τη διαδικασία finish μετά από χρόνο προσομοίωσης 5.0 sec. Ο NS σας παρέχει έναν πολύ απλό τρόπο να θέτετε τη σειρά των γεγονότων με την εντολή at. Τέλος, η τελευταία γραμμή αρχίζει την προσομοίωση. $ns at 5.0 "finish" $ns run Δίκτυα Υπολογιστών Ι Δρ.Αρίστη Γαλάνη 41

Εργαστηριακές Ασκήσεις Βασικά στοιχεία.. Αφού σώσετε το αρχείο, μπορείτε να το τρέξετε γράφοντας ns exercise1.tcl σε ένα παράθυρο εντολών. Αφού πραγματοποιηθεί η προσομοίωση, θα πρέπει να δημιουργηθεί ένα αρχείο.nam, στην περίπτωσή μας έχει όνομα out.nam, που θα έχει αποθηκευμένα τα δεδομένα της προσομοίωσης που είναι απαραίτητα για την γραφική απεικόνιση της. Αυτή θα μπορείτε να τη δείτε πληκτρολογώντας την εντολή nam out.nam στο παράθυρο εντολών. Θα πρέπει να ανοίξει ο Network Animator (NAM), αλλά δεν θα δείτε τίποτα παρά μια κενή εικόνα διότι μέχρι τώρα δεν έχετε ορίζει objects (nodes, links, κλπ.) ή events, δηλαδή δεν υπάρχουν δεδομένα για να προσομοιωθούν Δίκτυα Υπολογιστών Ι Δρ.Αρίστη Γαλάνη 42

Εργαστηριακές Ασκήσεις Βασικά στοιχεία.. Ένα αντικείμενο νέου κόμβου δημιουργείται με την εντολή $ns node set n0 [$ns node] set n1 [$ns node] $ns duplex-link $n0 $n1 1Mb 10ms DropTail Η γραμμή αυτή λέει στο αντικείμενο της προσομοίωσης να συνδέσει τους κόμβους n0 και n1 με μια αμφίδρομη ζεύξη εύρους ζώνης 1Mbps, καθυστέρηση 10ms και μια ουρά αναμονής DropTail (δηλ. αν η χωρητικότητα του buffer της εξερχόμενης ουράς (output queue) εξαντληθεί τα επιπλέον πακέτα απορρίπτονται) Για τον καθορισμό μίας μονόδρομης ζεύξης (directional link) το «duplex-link» αντικαθίσταται από το «simplexlink» Μπορούμε να ορίσουμε την χωρητικότητα του buffer capacity της ουράς που συνδέεται με κάθε link π.χ. #Set Queue Size of link (n0-n2) to 20 ( Σχόλιο (comment)) $ns queue-limit $n0 $n2 20 Δίκτυα Υπολογιστών Ι Δρ.Αρίστη Γαλάνη 43

Εργαστηριακές Ασκήσεις Βασικά στοιχεία.. Δίκτυα Υπολογιστών Ι Δρ.Αρίστη Γαλάνη 44

Εργαστηριακές Ασκήσεις Βασικά στοιχεία.. Έχοντας καθορίσει την τοπολογία του δικτύου (δηλ. τους κόμβους και τις αντίστοιχες ζεύξεις), πρέπει να καθορίσουμε την κίνηση μεταξύ τους, την πληροφορία δρομολόγησης (αποστολείς και αποδέκτες), τους agents (τα πρωτόκολλα) και τις αντίστοιχες εφαρμογές Δίκτυα Υπολογιστών Ι Δρ.Αρίστη Γαλάνη 45

Εργαστηριακές Ασκήσεις Βασικά στοιχεία.. Παράδειγμα #Δημιουργία ενός UDP agent και «προσάρτησή» του στον κόμβο «n0» set udp0 [new Agent/UDP] $ns attach-agent $n0 $udp0 #Δημιουργία μιας πηγής κίνησης CBR και «τοποθέτησή» της στο «udp0» set cbr0 [new Application/Traffic/CBR] #Προσδιορισμός της κίνησης για τον κόμβο n0 $cbr0 set packetsize_ 500 $cbr0 set interval_ 0.005 $cbr0 attach-agent $udp0 Οι γραμμές αυτές δημιουργούν έναν UDP agent και τον προσαρτούν στον κόμβο n0, στη συνέχεια προσαρτούν μια γεννήτρια κίνησης σταθερού ρυθμού bit (CBR: constant bit rate) στον UDP agent. Το μέγεθος πακέτου, packetsize, τίθεται ίσο προς 500 bytes και θα στέλνεται ένα πακέτο κάθε 0.005 sec. Δίκτυα Υπολογιστών Ι Δρ.Αρίστη Γαλάνη 46

Εργαστηριακές Ασκήσεις Βασικά στοιχεία.. Παράδειγμα set sink [new Agent/LossMonitor] $ns attach-agent $n1 $sink Δημιουργεί έναν Sink Agent που δρα ως αποδέκτης της κίνησης και τον προσαρτά στον κόμβο n1. $ns connect $udp0 $sink Οι δύο Agents συνδέονται μεταξύ τους. $ns at 0.5 "$cbr0 start" $ns at 4.5 "$cbr0 stop" Λέμε στον CBR agent πότε να στείλει τα δεδομένα και πότε να σταματήσει. Δίκτυα Υπολογιστών Ι Δρ.Αρίστη Γαλάνη 47

Εργαστηριακές Ασκήσεις Βασικά στοιχεία.. Θα χρησιμοποιήσετε το Xgraph για να δημιουργήσετε γραφικές παραστάσεις της κίνησης στο δίκτυο που μελετάτε. Γι αυτό θα πρέπει να δημιουργηθεί ένα αρχείο όπου θα καταχωρηθούν όλα τα δεδομένα της προσομοίωσης σχετικά με το «Xgraph» set f [open out.tr w] Δίκτυα Υπολογιστών Ι Δρ.Αρίστη Γαλάνη 48

Εργαστηριακές Ασκήσεις Βασικά στοιχεία.. Θα χρησιμοποιήσετε το Xgraph για να δημιουργήσετε γραφικές παραστάσεις της κίνησης στο δίκτυο που μελετάτε. Επίσης χρειαζόμαστε μια διαδικασία (procedure) καταγραφής των δεδομένων της κίνησης: proc record {} { global sink f set ns [Simulator instance] #Ορισμός της ώρας που η διαδικασία θα ξανακληθεί. set time 0.2 #Καταγραφή των bytes. set bw [$sink set bytes_] #Λήψη της τρέχουσας ώρας set now [$ns now] #Υπολογισμός του bandwidth και καταγραφή αυτού στο αρχείο puts $f "$now [expr (($bw/$time)*8)/1000000]" #Κάνει την τιμή bytes_ 0 $sink set bytes_ 0 #Επαναπρογραμματισμός της διαδικασίας $ns at [expr $now+$time] "record" } Δίκτυα Υπολογιστών Ι Δρ.Αρίστη Γαλάνη 49

Εργαστηριακές Ασκήσεις Η συνέχεια στο εργαστήριο Δίκτυα Υπολογιστών Ι Δρ.Αρίστη Γαλάνη 50

Ερωτήσεις Δίκτυα Υπολογιστών Ι Δρ.Αρίστη Γαλάνη 51