Como simular a latência da rede / adicionar latência artificialmente a uma rede?

Eu preciso fazer um programa do Windows usando. net, C, C# que adiciona latência aos dados que se movem através desse computador em uma rede. Basicamente, se eu tenho uma sala cheia de computadores, eu quero este programa para transformar um computador em um nó que atrasa a informação que se move através dela como se essa informação é de passar de um computador para outro de 500 quilômetros de distância. Isto é para testar programas em um laboratório como se eles estão sendo usados através da internet. O programa tem que lidar com udp, tcp, ipv4, ipv6, e pim ligações multicast.

Estive a vasculhar a. NET. System.Net API a tentar descobrir quais ferramentas de API seriam úteis, mas não tenho a certeza por onde começar. Preciso de criar um programa cliente e um programa servidor e usar o System.Net.Sockets para as ligações tcp e udp e os endpoints ip para o ipv4 e o ipv6?

Se possível, eu gostaria de fazer um programa que você executa em um computador que adiciona latência a tudo que passa por ele. Ser possível / viável?

Gostava de ter mais para apresentar para obter respostas mais específicas, mas não sei por onde começar.

Author: user3109637, 2013-12-17

1 answers

Há uma série de produtos que já fazem isso, lá fora:que se sentam na pilha e permitem ajustar as velocidades da linha, Latência, Perda de pacotes, duplicação de pacotes e assim por diante.

O projecto dummynet

Emulador De Ligação 'SoftPerfect'

 0
Author: Code Uniquely, 2013-12-17 04:40:26