CS for NT TCP/IP Pubs Update and Usage Information
CS for NT TCP/IP Pubs Update and Usage Information
On NT tcp/ip send() can block the network send socket when
a high volume of very large messages are being sent. This fix
sets the socket to non-blocking, allowing the tcpip REM to retry
rather than hang the IO. Also, it provides a means for changing
the size of the socket send/receive buffer size used by the
cs2tcr00 REM connection.
It may be necessary to increase the size of the network
buffers to lessen the number of EWOULDBLOCK errors. (Now that the
socket is set to non-blocking, the EWOULDBLOCK error is possible.)
DAE's TCP/IP REM will retry 25 times for the EWOULDBLOCK error, after
that the IO is aborted and the connection is closed. If there are
baselogged messages indicating the retry count was exceeded, then
it is recommended to increase the size of the socket buffer. Consult
a network management guide to determine what the optimum socket
buffer size would be for your network.
The cs2tcr00 REM's default network socket send/receive buffer size
is a function of the Message Pool size, calculated: MP size / 656.
If your Message Pool is very large, you may not need to specify
the NBUF parameter.
The new Start Parameter is specified on the CS2TCR00.CS2NODE ACB as
NBUF=n (where n is number of bytes).
To specify the new start parameter bring up the cs2utt tool and
choose the Configuration Utility, then type:
1 (Control Blocks on Disk),
2 (Application),
1 (Specify Resource),
Resource name [CS2TCR00.CS2NODE]
ENTER, ENTER, ENTER,
3 (Change),
ENTER (11 times),
Use load parameters from ACB? (Y/N):
Y (yes)
ENTER (14 times),
Do you want to edit the Start Parameter data? (Y/N):
Y (yes),
Enter type of data:
1 (text),
Enter text string: [ ]
NBUF=8000000 (type in the size you want, no blanks or commas)
1 (Accept data)
9, 9, 9, 9 (to exit the tool)
Now stop and restart DAE to get the start parameter to take effect.
(Or update the CS2TCR00.CS2NODE ACB in the Resource Directory, then
stop and restart the CS2TCR00.CS2NODE ACB.)