ping parece estar expirando em uma duração menor que a especificada?

2

Estou vendo um comportamento estranho com o comando ping embutido que não entendo. (isso está em uma caixa windows 2012 r2 - eu não verifiquei se esse comportamento é visto em outras versões do windows)

Se eu definir o tempo limite (em ms) para um valor como 120, verifico consistentemente tempos limites intermitentes ao fazer ping de um host remoto (cerca de 10 saltos)

ping -t -w 120 myhost.domain.local
Reply from (removed): bytes=32 time=21ms TTL=246
Reply from (removed): bytes=32 time=23ms TTL=246
Request timed out.
Reply from (removed): bytes=32 time=25ms TTL=246
Reply from (removed): bytes=32 time=22ms TTL=246

está tudo bem, EXCETO, se eu deixar o tempo limite do ping no seu valor padrão (que é de 5.000 ms) não vejo nenhum tempo limite, e nunca vejo um tempo relatado maior que 30 ms.

Na verdade, posso executar duas instâncias de ping ao mesmo tempo, uma com -w 120 e outra com tempo limite padrão, e a instância com -w 120 terá tempos limite intermitentes, enquanto a outra instância não terá nenhum, e ambas as instâncias não mostrarão respostas maiores que 30 ms.

Alguém tem uma explicação por que parece que o ping está expirando em um intervalo muito mais curto do que aquele que estou especificando?

EDITAR:

Estou começando a pensar que o parâmetro -w não funciona de maneira alguma, certamente não está fazendo o que ele diz que deveria fazer. A descrição do comando ping é:

-w timeout     Timeout in milliseconds to wait for each reply.

então por que diabos isso não é tempo limite?

C:\Windows\System32>ping -w 10 google.com

Pinging google.com [66.58.255.29] with 32 bytes of data:
Reply from 66.58.255.29: bytes=32 time=46ms TTL=58

???

    
por bkr 24.04.2014 / 20:24

1 resposta

1

por documentação do MS

"Ao especificar números muito pequenos para o tempo limite, a resposta do Ping pode ser recebida mesmo se o tempo limite de milissegundos tiver decorrido."

Eu só posso concluir, com base em meus testes e na declaração acima, que o valor de tempo limite em Ping simplesmente não é muito preciso e, quando definido para 120 ms, você simplesmente obterá resultados imprevisíveis.

    
por 30.04.2014 / 08:50