Re: [OPSAWG] Benjamin Kaduk's Discuss on draft-ietf-opsawg-l3sm-l3nm-11: (with DISCUSS)

mohamed.boucadair@orange.com Tue, 28 September 2021 07:00 UTC

Return-Path: <mohamed.boucadair@orange.com>
X-Original-To: opsawg@ietfa.amsl.com
Delivered-To: opsawg@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id 521393A20AA; Tue, 28 Sep 2021 00:00:30 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -2.099
X-Spam-Level:
X-Spam-Status: No, score=-2.099 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, RCVD_IN_MSPIKE_H2=-0.001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001, UNPARSEABLE_RELAY=0.001, URIBL_BLOCKED=0.001] autolearn=ham autolearn_force=no
Authentication-Results: ietfa.amsl.com (amavisd-new); dkim=pass (2048-bit key) header.d=orange.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 fYixKe6DyiFZ; Tue, 28 Sep 2021 00:00:24 -0700 (PDT)
Received: from relais-inet.orange.com (relais-inet.orange.com [80.12.70.34]) (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 CEFFD3A20A4; Tue, 28 Sep 2021 00:00:23 -0700 (PDT)
Received: from opfednr04.francetelecom.fr (unknown [xx.xx.xx.68]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (2048 bits)) (No client certificate requested) by opfednr23.francetelecom.fr (ESMTP service) with ESMTPS id 4HJVkr5SHrz5wkj; Tue, 28 Sep 2021 09:00:20 +0200 (CEST)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=orange.com; s=ORANGE001; t=1632812420; bh=5roRtUH93SQbba4CtgdjcET+Qnk0mv7EJu/ikcLvOlo=; h=From:To:Subject:Date:Message-ID:Content-Type: Content-Transfer-Encoding:MIME-Version; b=dkTVzIuSGGaudx/gi+rmDpEN7aB4wx4RTD/TQYFEEZBQ5ERaz0WzS4fuL3oPCHPSk da/6EhF/nzLxLTg3EboSpe6CBmqxEH36zc0k2oDvvSP8qlWd/56Tenf4aqWL519d54 mqLc9antQDmGp4LRnoDVZViDmhls8OrPckmpHRA2mzYzgLrLMf2USTCym5YNLOUt7t OGkE8U44001taLEFhfrvIyiw5URatRKQo8gF8G4jp4DgjXooeF4N+UORbEkJ1rWm3t bvwyL9FEdcSFMgoXLlz5CSKGzCqu8L3tUfAroq0iUpOUfWiTdDs9KZDwehgu9Y50jb 8B4M3iWU17Mdw==
Received: from Exchangemail-eme6.itn.ftgroup (unknown [xx.xx.13.48]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-SHA (256/256 bits)) (No client certificate requested) by opfednr04.francetelecom.fr (ESMTP service) with ESMTPS id 4HJVkr3f3Dz1xpb; Tue, 28 Sep 2021 09:00:20 +0200 (CEST)
From: mohamed.boucadair@orange.com
To: Benjamin Kaduk <kaduk@mit.edu>
CC: The IESG <iesg@ietf.org>, "draft-ietf-opsawg-l3sm-l3nm@ietf.org" <draft-ietf-opsawg-l3sm-l3nm@ietf.org>, "opsawg-chairs@ietf.org" <opsawg-chairs@ietf.org>, "opsawg@ietf.org" <opsawg@ietf.org>, "adrian@olddog.co.uk" <adrian@olddog.co.uk>
Thread-Topic: Benjamin Kaduk's Discuss on draft-ietf-opsawg-l3sm-l3nm-11: (with DISCUSS)
Thread-Index: AQHXs/qi6DxH34ZQ2EmP+AktPIUUAau4/6mw
Date: Tue, 28 Sep 2021 07:00:18 +0000
Message-ID: <30177_1632812420_6152BD84_30177_10_6_787AE7BB302AE849A7480A190F8B93303540DFB6@OPEXCAUBMA2.corporate.adroot.infra.ftgroup>
References: <1127_1632473552_614D91D0_1127_318_1_787AE7BB302AE849A7480A190F8B93303540B979@OPEXCAUBMA2.corporate.adroot.infra.ftgroup> <20210927235103.GI98042@kduck.mit.edu>
In-Reply-To: <20210927235103.GI98042@kduck.mit.edu>
Accept-Language: fr-FR, en-US
Content-Language: fr-FR
X-MS-Has-Attach:
X-MS-TNEF-Correlator:
x-originating-ip: [10.114.13.247]
Content-Type: text/plain; charset="iso-8859-1"
Content-Transfer-Encoding: quoted-printable
MIME-Version: 1.0
Archived-At: <https://mailarchive.ietf.org/arch/msg/opsawg/ytrV7HPkFhtGbtJhblvML1FMEWM>
Subject: Re: [OPSAWG] Benjamin Kaduk's Discuss on draft-ietf-opsawg-l3sm-l3nm-11: (with DISCUSS)
X-BeenThere: opsawg@ietf.org
X-Mailman-Version: 2.1.29
Precedence: list
List-Id: OPSA Working Group Mail List <opsawg.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/opsawg>, <mailto:opsawg-request@ietf.org?subject=unsubscribe>
List-Archive: <https://mailarchive.ietf.org/arch/browse/opsawg/>
List-Post: <mailto:opsawg@ietf.org>
List-Help: <mailto:opsawg-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/opsawg>, <mailto:opsawg-request@ietf.org?subject=subscribe>
X-List-Received-Date: Tue, 28 Sep 2021 07:00:32 -0000

Hi Ben, 

Please see inline. 

Cheers,
Med

> -----Message d'origine-----
> De : Benjamin Kaduk <kaduk@mit.edu>
> Envoyé : mardi 28 septembre 2021 01:51
> À : BOUCADAIR Mohamed INNOV/NET <mohamed.boucadair@orange.com>
> Cc : The IESG <iesg@ietf.org>; draft-ietf-opsawg-l3sm-l3nm@ietf.org;
> opsawg-chairs@ietf.org; opsawg@ietf.org; adrian@olddog.co.uk
> Objet : Re: Benjamin Kaduk's Discuss on draft-ietf-opsawg-l3sm-l3nm-11:
> (with DISCUSS)
> 
> Hi Med,
> 
> Sorry for not getting back to you last week -- I had to shift gears
> immediately after the telechat to another project.
> 
> Also inline...
> 
> On Fri, Sep 24, 2021 at 08:52:30AM +0000, mohamed.boucadair@orange.com
> wrote:
> > Hi Ben,
> >
> > (focusing on the DISCUSS part)
> >
> > Many thanks for the review. Much appreciated as usual.
> >
> > Please see inline.
> >
> > Cheers,
> > Med
> >
> > > -----Message d'origine-----
> > > De : Benjamin Kaduk via Datatracker [mailto:noreply@ietf.org] Envoyé
> > > : jeudi 23 septembre 2021 10:45 À : The IESG <iesg@ietf.org> Cc :
> > > draft-ietf-opsawg-l3sm-l3nm@ietf.org; opsawg-chairs@ietf.org;
> > > opsawg@ietf.org; adrian@olddog.co.uk; adrian@olddog.co.uk Objet :
> > > Benjamin Kaduk's Discuss on draft-ietf-opsawg-l3sm-l3nm-11:
> > > (with DISCUSS and COMMENT)
> > >
> > > Benjamin Kaduk has entered the following ballot position for
> > > draft-ietf-opsawg-l3sm-l3nm-11: Discuss
> > >
> > > When responding, please keep the subject line intact and reply to
> > > all email addresses included in the To and CC lines. (Feel free to
> > > cut this introductory paragraph, however.)
> > >
> > >
> > > Please refer to https://www.ietf.org/blog/handling-iesg-ballot-
> > > positions/
> > > for more information about how to handle DISCUSS and COMMENT
> positions.
> > >
> > >
> > > The document, along with other ballot positions, can be found here:
> > > https://datatracker.ietf.org/doc/draft-ietf-opsawg-l3sm-l3nm/
> > >
> > >
> > >
> > > --------------------------------------------------------------------
> > > --
> > > DISCUSS:
> > > --------------------------------------------------------------------
> > > --
> > >
> > > (1) I think there may be some ambiguity we need to resolve, relating
> > > to per-AF router IDs and other per-AF lists:
> > >
> > >                    list router-id {
> > >                      key "address-family";
> > >                      description
> > >                        "Router-id per address family.";
> > >                      leaf address-family {
> > >                        type identityref {
> > >                          base vpn-common:address-family;
> > >                        }
> > >                        description
> > >                          "Indicates the address family for which the
> > >                           Router-ID applies.";
> > >
> > > What actually gets used as the router-id for a given address family
> > > if both "dual-stack" and that address family are present in this list?
> > >
> >
> > [[Med]] If the same is used for both, then it is unlikely that the
> router-id will be included under active-vpn-isntance-profile. I understand
> that you want to catch corner cases where both are provided. I added this
> NEW general note in Section 7.1:
> 
> Exactly, just want to resolve the corner case.  The proposal below (as in
> the -13) does so nicely; thanks.
> 
> > NEW:
> >    Some of the data nodes are keyed by the address-family.  For the sake
> >    of data representation compactness, It is RECOMMENDED to use the
> >    dual-stack address-family for data nodes that have the same value for
> >    both IPv4 and IPv6.  If, for some reasons, a data node is present for
> >    both dual-stack and IPv4 (or IPv6), the value that is indicated under
> >    dual-stack takes precedence over the one that is indicated under IPv4
> >    (or IPv6).
> >
> > For the particular case of router-id, the general case is that the value
> indicated under active-vpn-isntance-profile takes precedence. To make it
> explicit (and in addition to the NEW text above), I made this change as
> well:
> >
> > OLD:
> >       The structure of 'active-
> >       vpn-instance-profiles' is the same as the one discussed in
> >       Section 7.4 except 'router-id'.  Indeed, Router IDs can be
> >       configured per address family.  This capability can be used, for
> >       example, to configure an IPv6 address as a Router ID when such
> >       capability is supported by involved routers.
> >
> > NEW:
> >       The value of 'router-id'
> >       indicated under 'active-vpn-instance-profiles' takes precedence
> >       over the 'router-id' under the 'vpn-node' for the indicated
> address
> >       family.  For example, Router IDs can be configured per address
> >       family.  This capability can be used, for example, to configure an
> >       IPv6 address as a Router ID when such capability is supported by
> >       involved routers.
> >
> >
> > > There's some similar potential for amiguity in the "redistribute-
> > > connected" list for BGP routing, that is also keyed on an
> > > address-family identityref.
> >
> > [[Med]] I think this is covered by the NEW text above.
> >
> > >
> > > (2) In a similar vein as Roman's Discuss (and perhaps obviated by
> > > it?), if we're going to allow raw keys to be specified, as a string
> > > type
> >
> > [[Med]] As already clarified in the reply to Roman, we are just echoing
> what is supported in the device models (already provided the reference
> list in that reply). This is meant to ease mapping with these modules.
> 
> Ok.  I might consider a different phrasing than "in ASCII format" for the
> individual YANG stanzas (though I recognize there is precedent for it in
> what RFC 8695 did), since just that wording without the extra note in the
> security considerations might still be confusing to readers (i.e.,
> including me).  Perhaps something like "This model only supports the
> subset of keys that are representable as ASCII strings."

[Med] Sure. Fixed. 

> 
> > , we
> > > should be very clear about whether the string is hex-encoded,
> > > base64- encoded, etc., in light of deployed experience with devices
> > > that take the string and use it as the raw key (thereby eliminating
> > > a good chunk of the key space from potential use).
> >
> > [[Med]] The keys are in ASCII format for the RIP case, for example. Are
> you seeking to echo such details in the network model?
> 
> Yes.  I want someone who sees a leaf of type "string" in this model to
> know exactly how to interface that string with the cryptographic
> operations, whether that's "pass it as is" or "base64 decode" or
> otherwise.  The text in the -13 implies "pass it as is", which is
> unfortunate for the reasons noted in the -13, but does resolve any
> potential ambiguity.

[Med] Thanks.

> 
> > >
> > > (2.5) For raw keys, should we be using nacm:default-deny-all?
> >
> > [[Med]] This was also a comment raised by Dhruv in the WGLC. But there
> is no strict rule to follow here. The reason why we didn't in the L3NM is
> that the corresponding device modules (RIP, IS-IS) does not use it and
> that manipulating L3NM will require anyway specific right privileges that
> are handled by NACM model cited in security considerations.
> 
> Okay, if the WG considered this topic already I don't think I have more to
> add.  Thanks for confirming.
> 
> > >
> > > (3) the ipsec authentication option for the various routing
> > > protocols uses a string to identify an (IKE, unspecified version
> > > thereof) SA.  RFC
> > > 7296 doesn't have the concept of a name for an IKE SA itself, so I
> > > think we need to provide more details on what is being named and
> > > what the naming authority is.  IKE does have identities for the
> > > peers, if the goal is to refer to the peer's identity for the SA.
> >
> > [[Med]] We trusted what was already provided and reviewed in recent
> RFCs. For example, we are basically echoing what was in RFC9129:
> >
> >           leaf sa {
> >               type string;
> >               description
> >                 "Name of the Security Association (SA).";
> >           }
> 
> It seems that I asked a similar question on the draft that will become
> 9129, and it was only partially answered (search for "4552"):
> https://mailarchive.ietf.org/arch/msg/lsr/fZGHWrNxQjXSDEJk3YpH8QvWt7Q/
> 
> So, they must be human-readable because they are to be configured, but the
> question of how the names are assigned and where this is to be discussed
> seems to have slipped through the cracks.
> 
> > Note that, for example, RFC9061 indexes the Security Association
> Database (SAD) by a name:
> >
> >        container sad {
> >          description
> >            "Configuration of the IPsec Security Association
> >             Database (SAD).";
> >          reference
> >            "RFC 4301: Security Architecture for the Internet Protocol,
> >                       Section 4.4.2.1.";
> >          list sad-entry {
> >            key "name";
> >            ordered-by user;
> >            leaf name {
> >              type string;
> >              description
> >                "SAD-entry-unique name to identify this
> >                 entry.";
> >            }
> >         ...
> 
> Sure, and having hame be the list key, with ordered-by: user, is pretty
> indicative that these are arbitrary strings assigned by the administrator.
> 
> What can we do in this module to provide a similar indication?
> What about description: "Indicates the administrator-assigned name for the
> SA."?

[Med] That was the intent. Works for me. Thanks. 

> 
> > >
> > > (4) I'd also like to have a discussion about the NTP configuration
> > > options; in particular, we currently have an enumeration to select
> > > between broadcast client and broadcast server, with no option
> > > apparent for symmetric or other NTP modes.  Given the rigidity of
> > > YANG enumerations, I'd like to confirm that no other NTP modes could
> > > be appropriate on the network access before we lock in to this model.
> > >
> > >
> >
> > [[Med]] We spent many cycles on the NTP case before deciding to
> integrate it into the module as this is needed for specific VPNs
> (infrastructure VPNs, as mentioned in the I-D). For these deployments,
> only the two modes enumerated in the I-D are supported (see, e.g.,
> https://documentation.nokia.com/html/0_add-h-f/93-0076-10-
> 01/7750_SR_OS_Services_Guide/services_con_vprn.html (search for "NTP
> Within a VPRN Service"). Enumeration seems appropriate to us here.
> 
> Thanks for the extra information.  This still seems like an unneeded
> omission to me, but in light of the scope of this module and the need to
> make compromises to provide something workable while remaining of somewhat
> general applicability, I can migrate it to just a COMMENT-level remark.
> 
> -Ben

_________________________________________________________________________________________________________________________

Ce message et ses pieces jointes peuvent contenir des informations confidentielles ou privilegiees et ne doivent donc
pas etre diffuses, exploites ou copies sans autorisation. Si vous avez recu ce message par erreur, veuillez le signaler
a l'expediteur et le detruire ainsi que les pieces jointes. Les messages electroniques etant susceptibles d'alteration,
Orange decline toute responsabilite si ce message a ete altere, deforme ou falsifie. Merci.

This message and its attachments may contain confidential or privileged information that may be protected by law;
they should not be distributed, used or copied without authorisation.
If you have received this email in error, please notify the sender and delete this message and its attachments.
As emails may be altered, Orange is not liable for messages that have been modified, changed or falsified.
Thank you.