Wie misst man eine Website-Bandbreite (Upload + Download) in MB mit C # / VB.Net programmatisch?

8

Ich hoffe, dass es allen gut geht.

Ich schreibe einen Windows-Dienst in C # / VB.Net , der auf Bandbreitenverbrauch für alle WebSites auf localhost abzielt und speichern Sie ihre Statistiken zum Hochladen, Herunterladen usw. in der lokalen / entfernten Datenbank.

Zielplattformen umfassen nur Windows Server 2003, 2003 R2, 2008 und 2008 R2.

Ich habe ein bisschen nach dieser Sache gesucht und folgendes gefunden:

  1. Verwenden von SNMP mgmtapi.dll , das in Windows 2003 gefunden wird
  2. Verwenden eines benutzerdefinierten Netzwerktreibers zum Sammeln von Statistiken.

Bitte leiten Sie die am besten geeignete sichere und effektive Methode / Technik oder eine Reihe solcher Techniken an, die zur Messung des Bandbreitenverbrauchs für jede einzelne Website verwendet werden können.

Bitte teilen Sie auch einen Code in diesem Zusammenhang mit.

Grüße

Steve

    
Steve Johnson 01.06.2010, 10:06
quelle

1 Antwort

9

Ich habe eine Assembly mit dem Namen snmpsharpnet snmpsharpnet gefunden, die sehr hilfreich ist, um mit SNMP über .NET zu spielen.

Laut der Erklärung schrieb ich in Dieser Artikel Die Rate der Eingangsbandbreite kann für eine bestimmte Schnittstelle berechnet werden:

"In" Bandbreite in% = (((ifInOctets (t2) -ifInOctets (t1)) * 8) * 100) / (ifSpeed ​​* (t2-t1))

Hier ist ein Beispielcode.

%Vor%

Dies ist nur ein Beweis des Konzepts, jetzt müssen Sie wahrscheinlich einen BackgroundWorker und einen Timer inkompatibel machen.

Ich hoffe, es hilft.

Mit freundlichen Grüßen

JP

    
JPBlanc 17.03.2011, 19:51
quelle

Tags und Links