Need to speed up PySNMP 3.5.x (PySNMP-se (let alone PySNMP) is still too slow...)


In one of those cases where I'm too clever for my own good, I coded Cinemon to automatically back off from SNMP v2c to SNMP v1 when there were timeouts with the v2c software. The problem is that with v2c I get timeouts all the time due to the rather slow processing of the (large) v2c getbulk messages. That meant that Cinemon was often backing off to v1 operation (which actually works fine, it's just much slower at retrieving the tabular data and far more wasteful in total).

I've made Cinemon not back off unless the failure is in a small payload, but that still leaves me with very long stalls (latency problems) where PySNMP is decoding the (large) messages. I've made the situation not time out, but the latency in parsing just isn't acceptable (Twisted apps are extremely latency sensitive, not having secondary threads in which to process while a given thread is blocking/busy).

Comments

Comments are closed.

Pingbacks

Pingbacks are closed.