Re: [dtn] BPv7 CDDL and CBOR tagging

Carsten Bormann <cabo@tzi.org> Sat, 06 April 2019 20:37 UTC

Return-Path: <cabo@tzi.org>
X-Original-To: dtn@ietfa.amsl.com
Delivered-To: dtn@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id E7446120113 for <dtn@ietfa.amsl.com>; Sat, 6 Apr 2019 13:37:18 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -4.2
X-Spam-Level:
X-Spam-Status: No, score=-4.2 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, RCVD_IN_DNSWL_MED=-2.3] autolearn=ham autolearn_force=no
Received: from mail.ietf.org ([4.31.198.44]) by localhost (ietfa.amsl.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id w_WdiDvataHD for <dtn@ietfa.amsl.com>; Sat, 6 Apr 2019 13:37:16 -0700 (PDT)
Received: from smtp.uni-bremen.de (gabriel-vm-2.zfn.uni-bremen.de [134.102.50.17]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id D9B44120073 for <dtn@ietf.org>; Sat, 6 Apr 2019 13:37:15 -0700 (PDT)
Received: from client-0075.vpn.uni-bremen.de (client-0075.vpn.uni-bremen.de [134.102.107.75]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.uni-bremen.de (Postfix) with ESMTPSA id 44c7lY4DzdzyS3; Sat, 6 Apr 2019 22:37:13 +0200 (CEST)
Content-Type: text/plain; charset="utf-8"
Mime-Version: 1.0 (Mac OS X Mail 11.5 \(3445.9.1\))
From: Carsten Bormann <cabo@tzi.org>
In-Reply-To: <BN6PR1301MB2034D9BCA00BDB59840649919F520@BN6PR1301MB2034.namprd13.prod.outlook.com>
Date: Sat, 06 Apr 2019 22:37:12 +0200
Cc: Scott Burleigh <scott.c.burleigh@jpl.nasa.gov>, "dtn@ietf.org" <dtn@ietf.org>
X-Mao-Original-Outgoing-Id: 576275831.05664-2fbb934a74677a6f3eedae065f0222e1
Content-Transfer-Encoding: quoted-printable
Message-Id: <F1E7D818-6D70-47E0-93AC-7EF2E82EACA9@tzi.org>
References: <CY4PR1301MB20399B0DD6B59D2D566257379F570@CY4PR1301MB2039.namprd13.prod.outlook.com> <988AFDDA-BEA9-4533-ADD7-CA86CCA755EF@tzi.org> <BN6PR1301MB2034D9BCA00BDB59840649919F520@BN6PR1301MB2034.namprd13.prod.outlook.com>
To: Brian Sipos <BSipos@rkf-eng.com>
X-Mailer: Apple Mail (2.3445.9.1)
Archived-At: <https://mailarchive.ietf.org/arch/msg/dtn/Wn-DVXAoAOVAyRSqC5u6x-Lc9qU>
Subject: Re: [dtn] BPv7 CDDL and CBOR tagging
X-BeenThere: dtn@ietf.org
X-Mailman-Version: 2.1.29
Precedence: list
List-Id: "Delay Tolerant Networking \(DTN\) discussion list at the IETF." <dtn.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/dtn>, <mailto:dtn-request@ietf.org?subject=unsubscribe>
List-Archive: <https://mailarchive.ietf.org/arch/browse/dtn/>
List-Post: <mailto:dtn@ietf.org>
List-Help: <mailto:dtn-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/dtn>, <mailto:dtn-request@ietf.org?subject=subscribe>
X-List-Received-Date: Sat, 06 Apr 2019 20:37:19 -0000

On Apr 6, 2019, at 22:04, Brian Sipos <BSipos@rkf-eng.com> wrote:
> 
> Carsten,
> My purpose of marking these potentially-tagged items in the CDDL is less for the BP agent encoder implementer to say “where should tags be" but for the bundle troubleshooting / validating tool implementer to give indication of "where may tags be" to have some value.

That is certainly useful.

> The CDDL itself is all informational, so it’s not an issue for the BPv7 spec itself.

By the way, you *could* now go ahead and make it normative, as the CDDL standard has been approved on March 25.

> The actual value in the tags themselves is not for the BP agent (the agent would just skip over the tags, as neither changes the block-data semantics of the tagged-item), but for troubleshooting with non-BP-specific tools.

OK.  I was also trying to gauge how important saving a few bytes is for you.  If you make the tags optional, there is less reliance diagnostic tools can have on them, but you also don’t have to spend the bytes in situations that are tight.  And v.v.

> I had earlier brought up to the WG the question of whether there is any value in registering a BPv7 media type. That was seen as unnecessary since bundles should only appear in a BP context (either at-rest or on-the-wire) and CBOR encoding itself already has a media type. I think a BP-specific tag would have the same amount of support, which is why my suggestion for a content-type hint on an encoded bundle is just the “yes it's CBOR” tag.

I’m still not entirely sure I’d forego that information (as in do a “file x.x” and get the information “bundle protocol bundle” vs. just “CBOR data item”), but I think I get this point of view, too.

Thank you for the quick reply!

Grüße, Carsten

> 
> From: Carsten Bormann <cabo@tzi.org>
> Sent: Saturday, April 6, 2019 08:25
> To: Brian Sipos
> Cc: dtn@ietf.org; Scott Burleigh
> Subject: Re: [dtn] BPv7 CDDL and CBOR tagging
>  
> On Apr 3, 2019, at 21:14, Brian Sipos <BSipos@rkf-eng.com> wrote:
> > 
> >        • Indicate some likely places where CBOR tags can be used to augment encoded bundles for troubleshooting. In my mind, the reasonable tag sites are:
> >                • Tagging the whole bundle as "#6.55799(bundle) as a sentinel for content-type-scanning tools.
> >                • Tagging the "block-type-specific-data" as "encoded-cbor = #6.24(bstr)" when it is in fact CBOR.
> > 
> 
> Hi Brian,
> 
> can you indicate what the purpose of the tagging would be?
> 
> Tagging the whole bundle as 55799 would identify it as a CBOR data item, but not yet really as a bundle.  If the purpose is to facilitate working with generic CBOR tools on the data items, that may be useful if there are other formats flying around in the same space the bundle is being used.  If the purpose is to identify this as a bundle, why not go for a specific tag just for bundles?  55798 is still free…  Or any number that is even more visibly tagging (such as 25200, which would be visible in a hex/ASCII dump as ‘bp’, or maybe four-byte or even an eight-byte number).  I understand these tags would be stripped off for actual transmission through a convergence layer?
> 
> The encoded-cbor tag (24) is great for identifying embedded CBOR, but what do you do for the other kinds of block-type-specific data?  Sorry, it’s been a while since I looked in detail into the bundle protocol.
> 
> (Why is the CDDL in appendix B double-spaced, by the way?)
> 
> Grüße, Carsten
> 
> _______________________________________________
> dtn mailing list
> dtn@ietf.org
> https://www.ietf.org/mailman/listinfo/dtn