<div dir="ltr">Dear folks<div><br></div><div>NFD is having too many protocols for management.</div><div><div>This proposal is to combine most of these into a single "NFD Management protocol".<br></div></div><div>

<br></div><div><font size="4">Changes</font></div><div><ul><li>"NFD Management protocol" only contains commands that can alter forwarder state.<br></li><ul><li>Every command is signed.</li><li>Face Status protocol and FIB Enumeration protocol are not part of this protocol, and will be kept separate.</li>

</ul><li>The semantics of all commands are unchanged.<br></li><li>The encoding of requests has a small change:<br></li><ul><li>FaceManagementOptions, FibManagementOptions, StrategyChoiceOptions are combined into one type</li>

<li>Existing code just needs to use reassigned TLV-TYPE numbers</li></ul><li>LocalControlHeader enabling protocol has a syntax change: /localhost/nfd/control-header/enable|disable/<options></li><ul><li>One or more control modules can be indicated in ControlCommandOptions block</li>

</ul></ul></div><div><font size="4">New documentation</font></div><div>The documentation of "NFD Management protocol" would have the following sections:<br></div><div><ol><li>Control Command</li><ul><li>"Control Command" is used by commands that can alter forwarder state.</li>

<li>request format: /localhost/nfd/<management-module>/<command-verb>/<options>/<timestamp>/<random-value>/<SignatureInfo>/<SignatureValue></li><li>authentication: a link to [[Command Interests]]</li>

<li>options: definition of ControlCommandOptions block</li></ul><li>status dataset</li><ul><li>This section describes how to segment a collection of status blocks (FaceStatus blocks in Face Status protocol, FibEntry blocks in FIB Enumeration protocol), and how these segments are named</li>

</ul><li>Notification mechanism</li><li>Forwarder Status protocol</li><ul><li>returns global counters</li></ul><li>Face Management protocol</li><ul><li>uses: Control Command, status dataset (for status), Notification mechanism (for status change notification)</li>

</ul><li>LocalControlHeader Enabling protocol</li><ul><li>uses: Control Command</li></ul><li>FIB Management protocol</li><ul><li>uses: Control Command, status dataset (for enumeration)</li></ul><li>Strategy Choice protocol<br>

</li><ul><li>uses: Control Command</li></ul></ol></div><div><br></div><div>Local Control Header will still have its own page which describes the format of the header. Enabling protocol is linked to the section in "NFD Management protocol".</div>

<div><br></div><div><br></div><div><br></div><div>Please give your feedback.</div><div><br></div><div>Yours, Junxiao</div></div>