General Info
This software allows to query, display and administrate Linux traffic shaping rules over SNMP. TraMoS was a project I did at university, and I used it for a while at home.
The server-side is based on SNMP (d’oh), tc and htb. More infos on the underlying Linux software can be found at the Linux Advanced Routing howto. I wrote the server side, which consists of a SNMP daemon interfacing with NET-SNMP, in C.
The client is a Java Swing client that allows to graphically administrate hierarchical rulesets. It has been written by a collegue of mine.
Download TraMoS
Unfortunately, I’ve lost the final version of the documentation, but here’s the final, working software:
Required SNMP Server
The project requires Net-SNMP as a base daemon.
Net-SNMP includes everything required (libraries and the like). The server side part of TraMos is an extension to Net-SNMP.
MIB Module Informations
Our own OID prefix is: 1.3.6.1.4.1.19399.8.42
Download MIBs
|
+--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)