Comment vérifier la vitesse d'Internet via un Terminal?

Au lieu d'aller sur des sites comme speedtest.net, Je veux vérifier ma vitesse Internet actuelle à partir du terminal sur Ubuntu. Comment puis-je le faire?

Je recommande le speedtest-cli outil pour cela. J'ai créé un article de blog (Mesurer la Vitesse de Connexion Internet à partir de la Ligne de commande Linux) qui entre dans les détails du téléchargement, de l'installation et de l'utilisation de celui-ci.

La version courte est la suivante: (aucune racine requise)

curl -s https://raw.githubusercontent.com/sivel/speedtest-cli/master/speedtest.py | python -

Sortie:

Retrieving speedtest.net configuration...Retrieving speedtest.net server list...Testing from Comcast Cable (x.x.x.x)...Selecting best server based on ping...Hosted by FiberCloud, Inc (Seattle, WA) [12.03 km]: 44.028 msTesting download speed........................................Download: 32.29 Mbit/sTesting upload speed..................................................Upload: 5.18 Mbit/s

Mise à jour en 2018:

Utiliser pip install --user speedtest-cli vous obtient une version probablement plus récente que celle disponible dans les référentiels de votre distribution.

Mise à jour en 2016:

speedtest-cli est dans les dépôts Ubuntu maintenant. Pour Ubuntu 16.04 (Xenial) et une utilisation ultérieure:

sudo apt install speedtest-clispeedtest-cli

essayez ceci sur la ligne de commande

wget --output-document=/dev/null http://speedtest.wdc01.softlayer.com/downloads/test500.zip

essayez ceci aussi

sourceforge.net/projects/tespeed/

je l'ai obtenu à partir du lien ci-dessus

Si vous ne pouvez pas être dérangé pour installer iperf , vous pouvez précéder n'importe quelle commande qui déplace une quantité connue de données avec le time commandez et faites une somme.

iperf est simple et facile à utiliser.

Il nécessite un client et un serveur.

(sur le serveur)

 user@server$ iperf -s

(sur le client)

 user@client$ iperf -c server.domain ------------------------------------------------------------ Client connecting to 192.168.1.1, TCP port 5001 TCP window size: 16.0 KByte (default) ------------------------------------------------------------ [  3] local 192.168.1.3 port 52143 connected with 192.168.1.1 port 5001 [ ID] Interval       Transfer     Bandwidth [  3]  0.0-10.0 sec    113 MBytes  94.7 Mbits/sec

Plus De Détails

Eh bien j'utilise wget pour ça. Ce petit outil me dit bien quelle vitesse j'ai.

Pour l'utiliser, pointez simplement vers un fichier sur Internet relativement plus volumineux afin de pouvoir en obtenir une meilleure estimation.

Exemple

taper: wget http://hostve.com/neobuntu/pics/Ubu1.avi commencerait à télécharger l'Ubu1.fichier avi et montrer à quelle vitesse il se télécharge.

enter image description here

Bien sûr, il y a plusieurs recommandations:

  1. Testez-vous avec de bons serveurs. Dans le cas de mon lien, la vitesse est inférieure à 200 Ko, donc si vous avez une vitesse plus élevée, le serveur sera le goulot d'étranglement pour vous, pas votre vitesse réelle.

  2. La vitesse la plus élevée que vous verrez est la vitesse maximale que votre connexion et la connexion du serveur peuvent offrir. Si votre connexion est de 512 Ko et que l'endroit où vous téléchargez est de 400 Ko, votre connexion maximale sera de 400 Ko car c'est le maximum pour le serveur à partir duquel vous téléchargez.

  3. Vous devez faire le test au moins 5 fois pour avoir un contrôle de vitesse fiable ou au moins le faire pendant une minute ou deux. Cela vous aidera à avoir un contrôle plus précis.

  4. Vous devez disposer d'au moins 4 ou 5 sources de test différentes pour avoir une vitesse plus précise. Ne testez jamais uniquement à partir du même site car cela peut être affecté par votre distance par rapport à celui-ci, tout problème dans le serveur et les connexions à celui-ci, etc. Testez toujours à partir de différents serveurs.

ARIA2

C'est une alternative à wget. L'inconvénient de wget est le manque de connexions parallèles. Pour utiliser aria2, il suffit de le télécharger:

   sudo apt-get install aria2

L'utiliser est simple:

enter image description here

Dans l'image, le - x 4 est le nombre de connexions parallèles que nous souhaitons utiliser. Le paramètre CN de la ligne suivante indique le nombre de connexions parallèles actives autorisées à télécharger à partir de ce site. Dans ce cas, CN est 4. Mais si nous essayions d'avoir plus de connexions, nous obtiendrions quelque chose comme ça:

enter image description here

Nous avons mis en place 8 connexions parallèles mais le site n'en autorisait qu'un maximum de 5 comme indiqué par CN: 5. Cela pourrait être résolu par le - j option qui indique à aria2c le nombre maximum de connexions simultanées que nous voulons (qui par défaut est de 5) mais si le serveur a limité cela,- j ne fonctionnera pas.

Puisque speedtest-cli est une application python, il est beaucoup plus facile à installer en faisant:

pip install speedtest-cli

ou:

easy_install speedtest-cli

Selon la façon dont Python est installé sur votre système, vous devrez peut-être être root pour effectuer ce qui précède.

Il se trouve que j'aime le speedometer Ubuntu cli.

speedometer -r eth0

Pour regarder un graphique en direct des vitesses de données entrantes.

J'utilise régulièrement quelque chose comme ça:

% wget -O /dev/null --progress=dot:mega http://cachefly.cachefly.net/10mb.test ; date--2020-01-06 03:31:05--  http://cachefly.cachefly.net/10mb.testResolving cachefly.cachefly.net (cachefly.cachefly.net)... 2607:7700::18:0:1:cdea:afaf, 205.234.175.175Connecting to cachefly.cachefly.net (cachefly.cachefly.net)|2607:7700::18:0:1:cdea:afaf|:80... connected.HTTP request sent, awaiting response... 200 OKLength: 10485760 (10M) [application/octet-stream]Saving to: <</dev/null>>     0K ........ ........ ........ ........ ........ ........ 30% 3.02M 2s  3072K ........ ........ ........ ........ ........ ........ 60% 3.97M 1s  6144K ........ ........ ........ ........ ........ ........ 90% 3.94M 0s  9216K ........ ........                                    100% 3.99M=2.8s2020-01-06 03:31:08 (3.62 MB/s) - <</dev/null>> saved [10485760/10485760]Mon Jan  6 03:31:08 CST 2020%

Vous pouvez changer le 10mb part dans /10mb.test de 1mb, 4mb, 5mb, 10mb, 50mb, 100mb, 200mb, 400mb, 2000mb, 4000mb, et éventuellement d'autres valeurs.

Vous pouvez également modifier le --progress=dot:mega partie à --progress=dot:default, --progress=dot:binary, --progress=dot:mega et --progress=dot:giga; ce paramètre vous aide à voir à quelle vitesse le téléchargement se déroule et à conserver plus d'une seule lecture sur toute la durée du téléchargement, ce qui est utile lorsque vous devez partager les résultats avec quelqu'un, ou simplement les enregistrer pour vos propres dossiers sous forme de graphique.

un simple one-liner qui teste combien de temps il faut pour télécharger 100 Mo (fonctionne sur /bin/sh également):

t=$(date +"%s"); wget http://speedtest.tele2.net/100MB.zip -O ->/dev/null ; echo -n "MBit/s: "; expr 8 \* 100 / $(($(date +"%s")-$t))

explication:

  1. stocke l'horodatage dans $t
  2. téléchargez 100 Mo mais ne stockez rien
  3. calculer 8 * 100mb / $t

Exécutez plusieurs instances de wget avec la commande timeout sur des fichiers volumineux:

#!/bin/bashtimeout 5 wget -q url_1/100MB.zip &timeout 5 wget -q url_2/file.zip &timeout 5 wget -q url_3/sample.mov &timeout 5 wget -q url_4/speech.mp4 &

Et puis écrivez un script pour calculer le nombre total d'octets téléchargés et divisez 5 secondes, vous obtiendrez un chiffre d'octets / seconde. Devrait être assez précis et vous pouvez ajouter plus d'instances pour maximiser votre bande passante.

Je n'ai pas encore testé le script complet, mais la commande en une seule ligne "timeout 5 wget url" fonctionne et vous obtenez un fichier partiellement téléchargé (si 5 secondes ne suffisent pas pour terminer le téléchargement).

vous pouvez utiliser tespeed . il s'agit d'un test de vitesse du réseau Terminal qui utilise des serveurs de Speedtest.net. Il utilise le serveur de test le plus proche mais peut également en utiliser un spécifié manuellement par l'utilisateur.

 git clone git://github.com/Janhouse/tespeed.git cd tespeed git submodule init git submodule update ./tespeed.py 

enter image description here

pour plus d'informations, utilisez :

 ./tespeed.py  -h

il fournira plus d'options pour le test de vitesse.

Les résultats que j’obtiens avec speedtest-cli sont largement inférieurs à ce que je reçois de speedtest.net speedtest-cli Télécharger 18,27 Mbits / s Télécharger 3,43 Mbits / s speedtest.net Télécharger 59,38 Mbits / s Télécharger 12,14 Mbits / s Je ne peux pas considérer speedtest-cli comme un test valide de la vitesse du réseau.

@user375058: Le ‘speedtest-cli’ utilise les mêmes serveurs (etc.) comme SpeedTest.net. Vous devriez considérer les ‘speedtest-cli’ et `www.speedtest.net " pour être équivalent, juste avec un front-end différent. Je serais surpris si vous obteniez des résultats significativement différents de manière cohérente s’ils utilisent tous les deux le même serveur. S’ils n’utilisent pas le même serveur, vous n’avez aucune base de comparaison. Enfin, mes résultats pour les deux utilitaires varient d’un facteur 2 à 4 d’une exécution à l’autre. Je vous suggère de tester 2 à 4 serveurs, d’effectuer 3 à 4 exécutions pour chaque serveur et de comparer les outils.

sudo apt install speedtest-cli

@user375058: En fait, je viens de faire ce que j’ai suggéré. Voir le lien dans mon commentaire ci-dessous pour mes résultats.