Source code of Windows XP (NT5)
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

555 lines
18 KiB

  1. IGMP-MIB DEFINITIONS ::= BEGIN
  2. IMPORTS
  3. MODULE-IDENTITY, OBJECT-TYPE, experimental, Counter32, Gauge32,
  4. Integer32, IpAddress, TimeTicks FROM SNMPv2-SMI
  5. RowStatus, TruthValue FROM SNMPv2-TC
  6. MODULE-COMPLIANCE, OBJECT-GROUP FROM SNMPv2-CONF;
  7. igmpMIB MODULE-IDENTITY
  8. LAST-UPDATED "9807281330Z"
  9. ORGANIZATION "IETF IDMR Working Group."
  10. CONTACT-INFO
  11. " Keith McCloghrie
  12. Cisco Systems, Inc.
  13. 170 West Tasman Drive
  14. San Jose, CA 95134-1706
  15. US
  16. Phone: +1 408 526 5260
  17. EMail: [email protected]"
  18. DESCRIPTION
  19. "The MIB module for IGMP Management."
  20. ::= { experimental 59 }
  21. igmpMIBObjects OBJECT IDENTIFIER ::= { igmpMIB 1 }
  22. igmp OBJECT IDENTIFIER ::= { igmpMIBObjects 1 }
  23. --
  24. -- The IGMP Interface Table
  25. --
  26. igmpInterfaceTable OBJECT-TYPE
  27. SYNTAX SEQUENCE OF IgmpInterfaceEntry
  28. MAX-ACCESS not-accessible
  29. STATUS current
  30. DESCRIPTION
  31. "The (conceptual) table listing the interfaces on which IGMP
  32. is enabled."
  33. ::= { igmp 1 }
  34. igmpInterfaceEntry OBJECT-TYPE
  35. SYNTAX IgmpInterfaceEntry
  36. MAX-ACCESS not-accessible
  37. STATUS current
  38. DESCRIPTION
  39. "An entry (conceptual row) representing an interface on
  40. which IGMP is enabled."
  41. INDEX { igmpInterfaceIfIndex }
  42. ::= { igmpInterfaceTable 1 }
  43. IgmpInterfaceEntry ::= SEQUENCE {
  44. igmpInterfaceIfIndex Integer32,
  45. igmpInterfaceQueryInterval Integer32,
  46. igmpInterfaceStatus RowStatus,
  47. igmpInterfaceVersion INTEGER,
  48. igmpInterfaceQuerier IpAddress,
  49. igmpInterfaceQueryMaxResponseTime Integer32,
  50. igmpInterfaceQuerierPresentTimeout Integer32, -- deprecated
  51. igmpInterfaceLeaveEnabled TruthValue, -- deprecated
  52. igmpInterfaceVersion1QuerierTimer Integer32,
  53. igmpInterfaceWrongVersionQueries Counter32,
  54. igmpInterfaceJoins Counter32,
  55. igmpInterfaceLeaves Counter32, -- deprecated
  56. igmpInterfaceGroups Gauge32,
  57. igmpInterfaceRobustness Integer32,
  58. igmpInterfaceProxyIfIndex Integer32,
  59. igmpInterfaceLastMembQueryIntvl Integer32,
  60. igmpInterfaceQuerierUpTime Integer32,
  61. igmpInterfaceQuerierExpiryTime Integer32
  62. }
  63. igmpInterfaceIfIndex OBJECT-TYPE
  64. SYNTAX Integer32
  65. MAX-ACCESS not-accessible
  66. STATUS current
  67. DESCRIPTION
  68. "The ifIndex value of the interface for which IGMP is
  69. enabled."
  70. ::= { igmpInterfaceEntry 1 }
  71. igmpInterfaceQueryInterval OBJECT-TYPE
  72. SYNTAX Integer32
  73. UNITS "seconds"
  74. MAX-ACCESS read-create
  75. STATUS current
  76. DESCRIPTION
  77. "The frequency at which IGMP Host-Query packets are
  78. transmitted on this interface."
  79. DEFVAL { 125 }
  80. ::= { igmpInterfaceEntry 2 }
  81. igmpInterfaceStatus OBJECT-TYPE
  82. SYNTAX RowStatus
  83. MAX-ACCESS read-create
  84. STATUS current
  85. DESCRIPTION
  86. "The activation of a row enables IGMP on the interface. The
  87. destruction of a row disables IGMP on the interface."
  88. ::= { igmpInterfaceEntry 3 }
  89. igmpInterfaceVersion OBJECT-TYPE
  90. SYNTAX INTEGER { version1(1), version2(2) }
  91. MAX-ACCESS read-create
  92. STATUS current
  93. DESCRIPTION
  94. "The version of IGMP which is running on this interface.
  95. This object can be used to configure a router capable of
  96. running either value. For IGMP to function correctly, all
  97. routers on a LAN must be configured to run the same version
  98. of IGMP on that LAN."
  99. DEFVAL { version2 }
  100. ::= { igmpInterfaceEntry 4 }
  101. igmpInterfaceQuerier OBJECT-TYPE
  102. SYNTAX IpAddress
  103. MAX-ACCESS read-only
  104. STATUS current
  105. DESCRIPTION
  106. "The address of the IGMP Querier on the IP subnet to which
  107. this interface is attached."
  108. ::= { igmpInterfaceEntry 5 }
  109. igmpInterfaceQueryMaxResponseTime OBJECT-TYPE
  110. SYNTAX Integer32
  111. UNITS "seconds"
  112. MAX-ACCESS read-create
  113. STATUS current
  114. DESCRIPTION
  115. "The maximum query response time advertised in IGMPv2
  116. queries on this interface."
  117. DEFVAL { 10 }
  118. ::= { igmpInterfaceEntry 6 }
  119. igmpInterfaceQuerierPresentTimeout OBJECT-TYPE
  120. SYNTAX Integer32
  121. UNITS "seconds"
  122. MAX-ACCESS read-create
  123. STATUS deprecated
  124. DESCRIPTION
  125. "A timeout interval. If no IGMPv2 queries are heard on this
  126. interface within this timeout interval, the local router
  127. will take over the Querier on the IP subnet to which this
  128. interface is attached. This object is now deprecated, since
  129. its value can be derived from igmpInterfaceRobustness."
  130. DEFVAL { 255 }
  131. ::= { igmpInterfaceEntry 7 }
  132. igmpInterfaceLeaveEnabled OBJECT-TYPE
  133. SYNTAX TruthValue
  134. MAX-ACCESS read-create
  135. STATUS deprecated
  136. DESCRIPTION
  137. "An indication of whether the processing of IGMPv2 Leave
  138. messages is enabled on this interface. This object is now
  139. deprecated since it must be true when igmpInterfaceVersion
  140. is version2, and must be false when it is version1 to comply
  141. with the IGMP specfication."
  142. DEFVAL { true }
  143. ::= { igmpInterfaceEntry 8 }
  144. igmpInterfaceVersion1QuerierTimer OBJECT-TYPE
  145. SYNTAX Integer32
  146. UNITS "seconds"
  147. MAX-ACCESS read-only
  148. STATUS current
  149. DESCRIPTION
  150. "The time remaining until the host assumes that there are no
  151. IGMPv1 routers present on the interface. While this is
  152. non-zero, the host will reply to all queries with version 1
  153. membership reports."
  154. ::= { igmpInterfaceEntry 9 }
  155. igmpInterfaceWrongVersionQueries OBJECT-TYPE
  156. SYNTAX Counter32
  157. MAX-ACCESS read-only
  158. STATUS current
  159. DESCRIPTION
  160. "The number of queries received whose IGMP version does not
  161. match igmpInterfaceVersion. IGMP requires that all routers
  162. on a LAN be configured to run the same version of IGMP.
  163. Thus, if any queries are received with the wrong version,
  164. this indicates a configuration error."
  165. ::= { igmpInterfaceEntry 10 }
  166. igmpInterfaceJoins OBJECT-TYPE
  167. SYNTAX Counter32
  168. MAX-ACCESS read-only
  169. STATUS current
  170. DESCRIPTION
  171. "The number of times a group membership has been added on
  172. this interface; that is, the number of times an entry for
  173. this interface has been added to the Cache Table. This
  174. object gives an indication of the amount of IGMP activity
  175. over time."
  176. ::= { igmpInterfaceEntry 11 }
  177. igmpInterfaceLeaves OBJECT-TYPE
  178. SYNTAX Counter32
  179. MAX-ACCESS read-only
  180. STATUS deprecated
  181. DESCRIPTION
  182. "The number of times a group membership has been removed
  183. from this interface; that is, the number of times an entry
  184. for this interface has been deleted from the Cache Table.
  185. This object is deprecated since its value cannot be usefully
  186. compared with igmpInterfaceJoins to get the number of groups
  187. joined. Instead, igmpInterfaceGroups gives the number of
  188. groups joined, which may be compared with igmpInterfaceJoins
  189. to derive the number of leaves."
  190. ::= { igmpInterfaceEntry 12 }
  191. igmpInterfaceGroups OBJECT-TYPE
  192. SYNTAX Gauge32
  193. MAX-ACCESS read-only
  194. STATUS current
  195. DESCRIPTION
  196. "The current number of entries for this interface in the
  197. Cache Table."
  198. ::= { igmpInterfaceEntry 13 }
  199. igmpInterfaceRobustness OBJECT-TYPE
  200. SYNTAX Integer32
  201. MAX-ACCESS read-create
  202. STATUS current
  203. DESCRIPTION
  204. "The Robustness Variable allows tuning for the expected
  205. packet loss on a subnet. If a subnet is expected to be
  206. lossy, the Robustness Variable may be increased. IGMP is
  207. robust to (Robustness Variable-1) packet losses."
  208. DEFVAL { 2 }
  209. ::= { igmpInterfaceEntry 14 }
  210. igmpInterfaceLastMembQueryIntvl OBJECT-TYPE
  211. SYNTAX Integer32
  212. UNITS "tenths of seconds"
  213. MAX-ACCESS read-create
  214. STATUS current
  215. DESCRIPTION
  216. "The Last Member Query Interval is the Max Response Time
  217. inserted into Group-Specific Queries sent in response to
  218. Leave Group messages, and is also the amount of time between
  219. Group-Specific Query messages. This value may be tuned to
  220. modify the leave latency of the network. A reduced value
  221. results in reduced time to detect the loss of the last
  222. member of a group."
  223. DEFVAL { 10 }
  224. ::= { igmpInterfaceEntry 15 }
  225. igmpInterfaceProxyIfIndex OBJECT-TYPE
  226. SYNTAX Integer32
  227. MAX-ACCESS read-create
  228. STATUS current
  229. DESCRIPTION
  230. "Some devices implement a form of IGMP proxying whereby
  231. memberships learned on the interface represented by this
  232. row, cause IGMP Host Membership Reports to be sent on the
  233. interface whose ifIndex value is given by this object. Such
  234. a device would implement the igmpV2RouterMIBGroup only on
  235. its router interfaces (those interfaces whose ifIndex value
  236. is given by this object on some interface). Typically, the
  237. value of this object is 0, indicating that no proxying is
  238. being done."
  239. DEFVAL { 0 }
  240. ::= { igmpInterfaceEntry 16 }
  241. igmpInterfaceQuerierUpTime OBJECT-TYPE
  242. SYNTAX Integer32
  243. UNITS "seconds"
  244. MAX-ACCESS read-only
  245. STATUS current
  246. DESCRIPTION
  247. "The number of seconds since igmpInterfaceQuerier was last
  248. changed."
  249. ::= { igmpInterfaceEntry 17 }
  250. igmpInterfaceQuerierExpiryTime OBJECT-TYPE
  251. SYNTAX Integer32
  252. UNITS "seconds"
  253. MAX-ACCESS read-only
  254. STATUS current
  255. DESCRIPTION
  256. "The number of seconds remaining before the Other Querier
  257. Present Timer expires. If the local system is the querier,
  258. the value of this object is zero."
  259. ::= { igmpInterfaceEntry 18 }
  260. --
  261. -- The IGMP Cache Table
  262. --
  263. igmpCacheTable OBJECT-TYPE
  264. SYNTAX SEQUENCE OF IgmpCacheEntry
  265. MAX-ACCESS not-accessible
  266. STATUS current
  267. DESCRIPTION
  268. "The (conceptual) table listing the IP multicast groups for
  269. which there are members on a particular interface."
  270. ::= { igmp 2 }
  271. igmpCacheEntry OBJECT-TYPE
  272. SYNTAX IgmpCacheEntry
  273. MAX-ACCESS not-accessible
  274. STATUS current
  275. DESCRIPTION
  276. "An entry (conceptual row) in the igmpCacheTable."
  277. INDEX { igmpCacheAddress, igmpCacheIfIndex }
  278. ::= { igmpCacheTable 1 }
  279. IgmpCacheEntry ::= SEQUENCE {
  280. igmpCacheAddress IpAddress,
  281. igmpCacheIfIndex Integer32,
  282. igmpCacheSelf TruthValue,
  283. igmpCacheLastReporter IpAddress,
  284. igmpCacheUpTime TimeTicks,
  285. igmpCacheExpiryTime TimeTicks,
  286. igmpCacheStatus RowStatus,
  287. igmpCacheVersion1HostTimer Integer32
  288. }
  289. igmpCacheAddress OBJECT-TYPE
  290. SYNTAX IpAddress
  291. MAX-ACCESS not-accessible
  292. STATUS current
  293. DESCRIPTION
  294. "The IP multicast group address for which this entry
  295. contains information."
  296. ::= { igmpCacheEntry 1 }
  297. igmpCacheIfIndex OBJECT-TYPE
  298. SYNTAX Integer32
  299. MAX-ACCESS not-accessible
  300. STATUS current
  301. DESCRIPTION
  302. "The interface for which this entry contains information for
  303. an IP multicast group address."
  304. ::= { igmpCacheEntry 2 }
  305. igmpCacheSelf OBJECT-TYPE
  306. SYNTAX TruthValue
  307. MAX-ACCESS read-create
  308. STATUS current
  309. DESCRIPTION
  310. "An indication of whether the local system is a member of
  311. this group address on this interface."
  312. DEFVAL { true }
  313. ::= { igmpCacheEntry 3 }
  314. igmpCacheLastReporter OBJECT-TYPE
  315. SYNTAX IpAddress
  316. MAX-ACCESS read-only
  317. STATUS current
  318. DESCRIPTION
  319. "The IP address of the source of the last membership report
  320. received for this IP Multicast group address on this
  321. interface. If no membership report has been received, this
  322. object has the value 0.0.0.0."
  323. ::= { igmpCacheEntry 4 }
  324. igmpCacheUpTime OBJECT-TYPE
  325. SYNTAX TimeTicks
  326. MAX-ACCESS read-only
  327. STATUS current
  328. DESCRIPTION
  329. "The time since the system joined this group address, or
  330. zero if the system is not currently a member."
  331. ::= { igmpCacheEntry 5 }
  332. igmpCacheExpiryTime OBJECT-TYPE
  333. SYNTAX TimeTicks
  334. MAX-ACCESS read-only
  335. STATUS current
  336. DESCRIPTION
  337. "The minimum amount of time remaining before this entry will
  338. be aged out."
  339. ::= { igmpCacheEntry 6 }
  340. igmpCacheStatus OBJECT-TYPE
  341. SYNTAX RowStatus
  342. MAX-ACCESS read-create
  343. STATUS current
  344. DESCRIPTION
  345. "The status of this entry."
  346. ::= { igmpCacheEntry 7 }
  347. igmpCacheVersion1HostTimer OBJECT-TYPE
  348. SYNTAX Integer32
  349. UNITS "seconds"
  350. MAX-ACCESS read-only
  351. STATUS current
  352. DESCRIPTION
  353. "The time remaining until the local router will assume that
  354. there are no longer any IGMP version 1 members on the IP
  355. subnet attached to this interface. Upon hearing any IGMPv1
  356. Membership Report, this value is reset to the group
  357. membership timer. While this time remaining is non-zero,
  358. the local router ignores any IGMPv2 Leave messages for this
  359. group that it receives on this interface."
  360. ::= { igmpCacheEntry 8 }
  361. igmpMIBConformance
  362. OBJECT IDENTIFIER ::= { igmpMIB 2 }
  363. igmpMIBCompliances
  364. OBJECT IDENTIFIER ::= { igmpMIBConformance 1 }
  365. igmpMIBGroups OBJECT IDENTIFIER ::= { igmpMIBConformance 2 }
  366. -- compliance statements
  367. igmpV1HostMIBCompliance MODULE-COMPLIANCE
  368. STATUS current
  369. DESCRIPTION
  370. "The compliance statement for hosts running IGMPv1 and
  371. implementing the IGMP MIB."
  372. MODULE -- this module
  373. MANDATORY-GROUPS { igmpBaseMIBGroup }
  374. OBJECT igmpInterfaceStatus
  375. MIN-ACCESS read-only
  376. DESCRIPTION
  377. "Write access is not required."
  378. ::= { igmpMIBCompliances 1 }
  379. igmpV1RouterMIBCompliance MODULE-COMPLIANCE
  380. STATUS current
  381. DESCRIPTION
  382. "The compliance statement for routers running IGMPv1 and
  383. implementing the IGMP MIB."
  384. MODULE -- this module
  385. MANDATORY-GROUPS { igmpBaseMIBGroup,
  386. igmpRouterMIBGroup
  387. }
  388. OBJECT igmpInterfaceStatus
  389. MIN-ACCESS read-only
  390. DESCRIPTION
  391. "Write access is not required."
  392. ::= { igmpMIBCompliances 2 }
  393. igmpV2HostMIBCompliance MODULE-COMPLIANCE
  394. STATUS current
  395. DESCRIPTION
  396. "The compliance statement for hosts running IGMPv2 and
  397. implementing the IGMP MIB."
  398. MODULE -- this module
  399. MANDATORY-GROUPS { igmpBaseMIBGroup,
  400. igmpV2HostMIBGroup
  401. }
  402. OBJECT igmpInterfaceStatus
  403. MIN-ACCESS read-only
  404. DESCRIPTION
  405. "Write access is not required."
  406. ::= { igmpMIBCompliances 3 }
  407. igmpV2RouterMIBCompliance MODULE-COMPLIANCE
  408. STATUS current
  409. DESCRIPTION
  410. "The compliance statement for routers running IGMPv2 and
  411. implementing the IGMP MIB."
  412. MODULE -- this module
  413. MANDATORY-GROUPS { igmpBaseMIBGroup,
  414. igmpRouterMIBGroup,
  415. igmpV2RouterMIBGroup
  416. }
  417. OBJECT igmpInterfaceStatus
  418. MIN-ACCESS read-only
  419. DESCRIPTION
  420. "Write access is not required."
  421. ::= { igmpMIBCompliances 4 }
  422. -- units of conformance
  423. igmpBaseMIBGroup OBJECT-GROUP
  424. OBJECTS { igmpCacheSelf, igmpCacheLastReporter,
  425. igmpCacheStatus, igmpInterfaceStatus
  426. }
  427. STATUS current
  428. DESCRIPTION
  429. "The basic collection of objects providing management of
  430. IGMP version 1 or 2."
  431. ::= { igmpMIBGroups 1 }
  432. igmpRouterMIBGroup OBJECT-GROUP
  433. OBJECTS { igmpCacheUpTime, igmpCacheExpiryTime,
  434. igmpInterfaceQueryInterval
  435. }
  436. STATUS current
  437. DESCRIPTION
  438. "A collection of additional objects for management of IGMP
  439. version 1 or 2 in routers."
  440. ::= { igmpMIBGroups 2 }
  441. igmpV2HostMIBGroup OBJECT-GROUP
  442. OBJECTS { igmpInterfaceQuerier,
  443. igmpInterfaceVersion1QuerierTimer
  444. }
  445. STATUS current
  446. DESCRIPTION
  447. "A collection of additional objects for management of IGMP
  448. version 2 in hosts."
  449. ::= { igmpMIBGroups 3 }
  450. igmpRouterVersion2MIBGroup OBJECT-GROUP
  451. OBJECTS { igmpInterfaceVersion,
  452. igmpInterfaceQueryMaxResponseTime,
  453. igmpInterfaceQuerierPresentTimeout,
  454. igmpInterfaceLeaveEnabled,
  455. igmpInterfaceWrongVersionQueries,
  456. igmpInterfaceJoins,
  457. igmpInterfaceLeaves,
  458. igmpCacheVersion1HostTimer
  459. }
  460. STATUS deprecated
  461. DESCRIPTION
  462. "A collection of additional objects for management of IGMP
  463. version 2 in routers. This group has been obsoleted by
  464. igmpV2RouterMIBGroup."
  465. ::= { igmpMIBGroups 4 }
  466. igmpV2RouterMIBGroup OBJECT-GROUP
  467. OBJECTS { igmpInterfaceVersion, igmpInterfaceQuerier,
  468. igmpInterfaceQueryMaxResponseTime,
  469. igmpInterfaceRobustness,
  470. igmpInterfaceWrongVersionQueries,
  471. igmpInterfaceJoins, igmpInterfaceGroups,
  472. igmpInterfaceLastMembQueryIntvl,
  473. igmpInterfaceQuerierUpTime,
  474. igmpInterfaceQuerierExpiryTime,
  475. igmpCacheVersion1HostTimer
  476. }
  477. STATUS current
  478. DESCRIPTION
  479. "A collection of additional objects for management of IGMP
  480. version 2 in routers."
  481. ::= { igmpMIBGroups 5 }
  482. igmpV2ProxyMIBGroup OBJECT-GROUP
  483. OBJECTS { igmpInterfaceProxyIfIndex }
  484. STATUS current
  485. DESCRIPTION
  486. "A collection of additional objects for management of IGMP
  487. proxy devices."
  488. ::= { igmpMIBGroups 6 }
  489. END