[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: A few potential requirements
- To: ops-nm@ops.ietf.org
- Subject: Re: A few potential requirements
- From: "Wayne F. Tackabury" <wayne@goldwiretech.com>
- Date: Tue, 26 Jun 2001 18:35:40 -0400
- Delivery-date: Tue, 26 Jun 2001 15:39:37 -0700
- Envelope-to: ops-nm-data@psg.com
At 01:51 PM 6/26/2001 -0700, Bill Woodcock wrote:
>Randy brought up a good suggestion, which is that it would be nice to be
>able to diff configurations and get out a result which was itself a valid
>partial config for converting one of the input configs to the other.
That is a good idea, it's a big selling point of our own configuration
management product. However, the ability to do this comprehensively would
need to be designed into any configuration "scripting" notions, and
possibly into the very process of "diff", assuming the "partial" config for
conversion is to be sent to a box without clearing its flash (forcing
interface resets, etc) first.
It gets tricky here in the nature of "converting" as a matter of update,
with some services. Let me give an example drawing from the cisco IOS
configuration format. Let's take the construction of an access list as a
simple example. It's one thing to talk about just adding new clauses to an
access list--that can clearly derive from a "diff" in the classical format:
Started with: access-list 5 deny 192.33.1.56
access-list 5 permit any
New config was: access-list 5 deny 192.33.1.56
access-list 5 deny 193.1.74.241
access-list 5 permit any
Diff is: access-list 5 deny 193.1.74.241
applied to running config
However, in the case like:
Started with: access-list 5 deny 192.33.1.56
access-list 5 permit any
New config was: access-list 5 deny 177.12.19.47
access-list 5 permit any
The "update" config couldn't be derived from diff:
no access-list 5
access-list 5 deny 177.12.19.47
access-list 5 permit any
In general, anything that requires *turning off* a prior association or
clearing a construct requires an intelligent translator for most
configuration formats (I could give a much much more difficult example with
802.1q VLAN activation). This would be the challenge of the kind of
built-in convertibility you propose, to somehow handle this in how it
specifies absence or presence of configuration information.
Regards,
Wayne