Re: [Netmod-ver-dt] Version selection

"Joe Clarke (jclarke)" <jclarke@cisco.com> Wed, 23 October 2019 20:50 UTC

Return-Path: <jclarke@cisco.com>
X-Original-To: netmod-ver-dt@ietfa.amsl.com
Delivered-To: netmod-ver-dt@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id 0203C120100 for <netmod-ver-dt@ietfa.amsl.com>; Wed, 23 Oct 2019 13:50:59 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -14.5
X-Spam-Level:
X-Spam-Status: No, score=-14.5 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, HTML_MESSAGE=0.001, RCVD_IN_DNSWL_HI=-5, SPF_PASS=-0.001, USER_IN_DEF_DKIM_WL=-7.5] autolearn=ham autolearn_force=no
Authentication-Results: ietfa.amsl.com (amavisd-new); dkim=pass (1024-bit key) header.d=cisco.com header.b=mMYfcU9e; dkim=pass (1024-bit key) header.d=cisco.onmicrosoft.com header.b=LIVvizLZ
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 lOB1G0wlMU6U for <netmod-ver-dt@ietfa.amsl.com>; Wed, 23 Oct 2019 13:50:56 -0700 (PDT)
Received: from rcdn-iport-2.cisco.com (rcdn-iport-2.cisco.com [173.37.86.73]) (using TLSv1.2 with cipher DHE-RSA-SEED-SHA (128/128 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id 8798E1200EC for <netmod-ver-dt@ietf.org>; Wed, 23 Oct 2019 13:50:56 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=cisco.com; i=@cisco.com; l=14147; q=dns/txt; s=iport; t=1571863856; x=1573073456; h=from:to:cc:subject:date:message-id:references: in-reply-to:mime-version; bh=5d7NHiLaGG++Vw1Ux5Z1nRh0n+9exXhu/ENTglvmUno=; b=mMYfcU9enU/6tceWW6bD67Ofjh3zeIvLKHLGZm/8Jn562eR/MZqv/qrv 1eID2zTw6h80nBh0sWqM841YwBLiA5k5Bx6vCwYMox1AKdJoULwuZErLw 47fWlh3HtTzwb44yC8Spj0iLi1nTyTEGydblnKS0xoD8VI6hhxiXLa5eb 4=;
IronPort-PHdr: 9a23:e5M68RaR3quBUIyUHWuHlyX/LSx94ef9IxIV55w7irlHbqWk+dH4MVfC4el20gebRp3VvvRDjeee87vtX2AN+96giDgDa9QNMn1NksAKh0olCc+BB1f8KavoZCgzBsdPfFRk5Hq8d0NSHZW2ag==
X-IronPort-Anti-Spam-Filtered: true
X-IronPort-Anti-Spam-Result: A0AZAADVu7Bd/5BdJa1lGwEBAQEBAQEFAQEBEQEBAwMBAQGBZwYBAQELAYEbL1AFgUMgBAsWFAqEHYNHA4RYhgKWAIRhgS6BJANUCQEBAQwBAS0CAQGEQAIXgx0kNAkOAgMJAQEEAQEBAgEFBG2FNwyFUQIBAxIRHQEBKQ4BDwIBBgI/AwICAjAUEQIEDgUigwCBek0DLgGXTpBiAoE4iGF1gTKCfgEBBYJJgkIYghcJgTYBjA4YgUA/gTgfgkw+hC+DJjKCLI94hTokiQ+OfgqCJJUnG4I7h1SPQY91mAkCBAIEBQIOAQEFgVI5gVhwFTsqAYJBUBAUgwaDc4pTdIEpjXoBgSkBAQ
X-IronPort-AV: E=Sophos;i="5.68,222,1569283200"; d="scan'208,217";a="655083996"
Received: from rcdn-core-8.cisco.com ([173.37.93.144]) by rcdn-iport-2.cisco.com with ESMTP/TLS/DHE-RSA-SEED-SHA; 23 Oct 2019 20:50:55 +0000
Received: from XCH-ALN-011.cisco.com (xch-aln-011.cisco.com [173.36.7.21]) by rcdn-core-8.cisco.com (8.15.2/8.15.2) with ESMTPS id x9NKot8M011594 (version=TLSv1.2 cipher=AES256-SHA bits=256 verify=FAIL) for <netmod-ver-dt@ietf.org>; Wed, 23 Oct 2019 20:50:55 GMT
Received: from xhs-rtp-003.cisco.com (64.101.210.230) by XCH-ALN-011.cisco.com (173.36.7.21) with Microsoft SMTP Server (TLS) id 15.0.1473.3; Wed, 23 Oct 2019 15:50:54 -0500
Received: from xhs-rtp-001.cisco.com (64.101.210.228) by xhs-rtp-003.cisco.com (64.101.210.230) with Microsoft SMTP Server (TLS) id 15.0.1473.3; Wed, 23 Oct 2019 16:50:53 -0400
Received: from NAM05-BY2-obe.outbound.protection.outlook.com (64.101.32.56) by xhs-rtp-001.cisco.com (64.101.210.228) with Microsoft SMTP Server (TLS) id 15.0.1473.3 via Frontend Transport; Wed, 23 Oct 2019 16:50:53 -0400
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=la2/wzYWMohGmDFF06bMbhqTRo+oH8SzFvclZbt9ECrXnz/UkNo2WQoWtpzNmKDyzTWjZ2Mn7qjPkDub4/BTvlSHOeHbRUkHpu7UbCGhLkmle6v2CV/g/wmD44Zr8xlXkPIipN/q1hq+OqR5DUalU9KMo9A8BWypjghUdw5C4IusUHrN4n1jFCbDiV8/avB3TUXGSWgM2p+ItYEjmGpymz6XvAr1mXZyW8aFZY0LCHI8PIRRvMowQ6WWKjVItl5gV14pREFqfJaLBY4DkLDjjdNii16F6QzGdGOqwY8j79DECQ7To50zJtKfyMR0X5zHTAaeCvlerYo24W/pSwNS6g==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=5d7NHiLaGG++Vw1Ux5Z1nRh0n+9exXhu/ENTglvmUno=; b=TydR2+ubRQejkGYD3wxoK8LeaQc212jJ51U1TY52CbUOI7TGZtuIjrZCP+L3Jwc71+fLcDKH6M7JIAxJGe2eURk//UK8hPiBl/dM6O2b0aD/A4wXcv/s/B+NmcFtaVKVn+ERpfS6h9SdEqcptceqxhsHPzw2bE1MSYgk6cjQHtuZ8d9t1AUmxPLAvwHbOvH2rioS9nBNtuNraw0VcCGF7wW3ynuzdvRrLgNZn9TM2TYtgr+jYqXqpMslsKV/HQHKX2tV696bpqObU/G2TXJPkkKqLrp0uGz/9QvbpKae0BgnYrG68AbY+krks4ah3Ph00a1tYkBnaI4EYKEK6AHSBw==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=cisco.com; dmarc=pass action=none header.from=cisco.com; dkim=pass header.d=cisco.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=cisco.onmicrosoft.com; s=selector2-cisco-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=5d7NHiLaGG++Vw1Ux5Z1nRh0n+9exXhu/ENTglvmUno=; b=LIVvizLZuAFkeNA2WCsdzSepdGwgsXLyJVBraEf2zQRhIDDXPwuoOeHejpmf4HQ4TVItTOgL28HkUHjGHK5E1Vt2YS8tSJQ32Kk9g1XQJxqprb79lTiVq0AU62agfzuPrSCt3gtu+za5F4p3rB07ACXPrDXPvL/kd+CgnfzhJOc=
Received: from BN6PR11MB1667.namprd11.prod.outlook.com (10.172.23.12) by BN6PR11MB1428.namprd11.prod.outlook.com (10.172.21.15) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.2347.17; Wed, 23 Oct 2019 20:50:52 +0000
Received: from BN6PR11MB1667.namprd11.prod.outlook.com ([fe80::6591:258d:331a:e2f8]) by BN6PR11MB1667.namprd11.prod.outlook.com ([fe80::6591:258d:331a:e2f8%9]) with mapi id 15.20.2347.030; Wed, 23 Oct 2019 20:50:52 +0000
From: "Joe Clarke (jclarke)" <jclarke@cisco.com>
To: "Reshad Rahman (rrahman)" <rrahman@cisco.com>
CC: "netmod-ver-dt@ietf.org" <netmod-ver-dt@ietf.org>
Thread-Topic: [Netmod-ver-dt] Version selection
Thread-Index: AQHViQkOvI26xPMrfUK7KEA4CIpe+adotQgA
Date: Wed, 23 Oct 2019 20:50:51 +0000
Message-ID: <574B4CEA-3B6E-43D0-88DB-E2EE53CDC0DB@cisco.com>
References: <E1941124-CBFE-4522-9DB2-37F8C92D44FF@cisco.com>
In-Reply-To: <E1941124-CBFE-4522-9DB2-37F8C92D44FF@cisco.com>
Accept-Language: en-US
Content-Language: en-US
X-MS-Has-Attach:
X-MS-TNEF-Correlator:
authentication-results: spf=none (sender IP is ) smtp.mailfrom=jclarke@cisco.com;
x-originating-ip: [173.38.117.92]
x-ms-publictraffictype: Email
x-ms-office365-filtering-correlation-id: 5581a59d-244e-4c41-9fa6-08d757fab10c
x-ms-traffictypediagnostic: BN6PR11MB1428:
x-ms-exchange-transport-forked: True
x-microsoft-antispam-prvs: <BN6PR11MB1428116BEAE570C1C08ABFB1B86B0@BN6PR11MB1428.namprd11.prod.outlook.com>
x-ms-oob-tlc-oobclassifiers: OLM:9508;
x-forefront-prvs: 019919A9E4
x-forefront-antispam-report: SFV:NSPM; SFS:(10009020)(4636009)(39860400002)(136003)(396003)(366004)(346002)(376002)(199004)(189003)(5660300002)(6862004)(14454004)(186003)(33656002)(4326008)(26005)(102836004)(54896002)(446003)(476003)(11346002)(6512007)(486006)(236005)(2616005)(229853002)(71200400001)(37006003)(6486002)(6506007)(25786009)(66066001)(6246003)(478600001)(6436002)(86362001)(316002)(8936002)(71190400001)(6636002)(8676002)(81166006)(99286004)(81156014)(3846002)(6116002)(64756008)(66446008)(2906002)(7736002)(91956017)(66946007)(66476007)(66556008)(76116006)(76176011)(36756003)(14444005)(256004)(547064002); DIR:OUT; SFP:1101; SCL:1; SRVR:BN6PR11MB1428; H:BN6PR11MB1667.namprd11.prod.outlook.com; FPR:; SPF:None; LANG:en; PTR:InfoNoRecords; A:1; MX:1;
received-spf: None (protection.outlook.com: cisco.com does not designate permitted sender hosts)
x-ms-exchange-senderadcheck: 1
x-microsoft-antispam: BCL:0;
x-microsoft-antispam-message-info: tXXXe9pPSbiRG0JgW+gPI1GVdOrSwi+92vYeVK1j5gmwQ+xcNY1rpagJnbMARTxwCJebc1bqnmO4Eu6+RluhqajGHojfrVMEJJtS7EhYvuwTgpcq6XatydWN37K03hMdIg4gCfRhDFObGSAXmx7FGqGnEqtj92tY8QfZWNjmp+OWWOe31hlF+eAHdIqCG8n6fnxD3ZQr/y0GON+4EoJcN4QEJY72gCxgangvs8QExx3tRDlFUvt6TglimjgZqrKz15nxb4ieQqRHnfd/c7r5WlAuc1OjkJW3xqG0bjGEhLgsf0l2xiggCtwZWdxTQ+cz4wLEq3axz+z0mS9piy6YaJfrci5w8rGM9+sqMqjO13kxUm2Jpf/4xmHZqib7StKnw19NH8mdQYCUHwZ+lPW0eA5W6nsNibpa5zTf5kQ9DAHtXU7/ujJf1hLQJojMegyT
Content-Type: multipart/alternative; boundary="_000_574B4CEA3B6E43D088DBE2EE53CDC0DBciscocom_"
MIME-Version: 1.0
X-MS-Exchange-CrossTenant-Network-Message-Id: 5581a59d-244e-4c41-9fa6-08d757fab10c
X-MS-Exchange-CrossTenant-originalarrivaltime: 23 Oct 2019 20:50:51.8810 (UTC)
X-MS-Exchange-CrossTenant-fromentityheader: Hosted
X-MS-Exchange-CrossTenant-id: 5ae1af62-9505-4097-a69a-c1553ef7840e
X-MS-Exchange-CrossTenant-mailboxtype: HOSTED
X-MS-Exchange-CrossTenant-userprincipalname: 9TJSq0od+ejiFbiFAuYXtaBcNx/YgyJobuhJep56benNpxUYf2q5rftwOIiEKnyjeDFZ67g7QkfgeNu4BZKwug==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: BN6PR11MB1428
X-OriginatorOrg: cisco.com
X-Outbound-SMTP-Client: 173.36.7.21, xch-aln-011.cisco.com
X-Outbound-Node: rcdn-core-8.cisco.com
Archived-At: <https://mailarchive.ietf.org/arch/msg/netmod-ver-dt/idaBiufEMw6wWbG6HC047qqUTTs>
Subject: Re: [Netmod-ver-dt] Version selection
X-BeenThere: netmod-ver-dt@ietf.org
X-Mailman-Version: 2.1.29
Precedence: list
List-Id: NetMod WG YANG Model Versioning Design Team <netmod-ver-dt.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/netmod-ver-dt>, <mailto:netmod-ver-dt-request@ietf.org?subject=unsubscribe>
List-Archive: <https://mailarchive.ietf.org/arch/browse/netmod-ver-dt/>
List-Post: <mailto:netmod-ver-dt@ietf.org>
List-Help: <mailto:netmod-ver-dt-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/netmod-ver-dt>, <mailto:netmod-ver-dt-request@ietf.org?subject=subscribe>
X-List-Received-Date: Wed, 23 Oct 2019 20:50:59 -0000

  1.  NETCONF experts please take a look at the NETCONF update.

Not saying I’m an expert, but the RPC looks funny to me.  Why can’t the package by CDATA?  How will you define an element for each and every package?  That is, should the RPC look more like:

<rpc message-id="101"
             xmlns="urn:ietf:params:xml:ns:netconf:base:1.0">
          <select-package>
            <yang-package-version>
              example-ietf-routing@1.3.1
            </yang-package-version>
          </select-package>
        </rpc>

Also, I don’t see the RPC defined in the included YANG module.  Are you waiting for feedback before doing that?

One other thing I noticed is that you say the following in Section 5.1.2:

Used by a client to select a YANG package version which
   has been advertised by the server via the mechanism described above
   in Section 5.1.1.  The YANG package version is selected for the
   lifetime of the NETCONF session, unless a different version of the
   YANG package is subsequently selected via this operation.

Then later:

Negative response: An <rpc-error> element is included in the <rpc-
   reply> if the request cannot be completed for any reason.  A <select-
   package> operation can fail for a number of reasons, such as the YANG
   package version is not supported by the server, or a different
   version of the YANG package has already been selected by another
   client.

How can a different client affect the current client’s session?  Meaning, if you and I are two clients both operation on the same server and you first set your package version, and then I set mine, why would mine fail simply because you set yours?

Now, it may be that only one version of a package can be used at a time across the entire server, but then that would break the per-session semantics.


  1.
  2.  I’ve used @ as the separator for YANG package and version, e.g. example-ietf-routing@1.3.1<mailto:example-ietf-routing@1.3.1>, this is because @  cannot be in the revision-label and looks like it can’t be in the package-name either (pkg-identifier is of type yang:yang-identifier)

I’m fine with this notation.  I assume that whatever is in the “version” field of the package header would be used here?


  1.
  2.  Joe had raised the issue of default package version if none is selected. Any suggestions on how to advertise the default version(s) in capabilities, what about @D after the revision-label e.g. “example-ietf-routing@1.3.1<mailto:example-ietf-routing@1.3.1>@D”? Rob, I don’t think your YL extensions has default for YANG package versions right now?

Make it bold in the capabilities list? :-D

Could another delimiter be used after the version like ‘;’ and then you can have:

?list=example-ietf-routing@1.1.0,example-ietf-routing@2.0.0;default

Right now, we’ll have to make sure ‘,’ doesn’t exist in a revision-label.

Joe