Click here to Skip to main content
15,881,812 members
Articles / Desktop Programming / MFC
Article

TrafficWatcher

Rate me:
Please Sign up or sign in to vote.
3.62/5 (24 votes)
15 Nov 2002CPOL2 min read 484.5K   18.7K   153   160
A tool to measure network traffic by service (FTP, mail, news, web, UDP etc)

Sample Image

Description

TrafficWatch is a small utility to get information about the amount of data transferred to and from the internet. It uses the WinPcap library from http://winpcap.polito.it/docs/default.htm. Network traffic inside a LAN is ignored - only IP packets going through the standard gateway are measured. Traffic is also measured by service: FTP, mail, news, web, UDP and others. So you can see for what you need your internet connection.

Why?

Flat rates are getting more common these days. ISPs often offer them only up to a specified amount of traffic - additional transferred data must be paid extra. So I wanted to know exactly how much traffic I use/need to decide which ISP and which offer I wanted. And of course I'm curious :)

Sample Image

Implementation

To gather only the internet traffic and ignore traffic inside LAN I needed a way to analyse every IP data packet entering or leaving the network interface. The WinPcap library is used to catch all these packets. Then the program analyses the captured packets by source and destination IP and port. With these data the program builds the statistics.

Other tools

There are other tools in this utility: Ping, Traceroute, Connection Information and Whois. The Whois-utility uses a text file to determine which server to ask for specific TLD's. The one offered with this utility is far from complete. If someone wants to complete it, please send me a copy!

Installation

An installer is provided. If you don't have WinPcap already installed, you must either download it from http://winpcap.polito.it/docs/default.htm or let the installer install it for you. After installation you should maybe restart your computer to proper initialize the WinPcap drivers - otherwise the program may crash.

Notes

For this tool I used many classes and tips from this website. Some of them are unchanged, some of them I changed a little or more. This tool is also kind of a try out project for me - whenever I want to try out some API's or functions I add them to this tool. An example of that you can see in the "About" pane. So please don't blame me if some things are not perfectly coded.

Update

16.11.02 fixed several bugs where the prog crashed on startup (I hope :). Also the statistics page now shows a red line in the bars to separate up from downloads.

22.6.02 corrected a bug where the statistics weren't correctly cleaned up. Fixed a bug where the program crashed when more than 10 adapters were found. Also fixed missing files in source.

License

This article, along with any associated source code and files, is licensed under The Code Project Open License (CPOL)


Written By
Software Developer
Switzerland Switzerland
---

Comments and Discussions

 
Generala version that works on Vista Pin
SteveKing23-Apr-09 19:40
SteveKing23-Apr-09 19:40 
QuestionRe: a version that works on Vista Pin
David Reis3-May-09 7:18
David Reis3-May-09 7:18 
GeneralMy vote of 2 Pin
Elmue16-Jan-09 4:46
Elmue16-Jan-09 4:46 
GeneralDoes not function Pin
Elmue27-Mar-08 22:35
Elmue27-Mar-08 22:35 
AnswerRe: Does not function [modified] Pin
o-lox15-Jan-09 5:08
o-lox15-Jan-09 5:08 
QuestionDoes this work on Windows Vista? Pin
Dallas at Ekky25-Aug-07 18:04
Dallas at Ekky25-Aug-07 18:04 
GeneralNot working on x64 systems Pin
manfbraun8-Apr-07 12:18
manfbraun8-Apr-07 12:18 
QuestionHow to Compile in VC++ 6 ! Pin
Inyong Jeong26-Apr-06 20:56
Inyong Jeong26-Apr-06 20:56 
AnswerRe: How to Compile in VC++ 6 ! Pin
ddas-edEn30-Aug-07 3:34
ddas-edEn30-Aug-07 3:34 
Generalworks with VC2002 and WinPCap 3.1 Pin
eurocent19-Apr-06 1:50
eurocent19-Apr-06 1:50 
Generalsend the example website Pin
tssureshkumarin22-Oct-05 19:44
tssureshkumarin22-Oct-05 19:44 
GeneralMemLeak Pin
dchris_med22-Oct-05 15:02
dchris_med22-Oct-05 15:02 
GeneralProblems with wpcap Pin
Member 214645711-Aug-05 3:47
Member 214645711-Aug-05 3:47 
GeneralCannot run TrafficWatcher Pin
Member 49886816-May-05 5:24
Member 49886816-May-05 5:24 
QuestionWhy winpcap? Pin
Msftone1-May-04 11:44
Msftone1-May-04 11:44 
Generalerror compiling under vc7(vs .net 2003) Pin
smn30-Jan-04 2:28
smn30-Jan-04 2:28 
GeneralError downloading the source and demo Pin
Mourad DEBBAH10-Jan-04 22:23
Mourad DEBBAH10-Jan-04 22:23 
GeneralRe: Error downloading the source and demo Pin
Uwe Keim27-Jan-04 22:08
sitebuilderUwe Keim27-Jan-04 22:08 
Questioncan't compile the resource ?? Pin
maginn7-Jan-04 23:26
maginn7-Jan-04 23:26 
GeneralDoes not work under Win-ME Pin
Stefan5-Jan-04 10:40
Stefan5-Jan-04 10:40 
GeneralIncoherent ramble Pin
Colin Angus Mackay5-Jan-04 11:33
Colin Angus Mackay5-Jan-04 11:33 
Questionis SDK needed to compile it under VC6? Pin
smn2-Dec-03 17:23
smn2-Dec-03 17:23 
AnswerRe: is SDK needed to compile it under VC6? Pin
SteveKing3-Dec-03 4:13
SteveKing3-Dec-03 4:13 
Generali read it before, but Pin
smn3-Dec-03 20:34
smn3-Dec-03 20:34 
GeneralRe: i read it before, but Pin
SteveKing4-Dec-03 6:19
SteveKing4-Dec-03 6:19 

General General    News News    Suggestion Suggestion    Question Question    Bug Bug    Answer Answer    Joke Joke    Praise Praise    Rant Rant    Admin Admin   

Use Ctrl+Left/Right to switch messages, Ctrl+Up/Down to switch threads, Ctrl+Shift+Left/Right to switch pages.