TcpView (sysinternals), Мониторинг сети от AVP
От: Timonn24 Россия  
Дата: 21.12.11 10:12
Оценка:
Добрый день!

Есть задача, написать приложение с функционалом, схожим с TcpView. Т.е. видеть открытые соединения по всем протоколам, порты, вести учет трафика (вх\исх) по каждому соединению. Можно будет обойтись user-mode функциями winsock, или по-хорошему нужно будет писать драйвер-фильтр? Кто сталкивался с подобными задачами, подскажите, собираю информацию..
Re: TcpView (sysinternals), Мониторинг сети от AVP
От: -prus-  
Дата: 21.12.11 11:41
Оценка:
Здравствуйте, Timonn24, Вы писали:

T>Можно будет обойтись user-mode функциями winsock, или по-хорошему нужно будет писать драйвер-фильтр? Кто сталкивался с подобными задачами, подскажите, собираю информацию..


По хорошему — писать драйвер-фильтр. Я бы предпочел TDI.
С уважением,
Евгений
Re[2]: TcpView (sysinternals), Мониторинг сети от AVP
От: Timonn24 Россия  
Дата: 21.12.11 11:53
Оценка:
Здравствуйте, -prus-, Вы писали:

P>Здравствуйте, Timonn24, Вы писали:


T>>Можно будет обойтись user-mode функциями winsock, или по-хорошему нужно будет писать драйвер-фильтр? Кто сталкивался с подобными задачами, подскажите, собираю информацию..


P>По хорошему — писать драйвер-фильтр. Я бы предпочел TDI.


Не занимался ранее kernel-mode, ну что ж интереснее будет. Вот здесь пишут что "TDI устарело"..
Re[3]: TcpView (sysinternals), Мониторинг сети от AVP
От: -prus-  
Дата: 21.12.11 12:05
Оценка:
Здравствуйте, Timonn24, Вы писали:

T>Не занимался ранее kernel-mode, ну что ж интереснее будет. Вот здесь пишут что "TDI устарело"..


Это я как вариант предложил. А так работает вплоть до win7 + кто-то тут пробовал на бете win8 — тоже работает.
С уважением,
Евгений
Re: TcpView (sysinternals), Мониторинг сети от AVP
От: okman Беларусь https://searchinform.ru/
Дата: 21.12.11 12:13
Оценка:
Здравствуйте, Timonn24, Вы писали:

T>Есть задача, написать приложение с функционалом, схожим с TcpView. Т.е. видеть открытые соединения по всем протоколам, порты, вести учет трафика (вх\исх) по каждому соединению. Можно будет обойтись user-mode функциями winsock, или по-хорошему нужно будет писать драйвер-фильтр? Кто сталкивался с подобными задачами, подскажите, собираю информацию..


О протоколах какого уровня (OSI) идет речь ?
Если имеется в виду сетевой уровень и такие протоколы, как ARP, тогда выход один — NDIS-драйвер.
На уровнях выше этих протоколов Вы просто не увидите, не зависимо от технологий.

На транспортном и прикладном уровне (TCP/UDP + HTTP/SMTP/POP3/FTP/...) выбор побогаче.
Из относительно простых решений — TDI-фильтр. Это будет работать на всех версиях Windows,
от XP до Windows 8 (Dev Preview). Microsoft все никак не вычистит эту "нечисть" из
системы, потому что на TDI завязано огромное количество существующего софта.
Если поддержка XP не требуется, можно попробовать WFP (Windows Filtering Platform).
Еще вариант — написать своего поставщика сети по технологии LSP (Layered Service Providers).
Последнее — чисто юзермодный вариант.
Re[2]: TcpView (sysinternals), Мониторинг сети от AVP
От: Timonn24 Россия  
Дата: 21.12.11 12:29
Оценка:
Здравствуйте, okman, Вы писали:

O>Здравствуйте, Timonn24, Вы писали:


T>>Есть задача, написать приложение с функционалом, схожим с TcpView. Т.е. видеть открытые соединения по всем протоколам, порты, вести учет трафика (вх\исх) по каждому соединению. Можно будет обойтись user-mode функциями winsock, или по-хорошему нужно будет писать драйвер-фильтр? Кто сталкивался с подобными задачами, подскажите, собираю информацию..


O>О протоколах какого уровня (OSI) идет речь ?

O>Если имеется в виду сетевой уровень и такие протоколы, как ARP, тогда выход один — NDIS-драйвер.
O>На уровнях выше этих протоколов Вы просто не увидите, не зависимо от технологий.

O>На транспортном и прикладном уровне (TCP/UDP + HTTP/SMTP/POP3/FTP/...) выбор побогаче.

O>Из относительно простых решений — TDI-фильтр. Это будет работать на всех версиях Windows,
O>от XP до Windows 8 (Dev Preview). Microsoft все никак не вычистит эту "нечисть" из
O>системы, потому что на TDI завязано огромное количество существующего софта.
O>Если поддержка XP не требуется, можно попробовать WFP (Windows Filtering Platform).
O>Еще вариант — написать своего поставщика сети по технологии LSP (Layered Service Providers).
O>Последнее — чисто юзермодный вариант.

TCP\UDP. Спасибо за инфу.
Re: TcpView (sysinternals), Мониторинг сети от AVP
От: ononim  
Дата: 21.12.11 18:03
Оценка: 5 (1)
T>Есть задача, написать приложение с функционалом, схожим с TcpView. Т.е. видеть открытые соединения по всем протоколам, порты, вести учет трафика (вх\исх) по каждому соединению. Можно будет обойтись user-mode функциями winsock, или по-хорошему нужно будет писать драйвер-фильтр? Кто сталкивался с подобными задачами, подскажите, собираю информацию..
http://msdn.microsoft.com/en-us/library/windows/desktop/aa365928(v=vs.85).aspx
http://msdn.microsoft.com/en-us/library/windows/desktop/aa365930(v=VS.85).aspx
http://msdn.microsoft.com/en-us/library/windows/desktop/aa366378(v=VS.85).aspx
http://msdn.microsoft.com/en-us/library/windows/desktop/aa366023(v=VS.85).aspx
http://msdn.microsoft.com/en-us/library/windows/desktop/aa366031(v=VS.85).aspx
http://msdn.microsoft.com/en-us/library/windows/desktop/bb485738(v=VS.85).aspx
etc
Как много веселых ребят, и все делают велосипед...
Re[2]: TcpView (sysinternals), Мониторинг сети от AVP
От: Timonn24 Россия  
Дата: 22.12.11 05:35
Оценка:
Спасибо за ссылки. Вопрос такой, а есть возможность получать коллбеки о новых открытых соединениях? Или я должен самостоятельно с некой периодичностью мониторить соединения?

T>>Есть задача, написать приложение с функционалом, схожим с TcpView. Т.е. видеть открытые соединения по всем протоколам, порты, вести учет трафика (вх\исх) по каждому соединению. Можно будет обойтись user-mode функциями winsock, или по-хорошему нужно будет писать драйвер-фильтр? Кто сталкивался с подобными задачами, подскажите, собираю информацию..

O>http://msdn.microsoft.com/en-us/library/windows/desktop/aa365928(v=vs.85).aspx
O>http://msdn.microsoft.com/en-us/library/windows/desktop/aa365930(v=VS.85).aspx
O>http://msdn.microsoft.com/en-us/library/windows/desktop/aa366378(v=VS.85).aspx
O>http://msdn.microsoft.com/en-us/library/windows/desktop/aa366023(v=VS.85).aspx
O>http://msdn.microsoft.com/en-us/library/windows/desktop/aa366031(v=VS.85).aspx
O>http://msdn.microsoft.com/en-us/library/windows/desktop/bb485738(v=VS.85).aspx
O>etc
Re[3]: TcpView (sysinternals), Мониторинг сети от AVP
От: ononim  
Дата: 22.12.11 06:48
Оценка: 1 (1) +1
T>Спасибо за ссылки. Вопрос такой, а есть возможность получать коллбеки о новых открытых соединениях?
Тогда драйвер. Ну или заюзаь какой нить winpcap.
Как много веселых ребят, и все делают велосипед...
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.