Snoop output: как отображать читаемые пакетные данные в одну строку?
Я получаю одни и те же данные (пакеты UDP) из двух разных источников (на 2 разных сетевых картах). Я хотел бы выяснить, является ли один источник "быстрее", чем другой, сравнивая временные метки приема пакет за пакетом.
для этого я планирую одновременно отслеживать оба интерфейса, согласовывать пакеты и соответственно сравнивать временные метки.
однако у меня возникают проблемы с выводом snoop: чтобы правильно согласовать каждый пакет, мне нужно было бы иметь "одну строку" данных на пакет, но разные варианты snoop, которые я обнаружил, не дают мне этого. самое близкое, что я мог найти, это "snoop -x 0", который будет отображаться как в шестнадцатеричном, так и в ascii, но мне не нужно hexa, и мне нужно ascii в одной строке...
есть идеи как этого добиться?
2 ответа
Wireshark позволяет захватывать пакеты с нескольких интерфейсов, поэтому вы можете использовать его в первую очередь, если он установлен на вашем сервере. Если вы хотите проанализировать и объединить существующие записи, он также может объединить их, как описано здесь: http://www.wireshark.org/docs/wsug_html_chunked/ChIOMergeSection.html
Скажите snoop записать пакеты в файл (-o файл) и загрузить его с помощью Wireshark.
Если вы собираетесь прослушивать в течение длительного периода времени и вас не интересует фактическое содержимое пакетов, скажите snoop ограничить его первыми X-байтами, чтобы записывать только заголовки (например, -s 120).