Re: [netconf] Current activities on RESTCONF/NETCONF to support paging

tom petch <ietfc@btconnect.com> Thu, 14 March 2019 17:06 UTC

Return-Path: <ietfc@btconnect.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 9E4A91312A5 for <netconf@ietfa.amsl.com>; Thu, 14 Mar 2019 10:06:52 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: 0.247
X-Spam-Level:
X-Spam-Status: No, score=0.247 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DKIMWL_WL_MED=-0.001, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, RATWARE_MS_HASH=2.148, RCVD_IN_DNSWL_NONE=-0.0001, SPF_PASS=-0.001, URIBL_BLOCKED=0.001] autolearn=no autolearn_force=no
Authentication-Results: ietfa.amsl.com (amavisd-new); dkim=pass (1024-bit key) header.d=btconnect.onmicrosoft.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 gLHc2v4o2oQs for <netconf@ietfa.amsl.com>; Thu, 14 Mar 2019 10:06:50 -0700 (PDT)
Received: from EUR03-VE1-obe.outbound.protection.outlook.com (mail-ve1eur03on072e.outbound.protection.outlook.com [IPv6:2a01:111:f400:fe09::72e]) (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 718C3130F5F for <netconf@ietf.org>; Thu, 14 Mar 2019 10:06:48 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=btconnect.onmicrosoft.com; s=selector1-btconnect-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=kYn5MethdVlYKJDMuF4zQR0Sn2h+/fwYr6V3kAcF81g=; b=UUSogZM4hJJHR3UaGvKVX0DijZQxrFwvE1ys3RF1lC+5MrMVQBOsIOZgpl2wpNkE1YAop3wwTuemajA5OmuLByk4sJ28gjhXqTrBu0LieqiwcBEclsO7zQkCv3RMt6E2wZkWjf/Nonasd6Ys7QHgbyaPdGno5+QfPwNodasZtMg=
Received: from VI1PR07MB4768.eurprd07.prod.outlook.com (20.177.57.155) by VI1PR07MB4989.eurprd07.prod.outlook.com (20.178.9.92) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.1709.11; Thu, 14 Mar 2019 17:06:46 +0000
Received: from VI1PR07MB4768.eurprd07.prod.outlook.com ([fe80::f4b6:8b99:765a:92e2]) by VI1PR07MB4768.eurprd07.prod.outlook.com ([fe80::f4b6:8b99:765a:92e2%4]) with mapi id 15.20.1730.003; Thu, 14 Mar 2019 17:06:45 +0000
From: tom petch <ietfc@btconnect.com>
To: "Wisotzky, Sven (Nokia - DE/Stuttgart)" <sven.wisotzky@nokia.com>, Juergen Schoenwaelder <j.schoenwaelder@jacobs-university.de>
CC: "netconf@ietf.org" <netconf@ietf.org>
Thread-Topic: [netconf] Current activities on RESTCONF/NETCONF to support paging
Thread-Index: AQHU2ohNY2OPoaj9d0esxqiuw6QcZg==
Date: Thu, 14 Mar 2019 17:06:45 +0000
Message-ID: <024e01d4da87$fbcc5720$4001a8c0@gateway.2wire.net>
References: <C88A38CA-44B5-42A0-9DFA-A67AE5456951@nokia.com> <20190314093552.3pwa7ptrre4t2stk@anna.jacobs.jacobs-university.de> <9DE27BCF-61F3-4085-A1F8-0FEAD76F85A5@nokia.com> <20190314104948.db6tbadwgo74pbgz@anna.jacobs.jacobs-university.de> <84900927-1EB4-4DD5-9020-1F17990D1285@nokia.com>
Accept-Language: en-GB, en-US
Content-Language: en-US
X-MS-Has-Attach:
X-MS-TNEF-Correlator:
x-clientproxiedby: LO2P265CA0190.GBRP265.PROD.OUTLOOK.COM (2603:10a6:600:a::34) To VI1PR07MB4768.eurprd07.prod.outlook.com (2603:10a6:803:76::27)
authentication-results: spf=none (sender IP is ) smtp.mailfrom=ietfc@btconnect.com;
x-ms-exchange-messagesentrepresentingtype: 1
x-mailer: Microsoft Outlook Express 6.00.2800.1106
x-originating-ip: [86.156.84.54]
x-ms-publictraffictype: Email
x-ms-office365-filtering-correlation-id: 9b62fece-9985-4a14-f35b-08d6a89f6fe4
x-microsoft-antispam: BCL:0; PCL:0; RULEID:(2390118)(7020095)(4652040)(8989299)(4534185)(4627221)(201703031133081)(201702281549075)(8990200)(5600127)(711020)(4605104)(2017052603328)(7193020); SRVR:VI1PR07MB4989;
x-ms-traffictypediagnostic: VI1PR07MB4989:
x-ms-exchange-purlcount: 2
x-microsoft-antispam-prvs: <VI1PR07MB4989DA7C8025C77FDD468E5EA04B0@VI1PR07MB4989.eurprd07.prod.outlook.com>
x-forefront-prvs: 09760A0505
x-forefront-antispam-report: SFV:NSPM; SFS:(10019020)(39860400002)(366004)(136003)(376002)(396003)(346002)(199004)(189003)(13464003)(44716002)(14496001)(8676002)(61296003)(3846002)(6116002)(6246003)(6436002)(305945005)(316002)(296002)(14454004)(99286004)(4326008)(478600001)(25786009)(68736007)(93886005)(71190400001)(71200400001)(486006)(7736002)(476003)(97736004)(2906002)(84392002)(26005)(6306002)(4720700003)(6512007)(86152003)(9686003)(81166006)(81156014)(102836004)(66574012)(105586002)(52116002)(966005)(106356001)(53936002)(81686011)(76176011)(6506007)(81816011)(229853002)(386003)(66066001)(50226002)(44736005)(186003)(256004)(8936002)(110136005)(86362001)(446003)(14444005)(6486002)(1556002)(5660300002)(62236002)(74416001)(7726001); DIR:OUT; SFP:1102; SCL:1; SRVR:VI1PR07MB4989; H:VI1PR07MB4768.eurprd07.prod.outlook.com; FPR:; SPF:None; LANG:en; PTR:InfoNoRecords; A:0; MX:1;
received-spf: None (protection.outlook.com: btconnect.com does not designate permitted sender hosts)
x-ms-exchange-senderadcheck: 1
x-microsoft-antispam-message-info: EZsuIIoNriXKQMzV3Fo8bKSL0JQdwwNLly+8OYq/JrzrodEWClTMWZMIwyZM1veqP3/qemmbpZpYW8RsipKVV6StOyzyLpvD9wDMFRwPwGmNdkFgb/oKX7YIk2Qka8J3U9Ew8UoGFzzfLIV9XWoPolMIii6jlnS6oGf/XOITgdBj4YBAfDm8vvt2WILWVCEMvs27A5Lo9U0+5JYA+v5QHeeOWGTBkcDRxQ2AgHD31BLD3HgHJndFiVhmRWXulLjljNDoEeSX3v1gFAFXLR+/bw4dw1Iwkd3YhWPIMVWpm51oFFd3XfpeaTnFJLxW4HGfrq2xxGgSCSnL8KWT1geTJoaP5V1lEtZsruNkICuEoFj81c960svPWeI2DgW+cFHPlDr1/xmDywD79/L9/Yqf0XraFzFhbLkAuKIq8vQ8VAk=
Content-Type: text/plain; charset="utf-8"
Content-ID: <6A68C4EDFCDC4148A2856C64215C3E93@eurprd07.prod.outlook.com>
Content-Transfer-Encoding: base64
MIME-Version: 1.0
X-OriginatorOrg: btconnect.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 9b62fece-9985-4a14-f35b-08d6a89f6fe4
X-MS-Exchange-CrossTenant-originalarrivaltime: 14 Mar 2019 17:06:45.9112 (UTC)
X-MS-Exchange-CrossTenant-fromentityheader: Hosted
X-MS-Exchange-CrossTenant-id: cf8853ed-96e5-465b-9185-806bfe185e30
X-MS-Exchange-CrossTenant-mailboxtype: HOSTED
X-MS-Exchange-Transport-CrossTenantHeadersStamped: VI1PR07MB4989
Archived-At: <https://mailarchive.ietf.org/arch/msg/netconf/cnbAF2GYzSsz3tVuvEPAIYeZR5Q>
Subject: Re: [netconf] Current activities on RESTCONF/NETCONF to support paging
X-BeenThere: netconf@ietf.org
X-Mailman-Version: 2.1.29
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: Thu, 14 Mar 2019 17:07:00 -0000

----- Original Message -----
From: "Wisotzky, Sven (Nokia - DE/Stuttgart)" <sven.wisotzky@nokia.com>
Sent: Thursday, March 14, 2019 12:14 PM

> Depends on whatever we call here a crash. The challenging part of
NETCONF/RESTCONF is, that the client would not know how big the
get/get-config reply would become. Having a JS-based WebUI client
running a RESTCONF query, you easily end up in situations, where you
basically need to terminate the javascript because it runs out of
memory. And I've even seen situations, where the browser itself did not
respond anymore (swapping to disk, ...).

One afternoon, I set an SNMP get-next going on RMON and it was still
going the next day; I then tried over a weekend and it was still going
the next week.  Data was being added to the table faster than my high
speed LAN could retrieve it.  Neither system crashed although response
times for other applications elongated.

I am reminded of e-mail where a POP client may access a very large list
of e-mails on a server.  The first response is a count of how many there
are currently; the client can then request the summary data for each
before deciding which to download in full.  This was designed before the
cloud was thought of and it is a system that still works well.

Tom Petch







>
> By introducing a protection mechanisms like max-count, the client can
control to a certain extent how much data will be received. And by using
paging for post loading in the background, the client could still decide
if it is possible to load another page or not. So when running
out-of-memory or when start swapping, the client could avoid loading any
further pages. Generally I am thinking this is a very reasonable aka
controlled  approach.
>
> With NETCONF today, for sure one could terminate the NETCONF sessions
if too much data is received and might try using a XML stream reader to
process what has been received so far. But would claim that this is not
a good approach at all and should be avoided.
>
> /wiso
>
>
>
>
> On 14.03.19, 11:49, "Juergen Schoenwaelder"
<j.schoenwaelder@jacobs-university.de> wrote:
>
>     On Thu, Mar 14, 2019 at 10:07:33AM +0000, Wisotzky, Sven (Nokia -
DE/Stuttgart) wrote:
>     >
>     > However, as per my initial post below, just defining a limit
(aka max-count) is a very efficient initial step to improve loading time
and avoid crashes.
>
>     Sorry, but if code crashes, then someone has to fix the code.
Adding
>     query parameters is not the right answer for this.
>
>     /js
>
>     --
>     Juergen Schoenwaelder           Jacobs University Bremen gGmbH
>     Phone: +49 421 200 3587         Campus Ring 1 | 28759 Bremen |
Germany
>     Fax:   +49 421 200 3103
<https://www.jacobs-university.de/>
>
>
> _______________________________________________
> netconf mailing list
> netconf@ietf.org
> https://www.ietf.org/mailman/listinfo/netconf
>