Re: [Netconf] New YANG PubSub drafts for NETCONF, RESTCONF, HTTP/2

Andy Bierman <andy@yumaworks.com> Wed, 28 October 2015 19:03 UTC

Return-Path: <andy@yumaworks.com>
X-Original-To: netconf@ietfa.amsl.com
Delivered-To: netconf@ietfa.amsl.com
Received: from localhost (ietfa.amsl.com [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id C2C441ACD02 for <netconf@ietfa.amsl.com>; Wed, 28 Oct 2015 12:03:48 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -0.678
X-Spam-Level:
X-Spam-Status: No, score=-0.678 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, FM_FORGED_GMAIL=0.622, HTML_MESSAGE=0.001, J_CHICKENPOX_46=0.6, SPF_PASS=-0.001] autolearn=no
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 rAmu-PNbm4Ac for <netconf@ietfa.amsl.com>; Wed, 28 Oct 2015 12:03:46 -0700 (PDT)
Received: from mail-lf0-x22b.google.com (mail-lf0-x22b.google.com [IPv6:2a00:1450:4010:c07::22b]) (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 C777C1ACCFD for <netconf@ietf.org>; Wed, 28 Oct 2015 12:03:45 -0700 (PDT)
Received: by lfbn126 with SMTP id n126so8387751lfb.2 for <netconf@ietf.org>; Wed, 28 Oct 2015 12:03:43 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=yumaworks_com.20150623.gappssmtp.com; s=20150623; h=mime-version:in-reply-to:references:date:message-id:subject:from:to :cc:content-type; bh=ZaPbxk4XEh0Al+sQDZ23S95eAXKyRvl9LoGEYwL4J1c=; b=FAq5BxYuH0fSziw446+2rasuJEh0r9r3U39JQgjqDFRgD1Vrh9th+KRHgoMlKadcD5 3iPL2O3CX7ktUTTugSUY0cWY5tIn1ala2xb2jNbDDVmNYC6CDgcl2MYYSAm14jqXec6Q Lnj3dcO9L44wejYUfSVaMdlAjKsZRnIAeqOaP76I6+Dt1mN0koH+BT1g0IPhm0plYy9B KQyLqzpYgD+DFBl+LnzizQdsBt67oVzQ7X/vMvBVPOv36xsjyyYtgMjxZHYYfjeFJF// wi9eNpvGwB9Y24Ay+tVheRs+UjS8ZUbvHsEck0LGi0Twh744hwY3fZPsUZ1s91TiAc+F OqvQ==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20130820; h=x-gm-message-state:mime-version:in-reply-to:references:date :message-id:subject:from:to:cc:content-type; bh=ZaPbxk4XEh0Al+sQDZ23S95eAXKyRvl9LoGEYwL4J1c=; b=F4Kc6rKx/D09eVQnihNYn10/IIATMKSwElG3RTmuRaboC6VveBf1FZPlfFViyzL6Xv AUDb/wQhf+MK8rr3hqlfn8mU5e/W/EPm+SAsC/Erdb3IweT0+LVlf7LBeXCtZYmeAt9d f7CzPILu/ctt6oyixwfbQtAY8ReeGmt0gFkXGuGuGV1cnJ974C0LuyBo8GizXZXhK+85 TTEWpAhhewkPNpNnitLtk2YneFUKFti0sr1qpkis/t5Nu57FDLRTJi44JLxJ8Tc1JyBh iXuBSsp7BipzgFmxx1Uz7clnZIz8e7JmluwNWmie+0uxNGRF8Y0l2sfUKseVhx71oqaO K9zg==
X-Gm-Message-State: ALoCoQl5eTjytFnS1FxVPcJlAO3FItoDq6FR+DbxQkkKvGM/pWX6Be/bQOVKdRv3X0QaFcuKJ+/r
MIME-Version: 1.0
X-Received: by 10.25.143.82 with SMTP id r79mr8726201lfd.123.1446059023803; Wed, 28 Oct 2015 12:03:43 -0700 (PDT)
Received: by 10.112.138.72 with HTTP; Wed, 28 Oct 2015 12:03:43 -0700 (PDT)
In-Reply-To: <D255D6BE.52759%albertgo@cisco.com>
References: <203b7493c8b0494fa6c266cebe37381e@XCH-ALN-013.cisco.com> <047b01d110e8$92e3ba30$b8ab2e90$@ndzh.com> <FA854546-4B96-48DE-81EA-3F490A6F95ED@juniper.net> <CABCOCHTB-Nzyn-ZrzVqy_9VeY7UMeu5WAFbNRcVsuj+C33CMMQ@mail.gmail.com> <D255D6BE.52759%albertgo@cisco.com>
Date: Wed, 28 Oct 2015 12:03:43 -0700
Message-ID: <CABCOCHRQec_AUFzk5+uUg1tSDCi9T_U6L6Sn_WuycmZrio5scQ@mail.gmail.com>
From: Andy Bierman <andy@yumaworks.com>
To: "Alberto Gonzalez Prieto (albertgo)" <albertgo@cisco.com>
Content-Type: multipart/alternative; boundary="001a11401b1a70453a05232edaaf"
Archived-At: <http://mailarchive.ietf.org/arch/msg/netconf/FmzoCqaI1Ym7SmDewkLD81Jgh-o>
Cc: "netconf@ietf.org" <netconf@ietf.org>, Alia Atlas <akatlas@gmail.com>
Subject: Re: [Netconf] New YANG PubSub drafts for NETCONF, RESTCONF, HTTP/2
X-BeenThere: netconf@ietf.org
X-Mailman-Version: 2.1.15
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: Wed, 28 Oct 2015 19:03:49 -0000

Hi,

The issue wrt/ PUT vs. PATCH is really a matter of context
and priorities.  If you delete 1 interface out of 100,000, and you
need to send the updated parent container, instead of just
sending "delete interface X", the message could be 10,000
times bigger on-the-wire.  The internal processing could be much
higher (e.g., compare 99,999 interfaces to the saved values
to determine there were no changes).  If efficiency is of
no concern, then updating the parent resource is probably OK.


Andy






On Wed, Oct 28, 2015 at 2:16 AM, Alberto Gonzalez Prieto (albertgo) <
albertgo@cisco.com> wrote:

> Thanks for the input Andy.
>
> In the NETCONF draft, for on-change updates, we consider the operations
> in RFC6241 for edit-config, including merge, and delete.
> (when using json encoding, the changes are encoded based on yang-patch)
> Does that address the PUT/PATCH inefficiencies you mention?
>
> FWIW, we do not explicitly include yang:insert from RFC6020. It makes
> sense to me including it since not using would lead to inefficiencies, as
> you correctly point out.
> It also makes sense to me adding “move” to the list of operations in
> on-change updates.  Thanks for bringing this up.
>
>
> For periodic updates, the updates contain a snapshot of the current state.
> That is analogous to a PUT. The rationale was that to compute the deltas,
> we would need (a potentially sizable) per-subscription state.
> E.g., a subscription for fast-changing oper data subtrees with a large
> number of descendants. Such data may not be versioned and its incremental
> deltas may not be tracked. In such cases, the state to keep would be a
> replica of the snapshot used for the last update.
>
> Thanks,
>
> Alberto
>
>
> From: Netconf <netconf-bounces@ietf.org> on behalf of Andy Bierman <
> andy@yumaworks.com>
> Date: Tuesday, October 27, 2015 at 12:50 PM
> To: Kent Watsen <kwatsen@juniper.net>
> Cc: "netconf@ietf.org" <netconf@ietf.org>, Alia Atlas <akatlas@gmail.com>
> Subject: Re: [Netconf] New YANG PubSub drafts for NETCONF, RESTCONF,
> HTTP/2
>
> Hi,
>
> I support the feature in general as an optional addition to NETCONF or
> RESTCONF.
> I was looking at the details a bit, and I don't think it covers all YANG
> operations
> (such as insert, move, delete).
>
> I am implementing a datastore replication protocol based on deltas
> represented with YANG Patch.  This looks much more efficient in practice
> than sending complete updates of resource representations to the client,
> especially for delete, insert, and move.  You basically end up with PUT
> instead of PATCH, with all the inefficiencies that involves.
>
> I think the subscription and push control in the yang-push draft is great,
> but the messages on the wire should be more efficient.
>
>
> Andy
>
>
> On Tue, Oct 27, 2015 at 12:22 PM, Kent Watsen <kwatsen@juniper.net> wrote:
>
>>
>> I think it important that whatever we do in NETCONF we can also do in
>> RESTCONF.   To that end, I support the WG defining "yang-push” for both
>> protocols.
>>
>> Actually, I’m a little surprised that we’re discussing this.  Maybe it’s
>> just me, but when the WG adopted draft-ietf-netconf-yang-push, I thought
>> that it would cover both protocols eventually.   Perhaps that a separate
>> draft has been produced is another surprise here - do we really need
>> another draft?
>>
>> Kent
>>
>> From: Netconf <netconf-bounces@ietf.org> on behalf of Susan Hares <
>> shares@ndzh.com>
>> Date: Tuesday, October 27, 2015 at 2:52 PM
>> To: "'Eric Voit (evoit)'" <evoit@cisco.com>, "netconf@ietf.org" <
>> netconf@ietf.org>
>> Cc: 'Alia Atlas' <akatlas@gmail.com>
>> Subject: Re: [Netconf] New YANG PubSub drafts for NETCONF, RESTCONF,
>> HTTP/2
>>
>> NETCONF:
>>
>>
>>
>> These drafts is important to the I2RS pub/sub.   Is the RESTCONF draft
>> going to be adopted (draft-voit-restconf-yang-push-00.txt)?
>>
>>
>>
>> It would be really helpful.
>>
>>
>>
>> Sue Hares
>>
>> I2RS WG chair
>>
>>
>>
>> *From:* Netconf [mailto:netconf-bounces@ietf.org
>> <netconf-bounces@ietf.org>] *On Behalf Of *Eric Voit (evoit)
>> *Sent:* Tuesday, October 13, 2015 11:37 PM
>> *To:* netconf@ietf.org
>> *Subject:* [Netconf] New YANG PubSub drafts for NETCONF, RESTCONF, HTTP/2
>>
>>
>>
>> There are a couple new drafts posted in NETCONF:
>>
>>
>>
>> (1)  Subscribing to YANG datastore push updates
>>
>> http://www.ietf.org/id/draft-clemm-netconf-yang-push-02.txt
>>
>> As per earlier NETCONF discussions
>> <http://www.ietf.org/mail-archive/web/netconf/current/msg10432.html> we
>> are expecting this draft to become draft-ietf-netconf-yang-push in the
>> coming days (once the NETCONF charter is approved).  Look for an
>> OpenDaylight client in the Beryllium release (Feb).
>>
>>
>>
>> (2) Restconf subscription and HTTP push for YANG datastores
>>
>> http://www.ietf.org/id/draft-voit-restconf-yang-push-00.txt
>>
>> Extends draft-clemm-netconf-yang-push in the following ways:
>>
>> ·     proposes Restconf subscription and push mechanisms to continuously
>> stream information from YANG datastores over HTTP
>>
>> ·     provides a mechanism to support static subscriptions so that an
>> operator can stream updates over HTTP without Restconf
>>
>> ·     provides YANG model extensions to leverage HTTP/2 so that
>> individual subscriptions can get custom treatment via their own HTTP
>> streams.
>>
>>
>>
>> Thanks for your interest, and we look forward to the discussions!
>>
>>
>>
>> - Alexander Clemm, Eric Voit, Alberto Gonzalez Prieto, Ambika Prasad
>> Tripathy, & Einar Nilsen-Nygaard
>>
>>
>>
>>
>>
>>
>>
>>
>>
>> _______________________________________________
>> Netconf mailing list
>> Netconf@ietf.org
>> https://www.ietf.org/mailman/listinfo/netconf
>>
>>
>