Δίκτυα Υπολογιστών II Εργασία 1 η Παράδοση στο e-class Προθεσµία: 6/4/2014 Σωτήρης Διαµαντόπουλος, Σωτήρης-Άγγελος Λένας {sdiaman, slenas} @ ee.duth.gr Στα αρχεία µε όνοµα Ergasia1_a.tcl και Ergasia1_b.tcl, τα οποία βρίσκονται στη σελίδα του µαθήµατος, βρίσκεται υλοποιηµένη η παρακάτω τοπολογία: Στη γενική τοπολογία του παραπάνω δικτύου βρίσκονται συνδεδεµένοι n αποστολείς (sources) και n παραλήπτες (sinks). Σενάριο 1: Εντοπισµός σηµείων knee και cliff της συµφόρησης α) Επίδραση αριθµού ροών και ταχύτητας backbone καναλιού Στα πλαίσια του πρώτου σεναρίου θα παρατηρηθούν τα χαρακτηριστικά σηµεία knee και cliff στην απόδοση του συστήµατος. Για να το καταφέρουµε αυτό, παίρνουµε µετρήσεις της απόδοσης του συστήµατος ανά τακτά χρονικά διαστήµατα µέσω της συνάρτησης system_throughput. Η συγκεκριµένη
συνάρτηση στο τέλος εξάγει και το συνολικό throughput του συστήµατος. Επίσης, η συµφόρηση σχετίζεται και µε τη συνολική καθυστέρηση των πακέτων από τη στιγµή που φεύγουν από την πηγή µέχρι τη στιγµή που παραλαµβάνονται από τον παραλήπτη. Μπορούµε να µετρήσουµε την καθυστέρηση αυτή µέσω του awk script measure_delay.awk. Θα χρησιµοποιηθούν δύο παραλλαγές της παραπάνω τοπολογίας (Ergasia1_a.tcl) µε σκοπό να γίνει σύγκριση αποτελεσµάτων µεταξύ των δύο αυτών τοπολογιών Τοπολογία 1 Αριθµός sources και sinks (ροές) n = 17 Bandwidth Backbone καναλιού bw_backbone = 4 Mbps Τοπολογία 2 Σύµφωνα µε τον αριθµό του Α.E.Μ. σας (έστω WXYZ τα τέσσερα ψηφία του) να θέσετε τις παρακάτω τιµές στην τοπολογία. Αριθµός sources και sinks n = 22+Ζ Bandwidth Backbone καναλιού bw_backbone = 6 + Υ/4 Mbps Και για τις δύο τοπολογίες ρυθµίστε το µέγεθος του buffer του Router 1 να είναι ίσο µε 100 πακέτα, το χρόνο εκκίνησης των εφαρµογών ίσο µε 0.3 sec και το συνολικό χρόνο του πειράµατος ίσο µε 20 sec. Ερωτήµατα: 1) Να κάνετε τις συγκριτικές γραφικές παραστάσεις µεταξύ των δύο τοπολογιών (παραθέτοντας ένα διάγραµµα ανά υποερώτηµα) για τις παρακάτω µετρικές:
a. Στιγµιαίο throughput συστήµατος σε σχέση µε το χρόνo b. Συνολική καθυστέρηση αποστολής κάθε πακέτου (Σηµείωση: Η ροή της οποίας η καθυστέρηση αποστολής πακέτων θα µετρηθεί στο ερώτηµα αυτό εξαρτάται από το Α.E.Μ. σας (έστω WXYZ τα 4 τελευταία ψηφία του) και υπολογίζεται από τη σχέση Z+3.) c. Συνολικό throughput συστήµατος 2) Να σχολιάσετε τα αποτελέσµατα που θα πάρετε από τις παραπάνω προσοµοιώσεις (συσχέτιση διαγραµµάτων, αιτιολόγηση συµπεριφοράς κτλ). Πώς µεταβάλλεται η εµφάνιση των σηµείων knee και cliff µε την αλλαγή της τοπολογίας; 3) a. Έχοντας ως δεδοµένο ότι η δικαιοσύνη του συστήµατος είναι πολύ κοντά στο 1, να υπολογίσετε το throughput που αντιστοιχεί σε κάθε ροή κατά µέσο όρο για την Τοπολογία 2. b. Να συγκρίνετε το µέσο thoughput που υπολογίσατε στο προηγούµενο ερώτηµα µε το bandwidth bw_src του καναλιού που συνδέει την κάθε ροή µε τον 1ο κεντρικό δροµολογητή. Πώς εξηγείται η διαφορά αυτή; Τι θα αλλάζατε ώστε το µέσο throughput να είναι περίπου ίσο µε το bw_src; Προσπαθήστε να το πετύχετε στον ns-2 (πιθανόν να χρειαστεί να αλλάξετε και τις τιµές των µεταβλητών window_ και packetsize_ µεταβάλλοντας τις παρακάτω γραµµές Agent/TCP set window_ value1 (default τιµή είναι το 20, πρέπει να αυξηθεί) Agent/TCP set packetsize_ value2 (default τιµή είναι το 1000, πρέπει να αυξηθεί)) c. Βρείτε στοιχεία (επίσηµα ή ανεπίσηµα) για τα δίκτυα των παρόχων Internet (ISPs) στην Ελλάδα. Λαµβάνοντας υπόψη τον αριθµό των χρηστών που εξυπηρετούν (κατά προσέγγιση), θεωρείτε ότι υπάρχει συµφόρηση; Πώς επηρεάζει η χρήση του δικτύου (περιήγηση σε ιστοσελίδες, κατέβασµα torrents κλπ) την εµφάνιση συµφόρησης;
β) Επίδραση µεγέθους buffer δροµολογητή στη συχνότητα εµφάνισης συµφόρησης Όπως είναι γνωστό από τη θεωρία, η συµφόρηση σχετίζεται µε το µέγεθος της µνήµης των δροµολογητών. Για να δούµε τη συσχέτιση αυτή, µπορούµε να εκτελέσουµε δύο πειράµατα κρατώντας την ίδια τοπολογία (την τοπολογία 2 του ερωτήµατος 1α) και αλλάζοντας µόνο το µέγεθος της µνήµης του δροµολογητή (router) 1. Πιο συγκεκριµένα, οι δύο τιµές µνήµης που θα χρησιµοποιηθούν είναι: i) buffer_size = 100 ii) Αν Χ 0, buffer_size = 100 + 2X για Α.E.Μ. περιττό = 100 2X για Α.E.Μ. άρτιο Αν Χ = 0, buffer_size = 100 + 2W για Α.Ε.Μ. περιττό = 100 2W για Α.Ε.Μ. άρτιο Ερωτήµατα: 3) Να κάνετε τις συγκριτικές γραφικές παραστάσεις µεταξύ των δύο τοπολογιών (ένα διάγραµµα ανά υποερώτηµα) για τις παρακάτω µετρικές: a. Στιγµιαίο throughput συστήµατος σε σχέση µε το χρόνο b. Μήκος ουράς σε πακέτα του δροµολογητή R1 σε σχέση µε το χρόνo (Σηµείωση: Στο αρχείο buffer.txt που καταγράφει στοιχεία για την ουρά του συγκεκριµένου δροµολογητή, το µήκος της ουράς αναγράφεται στην 5 η στήλη. Μπορείτε να δηµιουργήσετε ένα απλό awk script που να εξάγει την 1 η και την 5 η στήλη του buffer.txt ώστε να κάνετε µετά το ζητούµενο διάγραµµα.) 4) Να σχολιάσετε τα αποτελέσµατα που θα πάρετε από τις παραπάνω προσοµοιώσεις (συσχέτιση διαγραµµάτων, αιτιολόγηση συµπεριφοράς κτλ). Πώς µεταβάλλεται η εµφάνιση των σηµείων knee και cliff µε την αλλαγή του µεγέθους µνήµης του δροµολογητή;
Σενάριο 2: «Συµπεριφορά του παραθύρου συµφόρησης» Στόχος του συγκεκριµένου σεναρίου είναι η παρατήρηση και η µελέτη της συµπεριφοράς του παραθύρου συµφόρησης σε σχέση µε την τιµή πολλαπλασιαστικής µείωσης του AIMD (dcr_factor) καθώς και η επίδραση της συµπεριφοράς αυτής στο δείκτη δικαιοσύνης (FI) αλλά και την απόδοση (Τhroughput) του συστήµατος. Ο τρόπος µε τον οποίο θα ελεγχθεί η επίδραση της συµπεριφοράς του παραθύρου συµφόρησης στo δείκτη δικαιοσύνης και στην απόδοση του συστήµατος είναι µέσω ενός σεναρίου ασύµµετρων µεγεθών παραθύρου. Η ασυµµετρία αυτή προκαλείται µε την καθυστέρηση της έναρξης µιας οµάδας ροών, έτσι ώστε όταν φτάσει η χρονική στιγµή το σύνολο των ροών να ανταγωνίζεται για το σύνολο των διαθέσιµων πόρων του καναλιού, η τιµή των παραθύρων της δεύτερης οµάδας ροών να υπολείπεται σηµαντικά αυτής της πρώτης. Για το σύνολο της διάρκειας του πειράµατος θα πρέπει να παρατηρήσετε την εξέλιξη των συγκεκριµένων µεγεθών και στην συνέχεια να τα συγκρίνετε για τρεις διαφορετικές τιµές dcr_factor. H πρώτη τιµή ορίζεται ως τιµή αναφοράς (Ref. Value - β), είναι κοινή για όλους και ισούται µε 0.5. Η δεύτερη και τρίτη τιµή (β1 & β2) επιλέγονται τυχαία, µε την πρώτη να βρίσκεται µεταξύ 0<β1<0.2 και την δεύτερη µεταξύ 0.8<β2<1. Ο συνολικός αριθµός των ροών και το µέγεθος του buffer του backbone καναλιού επιλέγεται σε σχέση µε το ΑΕΜ ως εξής: Z = AEM mod 9 Ζ = 0 à flows_number = 10, buffer_size = 40 Ζ = 1 à flows_number = 10, buffer_size = 45 Ζ = 2 à flows_number = 10, buffer_size = 50 Ζ = 3 à flows_number = 15, buffer_size = 40 Ζ = 4 à flows_number = 15, buffer_size = 45 Ζ = 5 à flows_number =15, buffer_size = 50 Ζ = 6 à flows_number =20, buffer_size = 40 Ζ = 7 à flows_number =20, buffer_size = 45 Ζ = 8 à flows_number =20, buffer_size = 50 Στο αρχείο µε όνοµα Ergasia1_b.tcl, το οποίο βρίσκεται και αυτό στη σελίδα του µαθήµατος, βρίσκεται υλοποιηµένη η παραπάνω τοπολογία, κατάλληλα παραµετροποιηµένη για τις ανάγκες του 2 ου σεναρίου.
Ερωτήµατα 1) Να κάνετε τις συγκριτικές γραφικές παραστάσεις (ένα διάγραµµα ανά µετρική) µεταξύ των τριών τιµών του dcr_factor για τις παρακάτω µετρικές: a. Δικαιοσύνης του συστήµατος ως προς τον χρόνο b. Απόδοσης του συστήµατος, ως προς το χρόνο c. Συµπεριφοράς του cwnd_, για την πρώτη ροή (tcp_agent(0)), ως προς το χρόνο: 2) Να σχολιάστε αναλυτικά τη µεταβολή του παραθύρου συµφόρησης αλλά και τον τρόπο µε τον οποίο αυτή επιδρά στην δικαιοσύνη και την απόδοση του συστήµατος συγκριτικά σε κάθε περίπτωση. 3) Έστω ότι στο παραπάνω σύστηµα δεν εφαρµόζαµε τον αλγόριθµο AIMD αλλά κάποια από τις παραλλαγές του AIAD, MIAD και MIMD. Ποια αναµένεται να είναι θεωρητικά η συµπεριφορά του συστήµατος για κάθε µία από αυτές; 4) Με βάση τις παραπάνω παρατηρήσεις σας σχετικά µε το πώς επηρεάζει η τιµή του παράγοντα πολλαπλασιαστικής µείωσης του AIMD την δικαιοσύνη του συστήµατος, την απόδοση του αλλά και την συµπεριφορά του παραθύρου συµφόρησης της κάθε ροής, ποια τιµή του παράγοντα πολλαπλασιαστικής µείωσης θα επιλέγατε για την βελτιστοποίηση της λειτουργίας των παρακάτω τύπων εφαρµογών και γιατί; a. Voice/Multimedia b. BitTorrent/FTP c. Web Διευκρινίσεις πρώτης εργασίας: - Ως εργασία θα παραδοθεί ένα zip αρχείο το οποίο θα περιλαµβάνει ένα αρχείο PDF µε τις γραφικές παραστάσεις, την αιτιολόγηση των αποτελεσµάτων και τις απαντήσεις των θεωρητικών ερωτηµάτων, καθώς και τα tcl και awk αρχεία που χρησιµοποιήσατε µε τον επιπλέον κώδικα. ΜΗΝ συµπεριλάβετε λοιπά αρχεία προσοµοίωσης αλλά και αρχεία αποτελεσµάτων (πχ. excel). To όνοµα του zip αρχείου θα είναι της µορφής: AEM-ergasia1- comnet2-2014.zip - Στο αρχείο κώδικα του 2 ου σεναρίου, εξάγεται µόνο η απόδοση του συστήµατος ανα τακτά χρονικά διαστήµατα. Με αντίστοιχο τρόπο υλοποιείστε
µια µέθοδο εξάγωγής του δείκτης δικαιοσύνης για τα αντίστοιχα χρονικά διαστήµατα. - Όλα τα αρχεία που αναφέρονται στην εκφώνηση της εργασίας βρίσκονται στην ιστοσελίδα του µαθήµατος. (http://www.intersys-lab.org/pages/courses/diktya-ypologiston-ii.php) - Προθεσµία παράδοσης: 6/4/2014, 23.59. Εκπρόθεσµες εργασίες είτε δεν θα γίνονται δεκτές, είτε θα έχουν µειωµένη βαθµολογία.