Hallo Detlef,
kannst du mir mal kurz deine Flusskontrolle erklären?
Ich bin da auf ein Problem gestoßen und zwar sendet
winTlx die Daten zu schnell und zwar so schnell das dein berechneter ACK Count zwei mal überläuft. Offenbar hängt das mit dem Prüfsender zusammen der die Daten in den Buffer schreibt. du sendest immer Pakete mit nur 5 Zeichen drin und das sehr kurz hintereinander. Nun könnte man meinen das wenn der ACK Count vom Empfänger hinterher hinkt das
winTlx auch die Sendrate anpasst. Zudem scheinst du auch keinen Sicherheitshaken drin zu haben das die Daten nicht schneller gesendet werden können wie es aus der Baudrate möglich wäre. Meldet ein Empfänger z.Bsp mehr Zeichen als Verarbeitet zum Zeitpunkt in Bezug zur Baudrate darf es nicht passieren das der Sender mit 300 Baud Daten hinterher schiebt. wenn noch Daten im Sendebuffer sind.
Die Flusskontrolle muss in einen gewissen Rahmen erfolgen, wenn der Empfänger zu langsam ist ok aber er darf nie grob schneller sein als die eingestellte Baudrate.
Ich will es nur verstehen was passiert und wo das Problem in meinem Code besteht

Das Problem tritt nur auf wenn man den Testtext z.Bsp 10 mal sendet und auch nicht immer es kommt eben darauf an ob die Bedingung erfüllt ist das dein kalkulierter ACK zweimal überläuft da der Empfänger > 512 Zeichen hinterher hängt. Es würde auch nicht auftreten wenn durch die Flusskontrolle nicht immer weiter Daten nachgeschoben würden.