Provided by: ion_3.2.1+dfsg-1.1_amd64 bug

NAME

       bprc - Bundle Protocol management commands file

DESCRIPTION

       Bundle Protocol management commands are passed to bpadmin either in a file of text lines or interactively
       at bpadmin's command prompt (:).  Commands are interpreted line-by line, with exactly one command per
       line.  The formats and effects of the Bundle Protocol 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 bpadmin 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  and  the  crypto  suite  BP  was
           compiled with.  HINT: combine with e 1 command to log the version number at startup.

       1   The  initialize  command.  Until this command is executed, Bundle Protocol is not in operation on the
           local ION node and most bpadmin commands will fail.

       r 'command_text'
           The run command.  This command will execute command_text as if it had been typed at a console prompt.
           It is used to, for example, run another administrative program.

       s   The start command.  This command starts all schemes and all protocols on the local node.

       m heapmax max_database_heap_per_acquisition
           The manage heap for bundle acquisition command.  This command declares the maximum number of bytes of
           SDR heap space that will be occupied  by  any  single  bundle  acquisition  activity  (nominally  the
           acquisition  of  a single bundle, but this is at the discretion of the convergence-layer input task).
           All data acquired in excess of this limit will be written to a temporary file pending extraction  and
           dispatching  of  the acquired bundle or bundles.  Default is the size of a ZCO file reference object,
           the minimum SDR heap space occupancy in the event that all acquisition is into a file.

       x   The stop command.  This command stops all schemes and all protocols on the local node.

       w { 0 | 1 | activity_spec }
           The BP watch command.  This command enables and disables production of a continuous stream  of  user-
           selected  Bundle  Protocol  activity  indication characters.  A watch parameter of "1" selects all BP
           activity indication characters; "0" de-selects all  BP  activity  indication  characters;  any  other
           activity_spec  such  as "acz~" selects all activity indication characters in the string, de-selecting
           all others.  BP will print each selected  activity  indication  character  to  stdout  every  time  a
           processing event of the associated type occurs:

           a    new bundle is queued for forwarding

           b    bundle is queued for transmission

           c    bundle is popped from its transmission queue

           m    custody acceptance signal is received

           w    custody of bundle is accepted

           x    custody of bundle is refused

           y    bundle is accepted upon arrival

           z    bundle is queued for delivery to an application

           ~    bundle is abandoned (discarded) on attempt to forward it

           !    bundle is destroyed due to TTL expiration

           &    custody refusal signal is received

           #    bundle is queued for re-forwarding due to CL protocol failure

           j    bundle is placed in "limbo" for possible future re-forwarding

           k    bundle is removed from "limbo" and queued for re-forwarding

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

SCHEME COMMANDS

       a scheme scheme_name 'forwarder_command' 'admin_app_command'
           The add scheme command.  This command declares an endpoint naming "scheme" for use in  endpoint  IDs,
           which  are  structured as URIs: scheme_name:scheme-specific_part.  forwarder_command will be executed
           when the scheme is started on this node, to initiate  operation  of  a  forwarding  daemon  for  this
           scheme.  admin_app_command will also be executed when the scheme is started on this node, to initiate
           operation  of  a  daemon that opens a custodian endpoint identified within this scheme so that it can
           receive and process custody signals and bundle status reports.

       c scheme scheme_name 'forwarder_command' 'admin_app_command'
           The  change  scheme  command.   This  command  sets  the  indicated  scheme's  forwarder_command  and
           admin_app_command to the strings provided as arguments.

       d scheme scheme_name
           The  delete  scheme command.  This command deletes the scheme identified by scheme_name.  The command
           will fail if any bundles identified in this scheme are pending forwarding, transmission, or delivery.

       i scheme scheme_name
           This command will print information (number and commands) about the endpoint naming scheme identified
           by scheme_name.

       l scheme
           This command lists all declared endpoint naming schemes.

       s scheme scheme_name
           The start scheme command.  This command starts the forwarder and administrative  endpoint  tasks  for
           the indicated scheme task on the local node.

       x scheme scheme_name
           The  stop scheme command.  This command stops the forwarder and administrative endpoint tasks for the
           indicated scheme task on the local node.

ENDPOINT COMMANDS

       a endpoint endpoint_ID { q | x } ['recv_script']
           The add endpoint command.  This command establishes a DTN endpoint named  endpoint_ID  on  the  local
           node.   The  remaining parameters indicate what is to be done when bundles destined for this endpoint
           arrive at a time when no application has got the endpoint open for bundle reception.   If  'x',  then
           such  bundles  are  to  be  discarded  silently and immediately.  If 'q', then such bundles are to be
           enqueued for later delivery and, if recv_script is provided, recv_script is to be executed.

       c endpoint endpoint_ID { q | x } ['recv_script']
           The change endpoint command.  This command changes the action  that  is  to  be  taken  when  bundles
           destined  for this endpoint arrive at a time when no application has got the endpoint open for bundle
           reception, as described above.

       d endpoint endpoint_ID
           The delete endpoint command.  This command deletes  the  endpoint  identified  by  endpoint_ID.   The
           command will fail if any bundles are currently pending delivery to this endpoint.

       i endpoint endpoint_ID
           This  command  will  print  information  (disposition  and  script)  about the endpoint identified by
           endpoint_ID.

       l endpoint
           This command lists all local endpoints, regardless of scheme name.

PROTOCOL COMMANDS

       a protocol protocol_name payload_bytes_per_frame overhead_bytes_per_frame [nominal_data_rate]
           The add protocol command.  This command establishes access to the named convergence layer protocol at
           the local node.  The payload_bytes_per_frame  and  overhead_bytes_per_frame  arguments  are  used  in
           calculating  the  estimated  transmission  capacity  consumption  of  each  bundle,  to  aid in route
           computation and congestion forecasting.

           The optional nominal_data_rate argument overrides the hard-coded default continuous data rate for the
           indicated protocol, for purposes of  rate  control.   For  all  CL  protocols  other  than  LTP,  the
           protocol's  applicable  nominal  continuous  data  rate is the data rate that is always used for rate
           control over links served by  that  protocol;  data  rates  are  not  extracted  from  contact  graph
           information.   This  is because only the LTP induct and outduct throttles can be dynamically adjusted
           in response to changes in data rate between the local node and  its  neighbors,  because  (currently)
           there  is  no  mechanism for mapping neighbor node number to the duct name for any other CL protocol.
           For LTP, duct name is simply LTP engine number which, by convention, is  identical  to  node  number.
           For  all  other  CL protocols, the nominal data rate in each induct and outduct throttle is initially
           set to the protocol's configured nominal data rate and is never subsequently modified.

       d protocol protocol_name
           The delete protocol command.  This command deletes  the  convergence  layer  protocol  identified  by
           protocol_name.  The command will fail if any ducts are still locally declared for this protocol.

       i protocol protocol_name
           This command will print information about the convergence layer protocol identified by protocol_name.

       l protocol
           This command lists all convergence layer protocols that can currently be utilized at the local node.

       s protocol protocol_name
           The  start  protocol  command.   This  command  starts  all  induct and outduct tasks for inducts and
           outducts that have been defined for the indicated CL protocol on the local node.

       x protocol protocol_name
           The stop protocol command.  This command stops all induct and outduct tasks for inducts and  outducts
           that have been defined for the indicated CL protocol on the local node.

INDUCT COMMANDS

       a induct protocol_name duct_name 'CLI_command'
           The add induct command.  This command establishes a "duct" for reception of bundles via the indicated
           CL  protocol.  The duct's data acquisition structure is used and populated by the "induct" task whose
           operation is initiated by CLI_command at the time the duct is started.

       c induct protocol_name duct_name 'CLI_command'
           The change induct command.  This command changes the command that is used to  initiate  operation  of
           the induct task for the indicated duct.

       d induct protocol_name duct_name
           The  delete  induct  command.   This  command  deletes  the  induct  identified  by protocol_name and
           duct_name.  The command will fail if any bundles are currently pending acquisition via this induct.

       i induct protocol_name duct_name
           This command will print information (the CLI command) about the induct  identified  by  protocol_name
           and duct_name.

       l induct [protocol_name]
           If  protocol_name  is specified, this command lists all inducts established locally for the indicated
           CL protocol.  Otherwise it lists all locally established inducts, regardless of protocol.

       s induct protocol_name duct_name
           The start induct command.  This command starts the indicated induct task as defined for the indicated
           CL protocol on the local node.

       x induct protocol_name duct_name
           The stop induct command.  This command stops the indicated induct task as defined for  the  indicated
           CL protocol on the local node.

OUTDUCT COMMANDS

       a outduct protocol_name duct_name 'CLO_command' [max_payload_length]
           The  add  outduct  command.   This  command  establishes a "duct" for transmission of bundles via the
           indicated CL protocol.  The duct's data transmission structure is  serviced  by  the  "outduct"  task
           whose  operation  is  initiated  by CLO_command at the time the duct is started.  A value of zero for
           max_payload_length indicates that bundles of any size can be accommodated; this is the default.

       c outduct protocol_name duct_name 'CLO_command' [max_payload_length]
           The change outduct command.  This command sets new values for the indicated duct's payload size limit
           and the command that is used to initiate operation of the outduct task for this duct.

       d outduct protocol_name duct_name
           The delete outduct command.  This  command  deletes  the  outduct  identified  by  protocol_name  and
           duct_name.  The command will fail if any bundles are currently pending transmission via this outduct.

       i outduct protocol_name duct_name
           This  command  will print information (the CLO command) about the outduct identified by protocol_name
           and duct_name.

       l outduct [protocol_name]
           If protocol_name is specified, this command lists all outducts established locally for the  indicated
           CL protocol.  Otherwise it lists all locally established outducts, regardless of protocol.

       s outduct protocol_name duct_name
           The  start  outduct  command.   This  command  starts  the  indicated outduct task as defined for the
           indicated CL protocol on the local node.

       b outduct protocol_name duct_name
           The block outduct command.  This command disables transmission of bundles via the  indicated  outduct
           and reforwards all non-critical bundles currently queued for transmission via this outduct.

       u outduct protocol_name duct_name
           The  unblock  outduct  command.   This  command  re-enables transmission of bundles via the indicated
           outduct and reforwards all bundles in "limbo" in the hope that the unblocking of  this  outduct  will
           enable some of them to be transmitted.

       x outduct protocol_name duct_name
           The stop outduct command.  This command stops the indicated outduct task as defined for the indicated
           CL protocol on the local node.

EXAMPLES

       a scheme ipn 'ipnfw' 'ipnadminep'
           Declares the "ipn" scheme on the local node.

       a protocol udp 1400 100 16384
           Establishes  access  to the "udp" convergence layer protocol on the local node, estimating the number
           of payload bytes per ultimate (lowest-layer) frame to be 1400 with 100 bytes of total  overhead  (BP,
           UDP, IP, AOS) per lowest-layer frame, and setting the default nominal data rate to be 16384 bytes per
           second.

       r 'ipnadmin flyby.ipnrc'
           Runs the administrative program ipnadmin from within bpadmin.

SEE ALSO

       bpadmin(1), ipnadmin(1), dtn2admin(1)

perl v5.24.1                                       2016-07-07                                            BPRC(5)