<?xml version="1.0" encoding="us-ascii"?>
<!DOCTYPE rfc SYSTEM "rfc2629.dtd"[
<!ENTITY RFC6256 SYSTEM "http://xml.resource.org/public/rfc/bibxml/reference.RFC.6256.xml">
<!ENTITY RFC4838 SYSTEM "http://xml.resource.org/public/rfc/bibxml/reference.RFC.4838.xml">
<!ENTITY RFC2119 SYSTEM "http://xml.resource.org/public/rfc/bibxml/reference.RFC.2119.xml">
<!ENTITY RFC5050 SYSTEM "http://xml.resource.org/public/rfc/bibxml/reference.RFC.5050.xml">
<!ENTITY RFC6257 SYSTEM "http://xml.resource.org/public/rfc/bibxml/reference.RFC.6257.xml">
]
>
<?xml-stylesheet type='text/xsl' href='rfc2629.xslt' ?>
<?rfc strict="yes" ?>
<?rfc toc="yes"?>
<?rfc tocdep"4"?>
<?rfc symrefs="yes"?>
<?rfc sortrefs="yes" ?>
<?rfc compact="no" ?>
<?rfc subcompact="no" ?>

<rfc category="exp" ipr="trust200902" docName="draft-birrane-dtn-adm-bpsec-00" obsoletes="" updates="" submissionType="IETF" xml:lang="en">

   <!-- ***** FRONT MATTER ***** -->
   <front> 
      <title abbrev="BPSEC ADM">Bundle Protocol Security Application Data Model</title>
      <author fullname="Edward J. Birrane" initials="E.B." surname="Birrane">
         <organization> Johns Hopkins Applied Physics Laboratory </organization>
         <address>
            <email>Edward.Birrane@jhuapl.edu</email>
         </address>
      </author>
      <date year="2016" />
      
       <!-- Meta-data Declarations -->
      <area>General</area>
      <workgroup>Delay-Tolerant Networking</workgroup>
      <keyword>DTN</keyword>
      <keyword>Network Management</keyword>
      <keyword>Security</keyword>
      
      <abstract>
         <t>
            This document describes an Application Data Model (ADM) for the
            Bundle Security Protocol (BPSEC). This ADM identifies the Primitive
            Values, Computed values, Reports, Controls, Macros, Literals,
            Operators, and meta-data associated with the monitoring and management of
            BPSEC security primitives. The information
            outlined in this document MUST be supported by any software claiming
            to manage a BPSEC implementation through the Asynchronous Management 
            Protocol (AMP).
         </t>
      </abstract>
   </front>
  
   <middle>
      <section title="Introduction" toc="default">
         <t>
            An Application Data Model (ADM) provides a guaranteed interface for the 
            management of an application or protocol over the Asynchronous Management Protocol 
            <xref target="AMP"/> that is independent of the nuances 
            of its software implementation. In this respect, the ADM is 
            conceptually similar to the Managed Information Base (MIB) used by SNMP, 
            but contains additional information relating to command opcodes and 
            more expressive syntax for automated behavior.
         </t>  
         <t>
            Agents within the Asynchronous Management Architecture <xref target="AMA"/> 
            represent applications running on managed devices that are responsible for 
            implementing the AMA services of configuration, reporting, control,
            and administration. These agents provide the mechnism through 
            which applications and protocols are managed through the AMP.
         </t>         
         <t>
            The BPSEC (<xref target="BPSEC"/>) protocol defines integrity and confidentiality
            mechanisms for securing extension blocks within Bundle Protocol bundle. The
            BPSEC ADM provides the set of information used to monitor and configure 
            common aspects of any BPSEC software implementation.  
         </t>
             
         <section title="Technical Notes" toc="default">
            <t>
               <list style="symbols">
                  <t>
                     This document describes Version 0.1 of the BPSEC ADM.
                  </t>
                  <t>
                     The OID Root for this ADM is NOT correctly set. A sample
                     OID Root is used in this version of the specification and
                     MAY change in future versions of this ADM.
                  </t>
                  <t>
                     Currently, ADMs are organizing documents and not used to automatically 
                     generate software. Future versions of this ADM should include a 
                     specification in a data modeling language (such as YANG) to better
                     enable software generation.             
                  </t> 
                  <t>
                     Agent applications MAY choose to ignore the name, description,
                     or OID information associated with the component definitions
                     within this ADM as these items are only used to provide 
                     human-readable information associated with user interfaces 
                     and may not be necessary on a deployed managed device.                     
                  </t>              
               </list>
            </t>
         </section>
      
         <section title="Scope" toc="default">
            <t>
               This ADM specifies the globally unique identifiers and descriptions 
               for all Values, Controls, Literals, and Operators associated with 
               BPSEC management via an AMP Agent. 
            </t>
            <t>
               Any BPSEC implementation claiming compliance with the BPSEC ADM MUST
               compute all identified primitive data when requested by an AMP
               Agent. Also, any BPA implementation claiming compliance with the
               BPA ADM MUST execute all identified controls when requested by an
               AMP Agent. 
            </t>
            <t>
               Any AMP Agent claiming to support the BPSEC ADM must compute all
               identifier data, perform identified controls/operators, and
               understand identified literals/metadata.
            </t>
         </section>
         
         <section title="Requirements Language" toc="default">
            <t>
               The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT",
               "SHOULD", "SHOULD NOT", "RECOMMENDED", "MAY", and "OPTIONAL" in this
               document are to be interpreted as described in 
               <xref target="RFC2119" pageno="false" format="default">RFC 2119</xref>.
            </t>
         </section>   
                 
      </section>
      <section title="OID Tree Identification" toc="default">
         <t>
            The Managed Identifiers (MIDs) used with this ADM encapsulate 
            OIDs within a globally managed OID tree. The OID node from which
            all of the MIDs in this specification derive is called the
            "BPSEC ADM OID Root". This section identifies this root in the
            overall OID tree.
         </t>
         <t>
            NOTE: This version of the BPSEC ADM uses a proxy BPSEC ADM Root that
            has NOT been assigned. The BPSEC ADM Root in this
            version of the document is only used for experimental purposes and
            MAY change before the final release of this specification.
         </t>
         <texttable title="OID Tree Identification" align="center" style="full">
            <ttcol width="30%"></ttcol>
            <ttcol width="70%"></ttcol>
            <c>
               BPSEC ADM OID ROOT STRING
            </c>
            <c>
               iso.identified-organization.dod.internet.mgmt.amp.bpsec
            </c>
            
            <c>
               BPSEC ADM ROOT ID STRING
            </c>
            <c>
               1.3.6.1.2.3.9
            </c>
            
            <c>
               BPSEC ADM ROOT OID (octets)
            </c>
            <c>
               2B 06 01 02 03 09
            </c>
         </texttable>
         
         <t>
            The subtree under the BPSEC ADM OID ROOT contains eight subbranches that capture
            metadata, Primitive Values, Computed Values, Reports, Controls,
            Literals, Macros, and Operators as illustrated in 
            <xref target="bpsec_tree"/>.   
            
            <figure align="center" anchor="bpsec_tree" title="BPSEC ADM OID Subtree" suppress-title="false" alt="" width="" height="">
               <artwork align="center" xml:space="preserve" name="" type="" alt="" width="" height="">

                              BPSEC ADM ROOT
                              (1.3.6.1.2.3.9)
                                    |
   Meta-  Primitive  Computed       |
   Data     Data      Data    Rpts  |  Ctrls  Literals  Macros   Ops
    (.0)    (.1)      (.2)    (.3)  |  (.4)    (.5)      (.6)    (.7)
      +-------+---------+------+---------+------+----------+---------+
                  
               </artwork>
            </figure>
            
         </t>
         
         <section title="Nicknames" toc="default">
            <t>
               The following managed nicknames are provided to generate 
               compressed OIDs within the AMP. Compressed OIDs enable shortening
               of common subtrees into a single numerical identifier to avoid the
               significant repetition incumbent with using OIDs from a common
               subtree. The nicknames defined by this ADM are given in 
               <xref target="bp_nn"/>.
            </t>
            
            <texttable anchor="bp_nn" title="BPSEC ADM Nicknames" align="center" style="full">
               <ttcol width="10%" align="center">Unique ID</ttcol>
               <ttcol width="45%" align="center">Label</ttcol>
               <ttcol width="45%" align="center">OID as ASN.1 BER</ttcol>
               
               <c>40</c>
               <c>BPSEC Metadata</c>
               <c>0x2B060102030900</c>
               
               <c>41</c>
               <c>BPSEC Primitive Values</c>
               <c>0x2B060102030901</c>

               <c>42</c>
               <c>BPSEC Computed Values</c>
               <c>0x2B060102030902</c>

               <c>43</c>
               <c>BPSEC Reports</c>
               <c>0x2B060102030903</c>

               <c>44</c>
               <c>BPSEC Controls</c>
               <c>0x2B060102030904</c>
               
               <c>45</c>
               <c>BPSEC Literals</c>
               <c>0x2B060102030905</c>

               <c>46</c>
               <c>BPSEC Macros</c>
               <c>0x2B060102030906</c>

               <c>47</c>
               <c>BPSEC Operators</c>
               <c>0x2B060102030907</c>

               <c>49</c>
               <c>BPSEC Root</c>
               <c>0x2B0601020309</c>
            
            </texttable>
         
         </section>
         
         <section title="OID Shorthand" toc="default">
            <t>
               The components in this specification are identified by their AMP MID
               value. However, for easier traceability back to the OIDs
               encapsulated in MIDs, an OID string is also provided for
               each component. These OID strings are provided in a shorthand that
               makes use of the nicknames defined in <xref target="bp_nn"/> and
               uses the form [nickname].relative-oid.
            </t>
            <t>
               For example, the OID String [44].3.2.1 corresponds to the OID 
               2B060102030904030201, with 2B060102030904 being the expansion of 
               nickname 44 and 030201 being the relative OID. 
            </t>
         </section>
      </section>
      
    	<section anchor="BPSEC_ADM_META" title="Metadata Definitions" toc="default">
    	   <t>
    	      ADM metadata consists of the items necessary to uniquely identify 
    	      the ADM to Managers within the AMA. This includes items such as the
    	      name of the ADM, its version, and any nicknames used within the ADM.
    	   </t>
    		
    	   <texttable anchor="bpsec_adm_metadata" title="BPSEC Metadata" suppress-title="false" align="center" style="all">
            <ttcol align="center">Name</ttcol>
            <ttcol align="center">MID (Hex)</ttcol>
            <ttcol align="center">OID (Str)</ttcol>
            <ttcol align="center">Description</ttcol>
            <ttcol align="center">Type</ttcol>
            <ttcol align="center">Value</ttcol>
            		            		
               <c>Label</c>
               <c>0x80280100</c>
               <c>[40].0</c>
            	<c>The human-readable ADM name.</c>
            	<c>STR</c>
            	<c>BPSEC ADM</c>

            	<c>Version</c>
               <c>0x80280101</c>
               <c>[40].1</c>
               <c>The ADM version.</c>
               <c>STR</c>
               <c>2016_05_16</c>
            		
         </texttable>
      </section>
      
      <section title="Primitive Values">
         <t>
            Primitive Value definitions represent those values that MUST be
            collected by the BPSEC protocol handler. Changing or updating Primitive Value
            definitions requires making changes to the BPSEC protocol handler and/
            or its supporting firmware.
         </t>
         <texttable anchor="bpsec_pv" title="BPSEC Primitive Values" suppress-title="false" align="center" style="all">

            <ttcol align="center" width="25%">MID</ttcol>
            <ttcol align="center">OID</ttcol>
            <ttcol align="center" width="30%">Decription</ttcol>
            <ttcol align="center">Type</ttcol>
            <ttcol align="center" width="10%">Parms</ttcol>
                                               
            <c>80290100</c>
            <c>[41].0</c>
            <c>Total Successfully Tx BCB blocks</c>
            <c>UINT</c>
            <c>None</c>
            
            <c>80290101</c>
            <c>[41].1</c>
            <c>Total Unsuccessfully Tx BCB blocks</c>
            <c>UINT</c>
            <c>None</c>
                        
            <c>80290102</c>
            <c>[41].2</c>
            <c>Total Successfully Rx BCB blocks</c>
            <c>UINT</c>
            <c>None</c>

            <c>80290103</c>
            <c>[41].3</c>
            <c>Total Unsuccessfully Rx BCB blocks</c>
            <c>UINT</c>
            <c>None</c>

            <c>80290104</c>
            <c>[41].4</c>
            <c>Total Missing-on-Rx BCB blocks</c>
            <c>UINT</c>
            <c>None</c>
                         
            <c>80290105</c>
            <c>[41].5</c>
            <c>Total Forwarded BCB blocks</c>
            <c>UINT</c>
            <c>None</c>
                          
            <c>80290106</c>
            <c>[41].6</c>
            <c>Total Successfully Tx BCB bytes</c>
            <c>UINT</c>
            <c>None</c>

            <c>80290107</c>
            <c>[41].7</c>
            <c>Total Unsuccessfully Tx BCB bytes</c>
            <c>UINT</c>
            <c>None</c>
                        
            <c>80290108</c>
            <c>[41].8</c>
            <c>Total Successfully Rx BCB bytes</c>
            <c>UINT</c>
            <c>None</c>
              
            <c>80290109</c>
            <c>[41].9</c>
            <c>Total Unsuccessfully Rx BCB bytes</c>
            <c>UINT</c>
            <c>None</c>
                        
            <c>8029010A</c>
            <c>[41].A</c>
            <c>Total Missing-on-Rx BCB bytes</c>
            <c>UINT</c>
            <c>None</c>

            <c>8029010B</c>
            <c>[41].B</c>
            <c>Total Forwarded BCB bytes</c>
            <c>UINT</c>
            <c>None</c>
                        
            <c>8029010C</c>
            <c>[41].C</c>
            <c>Total Successfully Tx BIB blocks</c>
            <c>UINT</c>
            <c>None</c>

            <c>8029010D</c>
            <c>[41].D</c>
            <c>Total Unsuccessfully Tx BIB blocks</c>
            <c>UINT</c>
            <c>None</c>          
                                    
            <c>8029010E</c>
            <c>[41].E</c>
            <c>Total Successfully Rx BIB blocks</c>
            <c>UINT</c>
            <c>None</c>

            <c>8029010F</c>
            <c>[41].F</c>
            <c>Total Unsuccessfully Rx BIB blocks</c>
            <c>UINT</c>
            <c>None</c>
              
            <c>80290110</c>
            <c>[41].10</c>
            <c>Total Missing-on-Rx BIB blocks</c>
            <c>UINT</c>
            <c>None</c>

            <c>80290111</c>
            <c>[41].11</c>
            <c>Total Forwarded BIB blocks</c>
            <c>UINT</c>
            <c>None</c>
                        
            <c>80290112</c>
            <c>[41].12</c>
            <c>Total Successfully Tx BIB bytes</c>
            <c>UINT</c>
            <c>None</c>

            <c>80290113</c>
            <c>[41].13</c>
            <c>Total Unsuccessfully Tx BIB bytes</c>
            <c>UINT</c>
            <c>None</c>
                        
            <c>80290114</c>
            <c>[41].14</c>
            <c>Total Successfully Rx BIB bytes</c>
            <c>UINT</c>
            <c>None</c>
            
            <c>80290115</c>
            <c>[41].15</c>
            <c>Total Unsuccessfully Rx BIB bytes</c>
            <c>UINT</c>
            <c>None</c>
                        
            <c>80290116</c>
            <c>[41].16</c>
            <c>Total Missing-on-Rx BIB bytes</c>
            <c>UINT</c>
            <c>None</c>

            <c>80290117</c>
            <c>[41].17</c>
            <c>Total Forwarded BIB bytes</c>
            <c>UINT</c>
            <c>None</c>
                        
            <c>80290118</c>
            <c>[41].18</c>
            <c>Last BPSEC Update</c>
            <c>TS</c>
            <c>None</c>

            <c>80290119</c>
            <c>[41].19</c>
            <c>Number of Known Keys</c>
            <c>UINT</c>
            <c>None</c>
                        
            <c>8029011A</c>
            <c>[41].1A</c>
            <c>Known Key Names (CSV)</c>
            <c>STRING</c>
            <c>None</c>

            <c>8029011B</c>
            <c>[41].1B</c>
            <c>Known Ciphersuite Names (CSV)</c>
            <c>STRING</c>
            <c>None</c>
                        
            <c>8029011C</c>
            <c>[41].1C</c>
            <c>Known Rule Sources (CSV)</c>
            <c>STRING</c>
            <c>None</c>
                   
            <c>C029011D</c>
            <c>[41].1D</c>
            <c>Successfully Tx BCB blocks from SRC</c>
            <c>UINT</c>
            <c>STR Src</c>
                        
            <c>C029011E</c>
            <c>[41].1E</c>
            <c>Failed Tx BCB blocks from SRC</c>
            <c>UINT</c>
            <c>STR Src</c>

            <c>C029011F</c>
            <c>[41].1F</c>
            <c>Successfully Rx BCB blocks from SRC</c>
            <c>UINT</c>
            <c>STR Src</c>
                        
            <c>C0290120</c>
            <c>[41].20</c>
            <c>Failed Rx BCB blocks from SRC</c>
            <c>UINT</c>
            <c>STR Src</c>
            
            <c>C0290121</c>
            <c>[41].21</c>
            <c>Missing-on-Rx BCB blocks from SRC</c>
            <c>UINT</c>
            <c>STR Src</c>
                        
            <c>C0290122</c>
            <c>[41].22</c>
            <c>Forwarded BCB blocks from SRC</c>
            <c>UINT</c>
            <c>STR Src</c>

            <c>C0290123</c>
            <c>[41].23</c>
            <c>Successfully Tx BCB bytes from SRC</c>
            <c>UINT</c>
            <c>STR Src</c>
                        
            <c>C0290124</c>
            <c>[41].24</c>
            <c>Failed Tx BCB bytes from SRC</c>
            <c>UINT</c>
            <c>STR Src</c>
            
            <c>C0290125</c>
            <c>[41].25</c>
            <c>Successfully Rx BCB bytes from SRC</c>
            <c>UINT</c>
            <c>STR Src</c>
                        
            <c>C0290126</c>
            <c>[41].26</c>
            <c>Failed Rx BCB bytes from SRC</c>
            <c>UINT</c>
            <c>STR Src</c>

            <c>C0290127</c>
            <c>[41].27</c>
            <c>Missing-on-Rx BCB bytes from SRC</c>
            <c>UINT</c>
            <c>STR Src</c>
                        
            <c>C0290128</c>
            <c>[41].28</c>
            <c>Forwarded BCB bytes from SRC</c>
            <c>UINT</c>
            <c>STR Src</c>
                        
            <c>C0290129</c>
            <c>[41].29</c>
            <c>Successfully Tx BIB blocks from SRC</c>
            <c>UINT</c>
            <c>STR Src</c>

            <c>C029012A</c>
            <c>[41].2A</c>
            <c>Failed Tx BIB blocks from SRC</c>
            <c>UINT</c>
            <c>STR Src</c>
                        
            <c>C029012B</c>
            <c>[41].2B</c>
            <c>Successfully Rx BIB blocks from SRC</c>
            <c>UINT</c>
            <c>STR Src</c>
            
            <c>C029012C</c>
            <c>[41].2C</c>
            <c>Failed Rx BIB blocks from SRC</c>
            <c>UINT</c>
            <c>STR Src</c>
                        
            <c>C029012D</c>
            <c>[41].2D</c>
            <c>Missing-on-Rx BIB blocks from SRC</c>
            <c>UINT</c>
            <c>STR Src</c>
                        
            <c>C029012E</c>
            <c>[41].2E</c>
            <c>Forwarded BIB blocks from SRC</c>
            <c>UINT</c>
            <c>STR Src</c>

            <c>C029012F</c>
            <c>[41].2F</c>
            <c>Successfully Tx BIB bytes from SRC</c>
            <c>UINT</c>
            <c>STR Src</c>
                        
            <c>C0290130</c>
            <c>[41].30</c>
            <c>Failed Tx BIB bytes from SRC</c>
            <c>UINT</c>
            <c>STR Src</c>

            <c>C0290131</c>
            <c>[41].31</c>
            <c>Successfully Rx BIB bytes from SRC</c>
            <c>UINT</c>
            <c>STR Src</c>
                        
            <c>C0290132</c>
            <c>[41].32</c>
            <c>Failed Rx BIB bytes from SRC</c>
            <c>UINT</c>
            <c>STR Src</c>

            <c>C0290133</c>
            <c>[41].33</c>
            <c>Missing-on-Rx BIB bytes from SRC</c>
            <c>UINT</c>
            <c>STR Src</c>
                        
            <c>C0290134</c>
            <c>[41].34</c>
            <c>Forwarded BIB bytes from SRC</c>
            <c>UINT</c>
            <c>STR Src</c>
                        
            <c>C0290135</c>
            <c>[41].35</c>
            <c>Last BPSEC Update from SRC</c>
            <c>TS</c>
            <c>STR Src</c>
                        
            <c>C0290136</c>
            <c>[41].36</c>
            <c>Last Reset</c>
            <c>TS</c>
            <c>STR Src</c>

                     </texttable>
      </section>      

      
      <section anchor="compval" title="Computed Values">
         <t>
            The BPSEC ADM defines no computed values. 
         </t>
      </section>      
            
      <section title="Reports">
         <t>
            A Report is a listing of data items including Primitive Value 
            definitions, Computed Value definitions, and other Reports returned 
            from an AMP Agent. Similar to Computed Values, Report definitions 
            are captured as a MID Collection (MC), which is the ordered set of 
            MIDs identifying individual data items that comprise the report. 
         </t> 
         <t>        
            <figure>
               <artwork> 
                  
+----------+------------+-------+----------------------------+------+
|   Name   |    MID     |  OID  |        Description         | Type |
+----------+------------+-------+----------------------------+------+
|  Full    | 822B0100   |[43].0 |  All known Meta-Data,      | RPT  |
|  Report  |            |       |  Primitive, and Computed   |      |
|          |            |       |  Values.                   |      |                  
+----------+------------+-------+----------------------------+------+
|                            Definition                             |
+-------------------------------------------------------------------+ 
| 0x1D  0x80290100  0x80290101  0x80290102  0x80290103  0x80290104  |
|       0x80290105  0x80290106  0x80290107  0x80290108  0x80290109  |
|       0x8029010A  0x8029010B  0x8029010C  0x8029010D  0x8029010E  |
|       0x8029010F  0x80290110  0x80290111  0x80290112  0x80290113  |
|       0x80290114  0x80290115  0x80290116  0x80290117  0x80290118  |
|       0x80290119  0x8029011A  0x8029011B  0x8029011C              |
+-------------------------------------------------------------------+   
                  
               </artwork>
            </figure>
         </t>
         <texttable anchor="bpsec_full_rpt" title="BPSEC Full Report" suppress-title="false" align="center" style="none">
            <ttcol></ttcol>
         </texttable>

         <t>        
            <figure>
               <artwork> 
                  
+----------+------------+-------+----------------------------+------+
|   Name   |    MID     |  OID  |        Description         | Type |
+----------+------------+-------+----------------------------+------+
| Source   | 0xC22B0101 |[43].1 |  Security Info By Source   | RPT  |
|  Report  |            |       |                            |      |                  
+----------+------------+-------+----------------------------+------+
|                            Definition                             |
+-------------------------------------------------------------------+ 
| 0x1A  0xC029011D  0xC029011E  0xC029011F  0xC0290120  0xC0290121  |
|       0xC0290122  0xC0290123  0xC0290124  0xC0290125  0xC0290126  |
|       0xC0290127  0xC0290128  0xC0290129  0xC029012A  0xC029012B  |
|       0xC029012C  0xC029012D  0xC029012E  0xC029012F  0xC0290130  |
|       0xC0290131  0xC0290132  0xC0290133  0xC0290134  0xC0290135  |
|       0xC0290136                                                  |
+-------------------------------------------------------------------+         
                  
               </artwork>
            </figure>
         </t>
         <texttable anchor="bpsec_src_rpt" title="BPSEC Source Report" suppress-title="false" align="center" style="none">
            <ttcol></ttcol>
         </texttable>
                  
         
                        
      </section>      
                            	    
      <section title="Controls">
         <t>
            Controls represent well-known command opcodes that can be run by 
            the Agent in response to direct requests by an AMP Manager, or in 
            response to time- or state-based rules on the Agent itself.
         </t>     

         <section title="Summary">
                     
            <texttable anchor="bpsec_ctrl" title="BPSEC Controls" suppress-title="false" align="center" style="all">
               <ttcol align="center">Name</ttcol>
               <ttcol align="center">MID</ttcol>
               <ttcol align="center">OID</ttcol>
               <ttcol align="center"># Prms</ttcol>
               <ttcol align="center">Prms</ttcol>
            
               <c>ResetAllCounts</c>
               <c>0x832C0100</c>
               <c>[44].0</c>
               <c>0</c>
               <c>()</c>
               
               <c>ResetSrcCounts</c>
               <c>0xC32C0101</c>
               <c>[44].1</c>
               <c>1</c>
               <c>(STR Src)</c>
                              
               <c>DelKey</c>
               <c>0xC32C0102</c>
               <c>[44].2</c>
               <c>1</c>
               <c>(STR KeyName)</c>

               <c>AddKey</c>
               <c>0xC32C0103</c>
               <c>[44].3</c>
               <c>2</c>
               <c>(STR KeyName, BLOB Key)</c>
                              
               <c>AddBibRule</c>
               <c>0xC32C0104</c>
               <c>[44].4</c>
               <c>5</c>
               <c>(STR Src, STR Dest, INT Tgt, STR Cs, STR Key)</c>

               <c>DelBibRule</c>
               <c>0xC32C0105</c>
               <c>[44].5</c>
               <c>3</c>
               <c>(STR Src, STR Dest, INT Tgt)</c>
                              
               <c>ListBibRules</c>
               <c>0x832C0106</c>
               <c>[44].6</c>
               <c>0</c>
               <c>()</c>

               <c>AddBcbRule</c>
               <c>0xC32C0107</c>
               <c>[44].7</c>
               <c>5</c>
               <c>(STR Src, STR Dest, INT Tgt, STR Cs, STR Key)</c>

               <c>DelBcbRule</c>
               <c>0xC32C0108</c>
               <c>[44].8</c>
               <c>3</c>
               <c>(STR Src, STR Dest, INT Tgt)</c>
                              
               <c>ListBcbRules</c>
               <c>0x832C0109</c>
               <c>[44].9</c>
               <c>0</c>
               <c>()</c>
                                                                                                                                       
               </texttable>
            </section>
                   
            
            <section title="Control Specification">
               <section title="Overview">
                  <t>
                     This section lists the description, parameters, and reports
                     generated for each Control specified in this ADM.
                  </t>
                  <t>
                     The "DESCRIPTION" section lists the functional requirements of the 
                     Control when run on an Agent. 
                  </t>
                  <t>
                     The "PARAMETERS" section illustrates and describes the 
                     ordered set of data items provided to the Control, when 
                     run on the Agent. A parameterized Control is represented in
                     the AMP by a MID encapsulating a parameterized OID. OID
                     parameters are captured as a Typed Data Collection (TDC).<vspace/>
                     The TDC capturing these parameters is elided for clarity, as 
                     the TDC is only the container
                     used to transmit the parameters between the Agent and Manager
                     and not expected as input to the Control itself. 
                  </t>
                  <t>
                     The "REPORTS GENERATED" section describes the format of
                     any Reports sent from the Agent to a Manager as a result of
                     running the Control. This section ONLY describes Reports
                     that are specific to the Control. Cases where policy
                     requires Agents to send summary Reports when Controls either
                     run or fail to run due to error, are not considered in this
                     section as they are not specific to any one Control. Any
                     Control summary reports should be as described in
                     <xref target="AMP"/>.
                     <vspace />
                     Reports generated on an Agent by a Control will either be
                     directly sent to the Manager executing the Control or
                     otherwise batched and send with other Reports destined for
                     the receiving Manager. This behavior will be based on the
                     policy associated with the AMP Agent and is not specified
                     in this ADM.
                  </t>
               </section>
               <section title="BPSEC Controls">
                  
               
                  <section title="ResetAllCounts" toc="exclude">
                     
                     <t>
                        <list hangIndent="5" style="hanging">
                           <t hangText="DESCRIPTION"><vspace/>
                              The ResetAllCounts control causes the Agent to 
                              reset all counts associated with block or byte
                              statistics and to set the Last Reset Time of the
                              BPSEC Primitive Data to the time when the control
                              was run.
                           </t>
                           <t>
                              All per-source counters will be cleared as will the
                              listing of known sources into the BPSEC agent.
                           </t>
                           <t hangText="PARAMETERS"><vspace/>
                             This control does not take any parameters.                                             
                           </t>
                           <t hangText="REPORTS GENERATED"><vspace/>    
                             This control does not produce any reports.
                           </t>                   
                        </list>
                     </t>                     
                  </section>
                  
                  
                  <section title="ResetSrcCounts" toc="exclude">
                     
                     <t>
                        <list hangIndent="5" style="hanging">
                           <t hangText="DESCRIPTION"><vspace/>
                              The ResetSrcCounts control causes the Agent to 
                              reset all counts (blocks and bytes) associated with 
                              a given bundle source and set the Last Reset Time of the
                              source statistics to the time when the control
                              was run. THe source will still be returned in any
                              query of known sources, but its counters will be zero
                              immediately after this call.
                           </t>
                           <t hangText="PARAMETERS"><vspace/>
                              This Control accepts 1 parameter as illustrated in <xref target="reset_src_fig"/>.
                              
                              <figure align="center" anchor="reset_src_fig" title="ResetSrcCounts Parameters">                           
                                 <artwork align="center" xml:space="preserve">
   +------------+ 
   | Source EID | 
   |    [STR]   | 
   +------------+ 
                                 </artwork>
                              </figure>
                              
                              Where:
                              <list>
                                 <t>Source EID =<vspace/>
                                    The EID of the source being queried. This MUST be an exact match to the
                                    source to query. Regular expressions and other wildcards are not allowed.
                                 </t>
                              </list>
                                                                                                      
                           </t>
                           <t hangText="REPORTS GENERATED"><vspace/>    
                             This control does not produce any reports.
                           </t>                   
                        </list>
                     </t>                     
                  </section>
                                                                      
                  <section title="DelKey" toc="exclude">
                     
                     <t>
                        <list hangIndent="5" style="hanging">
                           <t hangText="DESCRIPTION"><vspace/>
                              The DelKey control deletes a key from the BPSEC system. 
                           </t>
                           <t hangText="PARAMETERS"><vspace/>
                              This Control accepts 1 parameter as illustrated in <xref target="del_key_fig"/>.
                              
                              <figure align="center" anchor="del_key_fig" title="DelKey Parameters">                           
                                 <artwork align="center" xml:space="preserve">
   +----------+ 
   | Key Name | 
   |  [STR]   | 
   +----------+ 
                                 </artwork>
                              </figure>
                              
                              Where:
                              <list>
                                 <t>Key Name =<vspace/>
                                    The string name of the key being deleted.
                                 </t>
                              </list>
                                                                                                      
                           </t>
                           <t hangText="REPORTS GENERATED"><vspace/>    
                             This control does not produce any reports.
                           </t>                   
                        </list>
                     </t>                     
                  </section>
                              

                  <section title="AddKey" toc="exclude">
                     
                     <t>
                        <list hangIndent="5" style="hanging">
                           <t hangText="DESCRIPTION"><vspace/>
                              The AddKey control adds a key to the BPSEC system. 
                           </t>
                           <t hangText="PARAMETERS"><vspace/>
                              This Control accepts 2 parameter as illustrated in <xref target="add_key_fig"/>.
                              
                              <figure align="center" anchor="add_key_fig" title="AddKey Parameters">                           
                                 <artwork align="center" xml:space="preserve">
   +----------+----------+
   | Key Name | Key Data |
   |  [STR]   |  [BLOB]  |
   +----------+----------+ 
                                 </artwork>
                              </figure>
                              
                              Where:
                              <list>
                                 <t>Key Name =<vspace/>
                                    Is the string name used ot identify the key. This name is used to reference
                                    the key in BIB and BCB rules and to identify the key when it is deleted.
                                 </t>
                                 <t>Key Data =<vspace/>
                                    The binary value of the key.
                                 </t>
                              </list>
                                                                                                      
                           </t>
                           <t hangText="REPORTS GENERATED"><vspace/>    
                             This control does not produce any reports.
                           </t>                   
                        </list>
                     </t>                     
                  </section>
               
                                             
                  <section title="AddBibRule" toc="exclude">
                     
                     <t>
                        <list hangIndent="5" style="hanging">
                           <t hangText="DESCRIPTION"><vspace/>
                              The AddBibRule control configures policy on the BPSEC protocol implementation
                              the describes how BIB blocks should be applied to bundles in the system. This
                              policy is captured as a rule which states when transmitting a bunde from the
                              given source EID to the given destination EID, blocks of type target should have 
                              a BIB added to them using the given ciphersuite and the given key.
                           </t>
                           <t hangText="PARAMETERS"><vspace/>
                              This Control accepts 5 parameters as illustrated in <xref target="add_bib_fig"/>.
                              
                              <figure align="center" anchor="add_bib_fig" title="AddBibRule Parameters">                           
                                 <artwork align="center" xml:space="preserve">
   +--------+-------+--------+----------------+----------+
   | Source | Dest  | Target | Ciphersuite ID | Key Name | 
   |  [STR] | [STR] | [INT]  |     [STR]      |   [STR]  |
   +--------+-------+--------+----------------+----------+
                                 </artwork>
                              </figure>
                              
                              Where:
                              <list>
                                 <t>Source =<vspace/>
                                    The source EID associated with this rule. This EID may contain an exactly EID
                                    or an EID containing wildcard symbols. The wildcard symbol * matches zero or
                                    more characters. The wildcard symbol ~, which may be used only by itself, 
                                    indicates a match to all EIDs.
                                 </t>
                                 <t>Dest =<vspace/>
                                    The destination EID associated with this rule. This EID may contain an exactly EID
                                    or an EID containing wildcard symbols. The wildcard symbol * matches zero or
                                    more characters. The wildcard symbol ~, which may be used only by itself, 
                                    indicates a match to all EIDs.
                                 </t>
                                 <t>Target =<vspace/>
                                    The block type to which this rule will apply.
                                 </t>
                                 <t>Ciphersuite ID =<vspace/>
                                    The name oft he ciphersuite to be used to populate the BIB. This ciphersuite
                                    MUST be known to the BPSEC protocol implementation being managed and be approved
                                    for use with BIB blocks.                                   
                                 </t>
                                 <t>Key Name =<vspace/>
                                    The name of the key to be used to generate the BIB for this given target block. This
                                    key name MUST match the name of a key known to the BPSEC implementation, either from
                                    pre-configuration or through the use of the AddKey control.
                                 </t>
                              </list>
                                                                                                      
                           </t>
                           <t hangText="REPORTS GENERATED"><vspace/>    
                             This control does not produce any reports.
                           </t>                   
                        </list>
                     </t>                     
                  </section>
                              
               
                  <section title="DelBibRule" toc="exclude">
                     
                     <t>
                        <list hangIndent="5" style="hanging">
                           <t hangText="DESCRIPTION"><vspace/>
                              The DelBibRule control removes any configured policy on the BPSEC protocol implementation
                              the describes how BIB blocks should be applied to bundles in the system. A BIB policy
                              is uniquely identified by a source EID, a destination EID, and a target block type.
                           </t>
                           <t hangText="PARAMETERS"><vspace/>
                              This Control accepts 3 parameters as illustrated in <xref target="del_bib_fig"/>.
                              
                              <figure align="center" anchor="del_bib_fig" title="DelBibRule Parameters">                           
                                 <artwork align="center" xml:space="preserve">
   +--------+-------+--------+ 
   | Source | Dest  | Target | 
   |  [STR] | [STR] | [INT]  | 
   +--------+-------+--------+ 
                                 </artwork>
                              </figure>
                              
                              Where:
                              <list>
                                 <t>Source =<vspace/>
                                    The source EID associated with this rule. This string must syntactically
                                    match the configured source EID for the rule to be deleted. If the existing
                                    rule source EID contains a wildcard, this parameter must contain a wildcard.
                                    This control does not interpret EID name wildcards, it simply performs a
                                    string comparison.                                    
                                 </t>
                                 <t>Dest =<vspace/>
                                    The destination EID associated with this rule. This string must syntactically
                                    match the configured destination EID for the rule to be deleted. If the existing
                                    rule destination EID contains a wildcard, this parameter must contain a wildcard.
                                    This control does not interpret EID name wildcards, it simply performs a
                                    string comparison.                                    
                                 </t>
                                 <t>Target =<vspace/>
                                    The block type of the BIB rule to be deleted.
                                 </t>
                              </list>
                                                                                                      
                           </t>
                           <t hangText="REPORTS GENERATED"><vspace/>    
                             This control does not produce any reports.
                           </t>                   
                        </list>
                     </t>                     
                  </section>
               
                  <section title="ListBibRules" toc="exclude">
                     
                     <t>
                        <list hangIndent="5" style="hanging">
                           <t hangText="DESCRIPTION"><vspace/>
                              The ListBibRules control returns a table describing all of the 
                              BIB policy rules that are known to the BPSEC implementation.
                           </t>
                           <t hangText="PARAMETERS"><vspace/>
                              This control takes no parameters.
                           </t>
                           
                           <t hangText="REPORTS GENERATED"><vspace/>    
                              This control produces a table whose column structure is 
                              illustrated in <xref target="list_bib_fig"/>.
                              
                              <figure align="center" anchor="list_bib_fig" title="ListBibRule Parameters">                           
                                 <artwork align="center" xml:space="preserve">
   +--------+-------+--------+----------------+----------+
   | Source | Dest  | Target | Ciphersuite ID | Key Name | 
   |  [STR] | [STR] | [INT]  |     [STR]      |   [STR]  |
   +--------+-------+--------+----------------+----------+
                                 </artwork>
                              </figure>
                              
                              Where:
                              <list>
                                 <t>Source =<vspace/>
                                    The source EID associated with this rule.              
                                 </t>
                                 <t>Dest =<vspace/>
                                    The destination EID associated with this rule.          
                                 </t>
                                 <t>Target =<vspace/>
                                    The block type of the BIB rule.
                                 </t>
                                  <t>Ciphersuite ID =<vspace/>
                                    The name of the ciphersuite.                                   
                                 </t>
                                 <t>Key Name =<vspace/>
                                    The name of the key.
                                 </t>
                                 
                              </list>                                                                                                      
                           </t>
                        </list>
                     </t>                     
                  </section>
               

                  
                  
                  
                  
                  
                  <section title="AddBcbRule" toc="exclude">
                     
                     <t>
                        <list hangIndent="5" style="hanging">
                           <t hangText="DESCRIPTION"><vspace/>
                              The AddBcbRule control configures policy on the BPSEC protocol implementation
                              the describes how BCB blocks should be applied to bundles in the system. This
                              policy is captured as a rule which states when transmitting a bunde from the
                              given source EID to the given destination EID, blocks of type target should have 
                              a BCB added to them using the given ciphersuite and the given key.
                           </t>
                           <t hangText="PARAMETERS"><vspace/>
                              This Control accepts 5 parameters as illustrated in <xref target="add_bcb_fig"/>.
                              
                              <figure align="center" anchor="add_bcb_fig" title="AddBcbRule Parameters">                           
                                 <artwork align="center" xml:space="preserve">
   +--------+-------+--------+----------------+----------+
   | Source | Dest  | Target | Ciphersuite ID | Key Name | 
   |  [STR] | [STR] | [INT]  |     [STR]      |   [STR]  |
   +--------+-------+--------+----------------+----------+
                                 </artwork>
                              </figure>
                              
                              Where:
                              <list>
                                 <t>Source =<vspace/>
                                    The source EID associated with this rule. This EID may contain an exactly EID
                                    or an EID containing wildcard symbols. The wildcard symbol * matches zero or
                                    more characters. The wildcard symbol ~, which may be used only by itself, 
                                    indicates a match to all EIDs.
                                 </t>
                                 <t>Dest =<vspace/>
                                    The destination EID associated with this rule. This EID may contain an exactly EID
                                    or an EID containing wildcard symbols. The wildcard symbol * matches zero or
                                    more characters. The wildcard symbol ~, which may be used only by itself, 
                                    indicates a match to all EIDs.
                                 </t>
                                 <t>Target =<vspace/>
                                    The block type to which this rule will apply.
                                 </t>
                                 <t>Ciphersuite ID =<vspace/>
                                    The name oft he ciphersuite to be used to populate the BCB. This ciphersuite
                                    MUST be known to the BPSEC protocol implementation being managed and be approved
                                    for use with BCB blocks.                                   
                                 </t>
                                 <t>Key Name =<vspace/>
                                    The name of the key to be used to generate the BCB for this given target block. This
                                    key name MUST match the name of a key known to the BPSEC implementation, either from
                                    pre-configuration or through the use of the AddKey control.
                                 </t>
                              </list>
                                                                                                      
                           </t>
                           <t hangText="REPORTS GENERATED"><vspace/>    
                             This control does not produce any reports.
                           </t>                   
                        </list>
                     </t>                     
                  </section>
                              
               
                  <section title="DelBcbRule" toc="exclude">
                     
                     <t>
                        <list hangIndent="5" style="hanging">
                           <t hangText="DESCRIPTION"><vspace/>
                              The DelBcbRule control removes any configured policy on the BPSEC protocol implementation
                              the describes how BCB blocks should be applied to bundles in the system. A BCB policy
                              is uniquely identified by a source EID, a destination EID, and a target block type.
                           </t>
                           <t hangText="PARAMETERS"><vspace/>
                              This Control accepts 3 parameters as illustrated in <xref target="del_bcb_fig"/>.
                              
                              <figure align="center" anchor="del_bcb_fig" title="DelBcbRule Parameters">                           
                                 <artwork align="center" xml:space="preserve">
   +--------+-------+--------+ 
   | Source | Dest  | Target | 
   |  [STR] | [STR] | [INT]  | 
   +--------+-------+--------+ 
                                 </artwork>
                              </figure>
                              
                              Where:
                              <list>
                                 <t>Source =<vspace/>
                                    The source EID associated with this rule. This string must syntactically
                                    match the configured source EID for the rule to be deleted. If the existing
                                    rule source EID contains a wildcard, this parameter must contain a wildcard.
                                    This control does not interpret EID name wildcards, it simply performs a
                                    string comparison.                                    
                                 </t>
                                 <t>Dest =<vspace/>
                                    The destination EID associated with this rule. This string must syntactically
                                    match the configured destination EID for the rule to be deleted. If the existing
                                    rule destination EID contains a wildcard, this parameter must contain a wildcard.
                                    This control does not interpret EID name wildcards, it simply performs a
                                    string comparison.                                    
                                 </t>
                                 <t>Target =<vspace/>
                                    The block type of the BCB rule to be deleted.
                                 </t>
                              </list>
                                                                                                      
                           </t>
                           <t hangText="REPORTS GENERATED"><vspace/>    
                             This control does not produce any reports.
                           </t>                   
                        </list>
                     </t>                     
                  </section>
               
                  <section title="ListBcbRules" toc="exclude">
                     
                     <t>
                        <list hangIndent="5" style="hanging">
                           <t hangText="DESCRIPTION"><vspace/>
                              The ListBcbRules control returns a table describing all of the 
                              BCB policy rules that are known to the BPSEC implementation.
                           </t>
                           <t hangText="PARAMETERS"><vspace/>
                              This control takes no parameters.
                           </t>
                           
                           <t hangText="REPORTS GENERATED"><vspace/>    
                              This control produces a table whose column structure is 
                              illustrated in <xref target="list_bcb_fig"/>.
                              
                              <figure align="center" anchor="list_bcb_fig" title="ListBcbRule Parameters">                           
                                 <artwork align="center" xml:space="preserve">
   +--------+-------+--------+----------------+----------+
   | Source | Dest  | Target | Ciphersuite ID | Key Name | 
   |  [STR] | [STR] | [INT]  |     [STR]      |   [STR]  |
   +--------+-------+--------+----------------+----------+
                                 </artwork>
                              </figure>
                              
                              Where:
                              <list>
                                 <t>Source =<vspace/>
                                    The source EID associated with this rule.              
                                 </t>
                                 <t>Dest =<vspace/>
                                    The destination EID associated with this rule.          
                                 </t>
                                 <t>Target =<vspace/>
                                    The block type of the BCB rule.
                                 </t>
                                  <t>Ciphersuite ID =<vspace/>
                                    The name of the ciphersuite.                                   
                                 </t>
                                 <t>Key Name =<vspace/>
                                    The name of the key.
                                 </t>
                                 
                              </list>                                                                                                      
                           </t>
                        </list>
                     </t>                     
                  </section>
                                 
               </section>
            </section>
       </section>     
      
    	<section title="Literals">
    	   <t>
    	      The BPSEC ADM does not define any literals. 
    	   </t>
      </section>

      
      <section title="Macros">
         <t>
            The BPSEC ADM does not define any macros.
         </t> 
      </section>         
               
		<section title="Operators">
			<t>
			   The BPSEC ADM does not define any operators.
			</t>
		</section>
				    
    <section anchor="IANA" title="IANA Considerations" toc="default">
      <t>
		At this time, this protocol has no fields registered by IANA.
	  </t>
    </section>
  </middle>

   <!--  *****BACK MATTER ***** -->
   <back>
      <references title="Informative References">
               
         <reference anchor="AMA">
            <front>
               <title>Asynchronous Management Architecture</title>
               <author initials="E." surname="Birrane" fullname="E. Birrane">
                  <organization />
               </author>
               <date year="2015" month="August" />
               <abstract>
                  <t></t>
               </abstract>
            </front>  
            <seriesInfo name="Internet-Draft" value="draft-birrane-dtn-ama-00" />                
         </reference>
               
      </references>
      
      <references title="Normative References">
         &RFC6256;
         &RFC2119;     
         &RFC5050;
         
         <reference anchor="AMP">
            <front>
               <title>Asynchronous Management Protocol</title>
               <author initials="E." surname="Birrane" fullname="E. Birrane">
                  <organization />
               </author>
               <date year="2015" month="August" />
               <abstract>
                  <t></t>
               </abstract>
            </front>  
            <seriesInfo name="Internet-Draft" value="draft-birrane-dtn-amp-00" />                
         </reference>
         
         <reference anchor="BPSEC">
            <front>
               <title>Bundle Protocol Security</title>
               <author initials="E." surname="Birrane" fullname="E. Birrane"/>
               <author fullname="Jeremy Pierce-Mayer" initials="J.P." surname="Mayer"/>
               <author fullname="Dennis C. Iannicca" initials="D.C." surname="Iannicca"/>

               <date year="2016" month="March" />
               <abstract>
                  <t></t>
               </abstract>
            </front>  
            <seriesInfo name="Internet-Draft" value="draft-ietf-dtn-bpsec-01" />                
         </reference>
                  
         
      </references>
    
  </back>
</rfc>