TraMoS
Traffic Management over SNMP
General Info
Diese Software soll einmal dazu dienen, Trafficinformationen ueber SNMP
abzufragen, anzuzeigen und basierend darauf Traffic Shaping rules mittels
tc und htb festzulegen.
Mehr Infos gibt es auch beim Linux Advanced Routing howto.
Der Serverpart (SNMP daemon) wird von mir in C geschrieben, Joerg schreib das
grafische Frontend in Java.
CVS repository access:
Please read general notes about cvs acccess.
The repository for this project is /cvs/tramos. The modules are server,
client and docs. Specify all for all modules.
Required SNMP Server
Ich benutze Net-SNMP als daemon. Net-SNMP
umfasst alles was man braucht, snmpd, utilities, libs und API infos. Die zugehoerigen
Pakete heissen unter Linux net-snmp, net-snmp-devel, net-snmp-utils. Fuer Windows hab ich
das mal kompiliert: Net-SNMP 5.1.1 Win32 binaries.
MIB Module Informations
Unser OID Prefix:
1.3.6.1.4.1.19399.8.42
Leider mussten wir feststellen, das eine hierarchische Struktur wie anfangs geplant
nicht mit SNMP umgesetzt werden kann. Daher wurden alle Datenstrukturen in flache
Tabellen umgewandelt.
Wenn man's mal ausprobieren will:
export MIBS=TRAMOS-MIB
snmpwalk gonzo.nuschkys.net traMIB
Hier der Baum der Mibs:
+--traMIB(1)
|
+--traIfTable(1)
| |
| +--traIfEntry(1)
| | Index: traIfID
| |
| +-- -R-- INTEGER traIfID(1)
| | Range: 1..2147483647
| +-- -R-- String traIfName(2)
| | Size: 0..255
| +-- -R-- String traIfComment(3)
| | Size: 0..1024
| +-- -R-- INTEGER traIfTraffic(4)
| Range: 0..2147483647
|
+--traClassTable(2)
| |
| +--traClassEntry(1)
| | Index: traClassIfID, traClassID
| |
| +-- -R-- INTEGER traClassIfID(1)
| | Range: 1..2147483647
| +-- -R-- INTEGER traClassID(2)
| | Range: 1..2147483647
| +-- -R-- INTEGER traClassParent(3)
| | Range: -1..2147483647
| +-- -R-- String traClassComment(4)
| | Size: 0..1024
| +-- -R-- INTEGER traClassRate(5)
| | Range: 1..2147483647
| +-- -R-- INTEGER traClassCeil(6)
| | Range: 1..2147483647
| +-- -R-- INTEGER traClassBurst(7)
| | Range: 1..2147483647
| +-- -R-- INTEGER traClassPriority(8)
| | Range: 1..2147483647
| +-- -R-- INTEGER traClassQuantum(9)
| Range: 1..2147483647
|
+--traRuleTable(3)
| |
| +--traRuleEntry(1)
| | Index: traRuleIfID, traRuleClassID, traRuleID
| |
| +-- -R-- INTEGER traRuleIfID(1)
| | Range: 1..2147483647
| +-- -R-- INTEGER traRuleClassID(2)
| | Range: 1..2147483647
| +-- -R-- INTEGER traRuleID(3)
| | Range: 1..2147483647
| +-- -R-- String traRuleProtocol(4)
| | Size: 0..15
| +-- -R-- String traRuleDest(5)
| | Size: 0..19
| +-- -R-- INTEGER traRuleDestPort(6)
| | Range: 0..65536
| +-- -R-- String traRuleSource(7)
| | Size: 0..19
| +-- -R-- INTEGER traRuleSourcePort(8)
| | Range: 0..65536
| +-- -R-- String traRuleTos(9)
| | Size: 0..15
| +-- -R-- String traRuleLength(10)
| Size: 0..15
|
+--traStatTable(4)
| |
| +--traStatEntry(1)
| | Index: traStatIfID, traStatID
| |
| +-- -R-- INTEGER traStatIfID(1)
| | Range: 1..2147483647
| +-- -R-- INTEGER traStatID(2)
| | Range: 1..2147483647
| +-- -R-- String traStatProtocol(3)
| | Size: 0..15
| +-- -R-- INTEGER traStatPort(4)
| | Range: 1..65536
| +-- -R-- INTEGER traStatTraffic(5)
| Range: 1..2147483647
|
+--traMIBConformance(6)
|
+--traMIBCompliances(1)
| |
| +--traMIBCompliance(1)
|
+--traMIBGroups(2)
|
+--traGroup(1)
|