You are viewing a plain text version of this content. The canonical link for it is here.
Posted to gui-dev@apache.org by Calvin Justin Seiferth <se...@www.disa.mil> on 1997/10/30 07:57:12 UTC

Apache SNMP Configuration

I'm glad you and your tutor found the project interesting.  Coincidently
enough another person on the project is also from Spain, Mario, please
meet Daniel.  I don't know where in Spain either of you are from-
hopefully not hundreds of kilometers apart. Harrie is much more
knowledgeable than I on SNMP programming, unfortunately it seems his
mail server has been down some lately.

Here's some information that I hope will get you started. There's some
background info and software followed by some pointers specific to this
project. I think the first two hurdles are getting to feel comfortable
with SMUX development if you're not already and to begin to formulate
the MIB itself.

Background Info

SNMP Libraries
 The most widely used snmp library CMU SNMP library. This distribution
is available from http://www.net.cmu.edu/projects/snmp/.  On that site
there are several other SNMP-enable application examples you might pull
code from.

SNMP Servers
If you are using Linux then an snmpd (server) should already be included
with your distribution, if not you can get a copy from:

http://www.gaertner.de/snmp/
or:
http://www.informatik.fh-wiesbaden.de/dokumentation/Linux/cmu-snmp.html
    - this URL contains a user's guide to SNMP server use.

SNMP-enabling Applications
Here's a useful guide to SNMP enabling applications.  It's from the SCO
site but cover's the basics:

 http://scohelp.tomcat.ru:457/netguide/smuxN.develop_smux_peers_for_snmp_agents.html

Specific Info
Enough with the background.  I've updated the site on
Butler.disa.mil/ApacheConfig to include a link to some thoughts on
internal data structures for the configuration server.  Don't know if
the additional info will be useful or confusing :)  I will also try and
send you an outline of what is called the "broker class".  This is a
class implemented in C++ and Java which will serve as a wrapper to the
SNMP specific code.  The idea is to have a core thread handling all the
SNMP communication (that's you!) which will communicate with the rest of
the server via the broker's methods.  The broker will abstract away the
details of SNMP communication into a relatively simple interface.  Feel
free to make whatever changes you think are appropriate to the broker
class, we just need to all keep in touch so that everyone understands
what the class interface looks like.

On the MIB itself,  Harrie suggested the use of tables to store the
specific directives.  The tables will be dynamic because the Apache
directives change some from version to version of the server.  I had
suggested separating the table into at least three rows- "core",
"core-modules", and "modules".  I had hoped that this would allow some
aspects of the MIB to remain constant across versions.  Apache can be
built with certain features (modules) enabled or disabled.  The table
structure is intened to accomodate this because the tables can be
switched on and off depending on the compiled configuration of the
server.  Since the "core-modules" and "core" directives remain
relatively constant, the thought was that once this part of the MIB was
defined there shouldn't be much work required to keep it up do date.
The "modules" section changes as other developers add or modify features
of Apache so those authors would each be responsible for coming up with
an update to the basic MIB to accomodate their changes.  The different
columns in the tables would correspond to the various directives.

Hope this isn't too much but is enough info for you to start thinking.
As I said, I'll try and get a "broker" out to you this weekend.

Justin