Hi Dhruv,
Looks good to me. Thanks for addressing my comments. Wubo, would you agree?
Hi Dhruv,
Hi Dhruv,
>From this sentence, it seems that LTP refers to the LTP in the native TE topology, because in YANG, PE is defined as the PE node in the native TE Topology. While in the YANG model and the Examples in B.1. VN JSON, it looks like "ltp" is the LTP within the abstract node, correct? If so, could the YANG path be modified to a relative path of the abstract node?
Dhruv: Since the 'te-node-id' is not a key, it is not possible to change to relative path like "path "/nw:networks/nw:network/nw:node[tet:te-node-id=current()/../abstract-node]/nt:termination-point/tet:te-tp-id";" Instead I will update the description.
I am not able to understand this comment. I understand that you cannot provide a path like you mention above, but at the same time, Wubo does make a good point. Which LTP is being referred to? The one in the underlying layer or in the abstract layer?
Dhruv: To handle this comment from Bo, I updated the description of this leaf to explicitly say abstract-node.
leaf ltp { type leafref { path "/nw:networks/nw:network/nw:node/" + "nt:termination-point/tet:te-tp-id"; } description "A reference to Link Termination Point (LTP) in the abstract-node."; reference "RFC 8795: YANG Data Model for Traffic Engineering (TE) Topologies"; }
Is there anything else that I should be doing?
It is entirely possible that I have not understood the model, so do educate me if necessary.
By providing an absolute reference, and using the XPath that you have, I get this to be a reference to the underlying layer, not the abstract layer. But maybe the XPaths in the underlying layer are the same as in the abstract layer, in which case I am wrong. Regardless, by using a relative XPath, you will stay in the layer that you are currently in without any confusion. Won’t you?
Dhruv: To handle your comments, I have made this change in the newly uploaded -29 version -
leaf abstract-node {
type leafref {
path "/nw:networks/nw:network/nw:node/nw:node-id";
}
must '/nw:networks/nw:network/nw:node[nw:node-id='
+ 'current()/../abstract-node]/tet:te-node-id' {
description
"The associated network for the abstract-node
must be TE enabled.";
}
description
"A reference to the abstract node that represent
the VN.";
}
leaf ltp {
type leafref {
path "/nw:networks/nw:network/nw:node[nw:node-id="
+ "current()/../abstract-node]/nt:termination-point/"
+ "tet:te-tp-id";
}
description
"A reference to Link Termination Point (LTP) in the
abstract-node i.e. the LTP should be in the abstract
layer, and not the underlying layer.";
reference
"RFC 8795: YANG Data Model for Traffic Engineering (TE)
Topologies";
}
1) Change abstract-node to point to the key node-id 2) Add a must statement to make sure the network is TE enabled 3) ltp leafref points to tp-id in the abstract-node
Thanks! Dhruv
|