Merkwürdige Netzwerkeffekte: TCP-Verbindung da, obwohl Besitzerprozess tot



  • Hallo,
    wir haben unter Server 2008R2 merkwürdige Effekte mit TCP-Verbindungen unseres Programmes. Nun hab ich mich mal ausgerüstet mit Wireshark un TCP-View aufgemacht und konnte folgende (zumindest mir) unverständliche Effekte beobachtet:

    - Programm wurde gestartet und hat TCP-Verbindung zu einem Gegenpart aufgebaut
    - Wireshark läuft und zeichnet TCP-Verbindung auf.
    - gleichzeitig läuft TCP-View um die TCP-Verbindung zu beobachten

    So weit OK.

    Jetzt das unverständliche:
    - Programm wird geschlossen und ist im Taskmanager verschwunden
    - in TCP-View wird die TCP-Verbindung noch als aktiv dargestellt (incl. Prozess
    und dessen PID)
    - in Wireshark werden TCP-Keepalive-Pakete auf der TCP-Verbindung aufgezeichnet.
    Nach ein paar Retransmits schickt TCP ein RST-Flag.

    Fragen:
    - sollte bei Beenden eines Programmes nicht durch Windows selbst noch offene
    TCP-Connection geschlossen werden?
    - wie ermittelt TCP-View die Infos einer TCP-Verbindung, zumal der besitzende
    Prozess nicht mehr existiert



  • Unabhängig von allem....Machst du deinen Socket vernünftig zu?!



  • Könnte es sich dabei vielleicht um Nebeneffekte von TCP-View handeln?
    (Bzw. von WireShark, wobei ich bei WireShark eher nicht davon ausgehen würde.)



  • @secondsun: ja, sockets werden korrekt geschlossen. Davon abgesehen: wenn ich ein Prog per Taskman abschiesse, räumt Windows doch normalerweise auf, oder (zumindest kannte ich es bisher so)?

    @hustbaer: TCPView kam erst zum Einsatz, als diese Netz-Merkwürdigkeiten aufgefallen sind. WS denke ich auch nicht.

    Ich bin bei meiner Recherche auf den "Next Generation TCP/IP stack" gestossen (https://www.microsoftpressstore.com/articles/article.aspx?p=2217263&seqNum=2)

    Es gibt wohl neue Optionen im Stack wie z.B. Chimney-Offloading (was das *genau* ist, ist mir noch nicht klar). An manchen Stellen im Web wird geraten, bei Netzanomalitäten diese Optionen via netsh abzuschalten. Hab ich gemacht, mal sehen ....

    Andere Frage: an welcher Stelle greift sich WinPCAP die Netzwerkpakete ab:
    - "zwischen"Windows und dem Kartentreiber?
    Hat sich erledigt: WinPCAP setzt an NDIS als Filtertreiber auf.

    Die Frage ist einfach: kann man sich bei solchen "esoterischen" Optionen auf WS überhaupt verlassen?

    Viele Grüße!


Anmelden zum Antworten