LocalControlHeader » History » Version 3
Alex Afanasyev, 01/31/2014 11:43 PM
| 1 | 1 | Junxiao Shi | # NFD local control header |
|---|---|---|---|
| 2 | 3 | Alex Afanasyev | |
| 3 | NFD local control header can be used between application and local forwarding daemon to exchange various NFD-specific local information that is not part of Interest and Data packet. |
||
| 4 | For example, the control header allows applications to request bypassing the Interest forwarding strategy by directly specify FaceId to which the Interest should be forwarded. |
||
| 5 | |||
| 6 | NFD local control header is not enabled by default and requires explicit request from the client to enable. |
||
| 7 | This request is in form of [[Signed_Interests|Signed Interest]] and have the following structure: |
||
| 8 | |||
| 9 | /localhost/nfd/control-header/<command-verb>/<timestamp>/<SignatureInfo>/<SignatureValue> |
||
| 10 | |||
| 11 | \ / \ / \ / |
||
| 12 | ------------ ------------ ---- ----- -------------------- -------------------- |
||
| 13 | \/ \/ \/ |
||
| 14 | NFD Control Command "enable" or Signed Interest related information |
||
| 15 | "disable" |
||
| 16 | |||
| 17 | |||
| 18 | ## LocalControlHeader |
||
| 19 | |||
| 20 | If command to enable LocalControlHeader is authorized by NFD, all subsequent communication from NFD will include LocalControlHeader as defined below. |
||
| 21 | The authorized application will also be able to include LocalControlHeader in communication to NFD---until specifically enabled, all specified LocalControlHeaders should be ignored by NFD. |
||
| 22 | |||
| 23 | LocalControlHeader ::= LOCAL-CONTROL-HEADER-TYPE TLV-LENGTH |
||
| 24 | LocalControlInfo |
||
| 25 | (Interest | Data) |
||
| 26 | |||
| 27 | LocalControlInfo ::= LOCAL-CONTROL-INFO-TYPE TLV-LENGTH |
||
| 28 | FaceId? |
||
| 29 | |||
| 30 | |||
| 31 | ## TLV-TYPE assignments |
||
| 32 | |||
| 33 | Type | Assigned value | Assigned value (hex) |
||
| 34 | ------------------------------------------- | ----------------- | -------------------- |
||
| 35 | LocalControlHeader | 109 | 0x6d |
||
| 36 | LocalControlInfo | 110 | 0x6e |
||
| 37 | FaceId | 105 | 0x69 |