Project

General

Profile

Actions

Feature #3783

closed

Honor NextHopFaceId universally

Added by Junxiao Shi over 7 years ago. Updated over 7 years ago.

Status:
Closed
Priority:
Normal
Assignee:
Category:
Forwarding
Target version:
Start date:
Due date:
% Done:

100%

Estimated time:
6.00 h

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:

  1. ContentStore lookup is always performed.
  2. If NextHopFaceId is present in an Interest, goto step6.
  3. Find effective forwarding strategy from StrategyChoice table.
  4. Trigger after receive Interest on the strategy.
  5. Abort these steps.
  6. If the face identified in NextHopFaceId does not exist, drop the Interest and abort these steps.
  7. 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

forwarding-pipelines_20160918.pptx (96.2 KB) forwarding-pipelines_20160918.pptx Junxiao Shi, 09/18/2016 09:18 AM

Related issues 2 (1 open1 closed)

Blocks NFD - Task #1942: NextHopFaceId test scenarioClosedEric Newberry

Actions
Blocks NLSR - Feature #3626: Use IncomingFaceId tag to direct LSA InterestsNew

Actions
Actions #1

Updated by Junxiao Shi over 7 years ago

  • 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.

Actions #2

Updated by Junxiao Shi over 7 years ago

  • Blocks Task #1942: NextHopFaceId test scenario added
Actions #3

Updated by Junxiao Shi over 7 years ago

  • Status changed from New to In Progress
  • % Done changed from 0 to 10
Actions #4

Updated by Junxiao Shi over 7 years ago

  • Blocks Feature #3626: Use IncomingFaceId tag to direct LSA Interests added
Actions #5

Updated by Junxiao Shi over 7 years ago

Pipelines design is updated as forwarding-pipelines_20160918.pptx.
It will be added into devguide after implementation.

Actions #6

Updated by Junxiao Shi over 7 years ago

  • % Done changed from 20 to 70

https://gerrit.named-data.net/3229 honors NextHopFaceId in ContentStore miss pipeline.

https://gerrit.named-data.net/3230 deprecates client-control strategy.

Actions #7

Updated by Junxiao Shi over 7 years ago

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.

Actions #8

Updated by Junxiao Shi over 7 years ago

  • 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.

Actions #9

Updated by Junxiao Shi over 7 years ago

  • Status changed from Resolved to Closed

Closing since there's no objection.

Actions

Also available in: Atom PDF