NAME¶
acsrc - Aggregate Custody Signal management commands file
DESCRIPTION¶
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.
GENERAL COMMANDS¶
- ?
- 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.
- v
- 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.
- h
- 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.
CUSTODIAN COMMANDS¶
- 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.
EXAMPLES¶
- 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.
SEE ALSO¶
acsadmin(1)