Re: [babel] Babel over DTLS and UDP ports

Juliusz Chroboczek <jch@irif.fr> Fri, 31 May 2019 13:14 UTC

Return-Path: <jch@irif.fr>
X-Original-To: babel@ietfa.amsl.com
Delivered-To: babel@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id 011661200DB for <babel@ietfa.amsl.com>; Fri, 31 May 2019 06:14:11 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -1.9
X-Spam-Level:
X-Spam-Status: No, score=-1.9 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, SPF_HELO_NONE=0.001, SPF_PASS=-0.001] 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 dyL-4AhC6XPC for <babel@ietfa.amsl.com>; Fri, 31 May 2019 06:14:08 -0700 (PDT)
Received: from korolev.univ-paris7.fr (korolev.univ-paris7.fr [IPv6:2001:660:3301:8000::1:2]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id 9279E120075 for <babel@ietf.org>; Fri, 31 May 2019 06:14:08 -0700 (PDT)
Received: from mailhub.math.univ-paris-diderot.fr (mailhub.math.univ-paris-diderot.fr [81.194.30.253]) by korolev.univ-paris7.fr (8.14.4/8.14.4/relay1/82085) with ESMTP id x4VDE3q7001797; Fri, 31 May 2019 15:14:03 +0200
Received: from mailhub.math.univ-paris-diderot.fr (localhost [127.0.0.1]) by mailhub.math.univ-paris-diderot.fr (Postfix) with ESMTP id E164570E3C; Fri, 31 May 2019 15:14:05 +0200 (CEST)
X-Virus-Scanned: amavisd-new at math.univ-paris-diderot.fr
Received: from mailhub.math.univ-paris-diderot.fr ([127.0.0.1]) by mailhub.math.univ-paris-diderot.fr (mailhub.math.univ-paris-diderot.fr [127.0.0.1]) (amavisd-new, port 10023) with ESMTP id tpDCQhP8EjWb; Fri, 31 May 2019 15:14:04 +0200 (CEST)
Received: from pirx.irif.fr (unknown [78.194.40.74]) (Authenticated sender: jch) by mailhub.math.univ-paris-diderot.fr (Postfix) with ESMTPSA id 1BDE670E3A; Fri, 31 May 2019 15:14:04 +0200 (CEST)
Date: Fri, 31 May 2019 15:14:03 +0200
Message-ID: <87tvda7omc.wl-jch@irif.fr>
From: Juliusz Chroboczek <jch@irif.fr>
To: David Schinazi <dschinazi.ietf@gmail.com>
Cc: Babel at IETF <babel@ietf.org>
In-Reply-To: <CAPDSy+45_gEo=SfLWnODa6jMqnUdC9a10nhL6ZxRLh7EXabxaw@mail.gmail.com>
References: <CAPDSy+45_gEo=SfLWnODa6jMqnUdC9a10nhL6ZxRLh7EXabxaw@mail.gmail.com>
User-Agent: Wanderlust/2.15.9
MIME-Version: 1.0 (generated by SEMI-EPG 1.14.7 - "Harue")
Content-Type: text/plain; charset="US-ASCII"
X-Greylist: Sender IP whitelisted, not delayed by milter-greylist-4.2.7 (korolev.univ-paris7.fr [194.254.61.138]); Fri, 31 May 2019 15:14:03 +0200 (CEST)
X-Miltered: at korolev with ID 5CF1289B.000 by Joe's j-chkmail (http : // j-chkmail dot ensmp dot fr)!
X-j-chkmail-Enveloppe: 5CF1289B.000 from mailhub.math.univ-paris-diderot.fr/mailhub.math.univ-paris-diderot.fr/null/mailhub.math.univ-paris-diderot.fr/<jch@irif.fr>
X-j-chkmail-Score: MSGID : 5CF1289B.000 on korolev.univ-paris7.fr : j-chkmail score : . : R=. U=. O=. B=0.000 -> S=0.000
X-j-chkmail-Status: Ham
Archived-At: <https://mailarchive.ietf.org/arch/msg/babel/0OlfmXzyWHUiUlm42oi9qhLyOcw>
Subject: Re: [babel] Babel over DTLS and UDP ports
X-BeenThere: babel@ietf.org
X-Mailman-Version: 2.1.29
Precedence: list
List-Id: "A list for discussion of the Babel Routing Protocol." <babel.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/babel>, <mailto:babel-request@ietf.org?subject=unsubscribe>
List-Archive: <https://mailarchive.ietf.org/arch/browse/babel/>
List-Post: <mailto:babel@ietf.org>
List-Help: <mailto:babel-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/babel>, <mailto:babel-request@ietf.org?subject=subscribe>
X-List-Received-Date: Fri, 31 May 2019 13:14:11 -0000

> When the authors requested the new port from IANA, we received some pushback.
> The position of the IANA port expert was that UDP ports are a scarce resource
> and they strongly prefer to not allocate them unless it is necessary.

In a healthy technical organisation, the administration helps the
technical folks get their stuff done.  An organisation is ossified if the
bureaucacy feels they have the right to dictate the technical solutions.

If there are technical reasons to use a single port, we should state them.
Under no circumstances should we agree to change our protocol in order to
make the bureaucrats happy.

> So the question for the Babel WG is: is the separate port necessary?

Antonin's original implementation implementation used a single port:

  https://datatracker.ietf.org/meeting/101/materials/slides-101-babel-babel-over-dtls-00

> One possible solution could be for us to have unencrypted packets and DTLS
> packets share the same port. For that we can leverage the fact that all Babel
> packets start with a first byte set to 42, and say that DTLS packets use the
> same port, prefixed with 43 instead of 42.

Yes, that's what I was arguing for back in 2018.  However, I was put in
the minority by a number of wise people:

  - David argued that the whole point of DTLS is to use a standard DTLS
    stack, and some DTLS stacks don't support using a single port for both
    encrypted an cleartext traffic;
  - David pointed out that Apple's DTLS implementation doesn't support
    this mode of operation;
  - Donald added that it is usual for IETF protocols to use separate ports.

If the above points no longer stand, then please explain what has changed
since 2018.

If these points still stand, then it is our duty to make the right
technical decision, IANA's impotence notwithstanding.  We have a number of
options:

  - go speak with IANA again, stating clearly that using distinct ports
    reflects WG consensus;
  - should that fail, we could use an ephemeral port for DTLS, announce it
    as a sub-TLV of multicast Hello (recall that DTLS uses unicast only);
  - should that be considered to fragile, we can publish the draft with no
    port assignment, and have implementations squat an unallocated port.

> What are people's thoughts?

None that can be expressed without profanity.

(Please have a look at the IANA UDP port registry -- thousands of ports
have been allocated to completely undocumented obscure protocols, and
they're refusing to allocate a single port for a standards track document?)

-- Juliusz