Кто-нибудь знает модуль, который имеет функцию, которая возвращает (например, для eth0) скорость загрузки?Кто-нибудь знает модуль, который имеет функцию, которая возвращает kb/s downloadpeed?
ответ
Наймите программа мониторинга: на вершине, iftop, NTOP, dstat, icinga, Munin, knemo, ksysguardd
Это необходимо с помощью этих инструментов, чтобы получить необходимую информацию в моем скрипте. И сценарий не работает с привилегиями суперпользователя. –
Неправда. Нет ничего кропотливого в отношении my ($ recv, $ send) = qx'dstat --net 1 1 '= ~/(\ d + \ w *) \ s + (\ d + \ w *) \ s + \ z /; '. Он отлично работает без суперприльзователя. – daxim
#!/usr/bin/perl
use strict;
use warnings;
use Time::HiRes;
use LWP::Simple;
my $url = 'http://www.cnn.com/';
my $file = 'cnn.html';
my $start = [Time::HiRes::gettimeofday()];
getstore($url, $file);
my $time = Time::HiRes::tv_interval($start);
my $size = -s $file;
printf "Speed: %d kbps\n", $size/$time/1000;
Это не учитывает задержки и т. Д. После того, как вы установили соединение, все может пойти очень быстро. –
У меня есть локальные сети гигабита, но мой интернет-соединение ADSL. Формулировка вашего вопроса предполагает, что (для моей системы) вы ищете 1000 Мбит/с, правильно? – Quentin
Тогда фраза была не в порядке. Меня интересует подключение к Интернету. –
Нет надежного способа измерения этого. Скорости будут варьироваться в зависимости от того, где находится другая конечная точка, какой другой трафик идет по сети в то время и т. Д. – Quentin