SNMP Simulator Project Logo
SNMP Simulator introduction
Producing SNMP snapshots
Simulating SNMP Agents
Transport-based variation
Sharing snapshots
MIB-based simiulation
Simulation based on captured traffic
Simulation with variation modules
Recording with variation modules
Managing data files
Large scale simulation
Tips and tricks
Download & Install
Github repo
Adding features
Simulation Service
Get SNMP Simulator at Fast, secure and Free Open Source software downloads

Adding new features

We are thinking of further Simulator development in these particular areas:

  • Adding Notification Originator: to fully simulate an Agent, it should be possible to generate TRAP and INFORM notifications on its behalf. Arbitrary messages should be issued at pre-recorded or pre-programmed moments of time and also as a reaction to certain changed to Managed Objects state. Done at 0.2.0.
  • Adding SQL database backend: current implementation uses a plain-text files for keeping static Agent snapshot. Many Simulator users requested a value variation feature to be supported so that simulated Agents would look live, not static. We are thinking that the variation and also dependencies features would be best implemented as a relational database application. With that new design we would move the contents of .snmprec files into a SQL database so that the snapshot values could be modified by both Simulator and an external application breathing life into simulated Agents. Done at 0.2.0.
  • Recording and replaying a series of snapshots: from our perspective, it looks useful to be able to run snmprec tools several times in a row and store snapshotted data as a time-ordered collection. Then we would make Simulator replaying snapshots choosing particular instance based on current time (both snapshotting period on recording and time scale on replaying would be configured). Done at 0.2.1.
  • Re-working data files indices implementation to get rid of dichotomy-based in-file search what ultimately allows long-awaited comments in data files, custom-ordered OIDs and better performance on GETNEXT/GETBULK operations.
  • Loading/unloading and re-loading data files automatically and without Simulator restart. This proved to be especially useful in cases where stateful variation modules are in use. Done at 0.2.4.
  • Letting data files and variation modules configuring custom SNMPv1/v2c community names and SNMPv3 context names. That would allow arbitrary context names (not just a hash values) and would let users override file hierarchy-based credentials assignnment.
  • Simulating SNMP table: while the latest Simulator release supports writable OIDs and SQL backend (which also allows for writable OIDs with potentially complex logic triggered by their access), we think a lightweight variation module readily implementing a RowStatus-driven SNMP table would also be handy. Users of that module would invoke it from their .snmprec file for an OID subtree serving their SNMP table. The module would accept basic configuration parameters such as: table columns OIDs and types, valid index ranges, default initialization parameters.
  • Rendering simulation data from a Python template based on a bunch of variables from SNMP query, process and host contexts.
  • Simulating SNMP Notifications: current Simulator implementation can only simulate SNMP Command Generator operations. The idea is to be able to record SNMP Notifications coming from live SNMP Agents, store and replay them at configured rate and possibly modified (variated) values.
  • Implementing admin interface: we are considering the addition of a browser-based management interface to the suite of snmpsim scripts that would let user record and replay snapshots through a web browser. It would also let you configure simulated Agents by move of a mouse.

If you need some other feature - please open a GitHub feature request. If you need something to get implemented as soon as possible, please get in touch so we can possibly discuss a commercial development project.

Need help? Open an issue at GitHub or ask question at Stack Overflow or try browsing snmpsim-users mailing list.