Re: [Netconf] subscription-id management across applications

"Eric Voit (evoit)" <evoit@cisco.com> Tue, 10 July 2018 00:39 UTC

Return-Path: <evoit@cisco.com>
X-Original-To: netconf@ietfa.amsl.com
Delivered-To: netconf@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id 3EEC2127148 for <netconf@ietfa.amsl.com>; Mon, 9 Jul 2018 17:39:36 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -14.51
X-Spam-Level:
X-Spam-Status: No, score=-14.51 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, RCVD_IN_DNSWL_HI=-5, SPF_PASS=-0.001, T_DKIMWL_WL_HIGH=-0.01, URIBL_BLOCKED=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
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 5_he8dkPFONE for <netconf@ietfa.amsl.com>; Mon, 9 Jul 2018 17:39:33 -0700 (PDT)
Received: from alln-iport-1.cisco.com (alln-iport-1.cisco.com [173.37.142.88]) (using TLSv1.2 with cipher DHE-RSA-SEED-SHA (128/128 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id 39C6712F1AB for <netconf@ietf.org>; Mon, 9 Jul 2018 17:39:33 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=cisco.com; i=@cisco.com; l=2656; q=dns/txt; s=iport; t=1531183173; x=1532392773; h=from:to:cc:subject:date:message-id:references: in-reply-to:content-transfer-encoding:mime-version; bh=OclR6eymCZ8Cedkl+FTqgsVvmhtCpnF3SYP1TcwtfqY=; b=CxyTFMITghILTXU3hPJgwJO4M2TtMoHUXfpBJw/0H9nMYFtZd3nFxvbS IenhgT6sm95FyztCkO125yKbyK7dPi9aofsvx3tlNQlxTAfESKLtEUTNz 9oNumTrh7eChpdaZTPx82yB4EZeQ8IWp/J9id+fIBNCZPH3KYwMf5/VD6 o=;
X-IronPort-Anti-Spam-Filtered: true
X-IronPort-Anti-Spam-Result: A0DkAACm/0Nb/40NJK1ZAxkBAQEBAQEBAQEBAQEHAQEBAQGDSWJ/KAqLdIw1ggeVMoF6CxgLhANGAoJFITQYAQIBAQIBAQJtHAyFNgEBAQECAQEBODQLBQkCAgEIDgIIDREQGwwLJQIEAQ0FCIMZgXcID6tLiEyBNQUFiGmBVj+EHoFUgUQBAYFKNyaFDwKHQZIOCQKPGoFKhilQhSKRaQIREwGBJB04gVJwFTuCaYYzhGGFPm+NY4EaAQE
X-IronPort-AV: E=Sophos;i="5.51,332,1526342400"; d="scan'208";a="140801301"
Received: from alln-core-8.cisco.com ([173.36.13.141]) by alln-iport-1.cisco.com with ESMTP/TLS/DHE-RSA-AES256-GCM-SHA384; 10 Jul 2018 00:39:32 +0000
Received: from XCH-RTP-015.cisco.com (xch-rtp-015.cisco.com [64.101.220.155]) by alln-core-8.cisco.com (8.14.5/8.14.5) with ESMTP id w6A0dV9h013985 (version=TLSv1/SSLv3 cipher=AES256-SHA bits=256 verify=FAIL); Tue, 10 Jul 2018 00:39:32 GMT
Received: from xch-rtp-013.cisco.com (64.101.220.153) by XCH-RTP-015.cisco.com (64.101.220.155) with Microsoft SMTP Server (TLS) id 15.0.1320.4; Mon, 9 Jul 2018 20:39:31 -0400
Received: from xch-rtp-013.cisco.com ([64.101.220.153]) by XCH-RTP-013.cisco.com ([64.101.220.153]) with mapi id 15.00.1320.000; Mon, 9 Jul 2018 20:39:31 -0400
From: "Eric Voit (evoit)" <evoit@cisco.com>
To: Juergen Schoenwaelder <j.schoenwaelder@jacobs-university.de>, Andy Bierman <andy@yumaworks.com>
CC: Netconf <netconf@ietf.org>
Thread-Topic: [Netconf] subscription-id management across applications
Thread-Index: AQHUF5/APYUdQOKGUE6aKli9l6yD26SHWHQAgAAAtoCAAAJTAIAAPQiw
Date: Tue, 10 Jul 2018 00:39:31 +0000
Message-ID: <631ddde69d1345aa8fd697eabc0d8c85@XCH-RTP-013.cisco.com>
References: <CABCOCHTuSSKeoUwMBDRwtrQCfXD29xqM+n7xNtaNFMbZrE6Cjg@mail.gmail.com> <20180709163144.x3ltgh7spzbz26km@anna.jacobs.jacobs-university.de> <CABCOCHStZfsAPWN0sgTP_zcvSbhHU4832C_BvRjTYCFO_3aObg@mail.gmail.com> <20180709164236.pxoegcmb7emszhn4@anna.jacobs.jacobs-university.de>
In-Reply-To: <20180709164236.pxoegcmb7emszhn4@anna.jacobs.jacobs-university.de>
Accept-Language: en-US
Content-Language: en-US
X-MS-Has-Attach:
X-MS-TNEF-Correlator:
x-ms-exchange-transport-fromentityheader: Hosted
x-originating-ip: [10.32.173.61]
Content-Type: text/plain; charset="us-ascii"
Content-Transfer-Encoding: quoted-printable
MIME-Version: 1.0
Archived-At: <https://mailarchive.ietf.org/arch/msg/netconf/K9tlahSUQZjHCp4BBaVDymI1RBU>
Subject: Re: [Netconf] subscription-id management across applications
X-BeenThere: netconf@ietf.org
X-Mailman-Version: 2.1.27
Precedence: list
List-Id: Network Configuration WG mailing list <netconf.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/netconf>, <mailto:netconf-request@ietf.org?subject=unsubscribe>
List-Archive: <https://mailarchive.ietf.org/arch/browse/netconf/>
List-Post: <mailto:netconf@ietf.org>
List-Help: <mailto:netconf-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/netconf>, <mailto:netconf-request@ietf.org?subject=subscribe>
X-List-Received-Date: Tue, 10 Jul 2018 00:39:37 -0000

> Juergen Schoenwaelder, , July 9, 2018 12:43 PM
> 
> On Mon, Jul 09, 2018 at 09:34:17AM -0700, Andy Bierman wrote:
> > On Mon, Jul 9, 2018 at 9:31 AM, Juergen Schoenwaelder <
> > j.schoenwaelder@jacobs-university.de> wrote:
> >
> > > On Mon, Jul 09, 2018 at 09:12:57AM -0700, Andy Bierman wrote:
> > > > Hi,
> > > >
> > > > The configured subscriptions use a uint32 subscription-id.
> > > > There is text in 5.2 about splitting the range for dynamic and
> > > > configured
> > > > subscriptions:
> > > >
> > > >    To support deployments including both configured and dynamic
> > > >    subscriptions, it is recommended to split subscription identifiers
> > > >    into static and dynamic halves.  That way it eliminates the
> > > >    possibility of collisions if the configured subscriptions attempt to
> > > >    set a subscription-id which might have already been dynamically
> > > >    allocated.  A best practice is to use lower half the "identifier"
> > > >    object's integer space when that "identifier" is assigned by an
> > > >    external entity (such as with a configured subscription).  This
> > > >    leaves the upper half of subscription identifiers available to be
> > > >    dynamically assigned by the publisher.
> > >
> > > Why would a server accept a dynamic subscription that clashes with a
> > > configured subscription?
> > >
> > >
> > I don't think it would.
> > The issue is how applications share the range allocated for configured
> > subscriptions.
> 
> This is not how I read the text. Splitting between dynamic and configured does
> not solve the problem you think needs to be solved.
> The problem, which I think the text hints at, is a situation where a saved
> configuration cannot be restored due to dynamic subscriptions clashing. To
> avoid this, separating the number spaces for configured and dynamic
> subscriptions may be a good idea.

Yes this was part of the thinking.
 
> I think applications creating subscriptions should coordinate by picking random
> values and being prepared to handle a failure if the randomly picked value is
> already taken. Given the number space, clashes should be rare.

Yes this is a valid way to implement.

Eric
 
> /js
> 
> --
> Juergen Schoenwaelder           Jacobs University Bremen gGmbH
> Phone: +49 421 200 3587         Campus Ring 1 | 28759 Bremen | Germany
> Fax:   +49 421 200 3103         <https://www.jacobs-university.de/>
> 
> _______________________________________________
> Netconf mailing list
> Netconf@ietf.org
> https://www.ietf.org/mailman/listinfo/netconf