Project

General

Profile

PrefixAnnouncement » History » Version 1

Junxiao Shi, 08/13/2018 05:36 AM

1 1 Junxiao Shi
# Prefix Announcement Protocol
2
3
The **prefix announcement protocol** allows registering prefixes using a *prefix announcement object*. It is an alternative to NFD [[RibMgmt|RIB Management protocol]]'s `rib/register` verb.
4
5
## Prefix Announcement object
6
7
The **prefix announcement object** is a Data packet that represents an application's intent of registering a prefix toward the application. A Data packet that satisfies the following requirements is a prefix announcement object:
8
9
* Name starts with the announced prefix, followed by `prefix-announcement` constant component, followed by a version component and a segment component as defined in NDN Naming Convention.
10
* ContentType is "prefix announcement".
11
* Content contains zero or more TLV elements.
12
13
A prefix announcement object, by default, is valid indefinitely. Its **validity period** can be constrained with ValidityPeriod or FreshnessPeriod element.
14
15
* ValidityPeriod gives the absolute time range in which the prefix announcement remains valid. It is ignored if the receiving node does not have a UnixTime clock.
16
* FreshnessPeriod gives the duration in which the prefix announcement remains valid. The duration begins when a node or program receives the prefix announcement.
17
* When both ValidityPeriod and FreshnessPeriod are present, the most restricted constraint applies.
18
19
Trust model of prefix announcement is to be defined by application.
20
21
## Command Verbs
22
23
### 'announce'
24
25
This command announces a prefix using a prefix announcement object.
26
NFD-RIB accepts this command as a [[ndn-cxx:CommandInterest|Command Interest]] with the following syntax:
27
28
```
29
/localhost/nfd/rib/announce/<params-sha256>/<command-interest-components>
30
/localhop/nfd/rib/announce/<params-sha256>/<command-interest-components>
31
```
32
33
The Interest's Parameters element carries the prefix announce object.
34
35
NFD-RIB converts this command into an equivalent `rib/register` command. Route *origin* is set to "prefix announcement" (number 129).
36
Response is same as `rib/register` command.
37
38
### 'unannounce'
39
There is no 'unannounce' command. Instead, use `rib/unregister` command.