mirror of
https://github.com/hsnodgrass/snmp_mib_archive.git
synced 2025-04-17 16:03:04 +00:00
408 lines
15 KiB
Plaintext
408 lines
15 KiB
Plaintext
-- ******************************************************************
|
|
-- CISCO-TPC-MIB.my: Third Party Copy : XCOPY Engine
|
|
--
|
|
-- August 2004, Rahul Chari, Srini Kode
|
|
--
|
|
-- Copyright (c) 2002, 2003 by cisco Systems, Inc.
|
|
-- All rights reserved.
|
|
--
|
|
-- ******************************************************************
|
|
CISCO-TPC-MIB DEFINITIONS ::= BEGIN
|
|
|
|
IMPORTS
|
|
MODULE-IDENTITY,
|
|
OBJECT-TYPE,
|
|
Unsigned32,
|
|
Counter32,
|
|
Gauge32 FROM SNMPv2-SMI
|
|
MODULE-COMPLIANCE,
|
|
OBJECT-GROUP FROM SNMPv2-CONF
|
|
RowStatus,
|
|
TEXTUAL-CONVENTION FROM SNMPv2-TC
|
|
FcNameIdOrZero FROM CISCO-ST-TC
|
|
vsanIndex FROM CISCO-VSAN-MIB
|
|
ciscoMgmt FROM CISCO-SMI
|
|
PhysicalIndex FROM ENTITY-MIB;
|
|
|
|
|
|
ciscoTpcMIB MODULE-IDENTITY
|
|
LAST-UPDATED "200501240000Z"
|
|
ORGANIZATION "Cisco Systems, Inc."
|
|
CONTACT-INFO
|
|
" Cisco Systems
|
|
Customer Service
|
|
|
|
Postal: 170 W Tasman Drive
|
|
San Jose, CA 95134
|
|
USA
|
|
Tel: +1 800 553 -NETS
|
|
E-mail: cs-san@cisco.com"
|
|
DESCRIPTION
|
|
"The MIB module for Third Party Copy(TPC):
|
|
Third Party Copy derives its name from the fact
|
|
that there are three entities involved in the
|
|
process of copying data either for backup operations
|
|
or restore operations. The three entities:
|
|
- entity originating the copy commands
|
|
- data source for the copy
|
|
- data destination for the copy.
|
|
|
|
The entity originating the copy commands to perform
|
|
the data transfer can use the SCSI Extended Copy
|
|
(XCOPY).
|
|
|
|
The TPC feature exposes a disk target with
|
|
Logical Unit Number(LUN) 0 that is capable of
|
|
processing the SCSI Extended Copy Command (XCOPY)
|
|
to transfer data from a specified source to a
|
|
specified destination. On receiving the XCOPY
|
|
command, the TPC target performs the actual data
|
|
transfer from the data source to the data
|
|
destination on behalf of the entity issuing the
|
|
XCOPY command.
|
|
|
|
The MIB provides an interface to configure the
|
|
TPC targets. The user specifies the module and
|
|
the VSAN on which the TPC feature needs to be
|
|
configured. Once the feature has been configured
|
|
target ports are created on the specified module
|
|
and VSAN that are XCOPY capable. Any application
|
|
that can source a XCOPY command can use these
|
|
targets to perform data movement.
|
|
|
|
Acronyms
|
|
The following acronyms are used in this document:
|
|
|
|
XCOPY:
|
|
SCSI Extended Copy Command.
|
|
|
|
TPC:
|
|
Third Party Copy.
|
|
|
|
LUN:
|
|
Logical Unit Number.
|
|
|
|
VSAN:
|
|
Virtual Storage Area Network. "
|
|
|
|
REVISION "200501240000Z"
|
|
DESCRIPTION
|
|
"Initial version of this MIB module. "
|
|
::= { ciscoMgmt 460 }
|
|
|
|
ciscoTpcNotification OBJECT IDENTIFIER
|
|
::= { ciscoTpcMIB 0 }
|
|
ciscoTpcObjects OBJECT IDENTIFIER
|
|
::= { ciscoTpcMIB 1 }
|
|
ciscoTpcMIBConformance OBJECT IDENTIFIER
|
|
::= { ciscoTpcMIB 2 }
|
|
|
|
ciscoTpcConfig OBJECT IDENTIFIER
|
|
::= { ciscoTpcObjects 1 }
|
|
|
|
-- Textual Conventions
|
|
|
|
TpcTargetState ::= TEXTUAL-CONVENTION
|
|
STATUS current
|
|
DESCRIPTION
|
|
"Represents the state of the TPC target.
|
|
|
|
'active' - indicates that the TPC target is
|
|
ready to process XCOPY requests.
|
|
|
|
'initializing' - indicates that the TPC target is
|
|
not ready.
|
|
|
|
'error' - indicates that the TPC target was
|
|
brought down due to error
|
|
conditions. "
|
|
SYNTAX INTEGER {
|
|
active(1),
|
|
initializing(2),
|
|
error(3)
|
|
}
|
|
|
|
--
|
|
-- Third Party Copy Module Table
|
|
--
|
|
|
|
ctpcModuleTable OBJECT-TYPE
|
|
SYNTAX SEQUENCE OF CtpcModuleEntry
|
|
MAX-ACCESS not-accessible
|
|
STATUS current
|
|
DESCRIPTION
|
|
"A table listing the modules on which TPC functionality
|
|
can be configured by the user. Each such module is
|
|
identified by ctpcModuleId.
|
|
|
|
The agent creates an entry in this table on
|
|
detecting a module that can support TPC
|
|
functionality. Similarly, it will remove the entry
|
|
when the TPC functionality cannot be supported on
|
|
this module any longer.
|
|
|
|
The entry in the ctpcVsanTable can only be created
|
|
on a module present in this table."
|
|
::= { ciscoTpcConfig 1 }
|
|
|
|
ctpcModuleEntry OBJECT-TYPE
|
|
SYNTAX CtpcModuleEntry
|
|
MAX-ACCESS not-accessible
|
|
STATUS current
|
|
DESCRIPTION
|
|
"A conceptual row in the ctpcModuleTable. Each row
|
|
represents a TPC capable module."
|
|
INDEX { ctpcModuleId }
|
|
::= { ctpcModuleTable 1 }
|
|
|
|
CtpcModuleEntry ::= SEQUENCE {
|
|
ctpcModuleId PhysicalIndex
|
|
}
|
|
|
|
ctpcModuleId OBJECT-TYPE
|
|
SYNTAX PhysicalIndex
|
|
MAX-ACCESS read-only
|
|
STATUS current
|
|
DESCRIPTION
|
|
"This object specifies the physical index of the
|
|
module on which TPC can be configured by the user.
|
|
This is same as the entPhysicalIndex of the module."
|
|
::= { ctpcModuleEntry 1 }
|
|
|
|
--
|
|
-- Third Party Copy Vsan Table
|
|
--
|
|
|
|
ctpcVsanTable OBJECT-TYPE
|
|
SYNTAX SEQUENCE OF CtpcVsanEntry
|
|
MAX-ACCESS not-accessible
|
|
STATUS current
|
|
DESCRIPTION
|
|
"A table listing all the VSANs for which TPC
|
|
functionality has been configured by the user. The
|
|
user configures TPC functionality on a per VSAN basis
|
|
by specifying the module, identified by ctpcModuleId,
|
|
on which to configure TPC and the VSAN number.
|
|
|
|
An entry can be created in this table only if an
|
|
entry exists in ctpcModuleTable for this module.
|
|
If a management application attempts to create
|
|
a row in this table corresponding to a module that
|
|
does not exist in ctpcModuleTable table then the
|
|
agent would respond with an error-status set to
|
|
'inconsistentValue'.
|
|
|
|
Once an entry is created, even if this module no
|
|
longer exists in the ctpcModuleTable, still
|
|
this entry is not deleted. The entry can only be
|
|
deleted by setting ctpcVsanRowStatus to 'delete'."
|
|
::= { ciscoTpcConfig 2 }
|
|
|
|
ctpcVsanEntry OBJECT-TYPE
|
|
SYNTAX CtpcVsanEntry
|
|
MAX-ACCESS not-accessible
|
|
STATUS current
|
|
DESCRIPTION
|
|
"An entry in the TPC VSAN table for each configured
|
|
VSAN on this module."
|
|
INDEX { ctpcModuleId, vsanIndex }
|
|
::= { ctpcVsanTable 1 }
|
|
|
|
CtpcVsanEntry ::= SEQUENCE {
|
|
ctpcVsanRowStatus RowStatus
|
|
}
|
|
|
|
ctpcVsanRowStatus OBJECT-TYPE
|
|
SYNTAX RowStatus
|
|
MAX-ACCESS read-create
|
|
STATUS current
|
|
DESCRIPTION
|
|
"This object controls and reflects the status of rows
|
|
in this table. When the agent successfully creates
|
|
the entry, this object is set to 'active' by the
|
|
agent.
|
|
|
|
Deleting an entry from this table, unconfigures the
|
|
TPC functionality on the module specified by the
|
|
corresponding instance index 'ctpcModuleId'
|
|
on the VSAN represented by the corresponding
|
|
instance index 'vsanIndex'
|
|
|
|
To delete an entry, set this object value to
|
|
'destroy'."
|
|
::= { ctpcVsanEntry 1 }
|
|
|
|
|
|
--
|
|
-- Third Party Copy Target Table
|
|
--
|
|
|
|
ctpcTargetTable OBJECT-TYPE
|
|
SYNTAX SEQUENCE OF CtpcTargetEntry
|
|
MAX-ACCESS not-accessible
|
|
STATUS current
|
|
DESCRIPTION
|
|
"A list of all the TPC targets that are configured
|
|
on this module and on this VSAN. There can be more
|
|
than one TPC target in the same VSAN on a module.
|
|
The number of TPC targets is implementation specific.
|
|
Each TPC target has a unique node world-wide-name,
|
|
identified by ctpcTargetNodeName and a unique port
|
|
world-wide-name, identified by ctpcTargetPortName.
|
|
Each TPC target exposes a single LUN (LUN 0) that is
|
|
XCOPY capable and is only concerned with moving data
|
|
in its own VSAN.
|
|
|
|
Once an entry is created in ctpcVsanTable, one or
|
|
more entries are created in this table by agent.
|
|
Similarly the entries in this table are deleted
|
|
when the entry with the same ctpcModuleId and
|
|
vsanIndex is deleted from the ctpcVsanTable."
|
|
::= { ciscoTpcConfig 3 }
|
|
|
|
ctpcTargetEntry OBJECT-TYPE
|
|
SYNTAX CtpcTargetEntry
|
|
MAX-ACCESS not-accessible
|
|
STATUS current
|
|
DESCRIPTION
|
|
"An entry in the TPC target table for each TPC target
|
|
in this VSAN on this module."
|
|
INDEX { ctpcModuleId, vsanIndex, ctpcTargetIndex }
|
|
::= { ctpcTargetTable 1 }
|
|
|
|
CtpcTargetEntry ::= SEQUENCE {
|
|
ctpcTargetIndex Unsigned32,
|
|
ctpcTargetNodeName FcNameIdOrZero,
|
|
ctpcTargetPortName FcNameIdOrZero,
|
|
ctpcTargetState TpcTargetState,
|
|
ctpcTargetNumXcopies Counter32,
|
|
ctpcTargetMinXcopy Gauge32,
|
|
ctpcTargetMaxXcopy Gauge32,
|
|
ctpcTargetAvgKbPerSec Gauge32
|
|
}
|
|
|
|
ctpcTargetIndex OBJECT-TYPE
|
|
SYNTAX Unsigned32
|
|
MAX-ACCESS not-accessible
|
|
STATUS current
|
|
DESCRIPTION
|
|
"The unique id number associated with the TPC target.
|
|
This id number is unique within the vsan in which
|
|
the TPC target is configured."
|
|
::= { ctpcTargetEntry 1 }
|
|
|
|
ctpcTargetNodeName OBJECT-TYPE
|
|
SYNTAX FcNameIdOrZero
|
|
MAX-ACCESS read-only
|
|
STATUS current
|
|
DESCRIPTION
|
|
"The TPC target's node world-wide-name."
|
|
::= { ctpcTargetEntry 2 }
|
|
|
|
ctpcTargetPortName OBJECT-TYPE
|
|
SYNTAX FcNameIdOrZero
|
|
MAX-ACCESS read-only
|
|
STATUS current
|
|
DESCRIPTION
|
|
"The TPC target's port world-wide-name."
|
|
::= { ctpcTargetEntry 3 }
|
|
|
|
ctpcTargetState OBJECT-TYPE
|
|
SYNTAX TpcTargetState
|
|
MAX-ACCESS read-only
|
|
STATUS current
|
|
DESCRIPTION
|
|
"The current state of the TPC target"
|
|
::= { ctpcTargetEntry 4 }
|
|
|
|
ctpcTargetNumXcopies OBJECT-TYPE
|
|
SYNTAX Counter32
|
|
UNITS "commands"
|
|
MAX-ACCESS read-only
|
|
STATUS current
|
|
DESCRIPTION
|
|
"The total number of XCOPY commands processed by the
|
|
TPC target since the module on which this target has
|
|
been configured has been online"
|
|
::= { ctpcTargetEntry 5 }
|
|
|
|
ctpcTargetMinXcopy OBJECT-TYPE
|
|
SYNTAX Gauge32
|
|
UNITS "Kilobytes"
|
|
MAX-ACCESS read-only
|
|
STATUS current
|
|
DESCRIPTION
|
|
"The smallest amount of data in Kilobytes transferred
|
|
by the TPC target in a single xcopy command since the
|
|
module on which this target has been configured has
|
|
been online."
|
|
::= { ctpcTargetEntry 6 }
|
|
|
|
ctpcTargetMaxXcopy OBJECT-TYPE
|
|
SYNTAX Gauge32
|
|
UNITS "Kilobytes"
|
|
MAX-ACCESS read-only
|
|
STATUS current
|
|
DESCRIPTION
|
|
"The largest amount of data in Kilobytes transferred
|
|
by the TPC target in a single xcopy command since the
|
|
module on which this target has been configured has
|
|
been online."
|
|
::= { ctpcTargetEntry 7 }
|
|
|
|
ctpcTargetAvgKbPerSec OBJECT-TYPE
|
|
SYNTAX Gauge32
|
|
UNITS "Kilobytes/second"
|
|
MAX-ACCESS read-only
|
|
STATUS current
|
|
DESCRIPTION
|
|
"The average kilobytes per second throughput of the
|
|
TPC target in processing the XCOPY commands."
|
|
::= { ctpcTargetEntry 8 }
|
|
|
|
-- Conformance
|
|
|
|
ctpcMIBCompliances OBJECT IDENTIFIER
|
|
::= { ciscoTpcMIBConformance 1 }
|
|
ctpcMIBGroups OBJECT IDENTIFIER
|
|
::= { ciscoTpcMIBConformance 2 }
|
|
|
|
ctpcMIBCompliance MODULE-COMPLIANCE
|
|
STATUS current
|
|
DESCRIPTION
|
|
"The compliance statement for entities which
|
|
implement the CISCO-TPC-MIB mib."
|
|
MODULE MANDATORY-GROUPS { ctpcVsanTargetGroup }
|
|
|
|
OBJECT ctpcVsanRowStatus
|
|
SYNTAX INTEGER {
|
|
active(1),
|
|
createAndGo(4),
|
|
destroy(6)}
|
|
DESCRIPTION
|
|
"Only values 'createAndGo', 'destroy' and
|
|
'active' need to be supported."
|
|
|
|
::= { ctpcMIBCompliances 1 }
|
|
|
|
-- Units of Conformance
|
|
|
|
ctpcVsanTargetGroup OBJECT-GROUP
|
|
OBJECTS { ctpcModuleId,
|
|
ctpcVsanRowStatus,
|
|
ctpcTargetNodeName,
|
|
ctpcTargetPortName,
|
|
ctpcTargetState,
|
|
ctpcTargetNumXcopies,
|
|
ctpcTargetMinXcopy,
|
|
ctpcTargetMaxXcopy,
|
|
ctpcTargetAvgKbPerSec
|
|
}
|
|
STATUS current
|
|
DESCRIPTION
|
|
"A collection of objects for displaying and
|
|
configuring the TPC target."
|
|
::= { ctpcMIBGroups 1 }
|
|
|
|
END
|