Re: [netconf] Private Candidates

Andy Bierman <andy@yumaworks.com> Tue, 01 November 2022 02:27 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 5B7FFC1522AF for <netconf@ietfa.amsl.com>; Mon, 31 Oct 2022 19:27:46 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -7.106
X-Spam-Level:
X-Spam-Status: No, score=-7.106 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, HTML_MESSAGE=0.001, RCVD_IN_DNSWL_HI=-5, RCVD_IN_ZEN_BLOCKED_OPENDNS=0.001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001, T_SCC_BODY_TEXT_LINE=-0.01, URIBL_DBL_BLOCKED_OPENDNS=0.001, URIBL_ZEN_BLOCKED_OPENDNS=0.001] autolearn=ham autolearn_force=no
Authentication-Results: ietfa.amsl.com (amavisd-new); dkim=pass (2048-bit key) header.d=yumaworks.com
Received: from mail.ietf.org ([50.223.129.194]) by localhost (ietfa.amsl.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id wtViJHRhyqCp for <netconf@ietfa.amsl.com>; Mon, 31 Oct 2022 19:27:42 -0700 (PDT)
Received: from mail-yw1-x1133.google.com (mail-yw1-x1133.google.com [IPv6:2607:f8b0:4864:20::1133]) (using TLSv1.3 with cipher TLS_AES_128_GCM_SHA256 (128/128 bits) key-exchange X25519 server-signature RSA-PSS (2048 bits) server-digest SHA256) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id 9D670C14CF06 for <netconf@ietf.org>; Mon, 31 Oct 2022 19:27:42 -0700 (PDT)
Received: by mail-yw1-x1133.google.com with SMTP id 00721157ae682-3701a0681daso90130727b3.4 for <netconf@ietf.org>; Mon, 31 Oct 2022 19:27:42 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=yumaworks.com; s=google; h=cc:to:subject:message-id:date:from:in-reply-to:references :mime-version:from:to:cc:subject:date:message-id:reply-to; bh=TNXW2E8y8XrbtXTiIq3cgbSTdUxR+ysm07WgIUJvtls=; b=q80vbcydMV4UVwQQ5JGvu6tQMZnsGWZOxdRLj5wQOBMvax/VarAsKxfU7rJHmvoZP/ kkWrrItHNkA2u0/Pv6Y8rldG6mjv63M8psrwrxxGPhhVcH3HFypU37ob38D+raeBAzS+ LdWw5zr2XhUa94E050TRS6d84impowvUqRfIIOegdQm2x9Wwh6SdKobcdQDL60a0fbE+ gdb0edr+QnX20bTfGjWs2gNtnzmz4kfeCKwI1exaJnkM1xBMEQzyamSDDiFZXmfBBDF0 cjP++mggVky7bZLqq7/1SfIvk+gy21Wpitnk8ZQ0MW3hSyRkc/tPGyL86ZxuGtyP3oE5 7btw==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=cc:to:subject:message-id:date:from:in-reply-to:references :mime-version:x-gm-message-state:from:to:cc:subject:date:message-id :reply-to; bh=TNXW2E8y8XrbtXTiIq3cgbSTdUxR+ysm07WgIUJvtls=; b=V/8n8nMaqveDE0JPWwRYWXCLgekJbD0OcwwynpO8WEsPjydT/dXsMNzUJwVdugQPFk DuCKDp20Guf7jErF82M3suQM0S9jshJcEZwPkARyXqjMjTaIBTruO0FnqDtKBJC4c1Rq QBEAk5EsXA153SW0k7XWcBW6Ci2DfGKzxdR64p4tjz/AIx9Ev8N6/jbSPm5TrRQ07Sxv PUyR+iZETL7k8+UDsHcHymy9maoPzOSK4GXs2kMacfPulGW4yLxCX7/eYu31RYjEsm/w ifaO4/la/m/K1uqxP0HX69mtL5vFtWebULGWdqev3EKwJg7JKg+zCzeG2CnuYii+2A5W KpvQ==
X-Gm-Message-State: ACrzQf1FmEDUp+nW2qZSj6TPUHAq5SfyFd3YRPxJjmPBl/+SovzdkmOh mVY1RyR2NBMLBPSE96ILB1a4QfSTb0KZcowgEfb9wA==
X-Google-Smtp-Source: AMsMyM5e+HKS3xu9jhMccjvS7x4lcWVusdiFo0G8gRvYfJBrRxjNBNFY4/02SlLJ5B+Gw7Fh6MoK8c6DfEYTJ0x7BLE=
X-Received: by 2002:a81:5bc6:0:b0:351:17e1:6297 with SMTP id p189-20020a815bc6000000b0035117e16297mr16194861ywb.433.1667269661628; Mon, 31 Oct 2022 19:27:41 -0700 (PDT)
MIME-Version: 1.0
References: <d7a070a5bd444597a01adb23b43ed05b@huawei.com>
In-Reply-To: <d7a070a5bd444597a01adb23b43ed05b@huawei.com>
From: Andy Bierman <andy@yumaworks.com>
Date: Mon, 31 Oct 2022 19:27:30 -0700
Message-ID: <CABCOCHRC=QQVXMS0=WvdtLk=3PnanjFDTXs0UPd-35iO620qDw@mail.gmail.com>
To: "Fengchong (frank)" <frank.fengchong=40huawei.com@dmarc.ietf.org>
Cc: "Cumming, James (Nokia - US)" <james.cumming@nokia.com>, "netconf@ietf.org" <netconf@ietf.org>
Content-Type: multipart/alternative; boundary="000000000000ed332605ec5f770f"
Archived-At: <https://mailarchive.ietf.org/arch/msg/netconf/OWao4GEro24c-hfb31posciLiqs>
Subject: Re: [netconf] Private Candidates
X-BeenThere: netconf@ietf.org
X-Mailman-Version: 2.1.39
Precedence: list
List-Id: NETCONF WG 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, 01 Nov 2022 02:27:46 -0000

Hi,

On Mon, Oct 31, 2022 at 7:00 PM Fengchong (frank) <frank.fengchong=
40huawei.com@dmarc.ietf.org> wrote:

> Hi James,
>
> Thanks for your effort on private candidate, it’s a very important
> feature, and provide a way to detect and solve conflicts.
>
>
>
> I have a suggestion on conflict detection.
>
>
>
> The current solution will check the conflict per node, it’s a good way,
> but more efforts will be payed if we try to implement this solution.
>
> For example, we MUST check all descendent nodes of a specified interface
> to determine whether the conflict occurs when this interface is deleted in
> running datastore.
>
>
>
> We may add a simple solution to detect conflicts, that is checking the
> conflicts globally. For example, we can use commit-id to determine whether
> the conflict occurs.
>
> The commit-id will be changed if the configuration of running datastore.
> When a private candidate datastore is created, the commit-id (e.g. 100) of
> current running datastore will be recorded,
>
> And if another session commits it’s configuration ,the commit-id of
> running datastore will be changed (from 100 to 101). And then this session
> want to commit its configuration, the conflict will be
>
> Detected (for commit-id  of  private candidate is different with the one
> of current running datastore).
>
>
>
> We can provide two ways (global and per node), the implementation can
> choose one way.
>
>
>


I am not going to dive into the solution details.
IMO a clear set of functional requirements is needed first.

The big issues:

1) resource management
     implicit vs. explicit private candidate creation deletion
      (pick 1 or let implementors pick)

2) RFC 7950 compliance
     A "valid" configuration datastore is clearly defined.
     There is no such thing as a "node commit".
     The entire datastore contents need to be valid  (e.g., leafref, must)

3) Backward Compatibility with :candidate capability and datastore locking
     How much? How to do it.

4)  Boundaries of the Standard
     Need to clearly separate functionality from implementation details
     e.g., how to do a private-commit (push) or a private-update (pull)


Andy


*发件人:* netconf [mailto:netconf-bounces@ietf.org] *代表 *Cumming, James (Nokia
> - US)
> *发送时间:* 2022年10月21日 22:17
> *收件人:* netconf@ietf.org
> *主题:* [netconf] Private Candidates
>
>
>
>
>
> Good morning/afternoon/evening,
>
>
>
> On behalf of the authors I would like to draw your attention to this draft.
>
>
>
> It deals with the use of Private Candidates over NETCONF.
>
>
>
> https://datatracker.ietf.org/doc/draft-jgc-netconf-privcand/
>
>
>
> We hope to present this for the first time in London.
>
>
>
> Kind regards.
>
>
>
>
> _______________________________________________
> netconf mailing list
> netconf@ietf.org
> https://www.ietf.org/mailman/listinfo/netconf
>