Re: [Netconf] a joint discussion on dynamic subscription

Tianran Zhou <zhoutianran@huawei.com> Thu, 14 June 2018 12:38 UTC

Return-Path: <zhoutianran@huawei.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 2FEC9131147 for <netconf@ietfa.amsl.com>; Thu, 14 Jun 2018 05:38:21 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -4.2
X-Spam-Level:
X-Spam-Status: No, score=-4.2 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, RCVD_IN_DNSWL_MED=-2.3, SPF_PASS=-0.001, URIBL_BLOCKED=0.001] autolearn=ham autolearn_force=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 ln2rOakV5RAH for <netconf@ietfa.amsl.com>; Thu, 14 Jun 2018 05:38:18 -0700 (PDT)
Received: from huawei.com (lhrrgout.huawei.com [194.213.3.17]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id 7E6A413113B for <netconf@ietf.org>; Thu, 14 Jun 2018 05:38:18 -0700 (PDT)
Received: from lhreml709-cah.china.huawei.com (unknown [172.18.7.107]) by Forcepoint Email with ESMTP id 6D8A6A6FE550B for <netconf@ietf.org>; Thu, 14 Jun 2018 13:38:11 +0100 (IST)
Received: from NKGEML414-HUB.china.huawei.com (10.98.56.75) by lhreml709-cah.china.huawei.com (10.201.108.32) with Microsoft SMTP Server (TLS) id 14.3.382.0; Thu, 14 Jun 2018 13:38:13 +0100
Received: from NKGEML515-MBX.china.huawei.com ([fe80::a54a:89d2:c471:ff]) by nkgeml414-hub.china.huawei.com ([10.98.56.75]) with mapi id 14.03.0382.000; Thu, 14 Jun 2018 20:38:02 +0800
From: Tianran Zhou <zhoutianran@huawei.com>
To: Martin Bjorklund <mbj@tail-f.com>, "evoit@cisco.com" <evoit@cisco.com>
CC: Alexander Clemm <alexander.clemm@huawei.com>, "Zhengguangying (Walker)" <zhengguangying@huawei.com>, "netconf@ietf.org" <netconf@ietf.org>
Thread-Topic: a joint discussion on dynamic subscription
Thread-Index: AdQCx01ede4gaRHPTgG2WyMdkd0r2gARka+AABfQcAAAG5+9kA==
Date: Thu, 14 Jun 2018 12:38:01 +0000
Message-ID: <BBA82579FD347748BEADC4C445EA0F21B55CE3F0@NKGEML515-MBX.china.huawei.com>
References: <BBA82579FD347748BEADC4C445EA0F21B55CCDB7@NKGEML515-MBX.china.huawei.com> <b256b91c7cbc4b3093c858e55c912f88@XCH-RTP-013.cisco.com> <20180614.091828.21142123428745204.mbj@tail-f.com>
In-Reply-To: <20180614.091828.21142123428745204.mbj@tail-f.com>
Accept-Language: zh-CN, en-US
Content-Language: zh-CN
X-MS-Has-Attach:
X-MS-TNEF-Correlator:
x-originating-ip: [10.111.156.116]
Content-Type: text/plain; charset="us-ascii"
Content-Transfer-Encoding: quoted-printable
MIME-Version: 1.0
X-CFilter-Loop: Reflected
Archived-At: <https://mailarchive.ietf.org/arch/msg/netconf/R1Zy4boZjVqJ2FtHPZsXt_tEY8E>
Subject: Re: [Netconf] a joint discussion on dynamic subscription
X-BeenThere: netconf@ietf.org
X-Mailman-Version: 2.1.26
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: Thu, 14 Jun 2018 12:38:22 -0000

Hi,

> -----Original Message-----
> From: Martin Bjorklund [mailto:mbj@tail-f.com]
> Sent: Thursday, June 14, 2018 3:18 PM
> To: evoit@cisco.com
> Cc: Tianran Zhou <zhoutianran@huawei.com>; Alexander Clemm
> <alexander.clemm@huawei.com>; Zhengguangying (Walker)
> <zhengguangying@huawei.com>; netconf@ietf.org
> Subject: Re: a joint discussion on dynamic subscription
> 
> Hi,
> 
> "Eric Voit (evoit)" <evoit@cisco.com> wrote:
> > Hi Tianran,
> >
> > > From: Tianran Zhou, June 12, 2018 11:47 PM
> > >
> > > Hi Eric,
> > >
> > > When we are discussing the draft-ietf-netconf-udp-pub-channel, we
> > > find a conflict with current dynamic subscription design.
> > > 1. The dynamic subscription requires notification to use the same
> > > channel as the subscription.
> >
> > This is true when you look at the NETCONF transport draft.  However
> > this is *not* required by the base subscribed-notification draft.  And
> > in fact, the HTTP transport draft might not use the same logical
> > channel.  E.g., see how the URI is returned within:
> > https://github.com/netconf-wg/notif-restconf/blob/master/draft-ietf-ne
> > tconf-restconf-notif-05.txt
> >
> > So if you wanted to define some transport session independence for a
> > UDP transport, subscribed-notifications should permit that.  And if
> > you believe there is something in the text which prohibits this, let
> > me know.
> 
> Cool!  I think that this should be explcitly described in the
> subscribed-notifications document.
> 
> In the case of RESTCONF, decision to use a separate channel for the notifs
> is implicit in the transport of the request to establish-subscription.
> 
> In the case of UDP, I think the idea is that the establish-subscription is
> sent over any protocol that can do RPCs (NETCONF, RESTCONF, ...), but then
> some specific input parameter informs the server that the notifs are supposed
> to be sent over some other transport.

Yes. I did not see this is the current RPC. Maybe similar the configured subscription, to describe transport of the receiver.

> While reading the text about sessions, I found this:
> 
> In 2.4.3:
> 
>    The "modify-subscription" operation permits changing the terms of an
>    existing dynamic subscription established on that transport session
>    via "establish-subscription".
> 
> Which session does "that transport session" mean?  Perhaps simply:
> 
> NEW:
> 
>    The "modify-subscription" operation permits changing the terms of an
>    existing dynamic subscription.
> 
> 
> > > 2. The RPC does not have the input information about the receiver
> > > because the above assumption.
> > >
> > > However, when we talk about the distributed data collection (multi
> > > data originators), the publication channel is always different from
> > > the subscription channel.
> >
> > While it likely isn't what you want, even with NETCONF, the single
> > NETCONF session doesn't means that distributed line card generation of
> > the notification messages is impossible.  For example, the inclusion
> > of the header object message-generator-id (as defined within
> > draft-ietf-netconf-notification-messages) allows the notification
> > message generation to be distributed onto linecards even if the
> > messages themselves are still driven back to a central transport
> > session.  Note that I am not recommending this, but the specifications
> > would support this.
> >
> > > So either the distributed data collection does not support dynamic
> > > subscription, or current dynamic subscription definition may need
> > > modification.
> >
> > I think for UDP, you will want to define a way to bind the lifecycle
> > of the dynamic subscription's channels across multiple line cards.
> > This will require some thinking as well as coordination within the
> > publisher.
> 
> But this is an implementation detail.  However, it is true that the
> specification must work out the fate-sharing details between the session that
> sent the establish-subscription and the notif channel.
> Just as in the "restconf" draft.

We can just describe this fate-sharing requirement explicitly in the document. On implementation, I do not think it's hard to bind the lifecycle of the subscription channel and the publication channel.

> /martin
> 
> 
> 
> > Perhaps returning multiple URIs (one for each linecard) might be
> > something which could make this easier.  If you go down this path, you
> > still will need to fate-share the lifecycle of the subscription across
> > all of those line cards.
> >
> > Eric
> >
> > > What's your thoughts?
> > >
> > > Regards,
> > > Tianran
> >