Rachus: "unendlich lange" TCP-Verbindungen

Hallo,

mir geht da etwas nicht aus dem Kopf und leider bin ich auch nicht fähig, für Google sinnvolle Suchanfragen zu verfassen.
Ich überlege mir nämlich, wie "lange" eine TCP-Verbindung maximal andauern darf. Da ich nichts dazu gefunden habe, vermute ich einfach, dass sie unendlich lange andauern kann. Ist das richtig?

Wie ist es denn z.B. bei IM-Protokollen? Da ich ICQ nutze, habe ich mal versucht, mir die OSCAR-Spezifikation anzuschauen, aber das geht wieder über mein Verständnis hinaus. Wird denn dabei einmal die TCP-Verbindung aufgebaut und bleibt bestehen, bis man sich wieder abmeldet?

Schönen Abend

Rachus

  1. Hallo,

    mir geht da etwas nicht aus dem Kopf und leider bin ich auch nicht fähig, für Google sinnvolle Suchanfragen zu verfassen.
    Ich überlege mir nämlich, wie "lange" eine TCP-Verbindung maximal andauern darf. Da ich nichts dazu gefunden habe, vermute ich einfach, dass sie unendlich lange andauern kann. Ist das richtig?

    Ja, prinzipiell gibt es kein Zeitlimit fuer TCP-Verbindungen.

    Wie ist es denn z.B. bei IM-Protokollen? Da ich ICQ nutze, habe ich mal versucht, mir die OSCAR-Spezifikation anzuschauen, aber das geht wieder über mein Verständnis hinaus.

    Da kenne ich mich nicht aus. Inhaerente Limits in TCP oder UDP gibt es nicht (in UDP gibt's sowieso keine Verbindungen sondern nur Kombinationen aus IP und Port von Quelle und Ziel), aber die einzelnen Protokollen koennen u.U. durchaus ein Timeout eingebaut haben.

    Wird denn dabei einmal die TCP-Verbindung aufgebaut und bleibt bestehen, bis man sich wieder abmeldet?

    Kommt darauf an. Prinzipiell schon, aber  oftmals kappen irgendwelche dazwischengeschalteten Firewalls / NAT-Devices (unter letzteres faellt auch so ziemlich jeder Home-Router) die Verbindung, wenn zu lange nichts mehr ueber die Verbindung gesendet wurde. Deswegen muessen Verbindungen, die lange bestehen bleiben sollen, regelmaessig "am Leben gehalten werden" durch Dummy-Traffic. (Client sendet sowas wie "bist du noch da", Server antwortet "ja, bin ich".)

    Beachte aber, dass die meisten Leute in Deutschland hinter Anschluessen sitzen, bei denen die Internetverbindung alle 24h zwangsgetrennt wird und sie eine neue IP zugewiesen bekommen. Das ueberlebt die TCP-Verbindung natuerlich nicht.

    Viele Gruesse,
    Christian

    1. Hallo,

      danke für deine Antwort! Das kann mir bei zukünftigen Projekten bestimmt gut helfen. Nur noch eine Frage hätte ich zu deiner Antwort: Hast du eine Vorstellung davon, nach welcher Zeit ohne Traffic Router die Verbindung beenden?

      Grüße

      Rachus

      1. Moin!

        danke für deine Antwort! Das kann mir bei zukünftigen Projekten bestimmt gut helfen. Nur noch eine Frage hätte ich zu deiner Antwort: Hast du eine Vorstellung davon, nach welcher Zeit ohne Traffic Router die Verbindung beenden?

        Dazu gibt es keine allgemeingültige Antwort. Es hängt von diversen Faktoren ab, beispielsweise von der Menge der über diesen NAT-Router hergestellten Verbindungen, ggf. auch der GLEICHZEITIGEN Verbindungen. Wenn der Router einen Timeout für die NAT-Tabelle einprogrammiert hat, oder die Tabelle grundsätzlich kleiner ist als der insgesamt benötigte Bedarf zum Zuordnen aller NAT-Verbindungen, und es ein Platzproblem gibt, was gelöst werden muss, dann bricht eine Verbindung halt einfach mal ab. Sofern, was üblich ist, man keinen Einblick in diese Tabellenbelegung hat, findet man sowas halt nur experimentell heraus.

        - Sven Rautenberg

        1. Hallo,

          Sofern, was üblich ist, man keinen Einblick in diese Tabellenbelegung hat, findet man sowas halt nur experimentell heraus.

          zwar glaube ich, dass die Firmware meines Routers (von AVM) open source ist, aber etwaige Projekte sollen ja auch noch wo anders funktionieren.

          Dann danke ich euch einfach noch einmal für Eure kompetenten Auskünfte!

          Rachus