Ich habe den UDP-Verkehr in einer PCAP-Datei aufgezeichnet. Beim Wiedergeben mit tcpreplay-edit
möchte ich alle Pausen (in denen überhaupt kein UDP-Verkehr stattfindet) auf x seconds
das Maximum verkürzen. tcpreplay-edit
hat 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.