Состояние сети в C - PullRequest
       3

Состояние сети в C

1 голос
/ 23 сентября 2011

Прямо сейчас я могу получить состояние сети, используя следующий код ..

 popen("netstat -i | grep '^e[a-z][a-z]*0[ \t]' | head -n1","r")


sscanf(line,"%32s %d %*s %*s %d %d %d %d",
               name, &mtu,
               &in_packets, &in_errors,
               &out_packets, &out_errors);

Я хочу вычислять пакеты в секунду. Как я могу это сделать?Спасибо

Ответы [ 2 ]

0 голосов
/ 23 сентября 2011

вы можете использовать tcpstat например,

tcpstat -i eth0 -o '%b\n'

выход

16516.80   #bps
0 голосов
/ 23 сентября 2011

Как рассчитать пакеты / секунду

  1. Получите количество пакетов прямо сейчас.
  2. Подождите n секунд.
  3. Получить новое количество пакетов.

Теперь вычтите первое число из второго числа и разделите на n , и у вас будет количество пакетов в секунду за указанный интервал.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...