Quais ferramentas posso usar para simular uma WAN para tráfego HTTP?

13

Às vezes, preciso simular um ambiente WAN entre meu cliente e servidor. Quero dizer, especificamente, do mais importante ao menos:

  • Limite total de largura de banda,
  • Atrasos longos ocasionais (muitas dezenas de segundos)
  • nervosismo

De preferência, o simulador de WAN poderia atuar como um proxy - aponto meu cliente para o simulador de WAN e o simulador de WAN conversa com o servidor. Passei muito tempo pesquisando no Google para encontrar algo que faça isso e descobri muito pouco.

Obviamente, sei que existem várias soluções que posso implementar controlando a topologia de rede e inserindo dispositivos no meio, mas a TI controla a rede. Eu sou apenas um desenvolvedor.

Quais ferramentas gratuitas ou de baixo custo que vocês sabem que podem ajudar a simular uma WAN?

Eddie
fonte
Que ambiente você está usando? Há várias coisas que você pode fazer com a pilha de rede se você estiver usando Linux ...
Hamish Downer

Respostas:

6

http://communities.vmware.com/blogs/Knorrhane/2008/01/23/how-to-simulate-wan-connections-in-your-own-test-lab-for-free

saschabeaumont
fonte
No artigo, eles mencionam que Tmurgent também apresenta latência para teste. Isso é fundamental. Descobrimos da maneira mais difícil com nosso aplicativo interno que a largura de banda não era o principal problema, era a latência. Temos que ter muito cuidado ao criar nossos objetos no cliente, porque todas as chamadas SQL podem resultar em custos reais em um ambiente WAN com latência.
234 Aaron
7

Se você usa Linux, pode usar o tc - o programa de controle de tráfego. Deve ser padrão em sua distribuição. Por exemplo, para definir a velocidade máxima do upload (neste caso, 100 kbit por segundo):

$ sudo tc qdisc add dev eth1 root tbf rate 100kbit latency 600ms burst 1540   

para definir a velocidade máxima do download (neste caso, 500 kbit por segundo):

$ sudo tc qdisc add dev eth0 root tbf rate 500kbit latency 600ms burst 1540

O tc pode fazer muito mais do que isso. Não consigo encontrar a referência agora, mas você pode soltar pacotes etc. com o tc. Para saber mais, você pode ler o howto de controle de tráfego .

Como alternativa, você pode procurar no tcng - Traffic Control Next Generation - ele usa o tc em um nível baixo, mas possui uma linguagem um pouco mais agradável para especificar o que você faz. Eu nunca usei isso, mas há um howto tcng e um manual de tcng .

Hamish Downer
fonte
3

Há uma empresa chamada Shunra especializada nisso. Não tenho nenhuma experiência com eles, mas eles já existem há algum tempo.

Joel Spolsky
fonte
2

DummyNet é um software gratuito que pode ser usado para simular várias condições de rede. Se você possui uma máquina sobressalente, instale o FreeBSD e o DummyNet e coloque-o em linha entre seu cliente e servidor. Você pode ajustar o DummyNet para variar a latência, instabilidade e perda que ocorrer.

EDIT: basta reler a pergunta e perceber que você não possui sua rede. Nesse caso, configure o DummyNet em uma máquina com duas NICs e transforme-o em um roteador que tenha sua WAN corporativa de um lado e sua estação de trabalho do outro. Não deixe de falar com seu departamento de TI primeiro para garantir que eles não tenham problemas com você!

Murali Suriar
fonte
2

lagfactory

Envolve tc para fornecer um comportamento aleatório não confiável da rede.

Cawflands
fonte
1

Aposto que você poderia criar um plug-in do Fiddler para simular algo assim, mas não conheço uma solução pronta para uso.

jj33
fonte