<html><head><meta http-equiv="Content-Type" content="text/html charset=iso-8859-1"></head><body style="word-wrap: break-word; -webkit-nbsp-mode: space; -webkit-line-break: after-white-space;"><br><div><div>On Mar 13, 2014, at 4:32 PM, Junxiao Shi <<a href="mailto:shijunxiao@email.arizona.edu">shijunxiao@email.arizona.edu</a>> wrote:</div><br class="Apple-interchange-newline"><blockquote type="cite"><div dir="ltr">Dear folks<div><br></div><div>NFD is having too many protocols for management.</div><div>This proposal is to combine most of these into a single "NFD Management protocol".<br></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></blockquote><div><br></div>Are you planning to have a huge page that describes all management protocols?  I'm not quite sure that it would be right... I prefer keeping specs as separate pages (with proper link to "parent"), not just sections in a big document (it is already quite challenging to navigate within each spec).</div><div><br></div><div>--</div><div>Alex<br><div><br></div><br><blockquote type="cite"><div dir="ltr"><div><br></div><div>Please give your feedback.</div><div><br></div><div>Yours, Junxiao</div></div>
_______________________________________________<br>Nfd-dev mailing list<br><a href="mailto:Nfd-dev@lists.cs.ucla.edu">Nfd-dev@lists.cs.ucla.edu</a><br>http://www.lists.cs.ucla.edu/mailman/listinfo/nfd-dev<br></blockquote></div><br></body></html>