Re: [Icnrg-harmonization] NDN use of nameless Data

Ravi Ravindran <> Tue, 06 September 2016 05:23 UTC

Return-Path: <>
Received: from localhost (localhost []) by (Postfix) with ESMTP id 9005512B0DC for <>; Mon, 5 Sep 2016 22:23:42 -0700 (PDT)
X-Virus-Scanned: amavisd-new at
X-Spam-Flag: NO
X-Spam-Score: -5.728
X-Spam-Status: No, score=-5.728 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, HTML_MESSAGE=0.001, RCVD_IN_DNSWL_MED=-2.3, RCVD_IN_MSPIKE_H3=-0.01, RCVD_IN_MSPIKE_WL=-0.01, RP_MATCHES_RCVD=-1.508, SPF_PASS=-0.001] autolearn=ham autolearn_force=no
Received: from ([]) by localhost ( []) (amavisd-new, port 10024) with ESMTP id NYSzbY93n_Ct for <>; Mon, 5 Sep 2016 22:23:39 -0700 (PDT)
Received: from ( []) (using TLSv1 with cipher RC4-SHA (128/128 bits)) (No client certificate requested) by (Postfix) with ESMTPS id AFEF812B0CE for <>; Mon, 5 Sep 2016 22:23:39 -0700 (PDT)
Received: from (EHLO ([]) by (MOS 4.3.7-GA FastPath queued) with ESMTP id DDI34822; Tue, 06 Sep 2016 00:23:35 -0500 (CDT)
Received: from ( by ( with Microsoft SMTP Server (TLS) id; Mon, 5 Sep 2016 22:23:34 -0700
Received: from ([]) by ([]) with mapi id 14.03.0235.001; Mon, 5 Sep 2016 22:23:32 -0700
From: Ravi Ravindran <>
To: Lixia Zhang <>
Thread-Topic: [Icnrg-harmonization] NDN use of nameless Data
Thread-Index: AQHSBGTUckNfPjJQ5026HaHPYKaunqBk8c4ggAch2QD//90pkA==
Date: Tue, 6 Sep 2016 05:23:32 +0000
Message-ID: <>
References: <> <> <>
In-Reply-To: <>
Accept-Language: en-US
Content-Language: en-US
x-originating-ip: []
Content-Type: multipart/alternative; boundary="_000_D96E28F4A22C864DBC6C871B5B1C4CC320CC7853SJCEML701CHMchi_"
MIME-Version: 1.0
X-CFilter-Loop: Reflected
Archived-At: <>
Cc: "" <>, "" <>
Subject: Re: [Icnrg-harmonization] NDN use of nameless Data
X-Mailman-Version: 2.1.17
Precedence: list
List-Id: ICN Harmonization Discussion <>
List-Unsubscribe: <>, <>
List-Archive: <>
List-Post: <>
List-Help: <>
List-Subscribe: <>, <>
X-List-Received-Date: Tue, 06 Sep 2016 05:23:42 -0000

I’m not sure if there is any disagreement about this that, there are two types of names in ICN, one what application binds to, and managed by the application providers, called identifiers. And the names that are relevant to the network layer to identify networks, routers, border nodes, hosts etc, managed by the infrastructure provider, hence topological and can be used for routing, late binding etc, which we call locators.

Isn’t the link defined in SNAMP paper same as locators ?


From: Lixia Zhang []
Sent: Monday, September 05, 2016 5:14 PM
To: Ravi Ravindran
Subject: Re: [Icnrg-harmonization] NDN use of nameless Data

On Sep 1, 2016, at 11:24 AM, Ravi Ravindran <<>> wrote:

But one big difference here with CCNx is that, in NDN is that all objects are named.

Yes, hence the name of the architecture: named data networking :-)

I think we should reconsider this notion of nameless objects in CCNx, and define a way to carry locator names in the Interest messages.


To me the so called "locator" is another misconception.


From: Icnrg-harmonization [] On Behalf Of<>
Sent: Thursday, September 01, 2016 8:24 AM
Subject: [Icnrg-harmonization] NDN use of nameless Data

There has been a bit of talk about CCNx making explicit the use of nameless objects, but I’d like to point out that one can do essentially the same thing in NDN using the Interest Link.  If CCNx were to adopt the Link approach to routing indirection, it could be done this way too (though using the ContentObjectHashRestriction field, not the implicit digest).

This is based on the 0.2-alpha-3 NDN packet format specification and the SNAMP-NDN-Scalability.pdf paper.  If I have misread something, please let me know.

The NDN spec says a Name is zero or more NameComponent.  Therefore, I can create a Data object with an empty name.  In an Interest, I can put one NameComponent of type ImplicitSha256DigestComponent and set Min/Max SuffixComponents to 0 and then include one or more Link objects in the Interest for routing.

My understanding of NDN is that because the ImplicitSha256DigestComponent is not in the FIB, a forwarder will forward via the Link.  The nameless Data Object – having 0 name components – will have a FullName of only its ImplicitSha256DigestComponent and that will match the name in the Interest.

I believe this use of NDN also maintains the property we were going after in CCNx nameless objects in that one cannot poison the cache by feting a Data object by hash that could then later be confused with a Data object being fetched by prefix or name (unless one put a 0 component name in the Interest with MaxSuffixComponents of at least 1 and used Link routing).

Icnrg-harmonization mailing list<>