Pausen größer als x aus PCAP-Datei entfernen

Pausen größer als x aus PCAP-Datei entfernen

Ich habe den UDP-Verkehr in einer PCAP-Datei aufgezeichnet. Beim Wiedergeben mit tcpreplay-editmöchte ich alle Pausen (in denen überhaupt kein UDP-Verkehr stattfindet) auf x secondsdas Maximum verkürzen. tcpreplay-edithat nur einen globalen Geschwindigkeitsmultiplikator.

Gibt es eine automatisierte Möglichkeit, dies zu tun? Idealerweise ohne auf GUIs wie zurückzugreifen wireshark, aber jede Lösung ist willkommen.

Antwort1

Ich bin immer noch neugierig, ob es eine Möglichkeit gibt, aber in der Zwischenzeit habe ich einen Workaround für den vorliegenden Fall gefunden, indem ich einen der folgenden Parameter verwende tcpreplay-edit:

-p Zahl, --pps=ZahlPakete mit einer bestimmten Anzahl an Paketen/Sek. erneut abspielen.

-M Zeichenfolge, --mbps=ZeichenfolgePakete mit einer bestimmten Mbit/s-Zahl erneut abspielen.

-t, --topspeedPakete so schnell wie möglich erneut abspielen.

Antwort2

Mit Drehbuch? Sicher. Ohne Drehbuch? Naja, so ungefähr.

Sie können die Option -S (strenge Zeitanpassung) von editcap mit einem negativen Wert verwenden, um die Zeit aller Pakete an den Zeitstempel des vorherigen Pakets plus den Wert -S anzupassen. Ein positiver Wert für -S passt den Zeitstempel nur an, wenn die Zeit des Pakets vor dem Zeitstempel des vorherigen Pakets liegt. Für diesen Anwendungsfall möchten Sie sie alle anpassen.

Wenn Sie also 3 Pakete mit Zeitstempeln wie diesen haben:

23:00:00.100
23:01:00.345
23:05:00.678

Und wenn Sie „editcap“ mit „-S -0.001“ auf der PCAP-Datei ausführen, erhalten Sie:

23:00:00.100
23:00:00.101
23:00:00.102

Hoffentlich ist das verständlich und hilft Ihnen weiter.

http://www.wireshark.org/docs/man-pages/editcap.html

verwandte Informationen