Menu

#2305 AgentX - Same Table Support between Multiple SubAent

agentx
open
nobody
agent (1105)
5
2013-07-31
2011-11-11
No

Hi,

I am using Net-SNMP 5.5 in which we configured for AgentX support to handle the mib modules between mulitple subagent and between the devices.
Currently we have problem with registering a table which is supported in multiple subagent. For example, the interface mib section which has information about the interface supported by the device.

To avoid the conflict, we are planning to use shared table approach for the interface mib section between the subagents.

To Implement the Shared Table approach, we have to register the table row-wise for which "netsnmp_table_row_register" function is used.
The "netsnmp_table_row_register" is not working as expected, after registering the table, if we read the table, the snmp agent is going to infinite loop.

Can anyone help in implementing the shared table approach?

If any example code is available, it will be good for my implementation.

Discussion

  • Robert Story

    Robert Story - 2011-11-30

    I'm guessing that the problem is coordination of the ifIndexes among devices. I suggest that you use snmpv3 contexts to have the same table on multiple subagents.

     
  • Krishna Kumar O S

    Thanks for the response.

    For these devices, we have SNMP v1, v2 and v3 support. And the existing agent support the Interfaces table with all three versions. And also, the AgentX Protocol is used to communication with the subagents which will not support the SNMP v3 commands.

    Because of this issues, we can't use SNMP v3 context which from my understanding will work only with SNMP v3 registration.

    Is there any other approach to handle this condition with SNMP v1, v2 and v3 version supports?

     
  • Dave Shield

    Dave Shield - 2011-12-29

    AgentX does actually support use of contexts,
    so there's no problem there.

    However, I'm not entirely sure this will help you.
    The idea of contexts is to allow the a single agent
    (possibly comprising separate sub-agents) to support
    several distinct (but overlapping) portions of the MIB tree.

    I.e. it allows you to request myTable subbplied by subagent A,
    as opposed to myTable supplied by subagent B.

    However if you are talking about a single table, where individual
    rows are supplied by different subagents - then that's a different
    scenario.
    It wouldn't surprise me at all if that isn't working properly.

    Could you try posting the code that you're currently working with,
    so we can try to reproduce/investigate the problem.

     
  • Krishna Kumar O S

    Sorry I have taken so long to reply!

    We used standard Net-SNMP 5.5/Net-SNMP 5.7.1 source by defining different interfaces in subagents like subagent1 supports interfaces from 1 to 50 and subagent2 with 100 to 150. When both the subagents start getting communicate with Master Agent, if subagent1 comes first, it will successfully register the OID for Interface Table(.1.3.6.1.2.1.2). But when the subagent2 comes up, since the Interface Table is already register its OID, the subagent2 request fails to register the table with interface from 100 to 150.

    Is there any standard way to fix this registration issue? or any latest patches are available to resolve

     

Log in to post a comment.