Ich habe zwei PCAP-Dateien, A
und B
.Was ist der Unterschied zwischen einer PCAP-Datei mit einer magischen Zahl von "0x4d3cb2a1" und "0xd4c3b2a1"?
A
hat eine ‚magische Zahl‘ in der Kopfzeile d4 c3 b2 a1
, hat B
eine ‚magische Zahl‘ in der Kopfzeile 4d 3c b2 a1
. Laut der wireshark-Dokumentation (http://wiki.wireshark.org/Development/LibpcapFileFormat) sind nur 0xd4c3b2a1
und 0xa1b2c3d4
gültige magische Zahlen, was zu der Annahme führt, dass B keine gültige magische Zahl ist.
Lauf file
auf Linux unterstützt diese nach oben, mit dem Ausgang des file A
Seins:
tcpdump capture file (little-endian) - version 2.4 (Ethernet, capture length 65535)
file B
einfach gibt:
data
Es sieht so aus, dass, was auch immer B
schrieb schrieb er in einem ‚ausgelagert '(Little-Endian) -Format, schrieb aber die ersten twp Bytes mit den Nibbles falsch herum. Vorausgesetzt, ich würde erwarten, dass ein Big-Endian-System das ganze int32 anders herum schreibt und nicht die einzelnen Bytes, sondern eine magische Zahl von 1a 2b 3c 4d
.
Ist B
eine gültige Datei? Wenn ja warum? Können verschiedene Systeme sowohl 32-Bit-Ints als auch die einzelnen Nibbles in einem Byte in beliebiger Reihenfolge schreiben?
In Wireshark kann ich tatsächlich sehen, dass es den Frame-Zeitstempel auf 9dp für "B" anzeigt, aber effektiv nur 6dp für "A" (die letzten drei sind immer 0). 'B' wurde von einer spezialisierten NIC erzeugt, sieht so aus als ob es die ns Auflösung unterstützt. :) – growse
Sie benötigen entweder eine spezielle NIC oder ein Betriebssystem mit einem Erfassungsmechanismus, der eine Nanosekunden-Auflösung unterstützt, um Zeitstempel in Nanosekunden-Auflösung zu erhalten. Sie benötigen * auch * ein Programm und/oder eine Bibliothek, die diese hochauflösenden Zeitstempel von der NIC/OS erhalten und Zeitstempel mit einer Auflösung im Nanosekundenbereich schreiben können; irgendeine Idee, welches Programm das geschrieben hat? –
Hat noch mehr gegraben. Mehr als wahrscheinlich einer dieser http://www.napatech.com/products/network_adapters.html - denke, dass die Treiber das Schreiben von PCAP in 1ns Auflösung unterstützen. – growse