Previous | Contents | Index |
The following sections describe:
ACMS uses two logicals to manage data compression:
You must define both the ACMS$ENABLE_DATA_COMPRESSION and ACMS$AUDIT_NETWORK_CONNECTIONS logical names as executive mode system logical names or as process logical names.
In an agent process, ACMS translates the logical names when the first submitter signs in. Therefore, for an ACMS-supplied CP agent, define the logical names as system logicals in executive mode before you start the ACMS terminal subsystem. For a user-written agent, you must either define the logical names before the agent program is started, or the agent program itself must define the logical names before calling ACMS$SIGN_IN to sign in the first submitter.
In the Application Execution Controller (EXC) process, ACMS translates the logical names as part of the application startup processing. Therefore, you either must define the logical names as system logicals in executive mode before you start the application, or you must define them using the APPLICATION LOGICAL NAME clause in the application definition.
If you need to enable or disable data compression or the auditing of
network connections after an agent process or an application process
has been started, you must restart the process after you define,
redefine, or deassign the appropriate logical names.
7.2.2 Using Restricted and Unrestricted Modes
You can enable data compression in one of two modes:
ACMS never uses data compression automatically. You must always
explicitly enable data compression on both the application node and the
submitter node before ACMS uses data compression between the two nodes.
ACMS never uses data compression for communications between processes
on the same node.
7.2.2.1 Enabling Data Compression in Unrestricted Mode
To enable data compression in unrestricted mode, define the ACMS$ENABLE_DATA_COMPRESSION logical name as the wildcard asterisk character (*).
For example, use the following command to enable data compression in unrestricted mode:
$ DEFINE/SYSTEM/EXECUTIVE ACMS$ENABLE_DATA_COMPRESSION * |
Figure 7-1 illustrates a distributed configuration consisting of three submitter nodes, each connected by a wide area network to a local area network consisting of two application nodes and three more submitter nodes.
Figure 7-1 Simple Mixed-Interconnect Network
In the configuration in Figure 7-1, data compression is required between submitter nodes S1, S2, and S3 and application nodes A1 and A2, because the submitter and application nodes are separated by a wide area network. Data compression is not required between submitter nodes S4, S5, and S6 and application nodes A1 and A2, because the submitter and application nodes are on the same local area network.
To use data compression in this configuration, enable data compression in unrestricted mode on submitter nodes S1, S2, and S3 and on application nodes A1 and A2, using the following command:
$ DEFINE/SYSTEM/EXECUTIVE ACMS$ENABLE_DATA_COMPRESSION * |
Because data compression is not enabled on nodes S4, S5, and S6,data
compression is not used between these nodes and application nodes A1
and A2.
7.2.2.2 Enabling Data Compression in Restricted Mode
You might sometimes want to limit the use of data compression to network connections between specific nodes in a network. To enable data compression in restricted mode, define the ACMS$ENABLE_DATA_COMPRESSION logical name as a search list, with each node name separated by a comma. You can specify node names with or without the trailing double-colon (::).
In restricted mode, ACMS uses data compression only for network nodes defined in the ACMS$ENABLE_DATA_COMPRESSION logical name. You do not need to enable data compression in restricted mode on both nodes. For example, you can enable data compression on a submitter node in unrestricted mode, and enable data compression on an application node in restricted mode. To do this, include the name of the submitter node in the list of nodes that the ACMS$ENABLE_DATA_COMPRESSION logical name identifies.
For example, use the following command to enable data compression in restricted mode from the application node to nodes S1 and S2:
$ DEFINE/SYSTEM/EXECUTIVE ACMS$ENABLE_DATA_COMPRESSION S1,S2 |
On nodes S1 and S2, define the logical name in unrestricted mode:
$ DEFINE/SYSTEM/EXECUTIVE ACMS$ENABLE_DATA_COMPRESSION * |
In listing node names as the equivalence names in the search list when you define the ACMS$ENABLE_DATA_COMPRESSION logical name, do not specify the unrestricted mode (*) symbol as a node name. If you use the unrestricted mode (*) symbol in place of a node name in the search list, ACMS writes an error entry to the ACMS audit log and does not enable data compression. |
Figure 7-2 extends the example shown in Figure 7-1 by adding a second local area network containing two application nodes in addition to three submitter nodes. In the example, users on any submitter node can select tasks on any of the application nodes.
In the configuration shown in Figure 7-2, data compression is required between submitter nodes S1, S2, and S3 and application nodes A3 and A4, and between submitter nodes S4, S5, and S6 and application nodes A1 and A2. Data compression is not required between any other nodes in this network.
Figure 7-2 Complex Mixed-Interconnect Network
To use data compression in this configuration, enable data compression in unrestricted mode on the application nodes. On the submitter nodes, enable data compression so that it is used only when communicating with application nodes over the wide area network. Follow these steps:
$ DEFINE/SYSTEM/EXECUTIVE ACMS$ENABLE_DATA_COMPRESSION * |
$ DEFINE/SYSTEM/EXECUTIVE ACMS$ENABLE_DATA_COMPRESSION A3, A4 |
$ DEFINE/SYSTEM/EXECUTIVE ACMS$ENABLE_DATA_COMPRESSION A1, A2 |
An alternative approach in this example is to enable data compression in unrestricted mode on all the submitter nodes and then enable data compression in restricted mode on each application node. Follow these steps:
$ DEFINE/SYSTEM/EXECUTIVE ACMS$ENABLE_DATA_COMPRESSION * |
$ DEFINE/SYSTEM/EXECUTIVE ACMS$ENABLE_DATA_COMPRESSION S4,S5,S6 |
$ DEFINE/SYSTEM/EXECUTIVE ACMS$ENABLE_DATA_COMPRESSION S1,S2,S3 |
You might sometimes want to enable data compression on a general, system-wide basis, but disable it for specific processes. For example, you might want to disable it for a specialized user-written agent, if that agent processes data that cannot be compressed using the ACMS data compression algorithm.
To explicitly disable data compression, define the ACMS$ENABLE_DATA_COMPRESSION logical name as a hyphen character enclosed in quotation marks ("-"). For example, use the following command to disable data compression for a specific process:
$ DEFINE/PROCESS ACMS$ENABLE_DATA_COMPRESSION "-" |
DCL uses the hyphen character (-) to indicate the continuation of a DCL command line; therefore, you must enclose the character in quotation marks to differentiate it. Do not specify the disable symbol ("-") as a node name when you list node names as the equivalence names in the search list when you define the ACMS$ENABLE_DATA_COMPRESSION logical name. If you use the disable symbol ("-") in place of a node name in the search list, ACMS writes an error entry to the ACMS audit log and does not enable data compression. |
To verify that data compression is enabled correctly, enable logging of ACMS network connection information. When you do this, ACMS writes an entry to the ACMS audit log every time a new ACMS process is started and every time a process initiates or accepts a new network connection.
You can enable auditing on a submitter node, an application node, or both. You can then use the information written to the audit log to determine if ACMS is using data compression correctly on network connections to the appropriate remote nodes.
ACMS uses the ACMS$AUDIT_NETWORK_CONNECTIONS logical name to enable logging of ACMS network connection information. You must define the ACMS$AUDIT_NETWORK_CONNECTIONS logical name as an executive-mode system logical name or as a process logical name in any mode.
To log ACMS network connection information, define the ACMS$AUDIT_NETWORK_CONNECTIONS logical name as a string beginning with T or t (true) or, Y or y (yes), or define it as a success status (an odd number). For example, use the following command to log network connection information for all processes on a node:
$ DEFINE/SYSTEM/EXECUTIVE ACMS$AUDIT_NETWORK_CONNECTIONS Y |
When verification of network connection information is enabled, ACMS writes an entry to the audit log whenever a new process is started. The following examples illustrate each type of entry.
Example 7-1 illustrates the format of the entry ACMS logs when a process is started and data compression has not been enabled.
Example 7-1 Data Compression Is Not Enabled |
---|
********************************************************* Type : OTHER Time : 31-Jul-1992 15:20:01.15 Text : Process ACMS01EXC001000 started Data compression is not enabled ********************************************************* |
Example 7-2 illustrates the entry ACMS logs when a process is started and data compression has been explicitly disabled.
Example 7-2 Data Compression Is Disabled |
---|
********************************************************* Type : OTHER Time : 31-Jul-1992 15:21:02.16 Text : Process ACMS01EXC002000 started Data compression is explicitly disabled ********************************************************* |
Example 7-3 illustrates the entry ACMS logs when a process is started and data compression has been enabled in unrestricted mode.
Example 7-3 Data Compression Is Enabled in Unrestricted Mode |
---|
********************************************************* Type : OTHER Time : 31-Jul-1992 15:22:03.17 Text : Process ACMS01EXC003000 started Data compression is enabled for all nodes ********************************************************* |
Example 7-4 illustrates the entry ACMS logs when a process is started and data compression has been enabled in restricted mode.
Example 7-4 Data Compression Is Enabled in Restricted Mode |
---|
********************************************************* Type : OTHER Time : 31-Jul-1992 15:23:04.18 Text : Process ACMS01EXC004000 started Data compression is enabled for node: SUB1, SUB2, SUB3 ********************************************************* |
When logging network connection information to the ACMS audit log, ACMS writes an entry to the log every time a new ACMS network connection is established. Note that ACMS multiplexes ACMS network connections over a single DECnet logical link. This means that you might see multiple entries in the audit log for the same process. The following examples illustrate the format of each type of network connection entry written to the ACMS audit log.
Example 7-5 illustrates that a process initiated a network connection but data compression was not used, because it was not enabled for the process at the local node. Note that if data compression is not enabled at the node initiating the network connection, then information about whether data compression is enabled at the remote node is not available.
Example 7-5 Data Compression Is Not Enabled at Local Node |
---|
************************************************************ Type : OTHER Time : 31-Jul-1992 15:40:21.45 Text : Process ACMS01CP001000 initiated network connection to remote node APPL1 Data compression is disabled (not enabled at local node) ************************************************************ |
Example 7-6 illustrates that a process initiated a network connection, but data compression was not fully enabled, because the actual application database (ADB) file was built using a version of ACMS prior to Version 3.3. In this case, although a compressed data protocol is used, data in task argument workspaces is not compressed. To fully enable data compression, rebuild the application database (ADB) file using ACMS Version 3.3 or higher.
Example 7-6 Data Compression Is Not Fully Enabled |
---|
************************************************************ Type : OTHER Time : 31-Jul-1992 15:41:14.32 Text : Process ACMS01QTI001000 initiated network connection to remote node APPL2 Data compression not fully enabled (not enabled in ADB, please rebuild) ************************************************************ |
Example 7-7 illustrates that a network connection was accepted by a process on the local node. Data compression was not used, however, because it was not enabled for the process at the remote node that initiated the connection.
Example 7-7 Data Compression Is Not Enabled at the Remote Node Initiating the Network Connection |
---|
************************************************************ Type : OTHER Time : 31-Jul-1992 15:42:23.76 Text : Process ACMS01EXC001000 accepted network connection from remote node SUB1 Data compression is disabled (not enabled at remote node) ************************************************************ |
Example 7-8 illustrates that a network connection was accepted by a process on the local node. However, data compression was not used, because, although it is enabled at the remote node that initiated the connection, it is not enabled for the process at the local node.
Example 7-8 Data Compression Is Enabled at the Remote Node, But Is Not Enabled at the Local Node |
---|
************************************************************ Type : OTHER Time : 31-Jul-1992 15:43:28.54 Text : Process ACMS01EXC002000 accepted network connection from remote node SUB2 Data compression is disabled (not enabled at local node) ************************************************************ |
Example 7-9 and Example 7-10 illustrate network connections that were established with data compression enabled.
Example 7-9 Data Compression Is Enabled with Network Connection to the Remote Node |
---|
************************************************************ Type : OTHER Time : 31-Jul-1992 15:50:42.50 Text : Process ACMS01CP001000 initiated network connection to remote node YRNODE Data compression is enabled ************************************************************ |
Example 7-10 Data Compression Is Enabled with Network Connection from the Remote Node |
---|
************************************************************ Type : OTHER Time : 31-Jul-1992 15:52:55.42 Text : Process ACMS01EXC003000 accepted network connection from remote node YRNODE Data compression is enabled ************************************************************ |
After you verify that data compression is being used only on network connections with the nodes you specified, you might want to disable logging on a per-process basis. To disable logging of network connection information, deassign the ACMS$AUDIT_NETWORK_CONNECTIONS logical name. Note that ACMS does not automatically log network connection information.
To explicitly disable logging of network connection information, define the ACMS$AUDIT_NETWORK_CONNECTIONS logical name as a string beginning with anything other than T, t, Y, or y, or define it as a failure status (an even number). For example, use the following command to disable logging of network connection information for a process running a user-written agent:
$ DEFINE/PROCESS ACMS$AUDIT_NETWORK_CONNECTIONS N |
After you disable auditing, any processes logging network connection
information do not stop logging this information until the processes or
the programs they are executing are restarted.
7.3 Monitoring Data Compression
ACMS uses the DECtrace layered product to monitor the extent to which messages sent over the network are compressed. ACMS logs an DECtrace point event, called the COMPRESSED_MSG event, every time a network message is sent or received.
By default, DECtrace collects items for the COMPRESSED_MSG event whenever data compression is enabled, provided that you specify the PERFORMANCE or ALL collection class in your facility selection. See Section 15.3.1 for more information about the COMPRESSED_MSG event.
Table 7-1 describes the information that DECtrace collects for each network message.
Item | Description |
---|---|
Source node | Name of the node that sent the message |
Destination node | Name of the node that received the message |
Original message length | Length in bytes of the message before data compression |
Compressed message length | Length in bytes of the message after data compression |
Compression ratio | Factor by which ACMS compressed the message |
Previous | Next | Contents | Index |