Feature #3783
closed
Honor NextHopFaceId universally
Added by Junxiao Shi about 8 years ago.
Updated about 8 years ago.
Description
Currently NDNLPv2 NextHopFaceId field is honored only under namespaces where client-control strategy is used.
Apps wanting to use this feature must change strategy choice, which incurs unnecessary latency.
NextHopFaceId field should be recognized in forwarding pipelines, so that it is honored regardless of strategy choice.
Apps wanting to use this feature still needs to enable local fields with faces/update
command, so that GenericLinkService
would decode the field.
Forwarding rules are:
- ContentStore lookup is always performed.
- If NextHopFaceId is present in an Interest, goto step6.
- Find effective forwarding strategy from StrategyChoice table.
- Trigger after receive Interest on the strategy.
- Abort these steps.
- If the face identified in NextHopFaceId does not exist, drop the Interest and abort these steps.
- Forward the Interest to the face identified in NextHopFaceId.
client-control strategy will be deprecated, but kept as an alias of best-route v1.
Files
- Description updated (diff)
- Assignee set to Junxiao Shi
- Estimated time set to 6.00 h
The rationale is explained in #3626-1.
Previous NDNLPv2 definition specifies that ContentStore lookup should be bypassed as well, but #3626-2 finds no valid use case for that, so this should be updated.
- Blocks Task #1942: NextHopFaceId test scenario added
- Status changed from New to In Progress
- % Done changed from 0 to 10
- Blocks Feature #3626: Use IncomingFaceId tag to direct LSA Interests added
- % Done changed from 20 to 70
do we require permissions to use NextHopFaceId?
This is controlled by management authenticator.
should we add restriction that the flag can be specified only on local faces?
NDNLPv2 recommends NextHopFaceId feature to be enabled on local faces.
#3226-5 decides that FaceMgmt, at protocol level, should not restrict local fields (including NextHopFaceId) to be enabled on local faces only; however, this restriction can be controlled by management authenticator.
Or the above is already handled by the face system?
Before enabling local fields through FaceMgmt faces/update
command, GenericLinkService
will not set NextHopFaceIdTag
.
- Status changed from In Progress to Resolved
- % Done changed from 70 to 100
nfd-docs:commit:376e90b4dd65d74ff8ddbf59c34a369829107a2f adds NextHopFaceId
steps into ContentStore Miss pipeline section, and deletes client-control strategy section.
- Status changed from Resolved to Closed
Closing since there's no objection.
Also available in: Atom
PDF