80
6 F 3 B 0 3 6 2
6. TCP socket interface notes
a. When a passive open is executed, the specified socket is put in the active open wait state. If
the remote IP address (DIPAddress) and the remote port object socket TCP port number
(DTCP_PORTNO) values are set to 0, the socket will be able to handle active opens from any
remote port.
b. A connection is established by an active open from another socket applied to a socket in the
passive open state. A connection cannot be established by a passive open from another socket
applied to a socket in the passive open state. Similarly, a connection cannot be established by
an active open from another socket applied to a socket in the active open state. That is, the
roles of two sockets for which a connection is to be established must be determined in
advance.
c. For a socket in the passive open state, it is not possible to open multiple connections from
other ports by issuing multiple active opens.
d. Connections cannot be established between sockets on the same port.
e. If transmission is impossible due to network congestion or other reason when a send request is
executed, the send request is stored internally in the Ethernet Port so that it can be sent later.
The number of items that can be stored is three per socket. If the Ethernet Port cannot store
the request, is returns an error.
f. If a close request is issued first for a connection that is being established, then it will be
possible to execute the next open request for the object sockets at the point when the close
request processing completes normally. On engineering workstation and personal computer
systems, TCP sockets on the port that performed the close processing for the open connection
cannot be opened again for a fixed period, usually about 1 to 2 minutes, although this time
varies between systems.
g. When the Ethernet Port issues a close request first, the Ethernet Port waits 10 seconds. If the
T2N using the same port number reopen request during waiting for 10 seconds, the T2N
becomes LAN controller driver error.
h. If a close request comes from the remote port TCP socket while a connection is established,
the local port must also close the socket. As a technique for checking for the reception of close
requests from the remote TCP socket, user programs should monitor the RCLOSE and CONN
bits in the socket status. (See section 6.3.) RCLOSE is set to 1 and CONN is set to 0 when a
close request is received from the remote TCP socket. The Ethernet Port will return an error if
send or receive requests are issued in this state. A receive request in the receive wait state also
returns an error.
i. The Ethernet Port in the current state does not support a keep alive function for TCP
connections. Verification from the Ethernet Port side to other ports is not performed.
However, the Ethernet Port does respond to verifications from other ports. (Responding to
verifications from other ports is performed independently of user programs.)
Therefore, the disappearance of remote ports cannot be detected at the TCP level. We
recommend using the detection techniques described in items j and k below to detect this
condition.
Keep alive function: A function that checks, at the TCP protocol level, whether or not the
connection is operating normally if there has been no activity over the
connection for a certain fixed period.