Project

General

Profile

Actions

FaceMgmt » History » Revision 3

« Previous | Revision 3/118 (diff) | Next »
Alex Afanasyev, 01/30/2014 05:15 PM


NFD Face Management protocol

The Face Management protocol allows an entity to request NFD daemon create and destroy the faces.

The ace Management protocol uses Signed Interests-Data exchange.
The command request and response follows the NFD Control Command specification

Command format

Request

Request is a signed Interest with the following name:

/localhost/nfd/faces/<command-verb>/<command-options>/<timestamp>/<SignatureInfo>/<SignatureValue>

\                  / \                              / \                                          /
 --------  --------   -------------  ---------------   --------------------  --------------------
         \/                        \/                                      \/
NFD Control Command       FaceManager command            Signed Interest related information
to FaceManager            and command options

Command options is defined as a TLV-encoded FaceManagementOptions block.
Each individual command defines a subset of required and optional elements in the FaceManagementOptions block.

FaceManagementOptions ::= FACE-MANAGEMENT-OPTIONS-TYPE TLV-LENGTH
                           FaceId?
                           ... TBD

// Name defined in NDN-TLV spec

FaceId               ::= FACEID-TYPE TLV-LENGTH
                           nonNegativeInteger

Response

Command response is a Data packet that contains TLV-encoded ControlResponse block, defined in NFD Control Command specification.

The response has StatusCode 200 if the command succeeds.

<!-- Alex: Should positive responses contain TLV-Encoded FaceManagementOptions block related to the command (after StatusText)? -->

Any other status code (4xx, 5xx, [?]) mean error.
Description of the error can be present in StatusText field of ControlResponse command.

Operations

Face management protocol protocol supports five operations:

  • create a face (command-verb: create)
  • destroy a face (command-verb: destroy)

Create a face

command-verb: create

Required fields in FaceManagementOptions block:

Destroy a face

command-verb: destroy

Required fields in FaceManagementOptions block:

TLV-TYPE assignments

Type Assigned value Assigned value (hex)
FibManagementOptions 108 0x6c
FaceId 105 0x69

Updated by Alex Afanasyev almost 11 years ago · 107 revisions