66 votes

Comment diagnostiquer et visualiser les temps de ping élevés du routeur wifi ?

J'observe des temps de ping erratiques et parfois très longs vers mon routeur wifi qui se trouve à un seul saut. Pinging 192.168.1.1 donne parfois des latences de 400-800 ms.

Il y a beaucoup de choses à essayer (firmware, placement du routeur, canal AP, etc.), mais je voudrais attaquer ce problème de manière un peu plus méthodique :

  • D'abord, comment puis-je visualisez les performances de mon réseau ?
  • Alors, comment puis-je repère les performances d'une configuration donnée, de sorte que je puisse comparer de manière fiable après avoir effectué des ajustements ?

80voto

Paul Irish Points 1124

Cette réponse de défaut de serveur donne de bonnes indications de haut niveau sur ce qu'il faut faire - commencez donc par là. La dernière étape est un véritable casse-tête : on peut supposer que vous (je veux dire, moi) ne voulez pas investir dans du matériel dédié pour cela...

Vous trouverez ci-dessous quelques bons outils, d'abord pour comprendre l'état de la connectivité au sein du réseau wifi local, puis vers un point d'accès à Internet.

Outils Wifi

NetSpot (pour mac)

Il suit les AP WiFI locaux et fournit des données de base comme le SNR, le canal, la force du signal. Il peut également effectuer une étude de base du site pour un espace physique en indiquant les forces et les interférences. En mode de découverte des points d'accès, vous pouvez également établir un graphique de la force du signal dans le temps, ce qui vous permet de tester les placements et d'ajuster les possibilités d'interférence. enter image description hereenter image description hereenter image description here

Test de vitesse Wifi pour Android

Très utile. Vous exécuterez un simple serveur Python sur votre machine et l'application pourra tester quelques scénarios en vous donnant des informations sur la vitesse en temps réel.

enter image description here

Analyseur Wifi une autre excellente application Android, offre quelques vues précieuses sur les canaux wifi AP actifs. C'est peut-être le meilleur outil gratuit pour choisir un canal AP sans faire beaucoup de travail.

iPerf

Outil très respecté pour comprendre les performances des réseaux locaux. Vous avez besoin de deux boîtes, une comme serveur, une comme client. Vous pouvez configurer un certain nombre de paramètres, lancer un test et voir les résultats de la bande passante et de la gigue. Je préfère l'utiliser avec le GUI de jPerf pour suivre les résultats et ajuster les paramètres.

brew install iperf
iperf -s # on server, next one on client
iperf -c 192.168.1.XXX -P 1 -i 1 -p 5001 -f m -t 60

enter image description here

Connectivité Internet Santé

mtr (ping et traceroute combinés)

Pings tous vos hops traceroute. Fournit des données de tendance. Super génial.

brew install mtr
mtr 8.8.4.4

speedtest-cli

La version CLI du truc commun ookla speedtest.net. Le responsable du projet déclare que ce n'est pas cohérent, mais c'est quand même pratique pour essayer de mesurer les grandes différences.

wget -O speedtest-cli https://raw.github.com/sivel/speedtest-cli/master/speedtest_cli.py
chmod +x speedtest-cli
speedtest-cli --list | head # and chose a top server (sorted by distance)
speedtest-cli --server 2761 # re-use the same server

NPAD : Diagnostic des chemins de réseau et des applications

Serveur de diagnostic automatique pour le dépannage des systèmes finaux et des problèmes de réseau du dernier kilomètre. Après avoir exécuté une batterie de tests, il donne un La page de résumé des résultats ressemble à ceci . Je recommande d'utiliser ce Lien de redirection du serveur NPAD pour trouver le serveur NPAD le plus proche (il y en a partout) et utiliser ce nom d'hôte pour vos tests.

  wget http://netspeed.usc.edu:8000/diag-client.c
  cc diag-client.c -o diag-client
# ./diag-client <server_name> <port> <target_RTT> <target_data_rate_in_MB/S>
  ./diag-client ps.psc.xsede.org 8001 30 5

enter image description here


Mes résultats personnels :

J'ai passé quelques bonnes heures à faire tout cela, à essayer différentes choses (en passant de DD-WRT au firmware Tomato) et à lire. Il s'est avéré que ce n'était pas la couche réseau mais une bonne vieille interférence RF, provenant principalement de Bluetooth ! J'avais mon ordinateur, une souris et un clavier Bluetooth à moins de 1,5 mètre du routeur. (Et le vieux routeur est toujours sur 2.4Ghz où ils s'affrontent).

Pour cela, j'ai tiré le meilleur parti de Test de vitesse Wifi pour Android en le faisant tourner régulièrement pendant que je déplaçais des choses dans l'appartement. Comme il rapporte les mises à jour toutes les 200 ms environ, il m'a clairement indiqué quand les interférences faisaient tomber mes paquets.

Je recommande vivement la lecture du Sources communes d'interférence guide de Metageek (ils font aussi InSSIDer et d'autres outils d'analyse Wifi qui semblent bons).

enter image description here

Un outil dont je ne disposais pas était un analyseur de spectre physique. Les téléphones et les ordinateurs portables ne peuvent détecter que les points d'accès Wifi, mais ne peuvent pas détecter les interférences provenant de Bluetooth ou d'autres technologies RF. Metageek propose quelques solutions intéressantes dans ce domaine ( Wi-Spy y Bureau inSSIDer ) et nous espérons voir apparaître d'autres outils tels que AirShark .

4voto

alfwatt Points 183

Comme indiqué dans mon commentaire ci-dessus : Les outils couramment utilisés pour diagnostiquer les problèmes de Wi-Fi peuvent en fait causer ce problème. Lors de la recherche de réseaux Wi-Fi, la radio doit quitter le canal, elle demande généralement au point d'accès de mettre en mémoire tampon les trames pour qu'elle puisse "dormir", puis elle change de canal pour effectuer la recherche.

En outre, iOS et OS X, depuis l'introduction d'AirDrop, mettront la radio Wi-Fi hors canal pour rechercher d'autres services AirDrop et, depuis Yosemite, mettront périodiquement la radio hors canal pour prendre en charge le transfert.

3voto

ArtemGr Points 299

J'ai donc eu ces fluctuations de ping Wi-Fi vers le routeur aussi.

PING 192.168.0.1 (192.168.0.1): 56 data bytes
64 bytes from 192.168.0.1: icmp_seq=0 ttl=63 time=2.334 ms
64 bytes from 192.168.0.1: icmp_seq=1 ttl=63 time=1.813 ms
64 bytes from 192.168.0.1: icmp_seq=2 ttl=63 time=2749.664 ms
64 bytes from 192.168.0.1: icmp_seq=3 ttl=63 time=1748.912 ms
64 bytes from 192.168.0.1: icmp_seq=4 ttl=63 time=748.162 ms
64 bytes from 192.168.0.1: icmp_seq=5 ttl=63 time=1.796 ms
64 bytes from 192.168.0.1: icmp_seq=6 ttl=63 time=1.806 ms
64 bytes from 192.168.0.1: icmp_seq=7 ttl=63 time=1.991 ms
64 bytes from 192.168.0.1: icmp_seq=8 ttl=63 time=1.797 ms
64 bytes from 192.168.0.1: icmp_seq=9 ttl=63 time=1.832 ms
64 bytes from 192.168.0.1: icmp_seq=10 ttl=63 time=1.713 ms
64 bytes from 192.168.0.1: icmp_seq=11 ttl=63 time=1.819 ms
64 bytes from 192.168.0.1: icmp_seq=12 ttl=63 time=1.616 ms
64 bytes from 192.168.0.1: icmp_seq=13 ttl=63 time=1.748 ms
64 bytes from 192.168.0.1: icmp_seq=14 ttl=63 time=1.677 ms
64 bytes from 192.168.0.1: icmp_seq=15 ttl=63 time=3427.213 ms
64 bytes from 192.168.0.1: icmp_seq=16 ttl=63 time=2426.371 ms
64 bytes from 192.168.0.1: icmp_seq=17 ttl=63 time=1425.634 ms
64 bytes from 192.168.0.1: icmp_seq=18 ttl=63 time=424.834 ms
64 bytes from 192.168.0.1: icmp_seq=19 ttl=63 time=1.829 ms
64 bytes from 192.168.0.1: icmp_seq=20 ttl=63 time=1.691 ms
64 bytes from 192.168.0.1: icmp_seq=21 ttl=63 time=2.038 ms
64 bytes from 192.168.0.1: icmp_seq=22 ttl=63 time=1.679 ms
^C--- 192.168.0.1 ping statistics ---
23 packets transmitted, 23 packets received, 0% packet loss
round-trip min/avg/max/stddev = 1.616/564.346/3427.213/1015.102 ms

J'ai changé de routeur (de TL-WR743ND à DIR-815), j'ai essayé plusieurs adaptateurs Wi-Fi USB (principalement des TP-LINK, bien que je pense avoir eu le problème avec D-Link DWA-160 également), je suis passé de 2,5 GHz à 5GHz et j'ai parcouru les canaux. Pas de chance, le problème a persisté.

Jusqu'à ce que je remarque que lorsque je fais un test de vitesse du réseau ou que je lance un client bittorrent, le ping est correct. Il fluctue uniquement lorsque le réseau est inactif.

Il s'agit peut-être d'un problème lié à Windows 7 ou à mes adaptateurs TP-LINK, mais lorsque je sollicite un peu le Wi-Fi, la fluctuation disparaît et le réseau fonctionne correctement.

Pour l'instant, j'ai créé un petit programme Rust pour maintenir mon réseau Wi-Fi.

// Need a constant wifi load in order not to have the ping drops.
fn wifi_load() {
  // This *might* be useful if the router suddenly supports Keep-Alive.
  // Not the case with DIR-815 though, we'll keep making new connections to it.
  let config = hyper::client::pool::Config {max_idle: 1};

  let client = hyper::client::Client::with_pool_config (config);
  loop {
    let url = "http://192.168.0.1/css/init.css";
    if let Err (err) = client.get (url) .send() {
      log! ("wifi_load] Error fetching {}: {}", url, err);
      sleep (Duration::from_secs (9));}
    sleep (Duration::from_millis (100));}}

SistemesEz.com

SystemesEZ est une communauté de sysadmins où vous pouvez résoudre vos problèmes et vos doutes. Vous pouvez consulter les questions des autres sysadmins, poser vos propres questions ou résoudre celles des autres.

Powered by:

X