1[1] What is SMUX? 2 3SMUX is the snmp multiplexing protocol (RFC 1227). It can be used by an 4snmp agent to query variables maintained by another user-level process. 5 6[2] Why is it relevant to net-snmp? 7 8The original ucd-snmp agent needed a mechanism to query statistics from 9GateD. GateD has traditionally supported this functionality via SMUX. 10Hence SMUX was implemented within the ucd-snmp framework to extract 11routing protocol statistics from GateD. 12 13net-snmp continues to support smux, and many applications still use it. 14 15[3] What is GateD? 16 17GateD is the 'Gateway Daemon' which implements a variety of routing 18protocols on a variety of platforms (OSes). This was formerly available 19as open source, but has since been made closed and entirely un-free. 20Other routing protocol daemons such a quagga (http://www.quagga.net) 21support SMUX. 22 23[4] Can SMUX extract statistics from other user-level processes? 24 25Yes, the current implementation allows for the registration of any MIB 26that might be registered by a SMUX peer. 27 28[5] How does it work? 29 30Assuming 'snmpd' is already up and running, when the SMUX peer comes up, 31it identifies itself with an oid identifier and string password, and 32registers any MIBs it would like to implement. When 'snmpd' receives 33queries for these MIBs, it passes these queries to the peer. 34 35[6] Who implemented SMUX for ucd-snmp? 36 37SMUX was implemented by Rohit Dube. He had oodles of help from 38ucd-snmp-coders (Dave, Niels, Wes, Simon, Felix, Leonti) and gated-people 39(Acee, Feiyi, Larry, Sue). [If I missed somebody, sorry in advance and 40do let me know]. Later, Nick Amato re-write the entire SMUX package so 41the code today is mostly his. 42 43[7] How do I find out more about SMUX? 44 45Read the RFC and the code, mainly, but only for legacy code. 46 47*New* sub-agent development should use the AgentX protocol instead, 48which is not only standardized (RFC 2741 + 2742), but is outright superior 49to smux in a number of important ways (handles SET requests reliably, 50able to handle overlapping registrations, aware of SNMPv3 contexts, etc.) 51 52Only build new smux support if you have to. 53