Comment déboguer une vitesse de navigation lente?

10

J'utilise Ubuntu 12.04, Chromium 18.0.1025.151 (Developer Build 130497 Linux) Ubuntu 12.04, Firefox 12.0 mais ma vitesse de navigation est médiocre. Le navigateur affiche toujours "Waitng for aaa.bbb.com" en bas du navigateur. Comment puis-je déboguer cela et découvrir la raison? Je me connecte au réseau 3G via le réseau Bluetooth PAN d'un appareil Android. Quelques statistiques ci-dessous.

$ dig asdsa.com

; <<>> DiG 9.8.1-P1 <<>> asdsa.com
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 39878
;; flags: qr rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 13, ADDITIONAL: 13

;; QUESTION SECTION:
;asdsa.com.         IN  A

;; ANSWER SECTION:
asdsa.com.      307707  IN  A   200.31.91.194

;; AUTHORITY SECTION:
com.            34662   IN  NS  e.gtld-servers.net.
com.            34662   IN  NS  a.gtld-servers.net.
com.            34662   IN  NS  k.gtld-servers.net.
com.            34662   IN  NS  h.gtld-servers.net.
com.            34662   IN  NS  g.gtld-servers.net.
com.            34662   IN  NS  l.gtld-servers.net.
com.            34662   IN  NS  j.gtld-servers.net.
com.            34662   IN  NS  c.gtld-servers.net.
com.            34662   IN  NS  b.gtld-servers.net.
com.            34662   IN  NS  m.gtld-servers.net.
com.            34662   IN  NS  d.gtld-servers.net.
com.            34662   IN  NS  f.gtld-servers.net.
com.            34662   IN  NS  i.gtld-servers.net.

;; ADDITIONAL SECTION:
a.gtld-servers.net. 50538   IN  A   192.5.6.30
a.gtld-servers.net. 59333   IN  AAAA    2001:503:a83e::2:30
b.gtld-servers.net. 40208   IN  A   192.33.14.30
b.gtld-servers.net. 45531   IN  AAAA    2001:503:231d::2:30
c.gtld-servers.net. 45531   IN  A   192.26.92.30
d.gtld-servers.net. 45526   IN  A   192.31.80.30
e.gtld-servers.net. 45526   IN  A   192.12.94.30
f.gtld-servers.net. 40177   IN  A   192.35.51.30
g.gtld-servers.net. 35936   IN  A   192.42.93.30
h.gtld-servers.net. 40177   IN  A   192.54.112.30
i.gtld-servers.net. 45526   IN  A   192.43.172.30
j.gtld-servers.net. 45526   IN  A   192.48.79.30
k.gtld-servers.net. 35936   IN  A   192.52.178.30

;; Query time: 227 msec
;; SERVER: 127.0.0.1#53(127.0.0.1)
;; WHEN: Wed Jun  6 22:40:19 2012
;; MSG SIZE  rcvd: 499


$ ping google.com
PING google.com (74.125.236.199) 56(84) bytes of data.
64 bytes from maa03s17-in-f7.1e100.net (74.125.236.199): icmp_req=1 ttl=54 time=173 ms
64 bytes from maa03s17-in-f7.1e100.net (74.125.236.199): icmp_req=2 ttl=54 time=162 ms
64 bytes from maa03s17-in-f7.1e100.net (74.125.236.199): icmp_req=3 ttl=54 time=228 ms
64 bytes from maa03s17-in-f7.1e100.net (74.125.236.199): icmp_req=4 ttl=54 time=236 ms
64 bytes from maa03s17-in-f7.1e100.net (74.125.236.199): icmp_req=5 ttl=54 time=162 ms
64 bytes from maa03s17-in-f7.1e100.net (74.125.236.199): icmp_req=6 ttl=54 time=215 ms
64 bytes from maa03s17-in-f7.1e100.net (74.125.236.199): icmp_req=7 ttl=54 time=218 ms
64 bytes from maa03s17-in-f7.1e100.net (74.125.236.199): icmp_req=8 ttl=54 time=232 ms
64 bytes from maa03s17-in-f7.1e100.net (74.125.236.199): icmp_req=9 ttl=54 time=212 ms
^C
--- google.com ping statistics ---
9 packets transmitted, 9 received, 0% packet loss, time 8007ms
rtt min/avg/max/mdev = 162.119/204.385/236.105/28.286 ms

Existe-t-il également un navigateur qui fournit plus de détails lors du chargement d'une page?

Edit: plus d'informations de la réponse de @izx

$ curl -w "@curl-timing.cfg" -o /dev/null -s http://www.google.com/

      DNS lookup                          :  0.363
      Connect to server (TCP)             :  0.512
      Connect to server (HTTP/S)          :  0.000
      Time from start until transfer began:  0.512
      Time for redirection (if any)       :  0.000
      Total time before transfer started  :  0.749

             Total time                   :  0.749
             Size of download (bytes)     :  221
             Average d/l speed (bytes/s)  :  294.000

$ curl -w "@curl-timing.cfg" -o /dev/null -s http://india.gov.in

      DNS lookup                          :  0.351
      Connect to server (TCP)             :  0.526
      Connect to server (HTTP/S)          :  0.000
      Time from start until transfer began:  0.526
      Time for redirection (if any)       :  0.000
      Total time before transfer started  :  0.770

             Total time                   :  1.643
             Size of download (bytes)     :  34346
             Average d/l speed (bytes/s)  :  20905.000
Binoy Babu
la source
le démarrer avec le terminal?! et si cela ne fonctionne pas, ajoutez le paramètre -debug ou -dev, je ne sais pas si cela fonctionne, mais ça vaut le coup d'essayer.
Dr_Bunsen
Le problème réside probablement dans le fait que vous êtes connecté via un PAN d'un appareil mobile qui est sur 3G, ce qui peut être parfois lent de toute façon. Les pings lents de google le suggèrent également.
jackweirdy
Regardez également la sortie de netstat -anpour voir quelles connexions ouvertes et gourmandes en bande passante vous pourriez avoir sans en être conscient (comme le mécanisme de mise à jour automatique d'Ubuntu, un client torrent oublié, etc.)
moelleux
@jackweirdy Je ne parle pas d'une navigation lente. Parfois, il se charge indéfiniment et lorsque je clique sur Go, il se charge à nouveau instantanément. À propos des pings lents, je viens d'Inde.
Binoy Babu
@fluffy Rien n'utilise la bande passante
Binoy Babu

Réponses:

15

Utilisez curlpour savoir quelle partie du processus de chargement d'un site Web vous pose problème

En général, vous pouvez déboguer la "navigation" (ou http / s) en utilisant curll' -woption.

  • Ouvrez le terminal et sudo apt-get install curl(si vous ne l'avez pas déjà)
  • Créez un fichier appelé curl-timing.cfgdisons, votre répertoire personnel. Dans ce document, collez:

    \ n
          Recherche DNS:% {time_namelookup} \ n
          Se connecter au serveur (TCP):% {time_connect} \ n
          Se connecter au serveur (HTTP / S):% {time_appconnect} \ n
          Temps entre le début et le début du transfert:% {time_pretransfer} \ n
          Temps de redirection (le cas échéant):% {time_redirect} \ n
          Temps total avant le début du transfert:% {time_starttransfer} \ n
    \ n
                 Durée totale:% {time_total} \ n
                 Taille du téléchargement (octets):% {size_download} \ n
                 Vitesse moyenne d / l (octets / s):% {speed_download} \ n
    \ n
    
  • Ensuite, essayez de télécharger n'importe quelle URL, supposons Google, avec:

    curl -w "@curl-timing.cfg" -o /dev/null -s http://www.google.com/

  • et la sortie sera de la forme:

      DNS lookup                          :  0.012
      Connect to server (TCP)             :  0.031
      Connect to server (HTTP/S)          :  0.000
      Time from start until transfer began:  0.031
      Time for redirection (if any)       :  0.000
      Total time before transfer started  :  0.098
    
             Total time                   :  0.117
             Size of download (bytes)     :  14527
             Average d/l speed (bytes/s)  :  124347.000
    

  • Comparez la récupération d'une page Web d'un serveur indien aux États-Unis:

    $ curl -w "@ curl-timing.cfg" -o / dev / null -s http://india.gov.in

      DNS lookup                          :  0.377
      Connect to server (TCP)             :  0.716
      Connect to server (HTTP/S)          :  0.000
      Time from start until transfer began:  0.716
      Time for redirection (if any)       :  0.000
      Total time before transfer started  :  1.974
    
             Total time                   :  3.650
             Size of download (bytes)     :  34345
             Average d/l speed (bytes/s)  :  9408.000
    


  • Cela vous dira quelle (s) étape (s) sont le maillon faible. Essayez avec plusieurs sites Web et même des téléchargements de fichiers. Si curlvous donne de bons résultats dans l'ensemble, le problème peut venir de votre navigateur / application, au lieu de TCP / HTTP et de votre connexion réseau.
  • Pour plus d'options, consultez la page de manuel curl . Recherchez pour --writeoutaccéder rapidement à la section appropriée.
ish
la source
1
Wow, curl EST vraiment un couteau de l'armée suisse à ce stade. Je ne connaissais pas l'option -w. Pratique!
moelleux
@izx, veuillez consulter la question modifiée. La sortie semble correcte. Elinks fonctionne également très bien. Lors de l'utilisation du navigateur affecté, la même page se chargerait rapidement (normalement) ou continuerait de se charger indéfiniment. Que fait le navigateur (Chromium) alors qu'il affiche "En attente de <hôte> ..."?
Binoy Babu
Veuillez l'essayer avec les sites qui vous posent des problèmes - je viens de les utiliser comme exemple. Je n'utilise pas (régulièrement) du chrome, donc je suppose qu'il attend que la connexion soit établie ... la Connect to Server (TCP/HTTP)partie.
ish
1
Chose cool! Mais pour moi, ça dit: DNS lookup: 8.5 sec / Connect to server (TCP): 9.0 sec / Total time: 9.6 sec"ça ne va pas ensemble. (?)
phil294