
Hi Jeroen/All; On 3/13/12 1:45 AM, thus spake Jeroen van der Ham:
Hi,
On 12 Mar 2012, at 21:23, Jason Zurawski wrote:
This still seems like a lifetime to me:
<nml:topo id="freekishnet"> <lifetime> <start>Sun Mar 11 13:25:33 EDT 2012</start> <end>Mon Mar 12 17:20:00 EDT 2012</end> </lifetime> <!-- awesome stuff --> </nml:topo>
<nml:topo id="freekishnet"> <lifetime> <start>Mon Mar 12 17:20:00 EDT 2012</start> <!-- lack of end or duration means current? --> </lifetime> <!-- more awesome stuff --> </nml:topo>
It becomes explicit that one has a shelf life, and the other is ongoing. With 'version' you are left with an arbitrary mark that something is different (and it may be the case that its a date, but it could be just '1' or '2a'). If we see the later being more common, I suppose the use case is different and in this case we may want both to be allowed.
While we so far have not shied away from verbose solutions, the above is way too verbose for my liking. In your proposal, when I announce a new topology, I have to send the old one with an ended lifetime, and also the new one with a lifetime element, with just a start.
I don't see this as 'sending' anything, its a bookeeping step the same as creating a new topology. The amount of work (and verbosity) is similar to any other operation.
Version numbers have worked for DNS, I see no reason why this would be any different.
Clarify this - is 'version' just something that lives on the 'topology' element, or is version something that all elements now contain? Can we version nodes (e.g. a switch got a firmware update, or new ports added), or links, or ports, or anything else in our universe?
At the same time, Lifetime does have a valid use for describing reservations, virtual machines, or crossconnects. This use of Lifetime to me is a completely different meaning than versioning topologies. A reservation ceases to exist after its end-time. A topology is not something that usually has an intended lifetime, it is, and may be updated in the future.
I have always rejected ideas that don't add 'new' information. I don't see version as adding anything new that lifetime doesn't already feature. Unless there is a compelling new use case that has not been described yet, I remain unconvinced that its vastly different. Thanks; -jason