telemetry-snmp 0.1.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +7 -0
- data/.github/workflows/rspec.yml +44 -0
- data/.github/workflows/rubocop.yml +28 -0
- data/.github/workflows/sourcehawk-scan.yml +20 -0
- data/.gitignore +14 -0
- data/.rspec +4 -0
- data/.rubocop.yml +26 -0
- data/CHANGELOG.md +4 -0
- data/CODE_OF_CONDUCT.md +75 -0
- data/CONTRIBUTING.md +54 -0
- data/Gemfile +10 -0
- data/INDIVIDUAL_CONTRIBUTOR_LICENSE.md +30 -0
- data/LICENSE +201 -0
- data/NOTICE.txt +9 -0
- data/README.md +54 -0
- data/attribution.txt +1 -0
- data/config.ru +15 -0
- data/exe/snmp_collector +55 -0
- data/lib/telemetry/snmp.rb +23 -0
- data/lib/telemetry/snmp/api.rb +55 -0
- data/lib/telemetry/snmp/auth.rb +54 -0
- data/lib/telemetry/snmp/auth/defaults.rb +41 -0
- data/lib/telemetry/snmp/client.rb +104 -0
- data/lib/telemetry/snmp/controllers/device_creds.rb +105 -0
- data/lib/telemetry/snmp/controllers/devices.rb +94 -0
- data/lib/telemetry/snmp/controllers/oid_groups.rb +71 -0
- data/lib/telemetry/snmp/controllers/oids.rb +80 -0
- data/lib/telemetry/snmp/controllers/users.rb +81 -0
- data/lib/telemetry/snmp/controllers/walks.rb +89 -0
- data/lib/telemetry/snmp/data.rb +69 -0
- data/lib/telemetry/snmp/data/default_opts.rb +73 -0
- data/lib/telemetry/snmp/data/migrations/001_device_creds.rb +19 -0
- data/lib/telemetry/snmp/data/migrations/002_create_devices_table.rb +31 -0
- data/lib/telemetry/snmp/data/migrations/003_create_oids_tables.rb +16 -0
- data/lib/telemetry/snmp/data/migrations/004_create_oid_groups.rb +15 -0
- data/lib/telemetry/snmp/data/migrations/005_create_oids_oid_groups.rb +17 -0
- data/lib/telemetry/snmp/data/migrations/006_device_to_oid_group.rb +15 -0
- data/lib/telemetry/snmp/data/migrations/007_create_users.rb +20 -0
- data/lib/telemetry/snmp/data/migrations/008_create_walks_table.rb +14 -0
- data/lib/telemetry/snmp/data/migrations/009_create_tag_name_column.rb +7 -0
- data/lib/telemetry/snmp/data/migrations/010_create_user_audit_table.rb +18 -0
- data/lib/telemetry/snmp/data/models/device.rb +11 -0
- data/lib/telemetry/snmp/data/models/device_cred.rb +11 -0
- data/lib/telemetry/snmp/data/models/oid.rb +10 -0
- data/lib/telemetry/snmp/data/models/oid_group.rb +10 -0
- data/lib/telemetry/snmp/data/models/oid_oid_groups.rb +10 -0
- data/lib/telemetry/snmp/data/models/oid_walk.rb +10 -0
- data/lib/telemetry/snmp/data/models/user.rb +10 -0
- data/lib/telemetry/snmp/data/models/user_audit_log.rb +19 -0
- data/lib/telemetry/snmp/mibs/AGENTX-MIB.txt +527 -0
- data/lib/telemetry/snmp/mibs/AIRPORT-BASESTATION-3-MIB.txt +461 -0
- data/lib/telemetry/snmp/mibs/BRIDGE-MIB.txt +1472 -0
- data/lib/telemetry/snmp/mibs/DISMAN-EVENT-MIB.txt +1882 -0
- data/lib/telemetry/snmp/mibs/DISMAN-SCHEDULE-MIB.txt +699 -0
- data/lib/telemetry/snmp/mibs/DISMAN-SCRIPT-MIB.txt +1764 -0
- data/lib/telemetry/snmp/mibs/EtherLike-MIB.txt +1862 -0
- data/lib/telemetry/snmp/mibs/HCNUM-TC.txt +118 -0
- data/lib/telemetry/snmp/mibs/HOST-RESOURCES-MIB.txt +1540 -0
- data/lib/telemetry/snmp/mibs/HOST-RESOURCES-TYPES.txt +389 -0
- data/lib/telemetry/snmp/mibs/IANA-ADDRESS-FAMILY-NUMBERS-MIB.txt +123 -0
- data/lib/telemetry/snmp/mibs/IANA-LANGUAGE-MIB.txt +123 -0
- data/lib/telemetry/snmp/mibs/IANA-RTPROTO-MIB.txt +91 -0
- data/lib/telemetry/snmp/mibs/IANAifType-MIB.txt +619 -0
- data/lib/telemetry/snmp/mibs/IF-INVERTED-STACK-MIB.txt +149 -0
- data/lib/telemetry/snmp/mibs/IF-MIB.txt +1814 -0
- data/lib/telemetry/snmp/mibs/INET-ADDRESS-MIB.txt +402 -0
- data/lib/telemetry/snmp/mibs/IP-FORWARD-MIB.txt +1277 -0
- data/lib/telemetry/snmp/mibs/IP-MIB.txt +4993 -0
- data/lib/telemetry/snmp/mibs/IPV6-FLOW-LABEL-MIB.txt +58 -0
- data/lib/telemetry/snmp/mibs/IPV6-ICMP-MIB.txt +529 -0
- data/lib/telemetry/snmp/mibs/IPV6-MIB.txt +1443 -0
- data/lib/telemetry/snmp/mibs/IPV6-TC.txt +67 -0
- data/lib/telemetry/snmp/mibs/IPV6-TCP-MIB.txt +211 -0
- data/lib/telemetry/snmp/mibs/IPV6-UDP-MIB.txt +141 -0
- data/lib/telemetry/snmp/mibs/NET-SNMP-AGENT-MIB.txt +554 -0
- data/lib/telemetry/snmp/mibs/NET-SNMP-EXAMPLES-MIB.txt +285 -0
- data/lib/telemetry/snmp/mibs/NET-SNMP-EXTEND-MIB.txt +325 -0
- data/lib/telemetry/snmp/mibs/NET-SNMP-MIB.txt +67 -0
- data/lib/telemetry/snmp/mibs/NET-SNMP-PASS-MIB.txt +124 -0
- data/lib/telemetry/snmp/mibs/NET-SNMP-TC.txt +128 -0
- data/lib/telemetry/snmp/mibs/NET-SNMP-VACM-MIB.txt +154 -0
- data/lib/telemetry/snmp/mibs/NOTIFICATION-LOG-MIB.txt +753 -0
- data/lib/telemetry/snmp/mibs/PAN-COMMON-MIB.md5 +1 -0
- data/lib/telemetry/snmp/mibs/PAN-COMMON-MIB.my +2293 -0
- data/lib/telemetry/snmp/mibs/PAN-ENTITY-EXT-MIB.md5 +1 -0
- data/lib/telemetry/snmp/mibs/PAN-ENTITY-EXT-MIB.my +293 -0
- data/lib/telemetry/snmp/mibs/PAN-GLOBAL-REG-MIB.md5 +1 -0
- data/lib/telemetry/snmp/mibs/PAN-GLOBAL-REG-MIB.my +84 -0
- data/lib/telemetry/snmp/mibs/PAN-GLOBAL-TC-MIB.md5 +1 -0
- data/lib/telemetry/snmp/mibs/PAN-GLOBAL-TC-MIB.my +68 -0
- data/lib/telemetry/snmp/mibs/PAN-LC-MIB.md5 +1 -0
- data/lib/telemetry/snmp/mibs/PAN-LC-MIB.my +204 -0
- data/lib/telemetry/snmp/mibs/PAN-PRODUCT-MIB.md5 +1 -0
- data/lib/telemetry/snmp/mibs/PAN-PRODUCT-MIB.my +305 -0
- data/lib/telemetry/snmp/mibs/PAN-TRAPS.md5 +1 -0
- data/lib/telemetry/snmp/mibs/PAN-TRAPS.my +7809 -0
- data/lib/telemetry/snmp/mibs/RFC-1215.txt +38 -0
- data/lib/telemetry/snmp/mibs/RFC1155-SMI.txt +119 -0
- data/lib/telemetry/snmp/mibs/RFC1213-MIB.txt +2613 -0
- data/lib/telemetry/snmp/mibs/RMON-MIB.txt +3980 -0
- data/lib/telemetry/snmp/mibs/SCTP-MIB.txt +1342 -0
- data/lib/telemetry/snmp/mibs/SMUX-MIB.txt +160 -0
- data/lib/telemetry/snmp/mibs/SNMP-COMMUNITY-MIB.txt +429 -0
- data/lib/telemetry/snmp/mibs/SNMP-FRAMEWORK-MIB.txt +526 -0
- data/lib/telemetry/snmp/mibs/SNMP-MPD-MIB.txt +145 -0
- data/lib/telemetry/snmp/mibs/SNMP-NOTIFICATION-MIB.txt +589 -0
- data/lib/telemetry/snmp/mibs/SNMP-PROXY-MIB.txt +294 -0
- data/lib/telemetry/snmp/mibs/SNMP-TARGET-MIB.txt +660 -0
- data/lib/telemetry/snmp/mibs/SNMP-USER-BASED-SM-MIB.txt +912 -0
- data/lib/telemetry/snmp/mibs/SNMP-USM-AES-MIB.txt +62 -0
- data/lib/telemetry/snmp/mibs/SNMP-USM-DH-OBJECTS-MIB.txt +532 -0
- data/lib/telemetry/snmp/mibs/SNMP-VIEW-BASED-ACM-MIB.txt +830 -0
- data/lib/telemetry/snmp/mibs/SNMPv2-CONF.txt +322 -0
- data/lib/telemetry/snmp/mibs/SNMPv2-MIB.txt +854 -0
- data/lib/telemetry/snmp/mibs/SNMPv2-SMI.txt +344 -0
- data/lib/telemetry/snmp/mibs/SNMPv2-TC.txt +772 -0
- data/lib/telemetry/snmp/mibs/SNMPv2-TM.txt +176 -0
- data/lib/telemetry/snmp/mibs/TCP-MIB.txt +785 -0
- data/lib/telemetry/snmp/mibs/TRANSPORT-ADDRESS-MIB.txt +421 -0
- data/lib/telemetry/snmp/mibs/TUNNEL-MIB.txt +738 -0
- data/lib/telemetry/snmp/mibs/UCD-DEMO-MIB.txt +74 -0
- data/lib/telemetry/snmp/mibs/UCD-DISKIO-MIB.txt +171 -0
- data/lib/telemetry/snmp/mibs/UCD-DLMOD-MIB.txt +124 -0
- data/lib/telemetry/snmp/mibs/UCD-IPFWACC-MIB.txt +327 -0
- data/lib/telemetry/snmp/mibs/UCD-SNMP-MIB.txt +1712 -0
- data/lib/telemetry/snmp/mibs/UDP-MIB.txt +549 -0
- data/lib/telemetry/snmp/publisher.rb +130 -0
- data/lib/telemetry/snmp/version.rb +7 -0
- data/sourcehawk.yml +4 -0
- data/telemetry-snmp.gemspec +48 -0
- metadata +456 -0
@@ -0,0 +1,149 @@
|
|
1
|
+
IF-INVERTED-STACK-MIB DEFINITIONS ::= BEGIN
|
2
|
+
|
3
|
+
IMPORTS
|
4
|
+
MODULE-IDENTITY, OBJECT-TYPE, mib-2 FROM SNMPv2-SMI
|
5
|
+
RowStatus FROM SNMPv2-TC
|
6
|
+
MODULE-COMPLIANCE, OBJECT-GROUP FROM SNMPv2-CONF
|
7
|
+
ifStackGroup2,
|
8
|
+
ifStackHigherLayer, ifStackLowerLayer FROM IF-MIB;
|
9
|
+
|
10
|
+
ifInvertedStackMIB MODULE-IDENTITY
|
11
|
+
LAST-UPDATED "200006140000Z"
|
12
|
+
ORGANIZATION "IETF Interfaces MIB Working Group"
|
13
|
+
CONTACT-INFO
|
14
|
+
" Keith McCloghrie
|
15
|
+
Cisco Systems, Inc.
|
16
|
+
170 West Tasman Drive
|
17
|
+
San Jose, CA 95134-1706
|
18
|
+
US
|
19
|
+
|
20
|
+
408-526-5260
|
21
|
+
kzm@cisco.com"
|
22
|
+
DESCRIPTION
|
23
|
+
"The MIB module which provides the Inverted Stack Table for
|
24
|
+
interface sub-layers."
|
25
|
+
REVISION "200006140000Z"
|
26
|
+
DESCRIPTION
|
27
|
+
"Initial revision, published as RFC 2864"
|
28
|
+
::= { mib-2 77 }
|
29
|
+
|
30
|
+
ifInvMIBObjects OBJECT IDENTIFIER ::= { ifInvertedStackMIB 1 }
|
31
|
+
|
32
|
+
--
|
33
|
+
-- The Inverted Interface Stack Group
|
34
|
+
--
|
35
|
+
|
36
|
+
ifInvStackTable OBJECT-TYPE
|
37
|
+
SYNTAX SEQUENCE OF IfInvStackEntry
|
38
|
+
MAX-ACCESS not-accessible
|
39
|
+
STATUS current
|
40
|
+
DESCRIPTION
|
41
|
+
"A table containing information on the relationships between
|
42
|
+
|
43
|
+
the multiple sub-layers of network interfaces. In
|
44
|
+
particular, it contains information on which sub-layers run
|
45
|
+
'underneath' which other sub-layers, where each sub-layer
|
46
|
+
corresponds to a conceptual row in the ifTable. For
|
47
|
+
example, when the sub-layer with ifIndex value x runs
|
48
|
+
underneath the sub-layer with ifIndex value y, then this
|
49
|
+
table contains:
|
50
|
+
|
51
|
+
ifInvStackStatus.x.y=active
|
52
|
+
|
53
|
+
For each ifIndex value, z, which identifies an active
|
54
|
+
interface, there are always at least two instantiated rows
|
55
|
+
in this table associated with z. For one of these rows, z
|
56
|
+
is the value of ifStackHigherLayer; for the other, z is the
|
57
|
+
value of ifStackLowerLayer. (If z is not involved in
|
58
|
+
multiplexing, then these are the only two rows associated
|
59
|
+
with z.)
|
60
|
+
|
61
|
+
For example, two rows exist even for an interface which has
|
62
|
+
no others stacked on top or below it:
|
63
|
+
|
64
|
+
ifInvStackStatus.z.0=active
|
65
|
+
ifInvStackStatus.0.z=active
|
66
|
+
|
67
|
+
This table contains exactly the same number of rows as the
|
68
|
+
ifStackTable, but the rows appear in a different order."
|
69
|
+
REFERENCE
|
70
|
+
"ifStackTable of RFC 2863"
|
71
|
+
::= { ifInvMIBObjects 1 }
|
72
|
+
|
73
|
+
ifInvStackEntry OBJECT-TYPE
|
74
|
+
SYNTAX IfInvStackEntry
|
75
|
+
MAX-ACCESS not-accessible
|
76
|
+
STATUS current
|
77
|
+
DESCRIPTION
|
78
|
+
"Information on a particular relationship between two sub-
|
79
|
+
layers, specifying that one sub-layer runs underneath the
|
80
|
+
other sub-layer. Each sub-layer corresponds to a conceptual
|
81
|
+
row in the ifTable."
|
82
|
+
INDEX { ifStackLowerLayer, ifStackHigherLayer }
|
83
|
+
::= { ifInvStackTable 1 }
|
84
|
+
|
85
|
+
IfInvStackEntry ::=
|
86
|
+
SEQUENCE {
|
87
|
+
ifInvStackStatus RowStatus
|
88
|
+
}
|
89
|
+
|
90
|
+
ifInvStackStatus OBJECT-TYPE
|
91
|
+
SYNTAX RowStatus
|
92
|
+
MAX-ACCESS read-only
|
93
|
+
STATUS current
|
94
|
+
DESCRIPTION
|
95
|
+
"The status of the relationship between two sub-layers.
|
96
|
+
|
97
|
+
An instance of this object exists for each instance of the
|
98
|
+
ifStackStatus object, and vice versa. For example, if the
|
99
|
+
variable ifStackStatus.H.L exists, then the variable
|
100
|
+
ifInvStackStatus.L.H must also exist, and vice versa. In
|
101
|
+
addition, the two variables always have the same value.
|
102
|
+
|
103
|
+
However, unlike ifStackStatus, the ifInvStackStatus object
|
104
|
+
is NOT write-able. A network management application wishing
|
105
|
+
to change a relationship between sub-layers H and L cannot
|
106
|
+
do so by modifying the value of ifInvStackStatus.L.H, but
|
107
|
+
must instead modify the value of ifStackStatus.H.L. After
|
108
|
+
the ifStackTable is modified, the change will be reflected
|
109
|
+
in this table."
|
110
|
+
::= { ifInvStackEntry 1 }
|
111
|
+
|
112
|
+
-- conformance information
|
113
|
+
|
114
|
+
ifInvConformance OBJECT IDENTIFIER ::= { ifInvMIBObjects 2 }
|
115
|
+
|
116
|
+
ifInvGroups OBJECT IDENTIFIER ::= { ifInvConformance 1 }
|
117
|
+
ifInvCompliances OBJECT IDENTIFIER ::= { ifInvConformance 2 }
|
118
|
+
|
119
|
+
-- compliance statements
|
120
|
+
|
121
|
+
ifInvCompliance MODULE-COMPLIANCE
|
122
|
+
STATUS current
|
123
|
+
DESCRIPTION
|
124
|
+
"The compliance statement for SNMP entities which provide
|
125
|
+
inverted information on the layering of network interfaces."
|
126
|
+
|
127
|
+
MODULE -- this module
|
128
|
+
MANDATORY-GROUPS { ifInvStackGroup }
|
129
|
+
|
130
|
+
OBJECT ifInvStackStatus
|
131
|
+
SYNTAX INTEGER { active(1) }
|
132
|
+
DESCRIPTION
|
133
|
+
"Support is only required for 'active'."
|
134
|
+
|
135
|
+
MODULE IF-MIB
|
136
|
+
MANDATORY-GROUPS { ifStackGroup2 }
|
137
|
+
::= { ifInvCompliances 1 }
|
138
|
+
|
139
|
+
-- units of conformance
|
140
|
+
|
141
|
+
ifInvStackGroup OBJECT-GROUP
|
142
|
+
OBJECTS { ifInvStackStatus }
|
143
|
+
STATUS current
|
144
|
+
DESCRIPTION
|
145
|
+
"A collection of objects providing inverted information on
|
146
|
+
the layering of MIB-II interfaces."
|
147
|
+
::= { ifInvGroups 1 }
|
148
|
+
|
149
|
+
END
|
@@ -0,0 +1,1814 @@
|
|
1
|
+
IF-MIB DEFINITIONS ::= BEGIN
|
2
|
+
|
3
|
+
IMPORTS
|
4
|
+
MODULE-IDENTITY, OBJECT-TYPE, Counter32, Gauge32, Counter64,
|
5
|
+
Integer32, TimeTicks, mib-2,
|
6
|
+
NOTIFICATION-TYPE FROM SNMPv2-SMI
|
7
|
+
TEXTUAL-CONVENTION, DisplayString,
|
8
|
+
PhysAddress, TruthValue, RowStatus,
|
9
|
+
TimeStamp, AutonomousType, TestAndIncr FROM SNMPv2-TC
|
10
|
+
MODULE-COMPLIANCE, OBJECT-GROUP,
|
11
|
+
NOTIFICATION-GROUP FROM SNMPv2-CONF
|
12
|
+
snmpTraps FROM SNMPv2-MIB
|
13
|
+
IANAifType FROM IANAifType-MIB;
|
14
|
+
|
15
|
+
ifMIB MODULE-IDENTITY
|
16
|
+
LAST-UPDATED "200006140000Z"
|
17
|
+
ORGANIZATION "IETF Interfaces MIB Working Group"
|
18
|
+
CONTACT-INFO
|
19
|
+
" Keith McCloghrie
|
20
|
+
Cisco Systems, Inc.
|
21
|
+
170 West Tasman Drive
|
22
|
+
San Jose, CA 95134-1706
|
23
|
+
US
|
24
|
+
|
25
|
+
408-526-5260
|
26
|
+
kzm@cisco.com"
|
27
|
+
DESCRIPTION
|
28
|
+
"The MIB module to describe generic objects for network
|
29
|
+
interface sub-layers. This MIB is an updated version of
|
30
|
+
MIB-II's ifTable, and incorporates the extensions defined in
|
31
|
+
RFC 1229."
|
32
|
+
|
33
|
+
REVISION "200006140000Z"
|
34
|
+
DESCRIPTION
|
35
|
+
"Clarifications agreed upon by the Interfaces MIB WG, and
|
36
|
+
published as RFC 2863."
|
37
|
+
REVISION "199602282155Z"
|
38
|
+
DESCRIPTION
|
39
|
+
"Revisions made by the Interfaces MIB WG, and published in
|
40
|
+
RFC 2233."
|
41
|
+
REVISION "199311082155Z"
|
42
|
+
DESCRIPTION
|
43
|
+
"Initial revision, published as part of RFC 1573."
|
44
|
+
::= { mib-2 31 }
|
45
|
+
|
46
|
+
ifMIBObjects OBJECT IDENTIFIER ::= { ifMIB 1 }
|
47
|
+
|
48
|
+
interfaces OBJECT IDENTIFIER ::= { mib-2 2 }
|
49
|
+
|
50
|
+
--
|
51
|
+
-- Textual Conventions
|
52
|
+
--
|
53
|
+
|
54
|
+
-- OwnerString has the same semantics as used in RFC 1271
|
55
|
+
|
56
|
+
OwnerString ::= TEXTUAL-CONVENTION
|
57
|
+
DISPLAY-HINT "255a"
|
58
|
+
STATUS deprecated
|
59
|
+
DESCRIPTION
|
60
|
+
"This data type is used to model an administratively
|
61
|
+
assigned name of the owner of a resource. This information
|
62
|
+
is taken from the NVT ASCII character set. It is suggested
|
63
|
+
that this name contain one or more of the following: ASCII
|
64
|
+
form of the manager station's transport address, management
|
65
|
+
station name (e.g., domain name), network management
|
66
|
+
personnel's name, location, or phone number. In some cases
|
67
|
+
the agent itself will be the owner of an entry. In these
|
68
|
+
cases, this string shall be set to a string starting with
|
69
|
+
'agent'."
|
70
|
+
SYNTAX OCTET STRING (SIZE(0..255))
|
71
|
+
|
72
|
+
-- InterfaceIndex contains the semantics of ifIndex and should be used
|
73
|
+
-- for any objects defined in other MIB modules that need these semantics.
|
74
|
+
|
75
|
+
InterfaceIndex ::= TEXTUAL-CONVENTION
|
76
|
+
DISPLAY-HINT "d"
|
77
|
+
STATUS current
|
78
|
+
DESCRIPTION
|
79
|
+
"A unique value, greater than zero, for each interface or
|
80
|
+
interface sub-layer in the managed system. It is
|
81
|
+
recommended that values are assigned contiguously starting
|
82
|
+
from 1. The value for each interface sub-layer must remain
|
83
|
+
constant at least from one re-initialization of the entity's
|
84
|
+
network management system to the next re-initialization."
|
85
|
+
SYNTAX Integer32 (1..2147483647)
|
86
|
+
|
87
|
+
InterfaceIndexOrZero ::= TEXTUAL-CONVENTION
|
88
|
+
DISPLAY-HINT "d"
|
89
|
+
STATUS current
|
90
|
+
DESCRIPTION
|
91
|
+
"This textual convention is an extension of the
|
92
|
+
InterfaceIndex convention. The latter defines a greater
|
93
|
+
than zero value used to identify an interface or interface
|
94
|
+
sub-layer in the managed system. This extension permits the
|
95
|
+
additional value of zero. the value zero is object-specific
|
96
|
+
and must therefore be defined as part of the description of
|
97
|
+
any object which uses this syntax. Examples of the usage of
|
98
|
+
zero might include situations where interface was unknown,
|
99
|
+
or when none or all interfaces need to be referenced."
|
100
|
+
SYNTAX Integer32 (0..2147483647)
|
101
|
+
|
102
|
+
ifNumber OBJECT-TYPE
|
103
|
+
SYNTAX Integer32
|
104
|
+
MAX-ACCESS read-only
|
105
|
+
STATUS current
|
106
|
+
DESCRIPTION
|
107
|
+
"The number of network interfaces (regardless of their
|
108
|
+
current state) present on this system."
|
109
|
+
::= { interfaces 1 }
|
110
|
+
|
111
|
+
ifTableLastChange OBJECT-TYPE
|
112
|
+
SYNTAX TimeTicks
|
113
|
+
MAX-ACCESS read-only
|
114
|
+
STATUS current
|
115
|
+
DESCRIPTION
|
116
|
+
"The value of sysUpTime at the time of the last creation or
|
117
|
+
deletion of an entry in the ifTable. If the number of
|
118
|
+
entries has been unchanged since the last re-initialization
|
119
|
+
of the local network management subsystem, then this object
|
120
|
+
contains a zero value."
|
121
|
+
::= { ifMIBObjects 5 }
|
122
|
+
|
123
|
+
-- the Interfaces table
|
124
|
+
|
125
|
+
-- The Interfaces table contains information on the entity's
|
126
|
+
|
127
|
+
-- interfaces. Each sub-layer below the internetwork-layer
|
128
|
+
-- of a network interface is considered to be an interface.
|
129
|
+
|
130
|
+
ifTable OBJECT-TYPE
|
131
|
+
SYNTAX SEQUENCE OF IfEntry
|
132
|
+
MAX-ACCESS not-accessible
|
133
|
+
STATUS current
|
134
|
+
DESCRIPTION
|
135
|
+
"A list of interface entries. The number of entries is
|
136
|
+
given by the value of ifNumber."
|
137
|
+
::= { interfaces 2 }
|
138
|
+
|
139
|
+
ifEntry OBJECT-TYPE
|
140
|
+
SYNTAX IfEntry
|
141
|
+
MAX-ACCESS not-accessible
|
142
|
+
STATUS current
|
143
|
+
DESCRIPTION
|
144
|
+
"An entry containing management information applicable to a
|
145
|
+
particular interface."
|
146
|
+
INDEX { ifIndex }
|
147
|
+
::= { ifTable 1 }
|
148
|
+
|
149
|
+
IfEntry ::=
|
150
|
+
SEQUENCE {
|
151
|
+
ifIndex InterfaceIndex,
|
152
|
+
ifDescr DisplayString,
|
153
|
+
ifType IANAifType,
|
154
|
+
ifMtu Integer32,
|
155
|
+
ifSpeed Gauge32,
|
156
|
+
ifPhysAddress PhysAddress,
|
157
|
+
ifAdminStatus INTEGER,
|
158
|
+
ifOperStatus INTEGER,
|
159
|
+
ifLastChange TimeTicks,
|
160
|
+
ifInOctets Counter32,
|
161
|
+
ifInUcastPkts Counter32,
|
162
|
+
ifInNUcastPkts Counter32, -- deprecated
|
163
|
+
ifInDiscards Counter32,
|
164
|
+
ifInErrors Counter32,
|
165
|
+
ifInUnknownProtos Counter32,
|
166
|
+
ifOutOctets Counter32,
|
167
|
+
ifOutUcastPkts Counter32,
|
168
|
+
ifOutNUcastPkts Counter32, -- deprecated
|
169
|
+
ifOutDiscards Counter32,
|
170
|
+
ifOutErrors Counter32,
|
171
|
+
ifOutQLen Gauge32, -- deprecated
|
172
|
+
ifSpecific OBJECT IDENTIFIER -- deprecated
|
173
|
+
}
|
174
|
+
|
175
|
+
ifIndex OBJECT-TYPE
|
176
|
+
SYNTAX InterfaceIndex
|
177
|
+
MAX-ACCESS read-only
|
178
|
+
STATUS current
|
179
|
+
DESCRIPTION
|
180
|
+
"A unique value, greater than zero, for each interface. It
|
181
|
+
is recommended that values are assigned contiguously
|
182
|
+
starting from 1. The value for each interface sub-layer
|
183
|
+
must remain constant at least from one re-initialization of
|
184
|
+
the entity's network management system to the next re-
|
185
|
+
initialization."
|
186
|
+
::= { ifEntry 1 }
|
187
|
+
|
188
|
+
ifDescr OBJECT-TYPE
|
189
|
+
SYNTAX DisplayString (SIZE (0..255))
|
190
|
+
MAX-ACCESS read-only
|
191
|
+
STATUS current
|
192
|
+
DESCRIPTION
|
193
|
+
"A textual string containing information about the
|
194
|
+
interface. This string should include the name of the
|
195
|
+
manufacturer, the product name and the version of the
|
196
|
+
interface hardware/software."
|
197
|
+
::= { ifEntry 2 }
|
198
|
+
|
199
|
+
ifType OBJECT-TYPE
|
200
|
+
SYNTAX IANAifType
|
201
|
+
MAX-ACCESS read-only
|
202
|
+
STATUS current
|
203
|
+
DESCRIPTION
|
204
|
+
"The type of interface. Additional values for ifType are
|
205
|
+
assigned by the Internet Assigned Numbers Authority (IANA),
|
206
|
+
through updating the syntax of the IANAifType textual
|
207
|
+
convention."
|
208
|
+
::= { ifEntry 3 }
|
209
|
+
|
210
|
+
ifMtu OBJECT-TYPE
|
211
|
+
SYNTAX Integer32
|
212
|
+
MAX-ACCESS read-only
|
213
|
+
STATUS current
|
214
|
+
DESCRIPTION
|
215
|
+
"The size of the largest packet which can be sent/received
|
216
|
+
on the interface, specified in octets. For interfaces that
|
217
|
+
are used for transmitting network datagrams, this is the
|
218
|
+
size of the largest network datagram that can be sent on the
|
219
|
+
interface."
|
220
|
+
::= { ifEntry 4 }
|
221
|
+
|
222
|
+
ifSpeed OBJECT-TYPE
|
223
|
+
SYNTAX Gauge32
|
224
|
+
MAX-ACCESS read-only
|
225
|
+
STATUS current
|
226
|
+
DESCRIPTION
|
227
|
+
"An estimate of the interface's current bandwidth in bits
|
228
|
+
per second. For interfaces which do not vary in bandwidth
|
229
|
+
or for those where no accurate estimation can be made, this
|
230
|
+
object should contain the nominal bandwidth. If the
|
231
|
+
bandwidth of the interface is greater than the maximum value
|
232
|
+
reportable by this object then this object should report its
|
233
|
+
maximum value (4,294,967,295) and ifHighSpeed must be used
|
234
|
+
to report the interace's speed. For a sub-layer which has
|
235
|
+
no concept of bandwidth, this object should be zero."
|
236
|
+
::= { ifEntry 5 }
|
237
|
+
|
238
|
+
ifPhysAddress OBJECT-TYPE
|
239
|
+
SYNTAX PhysAddress
|
240
|
+
MAX-ACCESS read-only
|
241
|
+
STATUS current
|
242
|
+
DESCRIPTION
|
243
|
+
"The interface's address at its protocol sub-layer. For
|
244
|
+
example, for an 802.x interface, this object normally
|
245
|
+
contains a MAC address. The interface's media-specific MIB
|
246
|
+
must define the bit and byte ordering and the format of the
|
247
|
+
value of this object. For interfaces which do not have such
|
248
|
+
an address (e.g., a serial line), this object should contain
|
249
|
+
an octet string of zero length."
|
250
|
+
::= { ifEntry 6 }
|
251
|
+
|
252
|
+
ifAdminStatus OBJECT-TYPE
|
253
|
+
SYNTAX INTEGER {
|
254
|
+
up(1), -- ready to pass packets
|
255
|
+
down(2),
|
256
|
+
testing(3) -- in some test mode
|
257
|
+
}
|
258
|
+
MAX-ACCESS read-write
|
259
|
+
STATUS current
|
260
|
+
DESCRIPTION
|
261
|
+
"The desired state of the interface. The testing(3) state
|
262
|
+
indicates that no operational packets can be passed. When a
|
263
|
+
managed system initializes, all interfaces start with
|
264
|
+
ifAdminStatus in the down(2) state. As a result of either
|
265
|
+
explicit management action or per configuration information
|
266
|
+
retained by the managed system, ifAdminStatus is then
|
267
|
+
changed to either the up(1) or testing(3) states (or remains
|
268
|
+
in the down(2) state)."
|
269
|
+
::= { ifEntry 7 }
|
270
|
+
|
271
|
+
ifOperStatus OBJECT-TYPE
|
272
|
+
SYNTAX INTEGER {
|
273
|
+
up(1), -- ready to pass packets
|
274
|
+
down(2),
|
275
|
+
testing(3), -- in some test mode
|
276
|
+
unknown(4), -- status can not be determined
|
277
|
+
-- for some reason.
|
278
|
+
dormant(5),
|
279
|
+
notPresent(6), -- some component is missing
|
280
|
+
lowerLayerDown(7) -- down due to state of
|
281
|
+
-- lower-layer interface(s)
|
282
|
+
}
|
283
|
+
MAX-ACCESS read-only
|
284
|
+
STATUS current
|
285
|
+
DESCRIPTION
|
286
|
+
"The current operational state of the interface. The
|
287
|
+
testing(3) state indicates that no operational packets can
|
288
|
+
be passed. If ifAdminStatus is down(2) then ifOperStatus
|
289
|
+
should be down(2). If ifAdminStatus is changed to up(1)
|
290
|
+
then ifOperStatus should change to up(1) if the interface is
|
291
|
+
ready to transmit and receive network traffic; it should
|
292
|
+
change to dormant(5) if the interface is waiting for
|
293
|
+
external actions (such as a serial line waiting for an
|
294
|
+
incoming connection); it should remain in the down(2) state
|
295
|
+
if and only if there is a fault that prevents it from going
|
296
|
+
to the up(1) state; it should remain in the notPresent(6)
|
297
|
+
state if the interface has missing (typically, hardware)
|
298
|
+
components."
|
299
|
+
::= { ifEntry 8 }
|
300
|
+
|
301
|
+
ifLastChange OBJECT-TYPE
|
302
|
+
SYNTAX TimeTicks
|
303
|
+
MAX-ACCESS read-only
|
304
|
+
STATUS current
|
305
|
+
DESCRIPTION
|
306
|
+
"The value of sysUpTime at the time the interface entered
|
307
|
+
its current operational state. If the current state was
|
308
|
+
entered prior to the last re-initialization of the local
|
309
|
+
network management subsystem, then this object contains a
|
310
|
+
zero value."
|
311
|
+
::= { ifEntry 9 }
|
312
|
+
|
313
|
+
ifInOctets OBJECT-TYPE
|
314
|
+
SYNTAX Counter32
|
315
|
+
MAX-ACCESS read-only
|
316
|
+
STATUS current
|
317
|
+
DESCRIPTION
|
318
|
+
"The total number of octets received on the interface,
|
319
|
+
including framing characters.
|
320
|
+
|
321
|
+
Discontinuities in the value of this counter can occur at
|
322
|
+
re-initialization of the management system, and at other
|
323
|
+
times as indicated by the value of
|
324
|
+
ifCounterDiscontinuityTime."
|
325
|
+
::= { ifEntry 10 }
|
326
|
+
|
327
|
+
ifInUcastPkts OBJECT-TYPE
|
328
|
+
SYNTAX Counter32
|
329
|
+
MAX-ACCESS read-only
|
330
|
+
STATUS current
|
331
|
+
DESCRIPTION
|
332
|
+
"The number of packets, delivered by this sub-layer to a
|
333
|
+
higher (sub-)layer, which were not addressed to a multicast
|
334
|
+
or broadcast address at this sub-layer.
|
335
|
+
|
336
|
+
Discontinuities in the value of this counter can occur at
|
337
|
+
re-initialization of the management system, and at other
|
338
|
+
times as indicated by the value of
|
339
|
+
ifCounterDiscontinuityTime."
|
340
|
+
::= { ifEntry 11 }
|
341
|
+
|
342
|
+
ifInNUcastPkts OBJECT-TYPE
|
343
|
+
SYNTAX Counter32
|
344
|
+
MAX-ACCESS read-only
|
345
|
+
STATUS deprecated
|
346
|
+
DESCRIPTION
|
347
|
+
"The number of packets, delivered by this sub-layer to a
|
348
|
+
higher (sub-)layer, which were addressed to a multicast or
|
349
|
+
broadcast address at this sub-layer.
|
350
|
+
|
351
|
+
Discontinuities in the value of this counter can occur at
|
352
|
+
re-initialization of the management system, and at other
|
353
|
+
times as indicated by the value of
|
354
|
+
ifCounterDiscontinuityTime.
|
355
|
+
|
356
|
+
This object is deprecated in favour of ifInMulticastPkts and
|
357
|
+
ifInBroadcastPkts."
|
358
|
+
::= { ifEntry 12 }
|
359
|
+
|
360
|
+
ifInDiscards OBJECT-TYPE
|
361
|
+
SYNTAX Counter32
|
362
|
+
MAX-ACCESS read-only
|
363
|
+
STATUS current
|
364
|
+
DESCRIPTION
|
365
|
+
"The number of inbound packets which were chosen to be
|
366
|
+
discarded even though no errors had been detected to prevent
|
367
|
+
|
368
|
+
their being deliverable to a higher-layer protocol. One
|
369
|
+
possible reason for discarding such a packet could be to
|
370
|
+
free up buffer space.
|
371
|
+
|
372
|
+
Discontinuities in the value of this counter can occur at
|
373
|
+
re-initialization of the management system, and at other
|
374
|
+
times as indicated by the value of
|
375
|
+
ifCounterDiscontinuityTime."
|
376
|
+
::= { ifEntry 13 }
|
377
|
+
|
378
|
+
ifInErrors OBJECT-TYPE
|
379
|
+
SYNTAX Counter32
|
380
|
+
MAX-ACCESS read-only
|
381
|
+
STATUS current
|
382
|
+
DESCRIPTION
|
383
|
+
"For packet-oriented interfaces, the number of inbound
|
384
|
+
packets that contained errors preventing them from being
|
385
|
+
deliverable to a higher-layer protocol. For character-
|
386
|
+
oriented or fixed-length interfaces, the number of inbound
|
387
|
+
transmission units that contained errors preventing them
|
388
|
+
from being deliverable to a higher-layer protocol.
|
389
|
+
|
390
|
+
Discontinuities in the value of this counter can occur at
|
391
|
+
re-initialization of the management system, and at other
|
392
|
+
times as indicated by the value of
|
393
|
+
ifCounterDiscontinuityTime."
|
394
|
+
::= { ifEntry 14 }
|
395
|
+
|
396
|
+
ifInUnknownProtos OBJECT-TYPE
|
397
|
+
SYNTAX Counter32
|
398
|
+
MAX-ACCESS read-only
|
399
|
+
STATUS current
|
400
|
+
DESCRIPTION
|
401
|
+
"For packet-oriented interfaces, the number of packets
|
402
|
+
received via the interface which were discarded because of
|
403
|
+
an unknown or unsupported protocol. For character-oriented
|
404
|
+
or fixed-length interfaces that support protocol
|
405
|
+
multiplexing the number of transmission units received via
|
406
|
+
the interface which were discarded because of an unknown or
|
407
|
+
unsupported protocol. For any interface that does not
|
408
|
+
support protocol multiplexing, this counter will always be
|
409
|
+
0.
|
410
|
+
|
411
|
+
Discontinuities in the value of this counter can occur at
|
412
|
+
re-initialization of the management system, and at other
|
413
|
+
times as indicated by the value of
|
414
|
+
ifCounterDiscontinuityTime."
|
415
|
+
::= { ifEntry 15 }
|
416
|
+
|
417
|
+
ifOutOctets OBJECT-TYPE
|
418
|
+
SYNTAX Counter32
|
419
|
+
MAX-ACCESS read-only
|
420
|
+
STATUS current
|
421
|
+
DESCRIPTION
|
422
|
+
"The total number of octets transmitted out of the
|
423
|
+
interface, including framing characters.
|
424
|
+
|
425
|
+
Discontinuities in the value of this counter can occur at
|
426
|
+
re-initialization of the management system, and at other
|
427
|
+
times as indicated by the value of
|
428
|
+
ifCounterDiscontinuityTime."
|
429
|
+
::= { ifEntry 16 }
|
430
|
+
|
431
|
+
ifOutUcastPkts OBJECT-TYPE
|
432
|
+
SYNTAX Counter32
|
433
|
+
MAX-ACCESS read-only
|
434
|
+
STATUS current
|
435
|
+
DESCRIPTION
|
436
|
+
"The total number of packets that higher-level protocols
|
437
|
+
requested be transmitted, and which were not addressed to a
|
438
|
+
multicast or broadcast address at this sub-layer, including
|
439
|
+
those that were discarded or not sent.
|
440
|
+
|
441
|
+
Discontinuities in the value of this counter can occur at
|
442
|
+
re-initialization of the management system, and at other
|
443
|
+
times as indicated by the value of
|
444
|
+
ifCounterDiscontinuityTime."
|
445
|
+
::= { ifEntry 17 }
|
446
|
+
|
447
|
+
ifOutNUcastPkts OBJECT-TYPE
|
448
|
+
SYNTAX Counter32
|
449
|
+
MAX-ACCESS read-only
|
450
|
+
STATUS deprecated
|
451
|
+
DESCRIPTION
|
452
|
+
"The total number of packets that higher-level protocols
|
453
|
+
requested be transmitted, and which were addressed to a
|
454
|
+
multicast or broadcast address at this sub-layer, including
|
455
|
+
those that were discarded or not sent.
|
456
|
+
|
457
|
+
Discontinuities in the value of this counter can occur at
|
458
|
+
re-initialization of the management system, and at other
|
459
|
+
times as indicated by the value of
|
460
|
+
ifCounterDiscontinuityTime.
|
461
|
+
|
462
|
+
This object is deprecated in favour of ifOutMulticastPkts
|
463
|
+
and ifOutBroadcastPkts."
|
464
|
+
::= { ifEntry 18 }
|
465
|
+
|
466
|
+
ifOutDiscards OBJECT-TYPE
|
467
|
+
SYNTAX Counter32
|
468
|
+
MAX-ACCESS read-only
|
469
|
+
STATUS current
|
470
|
+
DESCRIPTION
|
471
|
+
"The number of outbound packets which were chosen to be
|
472
|
+
discarded even though no errors had been detected to prevent
|
473
|
+
their being transmitted. One possible reason for discarding
|
474
|
+
such a packet could be to free up buffer space.
|
475
|
+
|
476
|
+
Discontinuities in the value of this counter can occur at
|
477
|
+
re-initialization of the management system, and at other
|
478
|
+
times as indicated by the value of
|
479
|
+
ifCounterDiscontinuityTime."
|
480
|
+
::= { ifEntry 19 }
|
481
|
+
|
482
|
+
ifOutErrors OBJECT-TYPE
|
483
|
+
SYNTAX Counter32
|
484
|
+
MAX-ACCESS read-only
|
485
|
+
STATUS current
|
486
|
+
DESCRIPTION
|
487
|
+
"For packet-oriented interfaces, the number of outbound
|
488
|
+
packets that could not be transmitted because of errors.
|
489
|
+
For character-oriented or fixed-length interfaces, the
|
490
|
+
number of outbound transmission units that could not be
|
491
|
+
transmitted because of errors.
|
492
|
+
|
493
|
+
Discontinuities in the value of this counter can occur at
|
494
|
+
re-initialization of the management system, and at other
|
495
|
+
times as indicated by the value of
|
496
|
+
ifCounterDiscontinuityTime."
|
497
|
+
::= { ifEntry 20 }
|
498
|
+
|
499
|
+
ifOutQLen OBJECT-TYPE
|
500
|
+
SYNTAX Gauge32
|
501
|
+
MAX-ACCESS read-only
|
502
|
+
STATUS deprecated
|
503
|
+
DESCRIPTION
|
504
|
+
"The length of the output packet queue (in packets)."
|
505
|
+
::= { ifEntry 21 }
|
506
|
+
|
507
|
+
ifSpecific OBJECT-TYPE
|
508
|
+
SYNTAX OBJECT IDENTIFIER
|
509
|
+
MAX-ACCESS read-only
|
510
|
+
STATUS deprecated
|
511
|
+
DESCRIPTION
|
512
|
+
"A reference to MIB definitions specific to the particular
|
513
|
+
media being used to realize the interface. It is
|
514
|
+
|
515
|
+
recommended that this value point to an instance of a MIB
|
516
|
+
object in the media-specific MIB, i.e., that this object
|
517
|
+
have the semantics associated with the InstancePointer
|
518
|
+
textual convention defined in RFC 2579. In fact, it is
|
519
|
+
recommended that the media-specific MIB specify what value
|
520
|
+
ifSpecific should/can take for values of ifType. If no MIB
|
521
|
+
definitions specific to the particular media are available,
|
522
|
+
the value should be set to the OBJECT IDENTIFIER { 0 0 }."
|
523
|
+
::= { ifEntry 22 }
|
524
|
+
|
525
|
+
--
|
526
|
+
-- Extension to the interface table
|
527
|
+
--
|
528
|
+
-- This table replaces the ifExtnsTable table.
|
529
|
+
--
|
530
|
+
|
531
|
+
ifXTable OBJECT-TYPE
|
532
|
+
SYNTAX SEQUENCE OF IfXEntry
|
533
|
+
MAX-ACCESS not-accessible
|
534
|
+
STATUS current
|
535
|
+
DESCRIPTION
|
536
|
+
"A list of interface entries. The number of entries is
|
537
|
+
given by the value of ifNumber. This table contains
|
538
|
+
additional objects for the interface table."
|
539
|
+
::= { ifMIBObjects 1 }
|
540
|
+
|
541
|
+
ifXEntry OBJECT-TYPE
|
542
|
+
SYNTAX IfXEntry
|
543
|
+
MAX-ACCESS not-accessible
|
544
|
+
STATUS current
|
545
|
+
DESCRIPTION
|
546
|
+
"An entry containing additional management information
|
547
|
+
applicable to a particular interface."
|
548
|
+
AUGMENTS { ifEntry }
|
549
|
+
::= { ifXTable 1 }
|
550
|
+
|
551
|
+
IfXEntry ::=
|
552
|
+
SEQUENCE {
|
553
|
+
ifName DisplayString,
|
554
|
+
ifInMulticastPkts Counter32,
|
555
|
+
ifInBroadcastPkts Counter32,
|
556
|
+
ifOutMulticastPkts Counter32,
|
557
|
+
ifOutBroadcastPkts Counter32,
|
558
|
+
ifHCInOctets Counter64,
|
559
|
+
ifHCInUcastPkts Counter64,
|
560
|
+
ifHCInMulticastPkts Counter64,
|
561
|
+
ifHCInBroadcastPkts Counter64,
|
562
|
+
ifHCOutOctets Counter64,
|
563
|
+
ifHCOutUcastPkts Counter64,
|
564
|
+
ifHCOutMulticastPkts Counter64,
|
565
|
+
ifHCOutBroadcastPkts Counter64,
|
566
|
+
ifLinkUpDownTrapEnable INTEGER,
|
567
|
+
ifHighSpeed Gauge32,
|
568
|
+
ifPromiscuousMode TruthValue,
|
569
|
+
ifConnectorPresent TruthValue,
|
570
|
+
ifAlias DisplayString,
|
571
|
+
ifCounterDiscontinuityTime TimeStamp
|
572
|
+
}
|
573
|
+
|
574
|
+
ifName OBJECT-TYPE
|
575
|
+
SYNTAX DisplayString
|
576
|
+
MAX-ACCESS read-only
|
577
|
+
STATUS current
|
578
|
+
DESCRIPTION
|
579
|
+
"The textual name of the interface. The value of this
|
580
|
+
object should be the name of the interface as assigned by
|
581
|
+
the local device and should be suitable for use in commands
|
582
|
+
entered at the device's `console'. This might be a text
|
583
|
+
name, such as `le0' or a simple port number, such as `1',
|
584
|
+
depending on the interface naming syntax of the device. If
|
585
|
+
several entries in the ifTable together represent a single
|
586
|
+
interface as named by the device, then each will have the
|
587
|
+
same value of ifName. Note that for an agent which responds
|
588
|
+
to SNMP queries concerning an interface on some other
|
589
|
+
(proxied) device, then the value of ifName for such an
|
590
|
+
interface is the proxied device's local name for it.
|
591
|
+
|
592
|
+
If there is no local name, or this object is otherwise not
|
593
|
+
applicable, then this object contains a zero-length string."
|
594
|
+
::= { ifXEntry 1 }
|
595
|
+
|
596
|
+
ifInMulticastPkts OBJECT-TYPE
|
597
|
+
SYNTAX Counter32
|
598
|
+
MAX-ACCESS read-only
|
599
|
+
STATUS current
|
600
|
+
DESCRIPTION
|
601
|
+
"The number of packets, delivered by this sub-layer to a
|
602
|
+
higher (sub-)layer, which were addressed to a multicast
|
603
|
+
address at this sub-layer. For a MAC layer protocol, this
|
604
|
+
includes both Group and Functional addresses.
|
605
|
+
|
606
|
+
Discontinuities in the value of this counter can occur at
|
607
|
+
re-initialization of the management system, and at other
|
608
|
+
|
609
|
+
times as indicated by the value of
|
610
|
+
ifCounterDiscontinuityTime."
|
611
|
+
::= { ifXEntry 2 }
|
612
|
+
|
613
|
+
ifInBroadcastPkts OBJECT-TYPE
|
614
|
+
SYNTAX Counter32
|
615
|
+
MAX-ACCESS read-only
|
616
|
+
STATUS current
|
617
|
+
DESCRIPTION
|
618
|
+
"The number of packets, delivered by this sub-layer to a
|
619
|
+
higher (sub-)layer, which were addressed to a broadcast
|
620
|
+
address at this sub-layer.
|
621
|
+
|
622
|
+
Discontinuities in the value of this counter can occur at
|
623
|
+
re-initialization of the management system, and at other
|
624
|
+
times as indicated by the value of
|
625
|
+
ifCounterDiscontinuityTime."
|
626
|
+
::= { ifXEntry 3 }
|
627
|
+
|
628
|
+
ifOutMulticastPkts OBJECT-TYPE
|
629
|
+
SYNTAX Counter32
|
630
|
+
MAX-ACCESS read-only
|
631
|
+
STATUS current
|
632
|
+
DESCRIPTION
|
633
|
+
"The total number of packets that higher-level protocols
|
634
|
+
requested be transmitted, and which were addressed to a
|
635
|
+
multicast address at this sub-layer, including those that
|
636
|
+
were discarded or not sent. For a MAC layer protocol, this
|
637
|
+
includes both Group and Functional addresses.
|
638
|
+
|
639
|
+
Discontinuities in the value of this counter can occur at
|
640
|
+
re-initialization of the management system, and at other
|
641
|
+
times as indicated by the value of
|
642
|
+
ifCounterDiscontinuityTime."
|
643
|
+
::= { ifXEntry 4 }
|
644
|
+
|
645
|
+
ifOutBroadcastPkts OBJECT-TYPE
|
646
|
+
SYNTAX Counter32
|
647
|
+
MAX-ACCESS read-only
|
648
|
+
STATUS current
|
649
|
+
DESCRIPTION
|
650
|
+
"The total number of packets that higher-level protocols
|
651
|
+
requested be transmitted, and which were addressed to a
|
652
|
+
broadcast address at this sub-layer, including those that
|
653
|
+
were discarded or not sent.
|
654
|
+
|
655
|
+
Discontinuities in the value of this counter can occur at
|
656
|
+
re-initialization of the management system, and at other
|
657
|
+
|
658
|
+
times as indicated by the value of
|
659
|
+
ifCounterDiscontinuityTime."
|
660
|
+
::= { ifXEntry 5 }
|
661
|
+
|
662
|
+
--
|
663
|
+
-- High Capacity Counter objects. These objects are all
|
664
|
+
-- 64 bit versions of the "basic" ifTable counters. These
|
665
|
+
-- objects all have the same basic semantics as their 32-bit
|
666
|
+
-- counterparts, however, their syntax has been extended
|
667
|
+
-- to 64 bits.
|
668
|
+
--
|
669
|
+
|
670
|
+
ifHCInOctets OBJECT-TYPE
|
671
|
+
SYNTAX Counter64
|
672
|
+
MAX-ACCESS read-only
|
673
|
+
STATUS current
|
674
|
+
DESCRIPTION
|
675
|
+
"The total number of octets received on the interface,
|
676
|
+
including framing characters. This object is a 64-bit
|
677
|
+
version of ifInOctets.
|
678
|
+
|
679
|
+
Discontinuities in the value of this counter can occur at
|
680
|
+
re-initialization of the management system, and at other
|
681
|
+
times as indicated by the value of
|
682
|
+
ifCounterDiscontinuityTime."
|
683
|
+
::= { ifXEntry 6 }
|
684
|
+
|
685
|
+
ifHCInUcastPkts OBJECT-TYPE
|
686
|
+
SYNTAX Counter64
|
687
|
+
MAX-ACCESS read-only
|
688
|
+
STATUS current
|
689
|
+
DESCRIPTION
|
690
|
+
"The number of packets, delivered by this sub-layer to a
|
691
|
+
higher (sub-)layer, which were not addressed to a multicast
|
692
|
+
or broadcast address at this sub-layer. This object is a
|
693
|
+
64-bit version of ifInUcastPkts.
|
694
|
+
|
695
|
+
Discontinuities in the value of this counter can occur at
|
696
|
+
re-initialization of the management system, and at other
|
697
|
+
times as indicated by the value of
|
698
|
+
ifCounterDiscontinuityTime."
|
699
|
+
::= { ifXEntry 7 }
|
700
|
+
|
701
|
+
ifHCInMulticastPkts OBJECT-TYPE
|
702
|
+
SYNTAX Counter64
|
703
|
+
MAX-ACCESS read-only
|
704
|
+
STATUS current
|
705
|
+
DESCRIPTION
|
706
|
+
"The number of packets, delivered by this sub-layer to a
|
707
|
+
higher (sub-)layer, which were addressed to a multicast
|
708
|
+
address at this sub-layer. For a MAC layer protocol, this
|
709
|
+
includes both Group and Functional addresses. This object
|
710
|
+
is a 64-bit version of ifInMulticastPkts.
|
711
|
+
|
712
|
+
Discontinuities in the value of this counter can occur at
|
713
|
+
re-initialization of the management system, and at other
|
714
|
+
times as indicated by the value of
|
715
|
+
ifCounterDiscontinuityTime."
|
716
|
+
::= { ifXEntry 8 }
|
717
|
+
|
718
|
+
ifHCInBroadcastPkts OBJECT-TYPE
|
719
|
+
SYNTAX Counter64
|
720
|
+
MAX-ACCESS read-only
|
721
|
+
STATUS current
|
722
|
+
DESCRIPTION
|
723
|
+
"The number of packets, delivered by this sub-layer to a
|
724
|
+
higher (sub-)layer, which were addressed to a broadcast
|
725
|
+
address at this sub-layer. This object is a 64-bit version
|
726
|
+
of ifInBroadcastPkts.
|
727
|
+
|
728
|
+
Discontinuities in the value of this counter can occur at
|
729
|
+
re-initialization of the management system, and at other
|
730
|
+
times as indicated by the value of
|
731
|
+
ifCounterDiscontinuityTime."
|
732
|
+
::= { ifXEntry 9 }
|
733
|
+
|
734
|
+
ifHCOutOctets OBJECT-TYPE
|
735
|
+
SYNTAX Counter64
|
736
|
+
MAX-ACCESS read-only
|
737
|
+
STATUS current
|
738
|
+
DESCRIPTION
|
739
|
+
"The total number of octets transmitted out of the
|
740
|
+
interface, including framing characters. This object is a
|
741
|
+
64-bit version of ifOutOctets.
|
742
|
+
|
743
|
+
Discontinuities in the value of this counter can occur at
|
744
|
+
re-initialization of the management system, and at other
|
745
|
+
times as indicated by the value of
|
746
|
+
ifCounterDiscontinuityTime."
|
747
|
+
::= { ifXEntry 10 }
|
748
|
+
|
749
|
+
ifHCOutUcastPkts OBJECT-TYPE
|
750
|
+
SYNTAX Counter64
|
751
|
+
MAX-ACCESS read-only
|
752
|
+
STATUS current
|
753
|
+
DESCRIPTION
|
754
|
+
"The total number of packets that higher-level protocols
|
755
|
+
requested be transmitted, and which were not addressed to a
|
756
|
+
multicast or broadcast address at this sub-layer, including
|
757
|
+
those that were discarded or not sent. This object is a
|
758
|
+
64-bit version of ifOutUcastPkts.
|
759
|
+
|
760
|
+
Discontinuities in the value of this counter can occur at
|
761
|
+
re-initialization of the management system, and at other
|
762
|
+
times as indicated by the value of
|
763
|
+
ifCounterDiscontinuityTime."
|
764
|
+
::= { ifXEntry 11 }
|
765
|
+
|
766
|
+
ifHCOutMulticastPkts OBJECT-TYPE
|
767
|
+
SYNTAX Counter64
|
768
|
+
MAX-ACCESS read-only
|
769
|
+
STATUS current
|
770
|
+
DESCRIPTION
|
771
|
+
"The total number of packets that higher-level protocols
|
772
|
+
requested be transmitted, and which were addressed to a
|
773
|
+
multicast address at this sub-layer, including those that
|
774
|
+
were discarded or not sent. For a MAC layer protocol, this
|
775
|
+
includes both Group and Functional addresses. This object
|
776
|
+
is a 64-bit version of ifOutMulticastPkts.
|
777
|
+
|
778
|
+
Discontinuities in the value of this counter can occur at
|
779
|
+
re-initialization of the management system, and at other
|
780
|
+
times as indicated by the value of
|
781
|
+
ifCounterDiscontinuityTime."
|
782
|
+
::= { ifXEntry 12 }
|
783
|
+
|
784
|
+
ifHCOutBroadcastPkts OBJECT-TYPE
|
785
|
+
SYNTAX Counter64
|
786
|
+
MAX-ACCESS read-only
|
787
|
+
STATUS current
|
788
|
+
DESCRIPTION
|
789
|
+
"The total number of packets that higher-level protocols
|
790
|
+
requested be transmitted, and which were addressed to a
|
791
|
+
broadcast address at this sub-layer, including those that
|
792
|
+
were discarded or not sent. This object is a 64-bit version
|
793
|
+
of ifOutBroadcastPkts.
|
794
|
+
|
795
|
+
Discontinuities in the value of this counter can occur at
|
796
|
+
re-initialization of the management system, and at other
|
797
|
+
times as indicated by the value of
|
798
|
+
ifCounterDiscontinuityTime."
|
799
|
+
::= { ifXEntry 13 }
|
800
|
+
|
801
|
+
ifLinkUpDownTrapEnable OBJECT-TYPE
|
802
|
+
SYNTAX INTEGER { enabled(1), disabled(2) }
|
803
|
+
MAX-ACCESS read-write
|
804
|
+
STATUS current
|
805
|
+
DESCRIPTION
|
806
|
+
"Indicates whether linkUp/linkDown traps should be generated
|
807
|
+
for this interface.
|
808
|
+
|
809
|
+
By default, this object should have the value enabled(1) for
|
810
|
+
interfaces which do not operate on 'top' of any other
|
811
|
+
interface (as defined in the ifStackTable), and disabled(2)
|
812
|
+
otherwise."
|
813
|
+
::= { ifXEntry 14 }
|
814
|
+
|
815
|
+
ifHighSpeed OBJECT-TYPE
|
816
|
+
SYNTAX Gauge32
|
817
|
+
MAX-ACCESS read-only
|
818
|
+
STATUS current
|
819
|
+
DESCRIPTION
|
820
|
+
"An estimate of the interface's current bandwidth in units
|
821
|
+
of 1,000,000 bits per second. If this object reports a
|
822
|
+
value of `n' then the speed of the interface is somewhere in
|
823
|
+
the range of `n-500,000' to `n+499,999'. For interfaces
|
824
|
+
which do not vary in bandwidth or for those where no
|
825
|
+
accurate estimation can be made, this object should contain
|
826
|
+
the nominal bandwidth. For a sub-layer which has no concept
|
827
|
+
of bandwidth, this object should be zero."
|
828
|
+
::= { ifXEntry 15 }
|
829
|
+
|
830
|
+
ifPromiscuousMode OBJECT-TYPE
|
831
|
+
SYNTAX TruthValue
|
832
|
+
MAX-ACCESS read-write
|
833
|
+
STATUS current
|
834
|
+
DESCRIPTION
|
835
|
+
"This object has a value of false(2) if this interface only
|
836
|
+
accepts packets/frames that are addressed to this station.
|
837
|
+
This object has a value of true(1) when the station accepts
|
838
|
+
all packets/frames transmitted on the media. The value
|
839
|
+
true(1) is only legal on certain types of media. If legal,
|
840
|
+
setting this object to a value of true(1) may require the
|
841
|
+
interface to be reset before becoming effective.
|
842
|
+
|
843
|
+
The value of ifPromiscuousMode does not affect the reception
|
844
|
+
of broadcast and multicast packets/frames by the interface."
|
845
|
+
::= { ifXEntry 16 }
|
846
|
+
|
847
|
+
ifConnectorPresent OBJECT-TYPE
|
848
|
+
SYNTAX TruthValue
|
849
|
+
MAX-ACCESS read-only
|
850
|
+
STATUS current
|
851
|
+
DESCRIPTION
|
852
|
+
"This object has the value 'true(1)' if the interface
|
853
|
+
sublayer has a physical connector and the value 'false(2)'
|
854
|
+
otherwise."
|
855
|
+
::= { ifXEntry 17 }
|
856
|
+
|
857
|
+
ifAlias OBJECT-TYPE
|
858
|
+
SYNTAX DisplayString (SIZE(0..64))
|
859
|
+
MAX-ACCESS read-write
|
860
|
+
STATUS current
|
861
|
+
DESCRIPTION
|
862
|
+
"This object is an 'alias' name for the interface as
|
863
|
+
specified by a network manager, and provides a non-volatile
|
864
|
+
'handle' for the interface.
|
865
|
+
|
866
|
+
On the first instantiation of an interface, the value of
|
867
|
+
ifAlias associated with that interface is the zero-length
|
868
|
+
string. As and when a value is written into an instance of
|
869
|
+
ifAlias through a network management set operation, then the
|
870
|
+
agent must retain the supplied value in the ifAlias instance
|
871
|
+
associated with the same interface for as long as that
|
872
|
+
interface remains instantiated, including across all re-
|
873
|
+
initializations/reboots of the network management system,
|
874
|
+
including those which result in a change of the interface's
|
875
|
+
ifIndex value.
|
876
|
+
|
877
|
+
An example of the value which a network manager might store
|
878
|
+
in this object for a WAN interface is the (Telco's) circuit
|
879
|
+
number/identifier of the interface.
|
880
|
+
|
881
|
+
Some agents may support write-access only for interfaces
|
882
|
+
having particular values of ifType. An agent which supports
|
883
|
+
write access to this object is required to keep the value in
|
884
|
+
non-volatile storage, but it may limit the length of new
|
885
|
+
values depending on how much storage is already occupied by
|
886
|
+
the current values for other interfaces."
|
887
|
+
::= { ifXEntry 18 }
|
888
|
+
|
889
|
+
ifCounterDiscontinuityTime OBJECT-TYPE
|
890
|
+
SYNTAX TimeStamp
|
891
|
+
MAX-ACCESS read-only
|
892
|
+
STATUS current
|
893
|
+
DESCRIPTION
|
894
|
+
"The value of sysUpTime on the most recent occasion at which
|
895
|
+
any one or more of this interface's counters suffered a
|
896
|
+
discontinuity. The relevant counters are the specific
|
897
|
+
instances associated with this interface of any Counter32 or
|
898
|
+
|
899
|
+
Counter64 object contained in the ifTable or ifXTable. If
|
900
|
+
no such discontinuities have occurred since the last re-
|
901
|
+
initialization of the local management subsystem, then this
|
902
|
+
object contains a zero value."
|
903
|
+
::= { ifXEntry 19 }
|
904
|
+
|
905
|
+
-- The Interface Stack Group
|
906
|
+
--
|
907
|
+
-- Implementation of this group is optional, but strongly recommended
|
908
|
+
-- for all systems
|
909
|
+
--
|
910
|
+
|
911
|
+
ifStackTable OBJECT-TYPE
|
912
|
+
SYNTAX SEQUENCE OF IfStackEntry
|
913
|
+
MAX-ACCESS not-accessible
|
914
|
+
STATUS current
|
915
|
+
DESCRIPTION
|
916
|
+
"The table containing information on the relationships
|
917
|
+
between the multiple sub-layers of network interfaces. In
|
918
|
+
particular, it contains information on which sub-layers run
|
919
|
+
'on top of' which other sub-layers, where each sub-layer
|
920
|
+
corresponds to a conceptual row in the ifTable. For
|
921
|
+
example, when the sub-layer with ifIndex value x runs over
|
922
|
+
the sub-layer with ifIndex value y, then this table
|
923
|
+
contains:
|
924
|
+
|
925
|
+
ifStackStatus.x.y=active
|
926
|
+
|
927
|
+
For each ifIndex value, I, which identifies an active
|
928
|
+
interface, there are always at least two instantiated rows
|
929
|
+
in this table associated with I. For one of these rows, I
|
930
|
+
is the value of ifStackHigherLayer; for the other, I is the
|
931
|
+
value of ifStackLowerLayer. (If I is not involved in
|
932
|
+
multiplexing, then these are the only two rows associated
|
933
|
+
with I.)
|
934
|
+
|
935
|
+
For example, two rows exist even for an interface which has
|
936
|
+
no others stacked on top or below it:
|
937
|
+
|
938
|
+
ifStackStatus.0.x=active
|
939
|
+
ifStackStatus.x.0=active "
|
940
|
+
::= { ifMIBObjects 2 }
|
941
|
+
|
942
|
+
ifStackEntry OBJECT-TYPE
|
943
|
+
SYNTAX IfStackEntry
|
944
|
+
MAX-ACCESS not-accessible
|
945
|
+
STATUS current
|
946
|
+
DESCRIPTION
|
947
|
+
"Information on a particular relationship between two sub-
|
948
|
+
layers, specifying that one sub-layer runs on 'top' of the
|
949
|
+
other sub-layer. Each sub-layer corresponds to a conceptual
|
950
|
+
row in the ifTable."
|
951
|
+
INDEX { ifStackHigherLayer, ifStackLowerLayer }
|
952
|
+
::= { ifStackTable 1 }
|
953
|
+
|
954
|
+
IfStackEntry ::=
|
955
|
+
SEQUENCE {
|
956
|
+
ifStackHigherLayer InterfaceIndexOrZero,
|
957
|
+
ifStackLowerLayer InterfaceIndexOrZero,
|
958
|
+
ifStackStatus RowStatus
|
959
|
+
}
|
960
|
+
|
961
|
+
ifStackHigherLayer OBJECT-TYPE
|
962
|
+
SYNTAX InterfaceIndexOrZero
|
963
|
+
MAX-ACCESS not-accessible
|
964
|
+
STATUS current
|
965
|
+
DESCRIPTION
|
966
|
+
"The value of ifIndex corresponding to the higher sub-layer
|
967
|
+
of the relationship, i.e., the sub-layer which runs on 'top'
|
968
|
+
of the sub-layer identified by the corresponding instance of
|
969
|
+
ifStackLowerLayer. If there is no higher sub-layer (below
|
970
|
+
the internetwork layer), then this object has the value 0."
|
971
|
+
::= { ifStackEntry 1 }
|
972
|
+
|
973
|
+
ifStackLowerLayer OBJECT-TYPE
|
974
|
+
SYNTAX InterfaceIndexOrZero
|
975
|
+
MAX-ACCESS not-accessible
|
976
|
+
STATUS current
|
977
|
+
DESCRIPTION
|
978
|
+
"The value of ifIndex corresponding to the lower sub-layer
|
979
|
+
of the relationship, i.e., the sub-layer which runs 'below'
|
980
|
+
the sub-layer identified by the corresponding instance of
|
981
|
+
ifStackHigherLayer. If there is no lower sub-layer, then
|
982
|
+
this object has the value 0."
|
983
|
+
::= { ifStackEntry 2 }
|
984
|
+
|
985
|
+
ifStackStatus OBJECT-TYPE
|
986
|
+
SYNTAX RowStatus
|
987
|
+
MAX-ACCESS read-create
|
988
|
+
STATUS current
|
989
|
+
DESCRIPTION
|
990
|
+
"The status of the relationship between two sub-layers.
|
991
|
+
|
992
|
+
Changing the value of this object from 'active' to
|
993
|
+
'notInService' or 'destroy' will likely have consequences up
|
994
|
+
and down the interface stack. Thus, write access to this
|
995
|
+
object is likely to be inappropriate for some types of
|
996
|
+
interfaces, and many implementations will choose not to
|
997
|
+
support write-access for any type of interface."
|
998
|
+
::= { ifStackEntry 3 }
|
999
|
+
|
1000
|
+
ifStackLastChange OBJECT-TYPE
|
1001
|
+
SYNTAX TimeTicks
|
1002
|
+
MAX-ACCESS read-only
|
1003
|
+
STATUS current
|
1004
|
+
DESCRIPTION
|
1005
|
+
"The value of sysUpTime at the time of the last change of
|
1006
|
+
the (whole) interface stack. A change of the interface
|
1007
|
+
stack is defined to be any creation, deletion, or change in
|
1008
|
+
value of any instance of ifStackStatus. If the interface
|
1009
|
+
stack has been unchanged since the last re-initialization of
|
1010
|
+
the local network management subsystem, then this object
|
1011
|
+
contains a zero value."
|
1012
|
+
::= { ifMIBObjects 6 }
|
1013
|
+
|
1014
|
+
-- Generic Receive Address Table
|
1015
|
+
--
|
1016
|
+
-- This group of objects is mandatory for all types of
|
1017
|
+
-- interfaces which can receive packets/frames addressed to
|
1018
|
+
-- more than one address.
|
1019
|
+
--
|
1020
|
+
-- This table replaces the ifExtnsRcvAddr table. The main
|
1021
|
+
-- difference is that this table makes use of the RowStatus
|
1022
|
+
-- textual convention, while ifExtnsRcvAddr did not.
|
1023
|
+
|
1024
|
+
ifRcvAddressTable OBJECT-TYPE
|
1025
|
+
SYNTAX SEQUENCE OF IfRcvAddressEntry
|
1026
|
+
MAX-ACCESS not-accessible
|
1027
|
+
STATUS current
|
1028
|
+
DESCRIPTION
|
1029
|
+
"This table contains an entry for each address (broadcast,
|
1030
|
+
multicast, or uni-cast) for which the system will receive
|
1031
|
+
packets/frames on a particular interface, except as follows:
|
1032
|
+
|
1033
|
+
- for an interface operating in promiscuous mode, entries
|
1034
|
+
are only required for those addresses for which the system
|
1035
|
+
would receive frames were it not operating in promiscuous
|
1036
|
+
mode.
|
1037
|
+
|
1038
|
+
- for 802.5 functional addresses, only one entry is
|
1039
|
+
required, for the address which has the functional address
|
1040
|
+
bit ANDed with the bit mask of all functional addresses for
|
1041
|
+
which the interface will accept frames.
|
1042
|
+
|
1043
|
+
A system is normally able to use any unicast address which
|
1044
|
+
corresponds to an entry in this table as a source address."
|
1045
|
+
::= { ifMIBObjects 4 }
|
1046
|
+
|
1047
|
+
ifRcvAddressEntry OBJECT-TYPE
|
1048
|
+
SYNTAX IfRcvAddressEntry
|
1049
|
+
MAX-ACCESS not-accessible
|
1050
|
+
STATUS current
|
1051
|
+
DESCRIPTION
|
1052
|
+
"A list of objects identifying an address for which the
|
1053
|
+
system will accept packets/frames on the particular
|
1054
|
+
interface identified by the index value ifIndex."
|
1055
|
+
INDEX { ifIndex, ifRcvAddressAddress }
|
1056
|
+
::= { ifRcvAddressTable 1 }
|
1057
|
+
|
1058
|
+
IfRcvAddressEntry ::=
|
1059
|
+
SEQUENCE {
|
1060
|
+
ifRcvAddressAddress PhysAddress,
|
1061
|
+
ifRcvAddressStatus RowStatus,
|
1062
|
+
ifRcvAddressType INTEGER
|
1063
|
+
}
|
1064
|
+
|
1065
|
+
ifRcvAddressAddress OBJECT-TYPE
|
1066
|
+
SYNTAX PhysAddress
|
1067
|
+
MAX-ACCESS not-accessible
|
1068
|
+
STATUS current
|
1069
|
+
DESCRIPTION
|
1070
|
+
"An address for which the system will accept packets/frames
|
1071
|
+
on this entry's interface."
|
1072
|
+
::= { ifRcvAddressEntry 1 }
|
1073
|
+
|
1074
|
+
ifRcvAddressStatus OBJECT-TYPE
|
1075
|
+
SYNTAX RowStatus
|
1076
|
+
MAX-ACCESS read-create
|
1077
|
+
STATUS current
|
1078
|
+
DESCRIPTION
|
1079
|
+
"This object is used to create and delete rows in the
|
1080
|
+
ifRcvAddressTable."
|
1081
|
+
::= { ifRcvAddressEntry 2 }
|
1082
|
+
|
1083
|
+
ifRcvAddressType OBJECT-TYPE
|
1084
|
+
SYNTAX INTEGER {
|
1085
|
+
|
1086
|
+
other(1),
|
1087
|
+
volatile(2),
|
1088
|
+
nonVolatile(3)
|
1089
|
+
}
|
1090
|
+
MAX-ACCESS read-create
|
1091
|
+
STATUS current
|
1092
|
+
DESCRIPTION
|
1093
|
+
"This object has the value nonVolatile(3) for those entries
|
1094
|
+
in the table which are valid and will not be deleted by the
|
1095
|
+
next restart of the managed system. Entries having the
|
1096
|
+
value volatile(2) are valid and exist, but have not been
|
1097
|
+
saved, so that will not exist after the next restart of the
|
1098
|
+
managed system. Entries having the value other(1) are valid
|
1099
|
+
and exist but are not classified as to whether they will
|
1100
|
+
continue to exist after the next restart."
|
1101
|
+
DEFVAL { volatile }
|
1102
|
+
::= { ifRcvAddressEntry 3 }
|
1103
|
+
|
1104
|
+
-- definition of interface-related traps.
|
1105
|
+
|
1106
|
+
linkDown NOTIFICATION-TYPE
|
1107
|
+
OBJECTS { ifIndex, ifAdminStatus, ifOperStatus }
|
1108
|
+
STATUS current
|
1109
|
+
DESCRIPTION
|
1110
|
+
"A linkDown trap signifies that the SNMP entity, acting in
|
1111
|
+
an agent role, has detected that the ifOperStatus object for
|
1112
|
+
one of its communication links is about to enter the down
|
1113
|
+
state from some other state (but not from the notPresent
|
1114
|
+
state). This other state is indicated by the included value
|
1115
|
+
of ifOperStatus."
|
1116
|
+
::= { snmpTraps 3 }
|
1117
|
+
|
1118
|
+
linkUp NOTIFICATION-TYPE
|
1119
|
+
OBJECTS { ifIndex, ifAdminStatus, ifOperStatus }
|
1120
|
+
STATUS current
|
1121
|
+
DESCRIPTION
|
1122
|
+
"A linkUp trap signifies that the SNMP entity, acting in an
|
1123
|
+
agent role, has detected that the ifOperStatus object for
|
1124
|
+
one of its communication links left the down state and
|
1125
|
+
transitioned into some other state (but not into the
|
1126
|
+
notPresent state). This other state is indicated by the
|
1127
|
+
included value of ifOperStatus."
|
1128
|
+
::= { snmpTraps 4 }
|
1129
|
+
|
1130
|
+
-- conformance information
|
1131
|
+
|
1132
|
+
ifConformance OBJECT IDENTIFIER ::= { ifMIB 2 }
|
1133
|
+
|
1134
|
+
ifGroups OBJECT IDENTIFIER ::= { ifConformance 1 }
|
1135
|
+
ifCompliances OBJECT IDENTIFIER ::= { ifConformance 2 }
|
1136
|
+
|
1137
|
+
-- compliance statements
|
1138
|
+
|
1139
|
+
ifCompliance3 MODULE-COMPLIANCE
|
1140
|
+
STATUS current
|
1141
|
+
DESCRIPTION
|
1142
|
+
"The compliance statement for SNMP entities which have
|
1143
|
+
network interfaces."
|
1144
|
+
|
1145
|
+
MODULE -- this module
|
1146
|
+
MANDATORY-GROUPS { ifGeneralInformationGroup,
|
1147
|
+
linkUpDownNotificationsGroup }
|
1148
|
+
|
1149
|
+
-- The groups:
|
1150
|
+
-- ifFixedLengthGroup
|
1151
|
+
-- ifHCFixedLengthGroup
|
1152
|
+
-- ifPacketGroup
|
1153
|
+
-- ifHCPacketGroup
|
1154
|
+
-- ifVHCPacketGroup
|
1155
|
+
-- are mutually exclusive; at most one of these groups is implemented
|
1156
|
+
-- for a particular interface. When any of these groups is implemented
|
1157
|
+
-- for a particular interface, then ifCounterDiscontinuityGroup must
|
1158
|
+
-- also be implemented for that interface.
|
1159
|
+
|
1160
|
+
GROUP ifFixedLengthGroup
|
1161
|
+
DESCRIPTION
|
1162
|
+
"This group is mandatory for those network interfaces which
|
1163
|
+
are character-oriented or transmit data in fixed-length
|
1164
|
+
transmission units, and for which the value of the
|
1165
|
+
corresponding instance of ifSpeed is less than or equal to
|
1166
|
+
20,000,000 bits/second."
|
1167
|
+
|
1168
|
+
GROUP ifHCFixedLengthGroup
|
1169
|
+
DESCRIPTION
|
1170
|
+
"This group is mandatory for those network interfaces which
|
1171
|
+
are character-oriented or transmit data in fixed-length
|
1172
|
+
transmission units, and for which the value of the
|
1173
|
+
corresponding instance of ifSpeed is greater than 20,000,000
|
1174
|
+
bits/second."
|
1175
|
+
|
1176
|
+
GROUP ifPacketGroup
|
1177
|
+
DESCRIPTION
|
1178
|
+
"This group is mandatory for those network interfaces which
|
1179
|
+
are packet-oriented, and for which the value of the
|
1180
|
+
corresponding instance of ifSpeed is less than or equal to
|
1181
|
+
20,000,000 bits/second."
|
1182
|
+
|
1183
|
+
GROUP ifHCPacketGroup
|
1184
|
+
DESCRIPTION
|
1185
|
+
"This group is mandatory only for those network interfaces
|
1186
|
+
which are packet-oriented and for which the value of the
|
1187
|
+
corresponding instance of ifSpeed is greater than 20,000,000
|
1188
|
+
bits/second but less than or equal to 650,000,000
|
1189
|
+
bits/second."
|
1190
|
+
|
1191
|
+
GROUP ifVHCPacketGroup
|
1192
|
+
DESCRIPTION
|
1193
|
+
"This group is mandatory only for those network interfaces
|
1194
|
+
which are packet-oriented and for which the value of the
|
1195
|
+
corresponding instance of ifSpeed is greater than
|
1196
|
+
650,000,000 bits/second."
|
1197
|
+
|
1198
|
+
GROUP ifCounterDiscontinuityGroup
|
1199
|
+
DESCRIPTION
|
1200
|
+
"This group is mandatory for those network interfaces that
|
1201
|
+
are required to maintain counters (i.e., those for which one
|
1202
|
+
of the ifFixedLengthGroup, ifHCFixedLengthGroup,
|
1203
|
+
ifPacketGroup, ifHCPacketGroup, or ifVHCPacketGroup is
|
1204
|
+
mandatory)."
|
1205
|
+
|
1206
|
+
GROUP ifRcvAddressGroup
|
1207
|
+
DESCRIPTION
|
1208
|
+
"The applicability of this group MUST be defined by the
|
1209
|
+
media-specific MIBs. Media-specific MIBs must define the
|
1210
|
+
exact meaning, use, and semantics of the addresses in this
|
1211
|
+
group."
|
1212
|
+
|
1213
|
+
OBJECT ifLinkUpDownTrapEnable
|
1214
|
+
MIN-ACCESS read-only
|
1215
|
+
DESCRIPTION
|
1216
|
+
"Write access is not required."
|
1217
|
+
|
1218
|
+
OBJECT ifPromiscuousMode
|
1219
|
+
MIN-ACCESS read-only
|
1220
|
+
DESCRIPTION
|
1221
|
+
"Write access is not required."
|
1222
|
+
|
1223
|
+
OBJECT ifAdminStatus
|
1224
|
+
SYNTAX INTEGER { up(1), down(2) }
|
1225
|
+
MIN-ACCESS read-only
|
1226
|
+
DESCRIPTION
|
1227
|
+
"Write access is not required, nor is support for the value
|
1228
|
+
testing(3)."
|
1229
|
+
|
1230
|
+
OBJECT ifAlias
|
1231
|
+
MIN-ACCESS read-only
|
1232
|
+
DESCRIPTION
|
1233
|
+
"Write access is not required."
|
1234
|
+
::= { ifCompliances 3 }
|
1235
|
+
|
1236
|
+
-- units of conformance
|
1237
|
+
|
1238
|
+
ifGeneralInformationGroup OBJECT-GROUP
|
1239
|
+
OBJECTS { ifIndex, ifDescr, ifType, ifSpeed, ifPhysAddress,
|
1240
|
+
ifAdminStatus, ifOperStatus, ifLastChange,
|
1241
|
+
ifLinkUpDownTrapEnable, ifConnectorPresent,
|
1242
|
+
ifHighSpeed, ifName, ifNumber, ifAlias,
|
1243
|
+
ifTableLastChange }
|
1244
|
+
STATUS current
|
1245
|
+
DESCRIPTION
|
1246
|
+
"A collection of objects providing information applicable to
|
1247
|
+
all network interfaces."
|
1248
|
+
::= { ifGroups 10 }
|
1249
|
+
|
1250
|
+
-- the following five groups are mutually exclusive; at most
|
1251
|
+
-- one of these groups is implemented for any interface
|
1252
|
+
|
1253
|
+
ifFixedLengthGroup OBJECT-GROUP
|
1254
|
+
OBJECTS { ifInOctets, ifOutOctets, ifInUnknownProtos,
|
1255
|
+
ifInErrors, ifOutErrors }
|
1256
|
+
STATUS current
|
1257
|
+
DESCRIPTION
|
1258
|
+
"A collection of objects providing information specific to
|
1259
|
+
non-high speed (non-high speed interfaces transmit and
|
1260
|
+
receive at speeds less than or equal to 20,000,000
|
1261
|
+
bits/second) character-oriented or fixed-length-transmission
|
1262
|
+
network interfaces."
|
1263
|
+
::= { ifGroups 2 }
|
1264
|
+
|
1265
|
+
ifHCFixedLengthGroup OBJECT-GROUP
|
1266
|
+
OBJECTS { ifHCInOctets, ifHCOutOctets,
|
1267
|
+
ifInOctets, ifOutOctets, ifInUnknownProtos,
|
1268
|
+
ifInErrors, ifOutErrors }
|
1269
|
+
STATUS current
|
1270
|
+
DESCRIPTION
|
1271
|
+
"A collection of objects providing information specific to
|
1272
|
+
high speed (greater than 20,000,000 bits/second) character-
|
1273
|
+
oriented or fixed-length-transmission network interfaces."
|
1274
|
+
::= { ifGroups 3 }
|
1275
|
+
|
1276
|
+
ifPacketGroup OBJECT-GROUP
|
1277
|
+
OBJECTS { ifInOctets, ifOutOctets, ifInUnknownProtos,
|
1278
|
+
ifInErrors, ifOutErrors,
|
1279
|
+
ifMtu, ifInUcastPkts, ifInMulticastPkts,
|
1280
|
+
ifInBroadcastPkts, ifInDiscards,
|
1281
|
+
ifOutUcastPkts, ifOutMulticastPkts,
|
1282
|
+
ifOutBroadcastPkts, ifOutDiscards,
|
1283
|
+
ifPromiscuousMode }
|
1284
|
+
STATUS current
|
1285
|
+
DESCRIPTION
|
1286
|
+
"A collection of objects providing information specific to
|
1287
|
+
non-high speed (non-high speed interfaces transmit and
|
1288
|
+
receive at speeds less than or equal to 20,000,000
|
1289
|
+
bits/second) packet-oriented network interfaces."
|
1290
|
+
::= { ifGroups 4 }
|
1291
|
+
|
1292
|
+
ifHCPacketGroup OBJECT-GROUP
|
1293
|
+
OBJECTS { ifHCInOctets, ifHCOutOctets,
|
1294
|
+
ifInOctets, ifOutOctets, ifInUnknownProtos,
|
1295
|
+
ifInErrors, ifOutErrors,
|
1296
|
+
ifMtu, ifInUcastPkts, ifInMulticastPkts,
|
1297
|
+
ifInBroadcastPkts, ifInDiscards,
|
1298
|
+
ifOutUcastPkts, ifOutMulticastPkts,
|
1299
|
+
ifOutBroadcastPkts, ifOutDiscards,
|
1300
|
+
ifPromiscuousMode }
|
1301
|
+
STATUS current
|
1302
|
+
DESCRIPTION
|
1303
|
+
"A collection of objects providing information specific to
|
1304
|
+
high speed (greater than 20,000,000 bits/second but less
|
1305
|
+
than or equal to 650,000,000 bits/second) packet-oriented
|
1306
|
+
network interfaces."
|
1307
|
+
::= { ifGroups 5 }
|
1308
|
+
|
1309
|
+
ifVHCPacketGroup OBJECT-GROUP
|
1310
|
+
OBJECTS { ifHCInUcastPkts, ifHCInMulticastPkts,
|
1311
|
+
ifHCInBroadcastPkts, ifHCOutUcastPkts,
|
1312
|
+
ifHCOutMulticastPkts, ifHCOutBroadcastPkts,
|
1313
|
+
ifHCInOctets, ifHCOutOctets,
|
1314
|
+
ifInOctets, ifOutOctets, ifInUnknownProtos,
|
1315
|
+
ifInErrors, ifOutErrors,
|
1316
|
+
ifMtu, ifInUcastPkts, ifInMulticastPkts,
|
1317
|
+
ifInBroadcastPkts, ifInDiscards,
|
1318
|
+
ifOutUcastPkts, ifOutMulticastPkts,
|
1319
|
+
ifOutBroadcastPkts, ifOutDiscards,
|
1320
|
+
ifPromiscuousMode }
|
1321
|
+
STATUS current
|
1322
|
+
DESCRIPTION
|
1323
|
+
"A collection of objects providing information specific to
|
1324
|
+
higher speed (greater than 650,000,000 bits/second) packet-
|
1325
|
+
oriented network interfaces."
|
1326
|
+
::= { ifGroups 6 }
|
1327
|
+
|
1328
|
+
ifRcvAddressGroup OBJECT-GROUP
|
1329
|
+
OBJECTS { ifRcvAddressStatus, ifRcvAddressType }
|
1330
|
+
STATUS current
|
1331
|
+
DESCRIPTION
|
1332
|
+
"A collection of objects providing information on the
|
1333
|
+
multiple addresses which an interface receives."
|
1334
|
+
::= { ifGroups 7 }
|
1335
|
+
|
1336
|
+
ifStackGroup2 OBJECT-GROUP
|
1337
|
+
OBJECTS { ifStackStatus, ifStackLastChange }
|
1338
|
+
STATUS current
|
1339
|
+
DESCRIPTION
|
1340
|
+
"A collection of objects providing information on the
|
1341
|
+
layering of MIB-II interfaces."
|
1342
|
+
::= { ifGroups 11 }
|
1343
|
+
|
1344
|
+
ifCounterDiscontinuityGroup OBJECT-GROUP
|
1345
|
+
OBJECTS { ifCounterDiscontinuityTime }
|
1346
|
+
STATUS current
|
1347
|
+
DESCRIPTION
|
1348
|
+
"A collection of objects providing information specific to
|
1349
|
+
interface counter discontinuities."
|
1350
|
+
::= { ifGroups 13 }
|
1351
|
+
|
1352
|
+
linkUpDownNotificationsGroup NOTIFICATION-GROUP
|
1353
|
+
NOTIFICATIONS { linkUp, linkDown }
|
1354
|
+
STATUS current
|
1355
|
+
DESCRIPTION
|
1356
|
+
"The notifications which indicate specific changes in the
|
1357
|
+
value of ifOperStatus."
|
1358
|
+
::= { ifGroups 14 }
|
1359
|
+
|
1360
|
+
-- Deprecated Definitions - Objects
|
1361
|
+
|
1362
|
+
--
|
1363
|
+
-- The Interface Test Table
|
1364
|
+
--
|
1365
|
+
-- This group of objects is optional. However, a media-specific
|
1366
|
+
|
1367
|
+
-- MIB may make implementation of this group mandatory.
|
1368
|
+
--
|
1369
|
+
-- This table replaces the ifExtnsTestTable
|
1370
|
+
--
|
1371
|
+
|
1372
|
+
ifTestTable OBJECT-TYPE
|
1373
|
+
SYNTAX SEQUENCE OF IfTestEntry
|
1374
|
+
MAX-ACCESS not-accessible
|
1375
|
+
STATUS deprecated
|
1376
|
+
DESCRIPTION
|
1377
|
+
"This table contains one entry per interface. It defines
|
1378
|
+
objects which allow a network manager to instruct an agent
|
1379
|
+
to test an interface for various faults. Tests for an
|
1380
|
+
interface are defined in the media-specific MIB for that
|
1381
|
+
interface. After invoking a test, the object ifTestResult
|
1382
|
+
can be read to determine the outcome. If an agent can not
|
1383
|
+
perform the test, ifTestResult is set to so indicate. The
|
1384
|
+
object ifTestCode can be used to provide further test-
|
1385
|
+
specific or interface-specific (or even enterprise-specific)
|
1386
|
+
information concerning the outcome of the test. Only one
|
1387
|
+
test can be in progress on each interface at any one time.
|
1388
|
+
If one test is in progress when another test is invoked, the
|
1389
|
+
second test is rejected. Some agents may reject a test when
|
1390
|
+
a prior test is active on another interface.
|
1391
|
+
|
1392
|
+
Before starting a test, a manager-station must first obtain
|
1393
|
+
'ownership' of the entry in the ifTestTable for the
|
1394
|
+
interface to be tested. This is accomplished with the
|
1395
|
+
ifTestId and ifTestStatus objects as follows:
|
1396
|
+
|
1397
|
+
try_again:
|
1398
|
+
get (ifTestId, ifTestStatus)
|
1399
|
+
while (ifTestStatus != notInUse)
|
1400
|
+
/*
|
1401
|
+
* Loop while a test is running or some other
|
1402
|
+
* manager is configuring a test.
|
1403
|
+
*/
|
1404
|
+
short delay
|
1405
|
+
get (ifTestId, ifTestStatus)
|
1406
|
+
}
|
1407
|
+
|
1408
|
+
/*
|
1409
|
+
* Is not being used right now -- let's compete
|
1410
|
+
* to see who gets it.
|
1411
|
+
*/
|
1412
|
+
lock_value = ifTestId
|
1413
|
+
|
1414
|
+
if ( set(ifTestId = lock_value, ifTestStatus = inUse,
|
1415
|
+
ifTestOwner = 'my-IP-address') == FAILURE)
|
1416
|
+
/*
|
1417
|
+
* Another manager got the ifTestEntry -- go
|
1418
|
+
* try again
|
1419
|
+
*/
|
1420
|
+
goto try_again;
|
1421
|
+
|
1422
|
+
/*
|
1423
|
+
* I have the lock
|
1424
|
+
*/
|
1425
|
+
set up any test parameters.
|
1426
|
+
|
1427
|
+
/*
|
1428
|
+
* This starts the test
|
1429
|
+
*/
|
1430
|
+
set(ifTestType = test_to_run);
|
1431
|
+
|
1432
|
+
wait for test completion by polling ifTestResult
|
1433
|
+
|
1434
|
+
when test completes, agent sets ifTestResult
|
1435
|
+
agent also sets ifTestStatus = 'notInUse'
|
1436
|
+
|
1437
|
+
retrieve any additional test results, and ifTestId
|
1438
|
+
|
1439
|
+
if (ifTestId == lock_value+1) results are valid
|
1440
|
+
|
1441
|
+
A manager station first retrieves the value of the
|
1442
|
+
appropriate ifTestId and ifTestStatus objects, periodically
|
1443
|
+
repeating the retrieval if necessary, until the value of
|
1444
|
+
ifTestStatus is 'notInUse'. The manager station then tries
|
1445
|
+
to set the same ifTestId object to the value it just
|
1446
|
+
retrieved, the same ifTestStatus object to 'inUse', and the
|
1447
|
+
corresponding ifTestOwner object to a value indicating
|
1448
|
+
itself. If the set operation succeeds then the manager has
|
1449
|
+
obtained ownership of the ifTestEntry, and the value of the
|
1450
|
+
ifTestId object is incremented by the agent (per the
|
1451
|
+
semantics of TestAndIncr). Failure of the set operation
|
1452
|
+
indicates that some other manager has obtained ownership of
|
1453
|
+
the ifTestEntry.
|
1454
|
+
|
1455
|
+
Once ownership is obtained, any test parameters can be
|
1456
|
+
setup, and then the test is initiated by setting ifTestType.
|
1457
|
+
On completion of the test, the agent sets ifTestStatus to
|
1458
|
+
'notInUse'. Once this occurs, the manager can retrieve the
|
1459
|
+
results. In the (rare) event that the invocation of tests
|
1460
|
+
by two network managers were to overlap, then there would be
|
1461
|
+
a possibility that the first test's results might be
|
1462
|
+
overwritten by the second test's results prior to the first
|
1463
|
+
|
1464
|
+
results being read. This unlikely circumstance can be
|
1465
|
+
detected by a network manager retrieving ifTestId at the
|
1466
|
+
same time as retrieving the test results, and ensuring that
|
1467
|
+
the results are for the desired request.
|
1468
|
+
|
1469
|
+
If ifTestType is not set within an abnormally long period of
|
1470
|
+
time after ownership is obtained, the agent should time-out
|
1471
|
+
the manager, and reset the value of the ifTestStatus object
|
1472
|
+
back to 'notInUse'. It is suggested that this time-out
|
1473
|
+
period be 5 minutes.
|
1474
|
+
|
1475
|
+
In general, a management station must not retransmit a
|
1476
|
+
request to invoke a test for which it does not receive a
|
1477
|
+
response; instead, it properly inspects an agent's MIB to
|
1478
|
+
determine if the invocation was successful. Only if the
|
1479
|
+
invocation was unsuccessful, is the invocation request
|
1480
|
+
retransmitted.
|
1481
|
+
|
1482
|
+
Some tests may require the interface to be taken off-line in
|
1483
|
+
order to execute them, or may even require the agent to
|
1484
|
+
reboot after completion of the test. In these
|
1485
|
+
circumstances, communication with the management station
|
1486
|
+
invoking the test may be lost until after completion of the
|
1487
|
+
test. An agent is not required to support such tests.
|
1488
|
+
However, if such tests are supported, then the agent should
|
1489
|
+
make every effort to transmit a response to the request
|
1490
|
+
which invoked the test prior to losing communication. When
|
1491
|
+
the agent is restored to normal service, the results of the
|
1492
|
+
test are properly made available in the appropriate objects.
|
1493
|
+
Note that this requires that the ifIndex value assigned to
|
1494
|
+
an interface must be unchanged even if the test causes a
|
1495
|
+
reboot. An agent must reject any test for which it cannot,
|
1496
|
+
perhaps due to resource constraints, make available at least
|
1497
|
+
the minimum amount of information after that test
|
1498
|
+
completes."
|
1499
|
+
::= { ifMIBObjects 3 }
|
1500
|
+
|
1501
|
+
ifTestEntry OBJECT-TYPE
|
1502
|
+
SYNTAX IfTestEntry
|
1503
|
+
MAX-ACCESS not-accessible
|
1504
|
+
STATUS deprecated
|
1505
|
+
DESCRIPTION
|
1506
|
+
"An entry containing objects for invoking tests on an
|
1507
|
+
interface."
|
1508
|
+
AUGMENTS { ifEntry }
|
1509
|
+
::= { ifTestTable 1 }
|
1510
|
+
|
1511
|
+
IfTestEntry ::=
|
1512
|
+
|
1513
|
+
SEQUENCE {
|
1514
|
+
ifTestId TestAndIncr,
|
1515
|
+
ifTestStatus INTEGER,
|
1516
|
+
ifTestType AutonomousType,
|
1517
|
+
ifTestResult INTEGER,
|
1518
|
+
ifTestCode OBJECT IDENTIFIER,
|
1519
|
+
ifTestOwner OwnerString
|
1520
|
+
}
|
1521
|
+
|
1522
|
+
ifTestId OBJECT-TYPE
|
1523
|
+
SYNTAX TestAndIncr
|
1524
|
+
MAX-ACCESS read-write
|
1525
|
+
STATUS deprecated
|
1526
|
+
DESCRIPTION
|
1527
|
+
"This object identifies the current invocation of the
|
1528
|
+
interface's test."
|
1529
|
+
::= { ifTestEntry 1 }
|
1530
|
+
|
1531
|
+
ifTestStatus OBJECT-TYPE
|
1532
|
+
SYNTAX INTEGER { notInUse(1), inUse(2) }
|
1533
|
+
MAX-ACCESS read-write
|
1534
|
+
STATUS deprecated
|
1535
|
+
DESCRIPTION
|
1536
|
+
"This object indicates whether or not some manager currently
|
1537
|
+
has the necessary 'ownership' required to invoke a test on
|
1538
|
+
this interface. A write to this object is only successful
|
1539
|
+
when it changes its value from 'notInUse(1)' to 'inUse(2)'.
|
1540
|
+
After completion of a test, the agent resets the value back
|
1541
|
+
to 'notInUse(1)'."
|
1542
|
+
::= { ifTestEntry 2 }
|
1543
|
+
|
1544
|
+
ifTestType OBJECT-TYPE
|
1545
|
+
SYNTAX AutonomousType
|
1546
|
+
MAX-ACCESS read-write
|
1547
|
+
STATUS deprecated
|
1548
|
+
DESCRIPTION
|
1549
|
+
"A control variable used to start and stop operator-
|
1550
|
+
initiated interface tests. Most OBJECT IDENTIFIER values
|
1551
|
+
assigned to tests are defined elsewhere, in association with
|
1552
|
+
specific types of interface. However, this document assigns
|
1553
|
+
a value for a full-duplex loopback test, and defines the
|
1554
|
+
special meanings of the subject identifier:
|
1555
|
+
|
1556
|
+
noTest OBJECT IDENTIFIER ::= { 0 0 }
|
1557
|
+
|
1558
|
+
When the value noTest is written to this object, no action
|
1559
|
+
is taken unless a test is in progress, in which case the
|
1560
|
+
test is aborted. Writing any other value to this object is
|
1561
|
+
|
1562
|
+
only valid when no test is currently in progress, in which
|
1563
|
+
case the indicated test is initiated.
|
1564
|
+
|
1565
|
+
When read, this object always returns the most recent value
|
1566
|
+
that ifTestType was set to. If it has not been set since
|
1567
|
+
the last initialization of the network management subsystem
|
1568
|
+
on the agent, a value of noTest is returned."
|
1569
|
+
::= { ifTestEntry 3 }
|
1570
|
+
|
1571
|
+
ifTestResult OBJECT-TYPE
|
1572
|
+
SYNTAX INTEGER {
|
1573
|
+
none(1), -- no test yet requested
|
1574
|
+
success(2),
|
1575
|
+
inProgress(3),
|
1576
|
+
notSupported(4),
|
1577
|
+
unAbleToRun(5), -- due to state of system
|
1578
|
+
aborted(6),
|
1579
|
+
failed(7)
|
1580
|
+
}
|
1581
|
+
MAX-ACCESS read-only
|
1582
|
+
STATUS deprecated
|
1583
|
+
DESCRIPTION
|
1584
|
+
"This object contains the result of the most recently
|
1585
|
+
requested test, or the value none(1) if no tests have been
|
1586
|
+
requested since the last reset. Note that this facility
|
1587
|
+
provides no provision for saving the results of one test
|
1588
|
+
when starting another, as could be required if used by
|
1589
|
+
multiple managers concurrently."
|
1590
|
+
::= { ifTestEntry 4 }
|
1591
|
+
|
1592
|
+
ifTestCode OBJECT-TYPE
|
1593
|
+
SYNTAX OBJECT IDENTIFIER
|
1594
|
+
MAX-ACCESS read-only
|
1595
|
+
STATUS deprecated
|
1596
|
+
DESCRIPTION
|
1597
|
+
"This object contains a code which contains more specific
|
1598
|
+
information on the test result, for example an error-code
|
1599
|
+
after a failed test. Error codes and other values this
|
1600
|
+
object may take are specific to the type of interface and/or
|
1601
|
+
test. The value may have the semantics of either the
|
1602
|
+
AutonomousType or InstancePointer textual conventions as
|
1603
|
+
defined in RFC 2579. The identifier:
|
1604
|
+
|
1605
|
+
testCodeUnknown OBJECT IDENTIFIER ::= { 0 0 }
|
1606
|
+
|
1607
|
+
is defined for use if no additional result code is
|
1608
|
+
available."
|
1609
|
+
::= { ifTestEntry 5 }
|
1610
|
+
|
1611
|
+
ifTestOwner OBJECT-TYPE
|
1612
|
+
SYNTAX OwnerString
|
1613
|
+
MAX-ACCESS read-write
|
1614
|
+
STATUS deprecated
|
1615
|
+
DESCRIPTION
|
1616
|
+
"The entity which currently has the 'ownership' required to
|
1617
|
+
invoke a test on this interface."
|
1618
|
+
::= { ifTestEntry 6 }
|
1619
|
+
|
1620
|
+
-- Deprecated Definitions - Groups
|
1621
|
+
|
1622
|
+
ifGeneralGroup OBJECT-GROUP
|
1623
|
+
OBJECTS { ifDescr, ifType, ifSpeed, ifPhysAddress,
|
1624
|
+
ifAdminStatus, ifOperStatus, ifLastChange,
|
1625
|
+
ifLinkUpDownTrapEnable, ifConnectorPresent,
|
1626
|
+
ifHighSpeed, ifName }
|
1627
|
+
STATUS deprecated
|
1628
|
+
DESCRIPTION
|
1629
|
+
"A collection of objects deprecated in favour of
|
1630
|
+
ifGeneralInformationGroup."
|
1631
|
+
::= { ifGroups 1 }
|
1632
|
+
|
1633
|
+
ifTestGroup OBJECT-GROUP
|
1634
|
+
OBJECTS { ifTestId, ifTestStatus, ifTestType,
|
1635
|
+
ifTestResult, ifTestCode, ifTestOwner }
|
1636
|
+
STATUS deprecated
|
1637
|
+
DESCRIPTION
|
1638
|
+
"A collection of objects providing the ability to invoke
|
1639
|
+
tests on an interface."
|
1640
|
+
::= { ifGroups 8 }
|
1641
|
+
|
1642
|
+
ifStackGroup OBJECT-GROUP
|
1643
|
+
OBJECTS { ifStackStatus }
|
1644
|
+
STATUS deprecated
|
1645
|
+
DESCRIPTION
|
1646
|
+
"The previous collection of objects providing information on
|
1647
|
+
the layering of MIB-II interfaces."
|
1648
|
+
::= { ifGroups 9 }
|
1649
|
+
|
1650
|
+
ifOldObjectsGroup OBJECT-GROUP
|
1651
|
+
OBJECTS { ifInNUcastPkts, ifOutNUcastPkts,
|
1652
|
+
ifOutQLen, ifSpecific }
|
1653
|
+
STATUS deprecated
|
1654
|
+
DESCRIPTION
|
1655
|
+
"The collection of objects deprecated from the original MIB-
|
1656
|
+
II interfaces group."
|
1657
|
+
::= { ifGroups 12 }
|
1658
|
+
|
1659
|
+
-- Deprecated Definitions - Compliance
|
1660
|
+
|
1661
|
+
ifCompliance MODULE-COMPLIANCE
|
1662
|
+
STATUS deprecated
|
1663
|
+
DESCRIPTION
|
1664
|
+
"A compliance statement defined in a previous version of
|
1665
|
+
this MIB module, for SNMP entities which have network
|
1666
|
+
interfaces."
|
1667
|
+
|
1668
|
+
MODULE -- this module
|
1669
|
+
MANDATORY-GROUPS { ifGeneralGroup, ifStackGroup }
|
1670
|
+
|
1671
|
+
GROUP ifFixedLengthGroup
|
1672
|
+
DESCRIPTION
|
1673
|
+
"This group is mandatory for all network interfaces which
|
1674
|
+
are character-oriented or transmit data in fixed-length
|
1675
|
+
transmission units."
|
1676
|
+
|
1677
|
+
GROUP ifHCFixedLengthGroup
|
1678
|
+
DESCRIPTION
|
1679
|
+
"This group is mandatory only for those network interfaces
|
1680
|
+
which are character-oriented or transmit data in fixed-
|
1681
|
+
length transmission units, and for which the value of the
|
1682
|
+
corresponding instance of ifSpeed is greater than 20,000,000
|
1683
|
+
bits/second."
|
1684
|
+
|
1685
|
+
GROUP ifPacketGroup
|
1686
|
+
DESCRIPTION
|
1687
|
+
"This group is mandatory for all network interfaces which
|
1688
|
+
are packet-oriented."
|
1689
|
+
|
1690
|
+
GROUP ifHCPacketGroup
|
1691
|
+
DESCRIPTION
|
1692
|
+
"This group is mandatory only for those network interfaces
|
1693
|
+
which are packet-oriented and for which the value of the
|
1694
|
+
corresponding instance of ifSpeed is greater than
|
1695
|
+
650,000,000 bits/second."
|
1696
|
+
|
1697
|
+
GROUP ifTestGroup
|
1698
|
+
DESCRIPTION
|
1699
|
+
"This group is optional. Media-specific MIBs which require
|
1700
|
+
interface tests are strongly encouraged to use this group
|
1701
|
+
for invoking tests and reporting results. A medium specific
|
1702
|
+
MIB which has mandatory tests may make implementation of
|
1703
|
+
|
1704
|
+
this group mandatory."
|
1705
|
+
|
1706
|
+
GROUP ifRcvAddressGroup
|
1707
|
+
DESCRIPTION
|
1708
|
+
"The applicability of this group MUST be defined by the
|
1709
|
+
media-specific MIBs. Media-specific MIBs must define the
|
1710
|
+
exact meaning, use, and semantics of the addresses in this
|
1711
|
+
group."
|
1712
|
+
|
1713
|
+
OBJECT ifLinkUpDownTrapEnable
|
1714
|
+
MIN-ACCESS read-only
|
1715
|
+
DESCRIPTION
|
1716
|
+
"Write access is not required."
|
1717
|
+
|
1718
|
+
OBJECT ifPromiscuousMode
|
1719
|
+
MIN-ACCESS read-only
|
1720
|
+
DESCRIPTION
|
1721
|
+
"Write access is not required."
|
1722
|
+
|
1723
|
+
OBJECT ifStackStatus
|
1724
|
+
SYNTAX INTEGER { active(1) } -- subset of RowStatus
|
1725
|
+
MIN-ACCESS read-only
|
1726
|
+
DESCRIPTION
|
1727
|
+
"Write access is not required, and only one of the six
|
1728
|
+
enumerated values for the RowStatus textual convention need
|
1729
|
+
be supported, specifically: active(1)."
|
1730
|
+
|
1731
|
+
OBJECT ifAdminStatus
|
1732
|
+
SYNTAX INTEGER { up(1), down(2) }
|
1733
|
+
MIN-ACCESS read-only
|
1734
|
+
DESCRIPTION
|
1735
|
+
"Write access is not required, nor is support for the value
|
1736
|
+
testing(3)."
|
1737
|
+
::= { ifCompliances 1 }
|
1738
|
+
|
1739
|
+
ifCompliance2 MODULE-COMPLIANCE
|
1740
|
+
STATUS deprecated
|
1741
|
+
DESCRIPTION
|
1742
|
+
"A compliance statement defined in a previous version of
|
1743
|
+
this MIB module, for SNMP entities which have network
|
1744
|
+
interfaces."
|
1745
|
+
|
1746
|
+
MODULE -- this module
|
1747
|
+
MANDATORY-GROUPS { ifGeneralInformationGroup, ifStackGroup2,
|
1748
|
+
ifCounterDiscontinuityGroup }
|
1749
|
+
|
1750
|
+
GROUP ifFixedLengthGroup
|
1751
|
+
DESCRIPTION
|
1752
|
+
"This group is mandatory for all network interfaces which
|
1753
|
+
are character-oriented or transmit data in fixed-length
|
1754
|
+
transmission units."
|
1755
|
+
|
1756
|
+
GROUP ifHCFixedLengthGroup
|
1757
|
+
DESCRIPTION
|
1758
|
+
"This group is mandatory only for those network interfaces
|
1759
|
+
which are character-oriented or transmit data in fixed-
|
1760
|
+
length transmission units, and for which the value of the
|
1761
|
+
corresponding instance of ifSpeed is greater than 20,000,000
|
1762
|
+
bits/second."
|
1763
|
+
|
1764
|
+
GROUP ifPacketGroup
|
1765
|
+
DESCRIPTION
|
1766
|
+
"This group is mandatory for all network interfaces which
|
1767
|
+
are packet-oriented."
|
1768
|
+
|
1769
|
+
GROUP ifHCPacketGroup
|
1770
|
+
DESCRIPTION
|
1771
|
+
"This group is mandatory only for those network interfaces
|
1772
|
+
which are packet-oriented and for which the value of the
|
1773
|
+
corresponding instance of ifSpeed is greater than
|
1774
|
+
650,000,000 bits/second."
|
1775
|
+
|
1776
|
+
GROUP ifRcvAddressGroup
|
1777
|
+
DESCRIPTION
|
1778
|
+
"The applicability of this group MUST be defined by the
|
1779
|
+
media-specific MIBs. Media-specific MIBs must define the
|
1780
|
+
exact meaning, use, and semantics of the addresses in this
|
1781
|
+
group."
|
1782
|
+
|
1783
|
+
OBJECT ifLinkUpDownTrapEnable
|
1784
|
+
MIN-ACCESS read-only
|
1785
|
+
DESCRIPTION
|
1786
|
+
"Write access is not required."
|
1787
|
+
|
1788
|
+
OBJECT ifPromiscuousMode
|
1789
|
+
MIN-ACCESS read-only
|
1790
|
+
DESCRIPTION
|
1791
|
+
"Write access is not required."
|
1792
|
+
|
1793
|
+
OBJECT ifStackStatus
|
1794
|
+
SYNTAX INTEGER { active(1) } -- subset of RowStatus
|
1795
|
+
MIN-ACCESS read-only
|
1796
|
+
DESCRIPTION
|
1797
|
+
"Write access is not required, and only one of the six
|
1798
|
+
enumerated values for the RowStatus textual convention need
|
1799
|
+
be supported, specifically: active(1)."
|
1800
|
+
|
1801
|
+
OBJECT ifAdminStatus
|
1802
|
+
SYNTAX INTEGER { up(1), down(2) }
|
1803
|
+
MIN-ACCESS read-only
|
1804
|
+
DESCRIPTION
|
1805
|
+
"Write access is not required, nor is support for the value
|
1806
|
+
testing(3)."
|
1807
|
+
|
1808
|
+
OBJECT ifAlias
|
1809
|
+
MIN-ACCESS read-only
|
1810
|
+
DESCRIPTION
|
1811
|
+
"Write access is not required."
|
1812
|
+
::= { ifCompliances 2 }
|
1813
|
+
|
1814
|
+
END
|