Notification » History » Version 12
Davide Pesavento, 10/30/2021 08:13 PM
| 1 | 8 | Junxiao Shi | |
|---|---|---|---|
| 2 | 5 | Junxiao Shi | # Notification Stream |
| 3 | 1 | Junxiao Shi | |
| 4 | 5 | Junxiao Shi | **Notification Stream** is a mechanism of [[Management|NFD Management protocol]]. |
| 5 | 9 | Davide Pesavento | It is a way to get updates about events happening in the forwarder. This mechanism is useful for monitoring the forwarder's state. |
| 6 | 1 | Junxiao Shi | |
| 7 | ## Naming |
||
| 8 | |||
| 9 | * A stream of notifications is published under a certain Name prefix. |
||
| 10 | * A notification is a Data packet under this Name prefix with a sequence number. |
||
| 11 | 11 | Davide Pesavento | * The sequence number component is a `NameComponentWithMarkerAndNumber`, as defined in [NDN Naming Conventions (rev 1)](http://named-data.net/doc/tech-memos/naming-conventions.pdf). |
| 12 | This component starts with a `0xFE` marker, followed by a `NonNegativeInteger`. |
||
| 13 | 1 | Junxiao Shi | * The sequence numbers of notifications in the same stream should be consecutive and increasing. |
| 14 | * Each notification is limited to one Data packet. |
||
| 15 | |||
| 16 | Example: |
||
| 17 | |||
| 18 | 12 | Davide Pesavento | /localhost/nfd/faces/events/%FE%00 // first notification |
| 19 | /localhost/nfd/faces/events/%FE%01 // second notification |
||
| 20 | 1 | Junxiao Shi | |
| 21 | ## Notification publisher |
||
| 22 | |||
| 23 | Notifications from NFD are Data packets generated and signed by NFD. |
||
| 24 | 10 | Davide Pesavento | FreshnessPeriod should be set to a minimum value (typically 1 ms) to facilitate subscriber operations. |
| 25 | 9 | Davide Pesavento | The management dispatcher keeps them in an in-memory cache, ready for retrieval by subscribers. |
| 26 | 1 | Junxiao Shi | |
| 27 | ## Notification subscriber |
||
| 28 | |||
| 29 | 9 | Davide Pesavento | The subscriber should initially request the Name of the notification stream with CanBePrefix and MustBeFresh elements. |
| 30 | After a notification is received, the subscriber can send an Interest for the next anticipated sequence number, without CanBePrefix and MustBeFresh elements. |
||
| 31 | In both cases, InterestLifetime should be set to a long duration, e.g., 1 minute. |
||
| 32 | If any Interest times out (because no notification is delivered within InterestLifetime), the subscriber should restart with the initial request. |