Atalla Boxcar Reference Guide (G06.24+)

Atalla Boxcar Reference Guide—526564-005
7
Command Processing
After Boxcar is started, initialized, and configured, it performs a READUPDATEX on
$RECEIVE, then begins processing host application commands, sending and receiving
commands and responses through the sockets, and replying to the host applications.
Each time Boxcar receives an NSP command it updates a counter. When the counter
is equal to 2000 times the value of BOXCAR-SOCKET-RESET-LEVEL, Boxcar
attempts to restore any invalid sockets, and logs the number of sockets restored.The
log entry below indicates no sockets were found in an invalid state.
\CHIP.$BOXB: 25MAR2009 10:25:27 Number of Sockets restored in
SOCKET_RESET_LEVEL = 0
Error Handling
When a TCP/IP communications error occurs, Boxcar returns an error 311 to the host
application. Boxcar closes the socket on the NSP and attempts to open a new socket
connection on the NSP. It then continues to process other host applications commands
and NSP responses. If Boxcar is not able to open a new socket, it will mark the socket
as bad, and attempt to recover it when the BOXCAR-SOCKET-RESET-LEVEL value is
reached.
Below are some typical causes of an error 311 being returned to the host application.
Boxcar received a zero length string from the TCP/IP process.
Boxcar is unable to send the complete command to the NSP.
Boxcar failed to receive a response from the NSP.
Recovering Sockets
There are three conditions in which Boxcar will attempt to recover a socket.
If Boxcar is not able to open a new socket, it will mark the socket as bad, and
attempt to recover it when the BOXCAR-SOCKET-RESET-LEVEL value is
reached.
It will also attempt to recover any socket that has been in the receiving state for
more than 10 minutes.
BOXCAR will report the results of the socket recovery attempt as follows:
Socket Recovery: # of Invalid sockets encountered = 3.
Sockets restored from Invalid state = 3.
Socket Recovery: # of Invalid sockets (in receiving state over
10 minutes) encountered = 2.
Sockets recovered from Invalid Receiving State = 1.
Note. When the host application receives an error 311 it should retry the command.