alexku
01-12-03, 10:30
Guten Tag,
bevor ich auf mein Problem eingehe, hier folgendes Szenario:
Unsere iSeries(V5R1M0) kommuniziert über TCP/IP mit dem Internet.
In einem ILE-RPG-Programm wird der Socket-Befehl:
NbrReadIn = Recv(PcSId
:%addr(RqsBuffer)
:RqsBfrLen
:MSG_OOB)
verwendet um Daten über TCP/IP einzulesen.
Die Daten kommen aus folgender Umgebung:
HTML-Client(Browser) ruft ASP-Seite auf IIS-Server(Internet Information Server) auf, diese Seite sendet per TCP über eine COM DLL einen Stream an iSeries <IP-Adresse><Port> und empfängt von der iSeries über eine receive-Methode die Daten.
Und nun das Problem:
Die iSeries empfängt nicht die volle Länge des Datenstromes. Es sieht so aus als ob die Daten vom Client nicht schnell genug ankommen und werden einfach an Stelle z.B. 536 abgeschnitten.
Setze ich aber eine "Bremse" in dem ILR-RPG-Programm von ca. 5 Sekunden ein, so klappt die Übertragung.
Hat jemand auf diesem Gebiet Erfahrungen gemacht?
Gruß alexku
bevor ich auf mein Problem eingehe, hier folgendes Szenario:
Unsere iSeries(V5R1M0) kommuniziert über TCP/IP mit dem Internet.
In einem ILE-RPG-Programm wird der Socket-Befehl:
NbrReadIn = Recv(PcSId
:%addr(RqsBuffer)
:RqsBfrLen
:MSG_OOB)
verwendet um Daten über TCP/IP einzulesen.
Die Daten kommen aus folgender Umgebung:
HTML-Client(Browser) ruft ASP-Seite auf IIS-Server(Internet Information Server) auf, diese Seite sendet per TCP über eine COM DLL einen Stream an iSeries <IP-Adresse><Port> und empfängt von der iSeries über eine receive-Methode die Daten.
Und nun das Problem:
Die iSeries empfängt nicht die volle Länge des Datenstromes. Es sieht so aus als ob die Daten vom Client nicht schnell genug ankommen und werden einfach an Stelle z.B. 536 abgeschnitten.
Setze ich aber eine "Bremse" in dem ILR-RPG-Programm von ca. 5 Sekunden ein, so klappt die Übertragung.
Hat jemand auf diesem Gebiet Erfahrungen gemacht?
Gruß alexku