identify a particular LunMap within a particular SCSI target
device within a particular SCSI instance."
::= { scsiLunMapEntry 1 }
scsiLunMapLun OBJECT-TYPE
SYNTAX ScsiLUN
MAX-ACCESS not-accessible
STATUS current
DESCRIPTION
"This object specifies the Logical Unit Number, to which a
logical unit is mapped by this row."
::= { scsiLunMapEntry 2 }
scsiLunMapLuIndex OBJECT-TYPE
SYNTAX ScsiIndexValue
MAX-ACCESS read-create
STATUS current
DESCRIPTION
"This object identifies the logical unit for which the value of
scsiLuIndex is the same as the value of this object. The
identified logical unit is the one mapped to a LUN by this
row."
::= { scsiLunMapEntry 3 }
scsiLunMapRowStatus OBJECT-TYPE
SYNTAX RowStatus
MAX-ACCESS read-create
STATUS current
DESCRIPTION
"This object allows an administrator to create and delete this
entry."
::= { scsiLunMapEntry 4 }
--********************** Notifications ******************************
-- scsiNotifications OBJECT IDENTIFIER ::= { scsiMIB 2 }
scsiNotificationsPrefix OBJECT IDENTIFIER
::= { scsiNotifications 0 }
scsiTgtDeviceStatusChanged NOTIFICATION-TYPE
OBJECTS { scsiTgtDeviceStatus }
STATUS current
DESCRIPTION
"This notification will be generated for each occurrence of the
abnormal status (e.g., if the SCSI target device’s current
status is abnormal) providing that the SCSI instance’s value of
scsiInstScsiNotificationsEnable is enabled.
An SNMP agent implementing the SCSI MIB module should not send
more than three SCSI identical notifications in any 10-second
period."
::= { scsiNotificationsPrefix 1 }
scsiLuStatusChanged NOTIFICATION-TYPE
OBJECTS { scsiLuStatus }
STATUS current
DESCRIPTION
"This notification will be generated each time that
scsiLuStatus changes providing that the SCSI instance’s value
of scsiInstScsiNotificationsEnable is enabled.
An SNMP agent implementing the SCSI MIB module should not send
more than three SCSI identical notifications in any 10-second
period."
::= { scsiNotificationsPrefix 2 }
--******************************************************************
-- The next part defines the conformance groups in use
-- for SCSI MIB module.
scsiCompliances OBJECT IDENTIFIER ::= { scsiConformance 1 }
scsiCompliance MODULE-COMPLIANCE
STATUS current
DESCRIPTION
"Describes the requirements for compliance to this SCSI MIB
module.
If an implementation can be both a SCSI target device and a SCSI
initiator device, all groups are mandatory."
MODULE -- this module
MANDATORY-GROUPS {
scsiDeviceGroup
}
OBJECT scsiInstAlias
MIN-ACCESS read-only
DESCRIPTION
"Write access is not mandatory."
OBJECT scsiInstScsiNotificationsEnable
MIN-ACCESS read-only
DESCRIPTION
"Write access is not mandatory."
OBJECT scsiDeviceAlias
MIN-ACCESS read-only
DESCRIPTION
"Write access is not mandatory."
OBJECT scsiInstStorageType
MIN-ACCESS read-only
DESCRIPTION
"Write access is not required."
-- Conditionally mandatory groups to be included with
-- the mandatory groups when the implementation has
-- SCSI target device.
GROUP scsiTargetDeviceGroup
DESCRIPTION
"This group is mandatory for all SCSI implementations that
have SCSI target devices."
GROUP scsiLunMapGroup
DESCRIPTION
"This group is mandatory for systems having the capabilities
of mapping local SCSI target devices and logical units
according to remote SCSI initiator devices."
OBJECT scsiAuthIntrDevOrPort
MIN-ACCESS read-only
DESCRIPTION
"Write access is not required."
OBJECT scsiAuthIntrName
MIN-ACCESS read-only
DESCRIPTION
"Write access is not required."
OBJECT scsiAuthIntrLunMapIndex
MIN-ACCESS read-only
DESCRIPTION
"Write access is not required."
OBJECT scsiAuthIntrRowStatus
SYNTAX RowStatus { active(1) }
MIN-ACCESS read-only
DESCRIPTION
"Write access is not required, and only one of the six
enumerated values for the RowStatus textual convention need
be supported, specifically: active(1)."
GROUP scsiTgtDevLuNotificationsGroup
DESCRIPTION
"This group is mandatory for all SCSI implementations that
have SCSI target devices and are able to report status
changes."
-- Conditionally mandatory groups to be included with
-- the mandatory groups when the implementation has
-- SCSI initiator device.
GROUP scsiInitiatorDeviceGroup
DESCRIPTION
"This group is mandatory for all SCSI implementations that
have SCSI initiator devices."
OBJECT scsiIntrDevTgtAccessMode
MIN-ACCESS read-only
DESCRIPTION "Write access is not mandatory."
GROUP scsiDiscoveryGroup
DESCRIPTION
"This group is mandatory for systems having the capabilities
of discovering remote SCSI target devices via local SCSI
initiator devices."
OBJECT scsiLunMapLuIndex
MIN-ACCESS read-only
DESCRIPTION
"Write access is not mandatory."
OBJECT scsiLunMapRowStatus
SYNTAX RowStatus { active(1) }
MIN-ACCESS read-only
DESCRIPTION
"Write access is not required, and only one of the six
enumerated values for the RowStatus textual convention need
be supported, specifically: active(1)."
OBJECT scsiDscTgtDevOrPort
MIN-ACCESS read-only
DESCRIPTION
"Write access is not mandatory."
OBJECT scsiDscTgtName
MIN-ACCESS read-only
DESCRIPTION "Write access is not mandatory."
OBJECT scsiDscTgtConfigured
SYNTAX TruthValue { false(2) }
MIN-ACCESS read-only
DESCRIPTION
"The value of true(1) is not mandatory neither is the write
access."
OBJECT scsiDscTgtRowStatus
SYNTAX RowStatus { active(1) }
MIN-ACCESS read-only
DESCRIPTION
"Write access is not required, and only one of the six
enumerated values for the RowStatus textual convention need
be supported, specifically: active(1)."
-- Conditionally mandatory groups to be included with the mandatory
-- groups when the implementation can gather statistics.
GROUP scsiDeviceStatGroup
DESCRIPTION
"This group is mandatory for all SCSI implementations that
can gather statistics."
-- Conditionally mandatory groups to be included with the mandatory
-- groups when the implementation can gather statistics at the SCSI
-- initiator device side.
GROUP scsiInitiatorDevStatsGroup
DESCRIPTION
"This group is mandatory for all SCSI implementations that
can gather statistics at SCSI initiator device side."
GROUP scsiDiscoveryStatsGroup
DESCRIPTION
"This group is mandatory for system having the capabilities
of gathering statistics regarding remote SCSI target devices
via local SCSI initiator devices."
-- Conditionally mandatory groups to be included with the mandatory
-- groups when the implementation can gather statistics at the SCSI
-- target side.
GROUP scsiTargetDevStatsGroup
DESCRIPTION
"This group is mandatory for all SCSI implementations that
can gather statistics at SCSI target devices."
GROUP scsiLunMapStatsGroup
DESCRIPTION
"This group is mandatory for SCSI implementations able to map
local SCSI target devices and logical units according to
remote SCSI initiator devices."
-- Conditionally mandatory groups to be included with the mandatory
-- groups when the implementation is running at high speed and can
-- gather statistics at the SCSI initiator device side.
GROUP scsiInitiatorDevHSStatsGroup
DESCRIPTION
"This group is mandatory for all SCSI implementations that
can gather statistics at the SCSI initiator device side and
are running at high speed, meaning speed of 4 Gbit/second or
higher."
GROUP scsiDiscoveryHSStatsGroup
DESCRIPTION
"This group is mandatory for systems having the capabilities
of gathering statistics regarding remote SCSI target devices
via local SCSI initiator devices and are running at high
speed, meaning speed of 4 Gbit/second or higher."
-- Conditionally mandatory groups to be included with the mandatory
-- groups when the implementation is running at high speed and can
-- gather statistics at the SCSI target side.
GROUP scsiTargetDevHSStatsGroup
DESCRIPTION
"This group is mandatory for all SCSI implementations that
can gather statistics at SCSI target devices in high speed
systems, meaning speed of 4 Gbit/second or higher."
GROUP scsiLunMapHSStatsGroup
DESCRIPTION
"This group is mandatory for SCSI implementations able to map
local SCSI target devices and logical units according to
remote SCSI initiator devices in a high speed system, meaning
speed of 4 Gbit/second or higher."
::= { scsiCompliances 1 }
scsiGroups OBJECT IDENTIFIER ::= { scsiConformance 2 }
scsiDeviceGroup OBJECT-GROUP
OBJECTS {
scsiInstAlias,
scsiInstSoftwareIndex,
scsiInstVendorVersion,
scsiInstScsiNotificationsEnable,
scsiInstStorageType,
scsiDeviceAlias,
scsiDeviceRole,
scsiDevicePortNumber,
scsiPortRole,
scsiPortTransportPtr,
scsiTransportType,
scsiTransportPointer,
scsiTransportDevName
}
STATUS current
DESCRIPTION
"A collection of objects providing information about SCSI
instances, devices, and ports."
::= { scsiGroups 1 }
scsiInitiatorDeviceGroup OBJECT-GROUP
OBJECTS {
scsiIntrDevTgtAccessMode,
scsiIntrPortName,
scsiIntrPortIdentifier,
scsiAttTgtPortDscTgtIdx,
scsiAttTgtPortName,
scsiAttTgtPortIdentifier
}
STATUS current
DESCRIPTION
"This group is relevant for s SCSI initiator device and port."
::= { scsiGroups 2 }
scsiDiscoveryGroup OBJECT-GROUP
OBJECTS {
scsiDscTgtDevOrPort,
scsiDscTgtName,
scsiDscTgtConfigured,
scsiDscTgtDiscovered,
scsiDscTgtRowStatus,
scsiDscTgtLastCreation,
scsiDscLunLun,
scsiDscLunIdCodeSet,
scsiDscLunIdAssociation,
scsiDscLunIdType,
scsiDscLunIdValue
}
STATUS current
DESCRIPTION
"This group is relevant for the discovered SCSI target devices
by a SCSI initiator port."
::= { scsiGroups 3 }
scsiTargetDeviceGroup OBJECT-GROUP
OBJECTS {
scsiTgtDevNumberOfLUs,
scsiTgtDeviceStatus,
scsiTgtDevNonAccessibleLUs,
scsiTgtPortName,
scsiTgtPortIdentifier,
scsiAttIntrPortAuthIntrIdx,
scsiAttIntrPortName,
scsiAttIntrPortIdentifier,
scsiLuDefaultLun,
scsiLuWwnName,
scsiLuVendorId,
scsiLuProductId,
scsiLuRevisionId,
scsiLuPeripheralType,
scsiLuStatus,
scsiLuState,
scsiLuLastCreation,
scsiLuIdCodeSet,
scsiLuIdAssociation,
scsiLuIdType,
scsiLuIdValue
}
STATUS current
DESCRIPTION
"This group is relevant for a SCSI target device and port."
::= { scsiGroups 4 }
scsiLunMapGroup OBJECT-GROUP
OBJECTS {
scsiLunMapLuIndex,
scsiLunMapRowStatus,
scsiAuthIntrDevOrPort,
scsiAuthIntrName,
scsiAuthIntrLunMapIndex,
scsiAuthIntrLastCreation,
scsiAuthIntrRowStatus
}
STATUS current
DESCRIPTION
"This group is a collection of attributes regarding the mapping
between Logical Unit Number, logical unit, and target device."
::= { scsiGroups 5}
scsiTargetDevStatsGroup OBJECT-GROUP
OBJECTS {
scsiTgtDevResets,
scsiTgtPortInCommands,
scsiTgtPortWrittenMegaBytes,
scsiTgtPortReadMegaBytes,
scsiLuInCommands,
scsiLuReadMegaBytes,
scsiLuWrittenMegaBytes,
scsiLuInResets,
scsiLuOutTaskSetFullStatus
}
STATUS current
DESCRIPTION
"This group is a collection of statistics for all
implementations of the SCSI MIB module that contain SCSI target
devices."
::= { scsiGroups 6}
scsiTargetDevHSStatsGroup OBJECT-GROUP
OBJECTS {
scsiTgtPortHSInCommands,
scsiLuHSInCommands
}
STATUS current
DESCRIPTION
"This group is a collection of high speed statistics for all
implementations of the SCSI MIB module that contain SCSI target
devices."
::= { scsiGroups 7}
scsiLunMapStatsGroup OBJECT-GROUP
OBJECTS {
scsiAuthIntrAttachedTimes,
scsiAuthIntrOutCommands,
scsiAuthIntrReadMegaBytes,
scsiAuthIntrWrittenMegaBytes
}
STATUS current
DESCRIPTION
"This group is a collection of statistics regarding SCSI
initiator devices authorized to attach local logical unit and
SCSI target device."
::= { scsiGroups 8}
scsiLunMapHSStatsGroup OBJECT-GROUP
OBJECTS {
scsiAuthIntrHSOutCommands
}
STATUS current
DESCRIPTION
"This group is a collection of high speed statistics regarding
SCSI initiator devices authorized to attach local logical unit
and SCSI target device."
::= { scsiGroups 9}
scsiInitiatorDevStatsGroup OBJECT-GROUP
OBJECTS {
scsiIntrDevOutResets,
scsiIntrPortOutCommands,
scsiIntrPortWrittenMegaBytes,
scsiIntrPortReadMegaBytes
}
STATUS current
DESCRIPTION
"This group is a collection of statistics for all
implementations of the SCSI MIB module that contain SCSI
initiator devices."
::= { scsiGroups 10}
scsiInitiatorDevHSStatsGroup OBJECT-GROUP
OBJECTS {
scsiIntrPortHSOutCommands
}
STATUS current
DESCRIPTION
"This group is a collection of high speed statistics for all
implementations of the SCSI MIB module that contain SCSI
initiator devices."
::= { scsiGroups 11}
scsiDiscoveryStatsGroup OBJECT-GROUP
OBJECTS {
scsiDscTgtInCommands,
scsiDscTgtReadMegaBytes,
scsiDscTgtWrittenMegaBytes
}
STATUS current
DESCRIPTION
"This group is a collection of statistics for all
implementations of the SCSI MIB module that contain discovered
SCSI initiator devices."
::= { scsiGroups 12}
scsiDiscoveryHSStatsGroup OBJECT-GROUP
OBJECTS {
scsiDscTgtHSInCommands
}
STATUS current
DESCRIPTION
"This group is a collection of high speed statistics for all
implementations of the SCSI MIB module that contain discovered
SCSI initiator devices."
::= { scsiGroups 13}
scsiDeviceStatGroup OBJECT-GROUP
OBJECTS {
scsiPortBusyStatuses
}
STATUS current
DESCRIPTION
"A collection of statistics regarding SCSI devices and
ports."
::= { scsiGroups 14 }
scsiTgtDevLuNotificationsGroup NOTIFICATION-GROUP
NOTIFICATIONS {
scsiTgtDeviceStatusChanged,
scsiLuStatusChanged
}
STATUS current
DESCRIPTION
"A collection of notifications regarding status change of SCSI
target devices and logical units."
::= { scsiGroups 15 }
END
10. Object Population Example: SCSI Target and Initiator Devices on a
pSCSI Bus
This section provides a sample set of values for a parallel SCSI
scenario in which a SCSI MIB module can be implemented. The example
shown below is not a normative part of this document and makes some
assumptions about the underlying implementation, which are not based
on actual implementations.
The respective sections describe the sequence of object
instantiations and attempts to explain non-typical values for
attributes that are unique to the scenario.
Note: While populating the objects, the population of statistics is
not considered.
This scenario deals with a SCSI target and initiator devices attached
to a parallel SCSI bus, defined by one of the SCSI-3 Parallel
Interface standards (the version referenced in the MIB module is the
4th generation, called SPI-4). We assume that the SCSI initiator
device is a Host Bus Adaptor (HBA), and the SCSI target device is a
physical disk. We assume that the SCSI target device has one
integrated logical unit, identified by a Logical Unit Number (LUN) of
0, which is the default LUN. The parallel SCSI transport only
supports port identifiers, and not port names. The transport pointer
is set to 0 since there is no MIB module defined for SPI-4.
We assume an HBA as the SCSI initiator device and a disk as the SCSI
target device. We assume that the SCSI target device has one logical
unit, addressed by Logical Unit Number set to 0 (LUN0), which is the
default LUN. Parallel SCSI has only port identifiers, no port names.
The transport pointer for parallel SCSI is set to 0 since there is no
reference transport (SPI) MIB module.
Once the SCSI system is initialized, an SNMP agent should be able to
view the values of variables populated in the ScsiDevice,
ScsiInitiatorDevice, ScsiTargetDevice, ScsiPort, ScsiTargetPort,
ScsiInitiatorPort, ScsiLogicalUnit, ScsiLUIdentifier objects.
The ScsiAuthorizedIntr population depends on the transport and the
implementation. As this example scenario is parallel SCSI, we deal
with the ports. Hence the ScsiPortIndexOrZero is the index of the
SCSI target port and ScsiAuthIntrDevOrPort is "port". Same is the
case with the variables in scsiDscTgtDevOrPort.
Note that "" means zero-length string.
10.1. scsiInstance Table:
Attribute Value
---------- ------
scsiInstIndex 1
scsiInstAlias "pSCSI-1"
scsiInstSoftwareIndex 1000
scsiInstVendorVersion "1.0a"
scsiInstScsiNotificationsEnable true
scsiInstStorageType nonVolatile
10.2. scsiDevice Table:
Attribute Value
---------- ------
scsiInstIndex 1 1
scsiDeviceIndex 1 2
scsiDeviceAlias "pSCSI-HBA" "pSCSI-Disk1"
scsiDeviceRole initiator(1) target(0)
scsiDevicePortNumber 1 1
10.3. scsiPort Table:
Attribute Value
---------- ------
scsiInstIndex 1 1
scsiDeviceIndex 1 2
scsiPortIndex 1 2
scsiPortRole initiator(1) target(0)
scsiPortTransportPtr 1 2
10.4. scsiTransport Table:
Attribute Value
---------- ------