How to Implement SNMP Proxy using SNMP Agent Toolkit C EditionOverview In original model of SNMP Management, it is a monolithic Agent that used to carry out all the management responsibilities on a given network element (node). This solution was not flexible enough to provide an effective management of increasingly complex and distributed systems. In addition to the Agents typically provided by computer manufacturers for hardware and operating system information, other software vendors for SQL, Application servers, etc, also produce Agents. Also in distributed systems where different components of the product will be present in different network nodes (different IP address), each component needs its own management requirement for which each component will have an SNMP Agent. However, there should be a single gateway for managing the entire product (distributed components). This disadvantage of the original SNMP model, being unable to accommodate such complex and heterogeneous systems, is solved using Master - sub-agent concept where the Master Agent acts as a proxy for other SNMP Agents. AdventNet Agent Toolkit provides generic comprehensive Master sub-agent architecture for making Agents sub-agent to Master Agent on the fly. This dynamic behavior can be accomplished by the "Dynamic Registration concept in Master sub-agent Architecture". SNMP Master Agent The Master Agent is an entity or process on a managed node that exchanges SNMP messages with the Management applications, such as AdventNet Web NMS, HP Openview, IBM Tivoli, etc. It acts as a primary interface between the Network Manager and sub-agents. SNMP Sub-Agent Sub-agents are processes that access the management information and provide manageability to various applications/components within a system. These sub-agents interact with the Master Agent using SNMP. Creating Master Agent All the SNMP Agents generated using Agent Compiler can act as both Master Agent and sub-agent. By default, the generated Agent acts as a standalone monolithic Agent Creating Sub-Agent All the SNMP Agents generated using Agent Compiler can act as both Master Agent and sub-agent. By default, the generated Agent can directly act as a sub-agent. There is no specific option to make an Agent act as a sub-agent. Any SNMP Agent can act as a sub-agent. Sub-agent's particular host and port number are to be registered in the Master Agent. So, create a simple Agent using a MIB (from which you prefer to access the details) and make it act as a sub-agent. Registering Sub-Agents in the Master Agent The Master Agent maintains the proxy table, which is used to store sub-agents information. Each entry/row in this table refers to one sub-agent. Each row has one sub-agent's information, such as OID, context name, instance value, ipaddress, port number, community, version, timeout, retries, etc. Adding an entry to this table means we are registering one sub-agent in the master agent. Types of Master - Sub-Agent Relationship Considering the design and the complexity of the distributed systems,
it is very difficult to have just normal OID-based Master - sub-agent
relationship. This made us evolve the Master - sub-agent relationship
further and made us support different types of Master - Sub-agent
relationship, such as Context-based registration and Instance-based
registration.
Knowing the Status of the sub-agent (Heart Beat Mechanism) Sending Traps From Sub-Agent The sub-agent can send Traps to the Manager in two ways,
Filtering Traps Received from sub-agent Using Trap Receiver Table The Master Agent has one module called the trap receiver. The main functionality of this module is to listen for traps from sub-agents, filter them and forward them to all the Managers. It maintains a table called the Trap Receiver Table, which has a set of sub-agents information, which can send traps to the Managers through Master Agent. The sub-agent registrations in the Trap Receiver Table purely depend on your requirement. You can either include all the sub-agent details present in the Master Agent (proxyTable) or a particular set of sub-agents from which you prefer to receive Traps. Using this implementation the Master Agent restricts the access of the sub-agents to send Traps to the Master Agent. It is a sort of filtering. Configuring SNMP V3 in Proxy AdventNet SNMP Agent also supports Proxy Concept in SNMPV3. Mostly, the Master and sub-agents run in a private network and only the communication between a Manager and the Master Agent takes place in a public network. Hence, the Agents running in a private network may not require SNMP V3, as they would be well secured. Having this in mind, AdventNet's implementation provides only v1/v2c support to sub-agents. Even if the Manager sends a request of V3 type, the Master Agent being a V3 Agent would convert the V3 request to a V1/V2c Request and forward the PDU to the sub-agents. The V1/V2c Response would be further converted to a V3 response and sent back to the Manager. Configuring AdventNet Agents as sub-agents to Third-Party Agents (including OS Native agents) Because the Master - sub-agent communication uses SNMP PDU, any Agent that understands SNMP can be made as sub-agent to AdventNet Master Agent. Even the Native Agents can be made as sub-agent to AdventNet Master Agent. AdventNet Agents can also be made as sub-agents to Third-Party Agents / Native Agents. This helps to derive the data of the OS you prefer. The supported OS by AdventNet are Windows and Solaris. |
||

