Re: [dtn-interest] Argument in favor of a data format field for groups of bundles

John Zinky <jzinky@bbn.com> Tue, 18 December 2012 16:11 UTC

Return-Path: <jzinky@bbn.com>
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 988F821F8AD2 for <dtn-interest@ietfa.amsl.com>; Tue, 18 Dec 2012 08:11:45 -0800 (PST)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -6.537
X-Spam-Level:
X-Spam-Status: No, score=-6.537 tagged_above=-999 required=5 tests=[AWL=0.062, BAYES_00=-2.599, RCVD_IN_DNSWL_MED=-4]
Received: from mail.ietf.org ([64.170.98.30]) by localhost (ietfa.amsl.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id 3K2Yvx2uPFDc for <dtn-interest@ietfa.amsl.com>; Tue, 18 Dec 2012 08:11:45 -0800 (PST)
Received: from smtp.bbn.com (smtp.bbn.com [128.33.1.81]) by ietfa.amsl.com (Postfix) with ESMTP id 0CC4421F8ACB for <dtn-interest@irtf.org>; Tue, 18 Dec 2012 08:11:42 -0800 (PST)
Received: from apple.bbn.com ([128.89.72.183]:52059) by smtp.bbn.com with esmtps (TLSv1:AES128-SHA:128) (Exim 4.77 (FreeBSD)) (envelope-from <jzinky@bbn.com>) id 1Tkzlc-000CIw-CQ; Tue, 18 Dec 2012 11:11:40 -0500
Content-Type: text/plain; charset="iso-8859-1"
Mime-Version: 1.0 (Mac OS X Mail 6.2 \(1499\))
From: John Zinky <jzinky@bbn.com>
In-Reply-To: <CAHxHggdgD14aNPDHLdneXD_xU4J_sY0ieqe60HS5aeFgicL1cQ@mail.gmail.com>
Date: Tue, 18 Dec 2012 11:11:40 -0500
Content-Transfer-Encoding: quoted-printable
Message-Id: <0A441BEB-A328-4423-B081-EB0379181897@bbn.com>
References: <BB72E60F7A18154A9B1352D1DF6FEE571E26B296@NASANEXD01E.na.qualcomm.com> <628B4537-5143-46C4-85AE-C8A4474876D1@bbn.com> <CAHxHggdgD14aNPDHLdneXD_xU4J_sY0ieqe60HS5aeFgicL1cQ@mail.gmail.com>
To: "dtn-interest@irtf.org" <dtn-interest@irtf.org>
X-Mailer: Apple Mail (2.1499)
Subject: Re: [dtn-interest] Argument in favor of a data format field for groups of bundles
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: Tue, 18 Dec 2012 16:11:45 -0000

Vint,
There are two questions that need to be addressed concerning a next protocol field in DTN.

1) Is a "next protocol" or "Data Object format" field needed in the bundle protocol suite?
Erasure Coding needs such a field

2) Where should the next protocol field be located?
The right place seems to be an extension block, but which extension block?

At the heart of the "Erasure Coding as an example End-to-End service discussion" is a more fundamental question about the architecture for a DTN protocol suite. 

The Erasure Coding has its own private extension block, some would call this a stove pipe. But looking in detail, the EC extension block contains fields that are needed in other contexts, such as
 1) Handling Specs: which addresses Forwarding Policies as the ECOS draft
http://tools.ietf.org/html/draft-irtf-dtnrg-ecos-03

 2) Group ID: which is similar to the Content ID in the BPQ draft
http://tools.ietf.org/html/draft-farrell-dtnrg-bpq-00


It is easy to imagine an end-to-end application that needs all three services, Erasure Coding, Forwarding policies, Content Query.

Imagine a large content object that is Erasure Encoded and  pieces disseminated throughout the DTN network. A Query based on the Content Object ID is sent out into the network and Erasure coded bundles are sent back to the requester. But the default First-Come-First-Serve Forwarding Policy will not work because duplicate encodings (the one that was sent first) will be returned first which are guaranteed to be redundant. 

Currently all three services have their own stovepipe internet draft.
If we start to design a non-layered DTN protocol suite, how do we partition functionality to the extension blocks?  And how do the services, such as Erasure Coding, Forwarding policies, Content Query use these extension blocks and not step on each other?


On Dec 6, 2012, at 7:50 PM, Vint Cerf <vint@google.com> wrote:

> is there some reason that extension header would not work?
> 
> v
> 
> 
> On Thu, Dec 6, 2012 at 3:22 PM, John Zinky <jzinky@bbn.com> wrote:
> 
> On Nov 9, 2012, at 12:33 PM, "Fall, Kevin" <kfall@qti.qualcomm.com> wrote:
> > I have concerns about the idea of typed data transfer (requiring IANA)
> 
> Erasure Coding adds one SDNV field to store a format type number in the extension block. A field is necessary to distinguish a "File" Data Object, from a "Big Bundle" Data Object
> 
> RFC 5050 does not have a next protocol field like IP.
> 
> Alternative solutions to a Data Object format type field would be:
> 1) Append a Object format type in the Destination EID. This would take a least one byte, which is the same overhead as an SDNV. Hairing up the EID has no advantage.
> 
> 2) Gleam format from the Data Object itself. But the Erasure Coding does not require the whole Data Object be delivered, e.g. a layer video stream encoding or situation awareness updates. The Data object could have gaps, there is no place in the data object that is guaranteed to be delivered, hence no place to actually define the format.
> 
> 3) Add a payload header to every payload, hence every bundle. But if we ignore layering, then this payload header becomes an extension block.
> 
> So in the case of the Data Object being spread over multiple bundles, the easiest mechanism is to add a "Next Encapsulated Protocol" field. Having this field in the EC header, means that it does not have overhead for small (non grouped) bundles.
> 
> _______________________________________________
> dtn-interest mailing list
> dtn-interest@irtf.org
> https://www.irtf.org/mailman/listinfo/dtn-interest
>