RFC1271-MIB
上传用户:aonuowh
上传日期:2021-05-23
资源大小:35390k
文件大小:149k
源码类别:

SNMP编程

开发平台:

C/C++

  1. -- Changes for RFC1271 (RMON MIB):
  2. --      Changed RFC1158-MIB to RFC1213-MIB
  3. --      Added import for TimeTicks.
  4. --      Changed syntax of etherStatsStatus from INTEGER to
  5. --          EntryStatus in sequence EtherStatsEntry.
  6. --      Changed syntax of historyControlStatus from INTEGER to
  7. --          EntryStatus in sequence HistoryControlEntry.
  8. --      Changed range of alarmRisingEventIndex in definition
  9. --          of sequence AlarmEntry to match object
  10. --          definition.
  11. --      Changed range of alarmFallingEventIndex in definition
  12. --          of sequence AlarmEntry to match object
  13. --          definition.
  14. --      Changed syntax of alarmStatus from INTEGER to
  15. --          EntryStatus in sequence AlarmEntry.
  16. --      Changed syntax of hostControlStatus from INTEGER to
  17. --          EntryStatus in sequence HostControlEntry.
  18. --      Changed syntax of hostTopNStatus from INTEGER to
  19. --          EntryStatus in sequence HistoryHostTopNControlEntry.
  20. --      Changed syntax of maxtrixControlStatus from INTEGER to
  21. --          EntryStatus in sequence MatrixControlEntry.
  22. --      Changed syntax of filterStatus from INTEGER to
  23. --          EntryStatus in sequence FilterEntry.
  24. --      Changed syntax of channelStatus from INTEGER to
  25. --          EntryStatus in sequence ChannelEntry.
  26. --      Changed syntax of bufferControlStatus from INTEGER to
  27. --          EntryStatus in sequence bufferControlEntry.
  28. --      Changed syntax of eventStatus from INTEGER to
  29. --          EntryStatus in sequence EventEntry.
  30. -- dperkins@scruznet.com
  31.           RFC1271-MIB DEFINITIONS ::= BEGIN
  32.           -- RFC1271
  33.           -- November 91
  34.               IMPORTS
  35.                   Counter, TimeTicks                   FROM RFC1155-SMI
  36.                   DisplayString, mib-2                 FROM RFC1213-MIB
  37.                   OBJECT-TYPE                          FROM RFC-1212;
  38.           --  This MIB module uses the extended OBJECT-TYPE macro as
  39.           --  defined in [9].
  40.           --  Remote Network Monitoring MIB
  41.               rmon    OBJECT IDENTIFIER ::= { mib-2 16 }
  42.               -- textual conventions
  43.               OwnerString ::= DisplayString
  44.               -- This data type is used to model an administratively
  45.               -- assigned name of the owner of a resource. This
  46.               -- information is taken from the NVT ASCII character set.
  47.               -- It is suggested that this name contain one or more
  48.               -- of the following:
  49.               -- IP address, management station name, network manager's
  50.               -- name, location, or phone number.
  51.               -- In some cases the agent itself will be the owner of
  52.               -- an entry.  In these cases, this string shall be set
  53.               -- to a string starting with 'monitor'.
  54.               --
  55.               -- SNMP access control is articulated entirely in terms of
  56.               -- the contents of MIB views; access to a particular SNMP
  57.               -- object instance depends only upon its presence or
  58.               -- absence in a particular MIB view and never upon its
  59.               -- value or the value of related object instances. Thus,
  60.               -- objects of this type afford resolution of resource
  61.               -- contention only among cooperating managers; they
  62.               -- realize no access control function with respect
  63.               -- to uncooperative parties.
  64.               --
  65.               -- By convention, objects with this syntax are declared
  66.               -- as having
  67.               --
  68.               --      SIZE (0..127)
  69.               EntryStatus ::= INTEGER
  70.                          { valid(1),
  71.                            createRequest(2),
  72.                            underCreation(3),
  73.                            invalid(4)
  74.                          }
  75.               -- The status of a table entry.
  76.               --
  77.               -- Setting this object to the value invalid(4) has the
  78.               -- effect of invalidating the corresponding entry.
  79.               -- That is, it effectively disassociates the mapping
  80.               -- identified with said entry.
  81.               -- It is an implementation-specific matter as to whether
  82.               -- the agent removes an invalidated entry from the table.
  83.               -- Accordingly, management stations must be prepared to
  84.               -- receive tabular information from agents that corresponds
  85.               -- to entries currently not in use.  Proper
  86.               -- interpretation of such entries requires examination
  87.               -- of the relevant EntryStatus object.
  88.               --
  89.               -- An existing instance of this object cannot be set to
  90.               -- createRequest(2).  This object may only be set to
  91.               -- createRequest(2) when this instance is created.  When
  92.               -- this object is created, the agent may wish to create
  93.               -- supplemental object instances to complete a conceptual
  94.               -- row in this table.  Immediately after completing the
  95.               -- create operation, the agent must set this object to
  96.               -- underCreation(3).
  97.               --
  98.               -- Entries shall exist in the underCreation(3) state until
  99.               -- the management station is finished configuring the
  100.               -- entry and sets this object to valid(1) or aborts,
  101.               -- setting this object to invalid(4).  If the agent
  102.               -- determines that an entry has been in the
  103.               -- underCreation(3) state for an abnormally long time,
  104.               -- it may decide that the management station has
  105.               -- crashed.  If the agent makes this decision,
  106.               -- it may set this object to invalid(4) to reclaim the
  107.               -- entry.  A prudent agent will understand that the
  108.               -- management station may need to wait for human input
  109.               -- and will allow for that possibility in its
  110.               -- determination of this abnormally long period.
  111.               statistics        OBJECT IDENTIFIER ::= { rmon 1 }
  112.               history           OBJECT IDENTIFIER ::= { rmon 2 }
  113.               alarm             OBJECT IDENTIFIER ::= { rmon 3 }
  114.               hosts             OBJECT IDENTIFIER ::= { rmon 4 }
  115.               hostTopN          OBJECT IDENTIFIER ::= { rmon 5 }
  116.               matrix            OBJECT IDENTIFIER ::= { rmon 6 }
  117.               filter            OBJECT IDENTIFIER ::= { rmon 7 }
  118.               capture           OBJECT IDENTIFIER ::= { rmon 8 }
  119.               event             OBJECT IDENTIFIER ::= { rmon 9 }
  120.           -- The Statistics Group
  121.           --
  122.           -- Implementation of the Statistics group is optional.
  123.           --
  124.           -- The statistics group contains statistics measured by the
  125.           -- probe for each monitored interface on this device.  These
  126.           -- statistics take the form of free running counters that
  127.           -- start from zero when a valid entry is created.
  128.           --
  129.           -- This group currently has statistics defined only for
  130.           -- Ethernet interfaces.  Each etherStatsEntry contains
  131.           -- statistics for one Ethernet interface.  The probe must
  132.           -- create one etherStats entry for each monitored Ethernet
  133.           -- interface on the device.
  134.           etherStatsTable OBJECT-TYPE
  135.               SYNTAX SEQUENCE OF EtherStatsEntry
  136.               ACCESS not-accessible
  137.               STATUS mandatory
  138.               DESCRIPTION
  139.                   "A list of Ethernet statistics entries."
  140.               ::= { statistics 1 }
  141.           etherStatsEntry OBJECT-TYPE
  142.               SYNTAX EtherStatsEntry
  143.               ACCESS not-accessible
  144.               STATUS mandatory
  145.               DESCRIPTION
  146.                   "A collection of statistics kept for a particular
  147.                   Ethernet interface."
  148.               INDEX { etherStatsIndex }
  149.               ::= { etherStatsTable 1 }
  150.           EtherStatsEntry ::= SEQUENCE {
  151.               etherStatsIndex                    INTEGER (1..65535),
  152.               etherStatsDataSource               OBJECT IDENTIFIER,
  153.               etherStatsDropEvents               Counter,
  154.               etherStatsOctets                   Counter,
  155.               etherStatsPkts                     Counter,
  156.               etherStatsBroadcastPkts            Counter,
  157.               etherStatsMulticastPkts            Counter,
  158.               etherStatsCRCAlignErrors           Counter,
  159.               etherStatsUndersizePkts            Counter,
  160.               etherStatsOversizePkts             Counter,
  161.               etherStatsFragments                Counter,
  162.               etherStatsJabbers                  Counter,
  163.               etherStatsCollisions               Counter,
  164.               etherStatsPkts64Octets             Counter,
  165.               etherStatsPkts65to127Octets        Counter,
  166.               etherStatsPkts128to255Octets       Counter,
  167.               etherStatsPkts256to511Octets       Counter,
  168.               etherStatsPkts512to1023Octets      Counter,
  169.               etherStatsPkts1024to1518Octets     Counter,
  170.               etherStatsOwner                    OwnerString,
  171.               etherStatsStatus                   EntryStatus
  172.           }
  173.           etherStatsIndex OBJECT-TYPE
  174.               SYNTAX INTEGER (1..65535)
  175.               ACCESS read-only
  176.               STATUS mandatory
  177.               DESCRIPTION
  178.                   "The value of this object uniquely identifies this
  179.                   etherStats entry."
  180.               ::= { etherStatsEntry 1 }
  181.           etherStatsDataSource OBJECT-TYPE
  182.               SYNTAX OBJECT IDENTIFIER
  183.               ACCESS read-write
  184.               STATUS mandatory
  185.               DESCRIPTION
  186.                   "This object identifies the source of the data that
  187.                   this etherStats entry is configured to analyze.  This
  188.                   source can be any ethernet interface on this device.
  189.                   In order to identify a particular interface, this
  190.                   object shall identify the instance of the ifIndex
  191.                   object, defined in [4,6], for the desired interface.
  192.                   For example, if an entry were to receive data from
  193.                   interface #1, this object would be set to ifIndex.1.
  194.                   The statistics in this group reflect all packets
  195.                   on the local network segment attached to the
  196.                   identified interface.
  197.                   This object may not be modified if the associated
  198.                   etherStatsStatus object is equal to valid(1)."
  199.               ::= { etherStatsEntry 2 }
  200.           etherStatsDropEvents OBJECT-TYPE
  201.               SYNTAX Counter
  202.               ACCESS read-only
  203.               STATUS mandatory
  204.               DESCRIPTION
  205.                   "The total number of events in which packets
  206.                   were dropped by the probe due to lack of resources.
  207.                   Note that this number is not necessarily the number of
  208.                   packets dropped; it is just the number of times this
  209.                   condition has been detected."
  210.               ::= { etherStatsEntry 3 }
  211.           etherStatsOctets OBJECT-TYPE
  212.               SYNTAX Counter
  213.               ACCESS read-only
  214.               STATUS mandatory
  215.               DESCRIPTION
  216.                   "The total number of octets of data (including
  217.                   those in bad packets) received on the
  218.                   network (excluding framing bits but including
  219.                   FCS octets)."
  220.               ::= { etherStatsEntry 4 }
  221.           etherStatsPkts OBJECT-TYPE
  222.               SYNTAX Counter
  223.               ACCESS read-only
  224.               STATUS mandatory
  225.               DESCRIPTION
  226.                   "The total number of packets (including error packets)
  227.                   received."
  228.               ::= { etherStatsEntry 5 }
  229.           etherStatsBroadcastPkts OBJECT-TYPE
  230.               SYNTAX Counter
  231.               ACCESS read-only
  232.               STATUS mandatory
  233.               DESCRIPTION
  234.                   "The total number of good packets received that were
  235.                   directed to the broadcast address."
  236.               ::= { etherStatsEntry 6 }
  237.           etherStatsMulticastPkts OBJECT-TYPE
  238.               SYNTAX Counter
  239.               ACCESS read-only
  240.               STATUS mandatory
  241.               DESCRIPTION
  242.                   "The total number of good packets received that were
  243.                   directed to a multicast address.  Note that this
  244.                   number does not include packets directed to the
  245.                   broadcast address."
  246.               ::= { etherStatsEntry 7 }
  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.           etherStatsUndersizePkts OBJECT-TYPE
  260.               SYNTAX Counter
  261.               ACCESS read-only
  262.               STATUS mandatory
  263.               DESCRIPTION
  264.                   "The total number of packets received that were
  265.                   less than 64 octets long (excluding framing bits,
  266.                   but including FCS octets) and were otherwise well
  267.                   formed."
  268.               ::= { etherStatsEntry 9 }
  269.           etherStatsOversizePkts OBJECT-TYPE
  270.               SYNTAX Counter
  271.               ACCESS read-only
  272.               STATUS mandatory
  273.               DESCRIPTION
  274.                   "The total number of packets received that were
  275.                   longer than 1518 octets (excluding framing bits,
  276.                   but including FCS octets) and were otherwise
  277.                   well formed."
  278.               ::= { etherStatsEntry 10 }
  279.           etherStatsFragments OBJECT-TYPE
  280.               SYNTAX Counter
  281.               ACCESS read-only
  282.               STATUS mandatory
  283.               DESCRIPTION
  284.                   "The total number of packets received that were not an
  285.                   integral number of octets in length or that had a bad
  286.                   Frame Check Sequence (FCS), and were less than 64
  287.                   octets in length (excluding framing bits but
  288.                   including FCS octets)."
  289.               ::= { etherStatsEntry 11 }
  290.           etherStatsJabbers OBJECT-TYPE
  291.               SYNTAX Counter
  292.               ACCESS read-only
  293.               STATUS mandatory
  294.               DESCRIPTION
  295.                   "The total number of packets received that were
  296.                   longer than 1518 octets (excluding framing bits,
  297.                   but including FCS octets), and were not an
  298.                   integral number of octets in length or had
  299.                   a bad Frame Check Sequence (FCS)."
  300.               ::= { etherStatsEntry 12 }
  301.           etherStatsCollisions OBJECT-TYPE
  302.               SYNTAX Counter
  303.               ACCESS read-only
  304.               STATUS mandatory
  305.               DESCRIPTION
  306.                   "The best estimate of the total number of collisions
  307.                   on this Ethernet segment."
  308.               ::= { etherStatsEntry 13 }
  309.           etherStatsPkts64Octets OBJECT-TYPE
  310.               SYNTAX Counter
  311.               ACCESS read-only
  312.               STATUS mandatory
  313.               DESCRIPTION
  314.                   "The total number of packets (including error
  315.                   packets) received that were 64 octets in length
  316.                   (excluding framing bits but including FCS octets)."
  317.               ::= { etherStatsEntry 14 }
  318.           etherStatsPkts65to127Octets OBJECT-TYPE
  319.               SYNTAX Counter
  320.               ACCESS read-only
  321.               STATUS mandatory
  322.               DESCRIPTION
  323.                   "The total number of packets (including error
  324.                   packets) received that were between
  325.                   65 and 127 octets in length inclusive
  326.                   (excluding framing bits but including FCS octets)."
  327.               ::= { etherStatsEntry 15 }
  328.           etherStatsPkts128to255Octets OBJECT-TYPE
  329.               SYNTAX Counter
  330.               ACCESS read-only
  331.               STATUS mandatory
  332.               DESCRIPTION
  333.                   "The total number of packets (including error
  334.                   packets) received that were between
  335.                   128 and 255 octets in length inclusive
  336.                   (excluding framing bits but including FCS octets)."
  337.               ::= { etherStatsEntry 16 }
  338.           etherStatsPkts256to511Octets OBJECT-TYPE
  339.               SYNTAX Counter
  340.               ACCESS read-only
  341.               STATUS mandatory
  342.               DESCRIPTION
  343.                   "The total number of packets (including error
  344.                   packets) received that were between
  345.                   256 and 511 octets in length inclusive
  346.                   (excluding framing bits but including FCS octets)."
  347.               ::= { etherStatsEntry 17 }
  348.           etherStatsPkts512to1023Octets OBJECT-TYPE
  349.               SYNTAX Counter
  350.               ACCESS read-only
  351.               STATUS mandatory
  352.               DESCRIPTION
  353.                   "The total number of packets (including error
  354.                   packets) received that were between
  355.                   512 and 1023 octets in length inclusive
  356.                   (excluding framing bits but including FCS octets)."
  357.               ::= { etherStatsEntry 18 }
  358.           etherStatsPkts1024to1518Octets OBJECT-TYPE
  359.               SYNTAX Counter
  360.               ACCESS read-only
  361.               STATUS mandatory
  362.               DESCRIPTION
  363.                   "The total number of packets (including error
  364.                   packets) received that were between
  365.                   1024 and 1518 octets in length inclusive
  366.                   (excluding framing bits but including FCS octets)."
  367.               ::= { etherStatsEntry 19 }
  368.           etherStatsOwner OBJECT-TYPE
  369.               SYNTAX OwnerString
  370.               ACCESS read-write
  371.               STATUS mandatory
  372.               DESCRIPTION
  373.                   "The entity that configured this entry and is
  374.                   therefore using the resources assigned to it."
  375.               ::= { etherStatsEntry 20 }
  376.           etherStatsStatus OBJECT-TYPE
  377.               SYNTAX EntryStatus
  378.               ACCESS read-write
  379.               STATUS mandatory
  380.               DESCRIPTION
  381.                   "The status of this etherStats entry."
  382.               ::= { etherStatsEntry 21 }
  383.           -- The History Group
  384.           -- Implementation of the History group is optional.
  385.           --
  386.           -- The history group records periodic statistical samples from
  387.           -- a network and stores them for later retrieval.  The
  388.           -- historyControl table stores configuration entries that each
  389.           -- define an interface, polling period, and other parameters.
  390.           -- Once samples are taken, their data is stored in an entry
  391.           -- in a media-specific table.  Each such entry defines one
  392.           -- sample, and is associated with the historyControlEntry that
  393.           -- caused the sample to be taken.  Currently the only media-
  394.           -- specific table defined is the etherHistoryTable, for
  395.           -- Ethernet networks.
  396.           --
  397.           -- If the probe keeps track of the time of day, it should
  398.           -- start the first sample of the history at a time such that
  399.           -- when the next hour of the day begins, a sample is
  400.           -- started at that instant.  This tends to make more
  401.           -- user-friendly reports, and enables comparison of reports
  402.           -- from different probes that have relatively accurate time
  403.           -- of day.
  404.           --
  405.           -- The monitor is encouraged to add two history control entries
  406.           -- per monitored interface upon initialization that describe
  407.           -- a short term and a long term polling period.  Suggested
  408.           -- parameters are 30 seconds for the short term polling
  409.           -- period and 30 minutes for the long term period.
  410.           historyControlTable OBJECT-TYPE
  411.               SYNTAX SEQUENCE OF HistoryControlEntry
  412.               ACCESS not-accessible
  413.               STATUS mandatory
  414.               DESCRIPTION
  415.                   "A list of history control entries."
  416.               ::= { history 1 }
  417.           historyControlEntry OBJECT-TYPE
  418.               SYNTAX HistoryControlEntry
  419.               ACCESS not-accessible
  420.               STATUS mandatory
  421.               DESCRIPTION
  422.                   "A list of parameters that set up a periodic
  423.                   sampling of statistics."
  424.               INDEX { historyControlIndex }
  425.               ::= { historyControlTable 1 }
  426.           HistoryControlEntry ::= SEQUENCE {
  427.               historyControlIndex             INTEGER (1..65535),
  428.               historyControlDataSource        OBJECT IDENTIFIER,
  429.               historyControlBucketsRequested  INTEGER (1..65535),
  430.               historyControlBucketsGranted    INTEGER (1..65535),
  431.               historyControlInterval          INTEGER (1..3600),
  432.               historyControlOwner             OwnerString,
  433.               historyControlStatus            EntryStatus
  434.           }
  435.           historyControlIndex OBJECT-TYPE
  436.               SYNTAX INTEGER (1..65535)
  437.               ACCESS read-only
  438.               STATUS mandatory
  439.               DESCRIPTION
  440.                   "An index that uniquely identifies an entry in the
  441.                   historyControl table.  Each such entry defines a
  442.                   set of samples at a particular interval for an
  443.                   interface on the device."
  444.               ::= { historyControlEntry 1 }
  445.           historyControlDataSource OBJECT-TYPE
  446.               SYNTAX OBJECT IDENTIFIER
  447.               ACCESS read-write
  448.               STATUS mandatory
  449.               DESCRIPTION
  450.                   "This object identifies the source of the data for
  451.                   which historical data was collected and
  452.                   placed in a media-specific table on behalf of this
  453.                   historyControlEntry.  This source can be any
  454.                   interface on this device.  In order to identify
  455.                   a particular interface, this object shall identify
  456.                   the instance of the ifIndex object, defined
  457.                   in [4,6], for the desired interface.  For example,
  458.                   if an entry were to receive data from interface #1,
  459.                   this object would be set to ifIndex.1.
  460.                   The statistics in this group reflect all packets
  461.                   on the local network segment attached to the
  462.                   identified interface.
  463.                   This object may not be modified if the associated
  464.                   historyControlStatus object is equal to valid(1)."
  465.               ::= { historyControlEntry 2 }
  466.           historyControlBucketsRequested OBJECT-TYPE
  467.               SYNTAX INTEGER (1..65535)
  468.               ACCESS read-write
  469.               STATUS mandatory
  470.               DESCRIPTION
  471.                   "The requested number of discrete time intervals
  472.                   over which data is to be saved in the part of the
  473.                   media-specific table associated with this
  474.                   historyControl entry.
  475.                   When this object is created or modified, the probe
  476.                   should set historyControlBucketsGranted as closely to
  477.                   this object as is possible for the particular probe
  478.                   implementation and available resources."
  479.               DEFVAL { 50 }
  480.               ::= { historyControlEntry 3 }
  481.           historyControlBucketsGranted OBJECT-TYPE
  482.               SYNTAX INTEGER (1..65535)
  483.               ACCESS read-only
  484.               STATUS mandatory
  485.               DESCRIPTION
  486.                   "The number of discrete sampling intervals
  487.                   over which data shall be saved in the part of
  488.                   the media-specific table associated with this
  489.                   historyControl entry.
  490.                   When the associated historyControlBucketsRequested
  491.                   object is created or modified, the probe
  492.                   should set this object as closely to the requested
  493.                   value as is possible for the particular
  494.                   probe implementation and available resources.  The
  495.                   probe must not lower this value except as a result
  496.                   of a modification to the associated
  497.                   historyControlBucketsRequested object.
  498.                   There will be times when the actual number of
  499.                   buckets associated with this entry is less than
  500.                   the value of this object.  In this case, at the
  501.                   end of each sampling interval, a new bucket will
  502.                   be added to the media-specific table.
  503.                   When the number of buckets reaches the value of
  504.                   this object and a new bucket is to be added to the
  505.                   media-specific table, the oldest bucket associated
  506.                   with this historyControlEntry shall be deleted by
  507.                   the agent so that the new bucket can be added.
  508.                   When the value of this object changes to a value less
  509.                   than the current value, entries are deleted
  510.                   from the media-specific table associated with this
  511.                   historyControlEntry.  Enough of the oldest of these
  512.                   entries shall be deleted by the agent so that their
  513.                   number remains less than or equal to the new value of
  514.                   this object.
  515.                   When the value of this object changes to a value
  516.                   greater than the current value, the number of
  517.                   associated media-specific entries may be allowed
  518.                   to grow."
  519.               ::= { historyControlEntry 4 }
  520.           historyControlInterval OBJECT-TYPE
  521.               SYNTAX INTEGER (1..3600)
  522.               ACCESS read-write
  523.               STATUS mandatory
  524.               DESCRIPTION
  525.                   "The interval in seconds over which the data is
  526.                   sampled for each bucket in the part of the
  527.                   media-specific table associated with this
  528.                   historyControl entry.  This interval can
  529.                   be set to any number of seconds between 1 and
  530.                   3600 (1 hour).
  531.                   Because the counters in a bucket may overflow at their
  532.                   maximum value with no indication, a prudent manager
  533.                   will take into account the possibility of overflow
  534.                   in any of the associated counters.  It is important
  535.                   to consider the minimum time in which any counter
  536.                   could overflow on a particular media type and set
  537.                   the historyControlInterval object to a value less
  538.                   than this interval.  This is typically most
  539.                   important for the 'octets' counter in any
  540.                   media-specific table.  For example, on an Ethernet
  541.                   network, the etherHistoryOctets counter could overflow
  542.                   in about one hour at the Ethernet's maximum
  543.                   utilization.
  544.                   This object may not be modified if the associated
  545.                   historyControlStatus object is equal to valid(1)."
  546.               DEFVAL { 1800 }
  547.               ::= { historyControlEntry 5 }
  548.           historyControlOwner OBJECT-TYPE
  549.               SYNTAX OwnerString
  550.               ACCESS read-write
  551.               STATUS mandatory
  552.               DESCRIPTION
  553.                   "The entity that configured this entry and is therefore
  554.                   using the resources assigned to it."
  555.               ::= { historyControlEntry 6 }
  556.           historyControlStatus OBJECT-TYPE
  557.               SYNTAX EntryStatus
  558.               ACCESS read-write
  559.               STATUS mandatory
  560.               DESCRIPTION
  561.                   "The status of this historyControl entry.
  562.                   Each instance of the media-specific table associated
  563.                   with this historyControlEntry will be deleted by the
  564.                   agent if this historyControlEntry is not equal to
  565.                   valid(1)."
  566.               ::= { historyControlEntry 7 }
  567.           -- Ether History table
  568.           etherHistoryTable OBJECT-TYPE
  569.               SYNTAX SEQUENCE OF EtherHistoryEntry
  570.               ACCESS not-accessible
  571.               STATUS mandatory
  572.               DESCRIPTION
  573.                   "A list of Ethernet history entries."
  574.               ::= { history 2 }
  575.           etherHistoryEntry OBJECT-TYPE
  576.               SYNTAX EtherHistoryEntry
  577.               ACCESS not-accessible
  578.               STATUS mandatory
  579.               DESCRIPTION
  580.                   "An historical sample of Ethernet statistics on a
  581.                   particular Ethernet interface.  This sample is
  582.                   associated with the historyControlEntry which set
  583.                   up the parameters for a regular collection of these
  584.                   samples."
  585.               INDEX { etherHistoryIndex , etherHistorySampleIndex }
  586.               ::= { etherHistoryTable 1 }
  587.           EtherHistoryEntry ::= SEQUENCE {
  588.               etherHistoryIndex                 INTEGER (1..65535),
  589.               etherHistorySampleIndex           INTEGER,
  590.               etherHistoryIntervalStart         TimeTicks,
  591.               etherHistoryDropEvents            Counter,
  592.               etherHistoryOctets                Counter,
  593.               etherHistoryPkts                  Counter,
  594.               etherHistoryBroadcastPkts         Counter,
  595.               etherHistoryMulticastPkts         Counter,
  596.               etherHistoryCRCAlignErrors        Counter,
  597.               etherHistoryUndersizePkts         Counter,
  598.               etherHistoryOversizePkts          Counter,
  599.               etherHistoryFragments             Counter,
  600.               etherHistoryJabbers               Counter,
  601.               etherHistoryCollisions            Counter,
  602.               etherHistoryUtilization           INTEGER (0..10000)
  603.           }
  604.           etherHistoryIndex OBJECT-TYPE
  605.               SYNTAX INTEGER (1..65535)
  606.               ACCESS read-only
  607.               STATUS mandatory
  608.               DESCRIPTION
  609.                   "The history of which this entry is a part.  The
  610.                   history identified by a particular value of this
  611.                   index is the same history as identified
  612.                   by the same value of historyControlIndex."
  613.               ::= { etherHistoryEntry 1 }
  614.           etherHistorySampleIndex OBJECT-TYPE
  615.               SYNTAX INTEGER
  616.               ACCESS read-only
  617.               STATUS mandatory
  618.               DESCRIPTION
  619.                   "An index that uniquely identifies the particular
  620.                   sample this entry represents among all samples
  621.                   associated with the same historyControlEntry.
  622.                   This index starts at 1 and increases by one
  623.                   as each new sample is taken."
  624.               ::= { etherHistoryEntry 2 }
  625.           etherHistoryIntervalStart OBJECT-TYPE
  626.               SYNTAX TimeTicks
  627.               ACCESS read-only
  628.               STATUS mandatory
  629.               DESCRIPTION
  630.                   "The value of sysUpTime at the start of the interval
  631.                   over which this sample was measured.  If the probe
  632.                   keeps track of the time of day, it should start
  633.                   the first sample of the history at a time such that
  634.                   when the next hour of the day begins, a sample is
  635.                   started at that instant.  Note that following this
  636.                   rule may require the probe to delay collecting the
  637.                   first sample of the history, as each sample must be
  638.                   of the same interval.  Also note that the sample which
  639.                   is currently being collected is not accessible in this
  640.                   table until the end of its interval."
  641.               ::= { etherHistoryEntry 3 }
  642.           etherHistoryDropEvents OBJECT-TYPE
  643.               SYNTAX Counter
  644.               ACCESS read-only
  645.               STATUS mandatory
  646.               DESCRIPTION
  647.                   "The total number of events in which packets
  648.                   were dropped by the probe due to lack of resources
  649.                   during this interval.  Note that this number is not
  650.                   necessarily the number of packets dropped, it is just
  651.                   the number of times this condition has been detected."
  652.               ::= { etherHistoryEntry 4 }
  653.           etherHistoryOctets OBJECT-TYPE
  654.               SYNTAX Counter
  655.               ACCESS read-only
  656.               STATUS mandatory
  657.               DESCRIPTION
  658.                   "The total number of octets of data (including
  659.                   those in bad packets) received on the
  660.                   network (excluding framing bits but including
  661.                   FCS octets)."
  662.               ::= { etherHistoryEntry 5 }
  663.           etherHistoryPkts OBJECT-TYPE
  664.               SYNTAX Counter
  665.               ACCESS read-only
  666.               STATUS mandatory
  667.               DESCRIPTION
  668.                   "The number of packets (including error packets)
  669.                   received during this sampling interval."
  670.               ::= { etherHistoryEntry 6 }
  671.           etherHistoryBroadcastPkts OBJECT-TYPE
  672.               SYNTAX Counter
  673.               ACCESS read-only
  674.               STATUS mandatory
  675.               DESCRIPTION
  676.                   "The number of good packets received during this
  677.                   sampling interval that were directed to the
  678.                   broadcast address."
  679.               ::= { etherHistoryEntry 7 }
  680.           etherHistoryMulticastPkts OBJECT-TYPE
  681.               SYNTAX Counter
  682.               ACCESS read-only
  683.               STATUS mandatory
  684.               DESCRIPTION
  685.                   "The number of good packets received during this
  686.                   sampling interval that were directed to a
  687.                   multicast address.  Note that this number does not
  688.                   include packets addressed to the broadcast address."
  689.               ::= { etherHistoryEntry 8 }
  690.           etherHistoryCRCAlignErrors OBJECT-TYPE
  691.               SYNTAX Counter
  692.               ACCESS read-only
  693.               STATUS mandatory
  694.               DESCRIPTION
  695.                   "The number of packets received during this
  696.                   sampling interval that had a length (excluding
  697.                   framing bits but including FCS octets) between
  698.                   64 and 1518 octets, inclusive, but were not an
  699.                   integral number of octets in length or had a
  700.                   bad Frame Check Sequence (FCS)."
  701.               ::= { etherHistoryEntry 9 }
  702.           etherHistoryUndersizePkts OBJECT-TYPE
  703.               SYNTAX Counter
  704.               ACCESS read-only
  705.               STATUS mandatory
  706.               DESCRIPTION
  707.                   "The number of packets received during this
  708.                   interval that were less than 64 octets long
  709.                   (excluding framing bits but including FCS
  710.                   octets) and were otherwise well formed."
  711.               ::= { etherHistoryEntry 10 }
  712.           etherHistoryOversizePkts OBJECT-TYPE
  713.               SYNTAX Counter
  714.               ACCESS read-only
  715.               STATUS mandatory
  716.               DESCRIPTION
  717.                   "The number of packets received during this
  718.                   interval that were longer than 1518 octets
  719.                   (excluding framing bits but including FCS
  720.                   octets) but were otherwise well formed."
  721.               ::= { etherHistoryEntry 11 }
  722.           etherHistoryFragments OBJECT-TYPE
  723.               SYNTAX Counter
  724.               ACCESS read-only
  725.               STATUS mandatory
  726.               DESCRIPTION
  727.                   "The total number of packets received during this
  728.                   sampling interval that were not an integral
  729.                   number of octets in length or that
  730.                   had a bad Frame Check Sequence (FCS), and
  731.                   were less than 64 octets in length (excluding
  732.                   framing bits but including FCS octets)."
  733.               ::= { etherHistoryEntry 12 }
  734.           etherHistoryJabbers OBJECT-TYPE
  735.               SYNTAX Counter
  736.               ACCESS read-only
  737.               STATUS mandatory
  738.               DESCRIPTION
  739.                   "The number of packets received during this
  740.                   interval that were longer than 1518 octets
  741.                   (excluding framing bits but including FCS octets),
  742.                   and were not an integral number of octets in
  743.                   length or had a bad Frame Check Sequence (FCS)."
  744.               ::= { etherHistoryEntry 13 }
  745.           etherHistoryCollisions OBJECT-TYPE
  746.               SYNTAX Counter
  747.               ACCESS read-only
  748.               STATUS mandatory
  749.               DESCRIPTION
  750.                   "The best estimate of the total number of collisions
  751.                   on this Ethernet segment during this interval."
  752.               ::= { etherHistoryEntry 14 }
  753.           etherHistoryUtilization OBJECT-TYPE
  754.               SYNTAX INTEGER (0..10000)
  755.               ACCESS read-only
  756.               STATUS mandatory
  757.               DESCRIPTION
  758.                   "The best estimate of the mean physical layer
  759.                   network utilization on this interface during this
  760.                   interval, in hundredths of a percent."
  761.               ::= { etherHistoryEntry 15 }
  762.           -- The Alarm Group
  763.           -- Implementation of the Alarm group is optional.
  764.           --
  765.           -- The Alarm Group requires the implementation of the Event
  766.           -- group.
  767.           --
  768.           -- The Alarm group periodically takes statistical samples from
  769.           -- variables in the probe and compares them to thresholds
  770.           -- that have been configured.  The alarm table stores
  771.           -- configuration entries that each define a variable,
  772.           -- polling period, and threshold parameters.  If a sample is
  773.           -- found to cross the threshold values, an event is
  774.           -- generated.  Only variables that resolve to an ASN.1
  775.           -- primitive type of INTEGER (INTEGER, Counter,
  776.           -- Gauge, or TimeTicks) may be monitored in this way.
  777.           --
  778.           -- This function has a hysteresis mechanism to limit the
  779.           -- generation of events.  This mechanism generates one event
  780.           -- as a threshold is crossed in the appropriate direction.
  781.           -- No more events are generated for that threshold until the
  782.           -- opposite threshold is crossed.
  783.           --
  784.           -- In the case of a sampling a deltaValue, a probe may
  785.           -- implement this mechanism with more precision if it takes
  786.           -- a delta sample twice per period, each time comparing the
  787.           -- sum of the latest two samples to the threshold.  This
  788.           -- allows the detection of threshold crossings
  789.           -- that span the sampling boundary.  Note that this does not
  790.           -- require any special configuration of the threshold value.
  791.           -- It is suggested that probes implement this more precise
  792.           -- algorithm.
  793.           alarmTable OBJECT-TYPE
  794.               SYNTAX SEQUENCE OF AlarmEntry
  795.               ACCESS not-accessible
  796.               STATUS mandatory
  797.               DESCRIPTION
  798.                   "A list of alarm entries."
  799.               ::= { alarm 1 }
  800.           alarmEntry OBJECT-TYPE
  801.               SYNTAX AlarmEntry
  802.               ACCESS not-accessible
  803.               STATUS mandatory
  804.               DESCRIPTION
  805.                   "A list of parameters that set up a periodic checking
  806.                   for alarm conditions."
  807.               INDEX { alarmIndex }
  808.               ::= { alarmTable 1 }
  809.           AlarmEntry ::= SEQUENCE {
  810.               alarmIndex                    INTEGER (1..65535),
  811.               alarmInterval                 INTEGER,
  812.               alarmVariable                 OBJECT IDENTIFIER,
  813.               alarmSampleType               INTEGER,
  814.               alarmValue                    INTEGER,
  815.               alarmStartupAlarm             INTEGER,
  816.               alarmRisingThreshold          INTEGER,
  817.               alarmFallingThreshold         INTEGER,
  818.               alarmRisingEventIndex         INTEGER (0..65535),
  819.               alarmFallingEventIndex        INTEGER (0..65535),
  820.               alarmOwner                    OwnerString,
  821.               alarmStatus                   EntryStatus
  822.           }
  823.           alarmIndex OBJECT-TYPE
  824.               SYNTAX INTEGER (1..65535)
  825.               ACCESS read-only
  826.               STATUS mandatory
  827.               DESCRIPTION
  828.                   "An index that uniquely identifies an entry in the
  829.                   alarm table.  Each such entry defines a
  830.                   diagnostic sample at a particular interval
  831.                   for an object on the device."
  832.               ::= { alarmEntry 1 }
  833.           alarmInterval OBJECT-TYPE
  834.               SYNTAX INTEGER
  835.               ACCESS read-write
  836.               STATUS mandatory
  837.               DESCRIPTION
  838.                   "The interval in seconds over which the data is
  839.                   sampled and compared with the rising and falling
  840.                   thresholds.  When setting this variable, care
  841.                   should be given to ensure that the variable being
  842.                   monitored will not exceed 2^31 - 1 and roll
  843.                   over the alarmValue object during the interval.
  844.                   This object may not be modified if the associated
  845.                   alarmStatus object is equal to valid(1)."
  846.               ::= { alarmEntry 2 }
  847.           alarmVariable OBJECT-TYPE
  848.               SYNTAX OBJECT IDENTIFIER
  849.               ACCESS read-write
  850.               STATUS mandatory
  851.               DESCRIPTION
  852.                   "The object identifier of the particular variable to
  853.                   be sampled.  Only variables that resolve to an ASN.1
  854.                   primitive type of INTEGER (INTEGER, Counter, Gauge,
  855.                   or TimeTicks) may be sampled.
  856.                   Because SNMP access control is articulated entirely
  857.                   in terms of the contents of MIB views, no access
  858.                   control mechanism exists that can restrict the value of
  859.                   this object to identify only those objects that exist
  860.                   in a particular MIB view.  Because there is thus no
  861.                   acceptable means of restricting the read access that
  862.                   could be obtained through the alarm mechanism, the
  863.                   probe must only grant write access to this object in
  864.                   those views that have read access to all objects on
  865.                   the probe.
  866.                   During a set operation, if the supplied variable
  867.                   name is not available in the selected MIB view, a
  868.                   badValue error must be returned.  If at any time
  869.                   the variable name of an established alarmEntry is
  870.                   no longer available in the selected MIB view, the
  871.                   probe must change the status of this alarmEntry
  872.                   to invalid(4).
  873.                   This object may not be modified if the associated
  874.                   alarmStatus object is equal to valid(1)."
  875.               ::= { alarmEntry 3 }
  876.           alarmSampleType OBJECT-TYPE
  877.               SYNTAX INTEGER {
  878.                   absoluteValue(1),
  879.                   deltaValue(2)
  880.               }
  881.               ACCESS read-write
  882.               STATUS mandatory
  883.               DESCRIPTION
  884.                   "The method of sampling the selected variable and
  885.                   calculating the value to be compared against the
  886.                   thresholds.  If the value of this object is
  887.                   absoluteValue(1), the value of the selected variable
  888.                   will be compared directly with the thresholds at the
  889.                   end of the sampling interval.  If the value of this
  890.                   object is deltaValue(2), the value of the selected
  891.                   variable at the last sample will be subtracted from
  892.                   the current value, and the difference compared with
  893.                   the thresholds.
  894.                   This object may not be modified if the associated
  895.                   alarmStatus object is equal to valid(1)."
  896.               ::= { alarmEntry 4 }
  897.           alarmValue OBJECT-TYPE
  898.               SYNTAX INTEGER
  899.               ACCESS read-only
  900.               STATUS mandatory
  901.               DESCRIPTION
  902.                   "The value of the statistic during the last sampling
  903.                   period.  The value during the current sampling period
  904.                   is not made available until the period is completed."
  905.               ::= { alarmEntry 5 }
  906.           alarmStartupAlarm OBJECT-TYPE
  907.               SYNTAX INTEGER {
  908.                   risingAlarm(1),
  909.                   fallingAlarm(2),
  910.                   risingOrFallingAlarm(3)
  911.               }
  912.               ACCESS read-write
  913.               STATUS mandatory
  914.               DESCRIPTION
  915.                   "The alarm that may be sent when this entry is first
  916.                   set to valid.  If the first sample after this entry
  917.                   becomes valid is greater than or equal to the
  918.                   risingThreshold and alarmStartupAlarm is equal to
  919.                   risingAlarm(1) or risingOrFallingAlarm(3), then a
  920.                   single rising alarm will be generated.  If the first
  921.                   sample after this entry becomes valid is less than
  922.                   or equal to the fallingThreshold and
  923.                   alarmStartupAlarm is equal to fallingAlarm(2) or
  924.                   risingOrFallingAlarm(3), then a single falling
  925.                   alarm will be generated.
  926.                   This object may not be modified if the associated
  927.                   alarmStatus object is equal to valid(1)."
  928.               ::= { alarmEntry 6 }
  929.           alarmRisingThreshold OBJECT-TYPE
  930.               SYNTAX INTEGER
  931.               ACCESS read-write
  932.               STATUS mandatory
  933.               DESCRIPTION
  934.                   "A threshold for the sampled statistic.  When the
  935.                   current sampled value is greater than or equal to
  936.                   this threshold, and the value at the last sampling
  937.                   interval was less than this threshold, a single
  938.                   event will be generated.
  939.                   A single event will also be generated if the first
  940.                   sample after this entry becomes valid is greater
  941.                   than or equal to this threshold and the associated
  942.                   alarmStartupAlarm is equal to risingAlarm(1) or
  943.                   risingOrFallingAlarm(3).
  944.                   After a rising event is generated, another such event
  945.                   will not be generated until the sampled value
  946.                   falls below this threshold and reaches the
  947.                   alarmFallingThreshold.
  948.                   This object may not be modified if the associated
  949.                   alarmStatus object is equal to valid(1)."
  950.               ::= { alarmEntry 7 }
  951.           alarmFallingThreshold OBJECT-TYPE
  952.               SYNTAX INTEGER
  953.               ACCESS read-write
  954.               STATUS mandatory
  955.               DESCRIPTION
  956.                   "A threshold for the sampled statistic.  When the
  957.                   current sampled value is less than or equal to
  958.                   this threshold, and the value at the last sampling
  959.                   interval was greater than this threshold, a single
  960.                   event will be generated.
  961.                   A single event will also be generated if the first
  962.                   sample after this entry becomes valid is less than or
  963.                   equal to this threshold and the associated
  964.                   alarmStartupAlarm is equal to fallingAlarm(2) or
  965.                   risingOrFallingAlarm(3).
  966.                   After a falling event is generated, another such event
  967.                   will not be generated until the sampled value
  968.                   rises above this threshold and reaches the
  969.                   alarmRisingThreshold.
  970.                   This object may not be modified if the associated
  971.                   alarmStatus object is equal to valid(1)."
  972.               ::= { alarmEntry 8 }
  973.           alarmRisingEventIndex OBJECT-TYPE
  974.               SYNTAX INTEGER (0..65535)
  975.               ACCESS read-write
  976.               STATUS mandatory
  977.               DESCRIPTION
  978.                   "The index of the eventEntry that is
  979.                   used when a rising threshold is crossed.  The
  980.                   eventEntry identified by a particular value of
  981.                   this index is the same as identified by the same value
  982.                   of the eventIndex object.  If there is no
  983.                   corresponding entry in the eventTable, then
  984.                   no association exists.  In particular, if this value
  985.                   is zero, no associated event will be generated, as
  986.                   zero is not a valid event index.
  987.                   This object may not be modified if the associated
  988.                   alarmStatus object is equal to valid(1)."
  989.               ::= { alarmEntry 9 }
  990.           alarmFallingEventIndex OBJECT-TYPE
  991.               SYNTAX INTEGER (0..65535)
  992.               ACCESS read-write
  993.               STATUS mandatory
  994.               DESCRIPTION
  995.                   "The index of the eventEntry that is
  996.                   used when a falling threshold is crossed.  The
  997.                   eventEntry identified by a particular value of
  998.                   this index is the same as identified by the same value
  999.                   of the eventIndex object.  If there is no
  1000.                   corresponding entry in the eventTable, then
  1001.                   no association exists.  In particular, if this value
  1002.                   is zero, no associated event will be generated, as
  1003.                   zero is not a valid event index.
  1004.                   This object may not be modified if the associated
  1005.                   alarmStatus object is equal to valid(1)."
  1006.               ::= { alarmEntry 10 }
  1007.           alarmOwner OBJECT-TYPE
  1008.               SYNTAX OwnerString
  1009.               ACCESS read-write
  1010.               STATUS mandatory
  1011.               DESCRIPTION
  1012.                   "The entity that configured this entry and is
  1013.                   therefore using the resources assigned to it."
  1014.               ::= { alarmEntry 11 }
  1015.           alarmStatus OBJECT-TYPE
  1016.               SYNTAX EntryStatus
  1017.               ACCESS read-write
  1018.               STATUS mandatory
  1019.               DESCRIPTION
  1020.                   "The status of this alarm entry."
  1021.               ::= { alarmEntry 12 }
  1022.           -- The Host Group
  1023.           -- Implementation of the Host group is optional.
  1024.           --
  1025.           -- The host group discovers new hosts on the network by
  1026.           -- keeping a list of source and destination MAC Addresses seen
  1027.           -- in good packets.  For each of these addresses, the host
  1028.           -- group keeps a set of statistics.  The hostControlTable
  1029.           -- controls which interfaces this function is performed on,
  1030.           -- and contains some information about the process.  On
  1031.           -- behalf of each hostControlEntry, data is collected on an
  1032.           -- interface and placed both the hostTable and the
  1033.           -- hostTimeTable.  If the monitoring device finds itself
  1034.           -- short of resources, it may delete entries as needed.  It
  1035.           -- is suggested that the device delete the least recently
  1036.           -- used entries first.
  1037.           -- The hostTable contains entries for each address
  1038.           -- discovered on a particular interface.  Each entry
  1039.           -- contains statistical data about that host.  This table
  1040.           -- is indexed by the MAC address of the host, through
  1041.           -- which a random access may be achieved.
  1042.           -- The hostTimeTable contains data in the same format as the
  1043.           -- hostTable, and must contain the same set of hosts, but is
  1044.           -- indexed using hostTimeCreationOrder rather than hostAddress.
  1045.           -- The hostTimeCreationOrder is an integer which reflects
  1046.           -- the relative order in which a particular entry was
  1047.           -- discovered and thus inserted into the table.  As this
  1048.           -- order, and thus index, is among those entries currently
  1049.           -- in the table, the index for a particular entry may change
  1050.           -- if an (earlier) entry is deleted.  Thus the association
  1051.           -- between hostTimeCreationOrder and hostTimeEntry may be
  1052.           -- broken at any time.
  1053.           -- The hostTimeTable has two important uses.  The first is the
  1054.           -- fast download of this potentially large table.  Because the
  1055.           -- index of this table runs from 1 to the size of the table,
  1056.           -- inclusive, its values are predictable.  This allows very
  1057.           -- efficient packing of variables into SNMP PDU's and allows
  1058.           -- a table transfer to have multiple packets outstanding.
  1059.           -- These benefits increase transfer rates tremendously.
  1060.           -- The second use of the hostTimeTable is the efficient
  1061.           -- discovery by the management station of new entries added
  1062.           -- to the table.  After the management station has
  1063.           -- downloaded the entire table, it knows that new entries
  1064.           -- will be added immediately after the end of the current
  1065.           -- table.  It can thus detect new entries there
  1066.           -- and retrieve them easily.
  1067.           -- Because the association between hostTimeCreationOrder and
  1068.           -- hostTimeEntry may be broken at any time, the management
  1069.           -- station must monitor the related hostControlLastDeleteTime
  1070.           -- object.  When the management station thus detects a deletion,
  1071.           -- it must assume that any such associations have been broken,
  1072.           -- and invalidate any it has stored locally.  This includes
  1073.           -- restarting any download of the hostTimeTable that may have
  1074.           -- been in progress, as well as rediscovering the end of the
  1075.           -- hostTimeTable so that it may detect new entries.  If the
  1076.           -- management station does not detect the broken association,
  1077.           -- it may continue to refer to a particular host by its
  1078.           -- creationOrder while unwittingly retrieving the data
  1079.           -- associated with another host entirely.  If this happens
  1080.           -- while downloading the host table, the management station
  1081.           -- may fail to download all of the entries in the table.
  1082.           hostControlTable OBJECT-TYPE
  1083.               SYNTAX SEQUENCE OF HostControlEntry
  1084.               ACCESS not-accessible
  1085.               STATUS mandatory
  1086.               DESCRIPTION
  1087.                   "A list of host table control entries."
  1088.               ::= { hosts 1 }
  1089.           hostControlEntry OBJECT-TYPE
  1090.               SYNTAX HostControlEntry
  1091.               ACCESS not-accessible
  1092.               STATUS mandatory
  1093.               DESCRIPTION
  1094.                   "A list of parameters that set up the discovery of
  1095.                   hosts on a particular interface and the collection
  1096.                   of statistics about these hosts."
  1097.               INDEX { hostControlIndex }
  1098.               ::= { hostControlTable 1 }
  1099.           HostControlEntry ::= SEQUENCE {
  1100.               hostControlIndex            INTEGER (1..65535),
  1101.               hostControlDataSource       OBJECT IDENTIFIER,
  1102.               hostControlTableSize        INTEGER,
  1103.               hostControlLastDeleteTime   TimeTicks,
  1104.               hostControlOwner            OwnerString,
  1105.               hostControlStatus           EntryStatus
  1106.           }
  1107.           hostControlIndex OBJECT-TYPE
  1108.               SYNTAX INTEGER (1..65535)
  1109.               ACCESS read-only
  1110.               STATUS mandatory
  1111.               DESCRIPTION
  1112.                   "An index that uniquely identifies an entry in the
  1113.                   hostControl table.  Each such entry defines
  1114.                   a function that discovers hosts on a particular
  1115.                   interface and places statistics about them in the
  1116.                   hostTable and the hostTimeTable on behalf of this
  1117.                   hostControlEntry."
  1118.               ::= { hostControlEntry 1 }
  1119.           hostControlDataSource OBJECT-TYPE
  1120.               SYNTAX OBJECT IDENTIFIER
  1121.               ACCESS read-write
  1122.               STATUS mandatory
  1123.               DESCRIPTION
  1124.                   "This object identifies the source of the data for
  1125.                   this instance of the host function.  This source
  1126.                   can be any interface on this device.  In order
  1127.                   to identify a particular interface, this object shall
  1128.                   identify the instance of the ifIndex object, defined
  1129.                   in [4,6], for the desired interface.  For example,
  1130.                   if an entry were to receive data from interface #1,
  1131.                   this object would be set to ifIndex.1.
  1132.                   The statistics in this group reflect all packets
  1133.                   on the local network segment attached to the
  1134.                   identified interface.
  1135.                   This object may not be modified if the associated
  1136.                   hostControlStatus object is equal to valid(1)."
  1137.               ::= { hostControlEntry 2 }
  1138.           hostControlTableSize OBJECT-TYPE
  1139.               SYNTAX INTEGER
  1140.               ACCESS read-only
  1141.               STATUS mandatory
  1142.               DESCRIPTION
  1143.                   "The number of hostEntries in the hostTable and the
  1144.                   hostTimeTable associated with this hostControlEntry."
  1145.               ::= { hostControlEntry 3 }
  1146.           hostControlLastDeleteTime OBJECT-TYPE
  1147.               SYNTAX TimeTicks
  1148.               ACCESS read-only
  1149.               STATUS mandatory
  1150.               DESCRIPTION
  1151.                   "The value of sysUpTime when the last entry
  1152.                   was deleted from the portion of the hostTable
  1153.                   associated with this hostControlEntry.  If no
  1154.                   deletions have occurred, this value shall be zero."
  1155.               ::= { hostControlEntry 4 }
  1156.           hostControlOwner OBJECT-TYPE
  1157.               SYNTAX OwnerString
  1158.               ACCESS read-write
  1159.               STATUS mandatory
  1160.               DESCRIPTION
  1161.                   "The entity that configured this entry and is
  1162.                   therefore using the resources assigned to it."
  1163.               ::= { hostControlEntry 5 }
  1164.           hostControlStatus OBJECT-TYPE
  1165.               SYNTAX EntryStatus
  1166.               ACCESS read-write
  1167.               STATUS mandatory
  1168.               DESCRIPTION
  1169.                   "The status of this hostControl entry.
  1170.                   If this object is not equal to valid(1), all
  1171.                   associated entries in the hostTable,
  1172.                   hostTimeTable, and the hostTopNTable shall be
  1173.                   deleted by the agent."
  1174.               ::= { hostControlEntry 6 }
  1175.           hostTable OBJECT-TYPE
  1176.               SYNTAX SEQUENCE OF HostEntry
  1177.               ACCESS not-accessible
  1178.               STATUS mandatory
  1179.               DESCRIPTION
  1180.                   "A list of host entries."
  1181.               ::= { hosts 2 }
  1182.           hostEntry OBJECT-TYPE
  1183.               SYNTAX HostEntry
  1184.               ACCESS not-accessible
  1185.               STATUS mandatory
  1186.               DESCRIPTION
  1187.                   "A collection of statistics for a particular host
  1188.                   that has been discovered on an interface of this
  1189.                   device."
  1190.               INDEX { hostIndex, hostAddress }
  1191.               ::= { hostTable 1 }
  1192.           HostEntry ::= SEQUENCE {
  1193.               hostAddress             OCTET STRING,
  1194.               hostCreationOrder       INTEGER (1..65535),
  1195.               hostIndex               INTEGER (1..65535),
  1196.               hostInPkts              Counter,
  1197.               hostOutPkts             Counter,
  1198.               hostInOctets            Counter,
  1199.               hostOutOctets           Counter,
  1200.               hostOutErrors           Counter,
  1201.               hostOutBroadcastPkts    Counter,
  1202.               hostOutMulticastPkts    Counter
  1203.           }
  1204.           hostAddress OBJECT-TYPE
  1205.               SYNTAX OCTET STRING
  1206.               ACCESS read-only
  1207.               STATUS mandatory
  1208.               DESCRIPTION
  1209.                   "The physical address of this host."
  1210.               ::= { hostEntry 1 }
  1211.           hostCreationOrder OBJECT-TYPE
  1212.               SYNTAX INTEGER (1..65535)
  1213.               ACCESS read-only
  1214.               STATUS mandatory
  1215.               DESCRIPTION
  1216.                   "An index that defines the relative ordering of
  1217.                   the creation time of hosts captured for a
  1218.                   particular hostControlEntry.  This index shall
  1219.                   be between 1 and N, where N is the value of
  1220.                   the associated hostControlTableSize.  The ordering
  1221.                   of the indexes is based on the order of each entry's
  1222.                   insertion into the table, in which entries added
  1223.                   earlier have a lower index value than entries added
  1224.                   later.
  1225.                   It is important to note that the order for a
  1226.                   particular entry may change as an (earlier) entry
  1227.                   is deleted from the table.  Because this order may
  1228.                   change, management stations should make use of the
  1229.                   hostControlLastDeleteTime variable in the
  1230.                   hostControlEntry associated with the relevant
  1231.                   portion of the hostTable.  By observing
  1232.                   this variable, the management station may detect
  1233.                   the circumstances where a previous association
  1234.                   between a value of hostCreationOrder
  1235.                   and a hostEntry may no longer hold."
  1236.               ::= { hostEntry 2 }
  1237.           hostIndex OBJECT-TYPE
  1238.               SYNTAX INTEGER (1..65535)
  1239.               ACCESS read-only
  1240.               STATUS mandatory
  1241.               DESCRIPTION
  1242.                   "The set of collected host statistics of which
  1243.                   this entry is a part.  The set of hosts
  1244.                   identified by a particular value of this
  1245.                   index is associated with the hostControlEntry
  1246.                   as identified by the same value of hostControlIndex."
  1247.               ::= { hostEntry 3 }
  1248.           hostInPkts OBJECT-TYPE
  1249.               SYNTAX Counter
  1250.               ACCESS read-only
  1251.               STATUS mandatory
  1252.               DESCRIPTION
  1253.                   "The number of packets without errors transmitted to
  1254.                   this address since it was added to the hostTable."
  1255.               ::= { hostEntry 4 }
  1256.           hostOutPkts OBJECT-TYPE
  1257.               SYNTAX Counter
  1258.               ACCESS read-only
  1259.               STATUS mandatory
  1260.               DESCRIPTION
  1261.                   "The number of packets including errors transmitted
  1262.                   by this address since it was added to the hostTable."
  1263.               ::= { hostEntry 5 }
  1264.           hostInOctets OBJECT-TYPE
  1265.               SYNTAX Counter
  1266.               ACCESS read-only
  1267.               STATUS mandatory
  1268.               DESCRIPTION
  1269.                   "The number of octets transmitted to this address
  1270.                   since it was added to the hostTable (excluding
  1271.                   framing bits but including FCS octets), except for
  1272.                   those octets in packets that contained errors."
  1273.               ::= { hostEntry 6 }
  1274.           hostOutOctets OBJECT-TYPE
  1275.               SYNTAX Counter
  1276.               ACCESS read-only
  1277.               STATUS mandatory
  1278.               DESCRIPTION
  1279.                   "The number of octets transmitted by this address
  1280.                   since it was added to the hostTable (excluding
  1281.                   framing bits but including FCS octets), including
  1282.                   those octets in packets that contained errors."
  1283.               ::= { hostEntry 7 }
  1284.           hostOutErrors OBJECT-TYPE
  1285.               SYNTAX Counter
  1286.               ACCESS read-only
  1287.               STATUS mandatory
  1288.               DESCRIPTION
  1289.                   "The number of error packets transmitted by this
  1290.                   address since this host was added to the hostTable."
  1291.               ::= { hostEntry 8 }
  1292.           hostOutBroadcastPkts OBJECT-TYPE
  1293.               SYNTAX Counter
  1294.               ACCESS read-only
  1295.               STATUS mandatory
  1296.               DESCRIPTION
  1297.                   "The number of good packets transmitted by this
  1298.                   address that were directed to the broadcast address
  1299.                   since this host was added to the hostTable."
  1300.               ::= { hostEntry 9 }
  1301.           hostOutMulticastPkts OBJECT-TYPE
  1302.               SYNTAX Counter
  1303.               ACCESS read-only
  1304.               STATUS mandatory
  1305.               DESCRIPTION
  1306.                   "The number of good packets transmitted by this
  1307.                   address that were directed to a multicast address
  1308.                   since this host was added to the hostTable.
  1309.                   Note that this number does not include packets
  1310.                   directed to the broadcast address."
  1311.               ::= { hostEntry 10 }
  1312.           -- host Time Table
  1313.           hostTimeTable OBJECT-TYPE
  1314.               SYNTAX SEQUENCE OF HostTimeEntry
  1315.               ACCESS not-accessible
  1316.               STATUS mandatory
  1317.               DESCRIPTION
  1318.                   "A list of time-ordered host table entries."
  1319.               ::= { hosts 3 }
  1320.           hostTimeEntry OBJECT-TYPE
  1321.               SYNTAX HostTimeEntry
  1322.               ACCESS not-accessible
  1323.               STATUS mandatory
  1324.               DESCRIPTION
  1325.                   "A collection of statistics for a particular host
  1326.                   that has been discovered on an interface of this
  1327.                   device.  This collection includes the relative
  1328.                   ordering of the creation time of this object."
  1329.               INDEX { hostTimeIndex, hostTimeCreationOrder }
  1330.               ::= { hostTimeTable 1 }
  1331.           HostTimeEntry ::= SEQUENCE {
  1332.               hostTimeAddress              OCTET STRING,
  1333.               hostTimeCreationOrder        INTEGER (1..65535),
  1334.               hostTimeIndex                INTEGER (1..65535),
  1335.               hostTimeInPkts               Counter,
  1336.               hostTimeOutPkts              Counter,
  1337.               hostTimeInOctets             Counter,
  1338.               hostTimeOutOctets            Counter,
  1339.               hostTimeOutErrors            Counter,
  1340.               hostTimeOutBroadcastPkts     Counter,
  1341.               hostTimeOutMulticastPkts     Counter
  1342.           }
  1343.           hostTimeAddress OBJECT-TYPE
  1344.               SYNTAX OCTET STRING
  1345.               ACCESS read-only
  1346.               STATUS mandatory
  1347.               DESCRIPTION
  1348.                   "The physical address of this host."
  1349.               ::= { hostTimeEntry 1 }
  1350.           hostTimeCreationOrder OBJECT-TYPE
  1351.               SYNTAX INTEGER (1..65535)
  1352.               ACCESS read-only
  1353.               STATUS mandatory
  1354.               DESCRIPTION
  1355.                   "An index that uniquely identifies an entry in
  1356.                   the hostTime table among those entries associated
  1357.                   with the same hostControlEntry.  This index shall
  1358.                   be between 1 and N, where N is the value of
  1359.                   the associated hostControlTableSize.  The ordering
  1360.                   of the indexes is based on the order of each entry's
  1361.                   insertion into the table, in which entries added
  1362.                   earlier have a lower index value than entries added
  1363.                   later.  Thus the management station has the ability
  1364.                   to learn of new entries added to this table without
  1365.                   downloading the entire table.
  1366.                   It is important to note that the index for a
  1367.                   particular entry may change as an (earlier) entry
  1368.                   is deleted from the table.  Because this order may
  1369.                   change, management stations should make use of the
  1370.                   hostControlLastDeleteTime variable in the
  1371.                   hostControlEntry associated with the relevant
  1372.                   portion of the hostTimeTable.  By observing
  1373.                   this variable, the management station may detect
  1374.                   the circumstances where a download of the table
  1375.                   may have missed entries, and where a previous
  1376.                   association between a value of hostTimeCreationOrder
  1377.                   and a hostTimeEntry may no longer hold."
  1378.               ::= { hostTimeEntry 2 }
  1379.           hostTimeIndex OBJECT-TYPE
  1380.               SYNTAX INTEGER (1..65535)
  1381.               ACCESS read-only
  1382.               STATUS mandatory
  1383.               DESCRIPTION
  1384.                   "The set of collected host statistics of which
  1385.                   this entry is a part.  The set of hosts
  1386.                   identified by a particular value of this
  1387.                   index is associated with the hostControlEntry
  1388.                   as identified by the same value of hostControlIndex."
  1389.               ::= { hostTimeEntry 3 }
  1390.           hostTimeInPkts OBJECT-TYPE
  1391.               SYNTAX Counter
  1392.               ACCESS read-only
  1393.               STATUS mandatory
  1394.               DESCRIPTION
  1395.                   "The number of packets without errors transmitted to
  1396.                   this address since it was added to the hostTimeTable."
  1397.               ::= { hostTimeEntry 4 }
  1398.           hostTimeOutPkts OBJECT-TYPE
  1399.               SYNTAX Counter
  1400.               ACCESS read-only
  1401.               STATUS mandatory
  1402.               DESCRIPTION
  1403.                   "The number of packets including errors transmitted
  1404.                   by this address since it was added to the
  1405.                   hostTimeTable."
  1406.               ::= { hostTimeEntry 5 }
  1407.           hostTimeInOctets OBJECT-TYPE
  1408.               SYNTAX Counter
  1409.               ACCESS read-only
  1410.               STATUS mandatory
  1411.               DESCRIPTION
  1412.                   "The number of octets transmitted to this address
  1413.                   since it was added to the hostTimeTable (excluding
  1414.                   framing bits but including FCS octets), except for
  1415.                   those octets in packets that contained errors."
  1416.               ::= { hostTimeEntry 6 }
  1417.           hostTimeOutOctets OBJECT-TYPE
  1418.               SYNTAX Counter
  1419.               ACCESS read-only
  1420.               STATUS mandatory
  1421.               DESCRIPTION
  1422.                   "The number of octets transmitted by this address since
  1423.                   it was added to the hostTimeTable (excluding framing
  1424.                   bits but including FCS octets), including those
  1425.                   octets in packets that contained errors."
  1426.               ::= { hostTimeEntry 7 }
  1427.           hostTimeOutErrors OBJECT-TYPE
  1428.               SYNTAX Counter
  1429.               ACCESS read-only
  1430.               STATUS mandatory
  1431.               DESCRIPTION
  1432.                   "The number of error packets transmitted by this
  1433.                   address since this host was added to the
  1434.                   hostTimeTable."
  1435.               ::= { hostTimeEntry 8 }
  1436.           hostTimeOutBroadcastPkts OBJECT-TYPE
  1437.               SYNTAX Counter
  1438.               ACCESS read-only
  1439.               STATUS mandatory
  1440.               DESCRIPTION
  1441.                   "The number of good packets transmitted by this
  1442.                   address that were directed to the broadcast address
  1443.                   since this host was added to the hostTimeTable."
  1444.               ::= { hostTimeEntry 9 }
  1445.           hostTimeOutMulticastPkts OBJECT-TYPE
  1446.               SYNTAX Counter
  1447.               ACCESS read-only
  1448.               STATUS mandatory
  1449.               DESCRIPTION
  1450.                   "The number of good packets transmitted by this
  1451.                   address that were directed to a multicast address
  1452.                   since this host was added to the hostTimeTable.
  1453.                   Note that this number does not include packets
  1454.                   directed to the broadcast address."
  1455.               ::= { hostTimeEntry 10 }
  1456.           -- The Host Top "N" Group
  1457.           -- Implementation of the Host Top N group is optional.
  1458.           --
  1459.           -- The Host Top N group requires the implementation of the
  1460.           -- host group.
  1461.           --
  1462.           -- The Host Top N group is used to prepare reports that
  1463.           -- describe the hosts that top a list ordered by one of
  1464.           -- their statistics.  The available statistics are samples
  1465.           -- of one of their base statistics, over an interval
  1466.           -- specified by the management station.  Thus, these
  1467.           -- statistics are rate based.  The management
  1468.           -- station also selects how many such hosts are reported.
  1469.           -- The hostTopNControlTable is used to initiate the generation
  1470.           -- of such a report.  The management station may select the
  1471.           -- parameters of such a report, such as which interface,
  1472.           -- which statistic, how many hosts, and the start and stop
  1473.           -- times of the sampling.  When the report is prepared,
  1474.           -- entries are created in the hostTopNTable associated with
  1475.           -- the relevant hostTopNControlEntry.  These entries are
  1476.           -- static for each report after it has been prepared.
  1477.           hostTopNControlTable OBJECT-TYPE
  1478.               SYNTAX SEQUENCE OF HostTopNControlEntry
  1479.               ACCESS not-accessible
  1480.               STATUS mandatory
  1481.               DESCRIPTION
  1482.                   "A list of top N host control entries."
  1483.               ::= { hostTopN 1 }
  1484.           hostTopNControlEntry OBJECT-TYPE
  1485.               SYNTAX HostTopNControlEntry
  1486.               ACCESS not-accessible
  1487.               STATUS mandatory
  1488.               DESCRIPTION
  1489.                   "A set of parameters that control the creation of a
  1490.                   report of the top N hosts according to several
  1491.                   metrics."
  1492.               INDEX { hostTopNControlIndex }
  1493.               ::= { hostTopNControlTable 1 }
  1494.           HostTopNControlEntry ::= SEQUENCE {
  1495.               hostTopNControlIndex    INTEGER (1..65535),
  1496.               hostTopNHostIndex       INTEGER (1..65535),
  1497.               hostTopNRateBase        INTEGER,
  1498.               hostTopNTimeRemaining   INTEGER,
  1499.               hostTopNDuration        INTEGER,
  1500.               hostTopNRequestedSize   INTEGER,
  1501.               hostTopNGrantedSize     INTEGER,
  1502.               hostTopNStartTime       TimeTicks,
  1503.               hostTopNOwner           OwnerString,
  1504.               hostTopNStatus          EntryStatus
  1505.           }
  1506.           hostTopNControlIndex OBJECT-TYPE
  1507.               SYNTAX INTEGER (1..65535)
  1508.               ACCESS read-only
  1509.               STATUS mandatory
  1510.               DESCRIPTION
  1511.                   "An index that uniquely identifies an entry
  1512.                   in the hostTopNControl table.  Each such
  1513.                   entry defines one top N report prepared for
  1514.                   one interface."
  1515.               ::= { hostTopNControlEntry 1 }