[Infrastructures] using IA methodologies to build network
element configuration
Brent Chapman
Brent@GreatCircle.COM
Sat, 2 Apr 2005 18:58:46 -0800
At 2:55 PM -0500 4/2/05, Daniel Hagerty wrote:
> > In the networking world (I am not including firewalls in this), I have
> > not yet seen that much data is duplicated and needs to be normalised.
> > If you think that normalisation will help, I am for it.
>
> So what do you think the routing policy of a network is? In my
>mind, it's a distributed object (I could invent a language that
>described the routing policy for an entire network) that is somehow
>realized in pieces across each element within a network. That strikes
>me as duplication of some form, even if the precise aspect of the
>duplicating may not be obvious.
Exactly. In many cases, you aren't actually "duplicating" info onto
different network devices, but rather deriving specific info for each
device from some common source.
> The routing policy is by far from the only example (like the
>firewalls you're avoiding), but it all comes down to the same problems
>in the end:
>
> You have a large, distributed system. Each part of it has to be
>consistent with the the whole for the distributed system to perform
>correctly. Whether the distributed system consists primarily of unix
>machines, or routers is of little consequence -- distributed system
>is distributed system.
Yes, precisely; that's a good explanation.
> If the world was perfect, you could write down a language that
>described your entire distributed system, and produce all the other
>configuration aspects of it from this one uber language. In practice,
>there's some getting there from here to achieve this. People are able
>to do it now to more or lesser extents, but we're still producing
>these languages in an ad hoc fashion.
I've been toying with the idea of creating a system (database,
language, etc.) for describing networks in enough detail that you
could build various tools on top of the system to produce
configurations for particular devices. So, for instance, you would
describe your network in this system, and then run one tool against
that description to generate a Cisco config for a particular router,
another tool to generate a Juniper config for another router, yet
another tool to generate an Alteon config for a particular load
balancer, etc. And still another tool to generate Cricket config
files to do SNMP performance monitoring of all the devices in your
network, and another tool to generate Nagios configurations for SNMP
status monitoring, and another tool to generate Snort configs for
sensors in particular locations, and so forth. All running against a
common, shared description of your network.
-Brent
--
Brent Chapman <brent@greatcircle.com> -- Great Circle Associates, Inc.
Specializing in network infrastructure for Silicon Valley since 1989
For info about us and our services, please see http://www.greatcircle.com/
Network Automation blog: http://www.greatcircle.com/blog/network_automation