Re: [dtn] Convergence Layer Adapter - Endpoint IDs (CLA-EID)

Loiseau lucien <loiseau.lucien@gmail.com> Sat, 07 December 2019 08:46 UTC

Return-Path: <loiseau.lucien@gmail.com>
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 B71DA1200C3 for <dtn@ietfa.amsl.com>; Sat, 7 Dec 2019 00:46:46 -0800 (PST)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -1.998
X-Spam-Level:
X-Spam-Status: No, score=-1.998 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, FREEMAIL_FROM=0.001, HTML_MESSAGE=0.001, RCVD_IN_DNSWL_NONE=-0.0001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001] autolearn=ham autolearn_force=no
Authentication-Results: ietfa.amsl.com (amavisd-new); dkim=pass (2048-bit key) header.d=gmail.com
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 a4D7PaJlMqLK for <dtn@ietfa.amsl.com>; Sat, 7 Dec 2019 00:46:43 -0800 (PST)
Received: from mail-qt1-x843.google.com (mail-qt1-x843.google.com [IPv6:2607:f8b0:4864:20::843]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id 74F41120077 for <dtn@ietf.org>; Sat, 7 Dec 2019 00:46:43 -0800 (PST)
Received: by mail-qt1-x843.google.com with SMTP id w47so9774685qtk.4 for <dtn@ietf.org>; Sat, 07 Dec 2019 00:46:43 -0800 (PST)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=mime-version:references:in-reply-to:from:date:message-id:subject:to :cc; bh=2GJjWikfRQKSVpANjJDJnDEzvdAemhaOPrnOENAyl3w=; b=AncK2083CEo9r6lX3o4RNdQ0+HZXZHKrq24Z+hCY24K80hKomdzmJgNFii77hWpKFo oVSaDDgycmR4K2py4h+SAT0GkrBfj2t6ElEHcqTk54vPJcj5fRjIJcpO3MVbMZldb05f Kg39oqBgkPqD0/JmOgNh41YRK2VT+4Gum6IItaLfnt09vkkuJGLY2A4ulL5g3z4kLzGk GQgd7DBcDkMihzM+TpAnMm42xv3yxk9lkcj5181CgzJpIpULAHdXXlKv+iq3nV59ZfCr KHTmq5X0WC9T2V2ldJecp9kBFdA+XDENOSETZNZ0cI+diDhwsKtrr/nAPuOz2K3xi10s 79zw==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:references:in-reply-to:from:date :message-id:subject:to:cc; bh=2GJjWikfRQKSVpANjJDJnDEzvdAemhaOPrnOENAyl3w=; b=Zk8E+RHHl1DGcBZgU4m6yEv1mP4zaPKR3CLMGIdscf9EQnejsEtODE+NPv8M3JlpD1 jalK/Pw1EhJ7foLIgLjwIbdFyLy55Ru4JWSDX7G8n6b89DYcXfDhWZvrB7oRhuD2edrS AZUedwrK6cM+BzoQAziuWEcpI2MEXUzsCtdQ1GKzjZaWk40r6crrkCgUeqrnIhXpQTFA Ht6+0MedkUK5zp5Sbrajz1iNdC92bcor3xHB5n/8xuyELPx1qL2k7z8tfKCql8Ov3NQU n2KdBiP1iRB3cuw15yl0oH1H1c4CevnuoZ/zObgq9R9/TC3y7pvYdWrR3XYo9K01OxcB Whwg==
X-Gm-Message-State: APjAAAXTwOMpUH43WCkYwuVO34lWaqn4gow5HgrKgnXqblvMqOlBQy3r r2JUq//WQ/zUaVYtRBXzuMruBvPpUJBKbKLaib+8dRoWFRQ=
X-Google-Smtp-Source: APXvYqwTmx6IvKANaj7bzImBa6mAgNRzgAH/2odVPm321fbh9kww6vumxDJFoNqcROXNfm3YTZgV3ODPd2C8VgybysE=
X-Received: by 2002:ac8:195d:: with SMTP id g29mr16735354qtk.65.1575708402293; Sat, 07 Dec 2019 00:46:42 -0800 (PST)
MIME-Version: 1.0
References: <CANoKrvY2RMm447-OXzKWr5ngVFwpgXw-LbH0PU6LiYDxQUdYDA@mail.gmail.com> <MN2PR13MB3520794027C9E2B33D8CB0A49F430@MN2PR13MB3520.namprd13.prod.outlook.com>
In-Reply-To: <MN2PR13MB3520794027C9E2B33D8CB0A49F430@MN2PR13MB3520.namprd13.prod.outlook.com>
From: Loiseau lucien <loiseau.lucien@gmail.com>
Date: Sat, 07 Dec 2019 16:46:30 +0800
Message-ID: <CANoKrvY_A5b-FmMC+n4p+pOjjG5qgQdi=Co199sRL_+2nBCwfA@mail.gmail.com>
To: Brian Sipos <BSipos@rkf-eng.com>
Cc: "dtn@ietf.org" <dtn@ietf.org>
Content-Type: multipart/alternative; boundary="00000000000096a1770599193315"
Archived-At: <https://mailarchive.ietf.org/arch/msg/dtn/oYFeee2k6KyJockI8CgnFJT4lyk>
Subject: Re: [dtn] Convergence Layer Adapter - Endpoint IDs (CLA-EID)
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, 07 Dec 2019 08:46:47 -0000

Hi Brian,

thanks for pointing out the IPND draft. Though related, I believe that
CLA-EID does address a slightly different issue than peer or service
discovery. My proposition is a general formalization for CLA Identifiers,
how it should be encoded (string, integer or both) within the context a
peer discovery protocol is another issue. Also the IPND draft seems to be
limited to IP discovery only where as a CLA-EID can be used to describe a
Bluetooth or a USB stick interface (this is very relevant for the context
of DTN use case I am working on). CLA-EID is not about how to exchange
identifier information, this draft is to agree on:

   1. how a CLA-EID should be constructed, the proposition is
cla:<CLA-NAME>:<CLA-SPECIFIC-PART>
   and should be automatically derivable from the cla interface without any
   exchange of packet (because the same identifier could be used to trigger
   and open such interface).
   2. what a CLA service MUST expose: an ingress and egress CLA-EID when
   relevant.

Only when this brick is layed can a peer discovery protocol be built upon
to exchange CLA-EID identifiers like IPND, or a new draft for bluetooth
peer discovery using BLE beaconing for example, or a new draft for usb
stick discovery using a specific file (for example `.BPV7INFO`).

Also it may be the topic of a different thread but since you ask the
question, when I developed a BPv7 implementation [1] I found the
serialization of EID to be very convoluted because it makes it hard to be
generic. Since the RFC states that an EID is just an URI and no other
constraint are given to it, it should just be it and be serialized as a
string. Right now, there is two issues with how EID are serialized:

   1. The scheme is encoded as a number which MUST require to be registered
   on IANA.
   2. The SSP is schema-specific, for instance it is a cbor string for
   `dtn:` and a cbor array of cbor integer for `ipn`.

The problem is that if someone come up with its own schema that isn't yet
registered on IANA, those bundle would be impossible to route because
impossible to serialize. In a situation where an AA receive from its API a
query to send a bundle to an unknown URI scheme (so it is a string), a sane
process would be to either delete it or just pass it to some other more
knowledgeable node (sort of a default route) but in this case event it
would be impossible to do so because it wouldn't even know how to serialize
it. So we would have to wait for IANA to approve the scheme and then update
the code in all of bundle node, seems like a lot of unnecessary
bureaucracy, why not just a string for encoding EIDs?

The above issue was also one of the purpose of formalizing CLA-EID, so that
we can at least work generically with all CLA identifiers in a generic
fashion.

[1] https://github.com/Marlinski/Terra


On Fri, Dec 6, 2019 at 9:42 PM Brian Sipos <BSipos@rkf-eng.com> wrote:

> Lucien,
> I do see value in registration of CLA identifiers. One of the deficiencies
> I see with the IPND draft is that its notion of what is a CLA service [1]
> is quite ambiguous. It implies that "TCP" means "DTN TCPCL" and isn't
> exactly clear about what protocol version is used (all of the CLAs are
> cited from that draft as Informative References). It's a good notional
> start but I would love to take a crack at tightening up, modernizing, and
> security-enhancing the IPND protocol.
>
> A question to the WG related to CLA identifiers is: do we want the CLA
> registry to be maintained as text (similar to the URN namespace registry)
> or using integer namespaces as IPND, BPv7, and BPv6/CBHE do, or as a
> combination of "text name" and "integer label" as COSE [2] does for its
> parameters.
>
> [1] https://tools.ietf.org/html/draft-irtf-dtnrg-ipnd-03#section-2.6.3
> [2] https://www.iana.org/assignments/cose/cose.xhtml#header-parameters
> CBOR Object Signing and Encryption (COSE)
> <https://www.iana.org/assignments/cose/cose.xhtml#header-parameters>
> CBOR Object Signing and Encryption (COSE) Created 2017-01-11 Last Updated
> 2019-08-20 Available Formats XML HTML Plain text. Registries included
> below. COSE Header Parameters
> www.iana.org
>
> CBOR Object Signing and Encryption (COSE)
> <https://www.iana.org/assignments/cose/>
> CBOR Object Signing and Encryption (COSE) Created 2017-01-11 Last Updated
> 2019-08-20 Available Formats XML HTML Plain text. Registries included
> below. COSE Header Parameters
> www.iana.org
>
>
>
> ------------------------------
> *From:* dtn <dtn-bounces@ietf.org> on behalf of Loiseau lucien <
> loiseau.lucien@gmail.com>
> *Sent:* Monday, December 2, 2019 03:59
> *To:* dtn@ietf.org <dtn@ietf.org>
> *Subject:* [dtn] Convergence Layer Adapter - Endpoint IDs (CLA-EID)
>
> Hi all,
>
> last year I wrote a draft regarding the introduction of an EID format that
> would be specific to convergence layer adapters that I called IID
> (Interface IDentier):
>
> https://tools.ietf.org/html/draft-loiseau-dtn-cla-eid-00
>
> The purpose was to have a generic EID format that would carry enough
> semantic so as to allow routing protocol and automatic connection
> scheduling to operate in a way that is not implementation specific. My use
> cases was the ability to maintain a link-local EID routing table as well as
> automatically initiating TCP connection for certain destination upon the
> reception of some bundles.
>
> The draft expired in May but I would be happy to take your comments and
> submit a new one with a better wording, please have a look!
>
> Best Regards,
> Lucien Loiseau
>


-- 
--
Lucien Loiseau