Re: [dtn] Neighbor Discovery (draft-johnson-dtnwg-ipnd-00)

scott@solarnetone.org Sun, 08 October 2023 00:14 UTC

Return-Path: <scott@solarnetone.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 8E9CFC151984; Sat, 7 Oct 2023 17:14:46 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -1.906
X-Spam-Level:
X-Spam-Status: No, score=-1.906 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, RCVD_IN_ZEN_BLOCKED_OPENDNS=0.001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001, T_SCC_BODY_TEXT_LINE=-0.01, URIBL_BLOCKED=0.001, URIBL_DBL_BLOCKED_OPENDNS=0.001, URIBL_ZEN_BLOCKED_OPENDNS=0.001] autolearn=ham autolearn_force=no
Received: from mail.ietf.org ([50.223.129.194]) by localhost (ietfa.amsl.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id ZZnh2fPcNrfV; Sat, 7 Oct 2023 17:14:45 -0700 (PDT)
Received: from www.solarnetone.org (solarnetone.org [IPv6:2602:fdf2:bee:feed::a1a]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange ECDHE (P-256) server-signature RSA-PSS (2048 bits) server-digest SHA256) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id 40828C15171B; Sat, 7 Oct 2023 17:14:38 -0700 (PDT)
Received: from scott (helo=localhost) by www.solarnetone.org with local-esmtp (Exim 4.96) (envelope-from <scott@solarnetone.org>) id 1qpHRJ-0004sL-1F; Sat, 07 Oct 2023 20:14:33 -0400
Date: Sat, 07 Oct 2023 20:14:33 -0400
From: scott@solarnetone.org
To: Marc Blanchet <marc.blanchet@viagenie.ca>
cc: DTN WG <dtn@ietf.org>, draft-johnson-dtnwg-ipnd@ietf.org
In-Reply-To: <CD82326A-396A-47B3-8905-88071AF54854@viagenie.ca>
Message-ID: <af7aeb7e-3f8d-4f79-d028-5bbc5dd291d3@solarnetone.org>
References: <4519e039-c647-eec7-a454-8bd7bc5b885e@solarnetone.org> <CD82326A-396A-47B3-8905-88071AF54854@viagenie.ca>
MIME-Version: 1.0
Content-Type: multipart/mixed; boundary="-2112414640-2127865148-1696724073=:30380"
Archived-At: <https://mailarchive.ietf.org/arch/msg/dtn/DsA6mN5same3lt3hO1x2uC9AnkY>
Subject: Re: [dtn] Neighbor Discovery (draft-johnson-dtnwg-ipnd-00)
X-BeenThere: dtn@ietf.org
X-Mailman-Version: 2.1.39
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: Sun, 08 Oct 2023 00:14:46 -0000

Hi Marc,

On Sat, 7 Oct 2023, Marc Blanchet wrote:

>
>       Le 7 oct. 2023 à 04:28, scott@solarnetone.org a écrit :
> 
> Hi All,
> 
> I have spent a bit of time of recent working on improving the IONe
> implementation of ipnd, adding support for IPv6 beacons and IPv6 CLA
> advertisements.
> 
> As such, and persuant to the 'Neighbor Discovery' charter item, I have
> submitted the following draft, which is an updated resubmission of an
> expired IRTF draft on this matter:
> 
> https://datatracker.ietf.org/doc/draft-johnson-dtnwg-ipnd/
> 
> 
> Great to see this(We’ve been looking for this work while I was dtn
> co-chair!). 
> 
> Comments:
> 
> Meta:
> - if you use draft-*-wgname-* structure for your draft file name, then, if
> the third token is exactly the working group name, then it would appear in
> the wg documents page (https://datatracker.ietf.org/wg/dtn/documents/),
> which is really useful for everybody to find the related work of a dtn wg.
> Right now it does not appear as you are using “dtnwg” instead of “dtn”.  
> (My guess is that you changed dtnrg  to dtnwg from the older draft but dtnrg
> was actually the dtn research group token, while this group is “dtn").
> - you seem to reuse the dtnrg source, which put “Experimental as its
> intended status and from the “DTN Research Group”. Both should be changed. I
> think we should target “Proposed Standard”/Standard track. 

Thanks for the pointers.  Yes, I lightly edited the existing expired 
draft, having found the xml for it in the archives.  As to proposed 
standard, I will let the wg decide the merits, maybe, and update 
appropriately?

I note your vote for Proposed Standard :)  I think it will 
do the job as well, personally.  In doing so, are you suggesting that we 
make this a wg document at this time?  I have a couple of other edits as 
well, like updating the original author's employer and email address info.

> 
> Abstract:
> s/Disruption Tolerant Networking (DTN)/Delay and Disruption Tolerant
> Networking(DTN)/
>

Good eye, thanks.


> Section 2.6:
> 
> g/iff/s/iff set/if set/
> 
> Substantive:
> - there is already IPv6 Neighbour Discovery and service discovery protocols
> (DNSSD) that exist on the IP protocol stack. This draft uses UDP/IP, which
> means it requires an underlying IP network/links with IP nodes configured.
> It either uses unicast IP (which means the node should know the IP address
> of the other peers) or multicast IP, which IPv6 ND and DNSSD use
> extensively. So I wonder what is the actual additional value of doing a
> separate protocol instead of using the already defined IP ones.  The current
> text of section 3 is pretty outdated and incomplete to that subject.

True, but it could be adapted for beacon over other protocols which do not 
require IP stacks running.  There is now support for IP version heterogeny 
in service advertisement and service CLA; an IPv4 beacon can advertise and 
IPv6 service, and vice versa.  We should take care not to break that.


This being a product primarily of irtf, there is or was at least some 
concensus for the process defined.  As well, there is now running code 
mostly conforming to the spec in the document.  I am open to more robust 
v6 multicast discovery than sending to link local and other scopes on 
ff0*::* if there is useful gain to be had. Can you elaborate on your 
suggestion?

> - is this intended to be used on deep space links?

I would consider it "hailing frequencies" for this purpose.  I would 
imagine that if implemented in deep space, there would be a dedicated band 
for such, and a defined radio link spec, likely pre-existing.

At present, the spec and implementation I have worked with is plainly 
considering networks in reasonably close proximity, like wifi networks, as 
links for beacon passing and service autonegotiation.  It would work over 
the open Internet, but for any security concerns with man in the middle on 
the unencrypted udp beacon passing interface.

> - "Version: An 8-bit field indicating the version of IPND that  constructed
> this beacon. The present document describes version  0x04 of IPND. This
> version field is incremented for IPND if either the IPND protocol is
> modified or the Bundle Protocol  version is incremented. In this way the
> field can also be used to  determine the BP version supported by a potential
> DTN neighbor.”  As I understand it, this version field has 2 different
> semantics: the version of the ND protocol and the version of the BP. It
> seems to be a bit dangerous to have two semantics into a single field. I
> guess this may not be that big since most likely the versions of both won’t
> change often, but there are probably some convoluted cases that could arise
> theoretically.

I think that it would increment to 0x05 if EITHER ipnd or bp were to 
change... reasonably sure only one value is passed here, 0x04, which is 
understood to be BPv7 and ipnd v4, I think, however we may be stale on 
this being intended for BPv6, and incrementation may be required.  I will 
have to look into it. Maybe ScottB has a thought on the matter?  I think 
the idea is one value for a given BP/ipnd pair.


> - “To maintain the current neighbor set, IPND removes stale neighbors
> after the defined neighbor receive timeout period elapses without
> receiving any beacon messages from a particular neighbor.” .  What is the
> timeout value, given that in space links, the delay and disruption is
> variable? How it is set/changed?

It is in the runcontrol file when ipnd is launched, and is also parsed 
from received beacons.  User configurable, in other words.

> - section 6.2 IANA registration policy is “Specification Required”.  It
> seems a bit too loose given that the field is only 8 bits. Specification
> required means that an individual can write a specification and get a
> number. I suggest we put a designated expert to review the request, to avoid
> any bad registrations.
>

You may be right on this, but I see little opportunity to abusively 
register service formats for defined types of beacon advertisements.
Maybe someone will come up with a fictional Avian Carrier CLA, and wish to 
register an identifier for that service type... :)

Either way is fine by me, so might as well make it expert review. 
Unless, wait... that means I will have to do the reviewing, eh?

Thanks,
Scott

> Regards, Marc
> 
>
>       I would ask for comments at this time.
>
>       Sincerely,
>       Scott Johnson
>
>       _______________________________________________
>       dtn mailing list
>       dtn@ietf.org
>       https://www.ietf.org/mailman/listinfo/dtn
> 
> 
> 
>