"No task is so humble that it does not offer an outlet for individuality"
-----Original Message----- From: dave.shi...@googlemail.com [mailto:dave.shi...@googlemail.com] On Behalf Of Dave Shield Sent: Monday, March 30, 2009 4:44 PM To: Tanisha Kashyap Cc: net-snmp-users@lists.sourceforge.net Subject: Re: sending traps 2009/3/30 Tanisha Kashyap <tanisha.kash...@aricent.com>: > What's the difference between a dynamically loaded module and a subagent. Whenever you're working with SNMP, you'll always have an "agent" - a process that is running all of the time, and will respond to requests for information. ==> This agent is the net-snmp daemon snmpd? The question is how this agent know what information to return for any given request. Some information will be handled within the agent itself, so can be returned directly. There's no need for it to look elsewhere. But some information may not be available to this agent process, so the agent needs to be extended to be able to handle those requests. One approach is to write a new chunk of code, and include it within the agent (by recompiling the agent, and restarting it). So you've essentially got a new agent, that knows a bit more than before. This is the most efficient approach, but does involve a (hopefully short) break in service. ==>is the agent code recompilable? I read in Solaris handbook that the agent code cannot be recompiled. A related approach is to write the same new chunk of code, but compile it into a .so file, and have the main agent load this dynamically. That way, it now knows about the new information, and can respond to request - but it's never actually stopped running. This is known as a "dynamically loaded module". ==>Since the dynamically loaded module will be a .so file which is called when the snmpd comes up so how does it run like a process? Both of these end up with a single agent process running on the system. The idea of a subagent is to take the same new chunk of code, but compile it into a separate application ("subagent") which runs as a separate process. This then connects to the main ("master") agent, and offers to handle requests for this new information. So here you now have *two* processes running at the same time. ==>how is the subagent actually developed. This information is crucial since it would really help me decide what approach I should take. Typically, the MIB code itself is likely to be more-or-less the same in each case. The differences are in how these MIB modules are plugged into the overall agent framework - are they included within a single SNMP agent (either statically or dynamically), or are they run as part of a separate subagent. Dave "DISCLAIMER: This message is proprietary to Aricent and is intended solely for the use of the individual to whom it is addressed. It may contain privileged or confidential information and should not be circulated or used for any purpose other than for what it is intended. If you have received this message in error,please notify the originator immediately. If you are not the intended recipient, you are notified that you are strictly prohibited from using, copying, altering, or disclosing the contents of this message. Aricent accepts no responsibility for loss or damage arising from the use of the information transmitted by this email including damage from virus." ------------------------------------------------------------------------------ _______________________________________________ Net-snmp-users mailing list Net-snmp-users@lists.sourceforge.net Please see the following page to unsubscribe or change other options: https://lists.sourceforge.net/lists/listinfo/net-snmp-users