Σάββατο 4 Ιανουαρίου 2014

Σκοπός

  • Μέτρηση του ρυθμού διεκπεραίωσης (throughput) και της καθυστέρησης όταν δύο ασύρματα σημεία πρόσβασης εκπέμπουν σε γειτονικά κανάλια. 
  • Μελέτη της εξάρτησης της παρεμβολής από την απόσταση των καναλιών, τον τύπο της κίνησης, και την γεωγραφική απόσταση των ασύρματων σημείων πρόσβασης και των ασύρματων σταθμών.

Παρασκευή 3 Ιανουαρίου 2014

Πρόβλημα

To 802.11g προσφέρει υψηλό ρυθμό μετάδοσης φτάνοντας μέχρι και τα 54Mbps. Το κυριότερο, το 802.11g προσφέρει συμβατότητα προς τα πίσω με το ευρέως εφαρμοσμένο πρότυπο 802.11b. Λειτουργεί στη ISM 2,4 GHz ζώνη, όπως και το 802.11b. Χρησιμοποιεί την τεχνολογία OFDM και υποστηρίζει υψηλούς ρυθμούς μετάδοσης 6, 9, 12, 18, 24, 36, 48, 54Mbps παρόμοια με το 802.11a. Παρόμοια με το 802.11b πρότυπο, το 802.11g έχει μόνο τρία μη-επικαλυπτόμενα κανάλια και το νέο φυσικό στρώμα καλείται ERP (Extended Rate Physical-φυσικό εκτεταμένου ρυθμού) στρώμα.

Το 2,4 GHz ISM φάσμα που χρησιμοποιείται από το 802.11g είναι πιο κορεσμένο από το U-NII φάσμα των 5 GHz που χρησιμοποιείται από το 802.11a. Κατά συνέπεια οι συσκευές 802.11g υπόκειται σε περισσότερες πηγές παρεμβολών, όπως φούρνοι μικροκυμάτων, συσκευές Bluetooth, ασύρματα τηλέφωνα, RF ιατρικές συσκευές, κτλ.

Ο αριθμός διαθέσιμων καναλιών στην ISM 2,4 GHz ζώνη είναι μικρότερος από αυτόν στη ζώνη U-NII των 5 GHz. Στο 802.11g υπάρχουν μόνο τρία μη-επικαλυπτόμενα κανάλια, έναντι των 13 διαθέσιμων καναλιών στο 802.11a. Κατά συνέπεια, ο παράγοντας επαναχρησιμοποίησης συχνότητας είναι μικρότερος στο 802.11g από ότι στο 802.11a για να καλύψει τις απαιτήσεις ικανότητας και κάλυψης. Δια-καναλική (co-channel) παρεμβολή λόγω της επαναχρησιμοποίησης συχνότητας είναι υψηλότερη στο 802.11g από το 802.11a.

Υπάρχουν 2 είδη παρεμβολών:
  • Ίδιου Καναλιού (Co-Channel Interference) όταν οι συσκευές χρησιμοποιούν το ίδιο κανάλι:
    • Το διαθέσιμο bandwidth "μοιράζεται" στις συσκευές που ανταγωνίζονται για πρόσβαση στο μέσο μετάδοσης.
    • Όσο αυξάνεται ο αριθμός των συσκευών που χρησιμοποιούν το ίδιο κανάλι και η γενικά η κυκλοφορία στο δίκτυο, τόσο πιο έντονο είναι το πρόβλημα.
  • Γειτονικού καναλιού (Adjacent Channel Interference):
    • Όσο πιο κοντινά είναι τα κανάλια τόσο μεγαλύτερη είναι η παρεμβολή.
    • Αποτέλεσμα, πολλές επαναμεταδόσεις, υποβάθμιση της απόδοσης του δικτύου.


Μεθοδολογία

Για την τοπολογία μας θα χρειαστούν 4 σταθμοί/laptops και 2 access points. Η συνδεσμολογία είναι της μορφής:



Κάθε access point θα είναι ένα τοπικό δίκτυο με συνδεδεμένο ένα σταθμό/laptop ενσύρματα, όπου θα στέλνουν κίνηση μεταξύ τους. Θα έχουμε λοιπόν δύο τοπικά δίκτυα στα οποία θα μετρήσουμε την παρεμβολή που δημιουργεί το ένα στο άλλο. Η ιδέα είναι να παίρνουμε μετρήσεις κάθε φορά που κάνουμε αλλαγή καναλιών αλλά και κάθε φορά που αλλάζουμε τη γεωγραφική απόσταση μεταξύ τους. Στη συνέχεια θα αναφέρουμε τις αλλαγές που βλέπουμε στην απόδοση τους και στην παρεμβολή που δημιουργείται. Οι μετρήσεις θα γίνουν με τη βοήθεια των παρακάτω γεννητριών:

  • Iperf/Jperf:
    • Εργαλεία για τη μέτρηση του Bandwidth.
    • Δημιουργία μοντέλου server-client και μέτρηση της διακίνησης μεταξύ δύο άκρων. 
    • Η διαφορά τους είναι ότι το Jperf έχει γραφικό περιβάλλον.
  • Ping:
    • Επιβεβαίωση της σύνδεσης.
    • Υπολογισμός της καθυστέρησης.
  • LinSSID/InSSIDer:
    • Ανάδειξη καναλιών γειτονικών δικτύων.

Ξεκινώντας

Συνδέσαμε τους 2 σταθμούς/laptop με το 1 access point και δημιουργήσαμε το δίκτυο "jenny".
  • Αρχικά χρησιμοποιήσαμε το LinSSID για να δούμε πόσα γειτονικά δίκτυα χρησιμοποιούν τους πόρους των καναλιών. Με αυτό τον τρόπο είδαμε ποια κανάλια χρησιμοποιούνται και που υπάρχει μεγαλύτερη παρεμβολή. Στο παρακάτω screenshot, παρατηρούμε ότι τα κανάλια 6, 9, 10, 11, 12 και 13 χρησιμοποιούνται περισσότερο και γιαυτό το λόγο παρεμβάλουν το ένα το άλλο. Το κανάλι 1 χρησιμοποιείται επίσης, με τη διαφορά ότι τα γειτονικά του κανάλια δεν χρησιμοποιούνται και αυτό έχει ως αποτέλεσμα να μην δέχεται παρεμβολές.

  • Επιλέξαμε να συνδεθούμε στο κανάλι 11 για να πάρουμε τις μετρήσεις μας. Χρησιμοποιώντας το iperf για να δημιουργήσουμε κίνηση μεταξύ των σταθμών, φτιάξαμε το μοντέλο server-client, δηλαδή ο ένας υπολογιστής έγινε server (windows 7) και ο άλλος client (linux mint). 
    • Server: Με την εντολή iperf.exe -s ο server ενεργοποιείται και περιμένει την TCP κίνηση από τον client.
    • Client: O client με την εντολή iperf -c 192.168.2.2(IP server) συνδέεται με τον server και ταυτόχρονα ξεκινάει να στέλνει δεδομένα για 10sec. Με το πέρας των 10sec το iperf μας δίνει πληροφορίες για την κίνηση που δημιουργήθηκε. Οι πληροφορίες αυτές είναι το σύνολο των δεδομένων που μεταφέρθηκαν σε MBytes και το Bandwidth. Τέλος χρησιμοποιήσαμε και το ping το οποίο στέλνει δεδομένα από τον ένα σταθμό στον άλλο και μας δίνει το RTT των πακέτων. Το RTT το χρειαζόμαστε για να κάνουμε τη σύγκριση του RTT, όταν δημιουργείται κίνηση μεταξύ των 2 υπολογιστών χωρίς παρεμβολή  και του RTT όταν υπάρχει παρεμβολή.
    • Στο screenshot που ακολουθεί βλέπουμε όσα περιγράψαμε παραπάνω


  • Παρακάτω περιγράφεται και η διαδικασία δημιουργίας UDP κίνησης η οπoία δεν διαφέρει πολύ από την TCP.
    • Server: Με την εντολή iperf.exe -s -u ο server ενεργοποιείται και περιμένει την UDP κίνηση από τον client. Μόλις ολοκληρωθεί η διαδικασία εμφανίζει πληροφορίες για την κίνηση που δημιουργήθηκε. 
    • Client: O client με την εντολή iperf -u -c 192.168.2.2(IP server) συνδέεται με τον server και ταυτόχρονα ξεκινάει να στέλνει δεδομένα για 10sec και Bandwidth 1.05Mbps . Με το πέρας των 10sec το iperf μας δίνει και στην πλευρά του client πληροφορίες για την κίνηση που δημιουργήθηκε. Οι πληροφορίες αυτές είναι το σύνολο των datagrams που μεταφέρθηκαν, οι απώλειες και το jitter.
    • Στο screenshot που ακολουθεί βλέπουμε όσα περιγράψαμε παραπάνω


Πέμπτη 2 Ιανουαρίου 2014

Το πείραμα

Έχοντας  ολοκληρώσει τη συνδεσμολογία και έχοντας δημιουργήσει δύο τοπικά δίκτυα, με ονόματα Mavra και Jenny, θα ξεκινήσουμε να εφαρμόζουμε αυτά που περιγράφουμε στη μεθοδολογία. Η ιδέα είναι:
  1. Το ένα δίκτυο (Jenny) να είναι συνδεδεμένο σταθερά σε ένα κανάλι και να δημιουργείται κίνηση μεταξύ των δυο Laptos του, με τη βοήθεια του Iperf/Jperf.
  2. Το άλλο δίκτυο (Mavra) να συνδέεται σε γειτονικά δίκτυα και κάθε φορά να δημιουργείται κίνηση μεταξύ των δύο Laptops του έτσι ώστε να προκαλούνται παρεμβολές στο δίκτυο Jenny.
  3. Με αυτόν τον τρόπο πήραμε μετρήσεις στο δίκτυο Jenny κάθε φορά που το δίκτυο Mavra άλλαζε κανάλι για να δούμε σε ποιες περιπτώσεις η παρεμβολή είναι μεγαλύτερη.
  4. Οι μετρήσεις για την TCP κίνηση αφορούν το Bandwidth και την καθυστέρηση των πακέτων ενώ για την UDP κίνησης αφορούν το Jitter. Οι μετρήσεις έγιναν σε δύο φάσεις:
    • Τα δύο APs ήταν σε πολύ κοντινή απόσταση, περίπου 1m.
    • Τα δύο APs είχαν απόσταση περίπου 10m.
Με τη διαδικασία αυτή θέλουμε να μελετήσουμε την εξάρτηση της παρεμβολής από την απόσταση των καναλιών, από τον τύπο της κίνησης (TCP και UDP) και από την γεωγραφική απόσταση των APs.

Ξεκινώντας λοιπόν επιλέξαμε το κανάλι 11 για το σταθερό μας δίκτυο Jenny και το Mavra θα συνδεθεί με τα κανάλια 9 και 10. Το 10 επιλέχθηκε με τη λογική ότι είναι το διπλανό κανάλι από το 11. Το 9 επιλέχθηκε με τη λογική ότι είναι και αυτό γειτονικό, αλλά έχει μεγαλύτερη απόσταση από το 11. Με αυτόν τον τρόπο θέλουμε να δείξουμε τις διαφορές που θα έχει η παρεμβολή από ένα διπλανό κανάλι, το 10,  και η παρεμβολή από ένα πιο μακρινό κανάλι, το 9.


Τα αποτελέσματα για κοντινή απόσταση των APs τα παραθέτουμε στον πίνακα 1:
Η κατάσταση  των καναλιών τη δεδομένη στιγμή, φαίνεται στο παρακάτω screenshot: 


Πίνακας 1

  • Στην πρώτη σειρά του πίνακα έχουν γίνει μετρήσεις στο δίκτυο Jenny χωρίς να υπάρχουν παρεμβολές από το δίκτυο Mavra. Έτσι λοιπόν:
      • για την TCP κίνηση έχουμε Bandwidth 16,3Mbps και RTT 2.1ms.
      • για την UDP κίνηση με σταθερό Bandwidth 1Mbps έχουμε Jitter 0.2ms.
  • Στη δεύτερη σειρά του πίνακα έχουν γίνει μετρήσεις στο δίκτυο Jenny με το δίκτυο Mavra να προκαλεί παρεμβολές από το κανάλι 9. Έτσι λοιπόν:
      • για την TCP κίνηση έχουμε Bandwidth 15Mbps και RTT 6.3ms.
      • για την UDP κίνηση με σταθερό Bandwidth 1Mbps έχουμε Jitter 1.6ms.
  • Στην τρίτη σειρά του πίνακα έχουν γίνει μετρήσεις στο δίκτυο Jenny με το δίκτυο Mavra να προκαλεί παρεμβολές από το κανάλι 10. Έτσι λοιπόν:
      • για την TCP κίνηση έχουμε Bandwidth 14,5Mbps και RTT 2.5ms.
      • για την UDP κίνηση με σταθερό Bandwidth 1Mbps έχουμε Jitter 1.2ms.
Από τις μετρήσεις αυτές παρατηρούμε ότι το κανάλι 10 προκαλεί μεγαλύτερες παρεμβολές από το κανάλι 9 και είναι λογικό διότι το 10 είναι ακριβώς δίπλα από το 11.


Τα αποτελέσματα για 10m απόσταση των APs τα παραθέτουμε στον πίνακα 2:
Η κατάσταση  των καναλιών τη δεδομένη στιγμή, φαίνεται στο παρακάτω screenshot: 


Πίνακας 2

  • Στην πρώτη σειρά του πίνακα έχουν γίνει μετρήσεις στο δίκτυο Jenny χωρίς να υπάρχουν παρεμβολές από το δίκτυο Mavra. Έτσι λοιπόν:
      • για την TCP κίνηση έχουμε Bandwidth 15,9Mbps και RTT 2.4ms.
      • για την UDP κίνηση με σταθερό Bandwidth 1Mbps έχουμε Jitter 0.6ms.
  • Στη δεύτερη σειρά του πίνακα έχουν γίνει μετρήσεις στο δίκτυο Jenny με το δίκτυο Mavra να προκαλεί παρεμβολές από το κανάλι 9. Έτσι λοιπόν:
      • για την TCP κίνηση έχουμε Bandwidth 11,8Mbps και RTT 7.2ms.
      • για την UDP κίνηση με σταθερό Bandwidth 1Mbps έχουμε Jitter 0.9ms.
  • Στην τρίτη σειρά του πίνακα έχουν γίνει μετρήσεις στο δίκτυο Jenny με το δίκτυο Mavra να προκαλεί παρεμβολές από το κανάλι 10. Έτσι λοιπόν:
      • για την TCP κίνηση έχουμε Bandwidth 15,5Mbps και RTT 8.1ms.
      • για την UDP κίνηση με σταθερό Bandwidth 1Mbps έχουμε Jitter 0.3ms.
Παρατηρούμε από τις μετρήσεις μας, ότι οι τιμές του Bandwidth, της καθυστέρησης και του jitter δεν είναι οι αναμενόμενες. Θα έπρεπε οι τιμές στον Πίνακα 2 να είναι καλύτερες από τις τιμές του Πίνακα 1 διότι γνωρίζουμε ότι όσο μεγαλύτερη είναι η απόσταση των APs τόσο μικρότερη είναι η παρεμβολή.
Αυτό δυστυχώς δεν μπορέσαμε να το αποδείξουμε για τους εξής λόγους:
  1. Λάθος επιλογή καναλιού.
    • Επιλέξαμε το κανάλι 11 ως σταθερό για το δίκτυο Jenny καθώς ήταν το κανάλι που μας έδινε το μεγαλύτερο Bandwidth. Αυτό το κριτήριο επιλογής καναλιού ήταν λάθος διότι δεν σκεφτήκαμε το γεγονός ότι το 11 είναι το κανάλι που by default επιλέγεται από APs λόγω της ιδιότητας του να μην παρεμβάλλεται από το 6 και το 1. Έτσι λοιπόν όταν κάναμε το πείραμα για 10m απόσταση των APs, το κανάλι 11 είχε μεγάλο φόρτο με αποτέλεσμα οι τιμές να είναι μικρότερες από τις τιμές όταν τα APs δεν είχαν απόσταση. Αυτό δεν είναι λογικό και οφείλεται στη διαμοίραση των πόρων του καναλιού και όχι στην παρεμβολή.
    • Επίσης υπήρχαν πολλά APs συνδεδεμένα στα γειτονικά κανάλια, όπως φαίνεται στο παραπάνω screenshot, με αποτέλεσμα να υπάρχει παρεμβολή όχι μόνο από το δίκτυο Mavra αλλά και από τα υπόλοιπα.
  2. Δεν πήραμε αρκετές μετρήσεις.
  3. Ώρα αιχμής.
    • Δεν υπολογίσαμε τις ώρες αιχμής καθώς το μεσημέρι που κάναμε το πείραμα για κοντινή απόσταση των APs είχαμε 16Mbps. Ενώ το βράδυ που κάναμε το πείραμα για απόσταση 10m των APs είχαμε 10Mbps.