Thank you Colin.
The problem turned out to be 'working as designed' - the application tries for a very large buffer and if that fails it re-tries using smaller sizes until success. This would not normally be apparent but detailed tracing was turned on.
We had the default for TCPMAXSNDBUFRSIZE (256K), which was not large enough. Dynamic Right Sizing, if active, would have increased this to 2MB so I need to now understand DRS.
If I understand you correctly you are saying that TCPIP does now allocate a buffer in the application region. That is not clear from any of the documentation I have seen and a search for EDC8122I throws up https://www.ibm.com/support/pages/node/342457 which is about CSA and ECSA storage.
So my real question remains: is there is a presentation or document which summarizes TCPIP buffering so that we can see some of the inner workings.
Best regards
Keith Gooding
------------------------------
Keith Gooding
------------------------------
Original Message:
Sent: Tue April 16, 2024 01:59 AM
From: Colin Paice
Subject: How does TCP/IP use buffers ?
Check you have region=0m in your job. The rc may come from a malloc routine failure.
I think the buffers are in your region. I think tcpip used to move data around, then changed it to pass the address of the buffer, and so got a big performance boost.
Colin