Como depurar velocidade lenta de navegação?

10

Estou usando o Ubuntu 12.04, Chromium 18.0.1025.151 (Desenvolvedor Build 130497 Linux) Ubuntu 12.04, Firefox 12.0, mas estou obtendo baixa velocidade de navegação. O navegador sempre mostra "Waitng for aaa.bbb.com" na parte inferior do navegador. Como posso depurar isso e descobrir o motivo? Estou conectando à rede 3G via rede Bluetooth PAN de um dispositivo Android. Algumas estatísticas abaixo.

$ 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

Também existe um navegador que fornece mais detalhes ao carregar uma página?

Edit: mais informações da resposta 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
fonte
inicie com o terminal ?! e se esse não funcionar, adicione o parâmetro -debug ou -dev, não faço ideia se isso funciona, mas vale a pena tentar.
22812 Dr_Bunsen
O problema provavelmente está no fato de você estar conectado por meio de um PAN de um dispositivo móvel com mais de 3G, que pode ser lento às vezes. Os pings lentos do google sugerem isso também.
jackweirdy
Também olhar para a saída netstat -anpara ver o que abertos, conexões de mascar de largura de banda que você pode ter sem ter consciência disso (como o mecanismo do Ubuntu atualização automática, um cliente torrent esquecido, etc.)
fofo
@jackweirdy Não estou falando apenas de navegação lenta. Às vezes, ele carrega para sempre e, quando clico em "Ir novamente", carrega instantaneamente. Sobre pings lentos, sou da Índia.
Binoy Babu 06/06/12
@fluffy Nada está usando a largura de banda
Binoy Babu

Respostas:

15

Use curlpara descobrir qual parte do processo de carregamento de um site está causando problemas

Em geral, você pode depurar a "navegação" (ou http / s) usando curlcom a -wopção

  • Abra o terminal e sudo apt-get install curl(se ainda não o tiver)
  • Crie um arquivo chamado curl-timing.cfg, digamos, seu diretório inicial. Nele, cole:

    \ n
          Pesquisa de DNS:% {time_namelookup} \ n
          Conecte-se ao servidor (TCP):% {time_connect} \ n
          Conectar-se ao servidor (HTTP / S):% {time_appconnect} \ n
          Tempo desde o início até o início da transferência:% {time_pretransfer} \ n
          Hora do redirecionamento (se houver):% {time_redirect} \ n
          Tempo total antes do início da transferência:% {time_starttransfer} \ n
    \ n
                 Tempo total:% {time_total} \ n
                 Tamanho do download (bytes):% {size_download} \ n
                 Velocidade d / l média (bytes / s):% {speed_download} \ n
    \ n
    
  • Em seguida, tente baixar qualquer URL, suponha o google, com:

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

  • e a saída terá a forma:

      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
    

  • Compare com a busca de uma página da Web de um servidor indiano para os EUA:

    $ 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
    


  • Isso indicará quais etapas são o elo mais fraco. Tente com vários sites e até downloads de arquivos. Se curlvocê obtiver bons resultados gerais, o problema pode estar no seu navegador / aplicativo, em vez de no TCP / HTTP e na sua conexão de rede.
  • Para mais opções, consulte a página de manual curl . Procure --writeoutpular rapidamente para a seção relevante.
ish
fonte
1
Uau, enrolar é realmente um canivete suíço neste momento. Eu não sabia sobre a opção -w. Handy!
fofo
@izx, veja a pergunta editada. A saída parece boa. Elinks também funcionam bem. Ao usar o navegador afetado, a mesma página carregaria rápido (normal) ou continuaria carregando para sempre. O que o navegador (Chromium) está fazendo enquanto exibe "Aguardando <host> ..."?
precisa
Por favor, tente com os sites que estão causando problemas - usei esses dois como exemplo. Eu não uso regularmente o cromo, portanto, acho que ele está aguardando a conexão ser estabelecida ... a Connect to Server (TCP/HTTP)parte.
Ish
1
Coisa legal! Mas para mim, diz: DNS lookup: 8.5 sec / Connect to server (TCP): 9.0 sec / Total time: 9.6 sec"Isso não se encaixa. (?)
phil294