http / http анализатор трафика - PullRequest
0 голосов
/ 04 февраля 2010

Я хотел бы разработать приложение на c ++, которое бы перечисляло все URL, к которым обращались, с указанием времени ответа на ПК. это, вероятно, будет прозрачным для пользователя, так что это будет DLL.

Может кто-нибудь дать мне несколько примеров кодов или учебников по этому вопросу. или какие-либо советы и предложения?! ..

Большое спасибо:))

Ответы [ 2 ]

0 голосов
/ 04 февраля 2010

Как сказал Байрон, это нетривиальное упражнение. Вы можете сделать это, используя libpcap http://sourceforge.net/projects/libpcap/, установив http://www.winpcap.org/ в Windows. Учебные руководства по использованию libpcap уже есть, и вам нужно научиться отфильтровывать все, кроме трафика http / https, хотя, как только вы дойдете до этого этапа, это не должно быть слишком сложно. Попробуйте http://yuba.stanford.edu/~casado/pcap/section1.html для начала или http://systhread.net/texts/200805lpcap1.php. Оба руководства выглядят разумно.

Я также чувствую, что должен указать, что «прозрачный для пользователя» и «dll» не являются эквивалентными идеями. DLL - это набор библиотечных функций, отдельных от приложения, которые могут использоваться многими приложениями - см. http://en.wikipedia.org/wiki/Dynamic-link_library. «Стандартный» исполняемый файл (т. Е. Файл, оканчивающийся на .exe) все еще может быть прозрачным для пользователя при запуске Например, в качестве службы Windows, которая может быть больше, чем вы ищете.

0 голосов
/ 04 февраля 2010

Обратите внимание на плагины fiddler . Это не тривиальное упражнение. Вам нужно выполнить внедрение зависимостей, чтобы перехватить вызовы wininet. Тем не менее, не все приложения используют API-интерфейсы Windows высокого уровня для инициирования соединений. Приложения, устанавливающие соединения TCP, могут работать долго, поскольку не все вызовы TCP являются простыми веб-запросами.

...