2017-06-14 194 views
0

私はパケットのタイムスタンプを取得するためにdpktライブラリを使用しており、秒に変換する必要があります。以下は、パケットのタイムスタンプを取得するための私のコードです:DPKTを使用するパケットのPythonタイムスタンプ

f = open('test.pcap') 
pcap = dpkt.pcap.Reader(f) 
for ts, buf in pcap: 
     print "timestamp:",ts 

私はここに2つの質問があります。
1.私はドキュメントからこれを確認することはできませんよとミリ秒単位のタイムスタンプされていますか?
2.ミリ秒単位の場合...秒に変換するにはts/1000.0が良いでしょうか?

答えて

0

見てください、秒、ミリ秒、ナノ秒は時間の単位です。右? While、 タイムスタンプは、パケットが送受信される瞬間です。通常、Wiresharkでは、タイムスタンプは日付(1970年1月1日以降の日数)と時刻(深夜からのナノ秒単位)で構成されます。 (ツールとPythonをdpkt使用)の差は、次の一行コードを明確にした後すぐ

print ('Timestamp: ', str(datetime.datetime.utcfromtimestamp(ts))) 

タイムスタンプに変換することができる:2019年9月5日08:59:34.269526

AMは私はクリア?

+0

タイムスタンプは、パッケージが送受信される瞬間ではなく、任意の瞬間に適用される(Wiresharkのパッケージだけでなく、任意の言語の変数にタイムスタンプを格納することもできます)時間があることを表す*何かが起こった)。 – DarkCygnus

+0

また、そのコード行が何をしているのかを明確にしてください。あなたがあなたの説明の一部を見逃してしまったように見えるか(...?)、少なくともあなたが意味するものは得られなかった。また、スタックオーバーフローへようこそ:)あなたのコーディング – DarkCygnus

+0

@ GrauCygnus、あなたは正しいですが、問題は、pcapファイルのパケットのタイムスタンプに固有のものでした... –

関連する問題