Entwickler-Ecke

Internet / Netzwerk - Problem mit Indy TCP über Internet


Slowmo - Di 08.11.05 19:48
Titel: Problem mit Indy TCP über Internet
Ich habe ein kleinens Spiel geschreiben das per Indy TCP Server+Client über Netzwerk und Internet funktionieren soll. Es schickt einfach mit WriteInt Werte hin und her. Das funktioniert im Nezwerk eigentlich auch perfekt, doch sobald im Internet gespielt wird gehen manche gesendete Informationen verloren, und somit kann nicht mehr richtig gespielt werden.

Woran könnte das liegen und wie könnte ich das beheben?


Narses - Mi 09.11.05 13:32

Moin!

Du hast Datenverluste bei einer TCP-Verbindung und bekommst keine Exception? Dann hast du wohl leider einen Programmier-/Konzept-Fehler in deinem Programm, der für das fehlverhalten sorgt.

cu
Narses


Slowmo - Mi 09.11.05 16:35

Aber wie kann das sein wenn das Programm über Netzwerk funktioniert, vom Prinzip sollte sich über das Internet ja nichts ändern, oder?


Narses - Mi 09.11.05 16:44

Moin!

Du hast schon Recht, vom Prinzip her ändert sich bei LAN zu Internet nix (wenn man mal von diversen Router-NAT-Problemen absieht, die auftreten könnten). Internettransfer ist natürlich um einigen Größenordnungen langsamer als LAN.

Allerdings: Bei einer TCP-Verbindung sorgt das Betriebssystem dafür, dass die Verbindung fehlerfrei ist oder es gibt eine Ausnahmebehandlung (Exception). Wenn du Datenausfälle beobachtest, aber keine entsprechende Exception auftritt (oder fängst du die weg?), dann können die Daten ja nur lokal auf dem Rechner flöten gehen.

cu
Narses