-- extracted from draft-dietz-ipfix-mib-01.txt -- at Thu Oct 26 06:07:26 2006 IPFIX-COLLECTOR-MIB DEFINITIONS ::= BEGIN IMPORTS MODULE-IDENTITY, OBJECT-TYPE, Integer32, Counter32, Gauge32, mib-2 FROM SNMPv2-SMI -- RFC2578 TEXTUAL-CONVENTION, RowStatus, DateAndTime FROM SNMPv2-TC -- RFC2579 MODULE-COMPLIANCE, OBJECT-GROUP FROM SNMPv2-CONF -- RFC2580 InetAddressType, InetAddress FROM INET-ADDRESS-MIB; -- RFC3291 ipfixMIB MODULE-IDENTITY LAST-UPDATED "200610201600Z" -- 20 October 2006 ORGANIZATION "IETF IPFIX Working Group" CONTACT-INFO "WG charter: http://www.ietf.org/html.charters/ipfix-charter.html Mailing Lists: General Discussion: ipfix@ietf.org To Subscribe: majordomo@net.doit.wisc.edu In Body: subscribe ipfix Archive: http://ipfix.doit.wisc.edu/archive/ Editor: Atsushi Kobayashi NTT Information Sharing Platform Laboratories 3-9-11 Midori-cho Musashino-shi 180-8585 Japan Phone: +81-422-59-3978 Email: akoba@nttv6.net" DESCRIPTION "The IPFIX collector MIB defines managed objects that are maintained by the collecting process in traffic collector or IPFIX concentrator. These objects provide informations that are exporter's profile data and received templates. Exporter's profile has that exporter's ip address and port number. In addition, these object has statistics data per session or per templates. Copyright (C) The Internet Society (2005). This version of this MIB module is part of RFC yyyy; see the RFC itself for full legal notices." -- replace yyyy with actual RFC number & remove this noti -- Revision history REVISION "200610201600Z" -- 20 October 2006 DESCRIPTION "Initial version, published as RFC yyyy." -- replace yyyy with actual RFC number & remove this notice ::= { mib-2 999 } -- 999 to be assigned by IANA. -- Top level structure of the MIB ipfixExporter OBJECT IDENTIFIER ::= { ipfixMIB 1 } ipfixCollector OBJECT IDENTIFIER ::= { ipfixMIB 2 } ipfixPsampExtension OBJECT IDENTIFIER ::= { ipfixMIB 3 } ipfixConformance OBJECT IDENTIFIER ::= { ipfixMIB 4 } ipfixCollectorObjects OBJECT IDENTIFIER ::= { ipfixCollector 1 } ipfixCollectorConformance OBJECT IDENTIFIER ::= { ipfixCollector 2 } -------------------------------------------------------------------- -- objects of receiving function -------------------------------------------------------------------- ipfixReceiving OBJECT IDENTIFIER ::= { ipfixCollectorObjects 1 } -------------------------------------------------------------------- -- 1: Exporter Table -------------------------------------------------------------------- ipfixExporterTable OBJECT-TYPE SYNTAX SEQUENCE OF IpfixExporterEntry MAX-ACCESS not-accessible STATUS current DESCRIPTION "This table lists Exporters that received by collecting process. This process manages them." ::= { ipfixReceiving 1 } ipfixExporterEntry OBJECT-TYPE SYNTAX IpfixExporterEntry MAX-ACCESS not-accessible STATUS current DESCRIPTION "Defines an entry in the ipfixExporterTable" INDEX { ipfixExporterIndex } ::= { ipfixExporterTable 1 } IpfixExporterEntry ::= SEQUENCE { ipfixExporterIndex Integer32, ipfixExporterIpAddressType InetAddressType, ipfixExporterIpAddress InetAddress, ipfixLifeTimeTemplate Integer32 } ipfixExporterIndex OBJECT-TYPE SYNTAX Integer32 (1..2147483647) MAX-ACCESS not-accessible STATUS current DESCRIPTION "Locally arbitrary, but unique identifier of an entry in ipfixExporterTable. The value is expected to remain constant from a re-initialization of the entity's network management system to the next re-initialization." ::= { ipfixExporterEntry 1 } ipfixExporterIpAddressType OBJECT-TYPE SYNTAX InetAddressType MAX-ACCESS read-only STATUS current DESCRIPTION "The IP address type of the exporter. The value for IPv4 is ipv4(1). The value for IPv6 is ipv6(2)." ::= { ipfixExporterEntry 2 } ipfixExporterIpAddress OBJECT-TYPE SYNTAX InetAddress MAX-ACCESS read-only STATUS current DESCRIPTION "The IP address of the Exporter." ::= { ipfixExporterEntry 3 } ipfixLifeTimeTemplate OBJECT-TYPE SYNTAX Integer32 MAX-ACCESS read-only STATUS current DESCRIPTION "This is the time interval in seconds for the Life Time configured for the template with this session. It is only used to manage the received templates, if this protocol is UDP. The collecting process discards the template, if the templates is not refreshed within this life time." ::= { ipfixExporterEntry 4 } -------------------------------------------------------------------- -- 2: Session Table -------------------------------------------------------------------- ipfixSessionTable OBJECT-TYPE SYNTAX SEQUENCE OF IpfixSessionEntry MAX-ACCESS not-accessible STATUS current DESCRIPTION "This table lists sessions between exporting process and collecting process. This table has now, or has at some time in the past, established session." ::= { ipfixReceiving 2 } ipfixSessionEntry OBJECT-TYPE SYNTAX IpfixSessionEntry MAX-ACCESS not-accessible STATUS current DESCRIPTION "Defines an entry in the ipfixSessionTable" INDEX { ipfixExporterIndex, ipfixSessionId } ::= { ipfixSessionTable 1 } IpfixSessionEntry ::= SEQUENCE { ipfixSessionId Integer32, ipfixSessionStatus INTEGER, ipfixSessionProtocol Integer32, ipfixSessionDstPort Integer32, ipfixSessionSrcPort Integer32 } ipfixSessionId OBJECT-TYPE SYNTAX Integer32 (1..2147483647) MAX-ACCESS not-accessible STATUS current DESCRIPTION "Locally arbitrary, but unique identifier of an entry in ipfixSessionTable. The value is expected to remain constant from a re-initialization of the entity's network management system to the next re-initialization." ::= { ipfixSessionEntry 1 } ipfixSessionStatus OBJECT-TYPE SYNTAX INTEGER { unknown(0), up(1), down(2) } MAX-ACCESS read-only STATUS current DESCRIPTION "The status of this session." ::= { ipfixSessionEntry 2 } ipfixSessionProtocol OBJECT-TYPE SYNTAX Integer32 (0..256) MAX-ACCESS read-only STATUS current DESCRIPTION "The transport protocol is used for receiving sampled packets from the Exporter. The recommended protocols are TCP (6), UDP (17) and SCTP (132). The default is SCTP." ::= { ipfixSessionEntry 3 } ipfixSessionDstPort OBJECT-TYPE SYNTAX Integer32 (0..65535) MAX-ACCESS read-only STATUS current DESCRIPTION "The transport protocol port number of exporter which enables exporting process." ::= { ipfixSessionEntry 4 } ipfixSessionSrcPort OBJECT-TYPE SYNTAX Integer32 (0..65535) MAX-ACCESS read-only STATUS current DESCRIPTION "The transport protocol port number of self device which enables collecting Process." ::= { ipfixSessionEntry 5 } -------------------------------------------------------------------- -- 2: Session Statistics Table -------------------------------------------------------------------- ipfixSessionStatsTable OBJECT-TYPE SYNTAX SEQUENCE OF IpfixSessionStatsEntry MAX-ACCESS not-accessible STATUS current DESCRIPTION "This table lists sessions statistics between exporting process and collecting process. The collecting process manages them." ::= { ipfixReceiving 3 } ipfixSessionStatsEntry OBJECT-TYPE SYNTAX IpfixSessionStatsEntry MAX-ACCESS not-accessible STATUS current DESCRIPTION "Defines an entry in the ipfixSessionStatsTable" INDEX { ipfixExporterIndex, ipfixSessionId } ::= { ipfixSessionStatsTable 1 } IpfixSessionStatsEntry ::= SEQUENCE { ipfixSessionPackets Counter32, ipfixSessionBytes Counter32, ipfixSessionMessages Counter32, ipfixSessionDiscardMessages Counter32, ipfixSessionElapsedTime Gauge32 } ipfixSessionPackets OBJECT-TYPE SYNTAX Counter32 MAX-ACCESS read-only STATUS current DESCRIPTION "The number of packets received from the Exporter through this session." ::= { ipfixSessionStatsEntry 3 } ipfixSessionBytes OBJECT-TYPE SYNTAX Counter32 MAX-ACCESS read-only STATUS current DESCRIPTION "The number of bytes received from the exporter through this session." ::= { ipfixSessionStatsEntry 4 } ipfixSessionMessages OBJECT-TYPE SYNTAX Counter32 MAX-ACCESS read-only STATUS current DESCRIPTION "The number of IPFIX messages received from the exporter through this session." ::= { ipfixSessionStatsEntry 5 } ipfixSessionDiscardMessages OBJECT-TYPE SYNTAX Counter32 MAX-ACCESS read-only STATUS current DESCRIPTION "This indicates the number of received IPFIX Message that might be malformed or cant not be encoded." ::= { ipfixSessionStatsEntry 6 } ipfixSessionElapsedTime OBJECT-TYPE SYNTAX Gauge32 MAX-ACCESS read-only STATUS current DESCRIPTION "This timer indicates how long this session has been connected. This elapsed time of the session of IPFIX presents in second." ::= { ipfixSessionStatsEntry 9 } -------------------------------------------------------------------- -- 4: Observation domain statistics table -------------------------------------------------------------------- ipfixObdomainStatsTable OBJECT-TYPE SYNTAX SEQUENCE OF IpfixObdomainStatsEntry MAX-ACCESS not-accessible STATUS current DESCRIPTION "This table lists statistics objects that have data per observation domain." ::= { ipfixReceiving 4 } ipfixObdomainStatsEntry OBJECT-TYPE SYNTAX IpfixObdomainStatsEntry MAX-ACCESS not-accessible STATUS current DESCRIPTION "Defines an entry in the ipfixObdomainStatsTable." INDEX { ipfixExporterIndex, ipfixSessionId, ipfixObdomainId } ::= { ipfixObdomainStatsTable 1 } IpfixObdomainStatsEntry ::= SEQUENCE { ipfixObdomainId Integer32, ipfixObdomainMessages Counter32, ipfixObdomainFlows Counter32, ipfixObdomainTemplates Counter32, ipfixObdomainLatestSeqNumber Integer32, ipfixObdomainDisorderdSeqNumbers Counter32 } ipfixObdomainId OBJECT-TYPE SYNTAX Integer32(1..2147483647) MAX-ACCESS not-accessible STATUS current DESCRIPTION "It uses the observation domain id in the received IPFIX message header." ::= { ipfixObdomainStatsEntry 1 } ipfixObdomainMessages OBJECT-TYPE SYNTAX Counter32 MAX-ACCESS read-only STATUS current DESCRIPTION "The number of IPFIX messages received from the Exporter." ::= { ipfixObdomainStatsEntry 3 } ipfixObdomainFlows OBJECT-TYPE SYNTAX Counter32 MAX-ACCESS read-only STATUS current DESCRIPTION "The number of flow records received from the Exporter." ::= { ipfixObdomainStatsEntry 4 } ipfixObdomainTemplates OBJECT-TYPE SYNTAX Counter32 MAX-ACCESS read-only STATUS current DESCRIPTION "The number of templates received from the Exporter." ::= { ipfixObdomainStatsEntry 5 } ipfixObdomainLatestSeqNumber OBJECT-TYPE SYNTAX Integer32 MAX-ACCESS read-only STATUS current DESCRIPTION "The latest sequence number. The collecting process overwrites to this object when it receives IPFIX message." ::= { ipfixObdomainStatsEntry 6 } ipfixObdomainDisorderdSeqNumbers OBJECT-TYPE SYNTAX Counter32 MAX-ACCESS read-only STATUS current DESCRIPTION "This counter indicates inconformable numbers of sequence number. The collecting process check consistency between received sequence number and received data flows. This counter is added up this inclement, if it recognize there are some flows that have not been received." ::= { ipfixObdomainStatsEntry 7 } -------------------------------------------------------------------- -- 5: Template Record Table -------------------------------------------------------------------- ipfixTemplateTable OBJECT-TYPE SYNTAX SEQUENCE OF IpfixTemplateEntry MAX-ACCESS not-accessible STATUS current DESCRIPTION "This table lists templates that are received by the collecting process. This process manages them." ::= { ipfixReceiving 5 } ipfixTemplateEntry OBJECT-TYPE SYNTAX IpfixTemplateEntry MAX-ACCESS not-accessible STATUS current DESCRIPTION "Defines an entry in the ipfixTemplateTable" INDEX { ipfixExporterIndex, ipfixSessionId, ipfixTemplateId, ipfixTemplateIndex } ::= { ipfixTemplateTable 1 } IpfixTemplateEntry ::= SEQUENCE { ipfixTemplateId Integer32, ipfixTemplateIndex Integer32, ipfixTemplateFieldId Integer32, ipfixTemplateFieldLength Integer32 } ipfixTemplateId OBJECT-TYPE SYNTAX Integer32 (1..2147483647) MAX-ACCESS not-accessible STATUS current DESCRIPTION "This number indicates the template id in the IPFIX message." ::= { ipfixTemplateEntry 1 } ipfixTemplateIndex OBJECT-TYPE SYNTAX Integer32 (1..2147483647) MAX-ACCESS not-accessible STATUS current DESCRIPTION "The ipfixTemplateIndex specifies the order in which the information element ids are used in the template record." ::= { ipfixTemplateEntry 2 } ipfixTemplateFieldId OBJECT-TYPE SYNTAX Integer32 (1..2147483647) MAX-ACCESS read-only STATUS current DESCRIPTION "This indicates the Information Element Id at position ipfixTemplateIndex in the template ipfixTemplateId. This implicitly gives the data type and state values that are received." ::= { ipfixTemplateEntry 3 } ipfixTemplateFieldLength OBJECT-TYPE SYNTAX Integer32 MAX-ACCESS read-only STATUS current DESCRIPTION "This indicates the length of each Information Element Ids. Especially, in variable length type it is specified as 65535." ::= { ipfixTemplateEntry 4 } -------------------------------------------------------------------- -- 6: Template Statistics Table -------------------------------------------------------------------- ipfixTemplateStatsTable OBJECT-TYPE SYNTAX SEQUENCE OF IpfixTemplateStatsEntry MAX-ACCESS not-accessible STATUS current DESCRIPTION "This table lists statistics objects that have data per template." ::= { ipfixReceiving 6 } ipfixTemplateStatsEntry OBJECT-TYPE SYNTAX IpfixTemplateStatsEntry MAX-ACCESS not-accessible STATUS current DESCRIPTION "Defines an entry in the ipfixTemplateStatsTable" INDEX { ipfixExporterIndex, ipfixSessionId, ipfixTemplateId } ::= { ipfixTemplateStatsTable 1 } IpfixTemplateStatsEntry ::= SEQUENCE { ipfixTempFlows Counter32, ipfixTempReceivedTime DateAndTime } ipfixTempFlows OBJECT-TYPE SYNTAX Counter32 MAX-ACCESS read-only STATUS current DESCRIPTION "The number of flow records per template received from Exporter." ::= { ipfixTemplateStatsEntry 2 } ipfixTempReceivedTime OBJECT-TYPE SYNTAX DateAndTime MAX-ACCESS read-only STATUS current DESCRIPTION "Time that the collecting process received this template. The collecting process overwrites to this object when it receives same template." ::= { ipfixTemplateStatsEntry 3 } --================================================================== -- Conformance information --================================================================== ipfixCompliances OBJECT IDENTIFIER ::= { ipfixConformance 1 } ipfixGroups OBJECT IDENTIFIER ::= { ipfixConformance 2 } --================================================================== -- Compliance statements --================================================================== ipfixCompliance MODULE-COMPLIANCE STATUS current DESCRIPTION "An implementation that complies to this module must implement the objects defined in the mandatory groups collectGroupExporters, collectGroupTemplates. The imeplementation of all other objects depends on the imeplementation of the corresponding functionality in the equipment." MODULE -- this module MANDATORY-GROUPS { ipfixGroupExporters, ipfixGroupTemplates } GROUP ipfixGroupStatistics DESCRIPTION "These objects must be implementes if the statistics function is implemented in the equipment." ::= { ipfixCompliances 1 } --================================================================== -- MIB groupings --================================================================== ipfixGroupExporters OBJECT-GROUP OBJECTS { ipfixExporterIpAddressType, ipfixExporterIpAddress, ipfixLifeTimeTemplate, ipfixSessionProtocol, ipfixSessionDstPort, ipfixSessionSrcPort, ipfixSessionStatus } STATUS current DESCRIPTION "All objects that are basic for the management function of exporters." ::= { ipfixGroups 1 } ipfixGroupTemplates OBJECT-GROUP OBJECTS { ipfixTemplateFieldId, ipfixTemplateFieldLength } STATUS current DESCRIPTION "All objects that are basic for the management function of templates." ::= { ipfixGroups 2 } ipfixGroupStatistics OBJECT-GROUP OBJECTS { ipfixSessionPackets, ipfixSessionBytes, ipfixSessionMessages, ipfixSessionDiscardMessages, ipfixSessionElapsedTime, ipfixObdomainMessages, ipfixObdomainFlows, ipfixObdomainTemplates, ipfixObdomainLatestSeqNumber, ipfixObdomainDisorderdSeqNumbers, ipfixTempFlows, ipfixTempReceivedTime } STATUS current DESCRIPTION "All objects that are basic for the statistics function." ::= { ipfixGroups 3 } END -- -- Copyright (C) The Internet Society (2006). This document is subject -- to the rights, licenses and restrictions contained in BCP 78, and -- except as set forth therein, the authors retain all their rights. -- -- -- Acknowledgment -- -- Funding for the RFC Editor function is currently provided by the -- Internet Society.