|
WebNMS SNMP API is the most comprehensive development environment for building SNMP-based management applications and applets. The API consists of hierarchy of Java packages that can be used for developing Java-based and Web-based network management products and solutions.
The following image illustrates the organization of the SNMP API architecture.

The high-level API consists of UI and non-UI beans that can be used to build applications and applets that incorporate the SNMP functions provided by the low-level API. These bean components can be used in any Java Bean Builder or directly in the Java code and can be used in developing management applications. The components are built using the functions provided by the low-level API and MIBs API.
The UI beans can be used in developing management GUI applications. The beans provided in this package have SNMP intelligence. This allows building more flexible applications, applets, and components. The non-UI beans form the backbone of the high-level API and the UI beans are built on top of the non-UI beans.
The low-level API implements the core functions of the protocol. It includes classes that facilitate communication with peer SNMP entities and offer message security and privacy to applications and applets. It also includes classes that can be used in management applets running in a browser. It supports multilingual communication with devices.
The low-level API provides the reference implementation of USM and VACM for SNMPv3 entities.
It also offers protocol-independent communication framework for SAS communication, in which you can plug in your transport protocol for SAS communication.
The MIBs API conveys the information about the data available on an SNMP agent. This API allows Java programs to take full advantage of the information contained in MIB module files. It also facilitates loading and unloading of MIBs in applications and applets, in addition to supporting a host of functions that provide the properties of the managed object. The components are built using the variable support functions provided by the low-level API.
The SAS API provides support for the Java applets to get around the security restrictions of the browsers. SAS allows the applet to send and receive SNMP packets to any managed device from the applet host. The SAS server needs to be run with the Web server in which the applet resides.
The RMI API enables you to develop distributed computing applications and server-side applications in Java, to perform SNMP operations. The advantage of the RMI API is that it allows a server to perform the SNMP functions, while the clients only make the RMI calls to the server. The components are built on the non-UI beans of the high-level API.
Like RMI API, CORBA APIs allow remote clients to ask a server to perform SNMP operations and obtain the result. The components of CORBA API are built on the high-level API. The CORBA IDL file for the SNMP is published as part of the WebNMS SNMP API package to convert it into any other language mapping API and use it in the client application programs.
The EJB API enables the developers to build and deploy scalable applications that provide multitier application server architecture, which in turn can support load balancing, failover, transactions, and other high-end capabilities. It creates SNMP bean instances for protocol-specific functions, such as accessing sockets, receiving traps, polling, and so on, as required.
|