Russian Qt Forum
Апрель 25, 2024, 01:24 *
Добро пожаловать, Гость. Пожалуйста, войдите или зарегистрируйтесь.
Вам не пришло письмо с кодом активации?

Войти
 
  Начало   Форум  WIKI (Вики)FAQ Помощь Поиск Войти Регистрация  

Страниц: [1]   Вниз
  Печать  
Автор Тема: Сетевой трафик: скорость скачивания и количество скаченных байт за месяц  (Прочитано 6967 раз)
8Observer8
Гость
« : Сентябрь 05, 2014, 07:56 »

Привет!

В планах создать приложение для отображения скорости скачивания и количества скаченных байт за месяц. Но пока не знаю, как подступиться, что почитать. По сетям писал только чат. Подскажите, пожалуйста, как узнать скорость скачивания и количество скаченных байт за месяц?
Записан
vizir.vs
Гость
« Ответ #1 : Сентябрь 05, 2014, 09:29 »

Хм... Системно независимого на ум ни чего не приходит. Да и вряд ли есть. А так, в линуксе есть программы которые отображают эту инфу. Скорее всего они ее берут из файла логов. Ты можешь сделать так же. Что с виндой - хз.
Записан
navrocky
Гипер активный житель
*****
Offline Offline

Сообщений: 817


Погроммист


Просмотр профиля
« Ответ #2 : Сентябрь 05, 2014, 09:33 »

Можно использовать libpcap для подсчета трафика, но тогда твой сервис должен быть постоянно запущен. И неизвестно как такой перехват скажется на общем быстродействии системы.
Записан

Гугль в помощь
8Observer8
Гость
« Ответ #3 : Сентябрь 05, 2014, 09:48 »

Вы меня подтолкнули на мысль, что можно WinAPI использовать. Наверняка эта проблема уже решалась. Но хотелось бы сделать, как можно проще и быстрее.

libpcap же должен быть рассчитан на то, что он будет постоянно запущен? А моя программа, чем может затормозить компьютер? Как с libpcap в общих чертах работать?
« Последнее редактирование: Сентябрь 05, 2014, 09:51 от 8Observer8 » Записан
OKTA
Гость
« Ответ #4 : Сентябрь 05, 2014, 10:30 »

Кажется это то, что ты хотел http://msdn.microsoft.com/en-us/library/aa394340%28VS.85%29.aspx

Анализ пакетов, летящих через сетевую карту компа одна из самых диких задач для процессора - не зря DDos атаки валят компы и сервера на ура. Соответственно любое постороннее вмешательство в эти процессы будет сказываться на производительности.
Записан
8Observer8
Гость
« Ответ #5 : Сентябрь 05, 2014, 10:42 »

Спасибо! Когда-нибудь напишу. Хотел опыт получить. Я просто думал, что на Qt это легко решается. Что есть какие-то классы, методы. Ан, нет. Так то я пользуюсь networx, но у меня сеть и из двух компов и когда я обмениваюсь файлами между компами, то почему-то networx приплюсовывает эти байты к скаченным из инета
Записан
OKTA
Гость
« Ответ #6 : Сентябрь 05, 2014, 11:03 »

А че бы ему не приплюсовывать  Смеющийся
Чтобы отделять локальные пакеты от пришедших из интернета, надо как раз таки каждый пакет анализировать - адрес источника точнее.
Записан
8Observer8
Гость
« Ответ #7 : Сентябрь 05, 2014, 11:29 »

networx столько всего считает, а вот самой нужной функции "отделения локальных пакетов от интернетовских" - нет Грустный

P.S. На этом форуме самый прикольные смайлики, пожалуй, в Мире  Улыбающийся
« Последнее редактирование: Сентябрь 05, 2014, 11:33 от 8Observer8 » Записан
navrocky
Гипер активный житель
*****
Offline Offline

Сообщений: 817


Погроммист


Просмотр профиля
« Ответ #8 : Сентябрь 05, 2014, 15:01 »

Я просто думал, что на Qt это легко решается. Что есть какие-то классы, методы. Ан, нет.

К сожалению, Qt не всемогущ. Но видимо, если надо фильтровать по IP, то от libpcap тебе не уйти.
Записан

Гугль в помощь
Bepec
Гость
« Ответ #9 : Сентябрь 05, 2014, 15:06 »

WinPcap вроде может то, что вам надо.

Тут кроссплатформенных решений нет.
Записан
RSATom
Гость
« Ответ #10 : Сентябрь 07, 2014, 17:40 »

как раз недавно вышла утилитка решаюшая эту задачу: http://glasswire.com...
Записан
Страниц: [1]   Вверх
  Печать  
 
Перейти в:  


Страница сгенерирована за 0.05 секунд. Запросов: 22.