Nós capturamos muitos arquivos pcap todos os dias em muitos grupos multicast diferentes. Para fins de teste & benchmarking, queremos reproduzir esses arquivos em um ambiente isolado e de maneira controlada. Esses arquivos pcap são capturados simultaneamente, mas em diferentes grupos multicast & portas.
Eu quero repetir esses arquivos de volta para a rede (possivelmente com ttl = 0 ou 1) na ordem em que os pacotes foram gravados e em diferentes grupos de multicast (e especificáveis). Essa ordenação deve ser sincronizada em todos todos dos arquivos que estão sendo reproduzidos.
Por exemplo, suponha que tenhamos dois arquivos de captura, foo.pcap
e bar.pcap
. Queremos reproduzir foo.pcap
pacotes no grupo mcast 239.255.0.1:30001, e os pacotes bar.pcap
devem ser reproduzidos em 239.255.0.2:30002.
foo.pcap
tem pacotes registrados em deslocamentos de tempo 0, 1 e 5. bar.pcap
tem pacotes registrados em deslocamentos de tempo (em relação a foo.pcap
) 3, 4 e 5.
Então, o que estou procurando é uma maneira de reproduzir esses pacotes em uma ordem sincronizada entre foo.pcap
e bar.pcap
. Em outras palavras, os primeiros 2 pacotes de foo.pcap
devem sair para 239.255.0.1:30001 e, em seguida, os dois primeiros pacotes de bar.pcap
devem sair em 239.255.0.2:30002 e, em seguida, o último pacote de foo.pcap
deve sair ao mesmo tempo (ou próximo a ele) como o último pacote de bar.pcap
.
Também precisamos ser capazes de ajustar a taxa na qual os pacotes são repetidos. por exemplo, na velocidade registrada; 10x velocidade registrada; 1 GB / seg; etc
Como posso conseguir isso?
Procurei ferramentas como tcpreplay e bittwist , mas essas ferramentas não serão enviadas em grupos diferentes ou não sincronizarão a ordem de saída em todos os arquivos.