Re: [dtn-interest] Comments on RFC 4838

Michael Noisternig <michael.noisternig@cased.de> Thu, 20 June 2013 09:40 UTC

Return-Path: <michael.noisternig@cased.de>
X-Original-To: dtn-interest@ietfa.amsl.com
Delivered-To: dtn-interest@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id 1DB1921F9B32 for <dtn-interest@ietfa.amsl.com>; Thu, 20 Jun 2013 02:40:52 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -2.689
X-Spam-Level:
X-Spam-Status: No, score=-2.689 tagged_above=-999 required=5 tests=[AWL=0.560, BAYES_00=-2.599, HELO_EQ_DE=0.35, RCVD_IN_DNSWL_LOW=-1]
Received: from mail.ietf.org ([12.22.58.30]) by localhost (ietfa.amsl.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id wk2SB1UeJ4pd for <dtn-interest@ietfa.amsl.com>; Thu, 20 Jun 2013 02:40:47 -0700 (PDT)
Received: from lnx500.hrz.tu-darmstadt.de (lnx500.hrz.tu-darmstadt.de [130.83.156.225]) by ietfa.amsl.com (Postfix) with ESMTP id 3E5F121E80FD for <dtn-interest@irtf.org>; Thu, 20 Jun 2013 02:40:44 -0700 (PDT)
Received: from mail.cased.de (mail.cased.de [130.83.33.42]) by lnx500.hrz.tu-darmstadt.de (8.14.4/8.14.4/HRZ/PMX) with ESMTP id r5K9egoY003820 for <dtn-interest@irtf.org>; Thu, 20 Jun 2013 11:40:42 +0200 (envelope-from michael.noisternig@cased.de)
Received: from [130.83.33.155] (cased155.cased.tu-darmstadt.de [130.83.33.155]) (using TLSv1 with cipher DHE-RSA-AES256-SHA (256/256 bits)) (No client certificate requested) by mail.cased.de (Postfix) with ESMTPSA id 87EED402507 for <dtn-interest@irtf.org>; Thu, 20 Jun 2013 11:40:42 +0200 (CEST)
Message-ID: <51C2CE18.8010906@cased.de>
Date: Thu, 20 Jun 2013 11:40:40 +0200
From: Michael Noisternig <michael.noisternig@cased.de>
User-Agent: Mozilla/5.0 (Windows NT 6.1; WOW64; rv:17.0) Gecko/20130509 Thunderbird/17.0.6
MIME-Version: 1.0
To: dtn-interest@irtf.org
References: <51C0232F.3060607@cased.de> <52C28268-AA24-4A27-81F1-E620A282B0A3@ibr.cs.tu-bs.de>, <51C1A255.8070609@cased.de> <A5BEAD028815CB40A32A5669CF737C3B235FDD54@ap-embx-sp40.RES.AD.JPL>
In-Reply-To: <A5BEAD028815CB40A32A5669CF737C3B235FDD54@ap-embx-sp40.RES.AD.JPL>
Content-Type: text/plain; charset="ISO-8859-1"; format="flowed"
Content-Transfer-Encoding: 7bit
X-PMX-TU: seen v1.2 by 5.6.1.2065439, Antispam-Engine: 2.7.2.376379, Antispam-Data: 2013.6.20.93036
X-PMX-RELAY: outgoing
Subject: Re: [dtn-interest] Comments on RFC 4838
X-BeenThere: dtn-interest@irtf.org
X-Mailman-Version: 2.1.12
Precedence: list
List-Id: "The Delay-Tolerant Networking Research Group \(DTNRG\) - Announce." <dtn-interest.irtf.org>
List-Unsubscribe: <https://www.irtf.org/mailman/options/dtn-interest>, <mailto:dtn-interest-request@irtf.org?subject=unsubscribe>
List-Archive: <http://www.irtf.org/mail-archive/web/dtn-interest>
List-Post: <mailto:dtn-interest@irtf.org>
List-Help: <mailto:dtn-interest-request@irtf.org?subject=help>
List-Subscribe: <https://www.irtf.org/mailman/listinfo/dtn-interest>, <mailto:dtn-interest-request@irtf.org?subject=subscribe>
X-List-Received-Date: Thu, 20 Jun 2013 09:40:52 -0000

Thanks, Scott.

The reason why I have difficulties understanding the details is because 
EIDs are solely being described as referring to one or more (RFC 4838) 
(or zero or more (RFC 5050)) DTN nodes, but what we want to address in 
the BP are applications connected to/running on these nodes and not the 
nodes themselves.

RFC 4838 states that "to initiate a registration and thereby establish 
application registration state, an application specifies an Endpoint ID 
for which it wishes to receive ADUs", so may I take it that there is 
(more or less) a 1-1 relationship between EIDs and applications? The 
application uses the node it connects to as a means to get data destined 
for a particular EID to be sent to that node, which then forwards it to 
the application? So the EID the application selects should be globally 
unique, and _may_ be compiled by combining the node's MAC with a local 
service/port id (which would avoid the problem of disseminating the 
node-to-EID registration information in the network)?

I'm sorry that this is not being obvious to me. Thank you for further 
clarifications,

Michael

Am 20.06.2013 02:07, schrieb Burleigh, Scott C (313B):
> Hi, Michael.  A couple of remarks on your comments -- and Sebastian's -- in-line below.
>
> Scott
> ________________________________________
> From: dtn-interest-bounces@irtf.org [dtn-interest-bounces@irtf.org] on behalf of Michael Noisternig [michael.noisternig@cased.de]
> Sent: Wednesday, June 19, 2013 5:21 AM
> To: dtn-interest@irtf.org
> Subject: Re: [dtn-interest] Comments on RFC 4838
>
> Hi Sebastian,
>
> thank your for your comments. See my replies inline.
>
>> maybe 4838 is a bit aged and does not reflect all the things people have come up with, since. And yes, while it says "_DTN_ Architecture" it is tied quite strongly to the BP. So maybe it isn"t 100% what it says on the can, but writing a short/concise RFC for everything that can be called a DTN would probably be impossible. Or, to put it into a more positive perspective: Partly the intention for the BP WAS to be something for "all kinds of" DTNs. Like TCP/IP it aims for generality,  but this implies tradeoffs. (and functionality-wise BP includes "more stuff" than IP, which makes this balance harder)
>
> Obviously, my expectations were a bit different, but I understand your
> perspective.
>
>>> However, homogeneous resource-constrained networks are unlikely to benefit from the bundle overlay protocol, even when compressed headers (CBHE) are used and the protocol is directly implemented at L3. As such
>>
>>
>> Ah, a good opportunity for a shameless plug! In fact we DO use the BP as L3 protocol on Contiki based WSN nodes over IEEE 802.15.4. There are two papers and a GIT to "prove it":
>
> In fact, I am aware of your group's work on ibr-dtn and mudtn. This is
> why I said that even with compression (CBHE) the overhead of the BP
> would probably still be too high for our scenario... addresses in EUI-48
> format, high volume of messages with very small payloads. We are more
> concerned about network overhead than computing resources. Still, we
> will look into your work in more detail.
>
>>> 3.2 and 3.3:
>>> What wasn't really clear to me in both RFC 4838 and 5050 was the whole node-to-EID registration process. A node registers to an EID, and an application somehow gets associated/registered with a node (via some socket API?). (So there seem to be two separate registration processes.) Then if all applications connect to the same node (e.g., a daemon) how do the applications get multiplexed on the channel? Or is there a 1-1 relationship between applications and nodes? If an application selects the EID to register to how can we assure a unique "singleton" EID for each node? How do these EIDs get registered within the network?
>> In THEORY BP has a "an EID can be anything" concept: A node, many nodes, one name amongst many for a node, an interest, a haiku...   in PRACTICE, when using DTN2 or IBR-DTN implementations (and probably others), it mostly comes back to the more mundane: An EID is a node identifier, the path is used for multiplexing like Port numbers: dtn://node1/myApp  -> Boring, but that is what is mostly  used. "Colliding" EIDs may, or may not be a problem also depending on the employed routing. 4838 or 5050 do not offer any solution for generating unique EIDs (but putting some sort of Mac Address into an EID is straight-forward)
>
>>>>   Not quite, I would say.  An EID is a string that identified a BP endpoint, full stop.  And RFC 5050 states pretty unambiguously what a BP endpoint is: it's a set of zero or more BP nodes.  An EID might be a haiku, but an endpoint can't.  In practice, I think DTN2 EIDs (formed in the "dtn" URI scheme) typically include a DNS name that identifies a virtual or physical CPU that is coterminous with some BP node, followed by a string token for demultiplexing bundles sent to that node.  EIDs formed in the "ipn" URI scheme more formally always include a numeric node ID (which may or may not correspond to a CPU) and a numeric service ID (for demultiplexing).
>>>> It is true that using MAC address as node ID, in an EID scheme that supports the concept of node IDs, is a good way to prevent EID collisions.
>
> Thank you, that sheds a bit more light on the issue. Let me make sure I
> understand this correctly... Whereas an EID may represent a single node
> or multiple nodes (or interests or whatnot), there is (more or less) a
> 1-1 relationship between applications and nodes, i.e., each node
> represents an application, right?
>
>>>> No, that's not the case.  Each node encompasses a single bundle protocol agent, which can send and receive bundles on behalf of any number of applications.  Applications and nodes are orthogonal.
>
>>> 3.3.2:
>>> Late binding is a nice concept, but of course it conflicts with routing under mobility where identities do not necessarily represent locations. How is this issue going to be resolved? I'm not sure leaving this as an implementation matter is the appropriate "solution".
>> Routing. A can of worms. Like in the WSN community, some "standard" approaches exist that work so-so, often application specific solutions seems to be the key. . Others might disagree, but it really depends much on the application, with scheduled IPNs the one extreme and completely undeterministic, opportunistic networks at the other.
>>>
>>> Related to this, can (or how can) DTN nodes from different networks (with different schemes) register to the same EID?
>> I am not sure if I understand this correctly, but different schemes, imply it is a different EID (it may be the same node), i.e. ipn://23.1 is not the same EID as dtn://23.1
>
> Right... I was thinking of an EID as an identifier, so obviously that
> doesn't work.
>
>>>> Bu EIDs really are identifiers; they identify endpoints, not nodes.  Any number of nodes can register as members of a given endpoint, but the mechanism for advertising those registrations is not defined.  There's nothing whatsoever preventing a given node (which is a functional construct, not a string) from registering in any number of endpoints (sets of nodes) that are identified by strings formed in any number of URI schemes.  There's no reason a given node can't register in both the endpoint identified by "dtn://bills.macbook/chat" and "ipn: 391635.31".
>
>>
>>
>>
>> Sebastian
>
> Thanks,
> Michael
> _______________________________________________
> dtn-interest mailing list
> dtn-interest@irtf.org
> https://www.irtf.org/mailman/listinfo/dtn-interest
> _______________________________________________
> dtn-interest mailing list
> dtn-interest@irtf.org
> https://www.irtf.org/mailman/listinfo/dtn-interest
>