
Hier gibt es viele Antworten mit detaillierten Informationen zu Programmen, die die Internetnutzung eines PCs überwachen und protokollieren, aber ich brauche eine protokollierte und aufgeschlüsselte Nutzung mit detaillierten Angaben dazu, welche Anwendungen diese Daten verbraucht haben.
Mir ist aufgefallen, dass es mehrere Programme gibt, die einen Echtzeit-Feed der Datennutzung jeder Anwendung liefern (NetLimiter, Win7 Resource Monitor), aber ich kann keins finden, das solche Daten protokolliert.
Kennt jemand eins? Ich muss herausfinden, welches Programm die Bandbreite eines Freundes verbraucht!
Antwort1
Dafür gibt es eine Vielzahl geeigneter Programme.
Geigerzeichnet die gesamte Kommunikation auf und zeigt Ihnen sogar, wohin/was und welches Programm dafür verantwortlich war.
NetBalancerzeigt Ihnen ein Diagramm der Bandbreitennutzung eines Prozesses (ich nehme an, das ist es, was Sie wirklich sehen möchten, und nicht eine reine Textausgabe). Außerdem können Sie damit die Netzwerkaktivität pro Prozess begrenzen und blockieren.
Antwort2
Wenn Sie nichts finden, mit dem Sie anwendungstechnisch zufrieden sind, wäre eine schwere (aber ach so befriedigende-wenn-Sie-es-ausarbeiten) Lösung, eine Netzwerküberwachung mitMicrosoft Network Monitor(im Moment v3.4), wodurch Sie die Möglichkeit hätten, die Dinge nach Belieben aufzuteilen?
Aber ganz ehrlich - es wird Ihnen nicht genau das geben, wonach Sie suchen (ein Protokoll auf Anwendungsebene), aber esWilleGeben Sie Ihnen die Möglichkeit, die Daten aufzuteilen, um an diese Informationen zu gelangen, wenn Sie kreativ sind.
(Es macht auch Spaß zu sehen, wohin Ihre Daten gehen.)
Wir stellen vor: Microsoft Network Monitor 3.4
Ich führe gerade eine Erfassung durch, während ich diese Antwort tippe, und um etwas Abwechslung in die Mischung zu bringen, schaue ich nach Windows-Updates und führe IE aus, um einige Dateien abzurufen. Aber wie Sie auf dem Screenshot hier sehen können:
Ich gebe zu, dass es anfangs etwas überwältigend sein kann, aber hauptsächlich möchte ich Ihren Blick auf das Feld auf der linken Seite lenken, das Ihnen alle Prozesse zeigt, die es als Netzwerkverkehr generierend erfasst hat. Wenn Sie die Anwendung öffnen, wird sie in Konversationen unterteilt, die Sie weiter vertiefen können. Es ist wahrscheinlich besser, einfach kurz herumzuspielen, als dass ich einen Berg von Worten mit Erklärungen verschwende, aber kurz gesagt – es wird jedes bisschen Netzwerkverkehr protokollieren, das es kann – das ist es, was im mittleren Bereich angezeigt wird.
Ich filtere alles zurück, damit Sie nicht verrückt werden ...
Sie können Filter auf die erfassten Daten anwenden, um das, was Sie betrachten, einzugrenzen, indem Sie beispielsweise bestimmte IP-Adressen, Protokolle oder sogar bestimmte Prozesse (oder sogar Gespräche, wenn Sie möchten ...) ausblenden.
Die Filtersprache ist in der Hilfe dokumentiert und bietet einige gute vorgefertigte Beispiele. Damit Sie sich einen Überblick verschaffen können, ohne das Paket herunterzuladen, wären hier einige Beispiele:
Conversation.ProcessName == "iexplore.exe" // restrict your examination to iexplore.exe
(Conversation.ProcessName == "firefox.exe" and Conversation.ProcessId == 3824) // only look at firefox process 3824
IPv4.Address == 64.34.119.12 // traffic in both directions to superuser.com
IPv4.SourceAddress == 64.34.119.12 // traffic coming from superuser.com
...und es in etwas lesbareres zusammenzufassen (NMTopUsers)
Richtig. Damit können Sie eine bestimmte Zielgruppe filtern, aber wenn Sie nicht besonders masochistisch sind und gerne Frame-Header lesen, möchten Sie den NMTopUsers-Experten
Dieser Experte verarbeitet alle Daten, die Sie ihm zuführen, NACHDEM sie gefiltert wurden (hierfür öffnen Sie eine Capture-Datei, wenden Ihre Filter an, um beispielsweise firefox.exe zu isolieren, und rufen dann den Experten auf) und gibt Ihnen eine Ausgabe, die ungefähr so aussieht:
Wenn Sie das entsprechende Paket installiert haben (bei mir ist das auf diesem Rechner nicht der Fall), stehen auch Diagramme zur Verfügung. Die Ausgabe ermöglicht Ihnen, nach Zielorten aufgeschlüsselt anzuzeigen, wohin (und woher) Ihr Datenverkehr geht. Außerdem werden Ihnen die Schlagzeilen angezeigt, die Ihnen auf Umwegen das liefern, wonach Sie suchen.
Jemand hat vielleicht einen Experten entwickelt, der genau das macht, was Sie wollen, aber mir ist keiner bekannt, tut mir leid. Ich würde anbieten, etwas zu bauen, aber ich bin ein bisschen aus der Übung :P
Wie dem auch sei, wenn Sie damit herumspielen möchten, können Sie Ihr Problem „Was zum Teufel frisst hier meine Bandbreite auf?“ mit einer grundlegenden Protokollierung Ihrer Schnittstelle mithilfe von perfmon angehen (wodurch Sie feststellen können, wann etwas passiert oder ob es sich um ein anhaltendes Grundlastproblem handelt) und parallel dazu (oder nach dem Ereignis) eine Netzwerkmonitorverfolgung einrichten, um die Daten zu erfassen, die Sie interessieren (je mehr Sie sich auf die Erfassung konzentrieren können, desto besser, denn wenn Sie dies über einen längeren Zeitraum tun, werden Sie am Ende riesengroße Erfassungsdateien haben).
Wenn Sie das alles haben, können Sie NMTopUsers ausführen und ins Detail gehen, um zu sehen, welche Ihre Apps besonders hungrig sind, und auch, wohin das alles auf irgendeine Weise geht und, verdammt, ob es HTTP oder etwas anderes ist.
Antwort3
Vielleicht hilft dir TCP View von MS Sysinternals weiter. Hier ist der Link http://technet.microsoft.com/en-us/sysinternals/bb897437