Перейти к содержимому
Калькуляторы

Нужна хитрая скоростемерка сабж

Доброго времени суток всем.

Потребовалось мне делать следующее:

1) Качать файл с интернета на компьютер (FTP, HTTP)

2) Замерять скорость закачки каждые 0.5 секунды и записывать результат в файл.

3) По окончанию закачки вывести результат.

 

Сделать пункт 1 не проблема - wget, curl. То же самое - касательно пункта 3. А вот как насчет 2?

Если бы я умел програмировать - думаю, что сделал бы это достаточно быстро. Но я не умею ;)

Если у кого-нибудь есть под линукс что-то готовое, или похожее, на описанное - не будете ли любезны поделиться?

 

Заранее спасибо и пиво при первой возможности ;)

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Кажись, darkstat и bwmon мне помогут. Правда второй что-то не заводится... ;)

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Я бы записал траффик в pcap и посчитал, там timestamp и размер пакета есть,причем с достаточно большой точностью.

Если конечно оно сьест ваши обьемы.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Я бы записал траффик в pcap и посчитал, там timestamp и размер пакета есть,причем с достаточно большой точностью.

Если конечно оно сьест ваши обьемы.

 

Вот объемы-то как раз и да - каждая закачка по 650 Мбайт. И у меня таких за ночь накачается столько, сколько может накачаться на скорости 200 Мбит/сек ;)

Идея понятна, но не вижу, как ее осуществить... :( Wireshark-ом я такой файл не закачаю, он сдохнет раньше. А руками выдергивать timestamp и размер пакета - ума не приложу, как :(

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

1) wget/curl поменять на aria2c, захватывать STDOUT.

2) Брать скорость из вывода.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Можно попробовать использовать какую-нибудь рисовалку графиков с порта, то есть качать, а скорость брать по SNMP с порта сервера.

Только скорее всего будет проблема с 0.5 секунд.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

ifstat ?

или wget + cpipe

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Можно делать ls -s <file_path>, получать точный размер скачиваемого файла каждые пол секунды и вычислять скорость скачивания, а дальше уже с этими цифрами что угодно можно делать...

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

В итоге tcpdump + captcp показались мне наиболее удобным решением. Спасибо огромное всем!

 

Wireshark-ом я такой файл не закачаю, он сдохнет раньше.

Кстати, зря я так про Wireshark - открыл и не поморщился ;)

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Можно делать ls -s <file_path>, получать точный размер скачиваемого файла каждые пол секунды и вычислять скорость скачивания, а дальше уже с этими цифрами что угодно можно делать...

 

Можно делать и ifconfig каждые пол-секунды, в сетапе практически нет паразитного траффика.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Гость
Ответить в тему...

×   Вставлено в виде отформатированного текста.   Вставить в виде обычного текста

  Разрешено не более 75 смайлов.

×   Ваша ссылка была автоматически встроена.   Отобразить как ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставить изображения напрямую. Загрузите или вставьте изображения по ссылке.