---
name: "dtpcrc"
section: "5"
platform: "linux"
package: "ion"
version: "3.2.1+dfsg-1.1"
release: "Debian 9 (Stretch)"
platforms: ["linux"]
url: "https://new.carta.tech/dtpcrc"
---

# dtpcrc(5)

Delay-Tolerant Payload Conditioning management commands file

## NAME

dtpcrc - Delay-Tolerant Payload Conditioning management commands file

## DESCRIPTION

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

## 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 dtpcadmin 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**

  The **initialize** command.  Until this command is executed, DTPC is not in operation on the local ION node and most *dtpcadmin* commands will fail.

- **a profile** *profileID* *maxRtx* *aggrSizeLimit* *aggrTimeLimit* *TTL* *class\_of\_service* *report\_to\_endpointID* \[*statusReportFlags*\]

  The **add profile** command.  This command notes the definition of a single DPTC transmission profile.  A transmission profile asserts the BP and DTPC configuration parameter values that will be applied to all application data items (encapsulated in DTPC application data units and transmitted in bundles) that are issued subject to this profile.  Transmission profiles are globally defined; all transmission profiles must be provided, with identical parameter values, to all inter-communicating DTPC protocol entities.

  *profileID* must be the positive integer that uniquely defines the profile.

  *maxRtx* is the maximum number of times any single DTPC ADU transmitted subject to the indicated profile may be retransmitted by the DTPC entity.  If *maxRtx* is zero, then the DTPC transport service features (in-order delivery, end-to-end acknowledgment, etc.) are disabled for this profile.

  *aggrSizeLimit* is the size threshold for concluding aggregation of an outbound ADU and requesting transmission of that ADU.  If *aggrSizeLimit* is zero, then the DTPC transmission optimization features (aggregation and elision) are disabled for this profile.

  *aggrTimeLimit* is the time threshold for concluding aggregation of an outbound ADU and requesting transmission of that ADU.  If *aggrTimeLimit* is zero, then the DTPC transmission optimization features (aggregation and elision) are disabled for this profile.

  *class\_of\_service* is the class-of-service string as defined for [*bptrace*(1)](/bptrace/1.md).

  *report\_to\_endpointID* identifies the BP endpoint to which all status reports generated from bundles transmitted subject to this profile will be sent.

  *statusReportFlags*, if present, must be a sequence of status report flags, separated by commas, with no embedded whitespace.  Each status report flag must be one of the following: rcv, ct, fwd, dlv, del.

- **d profile** *profileId*

  The **delete profile** command.  This command erases the definition of the DTPC transmission profile identified by *profileId*.

- **i profile** *profileId*

  This command will print information (all configuration parameters) about the profile identified by *profileId*.

- **l profile**

  This command lists all known DTPC transmission profiles.

- **s**

  The **start** command.  This command starts the DTPC clock and daemon tasks for the local BP node.

- **x**

  The **stop** command.  This command stops all DTPC tasks and notifies all DTPC applications that DTPC service has been stopped.

- **w** { 0 \| 1 \| \<activity\_spec\> }

  The **DTPC watch** command.  This command enables and disables production of a continuous stream of user-selected DTPC activity indication characters.  A watch parameter of "1" selects all DTPC activity indication characters; "0" de-selects all DTPC activity indication characters; any other *activity\_spec* such as "o\<r\>" selects all activity indication characters in the string, de-selecting all others.  DTPC will print each selected activity indication character to **stdout** every time a processing event of the associated type occurs:

  **o**	new aggregator created for profile and destination endpoint

  **\\\<**	new ADU aggregation initiated

  **r**	application data item added to aggregation

  **\\**\>	aggregation complete, outbound ADU created

  **-**	outbound ADU sent via BP

  **l**	ADU end-to-end acknowledgment sent

  **m**	ADU deleted due to TTL expiration

  **n**	ADU queued for retransmission

  **i**	inbound ADU collector created

  **u**	inbound ADU received

  **v**	ADU sequence gap detected

  **?**	inbound ADU discarded

  **\***	ADU sequence gap deleted due to impending ADU TTL expiration

  **$**	inbound ADU collector reset

- **h**

  The **help** command.  This will display a listing of the commands and their formats.  It is the same as the **?** command.

## EXAMPLES

- a profile 5 6 1000000 5 3600 0.1 dtn:none

  Notes the definition of DTPC transmission profile 5: transport services are enabled, with an end-to-end retransmission limit of 5; transmission optimization service is enabled, initiating bundle transmission whenever the aggregation of data items queued for transmission subject to this profile exceeds one million bytes or is more than five seconds old; the transmitted bundles will have one-hour lifetime, will not be subject to custody transfer, will be sent at "standard" priority, and will not be tracked by any bundle status report production.

## SEE ALSO

[*dtpcadmin*(1)](/dtpcadmin/1.md), [*bptrace*(1)](/bptrace/1.md)
