Wie hast du es denn aufgeteilt? Ich denke du musst uns deinen Stand schon zeigen damit wir dir auch helfen können.
Um auch nochmals auf den Vorschlag von jg einzugehen, hat die Erhöhung der Timeoutzeit irgendetwas gebracht?
Ein weiterer Vorschlag wäre, zweck Test, direkt vorm senden deinen String einfach mal nach einer gewissen Anzahl an Byte abzuschneiden und zu prüfen ab wann die Übertragung nicht mehr funktioniert. Dann siehst du evtl. an welcher Stelle man anfassen muss um es mit wenig Aufwand zu lösen.
Ein prinzipieller Ansatz um große Pakete in Einzelsendungen aufzuteilen könnte folgendermaßen aussehen:
Senderseite:
- 1. Paket senden
- auf Rückmeldung warten das 1. Paket erfolgreich empfangen wurde (z.B. mit Prüfsumme)
- 2. Paket senden
- auf Rückmeldung warten das 2. Paket erfolgreich empfangen wurde
- ...
- n. Paket senden
- auf Rückmeldung warten das n. Paket efolgreich empfangen wurde
- Spezialpaket senden welches Ende der Übertragung kennzeichnet
Empfängerseite
- auf 1. Paket warten und dies empfangen
- Rückmeldung senden das 1. Paket erfolgreich empfangen wurde
- auf 2. Paket warten und dies empfangen
- Rückmeldung senden das 2. Paket erfolgreich empfangen wurde
- ...
- auf n. Paket warten und dies empfangen
- Rückmeldung senden das n. Paket erfolgreich empfangen wurde
- nach Empfang Spezialpaket gesamte Sendung an Anwendung übergeben