[Netconf] subscription-id management across applications

Andy Bierman <andy@yumaworks.com> Mon, 09 July 2018 16:13 UTC

Return-Path: <andy@yumaworks.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 0BA25130E48 for <netconf@ietfa.amsl.com>; Mon, 9 Jul 2018 09:13:02 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -1.91
X-Spam-Level:
X-Spam-Status: No, score=-1.91 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, HTML_MESSAGE=0.001, RCVD_IN_DNSWL_NONE=-0.0001, SPF_PASS=-0.001, T_DKIMWL_WL_MED=-0.01] autolearn=ham autolearn_force=no
Authentication-Results: ietfa.amsl.com (amavisd-new); dkim=pass (2048-bit key) header.d=yumaworks-com.20150623.gappssmtp.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 FywQbItim0hD for <netconf@ietfa.amsl.com>; Mon, 9 Jul 2018 09:13:00 -0700 (PDT)
Received: from mail-lj1-x232.google.com (mail-lj1-x232.google.com [IPv6:2a00:1450:4864:20::232]) (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 3A986130E31 for <netconf@ietf.org>; Mon, 9 Jul 2018 09:13:00 -0700 (PDT)
Received: by mail-lj1-x232.google.com with SMTP id q127-v6so13906211ljq.11 for <netconf@ietf.org>; Mon, 09 Jul 2018 09:13:00 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=yumaworks-com.20150623.gappssmtp.com; s=20150623; h=mime-version:from:date:message-id:subject:to; bh=yseYfcbpRxKABsTbvHqQ+sLk8q5TPQuD9c5mdReSJ80=; b=U2AKOWZtgij4v92mTGjB10S1Zdq1gMjNQWlAPRAbskwSL3M9DlK1BliP2p27rd8dcn c/g/kTs/qQZhULGKc8+jI1CglB/FYhTXnvNPcnNxQKSYH1Pd71pyzS35508eWV1tw1T9 fMC5BTi/gqNnh+HUU7veDVV80wg3/DRZf38YCMkyfIMN15FIOXA6DLlsuTLmCgwlxvxy fuqIHvAymYFz222lRF/01mEIJSEaVF9fKvIwfVFkuXPFqfMwgwg3pW/4mhdx3c9guZ+v /DQzF2MkOTgXcauYRN6SZPYdWHfS8fSAg1is/PGR+/BXUfjy7s10JUdVatvRSszHS9Ki fBkg==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:from:date:message-id:subject:to; bh=yseYfcbpRxKABsTbvHqQ+sLk8q5TPQuD9c5mdReSJ80=; b=ZDfIvowZYm3r0fec8shw6eXt/MqWqahEjLeogscHZTCPVK7OldocEukaEpqmNud7lQ txckMz6Qng8hSlRGrF0erNxblHqKd5kyi9VJBtfqKQy7RcgP5DCjFqrnrQHjogsljoRh 9gmwpyCxJXs7vcs1+rEJLduY+8UxCERNS7N5TQaokvPWKrpc4dnpEXdHpP+5qHe0Rq7D bdBvPvMGzUOk3RXwbvgMeR3STPQ63tepTKQ9NuOgTzx3Illrv4VLIMjWcLHSAFb4Kxt3 Bp/LE6rzRwTqVikN5qanigULO8mGfEHS2imqUjZHWo16Ajvp6dNmHCxtTrNC2NSPs2LZ INXg==
X-Gm-Message-State: AOUpUlHzUNx0dR3KOPUnl5VUe+C8PPiOn25aXuY242xhmJ2sCAHrQA4u M/3xQKnxuMWG8cMSt44rmKqVo97rY+J/ic1VbVu+H00w
X-Google-Smtp-Source: AAOMgpfc24u2mbEtPqNKTiLfBr+5+mRq+/NqFl3qxi+yE4EytxfQTmYBUhQnw4p+sUtWYNoXZ4rkiCy/Ij/zzXs6+Tk=
X-Received: by 2002:a2e:3611:: with SMTP id d17-v6mr4691055lja.31.1531152777855; Mon, 09 Jul 2018 09:12:57 -0700 (PDT)
MIME-Version: 1.0
Received: by 2002:a19:aa46:0:0:0:0:0 with HTTP; Mon, 9 Jul 2018 09:12:57 -0700 (PDT)
From: Andy Bierman <andy@yumaworks.com>
Date: Mon, 09 Jul 2018 09:12:57 -0700
Message-ID: <CABCOCHTuSSKeoUwMBDRwtrQCfXD29xqM+n7xNtaNFMbZrE6Cjg@mail.gmail.com>
To: Netconf <netconf@ietf.org>
Content-Type: multipart/alternative; boundary="0000000000006be12f05709349bd"
Archived-At: <https://mailarchive.ietf.org/arch/msg/netconf/2Hm6aD7p429lt7MrTrHpQPdx0dM>
Subject: [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: Mon, 09 Jul 2018 16:13:02 -0000

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.


The draft does not say anything about how multiple independent applications
pick uint32 values that are not likely to collide with other applications.

Since configured subscriptions are expected to be usable by the client
the instant the NETCONF session is active, the app must be fairly sure
the hard-coded subscription-id values are really set correctly, and not
the IDs picked (and overwritten) by another application.


Andy