Сплит файлы.pcap в зависимости от времени

Я получил.pcap файлы, которые нужно разбить на временные интервалы (например: 1 сек). Это означает, например, что первый набор пакетов, поступивших в первую 1 секунду, затем следующий набор пакетов, поступивших в течение следующих 1 секунды, и так далее. Когда я использую приведенный ниже код python (3.7), файлы разделяются. Но значение "дельта времени от предыдущего отображаемого кадра" отличается во всех разделенных файлах. Он назначается на ноль. Дельта времени других пакетов верна. Только первый пакет из всех разделенных файлов отличается. Мне нужно, чтобы разделенные файлы имели те же значения, что и исходный файл. Как я могу изменить свой код Python, чтобы разделить файлы.pcap и получить те же значения, что и исходный файл. Есть ли другой способ, кроме использования editcap?

    import os
    startdir='.'
    for root, dirs, files in os.walk(startdir):
      for file in files:
        if file.endswith('.pcap'):
          filename=os.path.join(root,file)
          cmd = 'editcap -i 1 "{}" "{}"'.format(filename,filename)
          os.system(cmd)

1 ответ

Вы можете использовать editcap, и он принимает значения с плавающей запятой (например, 0,5):

      editcap -i <seconds per file> <input_file> <output_file_format>

Подробнее здесь - https://www.wireshark.org/docs/man-pages/editcap.html

Другие вопросы по тегам