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.