On 7 April 2010 02:39, Piljoo Choi <[email protected]> wrote: > -What is agent, master-agnet and subagent and what is the relationship > between those?
>From the point of view of the querying application, there is simply a single "SNMP agent" running on a given box. This accepts requests and processes them - returning the requested information or applying the ]specified changes. The agent is effectively a black box - the management software doesn't know (or care) how it works internally. Looking at this on the system being managed (i.e. the target of these requests), there are a number of possibilities. The simplest is that the view from the manager is correct - there is indeed a single agent process running. In that case, talking about "master agents" and "subagents" is irrelevant. However it's also possible for the managed system to divide up the work among several processes. One of these is the "master agent", which listens for incoming requests from the management application and passes them on to one (or more) of a number of "subagents". These subagent will process the request, and pass the result back to the master agent. This then collects all the results together, and returns the combined response back to the original sender. A pure master agent will pass *all* requests on to the appropriate subagent(s), while a more complex version (like the Net-SNMP agent) may process some varbinds internally, while passing other requests on to the subagents. The standard mechanism for communicating between the master agent and subagents is called "AgentX". It's basically similar to the SNMP protocol (used for communicating between the management application and the master agent), but with some differences due to the specific requirements of inter-agent cooperation. But all of this is invisible to the requesting application - this simply sends a request and receives a response. How the work is divided up by the agent is not important. > Where the MIB plays a role in this picture? The MIB is essentially a design document - it specifies what information is potentially available, and how this is structured. It allows the client application to interpret the results correctly - i.e. using names instead of numeric OIDs, enumeration names instead of bare values, displaying values with the appropriate units, etc It's also used by the MIB agent coder as a starting point for writing the code to implement that information. As I said - it's a design document. > -What is differences between snmp4J-Agent and snmp4J-AgentX? No idea - this list is for supporting the Net-SNMP suite. You should ask the snmp4J people about their software. > I need to handle a net-snmp request in Java. There is no such thing as a "net-snmp request". The protocol is SNMP. Net-SNMP is simply one implementation of this protocol - but you can mix different clients, subagents and master agents from assorted vendors. That's the point of network standards, so that everything can work together. > Which one should I use? Whichever one you are happiest working with. > Currently we > have C++ sub-agent codes that connects to the master agent(using TCP > address)and I need Java sub-agent to act like the C++ sub-agent does except > Java sub-agent will be running on a remote machine. Basically, one C++ > sub-agent(we do have that) and one Java sub-agent(I need to create) that > will connect to the remote master-agent(only one master and only one MIB > currently).Is that O.K right? That would work, yes. > because sub-agent uses TCP address-a sub-agent > can connect to remote master agent running on a different box. As long as the master agent is accepting connections on the TCP port, then yes - you can run the subagent on a different box. The AgentX protocol certainly supports this - whether the master agent you are using does will depend on what agent you use, and how it is configured. >  And Is that > possible one master-agent having c++ subagent and Java sub-agent? Yes > And Which one should I pick between snmp4J-Agent and snmp4J-AgentX? You should ask the SNMP4J people about that. My guess is that you need to use snmp4J-AgentX if you want to use AgentX communication. But that software is nothing to do with us - you should ask the people that actually know about it. Dave ------------------------------------------------------------------------------ Download Intel® Parallel Studio Eval Try the new software tools for yourself. Speed compiling, find bugs proactively, and fine-tune applications for parallel performance. See why Intel Parallel Studio got high marks during beta. http://p.sf.net/sfu/intel-sw-dev _______________________________________________ Net-snmp-users mailing list [email protected] Please see the following page to unsubscribe or change other options: https://lists.sourceforge.net/lists/listinfo/net-snmp-users
