Job Async Monitoring MIB V0.10 (work-in-progress) 4 March 1998 -- Module: Job Async Monitoring MIB (work-in-progress) -- Author: Joe Filion, Ira McDonald -- File: jam_v010.txt, .dfm -- Date: 4 March 1998 - Version 0.10 Printer Working Group Joe Filion Job Monitoring Project Xerox Corporation (work-in-progress) Ira McDonald (individual contribution) High North Inc March 1998 Definitions of Managed Objects for Job Async Monitoring using SMIv2 Status of this Memo This document specifies the Job Async Monitoring (JAM) MIB, an individual contribution to the Job Monitoring Project (JMP) of the Printer Working Group (PWG), a work-in-progress MIB module for the entire printer industry, and requests discussion and suggestions for improvements. Distribution of this memo is unlimited. The JAM MIB specifies a lightweight SNMP trap registration mechanism for end-user clients, management stations, and management proxies. This SNMP trap registration mechanism is SNMP protocol version independent. This SNMP trap registration mechanism is security scheme independent. The JAM MIB is a companion to the PWG Job Monitoring MIB and the IETF/PWG Printer MIB (published separately). The JAM MIB is UNENCUMBERED by any patents pending or granted or other intellectual property considerations. Filion, McDonald [Page 1] Job Async Monitoring MIB V0.10 (work-in-progress) 4 March 1998 1. Introduction This document specifies the Job Async Monitoring (JAM) MIB, an individual contribution to the Job Monitoring Project (JMP) of the Printer Working Group (PWG), a work-in-progress MIB module for the entire printer industry, and requests discussion and suggestions for improvements. Distribution of this memo is unlimited. The JAM MIB specifies a lightweight SNMP trap registration mechanism for end-user clients, management stations, and management proxies. This SNMP trap registration mechanism is SNMP protocol version independent. This SNMP trap registration mechanism is security scheme independent. The JAM MIB is a companion to the PWG Job Monitoring MIB and the IETF/PWG Printer MIB (published separately). The JAM MIB is UNENCUMBERED by any patents pending or granted or other intellectual property considerations. The JAM MIB has been written in ASN.1 (OSI Abstract Syntax Notation One - ITU-T X.680/690 | ISO 8824/8825), using the IETF SNMPv2-SMI (Structure of Management Information - RFC 1902), the IETF SNMPv2-TC (Textual Conventions - RFC 1903), and the IETF CONF for SNMPv2 (Conformance Statements - RFC 1904) macros and textual conventions. Filion, McDonald [Page 2] Job Async Monitoring MIB V0.10 (work-in-progress) 4 March 1998 2. The SNMPv2 Network Management Framework The SNMPv2 Network Management Framework consists of nine major components. They are: o STD 17, RFC 1213 defines MIB-II, the core set of managed objects for the Internet suite of protocols. o RFC 1901 which introduces the Community-based SNMPv2 Protocol; o RFC 1902 which defines the SNMPv2 SMI (Structure of Mgmt Info), the mechanisms used for describing and naming objects for the purpose of management; o RFC 1903 which defines the SNMPv2 Textual Conventions (TC), the mechanisms used for defining 'named object types', for use in defining managed objects; o RFC 1904 which defines the SNMPv2 Conformance (CONF), the mechanisms used for defining 'conformance statements', for use in specifying precise levels of implementation conformance for management agents; o RFC 1905 which defines the SNMPv2 Protocol used for network access to managed objects; o RFC 1906 which defines the SNMPv2 Transport Mappings for the SNMPv2 Protocol; o RFC 1907 which defines the SNMPv2 MIB for the management of the SNMPv2 Protocol; and o RFC 1908 which defines coexistence between the SNMPv1 Protocol and the SNMPv2 Protocol. The Framework permits new objects to be defined for the purpose of experimentation and evaluation. 2.1. SNMP Object Definitions Managed objects are accessed via a virtual information store, termed the Management Information Base or MIB. Objects in the MIB are defined using the subset of Abstract Syntax Notation One (ASN.1) defined in the SMI. In particular, each object object type is named by an OBJECT IDENTIFIER, an administratively assigned name. The object type together with an object instance serves to uniquely identify a specific instantiation of the object. For human convenience, we often use a textual string, termed the descriptor, to refer to the object type. Filion, McDonald [Page 3] Job Async Monitoring MIB V0.10 (work-in-progress) 4 March 1998 3. Managed Object Usage - JAM MIB 3.1. Overview of Object Groups Four object groups are specified in the JAM MIB. A diagram of their relationships appears below: brief comment (eg, 'Capabilities') above each box; object group name (eg, 'General') inside each box; conformance level in parentheses ('(Mandatory)' or '(Cond Mand)') inside each box. An object group name in parentheses (eg, '(Trap Client)') is a reference to a previously defined object group. - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - Capabilities |-----------| | General | |(Mandatory)| |-----------| : : : Client Registration : |-----------| : 1-n | Client | :.........|(Mandatory)| : |-----------| : : : : : : Client View Subtree : : |-----------| : : 1-n | View | : :.........|(Cond Mand)| : |-----------| : : Client Lookup By Address : |-----------| |-----------| : 1-n |Client Map | 1-1 | (Client) | :.........|(Cond Mand)|..............................|(Mandatory)| |-----------| |-----------| - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - Groups in PWG Job Async Monitoring MIB Filion, McDonald [Page 4] Job Async Monitoring MIB V0.10 (work-in-progress) 4 March 1998 Four object groups are specified in the JAM MIB, as follows: 1) General Group (Mandatory) - 'jamGeneralTable' contains one entry for general capabilities information on the job async monitoring subsystem on this host system; - the entry supports a bit-mask of ALL mandatory, conditionally mandatory, and optional JAM MIB object groups which are supported by a given management agent implementation (set by the responding management agent); - the entry supports a bit-mask of ALL mandatory, conditionally mandatory, and optional JAM MIB object groups supporting dynamic create (via 'createAndGo') which are supported by a given management agent implementation (set by the responding management agent); - the entry supports a bit-mask of ALL mandatory, conditionally mandatory, and optional JAM MIB object groups supporting existing row update (via SNMP Set) which are supported by a given management agent implementation (set by the responding management agent); - the entry supports a bit-mask of ALL row persistence levels for JAM MIB object groups which are supported by a given management agent implementation (set by the responding management agent); - the entry supports a bit-mask of ALL SNMP transport domains (ie, underlying protocol suites) which are supported by a given management agent implementation (set by the responding management agent); - the entry supports a bit-mask statement of ALL SNMP versions (ie, protocol versions) which are supported by a given management agent implementation (set by the responding management agent). 2) Client Group (Mandatory) - 'jamClientTable' contains entries for each 'trap client' (ie, management station or proxy) registered on this host system; - each entry supports a row status ('createAndGo' or 'active' for dynamic allocation) or ('notInService' or 'active' for static allocation); - each entry supports a row persistence ('volatile', 'nonvolatile', 'permanent', or 'readonly') - each entry supports a row activation timestamp (set by the responding management agent); - each entry supports a row expiration timestamp (set by the requesting management station or proxy); - each entry supports an SNMP transport domain (set by the requesting management station or proxy); - each entry supports an SNMP transport address (set by the requesting management station or proxy); - each entry supports an SNMP protocol version (set by the requesting management station or proxy); - each entry supports a base object subtree 'scope' (set by the requesting management station or proxy). 3) View Group (Conditionally Mandatory) - 'jamViewTable' contains entries for each 'trap view' (ie, refined scope) registered on this host system; Filion, McDonald [Page 5] Job Async Monitoring MIB V0.10 (work-in-progress) 4 March 1998 - each entry supports a row status ('createAndGo' or 'active' for dynamic allocation) or ('notInService' or 'active' for static allocation); - each entry supports a refined object subtree 'scope' (set by the requesting management station or proxy). - each entry supports an include/exclude flag for the 'scope' (set by the requesting management station or proxy). 4) Client Map Group (Mandatory) - 'jamClientMapTable' contains entries for each 'trap client' (ie, management station or proxy) registered on this host system; - each entry supports an SNMP transport domain (INDEX element) (specified by the requesting management station or proxy); - each entry supports an SNMP transport address (INDEX element) (specified by the requesting management station or proxy); - each entry supports a trap client index (read-only element) (returned by the responding management agent). Filion, McDonald [Page 6] Job Async Monitoring MIB V0.10 (work-in-progress) 4 March 1998 3.2. Relationship to other MIBs 3.2.1. IETF Historic SNMPv2 Party MIB (RFC 1447) The entire JAM MIB was inspired by the Historic SNMPv2 Party MIB (RFC 1447). 3.2.2. IETF Printer MIB (RFC 1759) The Client group of the JAM MIB supports registration of an object subtree base view (which may include the trap defined in the Printer MIB). The View group of the JAM MIB supports registration of an object subtree refined view (which may include the trap defined in the Printer MIB). Filion, McDonald [Page 7] Job Async Monitoring MIB V0.10 (work-in-progress) 4 March 1998 4. Managed Object Definitions - JAM MIB Job-Async-Monitoring-MIB DEFINITIONS ::= BEGIN -- Module: Job Async Monitoring MIB (work-in-progress) -- Author: Joe Filion, Ira McDonald -- File: jam_v010.mib -- Date: 4 March 1998 - Version 0.10 IMPORTS MODULE-IDENTITY, OBJECT-TYPE, internet, enterprises, Integer32 FROM SNMPv2-SMI -- RFC 1902 TEXTUAL-CONVENTION, RowStatus, TruthValue, DateAndTime FROM SNMPv2-TC -- RFC 1903 MODULE-COMPLIANCE, OBJECT-GROUP FROM SNMPv2-CONF; -- RFC 1904 jobAsyncMonMIB MODULE-IDENTITY LAST-UPDATED "9703040000Z" ORGANIZATION "Printer Working Group (PWG)" CONTACT-INFO "Joe Filion Postal: Xerox Corporation, MS 834-03E 300 Canalview Blvd Rochester, NY 14623 Voice: 716-231-0976 Fax: 716-427-4600 Email: Joe_Filion@mc.xerox.com Ira McDonald Postal: High North Inc 221 Ridge Ave Grand Marais, MI 49839 Voice: 906-494-2434 Fax: 906-494-2434 (by prior arrangement only) Email: imcdonal@eso.mc.xerox.com" DESCRIPTION "The MIB module for asynchronous monitoring (via SNMP traps) of jobs in servers, printers, and other devices, as well as async monitoring (via SNMP traps) of all open standard MIB modules. Version: 0.10" ::= { enterprises pwg(2699) mibs(1) jobAsyncMonMIB(999) } -- -- Base Arc Definitions -- jamMIBObjects OBJECT IDENTIFIER ::= { jobAsyncMonMIB 1 } jamMIBNotifications OBJECT IDENTIFIER ::= { jobAsyncMonMIB 2 } Filion, McDonald [Page 8] Job Async Monitoring MIB V0.10 (work-in-progress) 4 March 1998 jamMIBConformance OBJECT IDENTIFIER ::= { jobAsyncMonMIB 3 } -- -- Textual Conventions -- JamGroupSupportTC ::= TEXTUAL-CONVENTION STATUS current DESCRIPTION "This type is used to specify ALL mandatory, conditionally mandatory, and optional Job Async Monitoring MIB object groups supported by this management agent implementation (ie, version) on this host system, specified in a bit-mask. 1 : jamGeneralGroup -- 2**0 - Mandatory 2 : jamClientGroup -- 2**1 - Mandatory 4 : jamViewGroup -- 2**2 - Cond Mandatory 8 : jamClientMapGroup -- 2**3 - Cond Mandatory Usage: Conforming management agents SHALL ALWAYS accurately report their support for Job Async Monitoring MIB groups." SYNTAX Integer32 (0..2147483647) JamRowPersistenceTC ::= TEXTUAL-CONVENTION STATUS current DESCRIPTION "This type is used to specify ALL row persistence values supported by this management agent implementation (ie, version) on this host system, specified in a bit-mask. 1 : volatile -- 2**0 2 : nonvolatile -- 2**1 4 : permanent -- 2**2 8 : readonly -- 2**3 -- Reserved for vendor-specific extensions 65536 : reservedLowest -- 2**16 ... 1073741824 : reservedHighest -- 2**30 Usage: Conforming management agents MAY support vendor-specific extensions to 'JamRowPersistenceTC'. Usage: Conforming management agents SHALL ALWAYS interpret persistence as follows: 1) 'volatile' rows NEED NOT be saved across power cycles, MAY contain one or more 'read-[create|write|only]' objects, and their underlying storage MAY be removable (eg, stored in RAM, PCMCIA card, etc); 2) 'nonvolatile' rows SHALL be saved across power cycles, MAY contain one or more 'read-[create|write|only]' objects, and their underlying storage MAY be removable, Filion, McDonald [Page 9] Job Async Monitoring MIB V0.10 (work-in-progress) 4 March 1998 (eg, stored in CD-ROM, font cartridge, hard disk, etc); 3) 'permanent' rows SHALL be saved across power cycles, MAY contain one or more 'read-[write|only]' objects, and their underlying storage SHALL NOT be removable (eg, stored in EEPROM, battery-backed RAM, bubble, etc) and conforming management agents SHALL NOT delete such rows; 4) 'readonly' rows SHALL be saved across power cycles, SHALL contain exclusively 'read-only' objects, and their underlying storage SHALL NOT be removable (eg, stored in ROM, ASIC, etc) and conforming management agents SHALL NOT delete such rows. Note: Equivalent to SNMPv2 'StorageType' textual convention, which has an unfortunately ambiguous name. Usage: Conforming management agents SHALL ALWAYS support 'volatile' (lost across power cycles), Usage: Conforming management agents NEED NOT support any other values of persistence." REFERENCE "See: 'hrStorageType' in the Storage group of the IETF Host Resources MIB (RFC 1514). See: 'StorageType' textual convention in the Historic SNMPv2 Party MIB (RFC 1447). See: 'StorageType' textual convention in the IETF SNMPv2 Textual Conventions (RFC 1903)." SYNTAX Integer32 (0..2147483647) JamSNMPTransportTC ::= TEXTUAL-CONVENTION STATUS current DESCRIPTION "This type is used to specify ALL SNMP transport domains supported by this management agent implementation (ie, version) on this host system, specified in a bit-mask. The bit-values are assigned algorithmically from the final arc of the 'snmp...Domain' object identifiers (defined in RFC 1906) by the formula 'bit-value = 2**(domain-1)'. 1 : snmpTransportUDP -- 2**0 2 : snmpTransportCLMS -- 2**1 4 : snmpTransportCOMS -- 2**2 8 : snmpTransportDDP -- 2**3 16 : snmpTransportIPX -- 2**4 -- Reserved for vendor-specific extensions 65536 : reservedLowest -- 2**16 ... 1073741824 : reservedHighest -- 2**30 Usage: Conforming management agents MAY support vendor-specific extensions to 'JamSNMPTransportTC'. Filion, McDonald [Page 10] Job Async Monitoring MIB V0.10 (work-in-progress) 4 March 1998 Usage: Conforming management agents SHALL ALWAYS accurately report their support for SNMP transport domains." REFERENCE "See: 'snmpUDPDomain' (SNMP over UDP transport - Internet) 'snmpCLNSDomain' (SNMP over CLNS transport - OSI) 'snmpCONSDomain' (SNMP over CONS transport - OSI) 'snmpDDPDomain' (SNMP over DDP transport - Appletalk) 'snmpIPXDomain' (SNMP over IPX transport - NetWare) SNMP transport domain object identifiers IETF SNMPv2 Transport Mappings (RFC 1906)." SYNTAX Integer32 (0..2147483647) JamSNMPAddressTC ::= TEXTUAL-CONVENTION STATUS current DESCRIPTION "This type is used to specify ALL SNMP transport addresses supported by this management agent implementation (ie, version) on this host system." REFERENCE "See: 'SnmpUDPAddress' (IP addr, UDP port - Internet), 'SnmpOSIAddress' (len, NSAP addr, TSelector - OSI), 'SnmpNBPAddress' (object, type, zone - AppleTalk), 'SnmpIPXAddress' (net no, MAC addr, socket - NetWare) textual conventions in the IETF SNMPv2 Transport Mappings (RFC 1906)." SYNTAX OCTET STRING (SIZE (0..255)) JamSNMPVersionTC ::= TEXTUAL-CONVENTION STATUS current DESCRIPTION "This type is used to specify ALL SNMP protocol versions supported by this management agent implementation (ie, version) on this host system, specified in a bit-mask. 1 : snmpV1Community -- 2**0 -- SNMPv1 Final Standard w/ Communities (RFC 1157) 2 : snmpV1Party -- 2**1 -- SNMPv1 Historic w/ Party MIB (RFC 1353) 4 : snmpV2Party -- 2**2 -- SNMPv2 Historic w/ Party MIB (RFC 1447) 8 : snmpV2Community -- 2**3 -- SNMPv2 Draft Standard w/ Communities (RFC 1905) 16 : snmpV3Security -- 2**4 -- SNMPv3 Proposed Standard w/ Security (RFC 2271-2275) -- Reserved for vendor-specific extensions 65536 : reservedLowest -- 2**16 ... 1073741824 : reservedHighest -- 2**30 Usage: Conforming management agents MAY support vendor-specific extensions to 'JamSNMPVersionTC'. Filion, McDonald [Page 11] Job Async Monitoring MIB V0.10 (work-in-progress) 4 March 1998 Usage: Conforming management agents SHALL ALWAYS accurately report their support for SNMP protocol versions." REFERENCE "See: IETF SNMP specifications cited above." SYNTAX Integer32 (0..2147483647) -- -- Object Definitions -- -- General Group (Mandatory) -- -- Implementation of this group is mandatory for all systems. jamGeneral OBJECT IDENTIFIER ::= { jamMIBObjects 1 } jamGeneralTable OBJECT-TYPE SYNTAX SEQUENCE OF JamGeneralEntry MAX-ACCESS not-accessible STATUS current DESCRIPTION "A table of general counters and capabilities for ease of use of the XCMI Job Async Monitoring MIB on this host system. Usage: The ONLY valid row in the 'jamGeneralTable' SHALL ALWAYS have a 'jamGeneralIndex' of one ('1')." ::= { jamGeneral 2 } jamGeneralEntry OBJECT-TYPE SYNTAX JamGeneralEntry MAX-ACCESS not-accessible STATUS current DESCRIPTION "An entry of general counters and capabilities for ease of use of the XCMI Job Async Monitoring MIB on this host system. Usage: The ONLY valid row in the 'jamGeneralTable' SHALL ALWAYS have a 'jamGeneralIndex' of one ('1')." INDEX { jamGeneralIndex } ::= { jamGeneralTable 1 } JamGeneralEntry ::= SEQUENCE { jamGeneralIndex Integer32 (1..1), jamGeneralGroupSupport JamGroupSupportTC, jamGeneralCreateSupport JamGroupSupportTC, jamGeneralUpdateSupport JamGroupSupportTC, jamGeneralRowPersistenceSupport JamRowPersistenceTC, jamGeneralSNMPTransportSupport JamSNMPTransportTC, jamGeneralSNMPVersionSupport JamSNMPVersionTC, jamGeneralHighestClientIndex Integer32 (0..2147483647), jamGeneralMaximumClientIndex Integer32 (0..2147483647), jamGeneralMaximumViewIndex Integer32 (0..2147483647) Filion, McDonald [Page 12] Job Async Monitoring MIB V0.10 (work-in-progress) 4 March 1998 } jamGeneralIndex OBJECT-TYPE SYNTAX Integer32 (1..1) MAX-ACCESS not-accessible STATUS current DESCRIPTION "This object is used to specify a unique value used to identify this conceptual row in the 'jamGeneralTable'. Usage: The ONLY valid row in the 'jamGeneralTable' SHALL ALWAYS have a 'jamGeneralIndex' of one ('1')." -- DEFVAL intentionally omitted - not permitted on an index object ::= { jamGeneralEntry 1 } jamGeneralGroupSupport OBJECT-TYPE SYNTAX JamGroupSupportTC MAX-ACCESS read-only STATUS current DESCRIPTION "This object is used to specify ALL mandatory, conditionally mandatory, and optional Job Async Monitoring MIB object groups supported by this management agent implementation (ie, version) on this host system, specified in a bit-mask. Usage: Conforming management agents SHALL ALWAYS accurately report their support for Job Async Monitoring MIB groups." DEFVAL { 3 } -- mandatory groups ::= { jamGeneralEntry 2 } jamGeneralCreateSupport OBJECT-TYPE SYNTAX JamGroupSupportTC MAX-ACCESS read-only STATUS current DESCRIPTION "This object is used to specify ALL mandatory, conditionally mandatory, and optional Job Async Monitoring MIB object groups supported for dynamic row creation (via 'createAnd[Go|Wait') by this management agent implementation (ie, version) on this host system, specified in a bit-mask. Usage: Conforming management agents SHALL ALWAYS accurately report their support for Job Async Monitoring MIB groups." DEFVAL { 0 } -- no mandatory create groups ::= { jamGeneralEntry 3 } jamGeneralUpdateSupport OBJECT-TYPE SYNTAX JamGroupSupportTC MAX-ACCESS read-only STATUS current DESCRIPTION "This object is used to specify ALL mandatory, conditionally mandatory, and optional Job Async Monitoring MIB object groups Filion, McDonald [Page 13] Job Async Monitoring MIB V0.10 (work-in-progress) 4 March 1998 supported for existing row update (via SNMP Set-Request PDUs) by this management agent implementation (ie, version) on this host system, specified in a bit-mask. Usage: Conforming management agents SHALL ALWAYS accurately report their support for Job Async Monitoring MIB groups." DEFVAL { 2 } -- one mandatory update group ::= { jamGeneralEntry 4 } jamGeneralRowPersistenceSupport OBJECT-TYPE SYNTAX JamRowPersistenceTC MAX-ACCESS read-only STATUS current DESCRIPTION "This type is used to specify ALL row persistence values supported by this management agent implementation (ie, version) on this host system, specified in a bit-mask. Usage: Conforming management agents SHALL ALWAYS report their supported values as a 'bit-mask' formed via the bit-wise OR of each supported row persistence 'bit-value' specified in the 'JamRowPersistenceTC' textual convention. Usage: Conforming management agents SHALL ALWAYS support 'volatile' (lost across power cycles), Usage: Conforming management agents NEED NOT support any other values of persistence." REFERENCE "See: 'jamClientRowPersistence' object in this MIB." DEFVAL { 1 } -- volatile ::= { jamGeneralEntry 5 } jamGeneralSNMPTransportSupport OBJECT-TYPE SYNTAX JamSNMPTransportTC MAX-ACCESS read-only STATUS current DESCRIPTION "This object is used to specify ALL SNMP transport domains supported by this management agent implementation (ie, version) on this host system, specified in a bit-mask. Usage: Conforming management agents SHALL ALWAYS report their supported values as a 'bit-mask' formed via the bit-wise OR of each supported SNMP transport mapping 'bit-value' specified in the 'JamSNMPTransportTC' textual convention." REFERENCE "See: 'jamClientSNMPTransport' object in this MIB." -- DEFVAL intentionally omitted - agents SHALL ALWAYS report support ::= { jamGeneralEntry 6 } jamGeneralSNMPVersionSupport OBJECT-TYPE SYNTAX JamSNMPVersionTC Filion, McDonald [Page 14] Job Async Monitoring MIB V0.10 (work-in-progress) 4 March 1998 MAX-ACCESS read-only STATUS current DESCRIPTION "This object is used to specify ALL SNMP protocol versions supported by this management agent implementation (ie, version) on this host system, specified in a bit-mask. Usage: Conforming management agents SHALL ALWAYS report their supported values as a 'bit-mask' formed via the bit-wise OR of each supported SNMP protocol version 'bit-value' specified in the 'JamSNMPVersionTC' textual convention." REFERENCE "See: 'jamClientSNMPVersion' object in this MIB." -- DEFVAL intentionally omitted - agents SHALL ALWAYS report support ::= { jamGeneralEntry 7 } jamGeneralHighestClientIndex OBJECT-TYPE SYNTAX Integer32 (0..2147483647) MAX-ACCESS read-only STATUS current DESCRIPTION "This object is used to specify the highest value used to identify ANY 'active' conceptual row in the 'jamClientTable' which corresponds to a registered trap client (management station or proxy). Usage: This object MAY be permanent (ie, preserved across all hardware resets). Usage: Conforming management stations or proxies SHOULD read this object to obtain information about the 'next available' value for 'jamClientIndex', prior to trap registration when: a) 'jamClientRowStatus' goes from 'notInService' to 'active' (for static allocation); or b) 'jamClientRowStatus' goes from 'createAndGo' to 'active' (for dynamic allocation)." -- DEFVAL intentionally omitted - agents SHALL ALWAYS report support ::= { jamGeneralEntry 8 } jamGeneralMaximumClientIndex OBJECT-TYPE SYNTAX Integer32 (0..2147483647) MAX-ACCESS read-only STATUS current DESCRIPTION "This object is used to specify the maximum value allowed to identify ANY 'active' conceptual row in the 'jamClientTable' which corresponds to a registered trap client (management station or proxy). Usage: This object MAY be permanent (ie, preserved across all hardware resets). Usage: Conforming management stations or proxies SHOULD read Filion, McDonald [Page 15] Job Async Monitoring MIB V0.10 (work-in-progress) 4 March 1998 this object to obtain information about the 'last available' value for 'jamClientIndex', prior to trap registration when: a) 'jamClientRowStatus' goes from 'notInService' to 'active' (for static allocation); or b) 'jamClientRowStatus' goes from 'createAndGo' to 'active' (for dynamic allocation)." -- DEFVAL intentionally omitted - agents SHALL ALWAYS report support ::= { jamGeneralEntry 9 } jamGeneralMaximumViewIndex OBJECT-TYPE SYNTAX Integer32 (0..2147483647) MAX-ACCESS read-only STATUS current DESCRIPTION "This object is used to specify the maximum value allowed to identify ANY 'active' conceptual row in the 'jamViewTable' which corresponds to a registered trap client (management station or proxy). Usage: This object MAY be permanent (ie, preserved across all hardware resets). Usage: Conforming management stations or proxies SHOULD read this object to obtain information about the 'last available' value for 'jamViewIndex', prior to trap registration when: a) 'jamViewRowStatus' goes from 'notInService' to 'active' (for static allocation); or b) 'jamViewRowStatus' goes from 'createAndGo' to 'active' (for dynamic allocation)." -- DEFVAL intentionally omitted - agents SHALL ALWAYS report support ::= { jamGeneralEntry 10 } -- Client Group (Mandatory) -- -- Implementation of this group is mandatory for all systems. jamClient OBJECT IDENTIFIER ::= { jamMIBObjects 2 } jamClientTable OBJECT-TYPE SYNTAX SEQUENCE OF JamClientEntry MAX-ACCESS not-accessible STATUS current DESCRIPTION "A table of SNMP trap clients (management stations or proxies) registered for trap delivery from this host system. Usage: SNMP version/transport independent trap registration." REFERENCE "See: Party group in Historic SNMPv2 Party MIB (RFC 1447)." ::= { jamClient 2 } jamClientEntry OBJECT-TYPE SYNTAX JamClientEntry Filion, McDonald [Page 16] Job Async Monitoring MIB V0.10 (work-in-progress) 4 March 1998 MAX-ACCESS not-accessible STATUS current DESCRIPTION "An entry for an SNMP trap client (management station or proxy) registered for trap delivery from this host system." INDEX { jamClientIndex } ::= { jamClientTable 1 } JamClientEntry ::= SEQUENCE { jamClientIndex Integer32 (1..2147483647), jamClientRowStatus RowStatus, jamClientRowPersistence JamRowPersistenceTC, jamClientRowActivationTime DateAndTime, jamClientRowExpirationTime DateAndTime, jamClientSNMPTransport JamSNMPTransportTC, jamClientSNMPAddress JamSNMPAddressTC, jamClientSNMPVersion JamSNMPVersionTC, jamClientObjectSubtree OBJECT IDENTIFIER } jamClientIndex OBJECT-TYPE SYNTAX Integer32 (1..2147483647) MAX-ACCESS not-accessible STATUS current DESCRIPTION "This object is used to specify the unique value used to identify this conceptual row in the 'jamClientTable' which corresponds to this registered trap client (management station or proxy). Usage: This object MAY be permanent (ie, preserved across all hardware resets)." REFERENCE "See: 'jamGeneralHighestClientIndex' object in this MIB. See: 'jamGeneralMaximumClientIndex' object in this MIB. See: 'jamClientMapClientIndex' object in this MIB." -- DEFVAL intentionally omitted - not permitted on an index object ::= { jamClientEntry 1 } jamClientRowStatus OBJECT-TYPE SYNTAX RowStatus MAX-ACCESS read-create STATUS current DESCRIPTION "This object is used to manage the row status of this conceptual row in the 'jamClientTable'. Usage: Conforming management agents SHALL ALWAYS support 'active(1)' and 'notInService(2)' (for static allocation). Usage: Conforming management agents MAY ALSO support 'createAndGo(4)' and 'destroy(6)' (for dynamic allocation). Filion, McDonald [Page 17] Job Async Monitoring MIB V0.10 (work-in-progress) 4 March 1998 Usage: Conforming management agents NEED NOT support 'notReady(3)' or 'createAndWait(5)' (for partial allocation)." -- DEFVAL intentionally omitted - not permitted on a row status object ::= { jamClientEntry 2 } jamClientRowPersistence OBJECT-TYPE SYNTAX JamRowPersistenceTC MAX-ACCESS read-create STATUS current DESCRIPTION "This object is used to specify the row persistence of this conceptual row in the 'jamClientTable' (and any associated conceptual rows in the 'jamViewTable'). Usage: Conforming management agents SHALL ALWAYS support 'volatile' (lost across power cycles), Usage: Conforming management agents NEED NOT support any other values of persistence." DEFVAL { 1 } -- volatile ::= { jamClientEntry 3 } jamClientRowActivationTime OBJECT-TYPE SYNTAX DateAndTime MAX-ACCESS read-only STATUS current DESCRIPTION "This object is used to specify the activation time of this conceptual row in the 'jamClientTable' (and any associated conceptual rows in the 'jamViewTable'). Usage: Conforming management agents SHALL ALWAYS timestamp each conceptual row in the 'jamClientTable' when a) 'jamClientRowStatus' goes from 'notInService' to 'active' (for static allocation); or b) 'jamClientRowStatus' goes from 'createAndGo' to 'active' (for dynamic allocation)." -- DEFVAL intentionally omitted - agents SHALL ALWAYS timestamp rows ::= { jamClientEntry 4 } jamClientRowExpirationTime OBJECT-TYPE SYNTAX DateAndTime MAX-ACCESS read-create STATUS current DESCRIPTION "This object is used to specify the expiration time of this conceptual row in the 'jamClientTable' (and any associated conceptual rows in the 'jamViewTable'). Usage: Conforming management stations or proxies MAY timestamp each conceptual row in the 'jamClientTable' when a) 'jamClientRowStatus' goes from 'notInService' to 'active' Filion, McDonald [Page 18] Job Async Monitoring MIB V0.10 (work-in-progress) 4 March 1998 (for static allocation); or b) 'jamClientRowStatus' goes from 'createAndGo' to 'active' (for dynamic allocation)." DEFVAL { '0000000000000000'H } -- no expiration time (infinite) ::= { jamClientEntry 5 } jamClientSNMPTransport OBJECT-TYPE SYNTAX JamSNMPTransportTC MAX-ACCESS read-create STATUS current DESCRIPTION "This object is used to specify the transport domain (below SNMP) which SHALL be used by this management agent to deliver SNMP traps to the trap client (management station or proxy)." REFERENCE "See: 'JamSNMPTransportTC' textual convention in this MIB. See: 'jamClientMapClientSNMPTransport' object in this MIB." -- DEFVAL intentionally omitted - agents NEED NOT support any transport ::= { jamClientEntry 6 } jamClientSNMPAddress OBJECT-TYPE SYNTAX JamSNMPAddressTC MAX-ACCESS read-create STATUS current DESCRIPTION "This object is used to specify the transport address (below SNMP) which SHALL be used by this management agent to deliver SNMP traps to the trap client (management station or proxy). Usage: This transport address usually consists of an underlying network layer address with a suffixed transport selector." REFERENCE "See: 'JamSNMPAddressTC' textual convention in this MIB. See: 'jamClientMapClientSNMPAddress' object in this MIB." -- DEFVAL intentionally omitted - agents NEED NOT support any transport ::= { jamClientEntry 7 } jamClientSNMPVersion OBJECT-TYPE SYNTAX JamSNMPVersionTC MAX-ACCESS read-create STATUS current DESCRIPTION "This object is used to specify the exact SNMP protocol version chosen by the trap client registered in this conceptual row and which SHALL be used by this management agent to deliver traps to the trap client (management station or proxy)." REFERENCE "See: 'JamSNMPVersionTC' textual convention in this MIB." -- DEFVAL intentionally omitted - agents NEED NOT support any version ::= { jamClientEntry 8 } jamClientObjectSubtree OBJECT-TYPE SYNTAX OBJECT IDENTIFIER Filion, McDonald [Page 19] Job Async Monitoring MIB V0.10 (work-in-progress) 4 March 1998 MAX-ACCESS read-create STATUS current DESCRIPTION "This object is used to specify the base object subtree (within MIBs) which is the 'scope' for this trap client." DEFVAL { internet } -- all objects in scope ::= { jamClientEntry 9 } -- View Group (Conditionally Mandatory) -- -- Implementation of this group is conditionally mandatory, ie, -- mandatory for systems which implement restricted SNMP trap views -- and optional for all other systems. jamView OBJECT IDENTIFIER ::= { jamMIBObjects 3 } jamViewTable OBJECT-TYPE SYNTAX SEQUENCE OF JamViewEntry MAX-ACCESS not-accessible STATUS current DESCRIPTION "A table of SNMP trap object subtrees (ie, trap scopes) registered for trap delivery from this host system to the associated trap client (management station or proxy). Usage: SNMP version/transport independent trap registration." REFERENCE "See: View group in Historic SNMPv2 Party MIB (RFC 1447)." ::= { jamView 2 } jamViewEntry OBJECT-TYPE SYNTAX JamViewEntry MAX-ACCESS not-accessible STATUS current DESCRIPTION "An entry for an SNMP trap object subtree (ie, trap scope) registered for trap delivery from this host system to the associated trap client (management station or proxy)." INDEX { jamClientIndex, jamViewIndex } ::= { jamViewTable 1 } JamViewEntry ::= SEQUENCE { jamViewIndex Integer32 (1..2147483647), jamViewRowStatus RowStatus, jamViewObjectSubtree OBJECT IDENTIFIER, jamViewIncluded TruthValue } jamViewIndex OBJECT-TYPE SYNTAX Integer32 (1..2147483647) MAX-ACCESS not-accessible STATUS current Filion, McDonald [Page 20] Job Async Monitoring MIB V0.10 (work-in-progress) 4 March 1998 DESCRIPTION "This object is used to specify the unique value used to identify this conceptual row in the 'jamViewTable' which corresponds to this registered trap view. Usage: This object MAY be permanent (ie, preserved across all hardware resets)." REFERENCE "See: 'jamGeneralMaximumViewIndex' object in this MIB." -- DEFVAL intentionally omitted - not permitted on an index object ::= { jamViewEntry 1 } jamViewRowStatus OBJECT-TYPE SYNTAX RowStatus MAX-ACCESS read-create STATUS current DESCRIPTION "This object is used to manage the row status of this conceptual row in the 'jamViewTable'. Usage: Conforming management agents SHALL ALWAYS support 'active(1)' and 'notInService(2)' (for static allocation). Usage: Conforming management agents MAY ALSO support 'createAndGo(4)' and 'destroy(6)' (for dynamic allocation). Usage: Conforming management agents NEED NOT support 'notReady(3)' or 'createAndWait(5)' (for partial allocation)." -- DEFVAL intentionally omitted - not permitted on a row status object ::= { jamViewEntry 2 } jamViewObjectSubtree OBJECT-TYPE SYNTAX OBJECT IDENTIFIER MAX-ACCESS read-create STATUS current DESCRIPTION "This object is used to specify the refined object subtree (within MIBs) which is the 'scope' for this trap view." DEFVAL { internet } -- all objects in scope ::= { jamViewEntry 3 } jamViewIncluded OBJECT-TYPE SYNTAX TruthValue MAX-ACCESS read-create STATUS current DESCRIPTION "This object is used to INCLUDE the refined object subtree (within MIBs) from the 'scope' of this trap view. Usage: To EXCLUDE the refined object subtree, this object should be set to 'false'." DEFVAL { true } -- trap view included ::= { jamViewEntry 4 } Filion, McDonald [Page 21] Job Async Monitoring MIB V0.10 (work-in-progress) 4 March 1998 -- Client Map Group (Conditionally Mandatory) -- -- Implementation of this group is conditionally mandatory, ie, -- mandatory for systems which implement address to client mapping -- and optional for all other systems. jamClientMap OBJECT IDENTIFIER ::= { jamMIBObjects 4 } jamClientMapTable OBJECT-TYPE SYNTAX SEQUENCE OF JamClientMapEntry MAX-ACCESS not-accessible STATUS current DESCRIPTION "A table of SNMP trap clients (management stations or proxies) registered for trap delivery from this host system. Usage: SNMP trap client lookup via transport address." REFERENCE "See: 'jamClientTable' composite object in this MIB." ::= { jamClientMap 2 } jamClientMapEntry OBJECT-TYPE SYNTAX JamClientMapEntry MAX-ACCESS not-accessible STATUS current DESCRIPTION "An entry for an SNMP trap client (management stations or proxy) registered for trap delivery from this host system." INDEX { jamClientMapClientSNMPTransport, jamClientMapClientSNMPAddress, jamClientMapClientIndex } ::= { jamClientMapTable 1 } JamClientMapEntry ::= SEQUENCE { jamClientMapClientSNMPTransport JamSNMPTransportTC, jamClientMapClientSNMPAddress JamSNMPAddressTC, jamClientMapClientIndex Integer32 (1..2147483647) } jamClientMapClientSNMPTransport OBJECT-TYPE SYNTAX JamSNMPTransportTC MAX-ACCESS not-accessible STATUS current DESCRIPTION "This object is used to specify the transport domain (below SNMP) which SHALL be used by this management agent to deliver SNMP traps to the trap client (management station or proxy). Usage: This object MAY be permanent (ie, preserved across all hardware resets)." REFERENCE "See: 'JamSNMPTransportTC' textual convention in this MIB. Filion, McDonald [Page 22] Job Async Monitoring MIB V0.10 (work-in-progress) 4 March 1998 See: 'jamClientSNMPTransport' object in this MIB." -- DEFVAL intentionally omitted - not permitted on an index object ::= { jamClientMapEntry 1 } jamClientMapClientSNMPAddress OBJECT-TYPE SYNTAX JamSNMPAddressTC MAX-ACCESS not-accessible STATUS current DESCRIPTION "This object is used to specify the transport address (below SNMP) which SHALL be used by this management agent to deliver SNMP traps to the trap client (management station or proxy). Usage: This object MAY be permanent (ie, preserved across all hardware resets)." REFERENCE "See: 'JamSNMPAddressTC' textual convention in this MIB. See: 'jamClientSNMPAddress' object in this MIB." -- DEFVAL intentionally omitted - not permitted on an index object ::= { jamClientMapEntry 2 } jamClientMapClientIndex OBJECT-TYPE SYNTAX Integer32 (1..2147483647) MAX-ACCESS read-only STATUS current DESCRIPTION "This object is used to specify the unique value used to identify the conceptual row in the 'jamClientTable' which corresponds to this registered trap client (management station or proxy). Usage: This object MAY be permanent (ie, preserved across all hardware resets)." REFERENCE "See: 'jamGeneralHighestClientIndex' object in this MIB. See: 'jamGeneralMaximumClientIndex' object in this MIB. See: 'jamClientIndex' object in this MIB." -- DEFVAL intentionally omitted - not permitted on an index object ::= { jamClientMapEntry 3 } -- -- Conformance Definitions -- -- -- Compliance Statements -- Filion, McDonald [Page 23] Job Async Monitoring MIB V0.10 (work-in-progress) 4 March 1998 jamMIBCompliance MODULE-COMPLIANCE STATUS current DESCRIPTION "The compliance statements for SNMP management agents that implement the Job Async Monitoring MIB." MODULE -- this module MANDATORY-GROUPS { jamGeneralGroup, jamClientGroup } GROUP jamViewGroup DESCRIPTION "Implementation of this group is conditionally mandatory, ie, mandatory for systems which implement restricted SNMP trap views and optional for all other systems." GROUP jamClientMapGroup DESCRIPTION "Implementation of this group is conditionally mandatory, ie, mandatory for systems which implement address to client mapping and optional for all other systems." OBJECT jamGeneralHighestClientIndex SYNTAX Integer32 (0..10) DESCRIPTION "It is conformant to implement this object as above, and only specified range values for the 'jamClientIndex' object need be supported." OBJECT jamGeneralMaximumClientIndex SYNTAX Integer32 (0..10) DESCRIPTION "It is conformant to implement this object as above, and only specified range values for the 'jamClientIndex' object need be supported." OBJECT jamGeneralMaximumViewIndex SYNTAX Integer32 (0..10) DESCRIPTION "It is conformant to implement this object as above, and only specified range values for the 'jamViewIndex' object need be supported." OBJECT jamClientRowStatus SYNTAX INTEGER { -- subset of RowStatus active(1), notInService(2) -- notReady(3), -- createAndGo(4), -- createAndWait(5), -- destroy(6) } Filion, McDonald [Page 24] Job Async Monitoring MIB V0.10 (work-in-progress) 4 March 1998 MIN-ACCESS read-write DESCRIPTION "It is conformant to implement this object as read-write, and only specified enumerated values for the 'RowStatus' textual convention need be supported." OBJECT jamClientRowPersistence SYNTAX Integer32 (1..1) -- volatile (2**0) MIN-ACCESS read-write DESCRIPTION "It is conformant to implement this object as read-write, and only specified enumerated values for the 'JamRowPersistenceTC' textual convention need be supported." OBJECT jamClientRowExpirationTime MIN-ACCESS read-write DESCRIPTION "It is conformant to implement this object as read-write." OBJECT jamClientSNMPTransport SYNTAX Integer32 (0..32767) MIN-ACCESS read-write DESCRIPTION "It is conformant to implement this object as read-write, and no specific enumerated values for the 'JamSNMPTransportTC' textual convention need be supported." OBJECT jamClientSNMPAddress SYNTAX OCTET STRING (SIZE (0..32)) MIN-ACCESS read-write DESCRIPTION "It is conformant to implement this object as read-write, and only 32 octets maximum string length need be supported." OBJECT jamClientSNMPVersion SYNTAX Integer32 (0..32767) MIN-ACCESS read-write DESCRIPTION "It is conformant to implement this object as read-write, and no specific enumerated values for the 'JamSNMPVersionTC' textual convention need be supported." OBJECT jamClientObjectSubtree MIN-ACCESS read-write DESCRIPTION "It is conformant to implement this object as read-write." OBJECT jamViewRowStatus SYNTAX INTEGER { -- subset of RowStatus active(1), notInService(2) -- notReady(3), -- createAndGo(4), Filion, McDonald [Page 25] Job Async Monitoring MIB V0.10 (work-in-progress) 4 March 1998 -- createAndWait(5), -- destroy(6) } MIN-ACCESS read-write DESCRIPTION "It is conformant to implement this object as read-write, and only specified enumerated values for the 'RowStatus' textual convention need be supported." OBJECT jamViewObjectSubtree MIN-ACCESS read-write DESCRIPTION "It is conformant to implement this object as read-write." OBJECT jamViewIncluded MIN-ACCESS read-write DESCRIPTION "It is conformant to implement this object as read-write." ::= { jamMIBConformance 1 } -- -- Conformance Groups -- jamMIBGroups OBJECT IDENTIFIER ::= { jamMIBConformance 2 } jamGeneralGroup OBJECT-GROUP OBJECTS { jamGeneralGroupSupport, jamGeneralCreateSupport, jamGeneralUpdateSupport, jamGeneralRowPersistenceSupport, jamGeneralSNMPTransportSupport, jamGeneralSNMPVersionSupport, jamGeneralHighestClientIndex, jamGeneralMaximumClientIndex, jamGeneralMaximumViewIndex } STATUS current DESCRIPTION "General Group (Job Async Monitoring MIB capabilities)" ::= { jamMIBGroups 1 } jamClientGroup OBJECT-GROUP OBJECTS { jamClientRowStatus, jamClientRowPersistence, jamClientRowActivationTime, jamClientRowExpirationTime, jamClientSNMPTransport, jamClientSNMPAddress, jamClientSNMPVersion, Filion, McDonald [Page 26] Job Async Monitoring MIB V0.10 (work-in-progress) 4 March 1998 jamClientObjectSubtree } STATUS current DESCRIPTION "Client Group (trap destination transports/addresses)" ::= { jamMIBGroups 2 } jamViewGroup OBJECT-GROUP OBJECTS { jamViewRowStatus, jamViewObjectSubtree, jamViewIncluded } STATUS current DESCRIPTION "View Group (refined SNMP object subtrees)" ::= { jamMIBGroups 3 } jamClientMapGroup OBJECT-GROUP OBJECTS { jamClientMapClientIndex } STATUS current DESCRIPTION "Client Map Group (transport address to client index mapping)" ::= { jamMIBGroups 4 } END Filion, McDonald [Page 27] Job Async Monitoring MIB V0.10 (work-in-progress) 4 March 1998 5. Acknowledgements The authors would like to thank ... 6. References [1] ITU-T X.200:1996 | ISO 7498-1:1996 - OSI Basic Reference Model [2] ITU-T X.800:1996 | ISO 7498-2:1996 - OSI Security Reference Model [3] ITU-T X.650:1996 | ISO 7498-3:1996 - OSI Naming and Addressing Reference Model [4] ITU-T X.700:1996 | ISO 7498-4:1996 - OSI Management Reference Model [5] ITU-T X.680:1994 | ISO 8824:1994 - OSI Abstract Syntax Notation One (ASN.1) Specification [6] ITU-T X.690:1994 | ISO 8825:1994 - OSI Abstract Syntax Notation One (ASN.1) Basic, Canonical, and Distinguished Encoding Rules [7] ITU-T X.210:1993 | ISO ....:1993 - OSI Reference Model Conventions [8] ITU-T X.710:1996 | ISO 9595:1996 - OSI Common Management Information Service (CMIS) [9] ITU-T X.711:1996 | ISO 9596:1996 - OSI Common Management Information Protocol (CMIP) [10] IEEE 802.1B:1993 | ISO 15802-2:1995 - OSI LAN/MAN Management Protocol (LMMP) [11] IETF RFC 1155 - Structure of Management Information for SNMPv1 (SMIv1, May 1990) [12] IETF RFC 1157 - Simple Network Management Protocol Version 1 (SNMPv1, May 1990) [13] IETF RFC 1212 - Concise MIB Definitions for SNMPv1 (Concise SMIv1, March 1991) [14] IETF RFC 1213 - Management Information Base II (MIB-II in SMIv1, March 1991) [15] IETF RFC 1447 - (Historic) Party MIB for SNMPv2 (in SMIv2, April 1993) [16] IETF RFC 1514 - Host Resources MIB (September 1993) Filion, McDonald [Page 28] Job Async Monitoring MIB V0.10 (work-in-progress) 4 March 1998 [17] IETF RFC 1759 - Printer MIB (March 1995) [18] IETF RFC 1901 - Introduction to Community-based SNMPv2 (SNMPv2-INTRO, January 1996) [19] IETF RFC 1902 - Structure of Management Info for SNMPv2 (SNMPv2-SMI, January 1996) [20] IETF RFC 1903 - Textual Conventions for SNMPv2 (SNMPv2-TC, January 1996) [21] IETF RFC 1904 - Conformance Statements for SNMPv2 (SNMPv2-CONF, January 1996) [22] IETF RFC 1905 - Protocol Operations for SNMPv2 (SNMPv2-PROTO, January 1996) [23] IETF RFC 1906 - Transport Mappings for SNMPv2 (SNMPv2-TM, January 1996) [24] IETF RFC 1907 - MIB for SNMPv2 (SNMPv2-MIB, January 1996) [25] IETF RFC 1908 - Coexistence between SNMPv1 and SNMPv2 (SNMPv2-COEX, January 1996) [26] IETF RFC 2200 - Internet Official Protocol Standards (June 1997) [27] IETF RFC 2233 - The Interfaces Group MIB using SMIv2 (November 1997) Filion, McDonald [Page 29] Job Async Monitoring MIB V0.10 (work-in-progress) 4 March 1998 7. Security Considerations Security issues arise with respect to any MIB which defines objects with 'read-write' and/or 'read-create' access, and so apply to this JAM MIB. Implementors are advised to consider implementing security at the SNMP packet level and/or at the SNMP transaction level. 8. Authors' Addresses Joe Filion Postal: Xerox Corporation, MS 834-03E 300 Canalview Blvd Rochester, NY 14623 Voice: 716-231-0976 Fax: 716-427-4600 Email: Joe_Filion@mc.xerox.com Ira McDonald Postal: High North Inc 221 Ridge Ave Grand Marais, MI 49839 Voice: 906-494-2434 Fax: 906-494-2434 (by prior arrangement only) Email: imcdonal@eso.mc.xerox.com 9. Appendix A - Rationale of JAM MIB 9.1. Base Arc Definitions 9.2. Textual Conventions 9.2.1. JamGroupSupportTC This textual convention specifies JAM MIB object groups as a bit-mask, to support dynamic discovery (by management stations or proxies) of those supported by a given management agent, and whether they are supported for create access or only write access. Filion, McDonald [Page 30] Job Async Monitoring MIB V0.10 (work-in-progress) 4 March 1998 9.2.2. JamRowPersistenceTC This textual convention specifies the canonical levels of row storage persistence (from 'StorageType' in RFC 1903) as a bit-mask, to support dynamic discovery (by management stations or proxies) of those supported by a given management agent. 9.2.3. JamSNMPTransportTC This textual convention specifies SNMP transport domains as a bit-mask, to support dynamic discovery (by management stations or proxies) of those supported by a given management agent. 9.2.4. JamSNMPAddressTC This textual convention specifies SNMP transport addresses as strings, (following the textual conventions defined in RFC 1906). 9.2.5. JamSNMPVersionTC This textual convention specifies SNMP protocol versions as a bit-mask, to support dynamic discovery (by management stations or proxies) of those supported by a given management agent. 9.3. Object Definitions 9.3.1. General Group (Mandatory) 9.3.1.1. jamGeneralIndex This index is fixed at '1', to permit the following objects to be defined as columnar objects rather than leaf objects (for clarity). 9.3.1.2. jamGeneralGroupSupport This object specifies JAM MIB object groups as a bit-mask, to support dynamic discovery (by management stations or proxies) of those supported by a given management agent, and whether they are supported for create access or only write access. Filion, McDonald [Page 31] Job Async Monitoring MIB V0.10 (work-in-progress) 4 March 1998 9.3.1.3. jamGeneralCreateSupport This object specifies JAM MIB 'read-create' object groups as a bit-mask, to support dynamic discovery (by management stations or proxies) of those supported by a given management agent. 9.3.1.4. jamGeneralUpdateSupport This object specifies JAM MIB 'read-write' object groups as a bit-mask, to support dynamic discovery (by management stations or proxies) of those supported by a given management agent. 9.3.1.5. jamGeneralRowPersistenceSupport This object specifies the canonical levels of row persistence (from the 'StorageType' textual convention in RFC 1903) as a bit-mask, to support dynamic discovery (by management stations or proxies) of those supported by a given management agent. 9.3.1.6. jamGeneralSNMPTransportSupport This object specifies the various SNMP transport domains (from the transport mappings in RFC 1906) as a bit-mask, to support dynamic discovery (by management stations or proxies) of those supported by a given management agent. 9.3.1.7. jamGeneralSNMPVersionSupport This object specifies the various SNMP protocol versions (from the transport mappings in RFC 1906) as a bit-mask, to support dynamic discovery (by management stations or proxies) of those supported by a given management agent. 9.3.1.8. jamGeneralHighestClientIndex This object supports dynamic discovery (by management stations or proxies) of the 'next available' value of 'jamClientIndex' (for efficient trap registration, without 'jamClientTable' traversal). 9.3.1.9. jamGeneralMaximumClientIndex This object supports dynamic discovery (by management stations or proxies) of the 'last available' value of 'jamClientIndex' (for efficient trap registration, without 'jamClientTable' traversal). Filion, McDonald [Page 32] Job Async Monitoring MIB V0.10 (work-in-progress) 4 March 1998 9.3.1.10. jamGeneralMaximumViewIndex This object supports dynamic discovery (by management stations or proxies) of the 'last available' value of 'jamViewIndex' (for efficient trap registration, without 'jamViewTable' traversal). 9.3.2. Client Group (Mandatory) 9.3.2.1. jamClientIndex This object is specified as a simple integer index (rather than the combination of SNMP transport domain and SNMP transport address, which has been used in some other trap registration methods). Note: The choice of a simple integer index (permits support of static allocation, without 'createAndGo') is intended to reduce implementation cost on low-end devices. 9.3.2.2. jamClientRowStatus This object manages the status of a given row when allocated (ie, 'createAndGo' to 'active' for dynamic allocation) (or 'notInService' to 'active' for static allocation). Note: The choice of 'active' and 'notInService' as the only mandatory row status values (ie, support for static allocation, NOT dynamic) is intended to reduce implementation cost on low-end devices. 9.3.2.3. jamClientRowPersistence This object specifies the persistence of a given row when allocated (ie, 'createAndGo' to 'active' for dynamic allocation) (or 'notInService' to 'active' for static allocation). Note: The choice of 'volatile' as the only mandatory row persistence is intended to reduce implementation cost on low-end devices. 9.3.2.4. jamClientRowActivationTime This object specifies the activation time of a given row when allocated (ie, 'createAndGo' to 'active' for dynamic allocation) (or 'notInService' to 'active' for static allocation). Note: The choice of 'DateAndTime' rather than 'TimeTicks' is intended to support the row persistence levels above 'volatile' (ie, ones which Filion, McDonald [Page 33] Job Async Monitoring MIB V0.10 (work-in-progress) 4 March 1998 survive hardware power cycles). 9.3.2.5. jamClientRowExpirationTime This object specifies the expiration time of a given row when allocated (or infinite, if the row should never be deleted by the managed device). Note: The choice of 'DateAndTime' rather than 'TimeTicks' is intended to support the row persistence levels above 'volatile' (ie, ones which survive hardware power cycles). 9.3.2.6. jamClientSNMPTransport 9.3.2.7. jamClientSNMPAddress 9.3.2.8. jamClientSNMPVersion 9.3.2.9. jamClientObjectSubtree 9.3.3. View Group (Conditionally Mandatory) 9.3.3.1. jamViewIndex 9.3.3.2. jamViewRowStatus 9.3.3.3. jamViewObjectSubtree 9.3.3.4. jamViewIncluded 9.3.4. Client Map Group (Conditionally Mandatory) Filion, McDonald [Page 34] Job Async Monitoring MIB V0.10 (work-in-progress) 4 March 1998 9.3.4.1. jamClientMapClientSNMPTransport 9.3.4.2. jamClientMapClientSNMPAddress 9.3.4.3. jamClientMapClientIndex 9.4. Conformance Definitions 9.4.1. Compliance Statements 9.4.1.1. jamMIBCompliance 9.4.2. Conformance Groups 9.4.2.1. jamGeneralGroup 9.4.2.2. jamClientGroup 9.4.2.3. jamViewGroup 9.4.2.4. jamClientMapGroup Change Log 4 March 1998 - Rev 0.10 * Initial version; * Corrected all compile errors, per SMICng and Epilogue compilers. Filion, McDonald [Page 35] Job Async Monitoring MIB V0.10 (work-in-progress) 4 March 1998 TABLE OF CONTENTS 1. Introduction ............................................... 2 2. The SNMPv2 Network Management Framework .................... 3 2.1. SNMP Object Definitions ................................ 3 3. Managed Object Usage - JAM MIB ............................. 4 3.1. Overview of Object Groups .............................. 4 3.2. Relationship to other MIBs ............................. 7 3.2.1. IETF Historic SNMPv2 Party MIB (RFC 1447) .......... 7 3.2.2. IETF Printer MIB (RFC 1759) ........................ 7 4. Managed Object Definitions - JAM MIB ....................... 8 4.1. Base Arc Definitions ................................... 8 4.2. Textual Conventions .................................... 9 4.2.1. JamGroupSupportTC .................................. 9 4.2.2. JamRowPersistenceTC ................................ 9 4.2.3. JamSNMPTransportTC ................................. 10 4.2.4. JamSNMPAddressTC ................................... 11 4.2.5. JamSNMPVersionTC ................................... 11 4.3. Object Definitions ..................................... 12 4.3.1. General Group (Mandatory) .......................... 12 4.3.2. Client Group (Mandatory) ........................... 16 4.3.3. View Group (Conditionally Mandatory) ............... 20 4.3.4. Client Map Group (Conditionally Mandatory) ......... 22 4.4. Conformance Definitions ................................ 23 4.4.1. Compliance Statements .............................. 23 4.4.1.1. jamMIBCompliance ............................... 24 4.4.2. Conformance Groups ................................. 26 4.4.2.1. jamGeneralGroup ................................ 26 4.4.2.2. jamClientGroup ................................. 26 4.4.2.3. jamViewGroup ................................... 27 4.4.2.4. jamClientMapGroup .............................. 27 5. Acknowledgements ........................................... 28 6. References ................................................. 28 7. Security Considerations .................................... 30 8. Authors' Addresses ......................................... 30 9. Appendix A - Rationale of JAM MIB .......................... 30 9.1. Base Arc Definitions ................................... 30 Filion, McDonald [Page i] Job Async Monitoring MIB V0.10 (work-in-progress) 4 March 1998 TABLE OF CONTENTS 9.2. Textual Conventions .................................... 30 9.2.1. JamGroupSupportTC .................................. 30 9.2.2. JamRowPersistenceTC ................................ 31 9.2.3. JamSNMPTransportTC ................................. 31 9.2.4. JamSNMPAddressTC ................................... 31 9.2.5. JamSNMPVersionTC ................................... 31 9.3. Object Definitions ..................................... 31 9.3.1. General Group (Mandatory) .......................... 31 9.3.1.1. jamGeneralIndex ................................ 31 9.3.1.2. jamGeneralGroupSupport ......................... 31 9.3.1.3. jamGeneralCreateSupport ........................ 32 9.3.1.4. jamGeneralUpdateSupport ........................ 32 9.3.1.5. jamGeneralRowPersistenceSupport ................ 32 9.3.1.6. jamGeneralSNMPTransportSupport ................. 32 9.3.1.7. jamGeneralSNMPVersionSupport ................... 32 9.3.1.8. jamGeneralHighestClientIndex ................... 32 9.3.1.9. jamGeneralMaximumClientIndex ................... 32 9.3.1.10. jamGeneralMaximumViewIndex .................... 33 9.3.2. Client Group (Mandatory) ........................... 33 9.3.2.1. jamClientIndex ................................. 33 9.3.2.2. jamClientRowStatus ............................. 33 9.3.2.3. jamClientRowPersistence ........................ 33 9.3.2.4. jamClientRowActivationTime ..................... 33 9.3.2.5. jamClientRowExpirationTime ..................... 34 9.3.2.6. jamClientSNMPTransport ......................... 34 9.3.2.7. jamClientSNMPAddress ........................... 34 9.3.2.8. jamClientSNMPVersion ........................... 34 9.3.2.9. jamClientObjectSubtree ......................... 34 9.3.3. View Group (Conditionally Mandatory) ............... 34 9.3.3.1. jamViewIndex ................................... 34 9.3.3.2. jamViewRowStatus ............................... 34 9.3.3.3. jamViewObjectSubtree ........................... 34 9.3.3.4. jamViewIncluded ................................ 34 9.3.4. Client Map Group (Conditionally Mandatory) ......... 34 9.3.4.1. jamClientMapClientSNMPTransport ................ 35 9.3.4.2. jamClientMapClientSNMPAddress .................. 35 9.3.4.3. jamClientMapClientIndex ........................ 35 9.4. Conformance Definitions ................................ 35 9.4.1. Compliance Statements .............................. 35 9.4.1.1. jamMIBCompliance ............................... 35 9.4.2. Conformance Groups ................................. 35 9.4.2.1. jamGeneralGroup ................................ 35 9.4.2.2. jamClientGroup ................................. 35 9.4.2.3. jamViewGroup ................................... 35 9.4.2.4. jamClientMapGroup .............................. 35 Filion, McDonald [Page ii]