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

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

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

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

Ns-allinone. Currently the package contains:

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

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

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

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

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

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

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

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

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

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

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

Μάθημα 6: Αρχιτεκτονική TCP/IP

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

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

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

1.2.2 Το μοντέλο δικτύωσης TCP/IP 1 / 26

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

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

Πανεπιστήμιο Πειραιά Τμήμα Ψηφιακών Συστημάτων. ίκτυα Υπολογιστών Ι. To Μοντέλο OSI. Αναπλ. Καθηγ. Π. εμέστιχας

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

Τεχνολογία TCP/IP ΙΑ ΙΚΤΥΩΣΗ- INTERNET. Τεχνολογίες Τηλεκπαίδευσης & Εφαρµογές - Ιούλιος

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

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

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

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

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

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

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

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

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

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

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

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

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

1.8 Το μοντέλο OSI 1 / 33

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

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

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

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

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

Ερωτήσεις / Απαντήσεις Πιστοποίησης (Επικοινωνίες Δεδομένων)

Α5.1 Εισαγωγή στα Δίκτυα. Α Λυκείου

Δίκτυα και Διαδίκτυο

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

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

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

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

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

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

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

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

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

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

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

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

Επικοινωνία. Χάρης Μανιφάβας Τμήμα Εφ. Πληροφορικής & Πολυμέσων ΤΕΙ Κρήτης. Κατανεμημένα Συστήματα (E) Επικοινωνία 1

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

ΔΙΚΤΥΑ Η/Υ Ι. Εισαγωγή στα Δίκτυα Επικοινωνιών. Διδάσκων: Γεώργιος Ν. Μπάρδης

Φύλλο Κατανόησης 1.8

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

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

Πρόότυπο Αναφοράάς Open Systems Interconnection/OSI. 1. Τεχνολογία Δικτύων Επικοινωνιών, Βιβλίο Α τάξης 2 ου Κύκλου ΤΕΕ, ΥΠΕΠΘ

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

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

ΕΑΠ/ΠΛΗ22/ΑΘΗ.3 4 η ΟΣΣ 15/03/2014 Συμπληρωματικές Διαφάνειες

ΕΠΛ 003: ΕΠΙΣΤΗΜΗ ΤΗΣ ΠΛΗΡΟΦΟΡΙΚΗΣ ΚΑΙ ΠΛΗΡΟΦΟΡΙΚΑ ΣΥΣΤΗΜΑΤΑ

Κεφάλαιο > Ε Π Α Ν Α Λ Η Ψ Η Επικοινωνιακό Υποδίκτυο / TCP / UDP. Σελ

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

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

Πρόγραμμα Πιστοποίησης Γνώσεων και Δεξιοτήτων H/Y ΕΝΟΤΗΤΑ 1: «ΒΑΣΙΚΕΣ ΕΝΝΟΙΕΣ ΠΛΗΡΟΦΟΡΙΚΗΣ»

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

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

Κινητές Επικοινωνίες & Τηλεπικοινωνιακά Δίκτυα

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

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

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

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

Κεφάλαιο 2. Υπολογιστές και Τεχνολογία Επικοινωνιών Παρελθόν - Παρόν - Μέλλον

Τοπικά Δίκτυα. Ethernet Δίκτυα Δακτυλίου, (Token Ring) Άλλα Δίκτυα Σύνδεση Τοπικών Δικτύων.

Κεφάλαιο 12. Επικοινωνίες-Δίκτυα-Διαδίκτυο. Εξαιρούνται οι παράγραφοι:

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

ΕΠΑΝΑΛΗΠΤΙΚΟ ΤΕΣΤ ΣΤΙΣ ΕΝΟΤΗΤΕΣ

Κεφάλαιο 5: Τοπικά ίκτυα

Παραδείγµατα δικτυακών τεχνολογιών. Ethernet Internet ATM

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

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

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

ΠΡΩΤΟΚΟΛΛΟ TCP/IP ΜΑΚΡΟΠΟΥΛΟΣ ΝΙΚΟΛΑΟΣ

Ερώτηση 1 η : Τι είναι τα πρωτόκολλα επικοινωνίας? : Ποιες είναι οι λειτουργίες των πρωτοκόλλων. Ερώτηση 2 η επικοινωνίας?

α. Το μέγιστο μήκος δεδομένων του ωφέλιμου φορτίου του πλαισίου Ethernet είναι 1500 οκτάδες. ΣΩΣΤΟ

ΔΙΚΤΥΑ ΥΠΟΛΟΓΙΣΤΩΝ Ι. Σημειώσεις Θεωρίας

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

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

Εφαρμογές Πληροφορικής

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

Φύλλο Εργασίας 1 ου Κεφαλαίου

Transcript:

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

ΕΙΣΑΓΩΓΗ 2

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

Ταξινόμηση δικτύων (1) Local Area Networks (LΑΝs) Τοπικά, ιδιωτικά δίκτυα, συνήθως μέσα σε ένα κτήριο ή μια περιοχή λίγων χιλιομέτρων. Χρήσιμα για τη διασύνδεση προσωπικών Η/Υ ή σταθμών μιας μικρής επιχείρησης 4

Ταξινόμηση δικτύων (2) Metropolitan Area Networks (MANs) Ένα μητροπολιτικό δίκτυο καλύπτει μια πόλη. Χρησιμοποιείται συχνά από παρόχους καλωδιακής τηλεόρασης/ Internet 5

Ταξινόμηση δικτύων (3) Wide Area Networks (WANs) Καλύπτει μια ευρεία περιοχή, π.χ. μια χώρα ή ήπειρο. Περιέχει πολλά υποδίκτυα που ανήκουν π.χ. σε παρόχους τηλεφωνίας, Internet, κτλ. 6

Ταξινόμηση δικτύων (4) Ασύρματα δίκτυα System interconnection Συνδέει τα συστατικά ενός Η/Υ (π.χ. πληκτρολόγιο, ποντίκι). Έχει πολύ μικρή εμβέλεια Wireless LANs Συνδέει Η/Υ με άλλες συσκευές. Συναντάται σε σπίτια και μικρές επιχειρήσεις Wireless WANs Χρησιμοποιούνται σε συστήματα ευρείας περιοχής, π.χ. τα δίκτυα κινητής τηλεφωνίας 7

Το μοντέλο του OSI (1) Προτάθηκε από το Διεθνή Οργανισμό Προτύπων (International Standards Organization ISO) Η ονομασία του είναι Open Systems Interconnection Αποτελείται από 7 στρώματα/επίπεδα 8

Το μοντέλο του OSI (2) Φυσικό Επίπεδο Μεταδίδει bits πάνω από ένα μέσο/κανάλι επικοινωνίας Ενσύρματα μέσα, π.χ. καλώδιο χαλκού, οπτικές ίνες, κτλ Ασύρματα μέσα, π.χ. ο αέρας Το μέσο μπορεί να Χρησιμοποιηθεί για peer-to-peer επικοινωνία μεταξύ δύο συσκευών Διαμοιρασθεί για να έχουν ταυτόχρονη πρόσβαση πολλοί χρήστες (shared media access) Χαρακτηριστικά Ρυθμός μετάδοσης (bit rate) Καθυστέρηση (propagation) Ρυθμός εσφαλμένων bit (bit error rate) 9

Το μοντέλο του OSI (3) Επίπεδο Ζεύξης Δεδομένων Ανίχνευση σφαλμάτων που συμβαίνουν στο φυσικό επίπεδο Cyclic Redundancy Check Επιδιόρθωση σφαλμάτων που συμβαίνουν στο φυσικό επίπεδο Επαναμετάδοση δεδομένων Forward Error Correction Μπορεί να διαιρεθεί σε 2 υπό-επίπεδα στην περίπτωση του shared media access Επίπεδο ελέγχου πρόσβασης στο μέσο (Media Access Control) Επίπεδο ελέγχου λογικών ζεύξεων (Logical Link Control) Επίπεδο Δικτύου Εκτελεί λειτουργίες δρομολόγησης Αναφέρει σφάλματα σχετικά με την παράδοση των πακέτων 10

Το μοντέλο του OSI (4) Επίπεδο Μεταφοράς Προσφέρει αξιόπιστη μεταφορά δεδομένων Παραλαμβάνει τα δεδομένα, τα τεμαχίζει σε μικρότερα τμήματα και διασφαλίζει ότι θα φτάσουν επιτυχώς στον παραλήπτη Διορθώνει τα σφάλματα του επιπέδου δικτύου που διαφύγανε από το επίπεδο ζεύξης δεδομένων Συνηθέστερα πρωτόκολλα μεταφοράς Transmission Control Protocol (TCP) Επιβεβαιώνεται η αξιόπιστη αποστολή και λήψη δεδομένων Μεταφορά δεδομένων χωρίς λάθη μεταξύ του επιπέδου εφαρμογής και του φυσικού επιπέδου Διασφαλίζει τη σωστή σειρά των δεδομένων που φτάνουν στο επίπεδο εφαρμογής User Datagram Protocol (UDP) Δεν εγγυάται την αξιόπιστη επικοινωνία καθώς δεν έχει τους μηχανισμούς επιδιόρθωσης σφαλμάτων του TCP Γρήγορο και αποτελεσματικό 11

Το μοντέλο του OSI (5) Επίπεδο Συνόδου Ελέγχει την ανταλλαγή δεδομένων μεταξύ 2 Η/Υ Εκκινεί, διαχειρίζεται και τερματίζει τη σύνδεση μιας τοπικής εφαρμογής με μια απομακρυσμένη Επίπεδο Παρουσίασης Μετασχηματίζει τα δεδομένα στην μορφή που τα αναμένει το επίπεδο εφαρμογής Κρυπτογράφηση, συμπίεση, κωδικοποίηση, κτλ Επίπεδο Εφαρμογής Παρέχει ένα σύνολο πρωτοκόλλων που χρησιμοποιούν οι χρήστες HTTP, FTP, SMTP, Telnet, κτλ 12

Το μοντέλο TCP/IP Επίπεδο Διασύνδεσης Περιλαμβάνει τον οδηγό της κάρτας δικτύου του Η/Υ και το κατάλληλο λογισμικό για την αλληλεπίδραση με αυτή Επίπεδο Διαδικτύου Χειρίζεται την κίνηση των πακέτων στο δίκτυο, π.χ. δρομολόγηση Επίπεδο Μεταφοράς Παρέχει στο στρώμα εφαρμογής τη ροή των δεδομένων μεταξύ 2 Η/Υ Επίπεδο Εφαρμογής Παρέχει ένα σύνολο πρωτοκόλλων που χρησιμοποιούν οι χρήστες HTTP, FTP, SMTP, Telnet, κτλ 13

Παράδειγμα ενός δικτύου TCP/IP S D R1 R2 Application Application Transport Transport Internet Internet Internet Internet Network Interface Network Interface Network Interface Network Interface 14

NETWORK SIMULATOR-2 15

Τι είναι ο Network Simulator-2 (NS-2); Είναι ένας προσομοιωτής διακριτών γεγονότων προσανατολισμένος στην έρευνα και εκπαίδευση γύρω από τα δίκτυα επικοινωνιών/υπολογιστών Είναι ένα δωρεάν λογισμικό πρόγραμμα με μεγάλο πλήθος βιβλιοθηκών, γραμμένες σε Tcl/OTcl αλλά και σε C/C++ Υποστηριζόμενες πλατφόρμες FreeBSD, Linux, Solaris, Windows, Mac 16

Δημιουργία ενός δικτύου στον NS-2 (1) 17

Δημιουργία ενός δικτύου στον NS-2 (2) Δημιουργία κόμβων Διαμόρφωση φυσικού επιπέδου Διαμόρφωση επιπέδου μεταφοράς Διαμόρφωση επιπέδου εφαρμογής 18

Δημιουργία μιας βασικής προσομοίωσης NS-2 (1) Δημιουργία του event scheduler Δημιουργία scheduler set ns [new Simulator] Προγραμματισμός γεγονότος $ns at <time> <event> <event>: οποιαδήποτε αποδεκτή NS-2/TCL εντολή π.χ. $ns at 0.5 $cbr start $ns at 4.5 $cbr stop $ns at 5.0 finish Εκκίνηση scheduler $ns run 19

Δημιουργία μιας βασικής προσομοίωσης NS-2 (2) Δημιουργία του δικτύου (κόμβοι και ζεύξεις) Κόμβοι (Nodes) set n0 [$ns node] set n1 [$ns node] Ζεύξεις (Links): ενώνουν 2 κόμβους $ns duplex-link $n0 $n1 <bandwidth> <delay><queue_type> <τύπος ζεύξης> simplex-link και duplex-link <bandwidth> χωρητικότητα (ταχύτητα ζεύξης) <delay> προσδιορίζει την καθυστέρηση διάδοσης <queue_type> καθορίζει την πολιτική διαχείρισης ουρών (DropTail, RED, CBQ, FQ, SFQ, DRR) n0 n1 20

Δημιουργία μιας βασικής προσομοίωσης NS-2 (3) Διαμόρφωση επιπέδου μεταφοράς: UDP Πηγή και αποδέκτης set u_src [new Agent/UDP] set u_dst [new Agent/NULL] Επισύναψη στους κόμβους και μετά σύνδεσή τους $ns attach-agent $n0 $u_src $ns attach-agent $n1 $u_dst $ns connect $u_src $u_dst udp n0 n1 null 21

Δημιουργία μιας βασικής προσομοίωσης NS-2 (4) Διαμόρφωση επιπέδου μεταφοράς: TCP Πηγή και αποδέκτης set t_src [new Agent/TCP/Newreno] set t_dst [new Agent/TCPSink] Ο Newreno είναι αλγόριθμος αποφυγής συμφόρησης στο TCP tcp n0 Επισύναψη στους κόμβους και μετά σύνδεσή τους $ns attach-agent $n0 $t_src $ns attach-agent $n1 $t_dst $ns connect $t_src $t_dst n1 sink 22

Δημιουργία μιας βασικής προσομοίωσης NS-2 (5) Διαμόρφωση επιπέδου εφαρμογής: FTP Δημιουργία μοντέλου κίνησης ftp set ftp [new Application/FTP] η εξ ορισμού (default) περίπτωση αναφέρεται σε άπειρο μέγεθος αρχείου tcp Πρόσδεση σε TCP κανάλι n0 $ftp attach-agent $t_src Δρομολόγηση χρόνου έναρξης n1 $ns at <time> $ftp start sink 23

Δημιουργία μιας βασικής προσομοίωσης NS-2 (6) Διαμόρφωση επιπέδου εφαρμογής: CBR Δημιουργία μοντέλου κίνησης set cbr [new Application/Traffic/CBR] Χαρακτηριστικά της κίνησης $cbr set packetsize_ 512 $cbr set interval_ 0.250 cbr udp n0 Πρόσδεση σε UDP κανάλι $cbr attach-agent $u_src Δρομολόγηση χρόνου έναρξης $ns at <time> $cbr start n1 null 24

Δημιουργία μιας βασικής προσομοίωσης NS-2 (7) Καταγραφή πακέτων σε όλες τις ζεύξεις set f [open out.tr w] $ns trace-all $f Καταγραφή πακέτων για χρήση του NAM set nf [open out.nam w] $ns namtrace-all $nf 25

Βασική μορφή trace file 1. Event (+ enque, - deque, r receive, d drop) 2. time of event 3. input node της ζεύξης που συμβαίνει το event 4. output node της ζεύξης που συμβαίνει το event 5. packet type (tcp,udp,cbr,sip,...) 6. packet size (σε bytes, encoded στην IP header) 7. flags (για διάφορες λειτουργίες π.χ. για μείωση παραθύρου συμφόρησης) 8. flow id (σε περίπτωση IPv6 ή σαν color id) 9. source address (<node.port>) 10. destination address (<node.port>) 11. seq num (αύξων αριθμός πακέτου για αναλύσεις, ακόμα και για UDP) 12. pkt id (μοναδικό αναγνωριστικό πακέτου) 26

Παράδειγμα ενός trace file... + 11.533441 1 2 tcp 1440 ------- 12 1.2 2.4 96 2092 r 11.535694 1 2 tcp 1440 ------- 12 1.2 2.4 65 1527-11.537214 1 2 exp 180 ------- 100 0.2 2.13 284 1528-11.538654 1 2 cbr 1440 ------- 101 1.11 2.14 155 1530 r 11.547214 1 2 tcp 1440 ------- 12 1.2 2.4 66 1529 + 11.54728 1 2 tcp 1440 ------- 12 1.2 2.4 97 2095 r 11.548654 1 2 exp 180 ------- 100 0.2 2.13 284 1528 + 11.55 1 2 cbr 1440 ------- 101 1.11 2.14 211 2096-11.550174 1 2 tcp 1440 ------- 12 1.2 2.4 67 1534 r 11.560174 1 2 cbr 1440 ------- 101 1.11 2.14 155 1530-11.561694 1 2 exp 180 ------- 100 0.2 2.13 285 1532 + 11.56222 1 2 tcp 1440 ------- 12 1.2 2.4 98 2097-11.563134 1 2 tcp 1440 ------- 12 1.2 2.4 68 1537 r 11.571694 1 2 tcp 1440 ------- 12 1.2 2.4 67 1534 r 11.573134 1 2 exp 180 ------- 100 0.2 2.13 285 1532-11.574654 1 2 exp 180 ------- 100 0.2 2.13 286 1536... 27

Εγκατάσταση του NS-2 Απαιτήσεις για εγκατάσταση του NS-2 Ένας Unix like Η/Υ (FreeBSD, Linux, Solaris), ένας C++ compiler, 320MB αποθηκευτικού χώρου Για εγκατάσταση του NS-2 σε windows απαιτέιται Linux emulator π.χ. Cygwin (linux-like περιβάλλον για Windows) : Μια DLL (cygwin1.dll) = Linux API emulation layer που παρέχει την απαραίτητη Linux API λειτουργικότητα Συλλογή εργαλείων, που παρέχουν ένα Linux «look and feel». Αρκετά πειραματικό, προτιμούμε εγκατάσταση σε Linux 2 τρόποι εγκατάστασης του NS-2 Εγκατάσταση από τα ξεχωριστά κομμάτια του Εγκατάσταση από το πακέτο all-in-one (όλα σε ένα) Παράδειγμα εγκατάστασης του πακέτου ns-allinone-2.33 σε Linux μηχανήματα 28

Εγκατάσταση του NS-2 σε Linux (1) Βήμα 1: κατεβάζουμε το πακέτο ns-allinone (έκδοση 2.33) από την επίσημη ιστοσελίδα του NS-2 για εκδόσεις πριν το 2005 -> http://www.isi.edu/nsnam/ns πλέον, από την αποθήκη πηγαίου κώδικα SourceForge.net -> http://sourceforge.net/project/showfiles.php?group_id=149743 Βήμα 2: επιλέγουμε ένα directory εργασίας έστω το /home/student και αντιγράφουμε το αρχείο Βήμα 3: αποσυμπιέζουμε το αρχείο $ tar xzvf ns-allinone-2.33.tar Βήμα 4: Εντός του φακέλου ns-allinone, τρέχουμε το script εγκατάστασης $ cd ~/ns-allinone-2.33 $./install 29

Εγκατάσταση του NS-2 σε Linux (2) Βήμα 5: διαμορφώνουμε το προσωπικό μας.bashrc αρχέιο στο home directory για τη χρήση του NS-2 $ cd ~ ή cd /home/student $ nano.bashrc & Δηλ. προσθέτουμε στο αρχείο τις ακόλουθες γραμμές για τα εκτελέσιμα του NS και της tcl LD_LIBRARY_PATH και TCL_LIBRARY που είναι μεταβλητές περιβάλλοντος (environment variables) και δείχνουν σε βιβλιοθήκες (libraries απαραίτητες) για τon NS Η εντολή εξαρτάται από τον shell που χρησιμοποιείται) export PATH="$PATH:/home/student/ns-allinone- 2.33/bin:/home/student/ns-allinone-2.33/tcl 8.4.14/unix:/home/student/nsallinone-2.33/tk8.4.18/unix" export LD_LIBRARY_PATH="/home/student/ns-allinone-2.33/otcl- 1.13:/home/student/ns-alli none-2.33/lib" export TCL_ LIBRARY="/home/student/ns-allinone-2.33/tcl8.4.18/library" 30

Εγκατάσταση του NS-2 σε Linux (3) Βήμα 6: Βγείτε από το τρέχον τερματικό και εκτελέστε ένα νέο και κάντε έλεγχο αν τρέχει ο NS-2 $ ns % Βήμα 7: (προαιρετικό) τρέξτε κάποιο από τα παραδείγματα π.χ. $ cd ~/ns-allinone-2.33/ns-2.33/tcl/ex $ ns simple.tcl 210 0.0037499999999999999 running nam... Βήμα 8: (προαιρετικό) Επικυρώστε την εγκατάσταση. Πηγαίνετε στο directory του NS και τρέξτε validate (χρονοβόρο) $ cd ~/ns-allinone-2.33/ns-2.33 $./validate 31