Files
oopt-gnpy/docs
Jan Kundrát 936b17c151 YANG: Network Topology
The topology model (`tip-photonic-topology`) uses `leafref`s for
"instantiating" actual nodes from models defined in the equipment
library. The topology is unidirectional.

At first, I used an ad-hoc, custom topology for simplicity. This was
changed in response to Jonas' comment; there's clearly no need to
reinvent this particular wheel. Now the model builds on top of RFC8345.

Both [`ietf-network-topology`](https://tools.ietf.org/html/rfc8345#section-4.2)
and the associated `ietf-network` are needed.  The augmentations make it
a bit harder to see the YANG rendering of the resulting modules, but
that's just how the IETF model was designed.  There's nothing to fix on
our side.

The `must` statements which ensure that a topology is well-connected
leaves much to be desired. I guess I just don't buy the reasoning about
`require-instance: false` given in the RFC. If you need to break
topology, use a datastore which is defined to have broken referential
integrity, e.g., `operational`. Oh well.

Unlike the previous JSON files, this puts the fiber data into `nt:link`.

This occurred to me when in Angers at the face-to-face meeting. I talked
with Esther about the way the
draft-ietf-ccamp-optical-impairment-topology-yang is structured.
Basically, they decided to stick the whole Optical Multiplex Section
(OMS) into a `te:link` instead of using topologies and layer adaptations
-- something which felt strange to me, given my software engineering
background and (especially) my lack of hands-on experience with building
and running of optical networks (it looks like CESNET's focus is quite
unusual after all). One of the reasons for not using a `nw:node` and
using an `nt:link` instead is that "there's no NETCONF end point to use
to talk to a fiber".

The situation is similar here; there's little point in using a
full-blown node when modeling something which just boils down to a link.
This doesn't mean that the GNPy code shall change -- it's just about
changing the representation in user-facing data, such as network
topologies.

This cuts quite a lot of boilerplate, so it's a good change, IMHO. On
the other hand, I wasn't really able to "optimize out" the extra `Fused`
nodes just yet.

Change-Id: I2208fa81e63df6e13cb502bd2c4b0cfbfdb0ed3b
2021-06-06 12:22:51 +02:00
..
2019-07-04 00:37:23 +02:00
2021-06-06 12:22:51 +02:00
2021-06-06 12:22:51 +02:00
2021-05-31 20:01:46 +02:00
2021-06-06 12:22:51 +02:00
2021-06-06 12:22:51 +02:00