Subject: [Netconf] My review for: WGLC for draft-ietf-netconf-partial-lock-03.txt

From: "Bert Wijnen \(IETF\)" <[email-masked]>
Date: Mon, 1 Sep 2008 23:14:29 +0200

On page 7 I see:

   Example: Lock virtual router 1 and interface eth1

       <nc:rpc
         xmlns:nc="urn:ietf:params:xml:ns:netconf:base:1.0"
         xmlns="urn:ietf:params:xml:ns:netconf:partial-lock:1.0"
->     xmlns:rte="http://example.com/ns/route">
->     xmlns:if="http://example.com/ns/interface">
         nc:message-id="135">
           <partial-lock>
               <nc:running/>
               <select>
                   /routing/virtualRouter['routerName=router1']
               </select>
               <select>/interfaces/interface[Id='eth1']</select>
            </partial-lock>
       </nc:rpc>

       <nc:rpc-reply
         xmlns:nc="urn:ietf:params:xml:ns:netconf:base:1.0"
         xmlns="urn:ietf:params:xml:ns:netconf:partial-lock:1.0"
->      xmlns:rte="http://example.com/ns/route">
->      xmlns:if="http://example.com/ns/interface">
         nc:message-id="135">
           <nc:data>
               <lock-id>127</lock-id>
           </nc:data>
       </nc:rpc-reply>

Can the authors/editors explain to me why the lines marked with ->
are needed?

Further, I wonder how a client knows exactly what he/she has
locked if the partial-lock succeeds. How is the client sure that
what he/she thinks that the expression will result in is the
same than what the server (the managed device) thinks?

I still need to check the appendices.

Bert

_______________________________From [email-masked]  Mon Sep  1 14:15:04 2008
From: "Bert Wijnen \(IETF\)" <[email-masked]>
To: <[email-masked]>
Date: Mon, 1 Sep 2008 23:14:29 +0200
Organization: Consultant
Subject: [Netconf] My review for: WGLC for
	draft-ietf-netconf-partial-lock-03.txt
Sender: [email-masked]

On page 7 I see:

   Example: Lock virtual router 1 and interface eth1

       <nc:rpc
         xmlns:nc="urn:ietf:params:xml:ns:netconf:base:1.0"
         xmlns="urn:ietf:params:xml:ns:netconf:partial-lock:1.0"
->     xmlns:rte="http://example.com/ns/route">
->     xmlns:if="http://example.com/ns/interface">
         nc:message-id="135">
           <partial-lock>
               <nc:running/>
               <select>
                   /routing/virtualRouter['routerName=router1']
               </select>
               <select>/interfaces/interface[Id='eth1']</select>
            </partial-lock>
       </nc:rpc>

       <nc:rpc-reply
         xmlns:nc="urn:ietf:params:xml:ns:netconf:base:1.0"
         xmlns="urn:ietf:params:xml:ns:netconf:partial-lock:1.0"
->      xmlns:rte="http://example.com/ns/route">
->      xmlns:if="http://example.com/ns/interface">
         nc:message-id="135">
           <nc:data>
               <lock-id>127</lock-id>
           </nc:data>
       </nc:rpc-reply>

Can the authors/editors explain to me why the lines marked with ->
are needed?

Further, I wonder how a client knows exactly what he/she has
locked if the partial-lock succeeds. How is the client sure that
what he/she thinks that the expression will result in is the
same than what the server (the managed device) thinks?

I still need to check the appendices.

Bert

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

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

---

From: Martin Bjorklund <[email-masked]>
Date: Tue, 02 Sep 2008 09:02:19 +0200 (CEST)

> Can the authors/editors explain to me why the lines marked with ->

There's an error in the 'select' XPath expressions.  The prefixes
declareed should really be used.  In order to avoid 
discussions about whether xmlns declarations in <rpc> has to be
present in the <rpc-reply>, I suggest we change this example From [email-masked]  Tue Sep  2 00:01:48 2008
Date: Tue, 02 Sep 2008 09:02:19 +0200 (CEST)
To: [email-masked]
From: Martin Bjorklund <[email-masked]>
Cc: [email-masked]
Subject: Re: [Netconf] My review for: WGLC for
 draft-ietf-netconf-partial-lock-03.txt
Sender: [email-masked]

> Can the authors/editors explain to me why the lines marked with ->

There's an error in the 'select' XPath expressions.  The prefixes
declareed should really be used.  In order to avoid 
discussions about whether xmlns declarations in <rpc> has to be
present in the <rpc-reply>, I suggest we change this exinto:

       <nc:rpc
         xmlns:nc="urn:ietf:params:xml:ns:netconf:base:1.0"
         xmlns="urn:ietf:params:xml:ns:netconf:partial-lock:1.0"
         nc:message-id="135">
           <partial-lock>
               <nc:running/>
               <select xmlns:rte="http://example.com/ns/route">
                   /rte:routing/rte:virtualRouter[rte:routerName='router1']
               </select>
               <select xmlns:if="http://example.com/ns/interface">
                   /if:interfaces/if:interface[if:id='eth1']
               </select>
            </partial-lock>
       </nc:rpc>

       <nc:rpc-reply

> same than what the server (the managed device) thinks?

In practise, I think the expressions used for the partial-lock
operation will be limited to expressions which selects a single
subtree (or a set of them) by using an instance-identifier, as in the
examples above.  This works if the client knows the data model - the
predicates above matches on the keys of a router and interface.  In
these cases, the client knows that if the lock succeeds, the subtree
exists and is locked.

In general, the XPath expression could be arbitrarily complex, in
which case it might not be obvious exactly which nodes are locked.
One way to learn which nodes are locked could be to use the monitoring
data model.

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

ample into:

       <nc:rpc
         xmlns:nc="urn:ietf:params:xml:ns:netconf:base:1.0"
         xmlns="urn:ietf:params:xml:ns:netconf:partial-lock:1.0"
         nc:message-id="135">
           <partial-lock>
               <nc:running/>
               <select xmlns:rte="http://example.com/ns/route">
                   /rte:routing/rte:virtualRouter[rte:routerName='router1']
               </select>
               <select xmlns:if="http://example.com/ns/interface">
                   /if:interfaces/if:interface[if:id='eth1']
               </select>
            </partial-lock>
       </nc:rpc>

       <nc:rpc-reply

> same than what the server (the managed device) thinks?

In practise, I think the expressions used for the partial-lock
operation will be limited to expressions which selects a single
subtree (or a set of them) by using an instance-identifier, as in the
examples above.  This works if the client knows the data model - the
predicates above matches on the keys of a router and interface.  In
these cases, the client knows that if the lock succeeds, the subtree
exists and is locked.

In general, the XPath expression could be arbitrarily complex, in
which case it might not be obvious exactly which nodes are locked.
One way to learn which nodes are locked could be to use the monitoring
data model.

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

---

From: "Bert Wijnen \(IETF\)" <[email-masked]>
Date: Tue, 2 Sep 2008 15:31:36 +0200

Inline
----- Original Message ----- 
From: "Martin Bjorklund" <[email-masked]>
To: <[email-masked]>
Cc: <[email-masked]>
Sent: Tuesday, September 02, 2008 9:02 AM
Subject: Re: [Netconf] My review for: WGLC for 

> present in the <rpc-reply>, I suggest we change this example into:
>
>       <nc:rpc
That looks better to me.

> One way to learn which nodes are locked could be to use the monitoring

Mmm... we do not want to depend on the monitoring draft do we?
Is there no way with the existing protocol operations to find out?

Anyway... it would be good to describe these aspects in the
document (i think, as a technical contributor).

Bert

---

From: "Bert Wijnen \(IETF\)" <[email-masked]>
Date: Tue, 2 Sep 2008 15:31:36 +0200

Inline
----- Original Message ----- 
From: "Martin Bjorklund" <[email-masked]>
To: <[email-masked]>
Cc: <[email-masked]>
Sent: Tuesday, September 02, 2008 9:02 AM
Subject: Re: [Netconf] My review for: WGLC for 

That looks better to me.

Bert

---

From: "Bert Wijnen \(IETF\)" <[email-masked]>
Date: Tue, 2 Sep 2008 17:39:18 +0200

I see (in appendix B):

    grouping configName {
      description
        "A choice to list the datastore names for NETCONF.
         This could be moved to a netconf.yang module.";

And wonder if we want to leave that DESCRIPTION as is or not?
Should we not decide to leae it here (in this module) for now
and removed that 2nd sentence?

Bert

---

From: "Bert Wijnen \(IETF\)" <[email-masked]>
Date: Tue, 2 Sep 2008 17:39:18 +0200

I see (in appendix B):

    grouping configName {
      description

Bert

---

From: Martin Bjorklund <[email-masked]>
Date: Wed, 03 Sep 2008 08:10:50 +0200 (CEST)

> and removed that 2nd sentence?

Yes.

/martin

---

From: Martin Bjorklund <[email-masked]>
Date: Wed, 03 Sep 2008 08:10:50 +0200 (CEST)

Yes.

/martin