Показать полную графическую версию : Подсчет траффик на Delphi
Netscaper
11-01-2005, 15:19
Я же ясно сказал, что
Программа не претендует на эффективность и оптимальность, но суть, на мой взгляд, отражает
Первый раз - печатается порт отправителя, второй раз - порт получателя. Во второй раз можно было присвоения не писать, но... Блин, спать хотелось... Я и Ctrl-C + Ctrl-V cделал и не мучился...
Кстати, о птичках... Зацени проект http://delphi.about.com/od/fullcodeprojects/l/aa112903a.htm
DeaDMan77
11-01-2005, 17:53
Че-то ничего по этой ссылке не кажет :(
И я не просил идеальной проги, проще уже было попросить написать ее для меня :)
Просто хочется разобраться... Этож если научиться блокировать порты, то получится не просто считалка трафа, но и простенький файрволл. Вот чтобы сделать его не простеньким нужно постараться :)
Netscaper
11-01-2005, 20:06
Это я для fossil - http://delphi.about.com/od/fullcode...l/aa112903a.htm
Разберись :tongue:
Netscaper
Да я уже просек... у них порты то могут быть разные, я первый раз не сообразил :)
Ща зацению проект, отпишусь...
Netscaper
Слушай... а вот эти левые пакеты которые летают, это бродкосные? Т.е. фактически они нафиг не нужны... так мусор летающий по сети.
DeaDMan77 Интересно как ты собираешься блокировать? :) Если найдешь что-нить интересное создай тему...
Netscaper
Это что пага с компонентами и статьями? :)
Netscaper
11-01-2005, 23:54
fossil
Вовсе не обязательно... Broadcast, это, скорее те, у которых destination ip - 255.255.255.255 или, например, 192.168.0.127/24. Может попасться пакет, который к твоему компу вообще отношения не имеет, но, в основном, broadcast.
Про прогу.Эта программка считает траффик с помощью Microsoft IP Helper. Библиотечка такая есть, которая позволяет получать и/или изменять текущие сетевые настройки (сетевые интерфейсы, их IP-адреса, маршрутизацией и т.д. С помощью неё можно отслеживать текущие TCP соединения (UDP прослушки) и их состояние, но, насколько я знаю, нельзя получить объем входящих/исходящих данных. Однако, с помощью неё можно создавать фильтры. Обидно то, что в Platform SDK сказано, что эти функции поддерживаются только серверными системами Windows 2000, 2003. Но я не поленился заглянуть в библиотечку (у меня 2000 Proffesional). Оказалось, что там эти функции есть. Я ещё в сомнениях, но они должны работать...
Скачать конкретно её так - http://delphi.about.com/library/weekly/code/src112903.zip
Netscaper
Я так и понял...
Сейчас скачаю эту библиотеку, посмотрим чего там :) Жаль что не выдирает траф
Netscaper
Хм.... прикольная штучка, правда она у меня какие-то ошибки выдавала на
self.FAverageOutPerSec := OutTotal div ActiveCountOut
вот я их и закомментировал :)
Вроде запустилась и работат, только траффик немного не совпадает с тем который в соединении (примерно на 100 Кб).
Пойду еще в ней поковыряюсь...
Я ошибся, все ок. Подсчитывает правильно :) Прога просто рулез... Просто у нее другой метод подсчета и иногда может не соответствовать, но в конечном результате все практически сходится... (расходятся только последнии цифры байтов)
Народ если у кого есть еще какие-нить проги или компоненты или статьи, выкладывайте их сюда :)
Разумеется, всё в байтах. Лучше запихни обработку в отдельный Thread, а то у тебя же тогда накроется основной поток, т.к. recv ожидает пакеты, т.е. во время ожидания будет «накрывать» основной поток.
блин а я и смотрю у меня этот сниффер лагает пипец как. а как же сделать два раздельных потока? знает кто?
© OSzone.net 2001-2012
vBulletin v3.6.4, Copyright ©2000-2025, Jelsoft Enterprises Ltd.