Re: [Netconf] SSE and HTTP/2 in restcon-notif

Andy Bierman <andy@yumaworks.com> Mon, 01 October 2018 16:18 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 A1B16130DFE for <netconf@ietfa.amsl.com>; Mon, 1 Oct 2018 09:18:07 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -1.9
X-Spam-Level:
X-Spam-Status: No, score=-1.9 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DKIMWL_WL_MED=-0.001, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, HTML_MESSAGE=0.001, RCVD_IN_DNSWL_NONE=-0.0001, SPF_PASS=-0.001, URIBL_BLOCKED=0.001] 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 93O-LSvb3M2D for <netconf@ietfa.amsl.com>; Mon, 1 Oct 2018 09:18:04 -0700 (PDT)
Received: from mail-lf1-x12e.google.com (mail-lf1-x12e.google.com [IPv6:2a00:1450:4864:20::12e]) (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 4A120130EB9 for <netconf@ietf.org>; Mon, 1 Oct 2018 09:18:04 -0700 (PDT)
Received: by mail-lf1-x12e.google.com with SMTP id p34-v6so2984006lfg.10 for <netconf@ietf.org>; Mon, 01 Oct 2018 09:18:04 -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:from:date:message-id:subject:to :cc; bh=72ZredCkCkXQKo63KSgJ03XhnKikUHPLeBd9+DI2UDM=; b=hHh9DAjd4FGCi3e8z3pC4i7KwQM/xb9i1sWV/KmqfphmM9blww9MzErSZZlgYUE7Gi w/fdQgKjyYdIauBtP81TZKBHIkODzJVScb0M1VCC5Mu9LBqkxsFGZ78UzRwxYF6VWFaS B9bDLhF8ukKPhQWHPhCDekc1fdC0gkgh47gq5VmfXwZfTj4AXRwoQhpk4XEUs6jCvqwz Biw70mmdhLG30LiTL8sLxAlHSHawdJaKjnqMpKoAgU2GmuzgRYx78j1E1y9NJtjdB+nM IKqMMxTpiixODcdn05zRq9vEAkaPjjdZYLR44W8B72yJE5P4qL54UAdUwzgKLPpJVsLJ 3sJg==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:in-reply-to:references:from:date :message-id:subject:to:cc; bh=72ZredCkCkXQKo63KSgJ03XhnKikUHPLeBd9+DI2UDM=; b=Q8T+b7XniVTazFkdLYvt0TZpiiy7xToNOY2jW2T9uxPnh7sg/qZ89d4I6jwq0FJN1p dGN/JrLEBPT2iHbadRQwjR0JNfNISPq6jy3foxo4zbNjtlFaYeXnWiq7rpnWyfWre/oZ 7nzvYsrnX558likulGR/cQ1EyH5XnTD/tXGkGo7JmstUST3fAz6wJVYef5QGyfcUEyAz vhQxMI/2WC2JeTCN3qFQfjrrXkWL4VnNfRtpEfuJejoZDWEJX8uHPY/ozvOoENHs5kPe 0+Yc/d102MwvJ+2khK0DZEWqUYXMViNXem428boBR6qww/mK9e1PvlzqRJ8FrUm0Hh2X RXoQ==
X-Gm-Message-State: ABuFfojPTQf30U6ZCaIGKIWbjFrAMNpaJXARmGScMS7eAD1R7SO6bTsj /FQvXlBID17v5cIcmtq9T7ywku7fkhy6Y/mW+vaHHQ==
X-Google-Smtp-Source: ACcGV63lSiDm9BlgiWt0FxapHJcnUGw8hN5dDzcb04zqEp9ZNjXfOwuCRtzZe5IQx5Ud48Px7qgOgtALKHCIiRUgMBs=
X-Received: by 2002:a19:1603:: with SMTP id m3-v6mr5885350lfi.82.1538410682105; Mon, 01 Oct 2018 09:18:02 -0700 (PDT)
MIME-Version: 1.0
Received: by 2002:a19:f811:0:0:0:0:0 with HTTP; Mon, 1 Oct 2018 09:18:00 -0700 (PDT)
In-Reply-To: <5ADB6207-50B2-4626-A733-147022FB2D6F@cisco.com>
References: <B51DAF9C-4294-44BF-9138-7145E61F42AB@juniper.net> <20180927.224854.1626742691261140238.mbj@tail-f.com> <CABCOCHSrEiibcUp99ho60FJr37RDLho+H14oc4htELjSHZqKvg@mail.gmail.com> <B8F9A780D330094D99AF023C5877DABA9B055E63@nkgeml513-mbx.china.huawei.com> <CABCOCHRyuU712k+QHD0Ke5VF5bj7wSyHAcWxGyDsgT6NKA1ing@mail.gmail.com> <5ADB6207-50B2-4626-A733-147022FB2D6F@cisco.com>
From: Andy Bierman <andy@yumaworks.com>
Date: Mon, 01 Oct 2018 09:18:00 -0700
Message-ID: <CABCOCHQr27bDnCnwNuydT=9r6H-sFpMyKBFHGwkG9VWguXH+6w@mail.gmail.com>
To: "Reshad Rahman (rrahman)" <rrahman@cisco.com>
Cc: Qin Wu <bill.wu@huawei.com>, Martin Bjorklund <mbj@tail-f.com>, Netconf <netconf@ietf.org>
Content-Type: multipart/alternative; boundary="00000000000039db9205772d26ee"
Archived-At: <https://mailarchive.ietf.org/arch/msg/netconf/T_wrgURPVI6ZjDJ1tNWzqoj57co>
Subject: Re: [Netconf] SSE and HTTP/2 in restcon-notif
X-BeenThere: netconf@ietf.org
X-Mailman-Version: 2.1.29
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, 01 Oct 2018 16:18:08 -0000

On Mon, Oct 1, 2018 at 6:48 AM, Reshad Rahman (rrahman) <rrahman@cisco.com>
wrote:

> Hi,
>
>
>
>
>
> *From: *'Andy Bierman' <andy@yumaworks.com>
> *Date: *Saturday, September 29, 2018 at 2:00 PM
> *To: *Qin Wu <bill.wu@huawei.com>
> *Cc: *Martin Bjorklund <mbj@tail-f.com>, Netconf <netconf@ietf.org>,
> "Reshad Rahman (rrahman)" <rrahman@cisco.com>
> *Subject: *Re: [Netconf] SSE and HTTP/2 in restcon-notif
>
>
>
>
>
> On Thu, Sep 27, 2018 at 8:40 PM Qin Wu <bill.wu@huawei.com> wrote:
>
>
>
> >    I envision the variation being relatively
> >    minor, something along the line of:
> >
> >      if 1.1, then SSE.
> >      if 2.0, client MAY open a stream first.
> >
> > 3) resource URIs
> >
> >    This is likely where we need to spend the most time. We know that
> >    establish-subscription returns a dynamically created URI, comparable
> >    to what a client might get from ietf-restconf-monitoring:
> restconf-state\
> >    /streams/stream/access/location.
>
> But it is not quite comparable.  In the 8040 solution, the location
> url is static, and then query parameters are provided by the client
> in the POST to the SSE location.  Thus, the server can free any
> resources associated with the filter when the connection is
> terminated.
>
>
>
>
>
> The RESTCONF procedure starts with the client
>
> examining /restconf-state/streams to determine stream and its location URL
>
> How does this monitoring information relate to the new solution?
>
> I assume both the old and new procedures can be supported by the same
> server.
>
> Is it just ignored for a new subscription?
>
>
>
> Since all SSE data is always media type test/event-stream, each stream
> entry indicates
>
> its secondary encoding format. This leaf is type string, and only 'xml'
> and 'json' are supported
>
> in RFC 8040. The establish-subscription RPC has its own leaf for this
> purpose.
>
>
>
>
>
> [Qin]: I am lost, should resource URIs returned by establish-subscription
> same as location URL obtained from
>
> ietf-restconf-monitoring:restconf-state\/streams/stream/access/location.
>
> My understanding is if SSE is supported, let’s say HTTP 1.1, we will use
> location URL returned from
>
> ietf-restconf-monitoring:restconf-state\/streams/stream/access/location
>
> as input parameter to trigger SSE. In case of SSE being supported, HTTP
> GET(URI) is not needed ? wrong?
>
> But if SSE is not supported, let’s say HTTP/2, location URL is not needed.
> HTTP POST(URI) is required.
>
> Please correct me, if I am wrong.
>
> <RR> I don’t think there’s the option of SSE not being supported, doesn’t
> RESTCONF mandate SSE support?
>
>
>
>
>
>
>
> I think sec 3.2 Discovery says use a different /streams container
>
> https://tools.ietf.org/html/draft-ietf-netconf-restconf-
> notif-07#section-3.2
>
>
>
> <RR> Right. But using RFC8040 container should also work, or are you
> saying we could not support RFC8040 container?
>
>
>



The draft mentions RFC 8040 in a few places so the reader is left to assume
that there is no relationship between /streams and /restconf-state/streams.
The RFC 8040 procedures are intentionally ignored and there is no
correlation between
these data models (e.g., same stream name in both is just coincidence with
no meaning).

If this is the intent then it should be stated in the draft.
If not, then something else should be stated in the draft.





> Regards,
>
> Reshad.
>


Andy


>
>
> There should be a sub-section added in sec. 3 about coexistence between
>
> RFC 8040 notifications and this document. Obviously vendors need the option
>
> of supporting both in the same server.
>
>
>
> How do they interact, starting with the 2 different /streams data models.
>
>
>
> It should also be clear in this draft that the "uri" leaf contents are
> implementation-specific
>
> and MAY be predictable by a client application. Query parameters MAY be
> defined
>
> for use with the GET operation on this uri.
>
>
>
>
>
> Andy
>
>
>
>
>
>
>
>
>