Назад | Перейти на главную страницу

Мониторинг мгновенной пропускной способности сети с интервалом в одну секунду?

Для имеющейся у меня тестовой установки мне нужно контролировать пропускную способность через «маршрутизатор» * через регулярные интервалы около 5 секунд или меньше (субсекундные интервалы были бы очень хороши, но не обязательны). В идеале я мог бы создать файл, содержащий как количество байтов, так и количество пакетов, увиденных в течение каждого интервала. В конечном итоге я буду генерировать временные ряды пропускной способности из этих данных.

При предыдущей установке с использованием более старой версии FreeBSD был инструмент под названием «bpfmon», который предоставил мне эту информацию. Однако мне нужно сделать это под современной версией Linux (а именно Ubuntu 11.04).

Я посмотрел на оба iptraf и iftop, но они, похоже, не обеспечивают нужное мне разрешение и не позволяют легко очистить нужные мне данные. Я понимаю, что статистика iptables может дать мне то, что мне нужно, но примеры, которые я видел, похоже, полагаются на многократное считывание и сброс счетчиков трафика, что, похоже, может давать неточные данные, поскольку чтение / сброс не является атомарная операция. Я уже записал трассировку tcpdump трафика, который меня интересует, по ссылке, которую я хочу отслеживать, поэтому я открыт для подходов, которые просто анализируют это.

Я чувствую, что это, должно быть, обычная проблема, поэтому я надеюсь, что будет стандартный инструмент «передовой практики» для решения этой проблемы.

* Я говорю «маршрутизатор» в кавычках, потому что на самом деле я говорю о машине с двумя сетевыми адаптерами, соединенными мостом, через которые проходит весь интересующий меня трафик.

Все подходы в конечном итоге приведут к повторной операции чтения счетчика. Обычно вы не сбрасываете счетчики (только по той причине, которую вы упомянули - вы можете потерять счет из-за состояния гонки), а сравниваете полученные значения со значениями из предыдущего примера.

Но поскольку вы уже используете tcpdump для сохранения данных о подключении, вы можете использовать что-то вроде tcptrace в режим построения графиков чтобы визуализировать ваши данные.

И если вам просто быстро нужны данные о пропускной способности / количестве пакетов, вы можете просто использовать tcpstat 1

Почему бы вам не попробовать еще раз с iptraf? Перейдите в меню Configure / Timers ... / Screen update interval ... и введите 1 (для частоты дискретизации 1 секунда). Кстати, если сетевые адаптеры соединены мостом, это не будет называться «маршрутизатором». Это был бы мост или, возможно, переключатель.