mschedrin Posted April 19, 2010 · Report post Добрый день. Задача. Снять сниффером на сервере отправляемый траффик. Снять на клиенте получаемый от сервера траффик, а затем сравнить их и понять сколько пакетов потеряно, сколько фрагментировано и т.п. Понятно, что можно это сделать с помощью tcpdump, но уж очень проблематично, на мой взгляд. Может быть кто-нибудь знает более удобные утилиты для решения подобных задач. В идеале было видеть все изменения в реальном времени. Естественно основной интерес представляют *nix системы. Вставить ник Quote Ответить с цитированием Share this post Link to post Share on other sites More sharing options...
XeonVs Posted April 19, 2010 (edited) · Report post в wireshark что-то похожее было Edited April 19, 2010 by XeonVs Вставить ник Quote Ответить с цитированием Share this post Link to post Share on other sites More sharing options...
jab Posted April 19, 2010 · Report post wireshark - это ethereal для виндузятников, вообще-то Вставить ник Quote Ответить с цитированием Share this post Link to post Share on other sites More sharing options...
qwertzy Posted April 19, 2010 (edited) · Report post wireshark - это ethereal для виндузятников, вообще-то И то, и другое есть как и под форточки, так и под никсы. В чём соль вашего высказывания? Edited April 19, 2010 by qwertzy Вставить ник Quote Ответить с цитированием Share this post Link to post Share on other sites More sharing options...
s.lobanov Posted April 19, 2010 · Report post >wireshark - это ethereal для виндузятников, вообще-то эээ... вообще-то его просто переименовали(формально форкнули). Порт под винду тут ни при чём Вставить ник Quote Ответить с цитированием Share this post Link to post Share on other sites More sharing options...
mschedrin Posted April 19, 2010 (edited) · Report post Как эта функция называется в wireshark? Искал - ничего не нашел похожего. Edited April 19, 2010 by mschedrin Вставить ник Quote Ответить с цитированием Share this post Link to post Share on other sites More sharing options...
voron Posted April 19, 2010 · Report post tcpflow для снятия сессий может подойти лучше Вставить ник Quote Ответить с цитированием Share this post Link to post Share on other sites More sharing options...
-Ars- Posted April 19, 2010 · Report post Как эта функция называется в wireshark? Искал - ничего не нашел похожего.Какая конкретно функция? Включаете сниффер - он начинает сниффить. Это то, что Вы просили. Или Вы чего-то недоговариваете? ;)Чтобы несколько проще было ориентироваться в сравнении траффиков - убедитесь, что время на клиенте и сервере засинхронизировано. Ну, или и там, и там - tcpdump в текстовый файл и потом каким-нибудь diff-ом сравнивать. Это, конечно, будет не real-time... Вставить ник Quote Ответить с цитированием Share this post Link to post Share on other sites More sharing options...
mschedrin Posted April 19, 2010 · Report post tcpflow для снятия сессий может подойти лучшеНужно сниффить udp траффик. С ним tcpflow работает? Судя по названию - нет :) Как эта функция называется в wireshark? Искал - ничего не нашел похожего.Какая конкретно функция? Включаете сниффер - он начинает сниффить. Это то, что Вы просили. Или Вы чего-то недоговариваете? ;)Чтобы несколько проще было ориентироваться в сравнении траффиков - убедитесь, что время на клиенте и сервере засинхронизировано. Ну, или и там, и там - tcpdump в текстовый файл и потом каким-нибудь diff-ом сравнивать. Это, конечно, будет не real-time... Я же написал в первом сообщении, что я понимаю как это сделать с помощью tcpdump и спрашивал как можно решить данную задачу более элегантно. Вставить ник Quote Ответить с цитированием Share this post Link to post Share on other sites More sharing options...
loginrl103 Posted April 20, 2010 · Report post посмотри в сторону pcapdiff, tpcat. сравнивают два pcap файлы с двух "сторон" Вставить ник Quote Ответить с цитированием Share this post Link to post Share on other sites More sharing options...
mschedrin Posted April 20, 2010 · Report post посмотри в сторону pcapdiff, tpcat. сравнивают два pcap файлы с двух "сторон"Спасибо, звучит интересно. Если сравнивать два pcap файла обычным diff то могут вылезти пролемы с чексуммами. Если сетевуха отправителя сама рассчитывает чексуммы пакета, то в дампе мы увидим мусор вместо правильного CRC. Таким образом отличаться будут все пакеты, найти реальные отличия будет проблематично. Вставить ник Quote Ответить с цитированием Share this post Link to post Share on other sites More sharing options...
loginrl103 Posted April 20, 2010 (edited) · Report post а почему должны различаться crc для одного и того же пакета, рассчитанных сетевой или программно? сетевой быстрее, программно медленнее - но результат то один...не? удп пакеты как-то нужно сопоставлять, для удп - чексумма самый надёжный вариант. pcapdiff - питон скрипт, сопоставление по crc можно заблокировать. ps. в wireshark есть statistics -> conversation list -> udp. отображение полученных/переданных данных по ип/портам... Edited April 20, 2010 by loginrl103 Вставить ник Quote Ответить с цитированием Share this post Link to post Share on other sites More sharing options...
mschedrin Posted April 20, 2010 · Report post а почему должны различаться crc для одного и того же пакета, рассчитанных сетевой или программно? сетевой быстрее, программно медленнее - но результат то один...не? удп пакеты как-то нужно сопоставлять, для удп - чексумма самый надёжный вариант. pcapdiff - питон скрипт, сопоставление по crc можно заблокировать. ps. в wireshark есть statistics -> conversation list -> udp. отображение полученных/переданных данных по ип/портам... Когда сетевая карта поддерживает расчет crc, то CPU уже не производит расчет суммы. Вставить ник Quote Ответить с цитированием Share this post Link to post Share on other sites More sharing options...
loginrl103 Posted April 20, 2010 · Report post а почему должны различаться crc для одного и того же пакета, рассчитанных сетевой или программно? сетевой быстрее, программно медленнее - но результат то один...не? удп пакеты как-то нужно сопоставлять, для удп - чексумма самый надёжный вариант. pcapdiff - питон скрипт, сопоставление по crc можно заблокировать. ps. в wireshark есть statistics -> conversation list -> udp. отображение полученных/переданных данных по ип/портам... Когда сетевая карта поддерживает расчет crc, то CPU уже не производит расчет суммы. это я знаю, вопрос был насчёт "Если сетевуха отправителя сама рассчитывает чексуммы пакета, то в дампе мы увидим мусор вместо правильного CRC" - почему crc должны быть разной для аппаратно и программно рассчитанных? Вставить ник Quote Ответить с цитированием Share this post Link to post Share on other sites More sharing options...
UglyAdmin Posted April 21, 2010 · Report post Потому что снифер получает исходящие пакеты ДО сетевой карты. Вставить ник Quote Ответить с цитированием Share this post Link to post Share on other sites More sharing options...
loginrl103 Posted April 21, 2010 · Report post до сетевой карты? телепатически из воздуха?) он получает карты ИЗ драйвера сетевой карты, ДО обработки пакетов сетевой подсистемой; crc должен быть одним и тем же в случае расчёта как программно так и аппаратно. Вставить ник Quote Ответить с цитированием Share this post Link to post Share on other sites More sharing options...
voron Posted April 21, 2010 · Report post 2loginrl103 Речь об исходящем трафике. crc ещё не рассчитан, это сделает сетевая карта перед отправкой пакета. Вставить ник Quote Ответить с цитированием Share this post Link to post Share on other sites More sharing options...
loginrl103 Posted April 22, 2010 · Report post а pcap точно сработает до расчёт crc? Вставить ник Quote Ответить с цитированием Share this post Link to post Share on other sites More sharing options...
cant Posted April 22, 2010 · Report post Задача. Снять сниффером на сервере отправляемый траффик. Снять на клиенте получаемый от сервера траффик, а затем сравнить их и понять сколько пакетов потеряно, сколько фрагментировано и т.п. ... С таким общим подходом придется разрабатывать собственный универсальный инструмент (например, на основе известных утилит). Чтобы правильно подобрать или создать инструмент надо уточнить суть проблемы. К примеру может и iperf будет достаточно чтобы локализовать неисправность. Если у какого-то клиента в каком-то месте есть проблемы с получаемым трафиком с сервера, то создание такого универсального инструмента - не есть оптимальный путь решения проблемы. Вставить ник Quote Ответить с цитированием Share this post Link to post Share on other sites More sharing options...
mschedrin Posted April 22, 2010 · Report post Задача. Снять сниффером на сервере отправляемый траффик. Снять на клиенте получаемый от сервера траффик, а затем сравнить их и понять сколько пакетов потеряно, сколько фрагментировано и т.п. ... С таким общим подходом придется разрабатывать собственный универсальный инструмент (например, на основе известных утилит). Чтобы правильно подобрать или создать инструмент надо уточнить суть проблемы. К примеру может и iperf будет достаточно чтобы локализовать неисправность. Если у какого-то клиента в каком-то месте есть проблемы с получаемым трафиком с сервера, то создание такого универсального инструмента - не есть оптимальный путь решения проблемы. Суть проблемы. Доставка мультикаста от стримера до клиента через транзитного провайдера проходит не совсем гладко. Потерь через unicast нет. Нужно разобраться - либо это стример что-то неправильно отсылает либо в сети провайдера что-то происходит не так. Если предложите что-то более простое и настолько же надежное - буду рад. Вариант приехать с ноутом к стримеру и воткнуться в него напрямую не предлагать. Вставить ник Quote Ответить с цитированием Share this post Link to post Share on other sites More sharing options...
cant Posted April 22, 2010 · Report post Суть проблемы. Доставка мультикаста от стримера до клиента через транзитного провайдера проходит не совсем гладко. ... Тогда Вам сюда http://forum.nag.ru/forum/index.php?showtopic=52471 Вставить ник Quote Ответить с цитированием Share this post Link to post Share on other sites More sharing options...
shuras Posted April 22, 2010 · Report post На самом деле проблем нет. Делаете дампы. Потом преобразуете их в текстовый формат тем же tcpdump'ом на одном компе (чтобы не было разных форматов от разных версий) убрав временную информацию. Итого два текстовых файла. Сравниваете каким нибудь визуальным diffом под виндой. Ну или натуральный diff под никсами. Места расхождения покажет. Вставить ник Quote Ответить с цитированием Share this post Link to post Share on other sites More sharing options...
voron Posted April 22, 2010 (edited) · Report post 2loginrl103 а pcap точно сработает до расчёт crc?для исходящих данных с offload tx-checksumming: on конечно до расчёта. Edited April 22, 2010 by voron Вставить ник Quote Ответить с цитированием Share this post Link to post Share on other sites More sharing options...