North American Network Operators Group

Date Prev | Date Next | Date Index | Thread Index | Author Index | Historical

Re: PSINet/Cogent Latency

  • From: Matt Zimmerman
  • Date: Tue Jul 23 09:56:16 2002

On Tue, Jul 23, 2002 at 02:40:10AM -0400, Richard A Steenbergen wrote:

> While you're at it, eliminate the forking to the rrdtool bin when you're
> adding data. A little thought and profiling goes a long way, this is
> simple number crunching we're talking about, not supercomputer work. The
> problem comes from the perl mentality (why is there no C lib for
> efficiently adding to an rrd db? because they're expecting everyone to
> call it from perl :P), "it's good enough for my couple boxes and you can
> throw more machines at it".

There is a C library, librrd.  That is how the other language APIs are
built.  As to efficiency, there is a lot of stringification, which is
inconvenient and unnatural in C, but this should not be the bottleneck in
the collection operation.

> But again, I have no doubt that if you designed it properly you could
> throw lots of snmp queries and scale decently to a nice sized core
> network, I've seen it done. The problem is potential communication loss
> between the poller and the device, and the amount of work that the device
> (which usually isn't running gods gift to any code let alone snmp code)
> has to do for higher sampling rates with many interfaces.

That said, bulk statistical exports from the device itself can easily be
more implemented efficiently than SNMP.  But unless the export process is
universally standardized, SNMP (for all its warts, and it has many) will
still have an edge in that it works nearly everywhere (for varying values of

 - mdz