home *** CD-ROM | disk | FTP | other *** search
/ Chip 2001 May / W2KPRK.iso / apps / InternetScanner / data1.cab / Program_Files / Mibs / RFC1271-MIB.txt < prev    next >
Text File  |  1999-11-22  |  151KB  |  3,454 lines

  1. RFC1271-MIB DEFINITIONS ::= BEGIN
  2.  
  3.               IMPORTS
  4.                   Counter                              FROM RFC1155-SMI
  5.                   DisplayString                        FROM RFC1213-MIB
  6.                   mib-2                                FROM RFC1213-MIB
  7.                   OBJECT-TYPE                          FROM RFC-1212;
  8.  
  9.           --  This MIB module uses the extended OBJECT-TYPE macro as
  10.           --  defined in [9].
  11.  
  12.           --  Remote Network Monitoring MIB
  13.  
  14.               rmon    OBJECT IDENTIFIER ::= { mib-2 16 }
  15.  
  16.               -- textual conventions
  17.  
  18.               OwnerString ::= OCTET STRING
  19.               -- This data type is used to model an administratively
  20.               -- assigned name of the owner of a resource. This
  21.               -- information is taken from the NVT ASCII character set.
  22.               -- It is suggested that this name contain one or more
  23.               -- of the following:
  24.               -- IP address, management station name, network manager's
  25.               -- name, location, or phone number.
  26.               -- In some cases the agent itself will be the owner of
  27.               -- an entry.  In these cases, this string shall be set
  28.               -- to a string starting with 'monitor'.
  29.  
  30.  
  31.               --
  32.               -- SNMP access control is articulated entirely in terms of
  33.               -- the contents of MIB views; access to a particular SNMP
  34.               -- object instance depends only upon its presence or
  35.               -- absence in a particular MIB view and never upon its
  36.               -- value or the value of related object instances. Thus,
  37.               -- objects of this type afford resolution of resource
  38.               -- contention only among cooperating managers; they
  39.               -- realize no access control function with respect
  40.               -- to uncooperative parties.
  41.               --
  42.               -- By convention, objects with this syntax are declared
  43.               -- as having
  44.               --
  45.               --      SIZE (0..127)
  46.  
  47.               EntryStatus ::= INTEGER
  48.                          { valid(1),
  49.                            createRequest(2),
  50.                            underCreation(3),
  51.                            invalid(4)
  52.                          }
  53.  
  54.               -- The status of a table entry.
  55.               --
  56.               -- Setting this object to the value invalid(4) has the
  57.               -- effect of invalidating the corresponding entry.
  58.               -- That is, it effectively disassociates the mapping
  59.               -- identified with said entry.
  60.               -- It is an implementation-specific matter as to whether
  61.               -- the agent removes an invalidated entry from the table.
  62.               -- Accordingly, management stations must be prepared to
  63.               -- receive tabular information from agents that corresponds
  64.               -- to entries currently not in use.  Proper
  65.               -- interpretation of such entries requires examination
  66.               -- of the relevant EntryStatus object.
  67.               --
  68.               -- An existing instance of this object cannot be set to
  69.               -- createRequest(2).  This object may only be set to
  70.               -- createRequest(2) when this instance is created.  When
  71.               -- this object is created, the agent may wish to create
  72.               -- supplemental object instances to complete a conceptual
  73.               -- row in this table.  Immediately after completing the
  74.               -- create operation, the agent must set this object to
  75.               -- underCreation(3).
  76.               --
  77.               -- Entries shall exist in the underCreation(3) state until
  78.  
  79.  
  80.               -- the management station is finished configuring the
  81.               -- entry and sets this object to valid(1) or aborts,
  82.               -- setting this object to invalid(4).  If the agent
  83.               -- determines that an entry has been in the
  84.               -- underCreation(3) state for an abnormally long time,
  85.               -- it may decide that the management station has
  86.               -- crashed.  If the agent makes this decision,
  87.               -- it may set this object to invalid(4) to reclaim the
  88.               -- entry.  A prudent agent will understand that the
  89.               -- management station may need to wait for human input
  90.               -- and will allow for that possibility in its
  91.               -- determination of this abnormally long period.
  92.  
  93.               statistics        OBJECT IDENTIFIER ::= { rmon 1 }
  94.               history           OBJECT IDENTIFIER ::= { rmon 2 }
  95.               alarm             OBJECT IDENTIFIER ::= { rmon 3 }
  96.               hosts             OBJECT IDENTIFIER ::= { rmon 4 }
  97.               hostTopN          OBJECT IDENTIFIER ::= { rmon 5 }
  98.               matrix            OBJECT IDENTIFIER ::= { rmon 6 }
  99.               filter            OBJECT IDENTIFIER ::= { rmon 7 }
  100.               capture           OBJECT IDENTIFIER ::= { rmon 8 }
  101.               event             OBJECT IDENTIFIER ::= { rmon 9 }
  102.  
  103.           -- The Statistics Group
  104.           --
  105.           -- Implementation of the Statistics group is optional.
  106.           --
  107.           -- The statistics group contains statistics measured by the
  108.           -- probe for each monitored interface on this device.  These
  109.           -- statistics take the form of free running counters that
  110.           -- start from zero when a valid entry is created.
  111.           --
  112.           -- This group currently has statistics defined only for
  113.           -- Ethernet interfaces.  Each etherStatsEntry contains
  114.           -- statistics for one Ethernet interface.  The probe must
  115.           -- create one etherStats entry for each monitored Ethernet
  116.           -- interface on the device.
  117.  
  118.           etherStatsTable OBJECT-TYPE
  119.               SYNTAX SEQUENCE OF EtherStatsEntry
  120.               ACCESS not-accessible
  121.               STATUS mandatory
  122.               DESCRIPTION
  123.                   "A list of Ethernet statistics entries."
  124.               ::= { statistics 1 }
  125.  
  126.  
  127.           etherStatsEntry OBJECT-TYPE
  128.               SYNTAX EtherStatsEntry
  129.               ACCESS not-accessible
  130.               STATUS mandatory
  131.               DESCRIPTION
  132.                   "A collection of statistics kept for a particular
  133.                   Ethernet interface."
  134.               INDEX { etherStatsIndex }
  135.               ::= { etherStatsTable 1 }
  136.  
  137.           EtherStatsEntry ::= SEQUENCE {
  138.               etherStatsIndex                    INTEGER (1..65535),
  139.               etherStatsDataSource               OBJECT IDENTIFIER,
  140.               etherStatsDropEvents               Counter,
  141.               etherStatsOctets                   Counter,
  142.               etherStatsPkts                     Counter,
  143.               etherStatsBroadcastPkts            Counter,
  144.               etherStatsMulticastPkts            Counter,
  145.               etherStatsCRCAlignErrors           Counter,
  146.               etherStatsUndersizePkts            Counter,
  147.               etherStatsOversizePkts             Counter,
  148.               etherStatsFragments                Counter,
  149.               etherStatsJabbers                  Counter,
  150.               etherStatsCollisions               Counter,
  151.               etherStatsPkts64Octets             Counter,
  152.               etherStatsPkts65to127Octets        Counter,
  153.               etherStatsPkts128to255Octets       Counter,
  154.               etherStatsPkts256to511Octets       Counter,
  155.               etherStatsPkts512to1023Octets      Counter,
  156.               etherStatsPkts1024to1518Octets     Counter,
  157.               etherStatsOwner                    OwnerString,
  158.               etherStatsStatus                   INTEGER
  159.           }
  160.  
  161.           etherStatsIndex OBJECT-TYPE
  162.               SYNTAX INTEGER (1..65535)
  163.               ACCESS read-only
  164.               STATUS mandatory
  165.               DESCRIPTION
  166.                   "The value of this object uniquely identifies this
  167.                   etherStats entry."
  168.               ::= { etherStatsEntry 1 }
  169.  
  170.           etherStatsDataSource OBJECT-TYPE
  171.               SYNTAX OBJECT IDENTIFIER
  172.               ACCESS read-write
  173.               STATUS mandatory
  174.               DESCRIPTION
  175.  
  176.  
  177.                   "This object identifies the source of the data that
  178.                   this etherStats entry is configured to analyze.  This
  179.                   source can be any ethernet interface on this device.
  180.                   In order to identify a particular interface, this
  181.                   object shall identify the instance of the ifIndex
  182.                   object, defined in [4,6], for the desired interface.
  183.                   For example, if an entry were to receive data from
  184.                   interface #1, this object would be set to ifIndex.1.
  185.  
  186.                   The statistics in this group reflect all packets
  187.                   on the local network segment attached to the
  188.                   identified interface.
  189.  
  190.                   This object may not be modified if the associated
  191.                   etherStatsStatus object is equal to valid(1)."
  192.               ::= { etherStatsEntry 2 }
  193.  
  194.           etherStatsDropEvents OBJECT-TYPE
  195.               SYNTAX Counter
  196.               ACCESS read-only
  197.               STATUS mandatory
  198.               DESCRIPTION
  199.                   "The total number of events in which packets
  200.                   were dropped by the probe due to lack of resources.
  201.                   Note that this number is not necessarily the number of
  202.                   packets dropped; it is just the number of times this
  203.                   condition has been detected."
  204.               ::= { etherStatsEntry 3 }
  205.  
  206.           etherStatsOctets OBJECT-TYPE
  207.               SYNTAX Counter
  208.               ACCESS read-only
  209.               STATUS mandatory
  210.               DESCRIPTION
  211.                   "The total number of octets of data (including
  212.                   those in bad packets) received on the
  213.                   network (excluding framing bits but including
  214.                   FCS octets)."
  215.               ::= { etherStatsEntry 4 }
  216.  
  217.           etherStatsPkts OBJECT-TYPE
  218.               SYNTAX Counter
  219.               ACCESS read-only
  220.               STATUS mandatory
  221.               DESCRIPTION
  222.                   "The total number of packets (including error packets)
  223.                   received."
  224.               ::= { etherStatsEntry 5 }
  225.  
  226.  
  227.           etherStatsBroadcastPkts OBJECT-TYPE
  228.               SYNTAX Counter
  229.               ACCESS read-only
  230.               STATUS mandatory
  231.               DESCRIPTION
  232.                   "The total number of good packets received that were
  233.                   directed to the broadcast address."
  234.               ::= { etherStatsEntry 6 }
  235.  
  236.           etherStatsMulticastPkts OBJECT-TYPE
  237.               SYNTAX Counter
  238.               ACCESS read-only
  239.               STATUS mandatory
  240.               DESCRIPTION
  241.                   "The total number of good packets received that were
  242.                   directed to a multicast address.  Note that this
  243.                   number does not include packets directed to the
  244.                   broadcast address."
  245.               ::= { etherStatsEntry 7 }
  246.  
  247.           etherStatsCRCAlignErrors OBJECT-TYPE
  248.               SYNTAX Counter
  249.               ACCESS read-only
  250.               STATUS mandatory
  251.               DESCRIPTION
  252.                   "The total number of packets received that
  253.                   had a length (excluding framing bits, but
  254.                   including FCS octets) of between 64 and 1518
  255.                   octets, inclusive, but were not an integral number
  256.                   of octets in length or had a bad Frame Check
  257.                   Sequence (FCS)."
  258.               ::= { etherStatsEntry 8 }
  259.  
  260.           etherStatsUndersizePkts OBJECT-TYPE
  261.               SYNTAX Counter
  262.               ACCESS read-only
  263.               STATUS mandatory
  264.               DESCRIPTION
  265.                   "The total number of packets received that were
  266.                   less than 64 octets long (excluding framing bits,
  267.                   but including FCS octets) and were otherwise well
  268.                   formed."
  269.               ::= { etherStatsEntry 9 }
  270.  
  271.           etherStatsOversizePkts OBJECT-TYPE
  272.               SYNTAX Counter
  273.               ACCESS read-only
  274.               STATUS mandatory
  275.  
  276.  
  277.               DESCRIPTION
  278.                   "The total number of packets received that were
  279.                   longer than 1518 octets (excluding framing bits,
  280.                   but including FCS octets) and were otherwise
  281.                   well formed."
  282.               ::= { etherStatsEntry 10 }
  283.  
  284.           etherStatsFragments OBJECT-TYPE
  285.               SYNTAX Counter
  286.               ACCESS read-only
  287.               STATUS mandatory
  288.               DESCRIPTION
  289.                   "The total number of packets received that were not an
  290.                   integral number of octets in length or that had a bad
  291.                   Frame Check Sequence (FCS), and were less than 64
  292.                   octets in length (excluding framing bits but
  293.                   including FCS octets)."
  294.               ::= { etherStatsEntry 11 }
  295.  
  296.           etherStatsJabbers OBJECT-TYPE
  297.               SYNTAX Counter
  298.               ACCESS read-only
  299.               STATUS mandatory
  300.               DESCRIPTION
  301.                   "The total number of packets received that were
  302.                   longer than 1518 octets (excluding framing bits,
  303.                   but including FCS octets), and were not an
  304.                   integral number of octets in length or had
  305.                   a bad Frame Check Sequence (FCS)."
  306.               ::= { etherStatsEntry 12 }
  307.  
  308.           etherStatsCollisions OBJECT-TYPE
  309.               SYNTAX Counter
  310.               ACCESS read-only
  311.               STATUS mandatory
  312.               DESCRIPTION
  313.                   "The best estimate of the total number of collisions
  314.                   on this Ethernet segment."
  315.               ::= { etherStatsEntry 13 }
  316.  
  317.           etherStatsPkts64Octets OBJECT-TYPE
  318.               SYNTAX Counter
  319.               ACCESS read-only
  320.               STATUS mandatory
  321.               DESCRIPTION
  322.                   "The total number of packets (including error
  323.                   packets) received that were 64 octets in length
  324.                   (excluding framing bits but including FCS octets)."
  325.  
  326.  
  327.               ::= { etherStatsEntry 14 }
  328.  
  329.           etherStatsPkts65to127Octets OBJECT-TYPE
  330.               SYNTAX Counter
  331.               ACCESS read-only
  332.               STATUS mandatory
  333.               DESCRIPTION
  334.                   "The total number of packets (including error
  335.                   packets) received that were between
  336.                   65 and 127 octets in length inclusive
  337.                   (excluding framing bits but including FCS octets)."
  338.               ::= { etherStatsEntry 15 }
  339.  
  340.           etherStatsPkts128to255Octets OBJECT-TYPE
  341.               SYNTAX Counter
  342.               ACCESS read-only
  343.               STATUS mandatory
  344.               DESCRIPTION
  345.                   "The total number of packets (including error
  346.                   packets) received that were between
  347.                   128 and 255 octets in length inclusive
  348.                   (excluding framing bits but including FCS octets)."
  349.               ::= { etherStatsEntry 16 }
  350.  
  351.           etherStatsPkts256to511Octets OBJECT-TYPE
  352.               SYNTAX Counter
  353.               ACCESS read-only
  354.               STATUS mandatory
  355.               DESCRIPTION
  356.                   "The total number of packets (including error
  357.                   packets) received that were between
  358.                   256 and 511 octets in length inclusive
  359.                   (excluding framing bits but including FCS octets)."
  360.               ::= { etherStatsEntry 17 }
  361.  
  362.           etherStatsPkts512to1023Octets OBJECT-TYPE
  363.               SYNTAX Counter
  364.               ACCESS read-only
  365.               STATUS mandatory
  366.               DESCRIPTION
  367.                   "The total number of packets (including error
  368.                   packets) received that were between
  369.                   512 and 1023 octets in length inclusive
  370.                   (excluding framing bits but including FCS octets)."
  371.               ::= { etherStatsEntry 18 }
  372.  
  373.  
  374.           etherStatsPkts1024to1518Octets OBJECT-TYPE
  375.               SYNTAX Counter
  376.               ACCESS read-only
  377.               STATUS mandatory
  378.               DESCRIPTION
  379.                   "The total number of packets (including error
  380.                   packets) received that were between
  381.                   1024 and 1518 octets in length inclusive
  382.                   (excluding framing bits but including FCS octets)."
  383.               ::= { etherStatsEntry 19 }
  384.  
  385.           etherStatsOwner OBJECT-TYPE
  386.               SYNTAX OwnerString
  387.               ACCESS read-write
  388.               STATUS mandatory
  389.               DESCRIPTION
  390.                   "The entity that configured this entry and is
  391.                   therefore using the resources assigned to it."
  392.               ::= { etherStatsEntry 20 }
  393.  
  394.           etherStatsStatus OBJECT-TYPE
  395.               SYNTAX EntryStatus
  396.               ACCESS read-write
  397.               STATUS mandatory
  398.               DESCRIPTION
  399.                   "The status of this etherStats entry."
  400.               ::= { etherStatsEntry 21 }
  401.  
  402.           -- The History Group
  403.  
  404.           -- Implementation of the History group is optional.
  405.           --
  406.           -- The history group records periodic statistical samples from
  407.           -- a network and stores them for later retrieval.  The
  408.           -- historyControl table stores configuration entries that each
  409.           -- define an interface, polling period, and other parameters.
  410.           -- Once samples are taken, their data is stored in an entry
  411.           -- in a media-specific table.  Each such entry defines one
  412.           -- sample, and is associated with the historyControlEntry that
  413.           -- caused the sample to be taken.  Currently the only media-
  414.           -- specific table defined is the etherHistoryTable, for
  415.           -- Ethernet networks.
  416.           --
  417.           -- If the probe keeps track of the time of day, it should
  418.           -- start the first sample of the history at a time such that
  419.           -- when the next hour of the day begins, a sample is
  420.           -- started at that instant.  This tends to make more
  421.  
  422.  
  423.           -- user-friendly reports, and enables comparison of reports
  424.           -- from different probes that have relatively accurate time
  425.           -- of day.
  426.           --
  427.           -- The monitor is encouraged to add two history control entries
  428.           -- per monitored interface upon initialization that describe
  429.           -- a short term and a long term polling period.  Suggested
  430.           -- parameters are 30 seconds for the short term polling
  431.           -- period and 30 minutes for the long term period.
  432.  
  433.           historyControlTable OBJECT-TYPE
  434.               SYNTAX SEQUENCE OF HistoryControlEntry
  435.               ACCESS not-accessible
  436.               STATUS mandatory
  437.               DESCRIPTION
  438.                   "A list of history control entries."
  439.               ::= { history 1 }
  440.  
  441.           historyControlEntry OBJECT-TYPE
  442.               SYNTAX HistoryControlEntry
  443.               ACCESS not-accessible
  444.               STATUS mandatory
  445.               DESCRIPTION
  446.                   "A list of parameters that set up a periodic
  447.                   sampling of statistics."
  448.               INDEX { historyControlIndex }
  449.               ::= { historyControlTable 1 }
  450.  
  451.           HistoryControlEntry ::= SEQUENCE {
  452.               historyControlIndex             INTEGER (1..65535),
  453.               historyControlDataSource        OBJECT IDENTIFIER,
  454.               historyControlBucketsRequested  INTEGER (1..65535),
  455.               historyControlBucketsGranted    INTEGER (1..65535),
  456.               historyControlInterval          INTEGER (1..3600),
  457.               historyControlOwner             OwnerString,
  458.               historyControlStatus            INTEGER
  459.           }
  460.  
  461.           historyControlIndex OBJECT-TYPE
  462.               SYNTAX INTEGER (1..65535)
  463.               ACCESS read-only
  464.               STATUS mandatory
  465.               DESCRIPTION
  466.                   "An index that uniquely identifies an entry in the
  467.                   historyControl table.  Each such entry defines a
  468.                   set of samples at a particular interval for an
  469.                   interface on the device."
  470.               ::= { historyControlEntry 1 }
  471.  
  472.  
  473.           historyControlDataSource OBJECT-TYPE
  474.               SYNTAX OBJECT IDENTIFIER
  475.               ACCESS read-write
  476.               STATUS mandatory
  477.               DESCRIPTION
  478.                   "This object identifies the source of the data for
  479.                   which historical data was collected and
  480.                   placed in a media-specific table on behalf of this
  481.                   historyControlEntry.  This source can be any
  482.                   interface on this device.  In order to identify
  483.                   a particular interface, this object shall identify
  484.                   the instance of the ifIndex object, defined
  485.                   in [4,6], for the desired interface.  For example,
  486.                   if an entry were to receive data from interface #1,
  487.                   this object would be set to ifIndex.1.
  488.  
  489.                   The statistics in this group reflect all packets
  490.                   on the local network segment attached to the
  491.                   identified interface.
  492.  
  493.                   This object may not be modified if the associated
  494.                   historyControlStatus object is equal to valid(1)."
  495.               ::= { historyControlEntry 2 }
  496.  
  497.           historyControlBucketsRequested OBJECT-TYPE
  498.               SYNTAX INTEGER (1..65535)
  499.               ACCESS read-write
  500.               STATUS mandatory
  501.               DESCRIPTION
  502.                   "The requested number of discrete time intervals
  503.                   over which data is to be saved in the part of the
  504.                   media-specific table associated with this
  505.                   historyControl entry.
  506.  
  507.                   When this object is created or modified, the probe
  508.                   should set historyControlBucketsGranted as closely to
  509.                   this object as is possible for the particular probe
  510.                   implementation and available resources."
  511.               DEFVAL { 50 }
  512.               ::= { historyControlEntry 3 }
  513.  
  514.           historyControlBucketsGranted OBJECT-TYPE
  515.               SYNTAX INTEGER (1..65535)
  516.               ACCESS read-only
  517.               STATUS mandatory
  518.               DESCRIPTION
  519.                   "The number of discrete sampling intervals
  520.                   over which data shall be saved in the part of
  521.  
  522.  
  523.                   the media-specific table associated with this
  524.                   historyControl entry.
  525.  
  526.                   When the associated historyControlBucketsRequested
  527.                   object is created or modified, the probe
  528.                   should set this object as closely to the requested
  529.                   value as is possible for the particular
  530.                   probe implementation and available resources.  The
  531.                   probe must not lower this value except as a result
  532.                   of a modification to the associated
  533.                   historyControlBucketsRequested object.
  534.  
  535.                   There will be times when the actual number of
  536.                   buckets associated with this entry is less than
  537.                   the value of this object.  In this case, at the
  538.                   end of each sampling interval, a new bucket will
  539.                   be added to the media-specific table.
  540.  
  541.                   When the number of buckets reaches the value of
  542.                   this object and a new bucket is to be added to the
  543.                   media-specific table, the oldest bucket associated
  544.                   with this historyControlEntry shall be deleted by
  545.                   the agent so that the new bucket can be added.
  546.  
  547.                   When the value of this object changes to a value less
  548.                   than the current value, entries are deleted
  549.                   from the media-specific table associated with this
  550.                   historyControlEntry.  Enough of the oldest of these
  551.                   entries shall be deleted by the agent so that their
  552.                   number remains less than or equal to the new value of
  553.                   this object.
  554.  
  555.                   When the value of this object changes to a value
  556.                   greater than the current value, the number of
  557.                   associated media-specific entries may be allowed
  558.                   to grow."
  559.               ::= { historyControlEntry 4 }
  560.  
  561.           historyControlInterval OBJECT-TYPE
  562.               SYNTAX INTEGER (1..3600)
  563.               ACCESS read-write
  564.               STATUS mandatory
  565.               DESCRIPTION
  566.                   "The interval in seconds over which the data is
  567.                   sampled for each bucket in the part of the
  568.                   media-specific table associated with this
  569.                   historyControl entry.  This interval can
  570.                   be set to any number of seconds between 1 and
  571.  
  572.  
  573.                   3600 (1 hour).
  574.  
  575.                   Because the counters in a bucket may overflow at their
  576.                   maximum value with no indication, a prudent manager
  577.                   will take into account the possibility of overflow
  578.                   in any of the associated counters.  It is important
  579.                   to consider the minimum time in which any counter
  580.                   could overflow on a particular media type and set
  581.                   the historyControlInterval object to a value less
  582.                   than this interval.  This is typically most
  583.                   important for the 'octets' counter in any
  584.                   media-specific table.  For example, on an Ethernet
  585.                   network, the etherHistoryOctets counter could overflow
  586.                   in about one hour at the Ethernet's maximum
  587.                   utilization.
  588.  
  589.                   This object may not be modified if the associated
  590.                   historyControlStatus object is equal to valid(1)."
  591.               DEFVAL { 1800 }
  592.               ::= { historyControlEntry 5 }
  593.  
  594.           historyControlOwner OBJECT-TYPE
  595.               SYNTAX OwnerString
  596.               ACCESS read-write
  597.               STATUS mandatory
  598.               DESCRIPTION
  599.                   "The entity that configured this entry and is therefore
  600.                   using the resources assigned to it."
  601.               ::= { historyControlEntry 6 }
  602.  
  603.           historyControlStatus OBJECT-TYPE
  604.               SYNTAX EntryStatus
  605.               ACCESS read-write
  606.               STATUS mandatory
  607.               DESCRIPTION
  608.                   "The status of this historyControl entry.
  609.  
  610.                   Each instance of the media-specific table associated
  611.                   with this historyControlEntry will be deleted by the
  612.                   agent if this historyControlEntry is not equal to
  613.                   valid(1)."
  614.               ::= { historyControlEntry 7 }
  615.  
  616.           -- Ether History table
  617.  
  618.           etherHistoryTable OBJECT-TYPE
  619.               SYNTAX SEQUENCE OF EtherHistoryEntry
  620.  
  621.  
  622.               ACCESS not-accessible
  623.               STATUS mandatory
  624.               DESCRIPTION
  625.                   "A list of Ethernet history entries."
  626.               ::= { history 2 }
  627.  
  628.           etherHistoryEntry OBJECT-TYPE
  629.               SYNTAX EtherHistoryEntry
  630.               ACCESS not-accessible
  631.               STATUS mandatory
  632.               DESCRIPTION
  633.                   "An historical sample of Ethernet statistics on a
  634.                   particular Ethernet interface.  This sample is
  635.                   associated with the historyControlEntry which set
  636.                   up the parameters for a regular collection of these
  637.                   samples."
  638.               INDEX { etherHistoryIndex , etherHistorySampleIndex }
  639.               ::= { etherHistoryTable 1 }
  640.  
  641.           EtherHistoryEntry ::= SEQUENCE {
  642.               etherHistoryIndex                 INTEGER (1..65535),
  643.               etherHistorySampleIndex           INTEGER,
  644.               etherHistoryIntervalStart         TimeTicks,
  645.               etherHistoryDropEvents            Counter,
  646.               etherHistoryOctets                Counter,
  647.               etherHistoryPkts                  Counter,
  648.               etherHistoryBroadcastPkts         Counter,
  649.               etherHistoryMulticastPkts         Counter,
  650.               etherHistoryCRCAlignErrors        Counter,
  651.               etherHistoryUndersizePkts         Counter,
  652.               etherHistoryOversizePkts          Counter,
  653.               etherHistoryFragments             Counter,
  654.               etherHistoryJabbers               Counter,
  655.               etherHistoryCollisions            Counter,
  656.               etherHistoryUtilization           INTEGER (0..10000)
  657.           }
  658.  
  659.           etherHistoryIndex OBJECT-TYPE
  660.               SYNTAX INTEGER (1..65535)
  661.               ACCESS read-only
  662.               STATUS mandatory
  663.               DESCRIPTION
  664.                   "The history of which this entry is a part.  The
  665.                   history identified by a particular value of this
  666.                   index is the same history as identified
  667.                   by the same value of historyControlIndex."
  668.               ::= { etherHistoryEntry 1 }
  669.  
  670.  
  671.           etherHistorySampleIndex OBJECT-TYPE
  672.               SYNTAX INTEGER
  673.               ACCESS read-only
  674.               STATUS mandatory
  675.               DESCRIPTION
  676.                   "An index that uniquely identifies the particular
  677.                   sample this entry represents among all samples
  678.                   associated with the same historyControlEntry.
  679.                   This index starts at 1 and increases by one
  680.                   as each new sample is taken."
  681.               ::= { etherHistoryEntry 2 }
  682.  
  683.           etherHistoryIntervalStart OBJECT-TYPE
  684.               SYNTAX TimeTicks
  685.               ACCESS read-only
  686.               STATUS mandatory
  687.               DESCRIPTION
  688.                   "The value of sysUpTime at the start of the interval
  689.                   over which this sample was measured.  If the probe
  690.                   keeps track of the time of day, it should start
  691.                   the first sample of the history at a time such that
  692.                   when the next hour of the day begins, a sample is
  693.                   started at that instant.  Note that following this
  694.                   rule may require the probe to delay collecting the
  695.                   first sample of the history, as each sample must be
  696.                   of the same interval.  Also note that the sample which
  697.                   is currently being collected is not accessible in this
  698.                   table until the end of its interval."
  699.               ::= { etherHistoryEntry 3 }
  700.  
  701.           etherHistoryDropEvents OBJECT-TYPE
  702.               SYNTAX Counter
  703.               ACCESS read-only
  704.               STATUS mandatory
  705.               DESCRIPTION
  706.                   "The total number of events in which packets
  707.                   were dropped by the probe due to lack of resources
  708.                   during this interval.  Note that this number is not
  709.                   necessarily the number of packets dropped, it is just
  710.                   the number of times this condition has been detected."
  711.               ::= { etherHistoryEntry 4 }
  712.  
  713.           etherHistoryOctets OBJECT-TYPE
  714.               SYNTAX Counter
  715.               ACCESS read-only
  716.               STATUS mandatory
  717.               DESCRIPTION
  718.                   "The total number of octets of data (including
  719.  
  720.  
  721.                   those in bad packets) received on the
  722.                   network (excluding framing bits but including
  723.                   FCS octets)."
  724.               ::= { etherHistoryEntry 5 }
  725.  
  726.           etherHistoryPkts OBJECT-TYPE
  727.               SYNTAX Counter
  728.               ACCESS read-only
  729.               STATUS mandatory
  730.               DESCRIPTION
  731.                   "The number of packets (including error packets)
  732.                   received during this sampling interval."
  733.               ::= { etherHistoryEntry 6 }
  734.  
  735.           etherHistoryBroadcastPkts OBJECT-TYPE
  736.               SYNTAX Counter
  737.               ACCESS read-only
  738.               STATUS mandatory
  739.               DESCRIPTION
  740.                   "The number of good packets received during this
  741.                   sampling interval that were directed to the
  742.                   broadcast address."
  743.               ::= { etherHistoryEntry 7 }
  744.  
  745.           etherHistoryMulticastPkts OBJECT-TYPE
  746.               SYNTAX Counter
  747.               ACCESS read-only
  748.               STATUS mandatory
  749.               DESCRIPTION
  750.                   "The number of good packets received during this
  751.                   sampling interval that were directed to a
  752.                   multicast address.  Note that this number does not
  753.                   include packets addressed to the broadcast address."
  754.               ::= { etherHistoryEntry 8 }
  755.  
  756.           etherHistoryCRCAlignErrors OBJECT-TYPE
  757.               SYNTAX Counter
  758.               ACCESS read-only
  759.               STATUS mandatory
  760.               DESCRIPTION
  761.                   "The number of packets received during this
  762.                   sampling interval that had a length (excluding
  763.                   framing bits but including FCS octets) between
  764.                   64 and 1518 octets, inclusive, but were not an
  765.                   integral number of octets in length or had a
  766.                   bad Frame Check Sequence (FCS)."
  767.               ::= { etherHistoryEntry 9 }
  768.  
  769.  
  770.           etherHistoryUndersizePkts OBJECT-TYPE
  771.               SYNTAX Counter
  772.               ACCESS read-only
  773.               STATUS mandatory
  774.               DESCRIPTION
  775.                   "The number of packets received during this
  776.                   interval that were less than 64 octets long
  777.                   (excluding framing bits but including FCS
  778.                   octets) and were otherwise well formed."
  779.               ::= { etherHistoryEntry 10 }
  780.  
  781.           etherHistoryOversizePkts OBJECT-TYPE
  782.               SYNTAX Counter
  783.               ACCESS read-only
  784.               STATUS mandatory
  785.               DESCRIPTION
  786.                   "The number of packets received during this
  787.                   interval that were longer than 1518 octets
  788.                   (excluding framing bits but including FCS
  789.                   octets) but were otherwise well formed."
  790.               ::= { etherHistoryEntry 11 }
  791.  
  792.           etherHistoryFragments OBJECT-TYPE
  793.               SYNTAX Counter
  794.               ACCESS read-only
  795.               STATUS mandatory
  796.               DESCRIPTION
  797.                   "The total number of packets received during this
  798.                   sampling interval that were not an integral
  799.                   number of octets in length or that
  800.                   had a bad Frame Check Sequence (FCS), and
  801.                   were less than 64 octets in length (excluding
  802.                   framing bits but including FCS octets)."
  803.               ::= { etherHistoryEntry 12 }
  804.  
  805.           etherHistoryJabbers OBJECT-TYPE
  806.               SYNTAX Counter
  807.               ACCESS read-only
  808.               STATUS mandatory
  809.               DESCRIPTION
  810.                   "The number of packets received during this
  811.                   interval that were longer than 1518 octets
  812.                   (excluding framing bits but including FCS octets),
  813.                   and were not an integral number of octets in
  814.                   length or had a bad Frame Check Sequence (FCS)."
  815.               ::= { etherHistoryEntry 13 }
  816.  
  817.  
  818.           etherHistoryCollisions OBJECT-TYPE
  819.               SYNTAX Counter
  820.               ACCESS read-only
  821.               STATUS mandatory
  822.               DESCRIPTION
  823.                   "The best estimate of the total number of collisions
  824.                   on this Ethernet segment during this interval."
  825.               ::= { etherHistoryEntry 14 }
  826.  
  827.           etherHistoryUtilization OBJECT-TYPE
  828.               SYNTAX INTEGER (0..10000)
  829.               ACCESS read-only
  830.               STATUS mandatory
  831.               DESCRIPTION
  832.                   "The best estimate of the mean physical layer
  833.                   network utilization on this interface during this
  834.                   interval, in hundredths of a percent."
  835.               ::= { etherHistoryEntry 15 }
  836.  
  837.           -- The Alarm Group
  838.  
  839.           -- Implementation of the Alarm group is optional.
  840.           --
  841.           -- The Alarm Group requires the implementation of the Event
  842.           -- group.
  843.           --
  844.           -- The Alarm group periodically takes statistical samples from
  845.           -- variables in the probe and compares them to thresholds
  846.           -- that have been configured.  The alarm table stores
  847.           -- configuration entries that each define a variable,
  848.           -- polling period, and threshold parameters.  If a sample is
  849.           -- found to cross the threshold values, an event is
  850.           -- generated.  Only variables that resolve to an ASN.1
  851.           -- primitive type of INTEGER (INTEGER, Counter,
  852.           -- Gauge, or TimeTicks) may be monitored in this way.
  853.           --
  854.           -- This function has a hysteresis mechanism to limit the
  855.           -- generation of events.  This mechanism generates one event
  856.           -- as a threshold is crossed in the appropriate direction.
  857.           -- No more events are generated for that threshold until the
  858.           -- opposite threshold is crossed.
  859.           --
  860.           -- In the case of a sampling a deltaValue, a probe may
  861.           -- implement this mechanism with more precision if it takes
  862.           -- a delta sample twice per period, each time comparing the
  863.           -- sum of the latest two samples to the threshold.  This
  864.           -- allows the detection of threshold crossings
  865.  
  866.  
  867.           -- that span the sampling boundary.  Note that this does not
  868.           -- require any special configuration of the threshold value.
  869.           -- It is suggested that probes implement this more precise
  870.           -- algorithm.
  871.  
  872.           alarmTable OBJECT-TYPE
  873.               SYNTAX SEQUENCE OF AlarmEntry
  874.               ACCESS not-accessible
  875.               STATUS mandatory
  876.               DESCRIPTION
  877.                   "A list of alarm entries."
  878.               ::= { alarm 1 }
  879.  
  880.           alarmEntry OBJECT-TYPE
  881.               SYNTAX AlarmEntry
  882.               ACCESS not-accessible
  883.               STATUS mandatory
  884.               DESCRIPTION
  885.                   "A list of parameters that set up a periodic checking
  886.                   for alarm conditions."
  887.               INDEX { alarmIndex }
  888.               ::= { alarmTable 1 }
  889.  
  890.           AlarmEntry ::= SEQUENCE {
  891.               alarmIndex                    INTEGER (1..65535),
  892.               alarmInterval                 INTEGER,
  893.               alarmVariable                 OBJECT IDENTIFIER,
  894.               alarmSampleType               INTEGER,
  895.               alarmValue                    INTEGER,
  896.               alarmStartupAlarm             INTEGER,
  897.               alarmRisingThreshold          INTEGER,
  898.               alarmFallingThreshold         INTEGER,
  899.               alarmRisingEventIndex         INTEGER (1..65535),
  900.               alarmFallingEventIndex        INTEGER (1..65535),
  901.               alarmOwner                    OwnerString,
  902.               alarmStatus                   INTEGER
  903.           }
  904.  
  905.           alarmIndex OBJECT-TYPE
  906.               SYNTAX INTEGER (1..65535)
  907.               ACCESS read-only
  908.               STATUS mandatory
  909.               DESCRIPTION
  910.                   "An index that uniquely identifies an entry in the
  911.                   alarm table.  Each such entry defines a
  912.                   diagnostic sample at a particular interval
  913.                   for an object on the device."
  914.               ::= { alarmEntry 1 }
  915.  
  916.  
  917.           alarmInterval OBJECT-TYPE
  918.               SYNTAX INTEGER
  919.               ACCESS read-write
  920.               STATUS mandatory
  921.               DESCRIPTION
  922.                   "The interval in seconds over which the data is
  923.                   sampled and compared with the rising and falling
  924.                   thresholds.  When setting this variable, care
  925.                   should be given to ensure that the variable being
  926.                   monitored will not exceed 2^31 - 1 and roll
  927.                   over the alarmValue object during the interval.
  928.  
  929.                   This object may not be modified if the associated
  930.                   alarmStatus object is equal to valid(1)."
  931.               ::= { alarmEntry 2 }
  932.  
  933.           alarmVariable OBJECT-TYPE
  934.               SYNTAX OBJECT IDENTIFIER
  935.               ACCESS read-write
  936.               STATUS mandatory
  937.               DESCRIPTION
  938.                   "The object identifier of the particular variable to
  939.                   be sampled.  Only variables that resolve to an ASN.1
  940.                   primitive type of INTEGER (INTEGER, Counter, Gauge,
  941.                   or TimeTicks) may be sampled.
  942.  
  943.                   Because SNMP access control is articulated entirely
  944.                   in terms of the contents of MIB views, no access
  945.                   control mechanism exists that can restrict the value of
  946.                   this object to identify only those objects that exist
  947.                   in a particular MIB view.  Because there is thus no
  948.                   acceptable means of restricting the read access that
  949.                   could be obtained through the alarm mechanism, the
  950.                   probe must only grant write access to this object in
  951.                   those views that have read access to all objects on
  952.                   the probe.
  953.  
  954.                   During a set operation, if the supplied variable
  955.                   name is not available in the selected MIB view, a
  956.                   badValue error must be returned.  If at any time
  957.                   the variable name of an established alarmEntry is
  958.                   no longer available in the selected MIB view, the
  959.                   probe must change the status of this alarmEntry
  960.                   to invalid(4).
  961.  
  962.                   This object may not be modified if the associated
  963.                   alarmStatus object is equal to valid(1)."
  964.               ::= { alarmEntry 3 }
  965.  
  966.  
  967.           alarmSampleType OBJECT-TYPE
  968.               SYNTAX INTEGER {
  969.                   absoluteValue(1),
  970.                   deltaValue(2)
  971.               }
  972.               ACCESS read-write
  973.               STATUS mandatory
  974.               DESCRIPTION
  975.                   "The method of sampling the selected variable and
  976.                   calculating the value to be compared against the
  977.                   thresholds.  If the value of this object is
  978.                   absoluteValue(1), the value of the selected variable
  979.                   will be compared directly with the thresholds at the
  980.                   end of the sampling interval.  If the value of this
  981.                   object is deltaValue(2), the value of the selected
  982.                   variable at the last sample will be subtracted from
  983.                   the current value, and the difference compared with
  984.                   the thresholds.
  985.  
  986.                   This object may not be modified if the associated
  987.                   alarmStatus object is equal to valid(1)."
  988.               ::= { alarmEntry 4 }
  989.  
  990.           alarmValue OBJECT-TYPE
  991.               SYNTAX INTEGER
  992.               ACCESS read-only
  993.               STATUS mandatory
  994.               DESCRIPTION
  995.                   "The value of the statistic during the last sampling
  996.                   period.  The value during the current sampling period
  997.                   is not made available until the period is completed."
  998.               ::= { alarmEntry 5 }
  999.  
  1000.           alarmStartupAlarm OBJECT-TYPE
  1001.               SYNTAX INTEGER {
  1002.                   risingAlarm(1),
  1003.                   fallingAlarm(2),
  1004.                   risingOrFallingAlarm(3)
  1005.               }
  1006.               ACCESS read-write
  1007.               STATUS mandatory
  1008.               DESCRIPTION
  1009.                   "The alarm that may be sent when this entry is first
  1010.                   set to valid.  If the first sample after this entry
  1011.                   becomes valid is greater than or equal to the
  1012.                   risingThreshold and alarmStartupAlarm is equal to
  1013.                   risingAlarm(1) or risingOrFallingAlarm(3), then a
  1014.                   single rising alarm will be generated.  If the first
  1015.  
  1016.  
  1017.                   sample after this entry becomes valid is less than
  1018.                   or equal to the fallingThreshold and
  1019.                   alarmStartupAlarm is equal to fallingAlarm(2) or
  1020.                   risingOrFallingAlarm(3), then a single falling
  1021.                   alarm will be generated.
  1022.  
  1023.                   This object may not be modified if the associated
  1024.                   alarmStatus object is equal to valid(1)."
  1025.               ::= { alarmEntry 6 }
  1026.  
  1027.           alarmRisingThreshold OBJECT-TYPE
  1028.               SYNTAX INTEGER
  1029.               ACCESS read-write
  1030.               STATUS mandatory
  1031.               DESCRIPTION
  1032.                   "A threshold for the sampled statistic.  When the
  1033.                   current sampled value is greater than or equal to
  1034.                   this threshold, and the value at the last sampling
  1035.                   interval was less than this threshold, a single
  1036.                   event will be generated.
  1037.                   A single event will also be generated if the first
  1038.                   sample after this entry becomes valid is greater
  1039.                   than or equal to this threshold and the associated
  1040.                   alarmStartupAlarm is equal to risingAlarm(1) or
  1041.                   risingOrFallingAlarm(3).
  1042.  
  1043.                   After a rising event is generated, another such event
  1044.                   will not be generated until the sampled value
  1045.                   falls below this threshold and reaches the
  1046.                   alarmFallingThreshold.
  1047.  
  1048.                   This object may not be modified if the associated
  1049.                   alarmStatus object is equal to valid(1)."
  1050.               ::= { alarmEntry 7 }
  1051.  
  1052.           alarmFallingThreshold OBJECT-TYPE
  1053.               SYNTAX INTEGER
  1054.               ACCESS read-write
  1055.               STATUS mandatory
  1056.               DESCRIPTION
  1057.                   "A threshold for the sampled statistic.  When the
  1058.                   current sampled value is less than or equal to
  1059.                   this threshold, and the value at the last sampling
  1060.                   interval was greater than this threshold, a single
  1061.                   event will be generated.
  1062.                   A single event will also be generated if the first
  1063.                   sample after this entry becomes valid is less than or
  1064.                   equal to this threshold and the associated
  1065.  
  1066.  
  1067.                   alarmStartupAlarm is equal to fallingAlarm(2) or
  1068.                   risingOrFallingAlarm(3).
  1069.  
  1070.                   After a falling event is generated, another such event
  1071.                   will not be generated until the sampled value
  1072.                   rises above this threshold and reaches the
  1073.                   alarmRisingThreshold.
  1074.  
  1075.                   This object may not be modified if the associated
  1076.                   alarmStatus object is equal to valid(1)."
  1077.               ::= { alarmEntry 8 }
  1078.  
  1079.           alarmRisingEventIndex OBJECT-TYPE
  1080.               SYNTAX INTEGER (0..65535)
  1081.               ACCESS read-write
  1082.               STATUS mandatory
  1083.               DESCRIPTION
  1084.                   "The index of the eventEntry that is
  1085.                   used when a rising threshold is crossed.  The
  1086.                   eventEntry identified by a particular value of
  1087.                   this index is the same as identified by the same value
  1088.                   of the eventIndex object.  If there is no
  1089.                   corresponding entry in the eventTable, then
  1090.                   no association exists.  In particular, if this value
  1091.                   is zero, no associated event will be generated, as
  1092.                   zero is not a valid event index.
  1093.  
  1094.                   This object may not be modified if the associated
  1095.                   alarmStatus object is equal to valid(1)."
  1096.               ::= { alarmEntry 9 }
  1097.  
  1098.           alarmFallingEventIndex OBJECT-TYPE
  1099.               SYNTAX INTEGER (0..65535)
  1100.               ACCESS read-write
  1101.               STATUS mandatory
  1102.               DESCRIPTION
  1103.                   "The index of the eventEntry that is
  1104.                   used when a falling threshold is crossed.  The
  1105.                   eventEntry identified by a particular value of
  1106.                   this index is the same as identified by the same value
  1107.                   of the eventIndex object.  If there is no
  1108.                   corresponding entry in the eventTable, then
  1109.                   no association exists.  In particular, if this value
  1110.                   is zero, no associated event will be generated, as
  1111.                   zero is not a valid event index.
  1112.  
  1113.                   This object may not be modified if the associated
  1114.                   alarmStatus object is equal to valid(1)."
  1115.  
  1116.  
  1117.               ::= { alarmEntry 10 }
  1118.  
  1119.           alarmOwner OBJECT-TYPE
  1120.               SYNTAX OwnerString
  1121.               ACCESS read-write
  1122.               STATUS mandatory
  1123.               DESCRIPTION
  1124.                   "The entity that configured this entry and is
  1125.                   therefore using the resources assigned to it."
  1126.               ::= { alarmEntry 11 }
  1127.  
  1128.           alarmStatus OBJECT-TYPE
  1129.               SYNTAX EntryStatus
  1130.               ACCESS read-write
  1131.               STATUS mandatory
  1132.               DESCRIPTION
  1133.                   "The status of this alarm entry."
  1134.               ::= { alarmEntry 12 }
  1135.  
  1136.           -- The Host Group
  1137.  
  1138.           -- Implementation of the Host group is optional.
  1139.           --
  1140.           -- The host group discovers new hosts on the network by
  1141.           -- keeping a list of source and destination MAC Addresses seen
  1142.           -- in good packets.  For each of these addresses, the host
  1143.           -- group keeps a set of statistics.  The hostControlTable
  1144.           -- controls which interfaces this function is performed on,
  1145.           -- and contains some information about the process.  On
  1146.           -- behalf of each hostControlEntry, data is collected on an
  1147.           -- interface and placed both the hostTable and the
  1148.           -- hostTimeTable.  If the monitoring device finds itself
  1149.           -- short of resources, it may delete entries as needed.  It
  1150.           -- is suggested that the device delete the least recently
  1151.           -- used entries first.
  1152.  
  1153.           -- The hostTable contains entries for each address
  1154.           -- discovered on a particular interface.  Each entry
  1155.           -- contains statistical data about that host.  This table
  1156.           -- is indexed by the MAC address of the host, through
  1157.           -- which a random access may be achieved.
  1158.  
  1159.           -- The hostTimeTable contains data in the same format as the
  1160.           -- hostTable, and must contain the same set of hosts, but is
  1161.           -- indexed using hostTimeCreationOrder rather than hostAddress.
  1162.           -- The hostTimeCreationOrder is an integer which reflects
  1163.           -- the relative order in which a particular entry was
  1164.  
  1165.  
  1166.           -- discovered and thus inserted into the table.  As this
  1167.           -- order, and thus index, is among those entries currently
  1168.           -- in the table, the index for a particular entry may change
  1169.           -- if an (earlier) entry is deleted.  Thus the association
  1170.           -- between hostTimeCreationOrder and hostTimeEntry may be
  1171.           -- broken at any time.
  1172.  
  1173.           -- The hostTimeTable has two important uses.  The first is the
  1174.           -- fast download of this potentially large table.  Because the
  1175.           -- index of this table runs from 1 to the size of the table,
  1176.           -- inclusive, its values are predictable.  This allows very
  1177.           -- efficient packing of variables into SNMP PDU's and allows
  1178.           -- a table transfer to have multiple packets outstanding.
  1179.           -- These benefits increase transfer rates tremendously.
  1180.  
  1181.           -- The second use of the hostTimeTable is the efficient
  1182.           -- discovery by the management station of new entries added
  1183.           -- to the table.  After the management station has
  1184.           -- downloaded the entire table, it knows that new entries
  1185.           -- will be added immediately after the end of the current
  1186.           -- table.  It can thus detect new entries there
  1187.           -- and retrieve them easily.
  1188.  
  1189.           -- Because the association between hostTimeCreationOrder and
  1190.           -- hostTimeEntry may be broken at any time, the management
  1191.           -- station must monitor the related hostControlLastDeleteTime
  1192.           -- object.  When the management station thus detects a deletion,
  1193.           -- it must assume that any such associations have been broken,
  1194.           -- and invalidate any it has stored locally.  This includes
  1195.           -- restarting any download of the hostTimeTable that may have
  1196.           -- been in progress, as well as rediscovering the end of the
  1197.           -- hostTimeTable so that it may detect new entries.  If the
  1198.           -- management station does not detect the broken association,
  1199.           -- it may continue to refer to a particular host by its
  1200.           -- creationOrder while unwittingly retrieving the data
  1201.           -- associated with another host entirely.  If this happens
  1202.           -- while downloading the host table, the management station
  1203.           -- may fail to download all of the entries in the table.
  1204.  
  1205.           hostControlTable OBJECT-TYPE
  1206.               SYNTAX SEQUENCE OF HostControlEntry
  1207.               ACCESS not-accessible
  1208.               STATUS mandatory
  1209.               DESCRIPTION
  1210.                   "A list of host table control entries."
  1211.               ::= { hosts 1 }
  1212.  
  1213.  
  1214.           hostControlEntry OBJECT-TYPE
  1215.               SYNTAX HostControlEntry
  1216.               ACCESS not-accessible
  1217.               STATUS mandatory
  1218.               DESCRIPTION
  1219.                   "A list of parameters that set up the discovery of
  1220.                   hosts on a particular interface and the collection
  1221.                   of statistics about these hosts."
  1222.               INDEX { hostControlIndex }
  1223.               ::= { hostControlTable 1 }
  1224.  
  1225.           HostControlEntry ::= SEQUENCE {
  1226.               hostControlIndex            INTEGER (1..65535),
  1227.               hostControlDataSource       OBJECT IDENTIFIER,
  1228.               hostControlTableSize        INTEGER,
  1229.               hostControlLastDeleteTime   TimeTicks,
  1230.               hostControlOwner            OwnerString,
  1231.               hostControlStatus           INTEGER
  1232.           }
  1233.  
  1234.           hostControlIndex OBJECT-TYPE
  1235.               SYNTAX INTEGER (1..65535)
  1236.               ACCESS read-only
  1237.               STATUS mandatory
  1238.               DESCRIPTION
  1239.                   "An index that uniquely identifies an entry in the
  1240.                   hostControl table.  Each such entry defines
  1241.                   a function that discovers hosts on a particular
  1242.                   interface and places statistics about them in the
  1243.                   hostTable and the hostTimeTable on behalf of this
  1244.                   hostControlEntry."
  1245.               ::= { hostControlEntry 1 }
  1246.  
  1247.           hostControlDataSource OBJECT-TYPE
  1248.               SYNTAX OBJECT IDENTIFIER
  1249.               ACCESS read-write
  1250.               STATUS mandatory
  1251.               DESCRIPTION
  1252.                   "This object identifies the source of the data for
  1253.                   this instance of the host function.  This source
  1254.                   can be any interface on this device.  In order
  1255.                   to identify a particular interface, this object shall
  1256.                   identify the instance of the ifIndex object, defined
  1257.                   in [4,6], for the desired interface.  For example,
  1258.                   if an entry were to receive data from interface #1,
  1259.                   this object would be set to ifIndex.1.
  1260.  
  1261.                   The statistics in this group reflect all packets
  1262.  
  1263.  
  1264.                   on the local network segment attached to the
  1265.                   identified interface.
  1266.  
  1267.                   This object may not be modified if the associated
  1268.                   hostControlStatus object is equal to valid(1)."
  1269.               ::= { hostControlEntry 2 }
  1270.  
  1271.           hostControlTableSize OBJECT-TYPE
  1272.               SYNTAX INTEGER
  1273.               ACCESS read-only
  1274.               STATUS mandatory
  1275.               DESCRIPTION
  1276.                   "The number of hostEntries in the hostTable and the
  1277.                   hostTimeTable associated with this hostControlEntry."
  1278.               ::= { hostControlEntry 3 }
  1279.  
  1280.           hostControlLastDeleteTime OBJECT-TYPE
  1281.               SYNTAX TimeTicks
  1282.               ACCESS read-only
  1283.               STATUS mandatory
  1284.               DESCRIPTION
  1285.                   "The value of sysUpTime when the last entry
  1286.                   was deleted from the portion of the hostTable
  1287.                   associated with this hostControlEntry.  If no
  1288.                   deletions have occurred, this value shall be zero."
  1289.               ::= { hostControlEntry 4 }
  1290.  
  1291.           hostControlOwner OBJECT-TYPE
  1292.               SYNTAX OwnerString
  1293.               ACCESS read-write
  1294.               STATUS mandatory
  1295.               DESCRIPTION
  1296.                   "The entity that configured this entry and is
  1297.                   therefore using the resources assigned to it."
  1298.               ::= { hostControlEntry 5 }
  1299.  
  1300.           hostControlStatus OBJECT-TYPE
  1301.               SYNTAX EntryStatus
  1302.               ACCESS read-write
  1303.               STATUS mandatory
  1304.               DESCRIPTION
  1305.                   "The status of this hostControl entry.
  1306.  
  1307.                   If this object is not equal to valid(1), all
  1308.                   associated entries in the hostTable,
  1309.                   hostTimeTable, and the hostTopNTable shall be
  1310.                   deleted by the agent."
  1311.               ::= { hostControlEntry 6 }
  1312.  
  1313.  
  1314.           hostTable OBJECT-TYPE
  1315.               SYNTAX SEQUENCE OF HostEntry
  1316.               ACCESS not-accessible
  1317.               STATUS mandatory
  1318.               DESCRIPTION
  1319.                   "A list of host entries."
  1320.               ::= { hosts 2 }
  1321.  
  1322.           hostEntry OBJECT-TYPE
  1323.               SYNTAX HostEntry
  1324.               ACCESS not-accessible
  1325.               STATUS mandatory
  1326.               DESCRIPTION
  1327.                   "A collection of statistics for a particular host
  1328.                   that has been discovered on an interface of this
  1329.                   device."
  1330.               INDEX { hostIndex, hostAddress }
  1331.               ::= { hostTable 1 }
  1332.  
  1333.           HostEntry ::= SEQUENCE {
  1334.               hostAddress             OCTET STRING,
  1335.               hostCreationOrder       INTEGER (1..65535),
  1336.               hostIndex               INTEGER (1..65535),
  1337.               hostInPkts              Counter,
  1338.               hostOutPkts             Counter,
  1339.               hostInOctets            Counter,
  1340.               hostOutOctets           Counter,
  1341.               hostOutErrors           Counter,
  1342.               hostOutBroadcastPkts    Counter,
  1343.               hostOutMulticastPkts    Counter
  1344.           }
  1345.  
  1346.           hostAddress OBJECT-TYPE
  1347.               SYNTAX OCTET STRING
  1348.               ACCESS read-only
  1349.               STATUS mandatory
  1350.               DESCRIPTION
  1351.                   "The physical address of this host."
  1352.               ::= { hostEntry 1 }
  1353.  
  1354.           hostCreationOrder OBJECT-TYPE
  1355.               SYNTAX INTEGER (1..65535)
  1356.               ACCESS read-only
  1357.               STATUS mandatory
  1358.               DESCRIPTION
  1359.                   "An index that defines the relative ordering of
  1360.                   the creation time of hosts captured for a
  1361.                   particular hostControlEntry.  This index shall
  1362.  
  1363.  
  1364.                   be between 1 and N, where N is the value of
  1365.                   the associated hostControlTableSize.  The ordering
  1366.                   of the indexes is based on the order of each entry's
  1367.                   insertion into the table, in which entries added
  1368.                   earlier have a lower index value than entries added
  1369.                   later.
  1370.  
  1371.                   It is important to note that the order for a
  1372.                   particular entry may change as an (earlier) entry
  1373.                   is deleted from the table.  Because this order may
  1374.                   change, management stations should make use of the
  1375.                   hostControlLastDeleteTime variable in the
  1376.                   hostControlEntry associated with the relevant
  1377.                   portion of the hostTable.  By observing
  1378.                   this variable, the management station may detect
  1379.                   the circumstances where a previous association
  1380.                   between a value of hostCreationOrder
  1381.                   and a hostEntry may no longer hold."
  1382.               ::= { hostEntry 2 }
  1383.  
  1384.           hostIndex OBJECT-TYPE
  1385.               SYNTAX INTEGER (1..65535)
  1386.               ACCESS read-only
  1387.               STATUS mandatory
  1388.               DESCRIPTION
  1389.                   "The set of collected host statistics of which
  1390.                   this entry is a part.  The set of hosts
  1391.                   identified by a particular value of this
  1392.                   index is associated with the hostControlEntry
  1393.                   as identified by the same value of hostControlIndex."
  1394.               ::= { hostEntry 3 }
  1395.  
  1396.           hostInPkts OBJECT-TYPE
  1397.               SYNTAX Counter
  1398.               ACCESS read-only
  1399.               STATUS mandatory
  1400.               DESCRIPTION
  1401.                   "The number of packets without errors transmitted to
  1402.                   this address since it was added to the hostTable."
  1403.               ::= { hostEntry 4 }
  1404.  
  1405.           hostOutPkts OBJECT-TYPE
  1406.               SYNTAX Counter
  1407.               ACCESS read-only
  1408.               STATUS mandatory
  1409.               DESCRIPTION
  1410.                   "The number of packets including errors transmitted
  1411.                   by this address since it was added to the hostTable."
  1412.  
  1413.  
  1414.               ::= { hostEntry 5 }
  1415.  
  1416.           hostInOctets OBJECT-TYPE
  1417.               SYNTAX Counter
  1418.               ACCESS read-only
  1419.               STATUS mandatory
  1420.               DESCRIPTION
  1421.                   "The number of octets transmitted to this address
  1422.                   since it was added to the hostTable (excluding
  1423.                   framing bits but including FCS octets), except for
  1424.                   those octets in packets that contained errors."
  1425.               ::= { hostEntry 6 }
  1426.  
  1427.           hostOutOctets OBJECT-TYPE
  1428.               SYNTAX Counter
  1429.               ACCESS read-only
  1430.               STATUS mandatory
  1431.               DESCRIPTION
  1432.                   "The number of octets transmitted by this address
  1433.                   since it was added to the hostTable (excluding
  1434.                   framing bits but including FCS octets), including
  1435.                   those octets in packets that contained errors."
  1436.               ::= { hostEntry 7 }
  1437.  
  1438.           hostOutErrors OBJECT-TYPE
  1439.               SYNTAX Counter
  1440.               ACCESS read-only
  1441.               STATUS mandatory
  1442.               DESCRIPTION
  1443.                   "The number of error packets transmitted by this
  1444.                   address since this host was added to the hostTable."
  1445.               ::= { hostEntry 8 }
  1446.  
  1447.           hostOutBroadcastPkts OBJECT-TYPE
  1448.               SYNTAX Counter
  1449.               ACCESS read-only
  1450.               STATUS mandatory
  1451.               DESCRIPTION
  1452.                   "The number of good packets transmitted by this
  1453.                   address that were directed to the broadcast address
  1454.                   since this host was added to the hostTable."
  1455.               ::= { hostEntry 9 }
  1456.  
  1457.           hostOutMulticastPkts OBJECT-TYPE
  1458.               SYNTAX Counter
  1459.               ACCESS read-only
  1460.               STATUS mandatory
  1461.               DESCRIPTION
  1462.  
  1463.  
  1464.                   "The number of good packets transmitted by this
  1465.                   address that were directed to a multicast address
  1466.                   since this host was added to the hostTable.
  1467.                   Note that this number does not include packets
  1468.                   directed to the broadcast address."
  1469.               ::= { hostEntry 10 }
  1470.  
  1471.           -- host Time Table
  1472.  
  1473.           hostTimeTable OBJECT-TYPE
  1474.               SYNTAX SEQUENCE OF HostTimeEntry
  1475.               ACCESS not-accessible
  1476.               STATUS mandatory
  1477.               DESCRIPTION
  1478.                   "A list of time-ordered host table entries."
  1479.               ::= { hosts 3 }
  1480.  
  1481.           hostTimeEntry OBJECT-TYPE
  1482.               SYNTAX HostTimeEntry
  1483.               ACCESS not-accessible
  1484.               STATUS mandatory
  1485.               DESCRIPTION
  1486.                   "A collection of statistics for a particular host
  1487.                   that has been discovered on an interface of this
  1488.                   device.  This collection includes the relative
  1489.                   ordering of the creation time of this object."
  1490.               INDEX { hostTimeIndex, hostTimeCreationOrder }
  1491.               ::= { hostTimeTable 1 }
  1492.  
  1493.           HostTimeEntry ::= SEQUENCE {
  1494.               hostTimeAddress              OCTET STRING,
  1495.               hostTimeCreationOrder        INTEGER (1..65535),
  1496.               hostTimeIndex                INTEGER (1..65535),
  1497.               hostTimeInPkts               Counter,
  1498.               hostTimeOutPkts              Counter,
  1499.               hostTimeInOctets             Counter,
  1500.               hostTimeOutOctets            Counter,
  1501.               hostTimeOutErrors            Counter,
  1502.               hostTimeOutBroadcastPkts     Counter,
  1503.               hostTimeOutMulticastPkts     Counter
  1504.           }
  1505.  
  1506.           hostTimeAddress OBJECT-TYPE
  1507.               SYNTAX OCTET STRING
  1508.               ACCESS read-only
  1509.               STATUS mandatory
  1510.               DESCRIPTION
  1511.  
  1512.  
  1513.                   "The physical address of this host."
  1514.               ::= { hostTimeEntry 1 }
  1515.  
  1516.           hostTimeCreationOrder OBJECT-TYPE
  1517.               SYNTAX INTEGER (1..65535)
  1518.               ACCESS read-only
  1519.               STATUS mandatory
  1520.               DESCRIPTION
  1521.                   "An index that uniquely identifies an entry in
  1522.                   the hostTime table among those entries associated
  1523.                   with the same hostControlEntry.  This index shall
  1524.                   be between 1 and N, where N is the value of
  1525.                   the associated hostControlTableSize.  The ordering
  1526.                   of the indexes is based on the order of each entry's
  1527.                   insertion into the table, in which entries added
  1528.                   earlier have a lower index value than entries added
  1529.                   later.  Thus the management station has the ability
  1530.                   to learn of new entries added to this table without
  1531.                   downloading the entire table.
  1532.  
  1533.                   It is important to note that the index for a
  1534.                   particular entry may change as an (earlier) entry
  1535.                   is deleted from the table.  Because this order may
  1536.                   change, management stations should make use of the
  1537.                   hostControlLastDeleteTime variable in the
  1538.                   hostControlEntry associated with the relevant
  1539.                   portion of the hostTimeTable.  By observing
  1540.                   this variable, the management station may detect
  1541.                   the circumstances where a download of the table
  1542.                   may have missed entries, and where a previous
  1543.                   association between a value of hostTimeCreationOrder
  1544.                   and a hostTimeEntry may no longer hold."
  1545.               ::= { hostTimeEntry 2 }
  1546.  
  1547.           hostTimeIndex OBJECT-TYPE
  1548.               SYNTAX INTEGER (1..65535)
  1549.               ACCESS read-only
  1550.               STATUS mandatory
  1551.               DESCRIPTION
  1552.                   "The set of collected host statistics of which
  1553.                   this entry is a part.  The set of hosts
  1554.                   identified by a particular value of this
  1555.                   index is associated with the hostControlEntry
  1556.                   as identified by the same value of hostControlIndex."
  1557.               ::= { hostTimeEntry 3 }
  1558.  
  1559.  
  1560.           hostTimeInPkts OBJECT-TYPE
  1561.               SYNTAX Counter
  1562.               ACCESS read-only
  1563.               STATUS mandatory
  1564.               DESCRIPTION
  1565.                   "The number of packets without errors transmitted to
  1566.                   this address since it was added to the hostTimeTable."
  1567.               ::= { hostTimeEntry 4 }
  1568.  
  1569.           hostTimeOutPkts OBJECT-TYPE
  1570.               SYNTAX Counter
  1571.               ACCESS read-only
  1572.               STATUS mandatory
  1573.               DESCRIPTION
  1574.                   "The number of packets including errors transmitted
  1575.                   by this address since it was added to the
  1576.                   hostTimeTable."
  1577.               ::= { hostTimeEntry 5 }
  1578.  
  1579.           hostTimeInOctets OBJECT-TYPE
  1580.               SYNTAX Counter
  1581.               ACCESS read-only
  1582.               STATUS mandatory
  1583.               DESCRIPTION
  1584.                   "The number of octets transmitted to this address
  1585.                   since it was added to the hostTimeTable (excluding
  1586.                   framing bits but including FCS octets), except for
  1587.                   those octets in packets that contained errors."
  1588.               ::= { hostTimeEntry 6 }
  1589.  
  1590.           hostTimeOutOctets OBJECT-TYPE
  1591.               SYNTAX Counter
  1592.               ACCESS read-only
  1593.               STATUS mandatory
  1594.               DESCRIPTION
  1595.                   "The number of octets transmitted by this address since
  1596.                   it was added to the hostTimeTable (excluding framing
  1597.                   bits but including FCS octets), including those
  1598.                   octets in packets that contained errors."
  1599.               ::= { hostTimeEntry 7 }
  1600.  
  1601.           hostTimeOutErrors OBJECT-TYPE
  1602.               SYNTAX Counter
  1603.               ACCESS read-only
  1604.               STATUS mandatory
  1605.               DESCRIPTION
  1606.                   "The number of error packets transmitted by this
  1607.                   address since this host was added to the
  1608.  
  1609.  
  1610.                   hostTimeTable."
  1611.               ::= { hostTimeEntry 8 }
  1612.  
  1613.           hostTimeOutBroadcastPkts OBJECT-TYPE
  1614.               SYNTAX Counter
  1615.               ACCESS read-only
  1616.               STATUS mandatory
  1617.               DESCRIPTION
  1618.                   "The number of good packets transmitted by this
  1619.                   address that were directed to the broadcast address
  1620.                   since this host was added to the hostTimeTable."
  1621.               ::= { hostTimeEntry 9 }
  1622.  
  1623.           hostTimeOutMulticastPkts OBJECT-TYPE
  1624.               SYNTAX Counter
  1625.               ACCESS read-only
  1626.               STATUS mandatory
  1627.               DESCRIPTION
  1628.                   "The number of good packets transmitted by this
  1629.                   address that were directed to a multicast address
  1630.                   since this host was added to the hostTimeTable.
  1631.                   Note that this number does not include packets
  1632.                   directed to the broadcast address."
  1633.               ::= { hostTimeEntry 10 }
  1634.  
  1635.           -- The Host Top "N" Group
  1636.  
  1637.           -- Implementation of the Host Top N group is optional.
  1638.           --
  1639.           -- The Host Top N group requires the implementation of the
  1640.           -- host group.
  1641.           --
  1642.           -- The Host Top N group is used to prepare reports that
  1643.           -- describe the hosts that top a list ordered by one of
  1644.           -- their statistics.  The available statistics are samples
  1645.           -- of one of their base statistics, over an interval
  1646.           -- specified by the management station.  Thus, these
  1647.           -- statistics are rate based.  The management
  1648.           -- station also selects how many such hosts are reported.
  1649.  
  1650.           -- The hostTopNControlTable is used to initiate the generation
  1651.           -- of such a report.  The management station may select the
  1652.           -- parameters of such a report, such as which interface,
  1653.           -- which statistic, how many hosts, and the start and stop
  1654.           -- times of the sampling.  When the report is prepared,
  1655.           -- entries are created in the hostTopNTable associated with
  1656.           -- the relevant hostTopNControlEntry.  These entries are
  1657.  
  1658.  
  1659.           -- static for each report after it has been prepared.
  1660.  
  1661.           hostTopNControlTable OBJECT-TYPE
  1662.               SYNTAX SEQUENCE OF HostTopNControlEntry
  1663.               ACCESS not-accessible
  1664.               STATUS mandatory
  1665.               DESCRIPTION
  1666.                   "A list of top N host control entries."
  1667.               ::= { hostTopN 1 }
  1668.  
  1669.           hostTopNControlEntry OBJECT-TYPE
  1670.               SYNTAX HostTopNControlEntry
  1671.               ACCESS not-accessible
  1672.               STATUS mandatory
  1673.               DESCRIPTION
  1674.                   "A set of parameters that control the creation of a
  1675.                   report of the top N hosts according to several
  1676.                   metrics."
  1677.               INDEX { hostTopNControlIndex }
  1678.               ::= { hostTopNControlTable 1 }
  1679.  
  1680.           HostTopNControlEntry ::= SEQUENCE {
  1681.               hostTopNControlIndex    INTEGER (1..65535),
  1682.               hostTopNHostIndex       INTEGER (1..65535),
  1683.               hostTopNRateBase        INTEGER,
  1684.               hostTopNTimeRemaining   INTEGER,
  1685.               hostTopNDuration        INTEGER,
  1686.               hostTopNRequestedSize   INTEGER,
  1687.               hostTopNGrantedSize     INTEGER,
  1688.               hostTopNStartTime       TimeTicks,
  1689.               hostTopNOwner           OwnerString,
  1690.               hostTopNStatus          INTEGER
  1691.           }
  1692.  
  1693.           hostTopNControlIndex OBJECT-TYPE
  1694.               SYNTAX INTEGER (1..65535)
  1695.               ACCESS read-only
  1696.               STATUS mandatory
  1697.               DESCRIPTION
  1698.                   "An index that uniquely identifies an entry
  1699.                   in the hostTopNControl table.  Each such
  1700.                   entry defines one top N report prepared for
  1701.                   one interface."
  1702.               ::= { hostTopNControlEntry 1 }
  1703.  
  1704.           hostTopNHostIndex OBJECT-TYPE
  1705.               SYNTAX INTEGER (1..65535)
  1706.               ACCESS read-write
  1707.  
  1708.  
  1709.               STATUS mandatory
  1710.               DESCRIPTION
  1711.                   "The host table for which a top N report will be
  1712.                   prepared on behalf of this entry.  The host table
  1713.                   identified by a particular value of this index is
  1714.                   associated with the same host table as identified
  1715.                   by the same value of hostIndex.
  1716.  
  1717.                   This object may not be modified if the associated
  1718.                   hostTopNStatus object is equal to valid(1)."
  1719.               ::= { hostTopNControlEntry 2 }
  1720.  
  1721.           hostTopNRateBase OBJECT-TYPE
  1722.               SYNTAX INTEGER {
  1723.                       hostTopNInPkts(1),
  1724.                       hostTopNOutPkts(2),
  1725.                       hostTopNInOctets(3),
  1726.                       hostTopNOutOctets(4),
  1727.                       hostTopNOutErrors(5),
  1728.                       hostTopNOutBroadcastPkts(6),
  1729.                       hostTopNOutMulticastPkts(7)
  1730.               }
  1731.               ACCESS read-write
  1732.               STATUS mandatory
  1733.               DESCRIPTION
  1734.                   "The variable for each host that the hostTopNRate
  1735.                   variable is based upon.
  1736.  
  1737.                   This object may not be modified if the associated
  1738.                   hostTopNStatus object is equal to valid(1)."
  1739.               ::= { hostTopNControlEntry 3 }
  1740.  
  1741.           hostTopNTimeRemaining OBJECT-TYPE
  1742.               SYNTAX INTEGER
  1743.               ACCESS read-write
  1744.               STATUS mandatory
  1745.               DESCRIPTION
  1746.                   "The number of seconds left in the report currently
  1747.                   being collected.  When this object is modified by
  1748.                   the management station, a new collection is started,
  1749.                   possibly aborting a currently running report.  The
  1750.                   new value is used as the requested duration of this
  1751.                   report, which is loaded into the associated
  1752.                   hostTopNDuration object.
  1753.  
  1754.                   When this object is set to a non-zero value, any
  1755.                   associated hostTopNEntries shall be made
  1756.                   inaccessible by the monitor.  While the value of this
  1757.  
  1758.  
  1759.                   object is non-zero, it decrements by one per second
  1760.                   until it reaches zero.  During this time, all
  1761.                   associated hostTopNEntries shall remain
  1762.                   inaccessible.  At the time that this object
  1763.                   decrements to zero, the report is made
  1764.                   accessible in the hostTopNTable.  Thus, the hostTopN
  1765.                   table needs to be created only at the end of the
  1766.                   collection interval."
  1767.               DEFVAL { 0 }
  1768.               ::= { hostTopNControlEntry 4 }
  1769.  
  1770.           hostTopNDuration OBJECT-TYPE
  1771.               SYNTAX INTEGER
  1772.               ACCESS read-only
  1773.               STATUS mandatory
  1774.               DESCRIPTION
  1775.                   "The number of seconds that this report has collected
  1776.                   during the last sampling interval, or if this
  1777.                   report is currently being collected, the number
  1778.                   of seconds that this report is being collected
  1779.                   during this sampling interval.
  1780.  
  1781.                   When the associated hostTopNTimeRemaining object is
  1782.                   set, this object shall be set by the probe to the
  1783.                   same value and shall not be modified until the next
  1784.                   time the hostTopNTimeRemaining is set.
  1785.  
  1786.                   This value shall be zero if no reports have been
  1787.                   requested for this hostTopNControlEntry."
  1788.               DEFVAL { 0 }
  1789.               ::= { hostTopNControlEntry 5 }
  1790.  
  1791.           hostTopNRequestedSize OBJECT-TYPE
  1792.               SYNTAX INTEGER
  1793.               ACCESS read-write
  1794.               STATUS mandatory
  1795.               DESCRIPTION
  1796.                   "The maximum number of hosts requested for the top N
  1797.                   table.
  1798.  
  1799.                   When this object is created or modified, the probe
  1800.                   should set hostTopNGrantedSize as closely to this
  1801.                   object as is possible for the particular probe
  1802.                   implementation and available resources."
  1803.               DEFVAL { 10 }
  1804.               ::= { hostTopNControlEntry 6 }
  1805.  
  1806.  
  1807.           hostTopNGrantedSize OBJECT-TYPE
  1808.               SYNTAX INTEGER
  1809.               ACCESS read-only
  1810.               STATUS mandatory
  1811.               DESCRIPTION
  1812.                   "The maximum number of hosts in the top N table.
  1813.  
  1814.                   When the associated hostTopNRequestedSize object is
  1815.                   created or modified, the probe should set this
  1816.                   object as closely to the requested value as is
  1817.                   possible for the particular implementation and
  1818.                   available resources. The probe must not lower this
  1819.                   value except as a result of a set to the associated
  1820.                   hostTopNRequestedSize object.
  1821.  
  1822.                   Hosts with the highest value of hostTopNRate shall be
  1823.                   placed in this table in decreasing order of this rate
  1824.                   until there is no more room or until there are no more
  1825.                   hosts."
  1826.               ::= { hostTopNControlEntry 7 }
  1827.  
  1828.           hostTopNStartTime OBJECT-TYPE
  1829.               SYNTAX TimeTicks
  1830.               ACCESS read-only
  1831.               STATUS mandatory
  1832.               DESCRIPTION
  1833.                   "The value of sysUpTime when this top N report was
  1834.                   last started.  In other words, this is the time that
  1835.                   the associated hostTopNTimeRemaining object was
  1836.                   modified to start the requested report."
  1837.               ::= { hostTopNControlEntry 8 }
  1838.  
  1839.           hostTopNOwner OBJECT-TYPE
  1840.               SYNTAX OwnerString
  1841.               ACCESS read-write
  1842.               STATUS mandatory
  1843.               DESCRIPTION
  1844.                   "The entity that configured this entry and is
  1845.                   therefore using the resources assigned to it."
  1846.               ::= { hostTopNControlEntry 9 }
  1847.  
  1848.           hostTopNStatus OBJECT-TYPE
  1849.               SYNTAX EntryStatus
  1850.               ACCESS read-write
  1851.               STATUS mandatory
  1852.               DESCRIPTION
  1853.                   "The status of this hostTopNControl entry.
  1854.  
  1855.  
  1856.                   If this object is not equal to valid(1), all
  1857.                   associated hostTopNEntries shall be deleted by
  1858.                   the agent."
  1859.               ::= { hostTopNControlEntry 10 }
  1860.  
  1861.           hostTopNTable OBJECT-TYPE
  1862.               SYNTAX SEQUENCE OF HostTopNEntry
  1863.               ACCESS not-accessible
  1864.               STATUS mandatory
  1865.               DESCRIPTION
  1866.                   "A list of top N host entries."
  1867.               ::= { hostTopN 2 }
  1868.  
  1869.           hostTopNEntry OBJECT-TYPE
  1870.               SYNTAX HostTopNEntry
  1871.               ACCESS not-accessible
  1872.               STATUS mandatory
  1873.               DESCRIPTION
  1874.                   "A set of statistics for a host that is part of a
  1875.                   top N report."
  1876.               INDEX { hostTopNReport, hostTopNIndex }
  1877.               ::= { hostTopNTable 1 }
  1878.  
  1879.           HostTopNEntry ::= SEQUENCE {
  1880.               hostTopNReport                INTEGER (1..65535),
  1881.               hostTopNIndex                 INTEGER (1..65535),
  1882.               hostTopNAddress               OCTET STRING,
  1883.               hostTopNRate                  INTEGER
  1884.           }
  1885.  
  1886.           hostTopNReport OBJECT-TYPE
  1887.               SYNTAX INTEGER (1..65535)
  1888.               ACCESS read-only
  1889.               STATUS mandatory
  1890.               DESCRIPTION
  1891.                   "This object identifies the top N report of which
  1892.                   this entry is a part.  The set of hosts
  1893.                   identified by a particular value of this
  1894.                   object is part of the same report as identified
  1895.                   by the same value of the hostTopNControlIndex object."
  1896.               ::= { hostTopNEntry 1 }
  1897.  
  1898.           hostTopNIndex OBJECT-TYPE
  1899.               SYNTAX INTEGER (1..65535)
  1900.               ACCESS read-only
  1901.               STATUS mandatory
  1902.               DESCRIPTION
  1903.                   "An index that uniquely identifies an entry in
  1904.  
  1905.  
  1906.                   the hostTopN table among those in the same report.
  1907.                   This index is between 1 and N, where N is the
  1908.                   number of entries in this table.  Increasing values
  1909.                   of hostTopNIndex shall be assigned to entries with
  1910.                   decreasing values of hostTopNRate until index N
  1911.                   is assigned to the entry with the lowest value of
  1912.                   hostTopNRate or there are no more hostTopNEntries."
  1913.               ::= { hostTopNEntry 2 }
  1914.  
  1915.           hostTopNAddress OBJECT-TYPE
  1916.               SYNTAX OCTET STRING
  1917.               ACCESS read-only
  1918.               STATUS mandatory
  1919.               DESCRIPTION
  1920.                   "The physical address of this host."
  1921.               ::= { hostTopNEntry 3 }
  1922.  
  1923.           hostTopNRate OBJECT-TYPE
  1924.               SYNTAX INTEGER
  1925.               ACCESS read-only
  1926.               STATUS mandatory
  1927.               DESCRIPTION
  1928.                   "The amount of change in the selected variable
  1929.                   during this sampling interval.  The selected
  1930.                   variable is this host's instance of the object
  1931.                   selected by hostTopNRateBase."
  1932.               ::= { hostTopNEntry 4 }
  1933.  
  1934.           -- The Matrix Group
  1935.  
  1936.           -- Implementation of the Matrix group is optional.
  1937.           --
  1938.           -- The Matrix group consists of the matrixControlTable,
  1939.           -- matrixSDTable and the matrixDSTable.  These tables
  1940.           -- store statistics for a particular conversation between
  1941.           -- two addresses.  As the device detects a new conversation,
  1942.           -- including those to a non-unicast address, it creates a
  1943.           -- new entry in both of the matrix tables.
  1944.           -- It must only create new entries based on information
  1945.           -- received in good packets.  If the monitoring device finds
  1946.           -- itself short of resources, it may delete entries as needed.
  1947.           -- It is suggested that the device delete the least recently
  1948.           -- used entries first.
  1949.  
  1950.           matrixControlTable OBJECT-TYPE
  1951.               SYNTAX SEQUENCE OF MatrixControlEntry
  1952.               ACCESS not-accessible
  1953.  
  1954.  
  1955.               STATUS mandatory
  1956.               DESCRIPTION
  1957.                   "A list of information entries for the
  1958.                   traffic matrix on each interface."
  1959.               ::= { matrix 1 }
  1960.  
  1961.           matrixControlEntry OBJECT-TYPE
  1962.               SYNTAX MatrixControlEntry
  1963.               ACCESS not-accessible
  1964.               STATUS mandatory
  1965.               DESCRIPTION
  1966.                   "Information about a traffic matrix on a
  1967.                   particular interface."
  1968.               INDEX { matrixControlIndex }
  1969.               ::= { matrixControlTable 1 }
  1970.  
  1971.           MatrixControlEntry ::= SEQUENCE {
  1972.               matrixControlIndex           INTEGER (1..65535),
  1973.               matrixControlDataSource      OBJECT IDENTIFIER,
  1974.               matrixControlTableSize       INTEGER,
  1975.               matrixControlLastDeleteTime  TimeTicks,
  1976.               matrixControlOwner           OwnerString,
  1977.               matrixControlStatus          INTEGER
  1978.           }
  1979.  
  1980.           matrixControlIndex OBJECT-TYPE
  1981.               SYNTAX INTEGER (1..65535)
  1982.               ACCESS read-only
  1983.               STATUS mandatory
  1984.               DESCRIPTION
  1985.                   "An index that uniquely identifies an entry in the
  1986.                   matrixControl table.  Each such entry defines
  1987.                   a function that discovers conversations on a particular
  1988.                   interface and places statistics about them in the
  1989.                   matrixSDTable and the matrixDSTable on behalf of this
  1990.                   matrixControlEntry."
  1991.               ::= { matrixControlEntry 1 }
  1992.  
  1993.           matrixControlDataSource OBJECT-TYPE
  1994.               SYNTAX OBJECT IDENTIFIER
  1995.               ACCESS read-write
  1996.               STATUS mandatory
  1997.               DESCRIPTION
  1998.                   "This object identifies the source of
  1999.                   the data from which this entry creates a traffic matrix.
  2000.                   This source can be any interface on this device.  In
  2001.                   order to identify a particular interface, this object
  2002.                   shall identify the instance of the ifIndex object,
  2003.  
  2004.  
  2005.                   defined in [4,6], for the desired interface.  For
  2006.                   example, if an entry were to receive data from
  2007.                   interface #1, this object would be set to ifIndex.1.
  2008.  
  2009.                   The statistics in this group reflect all packets
  2010.                   on the local network segment attached to the
  2011.                   identified interface.
  2012.  
  2013.                   This object may not be modified if the associated
  2014.                   matrixControlStatus object is equal to valid(1)."
  2015.               ::= { matrixControlEntry 2 }
  2016.  
  2017.           matrixControlTableSize OBJECT-TYPE
  2018.               SYNTAX INTEGER
  2019.               ACCESS read-only
  2020.               STATUS mandatory
  2021.               DESCRIPTION
  2022.                   "The number of matrixSDEntries in the matrixSDTable
  2023.                   for this interface.  This must also be the value of
  2024.                   the number of entries in the matrixDSTable for this
  2025.                   interface."
  2026.               ::= { matrixControlEntry 3 }
  2027.  
  2028.           matrixControlLastDeleteTime OBJECT-TYPE
  2029.               SYNTAX TimeTicks
  2030.               ACCESS read-only
  2031.               STATUS mandatory
  2032.               DESCRIPTION
  2033.                   "The value of sysUpTime when the last entry
  2034.                   was deleted from the portion of the matrixSDTable
  2035.                   or matrixDSTable associated with this
  2036.                   matrixControlEntry.
  2037.                   If no deletions have occurred, this value shall be
  2038.                   zero."
  2039.               ::= { matrixControlEntry 4 }
  2040.  
  2041.           matrixControlOwner OBJECT-TYPE
  2042.               SYNTAX OwnerString
  2043.               ACCESS read-write
  2044.               STATUS mandatory
  2045.               DESCRIPTION
  2046.                   "The entity that configured this entry and is
  2047.                   therefore using the resources assigned to it."
  2048.               ::= { matrixControlEntry 5 }
  2049.  
  2050.           matrixControlStatus OBJECT-TYPE
  2051.               SYNTAX EntryStatus
  2052.               ACCESS read-write
  2053.  
  2054.  
  2055.               STATUS mandatory
  2056.               DESCRIPTION
  2057.                   "The status of this matrixControl entry.
  2058.  
  2059.                   If this object is not equal to valid(1), all
  2060.                   associated entries in the matrixSDTable and the
  2061.                   matrixDSTable shall be deleted by the agent."
  2062.               ::= { matrixControlEntry 6 }
  2063.  
  2064.           matrixSDTable OBJECT-TYPE
  2065.               SYNTAX SEQUENCE OF MatrixSDEntry
  2066.               ACCESS not-accessible
  2067.               STATUS mandatory
  2068.               DESCRIPTION
  2069.                   "A list of traffic matrix entries indexed by
  2070.                   source and destination MAC address."
  2071.               ::= { matrix 2 }
  2072.  
  2073.           matrixSDEntry OBJECT-TYPE
  2074.               SYNTAX MatrixSDEntry
  2075.               ACCESS not-accessible
  2076.               STATUS mandatory
  2077.               DESCRIPTION
  2078.                   "A collection of statistics for communications between
  2079.                   two addresses on a particular interface."
  2080.               INDEX { matrixSDIndex,
  2081.                       matrixSDSourceAddress, matrixSDDestAddress }
  2082.               ::= { matrixSDTable 1 }
  2083.  
  2084.           MatrixSDEntry ::= SEQUENCE {
  2085.               matrixSDSourceAddress       OCTET STRING,
  2086.               matrixSDDestAddress         OCTET STRING,
  2087.               matrixSDIndex               INTEGER (1..65535),
  2088.               matrixSDPkts                Counter,
  2089.               matrixSDOctets              Counter,
  2090.               matrixSDErrors              Counter
  2091.           }
  2092.  
  2093.           matrixSDSourceAddress OBJECT-TYPE
  2094.               SYNTAX OCTET STRING
  2095.               ACCESS read-only
  2096.               STATUS mandatory
  2097.               DESCRIPTION
  2098.                   "The source physical address."
  2099.               ::= { matrixSDEntry 1 }
  2100.  
  2101.  
  2102.           matrixSDDestAddress OBJECT-TYPE
  2103.               SYNTAX OCTET STRING
  2104.               ACCESS read-only
  2105.               STATUS mandatory
  2106.               DESCRIPTION
  2107.                   "The destination physical address."
  2108.               ::= { matrixSDEntry 2 }
  2109.  
  2110.           matrixSDIndex OBJECT-TYPE
  2111.               SYNTAX INTEGER (1..65535)
  2112.               ACCESS read-only
  2113.               STATUS mandatory
  2114.               DESCRIPTION
  2115.                   "The set of collected matrix statistics of which
  2116.                   this entry is a part.  The set of matrix statistics
  2117.                   identified by a particular value of this index
  2118.                   is associated with the same matrixControlEntry
  2119.                   as identified by the same value of matrixControlIndex."
  2120.               ::= { matrixSDEntry 3 }
  2121.  
  2122.           matrixSDPkts OBJECT-TYPE
  2123.               SYNTAX Counter
  2124.               ACCESS read-only
  2125.               STATUS mandatory
  2126.               DESCRIPTION
  2127.                   "The number of packets transmitted from the source
  2128.                   address to the destination address (this number
  2129.                   includes error packets)."
  2130.               ::= { matrixSDEntry 4 }
  2131.  
  2132.           matrixSDOctets OBJECT-TYPE
  2133.               SYNTAX Counter
  2134.               ACCESS read-only
  2135.               STATUS mandatory
  2136.               DESCRIPTION
  2137.                   "The number of octets (excluding framing bits but
  2138.                   including FCS octets) contained in all packets
  2139.                   transmitted from the source address to the
  2140.                   destination address."
  2141.               ::= { matrixSDEntry 5 }
  2142.  
  2143.           matrixSDErrors OBJECT-TYPE
  2144.               SYNTAX Counter
  2145.               ACCESS read-only
  2146.               STATUS mandatory
  2147.               DESCRIPTION
  2148.                   "The number of error packets transmitted from
  2149.                   the source address to the destination address."
  2150.  
  2151.  
  2152.               ::= { matrixSDEntry 6 }
  2153.  
  2154.           -- Traffic matrix tables from destination to source
  2155.  
  2156.           matrixDSTable OBJECT-TYPE
  2157.               SYNTAX SEQUENCE OF MatrixDSEntry
  2158.               ACCESS not-accessible
  2159.               STATUS mandatory
  2160.               DESCRIPTION
  2161.                   "A list of traffic matrix entries indexed by
  2162.                   destination and source MAC address."
  2163.               ::= { matrix 3 }
  2164.  
  2165.           matrixDSEntry OBJECT-TYPE
  2166.               SYNTAX MatrixDSEntry
  2167.               ACCESS not-accessible
  2168.               STATUS mandatory
  2169.               DESCRIPTION
  2170.                   "A collection of statistics for communications between
  2171.                   two address on a particular interface."
  2172.               INDEX { matrixDSIndex,
  2173.                       matrixDSDestAddress, matrixDSSourceAddress }
  2174.               ::= { matrixDSTable 1 }
  2175.  
  2176.           MatrixDSEntry ::= SEQUENCE {
  2177.               matrixDSSourceAddress       OCTET STRING,
  2178.               matrixDSDestAddress         OCTET STRING,
  2179.               matrixDSIndex               INTEGER (1..65535),
  2180.               matrixDSPkts                Counter,
  2181.               matrixDSOctets              Counter,
  2182.               matrixDSErrors              Counter
  2183.           }
  2184.  
  2185.           matrixDSSourceAddress OBJECT-TYPE
  2186.               SYNTAX OCTET STRING
  2187.               ACCESS read-only
  2188.               STATUS mandatory
  2189.               DESCRIPTION
  2190.                   "The source physical address."
  2191.               ::= { matrixDSEntry 1 }
  2192.  
  2193.           matrixDSDestAddress OBJECT-TYPE
  2194.               SYNTAX OCTET STRING
  2195.               ACCESS read-only
  2196.               STATUS mandatory
  2197.               DESCRIPTION
  2198.                   "The destination physical address."
  2199.  
  2200.  
  2201.               ::= { matrixDSEntry 2 }
  2202.  
  2203.           matrixDSIndex OBJECT-TYPE
  2204.               SYNTAX INTEGER (1..65535)
  2205.               ACCESS read-only
  2206.               STATUS mandatory
  2207.               DESCRIPTION
  2208.                   "The set of collected matrix statistics of which
  2209.                   this entry is a part.  The set of matrix statistics
  2210.                   identified by a particular value of this index
  2211.                   is associated with the same matrixControlEntry
  2212.                   as identified by the same value of matrixControlIndex."
  2213.               ::= { matrixDSEntry 3 }
  2214.  
  2215.           matrixDSPkts OBJECT-TYPE
  2216.               SYNTAX Counter
  2217.               ACCESS read-only
  2218.               STATUS mandatory
  2219.               DESCRIPTION
  2220.                   "The number of packets transmitted from the source
  2221.                   address to the destination address (this number
  2222.                   includes error packets)."
  2223.               ::= { matrixDSEntry 4 }
  2224.  
  2225.           matrixDSOctets OBJECT-TYPE
  2226.               SYNTAX Counter
  2227.               ACCESS read-only
  2228.               STATUS mandatory
  2229.               DESCRIPTION
  2230.                   "The number of octets (excluding framing bits
  2231.                   but including FCS octets) contained in all packets
  2232.                   transmitted from the source address to the
  2233.                   destination address."
  2234.               ::= { matrixDSEntry 5 }
  2235.  
  2236.           matrixDSErrors OBJECT-TYPE
  2237.               SYNTAX Counter
  2238.               ACCESS read-only
  2239.               STATUS mandatory
  2240.               DESCRIPTION
  2241.                   "The number of error packets transmitted from
  2242.                   the source address to the destination address."
  2243.               ::= { matrixDSEntry 6 }
  2244.  
  2245.           -- The Filter Group
  2246.  
  2247.           -- Implementation of the Filter group is optional.
  2248.  
  2249.  
  2250.           --
  2251.           -- The Filter group allows packets to be captured with an
  2252.           -- arbitrary filter expression.  A logical data and
  2253.           -- event stream or "channel" is formed by the packets
  2254.           -- that match the filter expression.
  2255.           --
  2256.           -- This filter mechanism allows the creation of an arbitrary
  2257.           -- logical expression with which to filter packets.  Each
  2258.           -- filter associated with a channel is OR'ed with the others.
  2259.           -- Within a filter, any bits checked in the data and status are
  2260.           -- AND'ed with respect to other bits in the same filter.  The
  2261.           -- NotMask also allows for checking for inequality.  Finally,
  2262.           -- the channelAcceptType object allows for inversion of the
  2263.           -- whole equation.
  2264.           --
  2265.           -- The channel can be turned on or off, and can also
  2266.           -- generate events when packets pass through it.
  2267.  
  2268.           filterTable OBJECT-TYPE
  2269.               SYNTAX SEQUENCE OF FilterEntry
  2270.               ACCESS not-accessible
  2271.               STATUS mandatory
  2272.               DESCRIPTION
  2273.                   "A list of packet filter entries."
  2274.               ::= { filter 1 }
  2275.  
  2276.           filterEntry OBJECT-TYPE
  2277.               SYNTAX FilterEntry
  2278.               ACCESS not-accessible
  2279.               STATUS mandatory
  2280.               DESCRIPTION
  2281.                   "A set of parameters for a packet filter applied on a
  2282.                   particular interface."
  2283.               INDEX { filterIndex }
  2284.               ::= { filterTable 1 }
  2285.  
  2286.           FilterEntry ::= SEQUENCE {
  2287.               filterIndex                 INTEGER (1..65535),
  2288.               filterChannelIndex          INTEGER (1..65535),
  2289.               filterPktDataOffset         INTEGER,
  2290.               filterPktData               OCTET STRING,
  2291.               filterPktDataMask           OCTET STRING,
  2292.               filterPktDataNotMask        OCTET STRING,
  2293.               filterPktStatus             INTEGER,
  2294.               filterPktStatusMask         INTEGER,
  2295.               filterPktStatusNotMask      INTEGER,
  2296.               filterOwner                 OwnerString,
  2297.               filterStatus                INTEGER
  2298.  
  2299.  
  2300.           }
  2301.  
  2302.           filterIndex OBJECT-TYPE
  2303.               SYNTAX INTEGER (1..65535)
  2304.               ACCESS read-only
  2305.               STATUS mandatory
  2306.               DESCRIPTION
  2307.                   "An index that uniquely identifies an entry
  2308.                   in the filter table.  Each such entry defines
  2309.                   one filter that is to be applied to every packet
  2310.                   received on an interface."
  2311.               ::= { filterEntry 1 }
  2312.  
  2313.           filterChannelIndex OBJECT-TYPE
  2314.               SYNTAX INTEGER (1..65535)
  2315.               ACCESS read-write
  2316.               STATUS mandatory
  2317.               DESCRIPTION
  2318.                   "This object identifies the channel of which this
  2319.                   filter is a part.  The filters identified by a
  2320.                   particular value of this object are associated
  2321.                   with the same channel as identified by the same
  2322.                   value of the channelIndex object."
  2323.               ::= { filterEntry 2 }
  2324.  
  2325.           filterPktDataOffset OBJECT-TYPE
  2326.               SYNTAX INTEGER
  2327.               ACCESS read-write
  2328.               STATUS mandatory
  2329.               DESCRIPTION
  2330.                   "The offset from the beginning of each packet where
  2331.                   a match of packet data will be attempted.  This offset
  2332.                   is measured from the point in the physical layer
  2333.                   packet after the framing bits, if any.  For example,
  2334.                   in an Ethernet frame, this point is at the beginning
  2335.                   of the destination MAC address.
  2336.  
  2337.                   This object may not be modified if the associated
  2338.                   filterStatus object is equal to valid(1)."
  2339.               DEFVAL { 0 }
  2340.               ::= { filterEntry 3 }
  2341.  
  2342.           filterPktData OBJECT-TYPE
  2343.               SYNTAX OCTET STRING
  2344.               ACCESS read-write
  2345.               STATUS mandatory
  2346.               DESCRIPTION
  2347.                   "The data that is to be matched with the input packet.
  2348.  
  2349.  
  2350.                   For each packet received, this filter and the
  2351.                   accompanying filterPktDataMask and
  2352.                   filterPktDataNotMask will be adjusted for the
  2353.                   offset.  The only bits relevant to this
  2354.                   match algorithm are those that have the corresponding
  2355.                   filterPktDataMask bit equal to one.  The following
  2356.                   three rules are then applied to every packet:
  2357.  
  2358.                   (1) If the packet is too short and does not have data
  2359.                       corresponding to part of the filterPktData, the
  2360.                       packet will fail this data match.
  2361.  
  2362.                   (2) For each relevant bit from the packet with the
  2363.                       corresponding filterPktDataNotMask bit set to
  2364.                       zero, if the bit from the packet is not equal to
  2365.                       the corresponding bit from the filterPktData,
  2366.                       then the packet will fail this data match.
  2367.  
  2368.                   (3) If for every relevant bit from the packet with the
  2369.                       corresponding filterPktDataNotMask bit set to one,
  2370.                       the bit from the packet is equal to the
  2371.                       corresponding bit from the filterPktData, then
  2372.                       the packet will fail this data match.
  2373.  
  2374.                   Any packets that have not failed any of the three
  2375.                   matches above have passed this data match.
  2376.  
  2377.                   This object may not be modified if the associated
  2378.                   filterStatus object is equal to valid(1)."
  2379.               ::= { filterEntry 4 }
  2380.  
  2381.           filterPktDataMask OBJECT-TYPE
  2382.               SYNTAX OCTET STRING
  2383.               ACCESS read-write
  2384.               STATUS mandatory
  2385.               DESCRIPTION
  2386.                   "The mask that is applied to the match process.
  2387.                   After adjusting this mask for the offset, only those
  2388.                   bits in the received packet that correspond to bits
  2389.                   set in this mask are relevant for further processing
  2390.                   by the match algorithm.  The offset is applied to
  2391.                   filterPktDataMask in the same way it is applied to
  2392.                   the filter.  For the purposes of the matching
  2393.                   algorithm, if the associated filterPktData object
  2394.                   is longer than this mask, this mask is conceptually
  2395.                   extended with '1' bits until it reaches the
  2396.                   length of the filterPktData object.
  2397.  
  2398.  
  2399.                   This object may not be modified if the associated
  2400.                   filterStatus object is equal to valid(1)."
  2401.               ::= { filterEntry 5 }
  2402.  
  2403.           filterPktDataNotMask OBJECT-TYPE
  2404.               SYNTAX OCTET STRING
  2405.               ACCESS read-write
  2406.               STATUS mandatory
  2407.               DESCRIPTION
  2408.                   "The inversion mask that is applied to the match
  2409.                   process.  After adjusting this mask for the offset,
  2410.                   those relevant bits in the received packet that
  2411.                   correspond to bits cleared in this mask must all
  2412.                   be equal to their corresponding bits in the
  2413.                   filterPktData object for the packet to be accepted.
  2414.                   In addition, at least one of those relevant
  2415.                   bits in the received packet that correspond to bits
  2416.                   set in this mask must be different to its
  2417.                   corresponding bit in the filterPktData object.
  2418.  
  2419.                   For the purposes of the matching algorithm, if
  2420.                   the associated filterPktData object is longer than
  2421.                   this mask, this mask is conceptually extended with
  2422.                   '0' bits until it reaches the length of the
  2423.                   filterPktData object.
  2424.  
  2425.                   This object may not be modified if the associated
  2426.                   filterStatus object is equal to valid(1)."
  2427.               ::= { filterEntry 6 }
  2428.  
  2429.           filterPktStatus OBJECT-TYPE
  2430.               SYNTAX INTEGER
  2431.               ACCESS read-write
  2432.               STATUS mandatory
  2433.               DESCRIPTION
  2434.                   "The status that is to be matched with the input
  2435.                   packet.  The only bits relevant to this match
  2436.                   algorithm are those that have the corresponding
  2437.                   filterPktStatusMask bit equal to one.
  2438.  
  2439.                   The following two rules are then applied to every
  2440.                   packet:
  2441.  
  2442.                   (1) For each relevant bit from the packet status
  2443.                       with the corresponding filterPktStatusNotMask
  2444.                       bit set to zero, if the bit from the packet
  2445.                       status is not equal to the corresponding bit
  2446.                       from the filterPktStatus, then the packet will
  2447.  
  2448.  
  2449.                       fail this status match.
  2450.  
  2451.                   (2) If for every relevant bit from the packet status
  2452.                       with the corresponding filterPktStatusNotMask
  2453.                       bit set to one, the bit from the packet status
  2454.                       is equal to the corresponding bit from the
  2455.                       filterPktStatus, then the packet will fail
  2456.                       this status match.
  2457.  
  2458.                   Any packets that have not failed either of the two
  2459.                   matches above have passed this status match.
  2460.  
  2461.                   The value of the packet status is a sum.  This sum
  2462.                   initially takes the value zero.  Then, for each
  2463.                   error, E, that has been discovered in this packet,
  2464.                   2 raised to a value representing E is added to the sum.
  2465.                   The errors and the bits that represent them are
  2466.                   dependent on the media type of the interface that
  2467.                   this channel is receiving packets from.
  2468.  
  2469.                   The errors defined for a packet captured off of an
  2470.                   Ethernet interface are as follows:
  2471.  
  2472.                       bit #    Error
  2473.                           0    Packet is longer than 1518 octets
  2474.                           1    Packet is shorter than 64 octets
  2475.                           2    Packet experienced a CRC or Alignment
  2476.                                error
  2477.  
  2478.                   For example, an Ethernet fragment would have a
  2479.                   value of 6 (2^1 + 2^2).
  2480.  
  2481.                   As this MIB is expanded to new media types, this
  2482.                   object will have other media-specific errors defined.
  2483.  
  2484.                   For the purposes of this status matching algorithm, if
  2485.                   the packet status is longer than this
  2486.                   object, filterPktStatus this object is conceptually
  2487.                   extended with '0' bits until it reaches the size of
  2488.                   the packet status.
  2489.  
  2490.                   This object may not be modified if the associated
  2491.                   filterStatus object is equal to valid(1)."
  2492.               ::= { filterEntry 7 }
  2493.  
  2494.           filterPktStatusMask OBJECT-TYPE
  2495.               SYNTAX INTEGER
  2496.               ACCESS read-write
  2497.  
  2498.  
  2499.               STATUS mandatory
  2500.               DESCRIPTION
  2501.                   "The mask that is applied to the status match process.
  2502.                   Only those bits in the received packet that correspond
  2503.                   to bits set in this mask are relevant for further
  2504.                   processing by the status match algorithm.  For the
  2505.                   purposes of the matching algorithm, if the
  2506.                   associated filterPktStatus object is longer than
  2507.                   this mask, this mask is conceptually extended with
  2508.                   '1' bits until it reaches the size of the
  2509.                   filterPktStatus.  In addition, if a packet status is
  2510.                   longer than this mask, this mask is conceptually
  2511.                   extended with '0' bits until it reaches the size of
  2512.                   the packet status.
  2513.  
  2514.                   This object may not be modified if the associated
  2515.                   filterStatus object is equal to valid(1)."
  2516.               ::= { filterEntry 8 }
  2517.  
  2518.           filterPktStatusNotMask OBJECT-TYPE
  2519.               SYNTAX INTEGER
  2520.               ACCESS read-write
  2521.               STATUS mandatory
  2522.               DESCRIPTION
  2523.                   "The inversion mask that is applied to the status match
  2524.                   process.  Those relevant bits in the received packet
  2525.                   status that correspond to bits cleared in this mask
  2526.                   must all be equal to their corresponding bits in the
  2527.                   filterPktStatus object for the packet to be accepted.
  2528.                   In addition, at least one of those relevant bits in the
  2529.                   received packet status that correspond to bits set in
  2530.                   this mask must be different to its corresponding bit
  2531.                   in the filterPktStatus object for the packet to be
  2532.                   accepted.
  2533.  
  2534.                   For the purposes of the matching algorithm, if the
  2535.                   associated filterPktStatus object or a packet status
  2536.                   is longer than this mask, this mask is conceptually
  2537.                   extended with '0' bits until it reaches the longer of
  2538.                   the lengths of the filterPktStatus object and the
  2539.                   packet status.
  2540.  
  2541.                   This object may not be modified if the associated
  2542.                   filterStatus object is equal to valid(1)."
  2543.               ::= { filterEntry 9 }
  2544.  
  2545.           filterOwner OBJECT-TYPE
  2546.               SYNTAX OwnerString
  2547.  
  2548.  
  2549.               ACCESS read-write
  2550.               STATUS mandatory
  2551.               DESCRIPTION
  2552.                   "The entity that configured this entry and is
  2553.                   therefore using the resources assigned to it."
  2554.               ::= { filterEntry 10 }
  2555.  
  2556.           filterStatus OBJECT-TYPE
  2557.               SYNTAX EntryStatus
  2558.               ACCESS read-write
  2559.               STATUS mandatory
  2560.               DESCRIPTION
  2561.                   "The status of this filter entry."
  2562.               ::= { filterEntry 11 }
  2563.  
  2564.           channelTable OBJECT-TYPE
  2565.               SYNTAX SEQUENCE OF ChannelEntry
  2566.               ACCESS not-accessible
  2567.               STATUS mandatory
  2568.               DESCRIPTION
  2569.                   "A list of packet channel entries."
  2570.               ::= { filter 2 }
  2571.  
  2572.           channelEntry OBJECT-TYPE
  2573.               SYNTAX ChannelEntry
  2574.               ACCESS not-accessible
  2575.               STATUS mandatory
  2576.               DESCRIPTION
  2577.                   "A set of parameters for a packet channel applied on a
  2578.                   particular interface."
  2579.               INDEX { channelIndex }
  2580.               ::= { channelTable 1 }
  2581.  
  2582.           ChannelEntry ::= SEQUENCE {
  2583.               channelIndex                 INTEGER (1..65535),
  2584.               channelIfIndex               INTEGER (1..65535),
  2585.               channelAcceptType            INTEGER,
  2586.               channelDataControl           INTEGER,
  2587.               channelTurnOnEventIndex      INTEGER (0..65535),
  2588.               channelTurnOffEventIndex     INTEGER (0..65535),
  2589.               channelEventIndex            INTEGER (0..65535),
  2590.               channelEventStatus           INTEGER,
  2591.               channelMatches               Counter,
  2592.               channelDescription           DisplayString (SIZE (0..127)),
  2593.               channelOwner                 OwnerString,
  2594.               channelStatus                INTEGER
  2595.           }
  2596.  
  2597.  
  2598.           channelIndex OBJECT-TYPE
  2599.               SYNTAX INTEGER (1..65535)
  2600.               ACCESS read-only
  2601.               STATUS mandatory
  2602.               DESCRIPTION
  2603.                   "An index that uniquely identifies an entry
  2604.                   in the channel table.  Each such
  2605.                   entry defines one channel, a logical data
  2606.                   and event stream."
  2607.               ::= { channelEntry 1 }
  2608.  
  2609.           channelIfIndex OBJECT-TYPE
  2610.               SYNTAX INTEGER (1..65535)
  2611.               ACCESS read-write
  2612.               STATUS mandatory
  2613.               DESCRIPTION
  2614.                   "The value of this object uniquely identifies the
  2615.                   interface on this remote network monitoring device
  2616.                   to which the associated filters are applied to allow
  2617.                   data into this channel.  The interface identified by
  2618.                   a particular value of this object is the same
  2619.                   interface as identified by the same value of the
  2620.                   ifIndex object, defined in [4,6].  The filters in
  2621.                   this group are applied to all packets on the local
  2622.                   network segment attached to the identified
  2623.                   interface.
  2624.  
  2625.                   This object may not be modified if the associated
  2626.                   channelStatus object is equal to valid(1)."
  2627.               ::= { channelEntry 2 }
  2628.  
  2629.           channelAcceptType OBJECT-TYPE
  2630.               SYNTAX INTEGER {
  2631.                   acceptMatched(1),
  2632.                   acceptFailed(2)
  2633.               }
  2634.               ACCESS read-write
  2635.               STATUS mandatory
  2636.               DESCRIPTION
  2637.                   "This object controls the action of the filters
  2638.                   associated with this channel.  If this object is equal
  2639.                   to acceptMatched(1), packets will be accepted to this
  2640.                   channel if they are accepted by both the packet data
  2641.                   and packet status matches of an associated filter. If
  2642.                   this object is equal to acceptFailed(2), packets will
  2643.                   be accepted to this channel only if they fail either
  2644.                   the packet data match or the packet status match of
  2645.                   each of the associated filters.
  2646.  
  2647.  
  2648.                   This object may not be modified if the associated
  2649.                   channelStatus object is equal to valid(1)."
  2650.               ::= { channelEntry 3 }
  2651.  
  2652.           channelDataControl OBJECT-TYPE
  2653.               SYNTAX INTEGER {
  2654.                   on(1),
  2655.                   off(2)
  2656.               }
  2657.               ACCESS read-write
  2658.               STATUS mandatory
  2659.               DESCRIPTION
  2660.                   "This object controls the flow of data through this
  2661.                   channel.  If this object is on(1), data, status and
  2662.                   events flow through this channel.  If this object is
  2663.                   off(2), data, status and events will not flow through
  2664.                   this channel."
  2665.               DEFVAL { off }
  2666.               ::= { channelEntry 4 }
  2667.  
  2668.           channelTurnOnEventIndex OBJECT-TYPE
  2669.               SYNTAX INTEGER (0..65535)
  2670.               ACCESS read-write
  2671.               STATUS mandatory
  2672.               DESCRIPTION
  2673.                   "The value of this object identifies the event
  2674.                   that is configured to turn the associated
  2675.                   channelDataControl from off to on when the event is
  2676.                   generated.  The event identified by a particular value
  2677.                   of this object is the same event as identified by the
  2678.                   same value of the eventIndex object.  If there is no
  2679.                   corresponding entry in the eventTable, then no
  2680.                   association exists.  In fact, if no event is intended
  2681.                   for this channel, channelTurnOnEventIndex must be
  2682.                   set to zero, a non-existent event index.
  2683.  
  2684.                   This object may not be modified if the associated
  2685.                   channelStatus object is equal to valid(1)."
  2686.               ::= { channelEntry 5 }
  2687.  
  2688.           channelTurnOffEventIndex OBJECT-TYPE
  2689.               SYNTAX INTEGER (0..65535)
  2690.               ACCESS read-write
  2691.               STATUS mandatory
  2692.               DESCRIPTION
  2693.                   "The value of this object identifies the event
  2694.                   that is configured to turn the associated
  2695.                   channelDataControl from on to off when the event is
  2696.  
  2697.  
  2698.                   generated.  The event identified by a particular value
  2699.                   of this object is the same event as identified by the
  2700.                   same value of the eventIndex object.  If there is no
  2701.                   corresponding entry in the eventTable, then no
  2702.                   association exists.  In fact, if no event is intended
  2703.                   for this channel, channelTurnOffEventIndex must be
  2704.                   set to zero, a non-existent event index.
  2705.  
  2706.                   This object may not be modified if the associated
  2707.                   channelStatus object is equal to valid(1)."
  2708.               ::= { channelEntry 6 }
  2709.  
  2710.           channelEventIndex OBJECT-TYPE
  2711.               SYNTAX INTEGER (0..65535)
  2712.               ACCESS read-write
  2713.               STATUS mandatory
  2714.               DESCRIPTION
  2715.                   "The value of this object identifies the event
  2716.                   that is configured to be generated when the
  2717.                   associated channelDataControl is on and a packet
  2718.                   is matched.  The event identified by a particular value
  2719.                   of this object is the same event as identified by the
  2720.                   same value of the eventIndex object.  If there is no
  2721.                   corresponding entry in the eventTable, then no
  2722.                   association exists.  In fact, if no event is intended
  2723.                   for this channel, channelEventIndex must be
  2724.                   set to zero, a non-existent event index.
  2725.  
  2726.                   This object may not be modified if the associated
  2727.                   channelStatus object is equal to valid(1)."
  2728.               ::= { channelEntry 7 }
  2729.  
  2730.           channelEventStatus OBJECT-TYPE
  2731.               SYNTAX INTEGER {
  2732.                   eventReady(1),
  2733.                   eventFired(2),
  2734.                   eventAlwaysReady(3)
  2735.               }
  2736.               ACCESS read-write
  2737.               STATUS mandatory
  2738.               DESCRIPTION
  2739.                   "The event status of this channel.
  2740.  
  2741.                   If this channel is configured to generate events
  2742.                   when packets are matched, a means of controlling
  2743.                   the flow of those events is often needed.  When
  2744.                   this object is equal to eventReady(1), a single
  2745.                   event may be generated, after which this object
  2746.  
  2747.  
  2748.                   will be set by the probe to eventFired(2).  While
  2749.                   in the eventFired(2) state, no events will be
  2750.                   generated until the object is modified to
  2751.                   eventReady(1) (or eventAlwaysReady(3)).  The
  2752.                   management station can thus easily respond to a
  2753.                   notification of an event by re-enabling this object.
  2754.  
  2755.                   If the management station wishes to disable this
  2756.                   flow control and allow events to be generated
  2757.                   at will, this object may be set to
  2758.                   eventAlwaysReady(3).  Disabling the flow control
  2759.                   is discouraged as it can result in high network
  2760.                   traffic or other performance problems."
  2761.               DEFVAL { eventReady }
  2762.               ::= { channelEntry 8 }
  2763.  
  2764.           channelMatches OBJECT-TYPE
  2765.               SYNTAX Counter
  2766.               ACCESS read-only
  2767.               STATUS mandatory
  2768.               DESCRIPTION
  2769.                   "The number of times this channel has matched a packet.
  2770.                   Note that this object is updated even when
  2771.                   channelDataControl is set to off."
  2772.               ::= { channelEntry 9 }
  2773.  
  2774.           channelDescription OBJECT-TYPE
  2775.               SYNTAX DisplayString (SIZE (0..127))
  2776.               ACCESS read-write
  2777.               STATUS mandatory
  2778.               DESCRIPTION
  2779.                   "A comment describing this channel."
  2780.               ::= { channelEntry 10 }
  2781.  
  2782.           channelOwner OBJECT-TYPE
  2783.               SYNTAX OwnerString
  2784.               ACCESS read-write
  2785.               STATUS mandatory
  2786.               DESCRIPTION
  2787.                   "The entity that configured this entry and is therefore
  2788.                   using the resources assigned to it."
  2789.               ::= { channelEntry 11 }
  2790.  
  2791.           channelStatus OBJECT-TYPE
  2792.               SYNTAX EntryStatus
  2793.               ACCESS read-write
  2794.               STATUS mandatory
  2795.               DESCRIPTION
  2796.  
  2797.  
  2798.                   "The status of this channel entry."
  2799.               ::= { channelEntry 12 }
  2800.  
  2801.           -- The Packet Capture Group
  2802.  
  2803.           -- Implementation of the Packet Capture group is optional.
  2804.           --
  2805.           -- The Packet Capture Group requires implementation of the
  2806.           -- Filter Group.
  2807.           --
  2808.           -- The Packet Capture group allows packets to be captured
  2809.           -- upon a filter match.  The bufferControlTable controls
  2810.           -- the captured packets output from a channel that is
  2811.           -- associated with it.  The captured packets are placed
  2812.           -- in entries in the captureBufferTable.  These entries are
  2813.           -- associated with the bufferControlEntry on whose behalf they
  2814.           -- were stored.
  2815.  
  2816.           bufferControlTable OBJECT-TYPE
  2817.               SYNTAX SEQUENCE OF BufferControlEntry
  2818.               ACCESS not-accessible
  2819.               STATUS mandatory
  2820.               DESCRIPTION
  2821.                   "A list of buffers control entries."
  2822.               ::= { capture 1 }
  2823.  
  2824.           bufferControlEntry OBJECT-TYPE
  2825.               SYNTAX BufferControlEntry
  2826.               ACCESS not-accessible
  2827.               STATUS mandatory
  2828.               DESCRIPTION
  2829.                   "A set of parameters that control the collection of
  2830.                   a stream of packets that have matched filters."
  2831.               INDEX { bufferControlIndex }
  2832.               ::= { bufferControlTable 1 }
  2833.  
  2834.           BufferControlEntry ::= SEQUENCE {
  2835.               bufferControlIndex                INTEGER (1..65535),
  2836.               bufferControlChannelIndex         INTEGER (1..65535),
  2837.               bufferControlFullStatus           INTEGER,
  2838.               bufferControlFullAction           INTEGER,
  2839.               bufferControlCaptureSliceSize     INTEGER,
  2840.               bufferControlDownloadSliceSize    INTEGER,
  2841.               bufferControlDownloadOffset       INTEGER,
  2842.               bufferControlMaxOctetsRequested   INTEGER,
  2843.               bufferControlMaxOctetsGranted     INTEGER,
  2844.               bufferControlCapturedPackets      INTEGER,
  2845.  
  2846.  
  2847.               bufferControlTurnOnTime           TimeTicks,
  2848.               bufferControlOwner                OwnerString,
  2849.               bufferControlStatus               INTEGER
  2850.           }
  2851.  
  2852.           bufferControlIndex OBJECT-TYPE
  2853.               SYNTAX INTEGER (1..65535)
  2854.               ACCESS read-only
  2855.               STATUS mandatory
  2856.               DESCRIPTION
  2857.                   "An index that uniquely identifies an entry
  2858.                   in the bufferControl table.  The value of this
  2859.                   index shall never be zero.  Each such
  2860.                   entry defines one set of packets that is
  2861.                   captured and controlled by one or more filters."
  2862.               ::= { bufferControlEntry 1 }
  2863.  
  2864.           bufferControlChannelIndex OBJECT-TYPE
  2865.               SYNTAX INTEGER (1..65535)
  2866.               ACCESS read-write
  2867.               STATUS mandatory
  2868.               DESCRIPTION
  2869.                   "An index that identifies the channel that is the
  2870.                   source of packets for this bufferControl table.
  2871.                   The channel identified by a particular value of this
  2872.                   index is the same as identified by the same value of
  2873.                   the channelIndex object.
  2874.  
  2875.                   This object may not be modified if the associated
  2876.                   bufferControlStatus object is equal to valid(1)."
  2877.               ::= { bufferControlEntry 2 }
  2878.  
  2879.           bufferControlFullStatus OBJECT-TYPE
  2880.               SYNTAX INTEGER {
  2881.                       spaceAvailable(1),
  2882.                       full(2)
  2883.               }
  2884.               ACCESS read-only
  2885.               STATUS mandatory
  2886.               DESCRIPTION
  2887.                   "This object shows whether the buffer has room to
  2888.                   accept new packets or if it is full.
  2889.  
  2890.                   If the status is spaceAvailable(1), the buffer is
  2891.                   accepting new packets normally.  If the status is
  2892.                   full(2) and the associated bufferControlFullAction
  2893.                   object is wrapWhenFull, the buffer is accepting new
  2894.                   packets by deleting enough of the oldest packets
  2895.  
  2896.  
  2897.                   to make room for new ones as they arrive.  Otherwise,
  2898.                   if the status is full(2) and the
  2899.                   bufferControlFullAction object is lockWhenFull,
  2900.                   then the buffer has stopped collecting packets.
  2901.  
  2902.                   When this object is set to full(2) the probe must
  2903.                   not later set it to spaceAvailable(1) except in the
  2904.                   case of a significant gain in resources such as
  2905.                   an increase of bufferControlOctetsGranted.  In
  2906.                   particular, the wrap-mode action of deleting old
  2907.                   packets to make room for newly arrived packets
  2908.                   must not affect the value of this object."
  2909.               ::= { bufferControlEntry 3 }
  2910.  
  2911.           bufferControlFullAction OBJECT-TYPE
  2912.               SYNTAX INTEGER {
  2913.                       lockWhenFull(1),
  2914.                       wrapWhenFull(2)    -- FIFO
  2915.               }
  2916.               ACCESS read-write
  2917.               STATUS mandatory
  2918.               DESCRIPTION
  2919.                   "Controls the action of the buffer when it
  2920.                   reaches the full status.  When in the lockWhenFull(1)
  2921.                   state a packet is added to the buffer that
  2922.                   fills the buffer, the bufferControlFullStatus will
  2923.                   be set to full(2) and this buffer will stop capturing
  2924.                   packets."
  2925.               ::= { bufferControlEntry 4 }
  2926.  
  2927.           bufferControlCaptureSliceSize OBJECT-TYPE
  2928.               SYNTAX INTEGER
  2929.               ACCESS read-write
  2930.               STATUS mandatory
  2931.               DESCRIPTION
  2932.                   "The maximum number of octets of each packet
  2933.                   that will be saved in this capture buffer.
  2934.                   For example, if a 1500 octet packet is received by
  2935.                   the probe and this object is set to 500, then only
  2936.                   500 octets of the packet will be stored in the
  2937.                   associated capture buffer.  If this variable is set
  2938.                   to 0, the capture buffer will save as many octets
  2939.                   as is possible.
  2940.  
  2941.                   This object may not be modified if the associated
  2942.                   bufferControlStatus object is equal to valid(1)."
  2943.               DEFVAL { 100 }
  2944.               ::= { bufferControlEntry 5 }
  2945.  
  2946.  
  2947.           bufferControlDownloadSliceSize OBJECT-TYPE
  2948.               SYNTAX INTEGER
  2949.               ACCESS read-write
  2950.               STATUS mandatory
  2951.               DESCRIPTION
  2952.                   "The maximum number of octets of each packet
  2953.                   in this capture buffer that will be returned in
  2954.                   an SNMP retrieval of that packet.  For example,
  2955.                   if 500 octets of a packet have been stored in the
  2956.                   associated capture buffer, the associated
  2957.                   bufferControlDownloadOffset is 0, and this
  2958.                   object is set to 100, then the captureBufferPacket
  2959.                   object that contains the packet will contain only
  2960.                   the first 100 octets of the packet.
  2961.  
  2962.                   A prudent manager will take into account possible
  2963.                   interoperability or fragmentation problems that may
  2964.                   occur if the download slice size is set too large.
  2965.                   In particular, conformant SNMP implementations are not
  2966.                   required to accept messages whose length exceeds 484
  2967.                   octets, although they are encouraged to support larger
  2968.                   datagrams whenever feasible."
  2969.               DEFVAL { 100 }
  2970.               ::= { bufferControlEntry 6 }
  2971.  
  2972.           bufferControlDownloadOffset OBJECT-TYPE
  2973.               SYNTAX INTEGER
  2974.               ACCESS read-write
  2975.               STATUS mandatory
  2976.               DESCRIPTION
  2977.                   "The offset of the first octet of each packet
  2978.                   in this capture buffer that will be returned in
  2979.                   an SNMP retrieval of that packet.  For example,
  2980.                   if 500 octets of a packet have been stored in the
  2981.                   associated capture buffer and this object is set to
  2982.                   100, then the captureBufferPacket object that
  2983.                   contains the packet will contain bytes starting
  2984.                   100 octets into the packet."
  2985.               DEFVAL { 0 }
  2986.               ::= { bufferControlEntry 7 }
  2987.  
  2988.           bufferControlMaxOctetsRequested OBJECT-TYPE
  2989.               SYNTAX INTEGER
  2990.               ACCESS read-write
  2991.               STATUS mandatory
  2992.               DESCRIPTION
  2993.                   "The requested maximum number of octets to be
  2994.                   saved in this captureBuffer, including any
  2995.  
  2996.  
  2997.                   implementation-specific overhead. If this variable
  2998.                   is set to -1, the capture buffer will save as many
  2999.                   octets as is possible.
  3000.  
  3001.                   When this object is created or modified, the probe
  3002.                   should set bufferControlMaxOctetsGranted as closely
  3003.                   to this object as is possible for the particular probe
  3004.                   implementation and available resources.  However, if
  3005.                   the object has the special value of -1, the probe
  3006.                   must set bufferControlMaxOctetsGranted to -1."
  3007.               DEFVAL { -1 }
  3008.               ::= { bufferControlEntry 8 }
  3009.  
  3010.           bufferControlMaxOctetsGranted OBJECT-TYPE
  3011.               SYNTAX INTEGER
  3012.               ACCESS read-only
  3013.               STATUS mandatory
  3014.               DESCRIPTION
  3015.                   "The maximum number of octets that can be
  3016.                   saved in this captureBuffer, including overhead.
  3017.                   If this variable is -1, the capture buffer will save
  3018.                   as many octets as possible.
  3019.  
  3020.                   When the bufferControlMaxOctetsRequested object is
  3021.                   created or modified, the probe should set this object
  3022.                   as closely to the requested value as is possible for
  3023.                   the particular probe implementation and available
  3024.                   resources.  However, if the request object has the
  3025.                   special value of -1, the probe must set this object
  3026.                   to -1.  The probe must not lower this value except
  3027.                   as a result of a modification to the associated
  3028.                   bufferControlMaxOctetsRequested object.
  3029.  
  3030.                   When this maximum number of octets is reached
  3031.                   and a new packet is to be added to this
  3032.                   capture buffer and the corresponding
  3033.                   bufferControlFullAction is set to wrapWhenFull(2),
  3034.                   enough of the oldest packets associated with this
  3035.                   capture buffer shall be deleted by the agent so
  3036.                   that the new packet can be added.  If the
  3037.                   corresponding bufferControlFullAction is set to
  3038.                   lockWhenFull(1), the new packet shall be discarded.
  3039.                   In either case, the probe must set
  3040.                   bufferControlFullStatus to full(2).
  3041.  
  3042.                   When the value of this object changes to a value less
  3043.                   than the current value, entries are deleted from
  3044.                   the captureBufferTable associated with this
  3045.  
  3046.  
  3047.                   bufferControlEntry.  Enough of the
  3048.                   oldest of these captureBufferEntries shall be
  3049.                   deleted by the agent so that the number of octets
  3050.                   used remains less than or equal to the new value of
  3051.                   this object.
  3052.  
  3053.                   When the value of this object changes to a value greater
  3054.                   than the current value, the number of associated
  3055.                   captureBufferEntries may be allowed to grow."
  3056.               ::= { bufferControlEntry 9 }
  3057.  
  3058.           bufferControlCapturedPackets OBJECT-TYPE
  3059.               SYNTAX INTEGER
  3060.               ACCESS read-only
  3061.               STATUS mandatory
  3062.               DESCRIPTION
  3063.                   "The number of packets currently in this captureBuffer."
  3064.               ::= { bufferControlEntry 10 }
  3065.  
  3066.           bufferControlTurnOnTime OBJECT-TYPE
  3067.               SYNTAX TimeTicks
  3068.               ACCESS read-only
  3069.               STATUS mandatory
  3070.               DESCRIPTION
  3071.                   "The value of sysUpTime when this capture buffer was
  3072.                   first turned on."
  3073.               ::= { bufferControlEntry 11 }
  3074.  
  3075.           bufferControlOwner OBJECT-TYPE
  3076.               SYNTAX OwnerString
  3077.               ACCESS read-write
  3078.               STATUS mandatory
  3079.               DESCRIPTION
  3080.                   "The entity that configured this entry and is therefore
  3081.                   using the resources assigned to it."
  3082.               ::= { bufferControlEntry 12 }
  3083.  
  3084.           bufferControlStatus OBJECT-TYPE
  3085.               SYNTAX EntryStatus
  3086.               ACCESS read-write
  3087.               STATUS mandatory
  3088.               DESCRIPTION
  3089.                   "The status of this buffer Control Entry."
  3090.               ::= { bufferControlEntry 13 }
  3091.  
  3092.           captureBufferTable OBJECT-TYPE
  3093.               SYNTAX SEQUENCE OF CaptureBufferEntry
  3094.               ACCESS not-accessible
  3095.  
  3096.  
  3097.               STATUS mandatory
  3098.               DESCRIPTION
  3099.                   "A list of packets captured off of a channel."
  3100.               ::= { capture 2 }
  3101.  
  3102.           captureBufferEntry OBJECT-TYPE
  3103.               SYNTAX CaptureBufferEntry
  3104.               ACCESS not-accessible
  3105.               STATUS mandatory
  3106.               DESCRIPTION
  3107.                   "A packet captured off of an attached network."
  3108.               INDEX { captureBufferControlIndex, captureBufferIndex }
  3109.               ::= { captureBufferTable 1 }
  3110.  
  3111.           CaptureBufferEntry ::= SEQUENCE {
  3112.               captureBufferControlIndex   INTEGER (1..65535),
  3113.               captureBufferIndex          INTEGER,
  3114.               captureBufferPacketID       INTEGER,
  3115.               captureBufferPacketData     OCTET STRING,
  3116.               captureBufferPacketLength   INTEGER,
  3117.               captureBufferPacketTime     INTEGER,
  3118.               captureBufferPacketStatus   INTEGER
  3119.           }
  3120.  
  3121.           captureBufferControlIndex OBJECT-TYPE
  3122.               SYNTAX INTEGER (1..65535)
  3123.               ACCESS read-only
  3124.               STATUS mandatory
  3125.               DESCRIPTION
  3126.                   "The index of the bufferControlEntry with which
  3127.                   this packet is associated."
  3128.               ::= { captureBufferEntry 1 }
  3129.  
  3130.           captureBufferIndex OBJECT-TYPE
  3131.               SYNTAX INTEGER
  3132.               ACCESS read-only
  3133.               STATUS mandatory
  3134.               DESCRIPTION
  3135.                   "An index that uniquely identifies an entry
  3136.                   in the captureBuffer table associated with a
  3137.                   particular bufferControlEntry.  This index will
  3138.                   start at 1 and increase by one for each new packet
  3139.                   added with the same captureBufferControlIndex."
  3140.               ::= { captureBufferEntry 2 }
  3141.  
  3142.           captureBufferPacketID OBJECT-TYPE
  3143.               SYNTAX INTEGER
  3144.               ACCESS read-only
  3145.  
  3146.  
  3147.               STATUS mandatory
  3148.               DESCRIPTION
  3149.                   "An index that describes the order of packets
  3150.                   that are received on a particular interface.
  3151.                   The packetID of a packet captured on an
  3152.                   interface is defined to be greater than the
  3153.                   packetID's of all packets captured previously on
  3154.                   the same interface.  As the captureBufferPacketID
  3155.                   object has a maximum positive value of 2^31 - 1,
  3156.                   any captureBufferPacketID object shall have the
  3157.                   value of the associated packet's packetID mod 2^31."
  3158.               ::= { captureBufferEntry 3 }
  3159.  
  3160.           captureBufferPacketData OBJECT-TYPE
  3161.               SYNTAX OCTET STRING
  3162.               ACCESS read-only
  3163.               STATUS mandatory
  3164.               DESCRIPTION
  3165.                   "The data inside the packet, starting at the beginning
  3166.                   of the packet plus any offset specified in the
  3167.                   associated bufferControlDownloadOffset, including any
  3168.                   link level headers.  The length of the data in this
  3169.                   object is the minimum of the length of the captured
  3170.                   packet minus the offset, the length of the associated
  3171.                   bufferControlCaptureSliceSize minus the offset, and the
  3172.                   associated bufferControlDownloadSliceSize.  If this
  3173.                   minimum is less than zero, this object shall have a
  3174.                   length of zero."
  3175.               ::= { captureBufferEntry 4 }
  3176.  
  3177.           captureBufferPacketLength OBJECT-TYPE
  3178.               SYNTAX INTEGER
  3179.               ACCESS read-only
  3180.               STATUS mandatory
  3181.               DESCRIPTION
  3182.                   "The actual length (off the wire) of the packet stored
  3183.                   in this entry, including FCS octets."
  3184.               ::= { captureBufferEntry 5 }
  3185.  
  3186.           captureBufferPacketTime OBJECT-TYPE
  3187.               SYNTAX INTEGER
  3188.               ACCESS read-only
  3189.               STATUS mandatory
  3190.               DESCRIPTION
  3191.                   "The number of milliseconds that had passed since
  3192.                   this capture buffer was first turned on when this
  3193.                   packet was captured."
  3194.               ::= { captureBufferEntry 6 }
  3195.  
  3196.  
  3197.           captureBufferPacketStatus OBJECT-TYPE
  3198.               SYNTAX INTEGER
  3199.               ACCESS read-only
  3200.               STATUS mandatory
  3201.               DESCRIPTION
  3202.                   "A value which indicates the error status of this
  3203.                   packet.
  3204.  
  3205.                   The value of this object is defined in the same way as
  3206.                   filterPacketStatus.  The value is a sum.  This sum
  3207.                   initially takes the value zero.  Then, for each
  3208.                   error, E, that has been discovered in this packet,
  3209.                   2 raised to a value representing E is added to the sum.
  3210.  
  3211.                   The errors defined for a packet captured off of an
  3212.                   Ethernet interface are as follows:
  3213.  
  3214.                       bit #    Error
  3215.                           0    Packet is longer than 1518 octets
  3216.                           1    Packet is shorter than 64 octets
  3217.                           2    Packet experienced a CRC or Alignment
  3218.                                error
  3219.                           3    First packet in this capture buffer after
  3220.                                it was detected that some packets were
  3221.                                not processed correctly.
  3222.  
  3223.                   For example, an Ethernet fragment would have a
  3224.                   value of 6 (2^1 + 2^2).
  3225.  
  3226.                   As this MIB is expanded to new media types, this object
  3227.                   will have other media-specific errors defined."
  3228.               ::= { captureBufferEntry 7 }
  3229.  
  3230.           -- The Event Group
  3231.  
  3232.           -- Implementation of the Event group is optional.
  3233.           --
  3234.           -- The Event group controls the generation and notification
  3235.           -- of events from this device.  Each entry in the eventTable
  3236.           -- describes the parameters of the event that can be triggered.
  3237.           -- Each event entry is fired by an associated condition located
  3238.           -- elsewhere in the MIB.  An event entry may also be associated
  3239.           -- with a function elsewhere in the MIB that will be executed
  3240.           -- when the event is generated.  For example, a channel may
  3241.           -- be turned on or off by the firing of an event.
  3242.           --
  3243.           -- Each eventEntry may optionally specify that a log entry
  3244.  
  3245.  
  3246.           -- be created on its behalf whenever the event occurs.
  3247.           -- Each entry may also specify that notification should
  3248.           -- occur by way of SNMP trap messages.  In this case, the
  3249.           -- community for the trap message is given in the associated
  3250.           -- eventCommunity object.  The enterprise and specific trap
  3251.           -- fields of the trap are determined by the condition that
  3252.           -- triggered the event.  Three traps are defined in a companion
  3253.           -- document: risingAlarm, fallingAlarm, and packetMatch.
  3254.           -- If the eventTable is triggered by a condition specified
  3255.           -- elsewhere, the enterprise and specific trap fields
  3256.           -- must be specified for traps generated for that condition.
  3257.  
  3258.           eventTable OBJECT-TYPE
  3259.               SYNTAX SEQUENCE OF EventEntry
  3260.               ACCESS not-accessible
  3261.               STATUS mandatory
  3262.               DESCRIPTION
  3263.                   "A list of events to be generated."
  3264.               ::= { event 1 }
  3265.  
  3266.           eventEntry OBJECT-TYPE
  3267.               SYNTAX EventEntry
  3268.               ACCESS not-accessible
  3269.               STATUS mandatory
  3270.               DESCRIPTION
  3271.                   "A set of parameters that describe an event to be
  3272.                   generated when certain conditions are met."
  3273.               INDEX { eventIndex }
  3274.               ::= { eventTable 1 }
  3275.  
  3276.           EventEntry ::= SEQUENCE {
  3277.               eventIndex          INTEGER (1..65535),
  3278.               eventDescription    DisplayString (SIZE (0..127)),
  3279.               eventType           INTEGER,
  3280.               eventCommunity      OCTET STRING (SIZE (0..127)),
  3281.               eventLastTimeSent   TimeTicks,
  3282.               eventOwner          OwnerString,
  3283.               eventStatus         INTEGER
  3284.           }
  3285.  
  3286.           eventIndex OBJECT-TYPE
  3287.               SYNTAX INTEGER (1..65535)
  3288.               ACCESS read-only
  3289.               STATUS mandatory
  3290.               DESCRIPTION
  3291.                   "An index that uniquely identifies an entry in the
  3292.                   event table.  Each such entry defines one event that
  3293.                   is to be generated when the appropriate conditions
  3294.  
  3295.  
  3296.                   occur."
  3297.               ::= { eventEntry 1 }
  3298.  
  3299.           eventDescription OBJECT-TYPE
  3300.               SYNTAX DisplayString (SIZE (0..127))
  3301.               ACCESS read-write
  3302.               STATUS mandatory
  3303.               DESCRIPTION
  3304.                   "A comment describing this event entry."
  3305.               ::= { eventEntry 2 }
  3306.  
  3307.           eventType OBJECT-TYPE
  3308.               SYNTAX INTEGER {
  3309.                       none(1),
  3310.                       log(2),
  3311.                       snmp-trap(3),    -- send an SNMP trap
  3312.                       log-and-trap(4)
  3313.               }
  3314.               ACCESS read-write
  3315.               STATUS mandatory
  3316.               DESCRIPTION
  3317.                   "The type of notification that the probe will make
  3318.                   about this event.  In the case of log, an entry is
  3319.                   made in the log table for each event.  In the case of
  3320.                   snmp-trap, an SNMP trap is sent to one or more
  3321.                   management stations."
  3322.               ::= { eventEntry 3 }
  3323.  
  3324.           eventCommunity OBJECT-TYPE
  3325.               SYNTAX OCTET STRING (SIZE (0..127))
  3326.               ACCESS read-write
  3327.               STATUS mandatory
  3328.               DESCRIPTION
  3329.                   "If an SNMP trap is to be sent, it will be sent to
  3330.                   the SNMP community specified by this octet string.
  3331.                   In the future this table will be extended to include
  3332.                   the party security mechanism.  This object shall be
  3333.                   set to a string of length zero if it is intended that
  3334.                   that mechanism be used to specify the destination of
  3335.                   the trap."
  3336.               ::= { eventEntry 4 }
  3337.  
  3338.           eventLastTimeSent OBJECT-TYPE
  3339.               SYNTAX TimeTicks
  3340.               ACCESS read-only
  3341.               STATUS mandatory
  3342.               DESCRIPTION
  3343.                   "The value of sysUpTime at the time this event
  3344.  
  3345.  
  3346.                   entry last generated an event.  If this entry has
  3347.                   not generated any events, this value will be
  3348.                   zero."
  3349.               ::= { eventEntry 5 }
  3350.  
  3351.           eventOwner OBJECT-TYPE
  3352.               SYNTAX OwnerString
  3353.               ACCESS read-write
  3354.               STATUS mandatory
  3355.               DESCRIPTION
  3356.                   "The entity that configured this entry and is therefore
  3357.                   using the resources assigned to it.
  3358.  
  3359.                   If this object contains a string starting with 'monitor'
  3360.                   and has associated entries in the log table, all
  3361.                   connected management stations should retrieve those
  3362.                   log entries, as they may have significance to all
  3363.                   management stations connected to this device"
  3364.               ::= { eventEntry 6 }
  3365.  
  3366.           eventStatus OBJECT-TYPE
  3367.               SYNTAX EntryStatus
  3368.               ACCESS read-write
  3369.               STATUS mandatory
  3370.               DESCRIPTION
  3371.                   "The status of this event entry.
  3372.  
  3373.                   If this object is not equal to valid(1), all associated
  3374.                   log entries shall be deleted by the agent."
  3375.               ::= { eventEntry 7 }
  3376.  
  3377.           logTable OBJECT-TYPE
  3378.               SYNTAX SEQUENCE OF LogEntry
  3379.               ACCESS not-accessible
  3380.               STATUS mandatory
  3381.               DESCRIPTION
  3382.                   "A list of events that have been logged."
  3383.               ::= { event 2 }
  3384.  
  3385.           logEntry OBJECT-TYPE
  3386.               SYNTAX LogEntry
  3387.               ACCESS not-accessible
  3388.               STATUS mandatory
  3389.               DESCRIPTION
  3390.                   "A set of data describing an event that has been
  3391.                   logged."
  3392.               INDEX { logEventIndex, logIndex }
  3393.  
  3394.  
  3395.               ::= { logTable 1 }
  3396.  
  3397.           LogEntry ::= SEQUENCE {
  3398.               logEventIndex           INTEGER (1..65535),
  3399.               logIndex                INTEGER,
  3400.               logTime                 TimeTicks,
  3401.               logDescription          DisplayString (SIZE (0..255))
  3402.           }
  3403.  
  3404.           logEventIndex OBJECT-TYPE
  3405.               SYNTAX INTEGER (1..65535)
  3406.               ACCESS read-only
  3407.               STATUS mandatory
  3408.               DESCRIPTION
  3409.                   "The event entry that generated this log
  3410.                   entry.  The log identified by a particular
  3411.                   value of this index is associated with the same
  3412.                   eventEntry as identified by the same value
  3413.                   of eventIndex."
  3414.               ::= { logEntry 1 }
  3415.  
  3416.           logIndex OBJECT-TYPE
  3417.               SYNTAX INTEGER
  3418.               ACCESS read-only
  3419.               STATUS mandatory
  3420.               DESCRIPTION
  3421.                   "An index that uniquely identifies an entry
  3422.                   in the log table amongst those generated by the
  3423.                   same eventEntries.  These indexes are
  3424.                   assigned beginning with 1 and increase by one
  3425.                   with each new log entry.  The association
  3426.                   between values of logIndex and logEntries
  3427.                   is fixed for the lifetime of each logEntry.
  3428.                   The agent may choose to delete the oldest
  3429.                   instances of logEntry as required because of
  3430.                   lack of memory.  It is an implementation-specific
  3431.                   matter as to when this deletion may occur."
  3432.               ::= { logEntry 2 }
  3433.  
  3434.           logTime OBJECT-TYPE
  3435.               SYNTAX TimeTicks
  3436.               ACCESS read-only
  3437.               STATUS mandatory
  3438.               DESCRIPTION
  3439.                   "The value of sysUpTime when this log entry was
  3440.                   created."
  3441.               ::= { logEntry 3 }
  3442.  
  3443.  
  3444.           logDescription OBJECT-TYPE
  3445.               SYNTAX DisplayString (SIZE (0..255))
  3446.               ACCESS read-only
  3447.               STATUS mandatory
  3448.               DESCRIPTION
  3449.                   "An implementation dependent description of the
  3450.                   event that activated this log entry."
  3451.               ::= { logEntry 4 }
  3452.  
  3453. END
  3454.