Definitions of Managed Objects for Packet Sampling
Extracted elements (24)
Property match filtering (psampFiltPropMatch) exposes only an availability object and no parameter table, because as stated in RFC 5477 Section 8.2.1, there are no agreed-upon parameters for this function and they cannot be retrieved via the PSAMP MIB module.
The PSAMP MIB module is defined purely as a monitoring module (all objects are read-only) because the IPFIX-MIB on which it is built is itself monitoring-only. This deliberately excludes configuration capability from the MIB.
Time-based and count-based sampling share structurally identical MIB subtrees (interval and space parameters) but use different data types — Unsigned32 in packets vs. Unsigned32 in microseconds — because their semantics differ despite apparent structural similarity.
The ipfixFuncSelectAll function (index 1 under ipfixSelectorFunctions) is already defined in the IPFIX-SELECTOR-MIB; PSAMP MIB indexing starts at 2 to avoid conflict. Implementations must not redefine OID 1.
The PSAMP MIB is defined as an extension of both the IPFIX-MIB and the IPFIX-SELECTOR-MIB (RFC 6615). Selector function parameter set indices are shared with the ipfixSelectionProcessTable in the IPFIX-MIB, which references them by OID.
If a packet Selector function (e.g., count-based sampling) is implemented in the equipment, the corresponding PSAMP MIB object group (e.g., psampGroupSampCountBased) MUST be implemented. Implementation of all objects is otherwise optional.
It is RECOMMENDED that implementers support SNMPv3 cryptographic mechanisms (authentication and privacy), and deployment of SNMP versions prior to SNMPv3 is NOT RECOMMENDED.
The psampSampUniProbProbability object MUST NOT carry NaN (not a number) or infinity values; only a finite value in [0, 1] is valid.
Each Selector function exposes an availability object (TruthValue, e.g., psampSampCountBasedAvail) indicating whether the function is currently usable. A function may be unavailable if implemented but disabled due to administrative reasons or resource constraints.
Hash-based filtering (psampFiltHash, OID ipfixSelectorFunctions 7) has eight parameters: psampFiltHashFunction (enumeration: crc32, ipsx, bob), psampFiltHashInitializerValue, psampFiltHashIpPayloadOffset, psampFiltHashIpPayloadSize, psampFiltHashSelectedRangeMin/Max, and psampFiltHashOutputRangeMin/Max, all encoded as Unsigned64TC.
psampFiltHashCapabilities (OID psampFiltHash 2) is defined as an OBJECT IDENTIFIER subtree root to hold hash-function-specific capability objects; it is left unpopulated by this document and reserved for extension.
Random n-out-of-N sampling (psampSampRandOutOfN, OID ipfixSelectorFunctions 4) is parameterized by psampSampRandOutOfNSize (number of packets drawn, Unsigned32) and psampSampRandOutOfNPopulation (parent population size, Unsigned32).
Systematic count-based sampling (psampSampCountBased, OID ipfixSelectorFunctions 2) is parameterized by psampSampCountBasedInterval (consecutive packets sampled, Unsigned32, units: packets) and psampSampCountBasedSpace (packets skipped between intervals, Unsigned32, units: packets).
Systematic time-based sampling (psampSampTimeBased, OID ipfixSelectorFunctions 3) is parameterized by psampSampTimeBasedInterval (sampling window duration, Unsigned32, units: microseconds) and psampSampTimeBasedSpace (gap between windows, Unsigned32, units: microseconds).
The hash function field psampFiltHashFunction is an enumeration with three defined values: crc32(1) as defined in RFC 1141, ipsx(2) as described in RFC 5475 Appendix A.1, and bob(3) as described in RFC 5475 Appendix A.2.
The PSAMP-MIB module extends the IPFIX-SELECTOR-MIB by registering six new packet Selector function subtrees beneath ipfixSelectorFunctions (OIDs 2–7). Each subtree contains an availability object and, for parameterized functions, a parameter set table indexed by a local integer.
Uniform probabilistic sampling (psampSampUniProb, OID ipfixSelectorFunctions 5) has a single parameter psampSampUniProbProbability encoded as Float64TC, representing the per-packet sampling probability in the range [0, 1].
IANA assigned OID { mib-2 212 } to psampMIB in the SMI Numbers registry.
IANA registered six top-level OIDs in the IPFIX-SELECTOR-MIB Functions sub-registry: 2=psampSampCountBased, 3=psampSampTimeBased, 4=psampSampRandOutOfN, 5=psampSampUniProb, 6=psampFiltPropMatch, 7=psampFiltHash, all referencing RFC 6727.
All PSAMP MIB objects are read-only (no MAX-ACCESS read-write or read-create), so there is no risk that an intruder can alter or create management objects via SNMP SET operations.
SNMPv1 and SNMPv2 lack adequate security even on IPsec-protected networks because they provide no per-principal access control. SNMPv3 with full cryptographic support is RECOMMENDED to restrict access to authorized principals only.
The PSAMP MIB tables may reveal sensitive information about network infrastructure and device configuration. Operators should control GET and NOTIFY access and should encrypt SNMP values in transit, particularly for sampling configuration parameters.
The Float64TC textual convention (imported from FLOAT-TC-MIB, RFC 6340) encodes 64-bit IEEE floating-point numbers and is used for psampSampUniProbProbability. It represents data types defined in RFC 5101 that are not native to SMIv2.
The Unsigned64TC textual convention (imported from APPLICATION-MIB, RFC 2564) encodes 64-bit unsigned integers and is used for all hash-filtering numeric parameters (initializer value, payload offset, payload size, selected range, and output range).