CcndStrategy » History » Version 1
Junxiao Shi, 06/09/2014 09:27 PM
1 | 1 | Junxiao Shi | # ccnd 0.7.2 forwarding strategy |
---|---|---|---|
2 | |||
3 | ccnd has a hierarchical name prefix table that stores both permanent and temporary forwarding states. |
||
4 | Forwarding entries, similar to IP's static routing table, are manually configured or registered by local applications, and usually lasts for a long time and can be considered "permanent". |
||
5 | For each incoming ContentObject, ccnd remembers where it comes from (`npe->src`) in the name prefix table at every node that is a prefix of this ContentObject (eg. source of /A/B/C is remembered at /, /A, /A/B, and /A/B/C nodes); this information is temporary, and expires after 8 seconds. |
||
6 | |||
7 | In many cases, multiple forwarding entries apply to the same Name, indicating that ContentObject MAY be available from multiple Faces. |
||
8 | Unlike IP network, having a forwarding entry to a Face does not guarantee the successful retrieval of ContentObject. |
||
9 | Interest is first forwarded to the "best" Face (`npe->src`) of a Name Prefix entry with at least one forwarding entry (eg. if only /A and /A/B have forwarding entries, Interest to /A/B/C/D goes to `npe->src` of /A/B node; in `strategy_callout:CCNST_FIRST`). |
||
10 | If a matching ContentObject comes in predicted time, the prediction is adjusted down; otherwise, the prediction is adjusted up, and the Interest is forwarded to N other possible faces (N = MIN(2, number of unexpired downstreams); in `do_propagate`). |