Subject: [CCAMP] draft-ietf-ccamp-client-signal-yang references to bandwidth profiles, make it a leafref

From: "Roque Gagliano (rogaglia)" <[email-masked]>
Date: Mon, 15 Jun 2020 17:01:50 +0000

Hi,

I implemented the draft and I think the bandwidth-profile should be a leaf-ref and not a string (for both directions symmetrical and asymmetrical):

          |  +--rw (direction)?
          |  |  +--:(symmetrical)
          |  |  |  +--rw ingress-egress-bandwidth-profile
          |  |  |     +--rw (style)?
          |  |  |        +--:(named)
          |  |  |        |  +--rw bandwidth-profile-name?
          |  |  |        |          string                   • We need a leafref to the definition of the bandwidth-profile
          |  |  |        +--:(value)

In particular, I believe it should be:
type leafref {

                   path "/ethtsvc:etht-svc/ethtsvc:globals/ethtsvc:named-bandwidth-profiles/ethtsvc:bandwidth-profile-name";
               }

Why is this important? As an implementor, I need to understand the relationship between these nodes in order to select the right order of RESTCONF commands.

If the leafref is not present, I would assume that the nodes are not related and I could try to delete a “named-bandwidth-profile” that is actually used in a service. Also, when I am trying to delete both a “named-bandwidth profile” and all its associated services, I would need to delete the service first and the profile later (when there Is not instance that reference it).

For all of this to happen, as both nodes belong to different trees, I need to reference them to make the association explicit for a compiler.

Regards,
Roque

---

From: Aihua Guo <[email-masked]>
Date: Mon, 15 Jun 2020 17:39:00 -0400

Hi Roque,

I agree with you. It should be a leafref to allow for YANG auto validation.
Thanks for the catch.

Aihua

On Mon, Jun 15, 2020 at 1:02 PM Roque Gagliano (rogaglia) <rogaglia=
[email-masked]> wrote:

> Hi,
>
>
>
> I implemented the draft and I think the bandwidth-profile should be a
> leaf-ref and not a string (for both directions symmetrical and
> asymmetrical):
>
>
>
>           |  +--rw (direction)?
>
>           |  |  +--:(symmetrical)
>
>           |  |  |        |          string                    We need a
> leafref to the definition of the bandwidth-profile
>
>           |  |  |        +--:(value)
>
>
>
> Why is this important? As an implementor, I need to understand the
> relationship between these nodes in order to select the right order of
> RESTCONF commands.
>
>
>
> If the leafref is not present, I would assume that the nodes are not
> related and I could try to delete a “named-bandwidth-profile” that is
> actually used in a service. Also, when I am trying to delete both a
> “named-bandwidth profile” and all its associated services, I would need to
> delete the service first and the profile later (when there Is not instance
> that reference it).
>
>
>
> For all of this to happen, as both nodes belong to different trees, I need
> to reference them to make the association explicit for a compiler.
>
>
>
> Regards,
>
> Roque
>
>
>
>
> _______________________________________________
> CCAMP mailing list
> [email-masked]
> https://www.ietf.org/mailman/listinfo/ccamp
>

---

From: Daniele Ceccarelli <[email-masked]>
Date: Tue, 16 Jun 2020 07:23:53 +0000

I agree as well, makes a lot of sense.
Thanks Roque for spotting it.

Daniele

From: CCAMP <[email-masked]> On Behalf Of Aihua Guo
Sent: den 15 juni 2020 23:39
To: Roque Gagliano (rogaglia) <rogaglia=[email-masked]>
Cc: [email-masked]
Subject: Re: [CCAMP] draft-ietf-ccamp-client-signal-yang references to bandwidth profiles, make it a leafref

Hi Roque,

I agree with you. It should be a leafref to allow for YANG auto validation. Thanks for the catch.

Aihua

On Mon, Jun 15, 2020 at 1:02 PM Roque Gagliano (rogaglia) <rogaglia=[email-masked]<mailto:[email-masked]>> wrote:
Hi,

          |  +--rw (direction)?
          |  |  +--:(symmetrical)
          |  |  |  +--rw ingress-egress-bandwidth-profile
          |  |  |     +--rw (style)?
          |  |  |        +--:(named)
          |  |  |        |  +--rw bandwidth-profile-name?
          |  |  |        |          string                   <-- We need a leafref to the definition of the bandwidth-profile
          |  |  |        +--:(value)

Regards,
Roque

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