Project Structure

The main elements of the project are:

The data tables

The data tables are collection of files where each of them contains the list of MAC addresses in the LAN vs. another type of data. They were thoroughly discussed in Chosen methodschapter.

The collecting scripts

The collecting scripts are a set of PERL scripts, each one named after the pair of related data it collects, like, for example mac-ip.pl or name-user.pl

Part of them invokes system tools snmpwalk, nslookup that yield the data into standard output stream and then parse them (mac-ip.pl, ip-name.pl, mac-hub.pl), others pick up on external databases and parse them all by themselves (name-user.pl, hub-pph.pl). The collection stage ends with creation of the temporary files containing the chained pairs of the relationships. Those scripts are supposed to run scheduled or for checking.

The arranging script

The arranging script cfg.pl takes the temporary chained data files and arranges them into tables where all data is according to the MAC addresses in the LAN. This script is supposed to run right after the collection scripts and should be scheduled.

The queries mechanism

Here we created a major PERL library file containing all the search mechanism - queries.pl and we require it in two files that serve as interfaces to this library squery.pl(single query) and mquery.pl(multiple query) The two latter scripts are created in a way that they can be used in a slightly modified way squery-cgi.plalso from HTML UI, just because an indicating HTML flag is being passed.

Those files may be scheduled to check for some information regularly, but they are also very convenient for running them at any needed time.

Also there is a configuration parser library match.pl which fishes out the needed parameter according to the given name of it out of the main configuration file snmp.ini

The HTML interface files

Those files are regular HTML forms, both Query squery.html and Install install.html. They contain a hidden element which indicates an HTML oriented output should be issued. The argument data type can be selected as RADIO type since it can be only of one type, while the requested data type, which looks symmetrical is of CHECKBOX type, since we may want to seek several kinds of information about the argument.

The installsnmp.pl file takes is the script of installation.

The configuration files

We present several files configuring user's LAN to be treater with our project. Main configuration file is the snmp.ini and it contains all the definitions we need to run our tools. It contains them in a simple form of
FIELDKEY=value
This is a form very easy for the parsing.

Two other configuration files are defined in snmp.ini and contain lists of hubs and routers correspondingly: hubs.lst and routers.lst


romm@empire.tau.ac.il
Last modified: Thu Jun 5 07:19:13 1997