Re: [netmod] Adoption poll for draft-wu-netmod-factory-default-02

"Joe Clarke (jclarke)" <> Thu, 09 May 2019 14:27 UTC

Return-Path: <>
Received: from localhost (localhost []) by (Postfix) with ESMTP id 93ED0120116 for <>; Thu, 9 May 2019 07:27:35 -0700 (PDT)
X-Virus-Scanned: amavisd-new at
X-Spam-Flag: NO
X-Spam-Score: -14.51
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, HTML_MESSAGE=0.001, RCVD_IN_DNSWL_HI=-5, SPF_PASS=-0.001, T_DKIMWL_WL_MED=-0.01, USER_IN_DEF_DKIM_WL=-7.5] autolearn=ham autolearn_force=no
Authentication-Results: (amavisd-new); dkim=pass (1024-bit key)
Received: from ([]) by localhost ( []) (amavisd-new, port 10024) with ESMTP id 0GHXq8gS00rc for <>; Thu, 9 May 2019 07:27:33 -0700 (PDT)
Received: from ( []) (using TLSv1.2 with cipher DHE-RSA-SEED-SHA (128/128 bits)) (No client certificate requested) by (Postfix) with ESMTPS id 1025E12016C for <>; Thu, 9 May 2019 07:27:25 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple;;; l=12634; q=dns/txt; s=iport; t=1557412045; x=1558621645; h=from:to:cc:subject:date:message-id:references: in-reply-to:mime-version; bh=w8jKxENVpYGxxI3GJuwKss1t9Tf3Fy3T2jTA9X/IvMI=; b=TmXR6HhuQb5tHFk2ad4mffB5iCSdlRt/A5swKPjOdh2pyRKnfx0etiJH XGakebdh6VgnmTZbv1pT1MiTXky6j0+fAzgG+4q5M88ikiSFLsJAf9E11 RdqPdtr1PYJUih1r2AI3wsDqu0v4txc5BuuGk4p+1K8zC9LKfAx8i28fn 4=;
X-IronPort-Anti-Spam-Filtered: true
X-IronPort-Anti-Spam-Result: =?us-ascii?q?A0ALAADYN9Rc/51dJa1kGgEBAQEBAgE?= =?us-ascii?q?BAQEHAgEBAQGBUwMBAQEBCwGBDoECgT0wMoQHp24IhXsUgWcJAQEBDAEBLwE?= =?us-ascii?q?BhEACF4FxIzYHDgEDAQEEAQECAQRtKIVLBiNWEAIBCA40AgICMCUBAQQOgye?= =?us-ascii?q?BHm2tOYEvgk+CeIRtgTIBi04XgUA/gTgfgkw+hB0QAYMgMoImBIsZgj6ETZU?= =?us-ascii?q?hCQKCCZJUG4IQijWJFKEcAhEVgTAlATGBV3AVOyoBgkKQUEGNa4ExgSEBAQ?=
X-IronPort-AV: E=Sophos;i="5.60,450,1549929600"; d="scan'208,217";a="545630415"
Received: from ([]) by with ESMTP/TLS/DHE-RSA-SEED-SHA; 09 May 2019 14:27:24 +0000
Received: from ( []) by (8.15.2/8.15.2) with ESMTPS id x49EROUR021036 (version=TLSv1.2 cipher=AES256-SHA bits=256 verify=FAIL); Thu, 9 May 2019 14:27:24 GMT
Received: from ( by ( with Microsoft SMTP Server (TLS) id 15.0.1473.3; Thu, 9 May 2019 09:27:23 -0500
Received: from ([]) by ([]) with mapi id 15.00.1473.003; Thu, 9 May 2019 09:27:23 -0500
From: "Joe Clarke (jclarke)" <>
To: Qin Wu <>
CC: Kent Watsen <>, "" <>
Thread-Topic: [netmod] Adoption poll for draft-wu-netmod-factory-default-02
Thread-Index: AdUEdfEQIxalS4tFStC28aN3YVk9+ACJ0juA
Date: Thu, 9 May 2019 14:27:23 +0000
Message-ID: <>
References: <>
In-Reply-To: <>
Accept-Language: en-US
Content-Language: en-US
x-ms-exchange-messagesentrepresentingtype: 1
x-ms-exchange-transport-fromentityheader: Hosted
x-originating-ip: []
Content-Type: multipart/alternative; boundary="_000_44CC722E8CCC4FFC99BB5412A0C03964ciscocom_"
MIME-Version: 1.0
Archived-At: <>
Subject: Re: [netmod] Adoption poll for draft-wu-netmod-factory-default-02
X-Mailman-Version: 2.1.29
Precedence: list
List-Id: NETMOD WG list <>
List-Unsubscribe: <>, <>
List-Archive: <>
List-Post: <>
List-Help: <>
List-Subscribe: <>, <>
X-List-Received-Date: Thu, 09 May 2019 14:27:35 -0000

First, the term “YANG server” sounds odd to me.  I know what you mean, but I haven’t seen this defined before.  Maybe just saying a device or host is sufficient?

[Qin]: Right, “host”, in my opinion, is not a term used in the context of NETCONF, it is also usually referred to end device in many cases, I prefer to use device. The device should have YANG capability.

Seems like suggestions from Martin and Jürgen will sort this out.

When you talk about the datastore to be reset, you list <running>, <startup>, and <candidate>.  You state that each will receive the contents of <factory-default>.  The <candidate> DS wouldn’t need that.  I think it would just be zeroed out.

[Qin]: I have no strong opinion for this, <candidate> is also part of read-write configuration datastores, we could reset <candidate>, but I think it is not recommended based on what you say.

That’s my point.  I don’t think you want to really do anything with <candidate>.  Resetting <startup> and for runtime, <running> would seem to be sufficient (modulo other DSes the system may support).

I think the RPC should reset any and all non-derived read-write datastores and not imply that a specific DS’s contents (i.e., the factory-default DS) is copied to them.  This way, other DSes would just be handled by this RPC based on implementation.  The <factory-default> can exist as the factory default contents for <startup>.
[Qin]: We have decoupled <factory-reset> rpc from <factory-default> datastore, since <factory-default> datastore is defined as optional datastore in the current version, <factory-default> content can be specified in many different ways, not limited to take content of <factory-default> datastore.
Also <factory-default> content is referred to preconfigured initial configuration that can be used to initialize the configuration of a server.
These will address your comment.

You still mention that you copy these contents as part of the RPC (or maybe I misread).  This is what led to my confusion.