[Ndn-interest] HopLimit vs Interest aggregation

David R. Oran daveoran at orandom.net
Tue Apr 3 06:03:17 PDT 2018

On 2 Apr 2018, at 18:07, Junxiao Shi wrote:

> Dear folks
> 20180402 NFD call discussed this issue.
>> I can see arguments both ways.
>>> The argument for choosing HopLimit=4 is: it is possible that the 
>>> Interest
>>> from B is the previous Interest looped back. There could be a path 
>>> from P
>>> to B (not shown in the topology, as G does not know the global 
>>> topology),
>>> and one of the routers on that path has changed the nonce for 
>>> probing.
> This point is invalid. If a router N elsewhere changes the nonce for
> probing, the Interest coming to G from B has not completed a full 
> cycle. G
> should not treat it as “looping”. If it reaches N again, N could 
> detect a
> duplicate nonce.
Why check the nonce at all if we now have hop limit protection against 
loops? Faster loop suppression (i.e. an optimization)? In that case 
there’s no danger in selecting the lower hop count.

>>> The argument for choosing HopLimit=9 is: when G retries the 
>>> Interest, it
>>> should use the maximum HopLimit among unexpired downstream nodes, to
>>> maximize the possibility of reaching the content.
> This is consistent with the choice of InterestLifetime: a forwarder 
> should
> use an InterestLifetime that reflects the latest expiration time among
> downstream’s Interests.
I agree with the conclusion on interest lifetime, but not on hop count. 
The reason to use the longer interest lifetime is because that is the 
state instantiated in the downstream forwarders.

>> Safety over optimality. Hop Limit is a protection mechanism. Be
>> conservative.
>> Always decrement the hop limit when forwarding. NEVER increase it.
> G is not “increasing” HopLimit.
Yes it is.

> When “Interest /P HopLimit=5” comes from B,
> G could decide to forward “Interest /P HopLimit=10” from A again
yes it could, but why would it?
Either you aggregate an interest and drop it, or you forward it 
according to the interest forwarding rules, which takes the hop limit 
from the incoming interest and decrements it.

The retransmission of an Interest from an intermediate forwarder could 
interact with interest aggregation in mind-boggling ways, and 
disentangling the two as much as possible might succeed in keeping our 
heads from exploding.

> and thus
> use HopLimit=9, as long as that downstream’s Interest is not yet 
> expired.
> Yours, Junxiao


More information about the Ndn-interest mailing list