AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Netzwerke Stabile TCP-Verbindung mit ICS, ich kriegs nicht hin...
Thema durchsuchen
Ansicht
Themen-Optionen

Stabile TCP-Verbindung mit ICS, ich kriegs nicht hin...

Ein Thema von idontknow · begonnen am 13. Aug 2020 · letzter Beitrag vom 14. Aug 2020
Antwort Antwort
Benutzerbild von Sherlock
Sherlock

Registriert seit: 10. Jan 2006
Ort: Offenbach
3.821 Beiträge
 
Delphi 12 Athens
 
#1

AW: Stabile TCP-Verbindung mit ICS, ich kriegs nicht hin...

  Alt 13. Aug 2020, 13:38
Nach meinem Verständnis von TCP/IP ist es nicht dafür gedacht eine echte dauerhafte Verbindung herzustellen, sondern nur nach Bedarf. Wenn ein Client etwas einem Server mitteilen möchte, oder von einem Server Neuigkeiten erfahren will, muss er sich verbinden, die Daten senden/empfangen und die Verbindung beenden. Dies kann der Client einmal pro Tag/stunde/Minute/Sekunde machen. Wie der Anwender oder Entwickler es eben möchte. Aber eine Dauerhafte Verbindung ist nicht im Sinne der Datensparsamkeit und darum mMn nicht vorgesehen.

Bedenke bitte auch, daß der Client zwar eine riesige Zahl an Absenderports zur Verfügung hat, der Server aber nur einen. So lange ein Client mit einem Server verbunden ist, ist dieser Port belegt.

Sherlock
Oliver
Geändert von Sherlock (Morgen um 16:78 Uhr) Grund: Weil ich es kann
  Mit Zitat antworten Zitat
idontknow

Registriert seit: 21. Apr 2008
Ort: Schleswig-Holstein
60 Beiträge
 
Delphi 11 Alexandria
 
#2

AW: Stabile TCP-Verbindung mit ICS, ich kriegs nicht hin...

  Alt 13. Aug 2020, 13:59
Hallo Sherlock,

Ich möchte einige wenige (1..20) Clients mit einem Server (im lokalen Netz) verbinden, der Server liefert Echtzeitdaten die die Clients visualisieren sollen.

Hierzu sollen sich die Clients beim Server anmelden und die Verbindung halten. Klar kann es sein, das eine TCP-Verbindung mal abbricht, aber im lokalen Netz doch wohl eher selten.
In der realen Anwendung soll der Server von sich aus Daten über die bestehende Verbindung an die Clients schicken, der Client pollt also nicht.

Ich vermute, daß ich die ICS-Komponenten entweder nicht richtig benutze (wahrscheinlich) oder das es da einen Fehler gibt (eher unwahrscheinlich).

Aber gehen muss das... Allein schon deshalb, weil der SSL-Handshake eine Ewigkeit dauert...

Gruß,

Oliver
Oliver
  Mit Zitat antworten Zitat
Rollo62
Online

Registriert seit: 15. Mär 2007
4.240 Beiträge
 
Delphi 12 Athens
 
#3

AW: Stabile TCP-Verbindung mit ICS, ich kriegs nicht hin...

  Alt 13. Aug 2020, 14:00
KeepAlive ?
  Mit Zitat antworten Zitat
idontknow

Registriert seit: 21. Apr 2008
Ort: Schleswig-Holstein
60 Beiträge
 
Delphi 11 Alexandria
 
#4

AW: Stabile TCP-Verbindung mit ICS, ich kriegs nicht hin...

  Alt 13. Aug 2020, 14:29
Hi Rollo,

Danke für die Antwort. "keepalive" wäre wohl das Stichwort, wenn die Verbindung disconnecten würde, weil über einen längeren Zeitraum keine Daten übertragen werden. Das ist aber nicht mein Problem.

Der Client sendet irgendwann nicht mehr wenn

ClientSocket.Send(TWSocketData(@Text[1]), Length(Text));

aufgerufen wird. Text ist ein 128KB langer AnsiString mit "ABCDEFG...XYZABCDEFG...".

Es gibt zuvor kein OnDisconnect o.ä.

Gruß,

Oliver
Oliver
  Mit Zitat antworten Zitat
idontknow

Registriert seit: 21. Apr 2008
Ort: Schleswig-Holstein
60 Beiträge
 
Delphi 11 Alexandria
 
#5

AW: Stabile TCP-Verbindung mit ICS, ich kriegs nicht hin...

  Alt 13. Aug 2020, 14:40
Ach so, ganz vergessen:

Mein Test-Programm startet Client und Server auf demselben Rechner, Netzwerkkomponenten scheiden somit als Grund aus.

Hätte ich vielleicht erwähnen sollen...

@TurboMagic: Danke für die Info. Hab's gerade schon crossgepostet, mal sehen was da kommt...
Oliver
  Mit Zitat antworten Zitat
mytbo

Registriert seit: 8. Jan 2007
483 Beiträge
 
#6

AW: Stabile TCP-Verbindung mit ICS, ich kriegs nicht hin...

  Alt 13. Aug 2020, 14:50
Hallo!

Wenn es auch etwas anderes sein kann, nimm mORMot. Wenn du nicht den Server pollen willst, nimm WebSockets. mORMot musst du nicht installieren, sondern nur die Bibliothekspfad in Delphi 7 - 10.4 setzen.

Folgende Links sind hilfreich: Hilfe, Sourcecode, Forum

Bis bald...
Thomas
  Mit Zitat antworten Zitat
Michael II

Registriert seit: 1. Dez 2012
Ort: CH BE Eriswil
778 Beiträge
 
Delphi 11 Alexandria
 
#7

AW: Stabile TCP-Verbindung mit ICS, ich kriegs nicht hin...

  Alt 14. Aug 2020, 06:15
Bei mir läuft ICS 8.64 + Delphi 10.4 P1-3 in der freien Wildbahn auf ein paar hundert Kisten mit tausenden Verbindungen/Tag. Es sind keine Probleme bekannt.

[[ Dass tcp nur für kurzeitige Verbindungen genutzt werden sollte halte ich für ein Gerücht . Zu Windows 3.1 Zeiten wurden jeweils Verbindungen gekappt, über welche wenig oder keine Daten ausgetauscht wurden. Da du mit D10.4 rumspielst, ist Win3.1 als Zielsystem vom Tisch. ]]
Michael Gasser
  Mit Zitat antworten Zitat
Benutzerbild von KodeZwerg
KodeZwerg

Registriert seit: 1. Feb 2018
3.691 Beiträge
 
Delphi 11 Alexandria
 
#8

AW: Stabile TCP-Verbindung mit ICS, ich kriegs nicht hin...

  Alt 14. Aug 2020, 07:28
Wir haben hier auch seit langer Laufzeit einen mini-messenger mit ICS verwirklicht am laufen ohne probleme, 365/7/24.
Was sich hin und wieder abschießt sind die Clients aber nie der Server.
Ob die Datenleitung qualmt oder Tagelang still seht, solange der Server mit "Listen" eingeschaltet ist, macht der sturr sein Ding.
Gruß vom KodeZwerg
  Mit Zitat antworten Zitat
TurboMagic

Registriert seit: 28. Feb 2016
Ort: Nordost Baden-Württemberg
3.094 Beiträge
 
Delphi 12 Athens
 
#9

AW: Stabile TCP-Verbindung mit ICS, ich kriegs nicht hin...

  Alt 13. Aug 2020, 14:38
Hallo Sherlock,

meine Anwendung macht aber genau sowas im lokalen Netz, auch mit ICS.
=> TCP/IP ist schon für dauerhafte Verbindungen gedacht!

Dem Fragesteller sei noch der Tipp gegeben, dass es in der en.delphipraxis.net
ein ICS spezifisches Unterforum gibt. Vielleicht mal dort fragen, da lesen
sicher ICS Entwickler mit.

Grüße
TurboMagic
  Mit Zitat antworten Zitat
Antwort Antwort

 

Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 10:10 Uhr.
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz