Subject: [Netconf] RESTCONF #24:mandatory encoding revisited

From: Andy Bierman <[email-masked]>
Date: Sat, 25 Jul 2015 14:32:48 -0700

Hi,

It would be good if we could close this issue soon.
I am not in favor of changing the previous consensus call.

At first I thought JSON would be good for RESTCONF,
until I implemented it.  It is not appropriate for streaming servers.
The complexity and memory required and just as bad or worse
than XML, especially once namespaces and attributes are
added.

JSON is fine if the entire document is in memory,
but that's not how NETCONF/RESTCONF servers work.

Andy

---

From: Juergen Schoenwaelder <[email-masked]>
Date: Sun, 26 Jul 2015 09:26:14 +0200

> but that's not how NETCONF/RESTCONF servers work.

I would probably change my position from 'make XML mandatory' to leave
it undefined. I do see scenarios where servers will only do JSON
because this is what the clients they interact with expect.

/js

-- 
Juergen Schoenwaelder           Jacobs University Bremen gGmbH
Phone: +49 421 200 3587         Campus Ring 1 | 28759 Bremen | Germany
Fax:   +49 421 200 3103         <http://www.jacobs-university.de/>

---

From: Andy Bierman <[email-masked]>
Date: Sun, 26 Jul 2015 09:43:36 -0700

> because this is what the clients they interact with expect.

Could the XRD returned for the initial GET on  /.well-known
be used to return the encoding formats supported by the server?
That way it will not cost an extra round-trip to find out if the
server supports XML, JSON, or both.

If so, I would also change my position. Let the market decide
if it is acceptable to be a JSON-only server.

/js

Andy

---

From: "Ersue, Mehmet (Nokia - DE/Munich)" <[email-masked]>
Date: Sun, 26 Jul 2015 17:06:14 +0000

I heard several times the argument that JSON would be the better choice for IoT.
Is RESTCONF indeed the right protocol for IoT?

Those who favor the use of RESTCONF + JSON for IoT should elaborate their use case.

Cheers,
Mehmet

From: Netconf [mailto:[email-masked]] On Behalf Of ext Andy Bierman
Sent: Sunday, July 26, 2015 6:44 PM
To: Juergen Schoenwaelder; Andy Bierman; Netconf
Subject: Re: [Netconf] RESTCONF #24:mandatory encoding revisited

On Sun, Jul 26, 2015 at 12:26 AM, Juergen Schoenwaelder <[email-masked]<mailto:[email-masked]>> wrote:

/js

Andy

---

From: Andy Bierman <[email-masked]>
Date: Sun, 26 Jul 2015 10:16:14 -0700

> Those who favor the use of RESTCONF + JSON for IoT should elaborate their

I don't think anyone mentioned IoT in this thread.
If the WEB client tools generate JSON only, then they
want a server that supports JSON and do not care about XML.
It is a tools choice before it is a message encoding choice.

Andy

>
>
> *From:* Netconf [mailto:[email-masked]] *On Behalf Of *ext Andy
> Bierman
> *Sent:* Sunday, July 26, 2015 6:44 PM
> *To:* Juergen Schoenwaelder; Andy Bierman; Netconf
> *Subject:* Re: [Netconf] RESTCONF #24:mandatory encoding revisited
>
>
>
>
>
>
>

---

From: "Scharf, Michael (Michael)" <[email-masked]>
Date: Mon, 27 Jul 2015 07:21:27 +0000

I might be wrong, but this may depend quite a bit on the implementation. For instance, there are also claims that JSON serialization is much more efficient: http://www.codeproject.com/Articles/604720/JSON-vs-XML-Some-hard-numbers-about-verbosity
(see also the comments therein – but I have not verified these numbers)

I think in quite a number use cases it will be well-known a priori which encoding the server supports, and I expect that in some of them JSON will be preferred. Yet, if there was a simple and fast way to determine the supported encoding, that could perhaps be useful.

One could also try to find a wording that RECOMMENDs the support of XML for use cases in which it is not a priori known that the client expects JSON and will only use JSON.

Michael

From: Netconf [mailto:[email-masked]] On Behalf Of Andy Bierman
Sent: Saturday, July 25, 2015 11:33 PM
To: Netconf
Subject: [Netconf] RESTCONF #24:mandatory encoding revisited

Hi,

Andy

---

From: Ladislav Lhotka <[email-masked]>
Date: Wed, 29 Jul 2015 11:14:24 +0200

> I am not in favor of changing the previous consensus call.

I am in favor of changing it. The consensus call that was done before
Honolulu meeting was IMO very problematic and I had strong objections
against it - the opinions were 10:7 in favor of making XML mandatory.

See this thread:

https://mailarchive.ietf.org/arch/search/?email_list=netconf&gbt=1&index=8EhIVndveGw2QrHTefsYsADPC6Y

Recently, other people expressed their preference, and explained
technical reasons, for NOT doing so.

> than XML, especially once namespaces and attributes are

Not all servers need to stream data.

> but that's not how NETCONF/RESTCONF servers work.

You probably mean your NETCONF/RESTCONF servers. Small devices have
configurations that easily fit into memory, and small devices are
exactly those for which XML support is a considerable burden.

Lada

>
>
> Andy
> _______________________________________________
> Netconf mailing list
> [email-masked]
> https://www.ietf.org/mailman/listinfo/netconf

-- 
Ladislav Lhotka, CZ.NIC Labs
PGP Key ID: E74E8C0C

---

From: Dean Bogdanovic <[email-masked]>
Date: Wed, 29 Jul 2015 12:42:25 +0200

I agree it will depend on case by case. For big networking devices with large schemas, XML might be better, as it is easier to extract deep nested information. For devices with simple schema, like IoT case, JSON might be the right answer.

IMO, XML should be recommended, but there shouldn’t be anything preventing server to offer JSON only

Dean

> On Jul 29, 2015, at 11:14 AM, Ladislav Lhotka <[email-masked]> wrote:
>

---

From: Rodney Cummings <[email-masked]>
Date: Wed, 29 Jul 2015 16:52:36 -0500

Hi Mehmet,

I'm not so certain that IoT has a specific use case per se. The problem is 
that IoT devices generally do not implement multiple options... they tend 
to focus on the minimal set of features that are required.

For RESTful web services in general, correct me if I am wrong, but XML is 
not mandated, and JSON is not mandated. A device could implement both, but 
for IoT, it is more likely that a device will implement only one.

If an IoT device has already implemented RESTful web services using XML 
(only), and that IoT device needs to add YANG management support as a 
server, then RESTCONF is very appealing.

If an IoT device  has already implemented RESTful web services using JSON 
(only), and that IoT device needs to add YANG management support as a 
server, then RESTCONF is not applicable as specified in the current draft. 
Regardless of the arguments pro or con, this IoT device simply will not 
change from JSON to XML.

Thanks,
Rodney

"Netconf" <[email-masked]> wrote on 07/26/2015 12:06:14 PM:

> From: "Ersue, Mehmet (Nokia - DE/Munich)" <[email-masked]>
> To: ext Andy Bierman <[email-masked]>, Juergen Schoenwaelder 
> <[email-masked]>, Netconf <[email-masked]>, 
> Date: 07/26/2015 12:06 PM
> Sent by: "Netconf" <[email-masked]>
>

---

From: "Ersue, Mehmet (Nokia - DE/Munich)" <[email-masked]>
Date: Sat, 1 Aug 2015 01:03:16 +0000

Hi Lada,

you might be also interested to read: 
https://mailarchive.ietf.org/arch/msg/netconf/YSEbLd-nnI0dlkeiIeGW-z6JqDg 

In the sake of progress Bert and I declared at that time consensus.

As far as I understand peoples interest and opinions changed since last October.
It makes sense to repeat the opinion poll.

Mehmet 

-----Original Message-----
From: Netconf [mailto:[email-masked]] On Behalf Of ext Ladislav Lhotka
Sent: Wednesday, July 29, 2015 11:14 AM
To: Andy Bierman; Netconf
Subject: Re: [Netconf] RESTCONF #24:mandatory encoding revisited

See this thread:

Lada

Subject: Re: [Netconf] WG Last Call (expires Sept 18 2014): express your opinion on RESTCONF modularity
From: "Ersue, Mehmet (Nokia - DE/Munich)" <[email-masked]>
To: ext Andy Bierman <[email-masked]>, Netconf <[email-masked]>
Date: Thu, 9 Oct 2014 17:43:36 +0000
List-Id: Network Configuration WG mailing list <netconf.ietf.org>

Hi Andy, All,

in reality it was 8 for a) and 8 for d) until Mahesh changed his mind in favor of d).

However with the conclusion mail below you may count both co-chair’s votes in favor of a).

We indeed think that a) had reasonable support with good technical arguments, which are mainly “less options, less complexity, better understood”.

You may count the co-chairs now to “old-school” but we believe that a) improves interoperability.

Mehmet

From: Netconf [mailto:[email-masked]] On Behalf Of ext Andy Bierman
Sent: Tuesday, October 07, 2014 6:27 PM
To: Bert Wijnen (IETF)
Cc: Netconf
Subject: Re: [Netconf] WG Last Call (expires Sept 18 2014): express your opinion on RESTCONF modularity

Hi,

On Tue, Oct 7, 2014 at 12:23 AM, Bert Wijnen (IETF) <[email-masked]<mailto:[email-masked]>> wrote:

Dear NETCONF WG participants,

Appologies for being a bit late with trying to draw a conclusion on this
one.

As WG chairs, we believe that option a) had reasonable support with
good technical arguments why the choice was for that option.

On pure numerical count, we believe that option c won, but it was/is also
clear that it just complicates things and has more risk of
interoperability problems.

I think you meant that (d) got the most. And it wasn't "whatever it chooses",

it was "XML or JSON or both".

   So we as chairs propose to go with option a).

   If anyone still has REAL STRONG objections, pls speak up before
   the end of this week. If we hear none by Friday Okt 10th,
   we conclude that we have (rough) consensus to go with option a)

   Bert and Mehmet.

   Andy

   On 02/09/14 12:23, Bert Wijnen (IETF) wrote:

   On 26/08/14 22:49, Andy Bierman wrote:

   Perhaps the co-chairs should decide how to proceed somehow.

   Dear NETCONF WG participants, do you have an opinion?

   So far I have seen only a few people express their opinion.

   Please speak up so that we (WG chairs) have better data to judge if we
   do or do not have WG (rough) consensus. Pls do speak up by 18 Sept 2014.

   Please speak your mind about these options:

   a) XML is mandatory
   b) JSON is mandatory
   c) XML and JSON are both mandatory
   d) Both XML and JSON mandatory on client,
       server can implement whatever it chooses.
       Not clear yet how the client would find out, but that would of course
       be something to be worked out if we choose this option

   Bert

   _______________________________________________
   Netconf mailing list
   [email-masked]<mailto:[email-masked]>
   https://www.ietf.org/mailman/listinfo/netconf

   _______________________________________________
   Netconf mailing list
   [email-masked]<mailto:[email-masked]>
   https://www.ietf.org/mailman/listinfo/netconf