SharpPcap + PacketDotNet ライブラリを使用していくつかの .pcap ファイルを処理していますが、タイムスタンプの計算方法にバグがありました。
次の行に沿ったものである、この Timeval プロパティを取得します。
PosixTimeval Timeval
{
DateTime Date;
ulong Seconds;
ulong MicroSeconds;
}
問題は次のとおりです。「0.002」のタイムスタンプを持つパケットの 1 つで、Wireshark で開いているトレースがあるとします。プログラムのいずれかで開くと、パケットが取得され、その Timeval が と のように設定されSeconds = 0
ますMicroSeconds = 002 = 2
。これは内部で行われるため、私が知る限り回避する方法はありません。
私の質問は、その問題が、同じ c/c++ 関数のコレクションを中心に構築されていると思われる pcap ファイル形式を操作する他のライブラリ (そしておそらくすべてのライブラリ) に共通するものなのか、それともこれが私が使っているもの。