[Nml-wg] About modelisation of the network description
Aaron Brown
aaron at internet2.edu
Thu Mar 27 13:25:06 CDT 2008
Things had gotten a bit quiet so I figure I should open up a can of
worms :-) .
Freek Dijkstra wrote:
> In short: name MUST NOT be context-sensitive. I think it is bad if I
> can only describe an interface as "eth0 of host3 in network 8". I much
> rather say interface "intf639" and only if required tell that it is in
> "host3" and that "host3" is in "network8".
>
> Of course, this requires that names are globally unique. I prefer to
> use opaque names (any string, without syntax requirements), as long as
> it is unique. URIs come to mind.
If we mandate that *all* naming is completely context independent, then
when given a random identifier, users are completely at a loss (since no
context implies no domain information) as to where to get information on
an element. If the only context it has is "this domain contains [uuid]",
our schema can work like that except it adds a bit of extra information
on it so you can type-check a given id. For example, if you didn't want
any hierarchy below domain, you could just label everything like:
urn:ogf:network:domain=Internet2.edu:node=node1345
urn:ogf:network:domain=Internet2.edu:port=intf639
urn:ogf:network:domain=Internet2.edu:link=link23
By defining an allowed hierarchy, we allow administrators to construct
context dependent elements if they want, and when they do, we know what
the structure means. It also makes it truly trivial to generate unique
identifiers that retain some meaning. When discussing a specific port,
"urn:ogf:network:domain=Internet2:port=intf639" is not as readable as
"urn:ogf:network:domain=Internet2:node=packrat:port=eth0". The latter
may be longer, but it's significantly more readable and has the added
benefit of allowing you to summarize a list of interfaces on packrat as
"urn:ogf:network:domain=Internet2:node=packrat:port=*" which would be
impossible without the hierarchy.
I'm not saying that we should prevent administrators from having
elements named in a context-independent way inside of domains, just that
we should allow the option of context-dependent ids in a way that other
domains can understand.
Cheers,
Aaron
More information about the nml-wg
mailing list