acsrc(5) Aggregate Custody Signal management commands file


Aggregate Custody Signal management commands are passed to acsadmin either in a file of text lines or interactively at acsadmin's command prompt (:). Commands are interpreted line-by line, with exactly one command per line. The formats and effects of the Aggregate Custody Signal management commands are described below.


The help command. This will display a listing of the commands and their formats. It is the same as the h command.
Comment line. Lines beginning with # are not interpreted.
e { 1 | 0 }
Echo control. Setting echo to 1 causes all output printed by acsadmin to be logged as well as sent to stdout. Setting echo to 0 disables this behavior.
Version number. Prints out the version of ION currently installed. HINT: combine with e 1 command to log the version number at startup.
1 <logLevel> [<heapWords>]
The initialize command. Until this command is executed, Aggregate Custody Signals are not in operation on the local ION node and most acsadmin commands will fail.

The logLevel argument specifies at which log level the ACS appending and transmitting implementation should record its activity to the ION log file. This argument is the bitwise ``OR'' of the following log levels:

0x01 ERROR
Errors in ACS programming are logged.
0x02 WARN
Warnings like ``out of memory'' that don't cause ACS to fail but may change behavior are logged.
0x04 INFO
Informative information like ``this custody signal is a duplicate'' is logged.
0x08 DEBUG
Verbose information like the state of the pending ACS tree is logged.

The optional heapWords argument informs ACS to allocate that many heap words in its own DRAM SDR for constructing pending ACS. If not supplied, the default ACS_SDR_DEFAULT_HEAPWORDS is used. Once all ACS SDR is allocated, any incoming custodial bundles that would trigger an ACS will trigger a normal, non-aggregate custody signal instead, until ACS SDR is freed. If your node intermittently emits non-aggregate custody signals when it should emit ACS, you should increase heapWords.

Since ACS uses SDR only for emitting Aggregate Custody Signals, ION can still receive ACS even if this command is not executed, or all ACS SDR memory is allocated.

The help command. This will display a listing of the commands and their formats. It is the same as the ? command.
s <minimumCustodyId>
This command sets the minimum custody ID that the local bundle agent may use in custody transfer enhancement blocks that it emits. These custody IDs must be unique in the network (for the lifetime of the bundles to which they refer).

The minimumCustodyId provided is stored in SDR, and incremented every time a new custody ID is required. So, this command should be used only when the local bundle agent has discarded its SDR and restarted.


a custodianEid acsSize [acsDelay]
The add custodian command. This command provides information about the ACS characteristics of a remote custodian. custodianEid is the custodian EID for which this command is providing information. acsSize is the preferred size of ACS bundles sent to custodianEid; ACS bundles this implementation sends to custodianEid will aggregate until ACS are at most acsSize bytes (if acsSize is smaller than 19 bytes, some ACS containing only one signal will exceed acsSize and be sent anyways; setting acsSize to 0 causes ``aggregates'' of only 1 signal to be sent).

acsDelay is the maximum amount of time to delay an ACS destined for this custodian before sending it, in seconds; if not specified, DEFAULT_ACS_DELAY will be used.


a ipn:15.0 100 27
Informs ACS on the local node that the local node should send ACS bundles destined for the custodian ipn:15.0 whenever they are 100 bytes in size or have been delayed for 27 seconds, whichever comes first.