• Εργαλεία ελέγχου συμπεριφοράς και απόδοσης της Αdsl γραμμής

    Στο παρόν άρθρο θα δούμε μια σειρά από εργαλεία που αναπτύχθηκαν από μέλη του Adslgr προκειμένου να γίνεται ένας τοπικός, απλός και γρήγορος έλεγχος της απόδοσης της γραμμής adsl.
    Ο έλεγχος εστιάζεται στους χρόνους ping που απαιτούνται προς συγκεκριμένους προορισμούς εντός και εκτός Ελλάδας, από λίστα server που ανανεώνεται τακτικά, και σε μέτρηση της σχετικής ταχύτητας download της γραμμής τόσο με αρχεία εντός Ελλάδας όσο και εκτός.

    Μια ιδέα που ξεκίνησε αρχικά από ένα linux script του μέλους του Adslgr psyxakias, έφτασε σε πιο ολοκληρωμένα εργαλεία που ανανεώνονται συνεχώς.

    Ας τα δούμε από κοντά με μια μικρή παρουσίαση των αποτελεσμάτων τους.

    • QSpeedTest από τον parsifal

      ένα cross platform πρόγραμμα, που οι δυνατότητες του αναγνωρίστηκαν από την Softpedia με εύχρηστο γραφικό περιβάλλον, ας δούμε την περιγραφή του από το δημιουργό του

      QSpeedTest
      Τί είναι;

      Εφαρμογή για μέτρηση της ταχύτητας και της συμπεριφοράς που έχει η πρόσβασή μας στο Internet. Απευθύνεται κυρίως σε κατόχους ADSL(2+) γραμμών, αλλά κάνει και για οποιουδήποτε άλλου τύπου δικτυακή πρόσβαση που να «βλέπει» Internet όπως μισθωμένες γραμμές, συμμετρικές DSL, πρόσβαση από WiFi hotspots, tethered Mobile Internet, VDSL κλπ.

      Τι απαιτήσεις έχει για να τρέξει;

      Η εφαρμογή γράφτηκε σε C++ και Qt, έχοντας ως στόχο την εκτέλεση σε πολλαπλές πλατφόρμες Λειτουργικών Συστημάτων. Αυτήν τη στιγμή παρέχονται έτοιμα binaries για
      • Microsoft Windows: Απαιτείται έκδοση Windows 2000 ή νεότερη. Επίσης, θα χρειαστεί να κατεβάσετε και να αποσυμπιέσετε στον ίδιο υποκατάλογο με τα binaries και ορισμένες βιβλιοθήκες/DLL του Qt framework. Μπορείτε να τις κατεβάσετε από εδώ, σε συμπιεσμένη μορφή ZIP ή 7z
      • GNU/Linux - 32bit - 64bit: Η μεταγλώττιση και η εκτέλεση δοκιμάστηκε επιτυχώς σε σύστημα Ubuntu 10.04, τόσο x86 όσο και AMD64, αλλά τα συγκεκριμένα binaries μπορούν να τρέξουν και σε πολλές άλλες διανομές. Απαιτεί να υπάρχουν στο σύστημα εγκατεστημένες οι βιβλιοθήκες του Qt framework. Αρκετές διανομές (π.χ. όσες χρησιμοποιούν το γραφικό περιβάλλον KDE) τις έχουν ήδη εγκατεστημένες αλλά και για όσες δεν το κάνουν, μπορούν συνήθως να εγκατασταθούν εύκολα και γρήγορα από το Διαχειριστή Πακέτων που ενσωματώνουν οι περισσότερες διανομές
      • Mac OS X. Σημείωση: Ο δημιουργός δεν έχει εύκολη πρόσβαση σε σύστημα Macintosh, με αποτέλεσμα τα παρεχόμενα binaries να μην ανανεώνονται με τον ίδιο ρυθμό όπως τα binaries των άλλων Λ/Σ

      Διατίθεται επίσης ελεύθερα και ο πηγαίος κώδικας υπό την άδεια χρήσης GPLv3, οπότε η εφαρμογή δυνητικά μπορεί να μεταγλωττιστεί και να τρέξει και Λ/Σ επιπλέον των προαναφερόμενων. Για παράδειγμα, μέλος του ADSLgr ανέφερε επιτυχή μεταγλώττιση και εκτέλεση σε Λ/Σ FreeBSD

      Πώς δουλεύει;

      • Χρησιμοποιεί με αυτοματοποιημένο τρόπο ήδη υπάρχοντα εργαλεία του συστήματος, όπως π.χ. την εντολή ping, για να εκτελέσει μετρήσεις καθυστέρησης (latency) προς πολλαπλούς στόχους/servers στο Internet
      • Ξεκινά να κατεβάζει ταυτόχρονα από πολλαπλούς servers ορισμένα αρχεία, για την εκτίμηση της διαθέσιμης [Β]ταχύτητας (bandwidth)[/Β]
      • Συγκεντρώνει τις παραπάνω μετρήσεις, εκτελεί ορισμένους υπολογισμούς για την παραγωγή στατιστικών μεγεθών και προβάλλει τα αποτελέσματα επί της οθόνης με τη μορφή απλού κειμένου. Υπάρχει επιπλέον δυνατότητα εξαγωγής αναφοράς σε μορφή HTML ή κώδικα bbcode συμβατού με οποιοδήποτε vBulletin forum έχει εγκατεστημένο mod/hack για TABLE tag

      Η εφαρμογή περιλαμβάνει μία προκαθορισμένη λίστα από στόχους σε αρχείο, αλλά ο χρήστης είναι απολύτως ελεύθερος να επέμβει στο σχετικό αρχείο και να προσθέσει, να αφαιρέσει ή να αντικαταστήσει τις υπάρχουσες καταχωρήσεις με δικές του. Το format του αρχείου είναι το γνωστό σε πολλούς INI, έχει απλή οργάνωση και δεν χρειάζεται ιδιαίτερη τεκμηρίωση

      Οδηγίες χρήσης
      Το QSpeedTest παρουσιάζει στον χρήστη γραφικό περιβάλλον με μοναδικό παράθυρο, από όπου είναι προσβάσιμες όλες οι δυνατότητες του προγράμματος με κλικ στα αντίστοιχα controls:



      1. Επιλογή μορφής test που θέλουμε να εκτελεστεί. Μπορεί να είναι συνδυαστικό (π.χ. "Ping and speed test"). Η προεπιλεγμένη τιμή είναι να εκτελεστούν όλα τα tests
      2. Αν στο 1 επιλέξαμε ping test (μόνο του ή συνδυαστικά), εδώ καθορίζουμε τον αριθμό των pings που θα γίνουν σε κάθε έναν από τους servers της λίστας που φορτώνει το πρόγραμμα. Μεγαλύτερη τιμή δίνει ακριβέστερα αποτελέσματα, αλλά αυξάνει και τον χρόνο ολοκλήρωσης του test. Η προεπιλεγμένη τιμή των 4 pings είναι ένας καλός συμβιβασμός
      3. Αν στο 1 επιλέξαμε ping test (μόνο του ή συνδυαστικά), εδώ καθορίζουμε τον αριθμό των στόχων που θα γίνονται παράλληλα ping κάθε στιγμή από ισάριθμα threads του προγράμματος. Μεγαλύτερες τιμές μειώνουν θεαματικά τον χρόνο ολοκλήρωσης του test. Δεδομένου ότι η δικτυακή κίνηση και ο φόρτος που προσθέτει στη γραμμή ένα ping request κι ένα ping reply είναι αμελητέα, η χρήση πολυνηματισμού γι' αυτήν τη λειτουργία εκτιμάται ότι θα αλλοιώνει ανεπαίσθητα τα αποτελέσματα του test. Παρ' όλα αυτά και για αποφυγή υπερβολής, η μέγιστη τιμή εδώ είναι 8, με το 4 να είναι η προεπιλεγμένη τιμή
      4. Σε αυτήν την περιοχή εμφανίζονται ενημερωτικά μηνύματα που έχουν να κάνουν με την κατάσταση του προγράμματος (π.χ. αποτυχία φόρτωσης της λίστας στόχων, διαθέσιμες ενημερώσεις του προγράμματος κ.ά.)
      5. Σε αυτήν την περιοχή εμφανίζονται σε πραγματικό χρόνο τα αποτελέσματα του εκάστοτε test, με τη μορφή απλού κειμένου, το οποίο αν θέλουμε μπορούμε να επιλέξουμε και να αντιγράψουμε στο Clipboard/Πρόχειρο του συστήματος
      6. Αφού ολοκληρωθεί ένα test, με κλικ εδώ εξάγεται μία αναφορά των αποτελεσμάτων σε μορφή HTML αρχείου, το οποίο και ανοίγει αυτόματα στον προεπιλεγμένο web browser του συστήματος
      7. Αφού ολοκληρωθεί ένα test, με κλικ εδώ εξάγεται μία αναφορά των αποτελεσμάτων σε μορφή bbcode, συμβατού με Internet fora που τρέχουν λογισμικό vBulletin κι έχουν εγκατεστημένο mod/hack για TABLE tag, ώστε να δημοσιεύσουμε σε ένα τέτοιο forum τα αποτελέσματά μας με τη μορφή μηνύματος (post)
      8. Το συγκεκριμένο κουμπί έχει δύο καταστάσεις, "Start" και "Stop". Με κλικ στο "Start", ξεκινά το test(s) που επιλέξαμε στο 1. Ενώ τρέχει ένα test, κλικ στο "Stop" το διακόπτει άμεσα
      9. Εμφανίζει ένα μικρό παράθυρο με πληροφορίες για το πρόγραμμα
      10. Έξοδος από το πρόγραμμα


      Το QSpeedTest έχει κι ένα «μικρό αδερφάκι», το QSpeedTestCLI. Όπως μαρτυρά και το όνομά του, πρόκειται για εκδοχή του προγράμματος με command line interface, δηλαδή όχι με γραφικό παράθυρο αλλά σε γραμμή εντολών και μπορούν να το χρησιμοποιήσουν όσοι χρήστες θέλουν π.χ. να το ενσωματώσουν σε δικά τους scripts. Το QSpeedTestCLI διαθέτει την ίδια βασική λειτουργικότητα με τον μεγάλο αδερφό του και οι παράμετροι εκτέλεσής του ρυθμίζονται καλώντας το με τους κατάλληλους διακόπτες/switches. Μπορείτε να δείτε λίστα των διαθέσιμων διακοπτών εκτελώντας το πρόγραμμα με οποιονδήποτε από τους τυπικούς διακόπτες βοηθείας "help", "--help", "-h", "?" "/?". Π.χ.:
      Κώδικας:
      qspeedtestcli --help
    • to be continued...
    Αυτό το άρθρο δημοσιεύθηκε πρώτα στο forum με θέμα: Εργαλεία ελέγχου συμπεριφοράς και απόδοσης της Αdsl γραμμής Δημοσιεύθηκε από nnn Δείτε την αρχική δημοσίευση
    Σχόλια 8 Σχόλια
    1. Το avatar του μέλους glist
      glist -
      Καλή προσπάθεια, ανυπομονώ για τη συνέχεια
    1. Το avatar του μέλους yyy
      yyy -
    1. Το avatar του μέλους Mouse Potato
      Mouse Potato -
      αλλά....

      This application failed to start because mingwm10.dll was not found.
    1. Το avatar του μέλους parsifal
      parsifal -
      Παράθεση Αρχικό μήνυμα από Mouse Potato Εμφάνιση μηνυμάτων
      αλλά....

      This application failed to start because mingwm10.dll was not found.
      Διάβασε λίγο το σημείο του κειμένου «Τί απαιτήσεις έχει για να τρέξει;»!
    1. Το avatar του μέλους Mouse Potato
      Mouse Potato -
      Παράθεση Αρχικό μήνυμα από parsifal Εμφάνιση μηνυμάτων
      Διάβασε λίγο το σημείο του κειμένου «Τί απαιτήσεις έχει για να τρέξει;»!
      Ευχαριστώ
    1. Το avatar του μέλους honda22
      honda22 -
      Ευχαριστώ!
    1. Το avatar του μέλους Mouse Potato
      Mouse Potato -
      Ν' αναφέρω ένα πολύ μικρό bug για το QSpeedTest:

      Συνημμένο Αρχείο 75333
    1. Το avatar του μέλους parsifal
      parsifal -
      Ευχαριστώ, διορθώθηκε.