Estratégia precisa para medir o desempenho do link ponto a ponto?

12

Tenho o requisito de fornecer um meio preciso para demonstrar o desempenho da linha em um circuito Ethernet ponto a ponto de camada plana2 de 1 Gb, a aproximadamente 160 km de distância que aparentemente passa por vários saltos ao longo da distância.

O requisito de negócios precisará demonstrar desempenho com uma precisão de latência mínima de 8ms. O link transportará tráfego de voz e dados, pelo qual o SLA de serviço deve garantir largura de banda de 1000 Mb.

Quais são os métodos precisos conhecidos para medir o desempenho, considerando esses requisitos?
Estou ciente de várias métricas disponíveis que podem formar uma estratégia de teste, mas ter pesquisado no Google várias informações pode ficar avassaladora e não sei se software como o iPerth deve ser usado, qual é a referência para esse cenário, etc.?

MattE
fonte
Esta questão não é clara. O que você quer dizer com "medir o desempenho nesse tipo de conexão"? Como você mencionou, há várias métricas de desempenho que você pode medir ... (por exemplo, latência da rede, jitter, largura de banda, taxa de erro de bits). Você precisa esclarecer quais métricas devem ser testadas com a pessoa que forneceu o requisito para medir o desempenho.
Mike Pennington
1
Eu acho que essa é uma pergunta válida. Não é como se houvesse 1000 maneiras de descobrir se um link está funcionando como deveria. Existem métricas definidas que fornecerão a integridade do link.
Bigmstone
Mike - Eu acho que isso é claro o suficiente, embora eu aceite as métricas acordadas que precisarão ser estabelecidas. Eu queria algumas respostas sobre a experiência deles de quais estratégias eles empregaram com sucesso e que já têm ótimas informações, obrigado a todos. É um prazer editar, se você quiser sugerir algo mais conciso?
Matte
@MattEarp, estou dizendo que você está fazendo uma pergunta que não podemos responder (maneira mais precisa de medir o desempenho) ... depois de fazer testes de rede significativos em minha carreira, não sabemos o suficiente para realmente ajudar, a menos que você diga ... "Este circuito transportará tráfego de negociação financeira. Como posso testar o desempenho de taxas sem queda e medir a latência com precisão de 1ms", então temos algo para trabalhar. Com base nas necessidades do solicitante original e nos parâmetros do SLA do circuito, podemos ajudar a criar uma estratégia de teste ... mas não há informações suficientes no momento. Por favor, definir o uso de caso, métricas e requisitos de precisão
Mike Pennington
@ MikePennington - editei a pergunta com uma compreensão do que precisa ser medido em termos de latência mínima, que espero que você possa responder melhor.
29513 MattE

Respostas:

8

Se você está tentando testar 1xGE No Drop Rate e medir o atraso do circuito em 8ms, eu usaria o nuttcp para testar a largura de banda e o iperf2 / mtr para testar o atraso.

Eu faria o seguinte ...

  1. Encontre dois PCs desktop Linux , se possível (os laptops às vezes são aceitáveis, mas você pode ter problemas com o desempenho do chipset ou do barramento na velocidade 1GE). Você pode inicializar em um CD do Performance Sonar , se não quiser uma instalação permanente do linux nessas caixas
  2. Selecione os tamanhos dos pacotes para o seu teste. Como você precisa de suporte de voz no circuito, teste fluxos com quadros menores, como quadros Ethernet de 128 bytes. Se eu estivesse executando o teste, escolheria os quadros Ethernet de 128, 256, 768 e 1514 bytes.
  3. Teste o desempenho da largura de banda UDP nuttcp de seus PCs Linux conectados consecutivamente antes de enviar um deles a 160 quilômetros de distância. Você deseja garantir que você possa medir 1000 Mbps em vários tamanhos de pacote. Certifique-se de levar em consideração a diferença entre os quadros ao calcular as taxas de taxa de transferência esperadas ... por exemplo, a melhor taxa de transferência possível que você pode esperar de um circuito gigag sem marcação em um tamanho de quadro Ethernet médio de 128 bytes que é de 864,9 Mbps.
  4. Use iperf2 ou mtr para testar o atraso do circuito ...
  5. Escolha uma janela de teste. Eu acho que é melhor testar circuitos continuamente por pelo menos um dia ... dois dias a uma semana são preferíveis se você precisar ter uma noção de possível excesso de assinatura na rede da sua operadora.
  6. Envie um dos PCs para o site remoto, pré-configurado para o endereço IP necessário no link.

Pensamentos diversos

Outras respostas sugeriram usar o iperf2 sozinho; no entanto, ele não tem opções de CLI para ajustar o tamanho do pacote UDP. Também tende a demonstrar desempenho esquisito em altas velocidades no MS Windows.

Este documento do Metro Ethernet Forum sobre o teste de circuitos Ethernet de operadora ajudará a fornecer uma compreensão geral de algumas das compensações que você faz ao testar circuitos.

Mike Pennington
fonte
O iperf realmente mudou para a v3 em um novo site - code.google.com/p/iperf - ou você vinculou intencionalmente ao v2?
pauska
Eu testei com v3, mas v2 parece mais estável na minha experiência
Mike Pennington
Excelente ponto de teste em sequência antes do envio.
generalnetworkerror
6

O iperf pode fazer esse trabalho. Apenas certifique-se de testar seus dispositivos consecutivamente primeiro, para conhecer os recursos dos dispositivos.

Claro que também existem ferramentas profissionais.

Esta é uma boa RFC para ler a metodologia apropriada: http://www.ietf.org/rfc/rfc2544.txt

maduro
fonte
6

Se você tiver PCs nas duas extremidades, poderá executar xjperf , Qcheck a partir do Ixia ou de outras ferramentas. Você pode obter resultados diferentes, dependendo do uso de UDP ou TCP e do número de sessões.

Para uma distância acima de 160 km, você está procurando um RTT mínimo de 1,6 ms à velocidade da luz em fibra / cobre. Portanto, seu RTT deve ser muito baixo, talvez apenas alguns ms. Digamos que você tenha um RTT de 6 ms. Com as opções de tamanho de janela padrão no Windows, você pode obter apenas 85 Mbps de taxa de transferência. Você precisaria de um tamanho de janela de pelo menos 768 kbyte para enviar um show de tráfego.

Você pode usar o TCP da Calculadora de taxa de transferência para fazer seus próprios cálculos.

Ixia tem mais ferramentas de ponta, mas elas custam dinheiro que as ferramentas acima não custam.

Daniel Dib
fonte
+1 para xjperf / iperf. Extremamente útil nessas situações.
pauska
2

Como você deseja medir um circuito de camada 2, gostaria de enviar descaradamente algum software livre que tenho escrito. Ainda está na versão beta, mas faz exatamente o que você deseja com base nas informações da sua pergunta.

Ao contrário do nuttcp, iPerf, jPerf et al, o Etherate é executado diretamente na camada 2 projetada especificamente para testes de Ethernet. Como os outros, um laptop em cada um é tudo o que é necessário e meu laptop Intel i3 pode maximizar um link de show com facilidade.

Como está na fase beta, os recursos mais avançados ainda não estão prontos, como o teste MPLS, mas a taxa de transferência, latência e teste MTU (todos diretamente na camada 2 Ethernet) são implementados.

https://github.com/jwbensley/etherate

jwbensley
fonte
1

Para obter um "perfil de integridade" completo de um link, é necessário considerar várias métricas diferentes.

  • Latência
  • Jitter
  • Taxa de transferência
  • Perda

A melhor maneira de medir essas métricas com precisão é com um dispositivo dedicado para testes. Exfo, JDSU e Fluke são várias grandes empresas que fabricam dispositivos como este.

Um PC pode / pode testar essas métricas, mas você precisa garantir que não haja nada no computador distorcendo os números e que o aplicativo que você está usando é preciso.

O iperf medirá o rendimento da largura de banda, mas não medirá muito mais. O ping medirá a latência do momento no tempo, mas não a tremulação. Além disso, o eco do ICMP é realmente preciso para 1ms. Se você estiver tentando obter uma medição de latência real, precisará decidir se 1ms de granularidade é suficiente para você / seus aplicativos.

bigmstone
fonte
1

Iperf e mtr para fazer teste específico. E fumar para ter um histórico simples do desempenho do link usando o probe fping.

xmon
fonte