Η παρουσίαση φορτώνεται. Παρακαλείστε να περιμένετε

Η παρουσίαση φορτώνεται. Παρακαλείστε να περιμένετε

3 – Simple Network Δελτούζος Κωνσταντίνος

Παρόμοιες παρουσιάσεις


Παρουσίαση με θέμα: "3 – Simple Network Δελτούζος Κωνσταντίνος"— Μεταγράφημα παρουσίασης:

1 3 – Simple Network Δελτούζος Κωνσταντίνος
Δρ. Ηλεκτρολόγος Μηχανικός και Τεχνολογίας Υπολογιστών

2 Προσομοίωση απλού δικτύου
Σενάριο tcl 4 κόμβοι (n0, n1, n2, n3) συνδεδεμένοι σε τοπολογία αστέρα 2 κόμβοι (n0, n1) γενούν πακέτα με παραλήπτη τον n3 Ο n2 έχει μια ουρά που αποθηκεύει τα πακέτα που παραλαμβάνει, η οποία όταν γεμίσει δεν αποθηκεύονται νέα πακέτα (DropTail) Δημιουργία trace file και αναπαράσταση με το εργαλείο NAM

3 Προσομοίωση απλού δικτύου

4 Εκτέλεση σεναρίου ns ns-simple.tcl

5 Αρχικοποίηση προσομοίωσης
set ns [new Simulator] Δημιουργεί ένα στιγμιότυπο αντικειμένου NS simulator και το αναθέτει στην μεταβλητή ns Το αντικείμενο "Simulator" έχει αρκετές μεθόδους που κάνουν τα παρακάτω: Δημιουργία αντικειμένων όπως κόμβοι δικτύων και ζεύξεις Διασύνδεση δημιουργούμενων αντικειμένων (πχ. attach- agent) Καθορισμός παραμέτρων δικτύου Δημιουργία συνδέσεων μεταξύ των agents (πχ. διασύνδεση μεταξύ ενός "tcp" και ενός "sink" agent)

6 Χρωματισμός ροών πακέτων
$ns color [fid] [color] $ns color 1 Blue $ns color 2 Red Καθορισμός χρώματος των πακέτων για μια ροή με id (fid) Δεν επηρεάζει την ίδια την εξομοίωση αλλά μόνο την αναπαράσταση στο εργαλείο NAM

7 Δημιουργία trace file set tf [open out.tr w] $ns trace-all $tf
Δημιουργία ενός αρχείου "out.tr" στο οποίο θα αποθηκευτεί το trace file της εξομοίωσης Το tf είναι η μεταβλητή που χρησιμοποιούμε για να αναφερθούμε στο αρχείο αυτό Ομοίως και για το trace file της οπτικοποίησης με το εργαλείο NAM

8 Ορισμός διαδικασίας Post-simulation
proc finish {…} Ορισμός διεργασίας που θα εκτελεστεί στο τέλος της εξομοίωσης με την εντολή $ns at 5.0 "finish« Ουσιαστικά περιγράφουμε τις διεργασίες που πρέπει να εκτελεστούν μετά την εξομοίωση (κλείσιμο αρχείων, εκτέλεση εργαλείου NAM)

9 Δημιουργία κόμβων set n0 [$ns node] set n1 [$ns node]
Κάθε κόμβος είναι ένα σύνθετο αντικείμενο που αποτελείται από μια διεύθυνση και ένα port

10 Δημιουργία ζεύξεων $ns duplex-link [node1] [node2] [bandwidth] [delay] [queue-type] $ns duplex-link $n0 $n2 2Mb 10ms DropTail $ns duplex-link $n1 $n2 2Mb 10ms DropTail $ns duplex-link $n2 $n3 1.7Mb 20ms DropTail Αμφίδρομη σύνδεση (duplex) μεταξύ δύο κόμβων με συγκεκριμένα στοιχεία (bandwidth, delay, queue)

11 Τύποι ουρών DropTail: Ουσιαστικά μια FIFO ουρά
RED (Random Early-Detection): Παρακολουθεί το μέγεθος της ουράς και κάνει drop τα πακέτα με βάση την πιθανότητα να προκύψει overflow της ουράς FQ (Fair Queuing): Κατανέμει τους κοινόχρηστους πόρους δίκαια SFQ (Stohastic Fair Queuing): Fair Queuing με μια στοχαστικότητα DRR (Deficit Round Robin): Round-robin με βάρος σε κάθε κόμβο CBQ (Class-Based Queueing): Διαμοιρασμός πόρων ιεραρχικά βάσει διευθύνσεων IP, πρωτοκόλλων και τύπων εφαρμογών

12 Μέγεθος ουράς $ns queue-limit [node1] [node2] [number]
$ns queue-limit $n2 $n3 10 Ορίζουμε ότι η ουρά εξυπηρέτησης πακέτων από τον n2 στον n3 έχει μέγεθος 10

13 Ορισμός τοπολογίας για το NAM
$ns duplex-link-op [node1] [node2] [options...] $ns duplex-link-op $n0 $n2 orient right-down $ns duplex-link-op $n1 $n2 orient right-up $ns duplex-link-op $n2 $n3 orient right

14 Παρακολούθηση ουράς για το NAM
$ns duplex-link-op [node1] [node2] [options...] $ns duplex-link-op $n2 $n3 queuePos 0.5

15 Ορισμός agent για πρωτόκολλα δικτύου
set tcp [new Agent/TCP] άλλοι agents: Agent/TCP, Agent/TCPSink, Agent/UDP, Agent/Null $ns attach-agent [node] [agent] Σύνδεση του agent σε κάποιον υπάρχοντα κόμβο

16 Ορισμός agent για εφαρμογές/κίνηση
set ftp [new Application/FTP] set cbr [new Application/Traffic/CBR] Διασύνδεση μεταξύ 2 agents $ns connect [agent1] [agent2]

17 Εκτέλεση εντολών κατά τη διάρκεια του σεναρίου
$ns at [time] ["string"] $ns at 0.1 "$cbr start" $ns at 1.0 "$ftp start“ $ns at 4.0 "$ftp stop“ $ns at 4.5 "$cbr stop“ $ns at 4.5 "$ns detach-agent $n0 $tcp ; $ns detach- agent $n3 $sink“ $ns at 5.0 "finish"

18 Εκτύπωση αποτελεσμάτων στην κονσόλα
puts "CBR packet size = [$cbr set packet_size_]“ puts "CBR interval = [$cbr set interval_]"

19 Εκτέλεση σεναρίου $ns run

20 Contact: deltouzos@upatras.gr
Τέλος Παρουσίασης Ερωτήσεις; Contact:


Κατέβασμα ppt "3 – Simple Network Δελτούζος Κωνσταντίνος"

Παρόμοιες παρουσιάσεις


Διαφημίσεις Google