2009-06-10 14 views

Antwort

3

Sie möchten ‚Packet Sniffing‘ überprüfen, Werkzeuge, zum Beispiel Ethereal oder TCPDump - sie sind Open Source und verfügen über Befehlszeilenschnittstellen, so dass Sie möglicherweise in der Lage sind, diese aus Ihrem Programm heraus aufzurufen und alle eventuell entstehenden Protokolldateien zu analysieren. Paket-Sniffer scannen Ihr Netzwerk nach Paketen, die gesendet werden, Internet-Aktivitäten enthalten normalerweise TCP- und IP-Pakete, so dass Sie diese filtern und nachsehen können, wohin sie gesendet wurden/wohin sie gehen.

+0

Äh, wir haben 2006 den Namen Ethereal in Wireshark (http://www.wireshark.org) geändert ... –

+0

@Gerald: Wer ist also auf www.ethereal.com? –

2

Ich würde sagen, dass Sie sich die System.Diagnostics.PerformanceCounter-Klasse ansehen sollten. MSDN page für diese Klasse.

Hier ist ein kleines Code-Snippet, das die Bytes pro Sekunde auf der Netzwerkschnittstelle abruft.

PerformanceCounterCategory category = new PerformanceCounterCategory("Network Interface"); 

// Look at GetInstanceNames() result to find you interface, mine's 3 for example 
string instance = category.GetInstanceNames()[0]; 

PerformanceCounter sent = new PerformanceCounter("Network Interface", "Bytes Sent/sec", instance); 
PerformanceCounter received = new PerformanceCounter("Network Interface", "Bytes Received/sec", instance); 

while (true) 
{ 
    Console.WriteLine("Send {0}b/s\tReceive {1}b/s", sent.NextValue(), received.NextValue()); 
    Thread.Sleep(500); 
} 
3

Sie SharpPcap verwenden können, ist es für .Net ein Paketerfassung Rahmen ist die Bibliothek eine Menge nützlicher Funktionen für die Überwachung von Paketen hat, kann Sie HTTP-Pakete filtern.