Jump to content

Como medir tempos de resposta de servidores remotos com ICMP?


teckV

Recommended Posts

existem várias formas de fazer métricas e isso têm a ver com conhecimentos de networking e não é numa resposta que se explica isso... mas para ficarem com uma ideia vou mostrar o sistema de métrica mais simples e sobejamente usado por sysAdmins... outros involvem a criação de pacotes com o hping2.. explora esse utilitário ou então usa o scapy ou outra lib do género... (a biblioteca scapy está entre as ferramentas mais premiadas na sondagem da insecure.org)

mas vamos simplificar... o comando "ping" serve para enviar pacotes ICMP usados para administração de redes e resolução de problemas...

na shell do linux ou na linha de comandos executem...

ping www.yaho.com

 

podem usar o site http://www.dnsstuff.com para fazerem pings mas atençao que se usarem um serviço destes o ping é feito a partir do servidor com o site... façam um script que faça pings e coloquem-no num webServer na vossa maquina... configurem o browser para usar um proxy.. depois comparem os tempos de retorno com e sem proxy para verem a métrica do proxy

no resultado podem ver linhas deste tipo... este exemplo testa a ligação

Ping #1: Got reply from 213.0.106.80 in 114ms [TTL=245]
Ping #2: Got reply from 213.0.106.80 in 114ms [TTL=245]
Ping #3: Got reply from 213.0.106.80 in 123ms [TTL=245]
Ping #4: Got reply from 213.0.106.80 in 120ms [TTL=245]

podem encontrar um valor em ms (milisegundos) no caso 113ms... isto é o tempo de resposta do pacote... portantos quanto maior for o numero/tempo mais lento é o site

metrica para o site www.ossim.net

Ping #1: Got reply from 213.0.106.80 in 114ms [TTL=245]
Ping #2: Got reply from 213.0.106.80 in 114ms [TTL=245]
Ping #3: Got reply from 213.0.106.80 in 123ms [TTL=245]
Ping #4: Got reply from 213.0.106.80 in 120ms [TTL=245]

metrica para o site www.sapo.pt

Ping #1: Got reply from 213.13.146.110 in 110ms [TTL=116]
Ping #2: Got reply from 213.13.146.110 in 110ms [TTL=116]
Ping #3: Got reply from 213.13.146.110 in 110ms [TTL=116]
Ping #4: Got reply from 213.13.146.110 in 111ms [TTL=116]

Ping to www.portugal-a-programar.org

Ping #1: Got reply from 195.22.25.165 in 138ms [TTL=48]
Ping #2: Got reply from 195.22.25.165 in 121ms [TTL=49]
Ping #3: Got reply from 195.22.25.165 in 124ms [TTL=48]
Ping #4: Got reply from 195.22.25.165 in 120ms [TTL=48]

Ping to www.verycd.com - vejam este site... está cheio de hashes para a rede ed2k... muito fixe mesmo.. é chinoca...

Ping #1: Got reply from 61.129.78.45 in 557ms [TTL=51]
Ping #2: Got reply from 61.129.78.45 in 559ms [TTL=51]
Ping #3: Got reply from 61.129.78.45 in 569ms [TTL=51]
Ping #4: * [No response]

Ping to www.google.com

Ping #1: Got reply from 64.233.161.104 in 7.1ms [TTL=245]
Ping #2: Got reply from 64.233.161.104 in 7.2ms [TTL=245]
Ping #3: Got reply from 64.233.161.104 in 7.9ms [TTL=246]
Ping #4: Got reply from 64.233.161.104 in 7.2ms [TTL=246]

e o que é que isto vos diz??? que o site www.verycd.com (557ms) está muito lento com um tempo de resposta 5 X maior que o www.sapo.pt (110ms)... o portugal a programar está com uma resposta razoavel em comparação com os outros e o google.com REBENTA com um tempo BOMBASTICO de 7ms... da-se... não é facil encontrar tempos destes na ordem dos 7 milisegundos

resultado por ordem de rapidez..

www.google.com - 7ms

www.sapo.pt - 110ms

www.ossim.net - 114ms

www.portugal-a-programar.org - 138ms

www.verycd.com - 557ms

capiche?? espero que sim... no exemplo fiz a métrica de servidores web mas podem usando socks5 ou outros métodos para fazer metricas especificas ao proxy... mas a metodologia e o conceito +e este...

teckV

house of horus

Link to comment
Share on other sites

epa... mas isto n mede o desempeno do site Isto mede o tempo que um pacote demora a chegar ao destino "pingado" somado com o tempo de regresso do pacote de resposta.

Não se pode concluir daqui se o servidor está lento ou rápido, apenas se a LIGAÇÃO está lenta ou rápida. Claro que isso depende do caminho tomado pelos pacotes e da topologia da rede.

Link to comment
Share on other sites

  • 1 month later...
epa... mas isto n mede o desempeno do site Isto mede o tempo que um pacote demora a chegar ao destino "pingado" somado com o tempo de regresso do pacote de resposta.

Não se pode concluir daqui se o servidor está lento ou rápido, apenas se a LIGAÇÃO está lenta ou rápida. Claro que isso depende do caminho tomado pelos pacotes e da topologia da rede.

eu por vezes fico mesmo confuso com certas cenas aqui...

o intuito deste post vei no seguimento de um outro topico onde se questionava a forma de medir os tempos de resposta de um proxy, isto é, alguem queria saber se um determinado proxy está lento ou não e tambem entre varios proxys qual é o mais rapido...

no titulo falo em ICMP e como todos sabem uma das funções do ICMP são as métricas... o ICMP é um protocolo de administração de redes e como tal é de redes que estou a falar... é estranho ter de dizer estas coisas todas para que os users não se confundam com certas afirmações...

o ppl tem de perceber o contexto dos topicos dos outros para não se arranjar entropia e quando se tem algo positivo a acrescentar que se acrescente mas levantar apenas a confusão é assim...

o que está aqui em causa é medir os tempos da rede (tendo em conta que falo de ICMP).. portantos com as me´tricas ICMP (e foi para isso que foram criadas) podem ver o tempo de resposta de um servidor a nivel de pacotes claro...

mas tendo em conta o uso dos proxys não é isso que nos interessa??? não é saber se a ligação fica muito lenta ou não?? vejam com atenção os posts...

portantos temos um sercvidor servidor e um proxy e um cliente

para medir as repostas fazem um ping ao servidor sem proxy... registam o tempo de resposta... agora fazem um ping recorrendo ao proxy, portantos o pactote vai passar pelo proxy e vai chegar ao servidors... registam a metrica... estão a perceber?? assim podem calcular a reposta de um proxy e se é lento ou não e até o quanto mais lento fica a ligação com esse proxy...

era exactamente isto que queria dizer...

teckV

Link to comment
Share on other sites

  • 3 weeks later...

Li com atenção este tópico, e deu-me vontade de registar-me apenas para adicionar o meu grãozinho de areia 😉

Aqui vai um pequeno script em bash (apenas para linux), que aceita um argumento e retorna a metrica entre o computador e o servidor:

[ruben@nova ~]# touch imprimirMetrica.sh
[ruben@nova ~]# chmod +x imprimirMetrica.sh
[ruben@nova ~]# nano imprimirMetrica.sh

Fazer o copy paste destas linhas:

#! /bin/bash
ping -c 4 $1 | head -n 4 | tail -n 1 | awk '{print"",substr($7,6)}'

e depois já podem "brincar as metricas" da seguinte forma:

[ruben@nova ~]# ./imprimirMetrica.sh www.portugal-a-programar.org
61.6
[ruben@nova ~]#

Sei que não é uma grande ajuda, mas sempre pode dar jeito para iniciar outro programa mais completo que pode permitir calcular métrica de vários sites, onde o resultado seria apresentado na consola ou numa página web... Até talvez com um output em MRTG 😉

De qualquer modo, é sempre um bom exercicio para jogar com comandos básicos do linux (head, tail, awk etc...)

Cumprimentos,

Já agora, usei o ping -c 4, na medida em que as vezes o primeiro ping é mais demorado, podia utilizar o ping -c 2, mas por questão de fiabilidade preferi fazer 4 pings antes de imprimir o resultado.

Link to comment
Share on other sites

  • 2 weeks later...

acrescento que o comando tracert (win) ou traceroute (linux) tambem dá uma grande ajuda...

o traceroute mostra todos os hops (pontos por onde passa, routers, hosts) de uma ligação...

tipo... uma ligação passa por varios pontos intermédios e com o traceroute pode medir os tempos entre os varios pontos

sobre o traceroute em linux

sobre o tracert em windows

teckV

Link to comment
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
×
×
  • Create New...

Important Information

By using this site you accept our Terms of Use and Privacy Policy. We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.