The server deals with several kinds of messages:
The general syntax for any item stored into the global variable message queue is 'header: text'. The header: is identified by a trailing colon “:”, and is separated from the text by at least one space. Text can be any character string, with imbedded spaces, which will get uppercased and sent to the client VM system.
The header can contain the following:
This identifies the message as a local command to the server, and is not intended for any client. The associated text must contain a valid command:
Closes all active client connections, and terminates server processing
Writes a list of active connections to the log. Each line item contains the socket number, client port number, client IP address, VM user ID, VM node, connection status, and a count of messages sent to that client.
Explicitly terminates the connection with the client identified by the socket ID n. The socket ID is displayed using the DISPLAY command. The socket assignments are dynamic, and a client's socket ID should not be considered a constant unless only one client is expected to connect.
Due to the multiple client possibility, each client message contains a destination identifier as the header. The possible formats are:
The destination is a fully qualified IP and port combination. Use when several clients are on one system.
The destination is an IP address only. Normally this would be sufficient.
The destination is specified as a user ID and node combination.
The destination is a socket ID.
The destination is a broadcast to all connected clients.
The following are several examples:
'11.22.3.44,12345: Hi, VM'
'11.22.3.44: Hi, VM'
'CLIENTA@SYSTEMC: Hi, VM'
'3: Hi, VM'
'*: Hi, VM'
This is used internally, but may be visible when tracing is activated. Messages from the client are delivered to the appropriate service as defined by the disposition option, and the resulting return code is sent back to the client. This is a one-way message from server to client.
Server code monitors connection status. If there is no activity for one minute, a health-check is done by sending a probe message to the quiet client. If there is no response within another minute, the server will report the condition as a possible network or system outage. If a series of DISPLAY commands are issued during that two-minute period, connection status will be seen transitioning from Active to Probe to NoResp. As soon as any kind of input arrives from that client, the status returns to its normal active status. The low frequency of the probe message and its small size should not contribute significantly to network traffic.
Copyright © 2014 CA Technologies.
All rights reserved.
|
|