Internet Draft                                      M. Hallak-Stamler
                                                  Sanrad Intelligent Storage
                                                                    M. Bakke
                                                               Cisco Systems
                                                               K. McCloghrie
                                                               Cisco Systems
                                                                 Y. Lederman
                                                      Siliquent Technologies
                                                                  G. Penokie
                                                                         IBM
                                                              Roger Cummings
                                                                     Veritas
                                                              Sajay Selvaraj
                                                            Hcl Technologies
                                                                Kha Sin Teow
                                                                     Brocade
        draft-ietf-ips-scsi-mib-01.txt                         February 2002
 
 
 
                 Definition of Managed Objects for SCSI Entities
 
       Status of this Memo
 
       This document is an Internet-Draft and is in full conformance with
       all provisions of Section 10 of RFC2026.
 
       Internet-Drafts are working documents of the Internet Engineering
       Task Force (IETF), its areas, and its working groups.  Note that
       other groups may also distribute working documents as Internet-
       Drafts.
 
       Internet-Drafts are draft documents valid for a maximum of six
       months and may be updated, replaced, or obsoleted by other documents
       at any time.  It is inappropriate to use Internet- Drafts as
       reference material or to cite them other than as "work in progress."
 
       The list of current Internet-Drafts can be accessed at
       http://www.ietf.org/ietf/1id-abstracts.txt
 
       The list of Internet-Draft Shadow Directories can be accessed at
       http://www.ietf.org/shadow.html.
 
       Copyright Notice
 
          Copyright (C) The Internet Society (2000).  All Rights Reserved.
 
       Abstract
 
 
       Hallak-Stamler et al.           [Page  1]
 
       SCSI MIB                                  January 2002
 
       This memo defines a Management Information Base (MIB) for Small
       Computer System Interface (SCSI) entities, independently of the
       transport layer.
 
       Table of Contents
    1.  The SNMP Management Framework.....................................2
    2.  Conventions.......................................................3
    3.  Overview..........................................................4
      3.1 Introduction....................................................4
      3.2 SCSI Terminology................................................7
        3.2.1 SCSI application layer......................................7
        3.2.2 SCSI Device.................................................7
        3.2.3 SCSI Port...................................................7
        3.2.4 SCSI Initiator Device.......................................7
        3.2.5 SCSI Initiator Port.........................................7
        3.2.6 SCSI Target Device..........................................7
        3.2.7 SCSI Target Port............................................7
        3.2.8 Logical Units...............................................8
        3.2.9 Logical Unit Number.........................................8
        3.2.10 Nexus......................................................8
        3.2.11 Interconnect subsystem.....................................8
        3.2.12 Device Server..............................................8
        3.2.13 Task Manager...............................................8
      3.3  SCSI MIB implementations.......................................8
      3.4 Bridging and Virtualization....................................10
    4.Structure of the MIB...............................................11
      4.1 General Group..................................................11
      4.2 Initiator Group................................................11
      4.3 Target Group...................................................11
      4.4 The Transport Group............................................11
    5.Relationship to Other MIBs.........................................11
      5.1 Host Resource MIB..............................................11
      5.2 iSCSI MIB......................................................12
    6. MIBS Specific Issues..............................................12
      6.1 Names and Identifiers..........................................12
      6.2 Logical Unit Number............................................12
      6.3 State and status...............................................12
      6.4 SCSI Domains...................................................12
    7.Objects Population Examples........................................12
    8.  Abbreviations....................................................17
    9.  Warning..........................................................18
    10.  Object Definitions..............................................18
    11.  Acknowledgments.................................................47
    12.  References......................................................47
    13.  Security Considerations.........................................48
    14.  Authors' Addresses..............................................49
 
 
       1.  The SNMP Management Framework
 
       The SNMP Management Framework presently consists of five major
       components:
 
       Hallak-Stamler et al. Expires August 2002 [Page  2]
 
       SCSI MIB                                  January 2002
 
 
          o   An overall architecture, described in RFC 2571 [1].
 
          o  Mechanisms for describing and naming objects and events for
              the purpose of management.  The first version of this
              Structure of Management Information (SMI) is called SMIv1 and
              described in STD 16, RFC 1155 [2], STD 16, RFC 1212 [3] and
              RFC 1215 [4].  The second version, called SMIv2, is described
              in STD 58, RFC 2578 [5], STD 58, RFC 2579 [6] and STD 58, RFC
              2580 [7].
 
          o  Message protocols for transferring management information. The
              first version of the SNMP message protocol is called SNMPv1
              and described in STD 15, RFC 1157 [8].  A second version of
              the SNMP message protocol, which is not an Internet standards
              track protocol, is called SNMPv2c and described in RFC 1901
              [9] and RFC 1906 [10].  The third version of the message
              protocol is called SNMPv3 and described in RFC 1906 [10], RFC
              2572 [11] and RFC2574[12].
 
          o  Protocol operations for accessing management information.  The
              first set of protocol operations and associated PDU formats is
              described in STD 15, RFC 1157 [8].  A second set of protocol
              operations and associated PDU formats is described in RFC 1905
              [13].
 
          o  A set of fundamental applications described in RFC 2573 [14]
              and the view-based access control mechanism described in RFC
              2575[15].
 
       A more detailed introduction to the current SNMP Management
       Framework can be found in RFC 2570 [16].
 
       Managed objects are accessed via a virtual information store, termed
       the Management Information Base or MIB.  Objects in the MIB are
       defined using the mechanisms defined in the SMI.
 
       This memo specifies a MIB module that is compliant to the SMIv2.  A
       MIB conforming to the SMIv1 can be produced through the appropriate
       translations.  The resulting translated MIB must be semantically
       equivalent, except where objects or events are omitted because no
       translation is possible (use of Counter64).  Some machine-readable
       information in SMIv2 will be converted into textual descriptions in
       SMIv1 during the translation process.  However, this loss of
       machine-readable information is not considered to change the
       semantics of the MIB.
 
       2.  Conventions
 
       The keywords MUST, MUST NOT, REQUIRED, SHALL, SHALL NOT, SHOULD,
       SHOULD NOT, RECOMMENDED, NOT RECOMMENDED, MAY, and OPTIONAL, when
 
       Hallak-Stamler et al. Expires August 2002 [Page  3]
 
       SCSI MIB                                  January 2002
 
       they appear in this document, are to be interpreted as described in
       RFC 2119 [23].
 
       3.  Overview
 
       This memo defines a portion of the Management Information Base (MIB)
       for use with network management protocols in the Internet community.
       In particular, it describes a set of managed objects to configure
       and monitor Small Computer System Interface entities (SCSI
       entities), i.e. SCSI devices, SCSI targets and Initiators and SCSI
       Ports. The MIB is based on documents issued by the T-10 Technical
       Committee and specially on SAM-2 (SCSI Architecture Model - 2)
       document [17].
 
 
       The SCSI protocol is a client-server protocol allowing an
       application layer client to transmit commands to a device server and
       to a task manager using an interconnect subsystem.
       The client side is referred as the initiator side and the server
       side is referred as the target side.
       A target includes a collection of logical units; each logical unit
       has a task manager allowing an initiator to execute commands.
 
       3.1 Introduction
       In the late 1970s a firm called Shugart Associates started to have
       some considerable success with a peripheral interface definition in
       what became the PC marketplace, and this interface was adopted
       and extended by an open standards committee to form the Small
       Computer Systems Interface (SCSI).
       SCSI defined an 8 bit wide multi-drop ææbusÆÆ structure which could
       interconnect a total of eight peripherals and computer systems.
 
       ItÆs important to realize that all SCSI initially standardized was
       the ææphysical connectionÆÆ i.e. the connectors, cables and interface
       signals. Thus even though a peripheral could be connected to
       multiple systems, the information that flowed across the interface
       was different in each case.
       This was addressed some five years later by the definition of a
       Common Command Set, and with this definition in place it was
       possible for the first time to develop a peripheral with both a
       common interface and common operating firmware for connection to
       multiple systems.
 
       The physical interface of SCSI continued to be developed throughout
       the 1980s with the addition of fast (up to 10 megabytes/s) and wide
       (16 bits) variants, but the distance supported remained a maximum of
       25 meters (from one end of the bus to another), and indeed some of
       the faster variants supported much less than that distance. The
       command set development continued, with special commands for tapes,
       printers, and even processors being added to the original disk-
       oriented set.
 
       Hallak-Stamler et al. Expires August 2002 [Page  4]
 
       SCSI MIB                                  January 2002
 
       So successful was SCSI in the 1980s that the majority of the
       available Operating Systems incorporated support for the SCSI
       command set as standard.
 
       However at the end of the 1980s the distance, speed and number of
       devices supported by SCSI were starting to become significant
       impediments to systems design, and while the "information explosion"
       had not yet started in earnest, it was already being anticipated. At
       the same time, the serial interface technologies developed for Local
       Area Networks such as Ethernet, and the fibre optics technologies
       that were first deployed in telecommunications applications, were
       starting to appear sufficiently rugged & low-cost for use in
       peripheral interface applications.
       Thus a standards project was begun in 1988 to develop a new serial,
       fibre-optic interface to carry the SCSI command sets and other
       peripheral protocols. This interface eventually became known as
       Fibre Channel (FC), and it is based on an architecture centered
       around an abstractly defined "fabric", which may be a switch or a
       loop connection. MIBs for various FC equipments are already in
       existence.
 
       In order to support the new interfaces, it was necessary to
       completely reorganize the SCSI standards and definitions. The
       command sets were separated from the physical interface definitions,
       and a SCSI Architectural Model (SAM) was created to define the
       interaction between the various standards. It is a key to
       understanding SAM to realize that it was first created approximately
       10 years AFTER the first SCSI products were shipped!!
 
       The most recent development in this saga occurred in 2000 when an
       IETF Working Group was formed to address, amongst other things, a
       definition for transporting the SCSI command sets directly over a
       TCP/IP infrastructure. This effort is know as iSCSI, and an iSCSI
       MIB is already under development.
 
 
 
                             SCSI-3 Standards Architecture (*)
 
                        +------------------------------+
       - - - - - - - - -| Common Access Method (CAM-3) |- - - - - - - - - -
                        +------------------------------+
               +--------+    +--------+ +----------+ +--------+ +---------+
               |Reduced |    |Medium  | |Controller| |Multi-  | |Enclosure|
               |Block   |    |Changer | |Commands  | |Media   | |Services |
               |Commands|    |Commands| |(SCC,     | |Commands| | (SES)   |
               | (RBC)  |    | (SMC)  | |   SCC-2) | |(MMC,   | +---------+
               +--------+    +--------+ +----------+ | MMC-2) |      |
       +--------+  |  +--------+  |           |      +--------+      |
       |Block   |  |  |Stream  |  |           |           |          |
       |Commands|  |  |Commands|  |           |           |          |
       | (SBC)  |  |  | (SSC)  |  |           |           |          |
 
       Hallak-Stamler et al. Expires August 2002 [Page  5]
 
       SCSI MIB                                  January 2002
 
       +--------+  |  +--------+  |           |           |          |
           |       |      |       |           |           |          |
           +---------------------------------------------------------+
                                        |
                        +-------------------------------+
                        | Primary Commands (SPC, SPC-2) |
                        +-------------------------------+
                                        |
                        +---------------------------------+
       - - - - - - - - -| Architecture Model (SAM, SAM-2) |- - - - - - - -
       -
                        +---------------------------------+
                                        |
              +------------------------------------------------+
              |                      |               |         |
        +-----------+         +-------------+ +------------+   |   Parallel
        |Interlocked|         |Parallel     | |Parallel    |   |
       Interface
        |Protocol   |         |Interface-2  | |Interface-3 |   |   Projects
        |   (SIP)   |         |(SPI-2)      | |(SPI-3)     |   |
        +-----------+         |             | |            |   |
              |               |[Will replace| |[New project|   |
              |               | SIP, SPI, & | | based on   |   |
              |               | Fast-20]    | | SPI-2]     |   |
        +---------+           |             | |            |   |
        |Parallel | +-------+ |             | |            |   |
        |Interface|-|Fast-20| |             | |            |   |
        |  (SPI)  | |(Ultra)| |  (Ultra2)   | |  (Ultra3)  |   |
        +---------+ +-------+ +-------------+ +------------+   |
                                                               |
                                                               |
              +------------------------------------------------+
              |             |              |
        +----------+ +-------------+ +----------+                 Serial
        |Serial Bus| |Fibre Channel| |SSA SCSI-3|                 Interface
        |Protocol  | |Protocol     | |Protocol  |                 Projects
        | (SBP-2)  | |(FCP, FCP-2) | |(SSA-S3P) |
        +----------+ +-------------+ +----------+
              |             |              |
              |             |        +----------+
              |             |        |SSA-TL2   |
              |             |        +----------+
              |             |              |
              |             |        +----------+
        +----------+ +-------------+ |SSA-PH1 or|
        |IEEE 1394 | |Fibre Channel| |SSA-PH2   |
        +----------+ +-------------+ +----------+
 
 
       (*)  This chart reflects the currently approved SCSI-3 project
       family.
 
 
       Hallak-Stamler et al. Expires August 2002 [Page  6]
 
       SCSI MIB                                  January 2002
 
       All projects are in T10, except Fibre Channel is in T11 and 1394 is
       in IEEE.
 
 
       3.2 SCSI Terminology
       The definitions below are part of T.10 Proposal for SAM-2 [17]. They
       are copied from [17].
 
       3.2.1 SCSI application layer
       The protocols and procedures that implement or invoke SCSI commands
       and task management functions by using services provided by a SCSI
       protocol layer.
 
       3.2.2 SCSI Device
       A SCSI device is an entity that contains one or more SCSI ports that
       are connected to a service delivery subsystem and supports a SCSI
       application protocol.
 
       3.2.3 SCSI Port
       A device-resident object that connects the application client,
       device server or task manager to the service delivery subsystem
       through which requests and responses are routed. SCSI port is
       synonymous with port and either a SCSI initiator port or a SCSI
       target port.
 
       3.2.4 SCSI Initiator Device
       A SCSI initiator device contains application clients and SCSI
       initiator ports that originate device service and task management
       requests to be processed by a target SCSI device. When used this
       term refers to SCSI initiator devices or SCSI target/initiator
       devices that are using the SCSI target/initiator port as a SCSI
       initiator port.
 
       3.2.5 SCSI Initiator Port
       A SCSI initiator device object acts as the connection between
       application clients and the service delivery subsystem through which
       requests and responses are routed. In all cases when this term is
       used it refers to an initiator port or a SCSI target/initiator port
       operating as a SCSI initiator port.
 
       3.2.6 SCSI Target Device
       A SCSI device containing logical units and SCSI target ports that
       receives device service and task management requests for processing.
       When used this term refers to SCSI target devices or SCSI
       target/initiator devices that are using the SCSI target/initiator
       port as a SCSI target port.
 
       3.2.7 SCSI Target Port
       A SCSI target device object contains a task router and acts as the
       connection between device servers and task managers and the service
       delivery subsystem through which requests and responses are routed.
 
       Hallak-Stamler et al. Expires August 2002 [Page  7]
 
       SCSI MIB                                  January 2002
 
       When this term is used it refers to a SCSI target port or a SCSI
       target/initiator port operating as a SCSI target port.
 
       3.2.8 Logical Units
       A entity residing in the target that implements a device model and
       processes SCSI commands sent by an application client.
 
       3.2.9 Logical Unit Number
       Logical Unit Number or LUN is a 64-bit identifier for a logical
       unit.
 
       3.2.10 Nexus
       A nexus is a relationship between two SCSI devices and the initiator
       and target objects within those SCSI devices.
              I_T Nexus:     A nexus between an initiator and a target
              I_T_L Nexus:   A nexus between an initiator, a target and a
                             logical unit.
              I_T_L_Q Nexus: A nexus between an initiator, a target, a
                             logical unit and a tagged task.
              I_T_L_x Nexus: Either am I_T_L nexus or an I_T_L_Q nexus.
 
       3.2.11 Interconnect subsystem
       One or more physical interconnects that appear as a single path for
       the transfer of information between SCSI devices.
 
       3.2.12 Device Server
       A device server is an object within the logical unit that processes
       SCSI tasks according to the rules for task management.
 
       3.2.13 Task Manager
       A task manager is a server within the target that processes task
       management functions.
 
 
 
       3.3  SCSI MIB implementations
 
       The SCSI MIB is a basic building block to use in the various SCSI
       management scenarios.
       The SCSI MIB will be implemented in every SCSI entity in the system.
       A SCSI entity can be a SCSI Initiator device, SCSI Target device or
       SCSI Initiator and Target device. As SCSI devices may contain more
       than one SCSI entity, it is possible that more than one SCSI MIB
       instance, and its respective agent, will reside in a single device.
 
       Along this chapter figures have been provided to describe the
       location of the SCSI MIB implementation in the various SCSI
       management scenarios.
       The location of the SCSI SNMP agent implementing the SCSI MIB are
       denoted with '*'.
 
 
 
       Hallak-Stamler et al. Expires August 2002 [Page  8]
 
       SCSI MIB                                  January 2002
 
 
 
 
 
             +----------+                                       +---------+
             |SCSI      |          SCSI Transport               |SCSI     |
             |Initiator +---------------------------------------+Target   |
             |Device    |                                       |Device   |
             |     *    |                                       |    *    |
             +----------+                                       +---------+
                   |                                                 |
                   |                                                 |
                   |                                                 |
                   |                                                 |
                   |                                                 |
                   |      SNMP        +----------+     SNMP          |
                   +------------------|SCSI      |-------------------+
                                      |Management|
                                      | (NMS)    |
                                      +----------+
 
 
       Figure 1: Single SCSI Initiator device and Single SCSI Target device
 
 
       Figure 1 describes a simple SCSI management scenario of a SCSI
       Initiator device, a SCSI Target device and a Management station.
       In this scenario there are two SNMP agents, each containing its SCSI
       instance and its respective objects.
       As the SCSI Target and SCSI Initiator device are interconnected,
       their Target and Initiator port objects will be complementary.
          'TBD AttachedObjects description'
       In addition to the SCSI transport (e.g. parallel SCSI, FCP, iSCSI),
       a management interface and transport (e.g. UDP),is provided in both
       the Target and the Initiator.
 
          +-----------+
          |  +--------+-+          SCSI Transport               +---------+
          |  | SCSI     |---------------------------------------+ SCSI    |
          |* | Initiator+---------------------------------------+ Target  |
          +--| Device   |          SCSI Transport               | Device  |
           | |     *    |                                       |    *    |
           | +----------+                                       +---------+
           |       |                                                 |
           |       |                                                 |
           |       |                                                 |
           |       |                                                 |
           |       |                                                 |
           |SNMP   |      SNMP        +----------+     SNMP          |
           +-------+------------------|SCSI      |-------------------+
                                      |Management|
                                      | (NMS)    |
 
       Hallak-Stamler et al. Expires August 2002 [Page  9]
 
       SCSI MIB                                  January 2002
 
                                      +----------+
 
                       Figure 2: Multiple Hosts and a Single Target device
 
 
       Figure 2 adds another SCSI Initiator device, to the SCSI network,
       which connects to the same SCSI target device.
       The Initiator also implements a SNMP SCSI agent. In this case the
       SCSI Target device includes multiple attached SCSI Initiator device
       Object instances.
 
 
    +-----------+                                               +---------+
    |  +----------+              +---------------+            +-+-----+   |
    |  |SCSI      |--------------| Virtualization|            | SCSI  |   |
    |* |Initiator +--------------| Device        +------------+ Target|   |
    +--|Device    | SCSI         |               |            | Device| * |
     | |     *    |              |            *  |            |    *  |---+
     | +----------+ Transport    +------------+--+            +-------+ |
     |       |                                |                 |       |
     |       |                                |                 |       |
     |       |                                |                 |       |
     |       |                                |                 |       |
     |       |                                |                 |       |
     |       |      SNMP        +-----------+ |   SNMP          |       |
     +-------+------------------+ SCSI      + +-+---------------+-------+
                                | Management|
                                | (NMS)     |
                                +-----------+
 
       Figure 3: Multiple Hosts, Virtualization device and multiple Targets
 
 
       Figure 3 adds an in-band virtualization device, which encapsulates,
       and possibly modifies, the SCSI Target devices representation to the
       SCSI Initiator devices. It is common practice for an in-band
       virtualization device, to include both SCSI Target and Initiator
       device functionality. Therefore, its SCSI MIB implementation
       includes both the SCSI Target and Initiator device objects. It
       should be noted that the Virtualization device might implement
       additional proprietary MIBs, as the SCSI MIB does not provide this
       kind of functionality.
 
 
       3.4 Bridging and Virtualization
 
       Storage virtualization is a concept that abstracts storage resources
       in such a way that, storage entities are provided as pool of logical
       entities.
       Usually the virtualization process is transparent the storage users
       (i.e. Hosts). Virtualization normally affects the SCSI entities
       represented to SCSI Initiators. However, the SCSI MIB should enable
 
       Hallak-Stamler et al. Expires August 2002 [Page  10]
 
       SCSI MIB                                  January 2002
 
       the representation of SCSI entities and their respective status,
       including error and performance-monitoring statistics. It should be
       possible to perform a limited number of configuration modification
       and diagnostic actions.
       The SCSI entities embodied in the bridging and virtualization
       devices should be represented by the SCSI MIB. However, Bridging and
       Virtualization devices configuration is beyond the above-described
       scope and therefore should be provided through enterprise MIBs.
 
       4.Structure of the MIB
         This MIB is composed as traditionally with three main groups:
              . scsiObjects
              . scsiNotifications
              . scsiConformance
 
         The scsiObjects group is composed itself of four groups:
 
       4.1 General Group
         The scsiGeneral group contains the parameters general to the
       managed scsi entity. It contains also the generic device and port
       tables.
 
       Note that a SCSI entity may contain more than one SCSI device and
       more than one SCSI port.
 
 
       4.2 Initiator Group
         The scsiInitiator group contains all the managed information
       related to an initiator device and port. In addition, it contains
       the scsiIntrDiscoveredTarget group that will allow a manager to
       check the targets and LUNs devices discovered by an initiator device
       or port.
 
       4.3 Target Group
         The scsiTarget group contains all the managed information related
       to a target device and port. In addition, it contains the
       scsiLogicalUnit group that summarizes all the managed information
       concerning logical units, LUN hierarchy and logical unit
       identifiers.
 
       4.4 The Transport Group
         This group is a collection of transports that can be used by SCSI.
       The transport fixes the format of SCSI Names and Identifiers.
 
       5.Relationship to Other MIBs
 
       5.1 Host Resource MIB
         This portion of MIB extends those managed objects to SCSI specific
       entities but doesn't contain reference to software like device
       driver. If MIB objects are required for installed packages of SCSI
       software, then the hrSWInstalledGroup of the host resource MIB (RFC
       2790 [22]) are the standard MIB objects to use.
 
       Hallak-Stamler et al. Expires August 2002 [Page  11]
 
       SCSI MIB                                  January 2002
 
 
 
       5.2 iSCSI MIB
         To be supplied.
 
       6. MIBS Specific Issues
 
       6.1 Names and Identifiers
         The names and the identifiers of the SCSI devices, ports and
         logical units depend on the underlying transport protocols; their
         format and length vary accordingly. Please refer to [20] in order
         to get more details.
 
       6.2 Logical Unit Number
         The logical unit number is a 64-bit integer. This type does not
         exist in SMI and therefore, we need to define it as a textual
         convention for this MIB.
 
       6.3 State and status
 
       Definitions:
        - Protected: Protected objects are objects that are able to
       tolerate one or more objects failing without any loss of data or
       loss of data availability.
 
       Reference:
       For more information on the logical unit states see the SCSI
       Controller Commands-2 (SCC-2) standard (NCITS.318-1998)
 
       Notification:
       Separate SNMP traps may be enabled/disabled to notify of a change in
       any of the SCSI device status variables. A notification will be
       generated for each occurrence of the abnormal status (e.g., if the
       SCSI deviceÆs current status is abnormal and another logical unit
       changes its status to from available another notification will
       occur). Other restrictions as to the frequency of the notifications
       are TBD.
 
 
       6.4 SCSI Domains
 
       SAM-2 specifies that devices belong to a domain. However, it is not
       usually possible to determine this from within a system, so domains
       are not represented within this MIB.
 
       7.Objects Population Examples
 
       Directly Attached SCSI Disk:
       ----------------------------
 
       Hallak-Stamler et al. Expires August 2002 [Page  12]
 
       SCSI MIB                                  January 2002
 
       In this case, the HBA will act as the scsi initiator and a scsi disk
       attached to the bus acts as the scsi target. Here we consider a
       simple case of a single logical unit with a single LUN.
 
 
       Considerations for including this topology:
       -----------------------------------------
       This is a simple case, which can be used to validate the basic
       soundness of the model from a parallel SCSI point of view.
 
 
 
       Population of the objects:
       --------------------------
 
       ScsiDevice:
       -----------
 
       For each device in the scsi bus, there is a corresponding row in the
       table.
       In this scenario we have two scsi devices hence we will have two
       rows created.
 
       scsiInstanceIndex     ->0001
 
       scsiDeviceIndex      ->An arbitrary index for the each device to be
                             uniquely identified
 
       scsiDeviceType        --> Initiator/Target/Initiator-Target
 
       scsiDeviceName       -->A name assigned to each scsi device in the
                             given scsi instance (by administrator?)
 
 
       The populated ScsiDevice table for this scenario:
       --------------------------------------------------
 
       scsiInstIndex       0001                0001
       scsiDeviceIndex     0001                0002
       SerialNumber        0001                0002
       scsiDeviceType         I                   T
       scsiDeviceName      Initiator-xxx       Target-yyy
 
 
       ScsiTargetDevice:
       -----------------
 
 
       scsiInstanceIndex     ->   0001
       scsiDeviceIndex      -> An arbitrary index to uniquely identify
                             each device.
 
       Hallak-Stamler et al. Expires August 2002 [Page  13]
 
       SCSI MIB                                  January 2002
 
       NumberOflUs           ->   Number of LUs associated with this
                             target. In our current scenario we have only
                             one logical unit associated with the target
                             device.
 
 
       scsiInstIndex       0001
       scsiDeviceIndex     0002
       NumberOfLUs            1
 
 
 
       ScsiInitiatorDevice Object:
       ---------------------------
 
       scsiInstanceIndex -> 0001
       scsiDeviceIndex -> Arbitrary index to uniquely identify each device.
 
 
       scsiInstIndex       0001
       scsiDeviceIndex     0002
 
 
       ScsiPort Object:
       ----------------
 
       This object will give a list of active SCSI Ports for each SCSI
       device in the instance. Hence the table will get populated with
       number of rows equivalent to the total number of active ports of all
       the scsi devices in the scsi instance. Here, we have two active
       ports one is an initiator port and one is a target port.
 
       scsiInstanceIndex ->0001
       scsiDeviceIndex ->An arbitrary index for the each device to get
                        uniquely identified
       scsiPortIndex   ->An arbitrary index for each port to get uniquely
                        identified.
       scsiPortType    ->This attribute states the type of the scsiport
                        ('I'->Initiator port; 'T'->Targetport;
                        'IT'->Initiator/Targetport)
 
 
       scsiInstIndex       0001           0001
       scsiDeviceIndex     0001           0002
       scsiPortIndex       0001           0002
       scsiPortType            I              T
 
       scsiInitiatorPort object:
       -------------------------
 
       This table contains all the initiator ports of each SCSI Initiator
       or Target/Initiator device. In our scenario we have one initiator
 
       Hallak-Stamler et al. Expires August 2002 [Page  14]
 
       SCSI MIB                                  January 2002
 
       device with one initiator port. So this table is populated with only
       one row.
 
       scsiInstanceIndex          -> 0001
       scsiDeviceIndex            -> An arbitrary index to uniquely
                                  identify each device.
       scsiPortIndex              -> An arbitrary index to uniquely
                                  identify each port.
       InitiatorPortName          -> Name of the port assigned by the SCSI
                                  protocol.
       InitiatorPortIdentifier   ->This is an identifier assigned to the
                                  port by SCSI.
 
       scsiInstIndex            0001
       scsiDeviceIndex          0001
       scsiPortIndex            0001
       InitiatorPortName        I_sample_port
       InitiatorPortIdentifier  1000
 
       ScsiTargetPort object:
       ----------------------
 
       This table contains all the target ports of each SCSI Target or
       Target/Initiator device.
       In our scenario we have only one target device with one target port.
 
       scsiInstanceIndex     -> 0001
       DeviceIndex          -> An arbitrary index for the each device to
                             get uniquely identified.
       PortIndex             -> An arbitrary index for each port to get
                             uniquely identified.
       TgtPortName           -> Name of the port assigned by the scsi
                             protocol
       TgtPortIdentifier    ->This is an identifier assigned to the port by
                             the scsi protocol
 
 
       scsiInstIndex           0001
       scsiDeviceIndex         0002
       scsiPortIndex           0002
       TargetPortName          T_sample_port
       TargetPortIdentifier    1001
 
 
       ScsiLogicalUnit:
       ----------------
 
       This table includes all the logical units exposed by a target
       device. We have only one logical unit on the target device.
 
       scsiInstanceIndex -> 0001
       scsiDeviceIndex  -> 0002
 
       Hallak-Stamler et al. Expires August 2002 [Page  15]
 
       SCSI MIB                                  January 2002
 
       scsiLUIndex      -> Administrative index in the Logical Unit table.
       scsiDefaultLun  -> This attribute represents a simple case in which
                        one logical unit will have one LUN assigned in which
                        case LU_IPort_Info will not be populated.
                        As this is a simple case of one LU having one LU
                        we will have this value as 0.which is the default
                        LUN.
       LuName          -> The World-Wide Name of this LU. This name should
                        be unique within the scsi instance.
       VendorId         -> Identifier of the vendor of this logical uni
       ProductId        -> A string identifying the product for this LU.
       RevisionId       -> A string defining the product revision of this
                        LU.
 
       scsiInstIndex            0001
       scsiDeviceIndex          0002
       scsiLUIndex              0001
       scsiLUparent                0
       scsiDefaultLUN              0
       LUName                    LLL
       Vendorid                  XYZ
       productid                 PQR
       revisonId                 ABC
 
 
       LU_IPort_Info:
       --------------
 
       This object is populated when there is more than one LUN to a single
       logical unit. Also this will have the persistent information about
       an initiator on a LU a basis. In our current we have one initiator
       and one target with single LUN.
       As this is a simple case with one LU having one LUN, this object
       will not be populated in this scenario.
 
       ScsiTgtAttIntrPort:
       ---------------------
 
       This object will be populated with the state information of
       initiators currently active. So this object will have the state info
       of the initiators currently attached to every target port. In our
       scenario we have a target device with one target port .So this table
       will populate, for each target port, all the attached initiator
       ports attached dynamically.
       In our scenario we will get one row populated for one initiator
       device with one port.
 
       scsiInstanceIndex     ->0001
       scsiDeviceIndex       ->An arbitrary index for the each device to
                             get uniquely identified
       scsiPortIndex         ->An arbitrary index for each port to get
                             uniquely identified.
 
       Hallak-Stamler et al. Expires August 2002 [Page  16]
 
       SCSI MIB                                  January 2002
 
       scsiAttIntrIndex     ->Index of the initiator, which has attached to
                             this port.
       ********Doubt*********scsiconfIntrIndexOrZero ->
       scsiAttachedInitiatorName ->Name of the initiator device, which has
                                  been attached to this port.
       ****Doubt??Is this the port
       identifier*********ScsiAttachedIntrIdentifier->
 
 
       scsiInstIndex                 0001
       scsiDeviceIndex               0002
       scsiPortIndex                 0002
       scsiAttInitIndex              0001
       scsiConfIntrIndexOrZero
       scsiAttIntrName               Initiator-xxx
       scsiAttIntIdentifer
 
       ScsiAttachedTarget object:
       -------------------------
 
       This object resembles the one discussed above.
 
 
       TPort_IPort_Info:
       -----------------
 
       This object will contain persistent information a target may be
       keeping about Initiators. If the administrator configures certain
       LUNs for certain initiators, the information is persistent. The
       agent will collect this info into this object.
       In our scenario we don't have concept of configured initiators hence
       this table is not populated. ***********This is a doubt*********
 
 
 
       ScsiLuIdentifier:
       ----------------
 
 
       8.  Abbreviations
       This MIB will use the following abbreviations:
       Inst = Instance
       Dev = Device
       Tgt = Target
       Intr = Initiator
       Att = Attached
       Id = Identifier
       Ident = Identifier
       Idx = Index
       Prt = Port
       Trns = Transport
       Dsc = Discovered
 
       Hallak-Stamler et al. Expires August 2002 [Page  17]
 
       SCSI MIB                                  January 2002
 
 
 
       9.  Warning
       This paragraph will be removed in the final draft.
       The following topics were not covered in the MIB yet:
         * Conformance Statement
         * Statistics
 
       10.  Object Definitions
 
       SCSI-MIB DEFINITIONS ::= BEGIN
 
       IMPORTS
              MODULE-IDENTITY, OBJECT-TYPE,
              OBJECT-IDENTITY, Integer32,
              Unsigned32,    Counter64,     TimeTicks,
              mib-2, experimental                          FROM SNMPv2-SMI
              TEXTUAL-CONVENTION, TimeStamp,
              RowStatus, RowPointer, AutonomousType        FROM SNMPv2-TC
              MODULE-COMPLIANCE, OBJECT-GROUP              FROM SNMPv2-CONF
              SnmpAdminString                     FROM SNMP-FRAMEWORK-MIB;
 
 
 
              scsiModule MODULE-IDENTITY
                   LAST-UPDATED "200201020000Z"          -- 02 January 2002
                   ORGANIZATION "IETF"
                   CONTACT-INFO "
                        Michele Hallak-Stamler
                        Sanrad Intelligent Network
                        32 Habarzel Street
                        Tel Aviv, Israel
 
                        Phone: +972 3 7674809
                        Email: michele@sanrad.com
 
 
                        Yaron Lederman
                        Siliquent Technologies Ltd.
                        33 Bezalel Street
                        Ramat Gan, Israel
 
                        Phone: +972 3 7552320
                        Email: yaronl@siliquent.com
 
                        Mark Bakke
                        Postal: Cisco Systems, Inc
                        6450 Wedgwood Road, Suite 130
                        Maple Grove, MN
                        USA 55311
 
                        Tel: +1 763-398-1000
 
       Hallak-Stamler et al. Expires August 2002 [Page  18]
 
       SCSI MIB                                  January 2002
 
                        Fax: +1 763-398-1001
                        E-mail: mbakke@cisco.com
 
                        Marjorie Krueger
                        Postal: Hewlett-Packard
                        Networked Storage Architecture
                        Networked Storage Solutions Org.
                        8000 Foothills Blvd.
                        Roseville, CA 95747
 
                        Tel: +1 916-785-2656
                        Tel: +1 916-785-0391
                        Email: marjorie_krueger@hp.com
 
                        Keith McCloghrie
                        Cisco Systems, Inc.
                        Postal: 170 West Tasman Drive
                        San Jose, CA USA 95134
 
                        Tel: +1 408 526-5260
                        E-mail: kzm@cisco.com
                           "
                   DESCRIPTION  "The SCSI MIB"
 
                   -- Revision History
 
                   REVISION     "200201020000Z"
                   DESCRIPTION  " First Draft. Reflects the object model
                   only and doesn't include statistics yet."
              ::= { experimental xxx }   -- must be changed in the future
 
 
         -- Textual Conventions
         ScsiLUNFormat  ::= TEXTUAL-CONVENTION
              STATUS current
              DESCRIPTION
               "It is:
                   - a zero-length octet string or
                   - a two-bytes octets if the underlying transport
                      protocol is SBP-3 or SPI-4 using data group transfers
                      or
                   - an eight bytes integer for all other cases."
              SYNTAX OCTET STRING (SIZE (0 | 2 | 8))
 
         ScsiIndexValue ::= TEXTUAL-CONVENTION
              STATUS current
              DESCRIPTION
              "A number greater than zero for administrative indices in a
              table."
              SYNTAX    Unsigned32(1..4294967295)
 
         ScsiPortIndexValueOrZero ::= TEXTUAL-CONVENTION
 
       Hallak-Stamler et al. Expires August 2002 [Page  19]
 
       SCSI MIB                                  January 2002
 
              STATUS current
              DESCRIPTION
              "This textual convention is an extension of the
              ScsiIndexValue convention.  The latter defines a greater than
              zero value used to identify an index.  This extension permits
              the additional value of zero and is applicable only to
              indices of SCSI port.  The value zero is object-specific and
              must therefore be defined as part of the description of any
              object, which uses this syntax.  Examples of the usage of
              zero might include situations where index was unknown, or
              when none or all indices need to be referenced."
              SYNTAX    Unsigned32(0..4294967295)
 
         ScsiIndexValueOrZero ::= TEXTUAL-CONVENTION
              STATUS current
              DESCRIPTION
              "This textual convention is an extension of the
              ScsiIndexValue convention.  The latter defines a greater than
              zero value used to identify an index.  This extension permits
              the additional value of zero. The value zero is object-
              specific and must therefore be defined as part of the
              description of any object, which uses this syntax.  Examples
              of the usage of zero might include situations where index was
              unknown, or when none or all indices need to be referenced."
              SYNTAX    Unsigned32(0..4294967295)
 
          ScsiIdentifier ::= TEXTUAL-CONVENTION
                   STATUS       current
                   DESCRIPTION
                "Denotes a generic SCSI device or port identifier.
              The format depends on the transport used:
              - SPI: only bits:0-3   for a port identifier
              - SPI: identifier of a device is a null-length octet string.
              - FCP: 3 bytes for a port identifier
              - FCP: identifier of a device is a null-length octet string.
              - SRP: 16 bytes identifier for a port.
              - SRP: identifier of a device is a null-length octet string.
              - iSCSI: 256 bytes for a device identifier.
              - iSCSI: 258 bytes for a target port.
              - iSCSI: 262 bytes for an initiator port.
              - SBP: identifier of a device is a null-length octet string.
              - SBP: 2 bytes for an initiator port identifier.
              - SBP: 11 bytes for a target port identifier. "
         SYNTAX OCTET STRING (SIZE (0 | 1 | 2 | 3| 11 | 16 | 256| 258|262))
 
         ScsiName ::= TEXTUAL-CONVENTION
                   STATUS       current
                   DESCRIPTION
                "Denotes a generic SCSI device or port name.
                The format depends on the transport used:
              - SPI: name of a device or a port is a null-length octet
              string.
 
       Hallak-Stamler et al. Expires August 2002 [Page  20]
 
       SCSI MIB                                  January 2002
 
              - FCP: 8 bytes for a port name.
              - FCP: name of a device is a null-length octet string.
              - SRP: 16 bytes name for a port.
              - SRP: name of a device is a null-length octet string.
              - iSCSI: 256 bytes for a device name.
              - iSCSI: 258 bytes for a target port.
              - iSCSI: 262 bytes for an initiator port.
              - SBP: name of a device is a null-length octet string.
              - SBP: 8 bytes for an initiator port name.
              - SBP: 11 bytes for a target port name. "
 
          SYNTAX OCTET STRING (SIZE (0 | 8 | 11 |16 | 256 | 258| 262))
 
         ScsiDeviceOrPort ::= TEXTUAL-CONVENTION
                   STATUS    current
                   DESCRIPTION
              "This type allows to decide if some configuration is
              applicable to a port or to a device."
              SYNTAX         INTEGER   {
                                                            device(1),
                                                            port(2),
                                                            other(3)
                                                       }
 
         scsiObjects         OBJECT IDENTIFIER ::= { scsiModule 1 }
         scsiNotifications   OBJECT IDENTIFIER ::= { scsiModule 2 }
         scsiConformance     OBJECT IDENTIFIER ::= { scsiModule 3 }
 
         scsiTransportTypes  OBJECT IDENTIFIER ::= { scsiObjects 1 }
         scsiGeneral         OBJECT IDENTIFIER ::= { scsiObjects 2 }
         scsiInitiator       OBJECT IDENTIFIER ::= { scsiObjects 3 }
         scsiTarget          OBJECT IDENTIFIER ::= { scsiObjects 4 }
              scsiLogicalUnit     OBJECT IDENTIFIER ::= { scsiTarget 8 }
 
 
         -- Transport Types
         scsiTranportOther   OBJECT IDENTIFIER ::= { scsiTransportTypes 1 }
         scsiTranportSPI     OBJECT IDENTIFIER ::= { scsiTransportTypes 2 }
         scsiTransportFCP    OBJECT IDENTIFIER ::= { scsiTransportTypes 3 }
         scsiTransportSRP    OBJECT IDENTIFIER ::= { scsiTransportTypes 4 }
         scsiTransportISCSI  OBJECT IDENTIFIER ::= { scsiTransportTypes 5 }
         scsiTransportSBP    OBJECT IDENTIFIER ::= { scsiTransportTypes 6 }
 
         -- Comparatively to iSCSI MIB, I'm removing one level of OBJECT ID
         -- tree.
         scsiGenInstanceTable OBJECT-TYPE
              SYNTAX           SEQUENCE OF ScsiGenInstanceEntry
              MAX-ACCESS       not-accessible
              STATUS           current
              DESCRIPTION
              "A list of SCSI instances present on the system.
 
       Hallak-Stamler et al. Expires August 2002 [Page  21]
 
       SCSI MIB                                  January 2002
 
              The SCSI Instance is the top-level object, to which
              everything else belongs. An SNMP agent could represent more
              than one instance if it represents either a stack of devices,
              or virtual partitions of a larger device, or a host running
              multiple SCSI implementations from different vendors."
         ::= { scsiGeneral 1 }
 
         scsiGenInstanceEntry OBJECT-TYPE
              SYNTAX              ScsiGenInstanceEntry
              MAX-ACCESS          not-accessible
              STATUS              current
              DESCRIPTION
               "An entry (row) containing management information applicable
                to a particular SCSI instance."
              INDEX { scsiInstIndex }
         ::= { scsiGenInstanceTable 1 }
 
         ScsiGenInstanceEntry::= SEQUENCE {
              scsiInstIndex                 ScsiIndexValue,
              scsiInstAlias                 SnmpAdminString,
              scsiInstReference             Integer32,
              scsiInstVendorVersion         SnmpAdminString,
              scsiInstScsiDeviceNumber      Unsigned32
           }
 
         scsiInstIndex OBJECT-TYPE
              SYNTAX              ScsiIndexValue
              MAX-ACCESS          not-accessible
              STATUS         current
              DESCRIPTION
               "An arbitrary integer used to uniquely identify a particular
               SCSI instance."
         ::= { scsiGenInstanceEntry 1 }
 
         scsiInstAlias OBJECT-TYPE
              SYNTAX         SnmpAdminString
              MAX-ACCESS     read-write
              STATUS         current
              DESCRIPTION
              "An administrative string, configured by the administrator to
              the usage of the administrator. Can be a zero-length string."
         ::= { scsiGenInstanceEntry 2 }
 
         scsiInstReference    OBJECT-TYPE
              SYNTAX         Integer32
              MAX-ACCESS     read-only
              STATUS         current
              DESCRIPTION
               "The index in the hrSWInstalledTable of RFC 2790
              corresponding to this software entity."
         ::= { scsiGenInstanceEntry 3 }
 
 
       Hallak-Stamler et al. Expires August 2002 [Page  22]
 
       SCSI MIB                                  January 2002
 
         scsiInstVendorVersion OBJECT-TYPE
              SYNTAX         SnmpAdminString
              MAX-ACCESS     read-only
              STATUS         current
              DESCRIPTION
              "A text string set by the manufacturer describing the version
              of this instance.  The format of this string is determined
              solely by the manufacturer, and is for informational purposes
              only.  It is unrelated to the SCSI specification version
              numbers."
         ::= { scsiGenInstanceEntry 4 }
 
         scsiInstScsiDeviceNumber OBJECT-TYPE
              SYNTAX         Unsigned32 (1..4294967295)
              MAX-ACCESS     read-only
              STATUS         current
              DESCRIPTION
               "The number of SCSI Device currently associated with this
              SCSI instance."
         ::= { scsiGenInstanceEntry 5 }
 
       -- Corresponding Statistics
       --     scsiGenInstStatTable OBJECT-TYPE
       --     SYNTAX           SEQUENCE OF ScsiGenInstStatEntry
       --     MAX-ACCESS       not-accessible
       --     STATUS           current
       --     DESCRIPTION
       --        "A list of statistics referring to SCSI instances present
       --     on the system."
       --     ::= { scsiGeneral 2 }
 
 
       -- SCSI Devices
       scsiDeviceTable  OBJECT-TYPE
              SYNTAX           SEQUENCE OF ScsiDeviceEntry
              MAX-ACCESS       not-accessible
              STATUS           current
              DESCRIPTION
               "A list of SCSI Devices present on the system."
         ::= { scsiGeneral 3 }
 
         scsiDeviceEntry OBJECT-TYPE
              SYNTAX              ScsiDeviceEntry
              MAX-ACCESS          not-accessible
              STATUS              current
              DESCRIPTION
              "An entry (row) containing management information applicable
              to a particular SCSI Device included in this SCSI manageable
              instance."
              INDEX { scsiInstIndex, scsiDeviceIndex }
         ::= { scsiDeviceTable 1 }
 
 
       Hallak-Stamler et al. Expires August 2002 [Page  23]
 
       SCSI MIB                                  January 2002
 
         ScsiDeviceEntry::= SEQUENCE {
              scsiDeviceIndex               ScsiIndexValue,
              scsiDeviceAlias               SnmpAdminString,
              scsiDeviceRole                BITS,
              scsiDevicePortNumber          Unsigned32,
              scsiDeviceStatus              INTEGER
           }
 
         scsiDeviceIndex OBJECT-TYPE
              SYNTAX         ScsiIndexValue
              MAX-ACCESS     not-accessible
              STATUS         current
              DESCRIPTION
              "An arbitrary index for this device."
         ::= { scsiDeviceEntry 1 }
 
         scsiDeviceAlias OBJECT-TYPE
              SYNTAX         SnmpAdminString
              MAX-ACCESS     read-write
              STATUS         current
              DESCRIPTION
              "An admistrative name for this device. May be empty."
         ::= { scsiDeviceEntry 2 }
 
         scsiDeviceRole OBJECT-TYPE
              SYNTAX         BITS {
                             target(0),
                             initiator(1)
                             }
              MAX-ACCESS     read-only
              STATUS         current
              DESCRIPTION
              "Is this device acting as an initiator, or as a target or as
            both."
         ::= { scsiDeviceEntry 3 }
 
         scsiDevicePortNumber OBJECT-TYPE
              SYNTAX         Unsigned32
              MAX-ACCESS     read-only
              STATUS         current
              DESCRIPTION
              "The number of ports contained in this device."
         ::= { scsiDeviceEntry 4 }
 
         scsiDeviceStatus    OBJECT-TYPE
              SYNTAX         INTEGER {
                                  unknown(1),
                                  available(2),
                                  broken(3),
                                  readying(4),
                                  abnormal(5),
                                  nonAddrFailure(6),
 
       Hallak-Stamler et al. Expires August 2002 [Page  24]
 
       SCSI MIB                                  January 2002
 
                                  nonAddrFailReadying(7),
                                  nonAddrFailAbnormal(8)
                             }
              MAX-ACCESS     read-only
              STATUS         current
              DESCRIPTION
              "The status of this SCSI device:
              - unknown(1): This value is used when the status cannot be
              fixed.
              - available(2): All addressable and non-addressable devices
              within the SCSI device are fully operational (i.e., no
              logical units have an abnormal status).
              - broken(3): The SCSI device is not operational and cannot be
              made operational without external intervention.
              - readying(4): One or more logical units within the SCSI
              device are being initialized and access to the SCSI device is
              temporarily limited (i.e., one or more of the logical unit
              have a readying status).
              - abnormal(5): One or more addressable devices within the
              SCSI device are indicating a status other than available
              however the SCSI device is operational (i.e., one or more of
              the logical units have an abnormal status).
              - nonAddrFailure(6): One or more non-addressable devices
              within the SCSI device have failed however the SCSI device is
              operational (i.e., no logical units have an abnormal or
              readying status).
              - nonAddrFailReadying(7): One or more non-addressable devices
              within the SCSI device have failed however one or more
              logical units within the SCSI device are being initialized
              and access to the SCSI device is temporarily limited.
              - nonAddrFailAbnormal(8): One or more non-addressable devices
              within the SCSI device have failed and one or more
              addressable devices within the SCSI device are indicating a
              status other than available however the SCSI device is
              operational.
              "
         REFERENCE
         " SCSI Controller Commands-2 (SCC-2) standard NCITS.318-1998)"
         ::= { scsiDeviceEntry 5}
 
 
         -- Ports Table
         scsiPortTable  OBJECT-TYPE
              SYNTAX           SEQUENCE OF ScsiPortEntry
              MAX-ACCESS       not-accessible
              STATUS           current
              DESCRIPTION
               "A list of SCSI Ports for each SCSI device in the instance."
         ::= { scsiGeneral 4 }
 
         scsiPortEntry OBJECT-TYPE
              SYNTAX              ScsiPortEntry
 
       Hallak-Stamler et al. Expires August 2002 [Page  25]
 
       SCSI MIB                                  January 2002
 
              MAX-ACCESS          not-accessible
              STATUS              current
              DESCRIPTION
              "An entry (row) containing management information applicable
              to a particular SCSI port included per SCSI device in this
              SCSI manageable instance."
              INDEX { scsiInstIndex, scsiDeviceIndex, scsiPortIndex }
         ::= { scsiPortTable  1 }
 
         ScsiPortEntry ::= SEQUENCE {
              scsiPortIndex       ScsiIndexValue,
              scsiPortRole        BITS,
              scsiPortTrnsptPtr   ScsiIndexValue
           }
 
         scsiPortIndex OBJECT-TYPE
              SYNTAX         ScsiIndexValue
              MAX-ACCESS     not-accessible
              STATUS         current
              DESCRIPTION
              "An arbitrary index for this port."
         ::= { scsiPortEntry 1 }
 
         scsiPortRole OBJECT-TYPE
              SYNTAX         BITS {
                             target(0),
                             initiator(1)
                             }
              MAX-ACCESS     read-only
              STATUS         current
              DESCRIPTION
              "Is this port acting as an initiator, or as a target or as
            both."
         ::= { scsiPortEntry 2 }
 
         scsiPortTrnsptPtr OBJECT-TYPE
              SYNTAX         ScsiIndexValue
              MAX-ACCESS     read-only
              STATUS         current
              DESCRIPTION
              "This shall be the index of the corresponding transport
              definition in the scsiTrnsptTable"
         ::= { scsiPortEntry 3 }
 
 
       -- Table of supported transports
         scsiTrnsprtTable OBJECT-TYPE
              SYNTAX           SEQUENCE OF ScsiTrnsprtEntry
              MAX-ACCESS       not-accessible
              STATUS           current
              DESCRIPTION
               "This table contains a list of transports in use with this
 
       Hallak-Stamler et al. Expires August 2002 [Page  26]
 
       SCSI MIB                                  January 2002
 
               device."
         ::= { scsiGeneral 5 }
 
         scsiTrnsprtEntry OBJECT-TYPE
              SYNTAX              ScsiTrnsprtEntry
              MAX-ACCESS          not-accessible
              STATUS              current
              DESCRIPTION
              "An entry (row) containing parameters applicable to a
              transport used by this initiator device.ÆÆ
              INDEX { scsiInstIndex, scsiDeviceIndex, scsiIntrTrnsprtIndex}
         ::= { scsiTrnsprtTable 1 }
 
         ScsiTrnsprtEntry ::= SEQUENCE {
              scsiTrnsprtIndex    ScsiIndexValue,
              scsiTrnsprtType     AutonomousType,
              scsiTrnsprtPointer  RowPointer,
              scsiTrnsprtDevName  ScsiName
           }
 
         scsiTrnsprtIndex    OBJECT-TYPE
              SYNTAX         ScsiIndexValue
              MAX-ACCESS     not-accessible
              STATUS         current
              DESCRIPTION
              "An administrative index for this transport."
              ::= { scsiTrnsprtEntry 1 }
 
         scsiTrnsprtType     OBJECT-TYPE
              SYNTAX         AutonomousType
              MAX-ACCESS     read-only
              STATUS         current
              DESCRIPTION
              "The type of ScsiName for this device when using this
              transport."
              ::= { scsiTrnsprtEntry 2 }
 
         scsiTrnsprtPointer  OBJECT-TYPE
              SYNTAX         RowPointer
              MAX-ACCESS     read-only
              STATUS         current
              DESCRIPTION
              "A pointer to an instance in a MIB of the transport
              corresponding to this entry.
              For example, if the transport of this device is iSCSI, this
              field will point to the corresponding iSCSI Managed Object.
              If there is no MIB for this transport, the null OID 0.0
              should be returned."
              ::= { scsiTrnsprtEntry 3 }
 
 
         scsiTrnsprtDevName  OBJECT-TYPE
 
       Hallak-Stamler et al. Expires August 2002 [Page  27]
 
       SCSI MIB                                  January 2002
 
              SYNTAX         ScsiName
              MAX-ACCESS     read-only
              STATUS         current
              DESCRIPTION
              "The name of this device according the type of transport."
              ::= { scsiTrnsprtEntry 4 }
 
 
         -- Management Objects regarding initiators
         scsiInitiatorDeviceTable  OBJECT-TYPE
              SYNTAX           SEQUENCE OF ScsiInitiatorDeviceEntry
              MAX-ACCESS       not-accessible
              STATUS           current
              DESCRIPTION
               "This table contains the parameters for each initiator
              device."
          ::= { scsiInitiator 1}
 
         scsiInitiatorDeviceEntry OBJECT-TYPE
              SYNTAX              ScsiInitiatorDeviceEntry
              MAX-ACCESS          not-accessible
              STATUS              current
              DESCRIPTION
              "An entry (row) containing parameters applicable to an
              initiator device."
              INDEX { scsiInstIndex, scsiDeviceIndex }
         ::= { scsiInitiatorDeviceTable  1 }
 
         ScsiInitiatorDeviceEntry ::= SEQUENCE {
              scsiInitiatorDeviceResetSent       Counter32
              -- More statistics to be placed here
         }
 
         scsiInitiatorDeviceResetSent OBJECT-TYPE
              SYNTAX         Counter32
              MAX-ACCESS     not-accessible
              STATUS         current
              DESCRIPTION
              "Number of reset sent by this initiator device since its
              own last reset."
              ::= { scsiInitiatorDeviceEntry 1 }
 
 
 
         -- The following section describes managed objects related to
         -- initiator ports.
         scsiInitiatorPortTable OBJECT-TYPE
              SYNTAX           SEQUENCE OF ScsiInitiatorPortEntry
              MAX-ACCESS       not-accessible
              STATUS           current
              DESCRIPTION
 
       Hallak-Stamler et al. Expires August 2002 [Page  28]
 
       SCSI MIB                                  January 2002
 
               "This table contains all the initiator ports of each SCSI
              Initiator or Target/Initiator device."
         ::= { scsiInitiator 3 }
 
         scsiInitiatorPortEntry OBJECT-TYPE
              SYNTAX              ScsiInitiatorPortEntry
              MAX-ACCESS          not-accessible
              STATUS              current
              DESCRIPTION
              "An entry (row) containing parameters applicable to the
              corresponding initiator port. "
            INDEX { scsiInstIndex, scsiDeviceIndex, scsiPortIndex }
         ::= { scsiInitiatorPortTable 1 }
 
         ScsiInitiatorPortEntry ::= SEQUENCE {
              scsiIntrPortName                   ScsiName,
              scsiIntrPortIdentifier             ScsiIdentifier
           }
 
 
         scsiIntrPortName OBJECT-TYPE
              SYNTAX              ScsiName
              MAX-ACCESS          read-only
              STATUS              current
              DESCRIPTION
              "The name of the port assigned by the SCSI protocol. The
              format will depend of the type of transport this port is
              using."
              ::= { scsiInitiatorPortEntry 1 }
 
 
         scsiIntrPortIdentifier OBJECT-TYPE
              SYNTAX              ScsiIdentifier
              MAX-ACCESS          read-only
              STATUS              current
              DESCRIPTION
              "The identifier of the port according the type of transport."
              ::= { scsiInitiatorPortEntry 2 }
 
 
         -- Statistics for Initiator ports will be placed here.
         -- scsiIntrPortStatTable OBJECT-TYPE
         --   SYNTAX           SEQUENCE OF ScsiIntrPortStatEntry
         --   MAX-ACCESS       not-accessible
         --   STATUS           current
         --   DESCRIPTION
         --   "This table contains statistics for all the initiator ports -
         --   of each SCSI Initiator or Target/Initiator device."
         --   ::= { scsiInitiator 4}
 
 
         -- Discovered Target groups
 
       Hallak-Stamler et al. Expires August 2002 [Page  29]
 
       SCSI MIB                                  January 2002
 
         scsiIntrDiscoveredTarget OBJECT IDENTIFIER ::= { scsiInitiator 5 }
 
         -- Targets discovered or authorized to attach those
         -- initiator Ports
         scsiIntrDiscoveredTgtTable OBJECT-TYPE
              SYNTAX           SEQUENCE OF ScsiIntrDiscoveredTgtEntry
              MAX-ACCESS       not-accessible
              STATUS           current
              DESCRIPTION
               "This table includes all the remote (not in the current
              system) target ports that are currently attached to each
              local initiator port of this entity."
         ::= { scsiIntrDiscoveredTarget 1 }
 
         scsiIntrDiscoveredTgtEntry OBJECT-TYPE
              SYNTAX              ScsiIntrDiscoveredTgtEntry
              MAX-ACCESS          not-accessible
              STATUS              current
              DESCRIPTION
              "An entry (row)represents a remote target port or device
              authorized to attach the local initiator device corresponding
              to the scsiDeviceIndex or the local initiator port
              scsiPortIndexOrZero. "
              INDEX { scsiInstIndex, scsiDeviceIndex,
              scsiIntrPortIndexOrZero, scsiIntrDscTgtIndex }
         ::= { scsiIntrDiscoveredTgtTable 1 }
 
         ScsiIntrDiscoveredTgtEntry ::= SEQUENCE {
                   scsiIntrPortIndexOrZero       ScsiPortIndexValueOrZero,
                   scsiIntrDscTgtIndex           ScsiIndexValue,
                   scsiIntrDscTgtDevOrPort       ScsiDeviceOrPort,
                   scsiIntrDscTgtName            ScsiName,
                   scsiIntrDscState              INTEGER,
                   scsiIntrDscTgtRowStatus       RowStatus
         }
 
 
         scsiIntrPortIndexOrZero  OBJECT-TYPE
              SYNTAX              ScsiPortIndexValueOrZero
              MAX-ACCESS          not-accessible
              STATUS              current
              DESCRIPTION
              "This field is:
                   - the index of the corresponding scsi initiator port,
                   - or zero, if this entry refers to a device."
         ::= { scsiIntrDiscoveredTgtEntry 1 }
 
         scsiIntrDscTgtIndex OBJECT-TYPE
              SYNTAX              ScsiIndexValue
              MAX-ACCESS          not-accessible
              STATUS              current
              DESCRIPTION
 
       Hallak-Stamler et al. Expires August 2002 [Page  30]
 
       SCSI MIB                                  January 2002
 
              "This field is an administrative index for this authorized
              target. (Authorized to attach to this initiator device or
              port.)"
         ::= { scsiIntrDiscoveredTgtEntry 2 }
 
         scsiIntrDscTgtDevOrPort OBJECT-TYPE
              SYNTAX              ScsiDeviceOrPort
              MAX-ACCESS          read-create
              STATUS              current
              DESCRIPTION
              "This field specifies if this entry refers to a port or a
              device."
         ::= { scsiIntrDiscoveredTgtEntry 3 }
 
         scsiIntrDscTgtName OBJECT-TYPE
              SYNTAX              ScsiName
              MAX-ACCESS          read-create
              STATUS              current
              DESCRIPTION
              "The name of this authorized/discovered target device or
              port."
         ::= { scsiIntrDiscoveredTgtEntry 4 }
 
         scsiIntrDscState OBJECT-TYPE
              SYNTAX              INTEGER {
                                       unknown(1),
                                       configured(2),
                                       discovered(3),
                                       configuredAndDiscovered(4)
                                  }
              MAX-ACCESS          read-create
              STATUS              current
              DESCRIPTION
              "This field means:
                   - unknown(1): the agent has no way of knowing the state
                   of this discovered target.
                   - configured(2): this target has been configured for
                   this initiator. However, it has not been discovered.
                   - discovered(3): this target has been discovered but
                   never has been configured.
                   - configuredAndDiscovered(4): this target has been
                   configured and discovered by this initiator device or
                   port."
         ::= { scsiIntrDiscoveredTgtEntry 5 }
 
         scsiIntrDscTgtRowStatus OBJECT-TYPE
              SYNTAX              RowStatus
              MAX-ACCESS          read-create
              STATUS              current
              DESCRIPTION
              "This field allows to configure dynamically a new entry in
              this table via SNMP."
 
       Hallak-Stamler et al. Expires August 2002 [Page  31]
 
       SCSI MIB                                  January 2002
 
         ::= { scsiIntrDiscoveredTgtEntry 6 }
 
 
         -- LUNs discovered
         scsiIntrDscLunsTable OBJECT-TYPE
              SYNTAX           SEQUENCE OF ScsiIntrDscLunsEntry
              MAX-ACCESS       not-accessible
              STATUS           current
              DESCRIPTION
               "This table includes all the remote (not in the current
              system) LUNS discovered via each local initiator port of this
              entity."
         ::= { scsiIntrDiscoveredTarget 2 }
 
         scsiIntrDscLunsEntry OBJECT-TYPE
              SYNTAX              ScsiIntrDscLunsEntry
              MAX-ACCESS          not-accessible
              STATUS              current
              DESCRIPTION
              "An entry (row) represents a LUN discovered by the
              scsiDeviceIndex or the local initiator port
              scsiPortIndexOrZero. "
              INDEX { scsiInstIndex, scsiDeviceIndex,
              scsiIntrPortIndexOrZero, scsiIntrDscTgtIndex,
              scsiIntrDscLunIndex }
         ::= { scsiIntrDscLunsTable 1 }
 
         ScsiIntrDscLunsEntry ::= SEQUENCE {
                   scsiIntrDscLunIndex           ScsiIndexValue
         }
 
 
         scsiIntrDscLunIndex OBJECT-TYPE
              SYNTAX              ScsiIndexValue
              MAX-ACCESS          not-accessible
              STATUS              current
              DESCRIPTION
              "This field is an administrative index for a LUN discovered
              by this scsi initiator port. This index will point to
              parameters for this LUN in the scsiIntrDscLunIdentifier."
         ::= { scsiIntrDscLunsEntry 1 }
 
 
         -- LU Identifiers discovered
         scsiIntrDscLunIdTable OBJECT-TYPE
              SYNTAX           SEQUENCE OF ScsiIntrDscLunIdEntry
              MAX-ACCESS       not-accessible
              STATUS           current
              DESCRIPTION
               "This table includes all the remote (not in the current
              system) LU Identifier discovered via each local initiator
              port of this entity."
 
       Hallak-Stamler et al. Expires August 2002 [Page  32]
 
       SCSI MIB                                  January 2002
 
         ::= { scsiIntrDiscoveredTarget 3 }
 
         scsiIntrDscLunIdEntry OBJECT-TYPE
              SYNTAX              ScsiIntrDscLunIdEntry
              MAX-ACCESS          not-accessible
              STATUS              current
              DESCRIPTION
              "An entry (row) represents a LU Identifier discovered by the
              scsiDeviceIndex."
              INDEX { scsiInstIndex, scsiDeviceIndex, scsiIntrDscLunIndex,
              scsiIntrDscLunIdIndex }
         ::= { scsiIntrDscLunIdTable 1 }
 
         ScsiIntrDscLunIdEntry ::= SEQUENCE {
                   scsiIntrDscLunIdIndex         ScsiIndexValue,
                   scsiIntrDscLunIdCodeSet       INTEGER,
                   scsiIntrDscLunIdAssociation   INTEGER,
                   scsiIntrDscLunIdType          INTEGER,
                   scsiIntrDscLunIdValue         OCTET STRING
         }
 
 
         scsiIntrDscLunIdIndex    OBJECT-TYPE
              SYNTAX              ScsiIndexValue
              MAX-ACCESS          not-accessible
              STATUS              current
              DESCRIPTION
              "This field is an administrative index for a LUN Identifier
              discovered by this scsi initiator port."
         ::= { scsiIntrDscLunIdEntry 1 }
 
 
 
         scsiIntrDscLunIdCodeSet OBJECT-TYPE
              SYNTAX              INTEGER
              MAX-ACCESS          read-only
              STATUS              current
              DESCRIPTION
              "The code set in use for this identifier: can be binary or
              ascii."
              REFERENCE " ANSI - SCSI Primary Commands - 2 [19]"
         ::= { scsiIntrDscLunIdEntry 2 }
 
         scsiIntrDscLunIdAssociation OBJECT-TYPE
              SYNTAX              INTEGER
              MAX-ACCESS          read-only
              STATUS              current
              DESCRIPTION
              "This value means that the identifier is associated with the
              addressed physical or logical device or that the identifier is
              associated with the port that received the request."
              REFERENCE " ANSI - SCSI Primary Commands - 2 [19]"
 
       Hallak-Stamler et al. Expires August 2002 [Page  33]
 
       SCSI MIB                                  January 2002
 
         ::= { scsiIntrDscLunIdEntry 3 }
 
         scsiIntrDscLunIdType     OBJECT-TYPE
              SYNTAX              INTEGER
              MAX-ACCESS          read-only
              STATUS              current
              DESCRIPTION
              "This field defines the type of LU Identifier used for this
              identifier and fixes the format of scsiLUIdValue. It might be:
              - proprietary corresponds to 0h identifier type value and
              means that the format used for this LU Identifier is vendor-
              specific,
              - annexD corresponds to 1h identifier type value and means
              that this LU Identifier starts with an 8-bytes T10 Vendor ID.
              - eui64 corresponds to 2h identifier type value and means that
              the format used for this LU Identifier is IEEE Extended Unique
              Identifier of 64 bits (EUI-64)
              - fcfs corresponds to 3h identifier and means that this LU
              Identifier contains an FC-FS identifier.
              - relative corresponds to 4h identifier type and means that
              this LU Identifier contains the relative position of the port.
              This type is used when the scsiLUIdAssociation points to
              port."
              REFERENCE " ANSI - SCSI Primary Commands - 2 [19]"
         ::= { scsiIntrDscLunIdEntry 4 }
 
         scsiIntrDscLunIdValue OBJECT-TYPE
              SYNTAX              OCTET STRING (SIZE (0..255))
              MAX-ACCESS          read-only
              STATUS              current
              DESCRIPTION
              "The actual value of this identifier. The format is defined
              by the previous fields."
         ::= { scsiIntrDscLunIdEntry 5 }
 
 
 
         -- Attached Targets to Initiator Port Table
         scsiIntrAttTgtPortTable OBJECT-TYPE
              SYNTAX           SEQUENCE OF ScsiIntrAttTgtPortEntry
              MAX-ACCESS       not-accessible
              STATUS           current
              DESCRIPTION
               "This table includes all the remote (not in the current
              system) target ports that are currently attached to each
              local initiator port of this entity."
         ::= { scsiInitiator 6 }
 
         scsiIntrAttTgtPortEntry OBJECT-TYPE
              SYNTAX              ScsiIntrAttTgtPortEntry
              MAX-ACCESS          not-accessible
              STATUS              current
 
       Hallak-Stamler et al. Expires August 2002 [Page  34]
 
       SCSI MIB                                  January 2002
 
              DESCRIPTION
              "An entry (row)represents a remote target port currently
              attached to the local initiator port corresponding to the
              scsiPortIndex. "
              INDEX { scsiInstIndex, scsiDeviceIndex, scsiPortIndex,
              scsiIntrAttTgtPortIndex }
         ::= { scsiIntrAttTgtPortTable 1 }
 
         ScsiIntrAttTgtPortEntry ::= SEQUENCE {
              scsiIntrAttTgtPortIndex       ScsiIndexValue,
              scsiIntrDiscTgtIndexOrZero    ScsiIndexValueOrZero,
              scsiIntrAttTgtPortName        ScsiName,
              scsiIntrAttTgtPortIdentifier  ScsiIdentifier
           }
 
         scsiIntrAttTgtPortIndex  OBJECT-TYPE
              SYNTAX              ScsiIndexValue
              MAX-ACCESS          not-accessible
              STATUS              current
              DESCRIPTION
              "An administrative index for this current attached target."
         ::= { scsiIntrAttTgtPortEntry 1 }
 
         scsiIntrDiscTgtIndexOrZero    OBJECT-TYPE
              SYNTAX              ScsiIndexValueOrZero
              MAX-ACCESS          read-only
              STATUS              current
              DESCRIPTION
              "The corresponding index in the scsiIntrDiscoveredTgtTable
              for this current attached target or zero if this attached
              target is not in the table."
         ::= { scsiIntrAttTgtPortEntry 2 }
 
         scsiIntrAttTgtPortName OBJECT-TYPE
              SYNTAX              ScsiName
              MAX-ACCESS          read-only
              STATUS              current
              DESCRIPTION
              "The name of the remote target attached to this initiator
              port."
         ::= { scsiIntrAttTgtPortEntry 3 }
 
 
         scsiIntrAttTgtPortIdentifier OBJECT-TYPE
              SYNTAX              ScsiIdentifier
              MAX-ACCESS          read-only
              STATUS              current
              DESCRIPTION
              "The identifier of the remote target attached to this local
              initiator port according the type of transport."
         ::= { scsiIntrAttTgtPortEntry 4 }
 
 
       Hallak-Stamler et al. Expires August 2002 [Page  35]
 
       SCSI MIB                                  January 2002
 
         -- Statistics per target attached port to local initiator port
         -- scsiIntrAttTgtPrtStatTable OBJECT-TYPE
         --   SYNTAX           SEQUENCE OF ScsiIntrAttTgtPrtStatEntry
         --   MAX-ACCESS       not-accessible
         --   STATUS           current
         --   DESCRIPTION
         --   "This table includes statistics for all the remote (not in
         --   the current system) target ports that are currently attached
         --   to each local initiator port of this entity."
         --   ::= { scsiInitiator 7 }
 
 
         -- Management Objects regarding target type of scsi devices
         --
         scsiTargetDeviceTable OBJECT-TYPE
              SYNTAX           SEQUENCE OF ScsiTargetDeviceEntry
              MAX-ACCESS       not-accessible
              STATUS           current
              DESCRIPTION
               "This table is an extension of the device table including
              parameters specific to a target."
         ::= { scsiTarget 1 }
 
         scsiTargetDeviceEntry OBJECT-TYPE
              SYNTAX              ScsiTargetDeviceEntry
              MAX-ACCESS          not-accessible
              STATUS              current
              DESCRIPTION
              "An entry (row) containing parameters applicable to the
              corresponding target device. "
              INDEX { scsiInstIndex, scsiDeviceIndex }
         ::= { scsiTargetDeviceTable 1 }
 
         ScsiTargetDeviceEntry ::= SEQUENCE {
              scsiTargetDeviceNumberOfLogicalUnits    Unsigned32
           }
 
         scsiTargetDeviceNumberOfLogicalUnits  OBJECT-TYPE
              SYNTAX              Unsigned32
              MAX-ACCESS          read-only
              STATUS              current
              DESCRIPTION
              "Number of Logical Units associated with this target."
         ::= { scsiTargetDeviceEntry 1 }
 
       -- Statistics per target device will be placed here
       --          scsiTargetDevStatTable OBJECT-TYPE
       --          SYNTAX           SEQUENCE OF ScsiTargetDevStatEntry
       --          MAX-ACCESS       not-accessible
       --          STATUS           current
       --          DESCRIPTION
       --          "This table is an extension of the device table
 
       Hallak-Stamler et al. Expires August 2002 [Page  36]
 
       SCSI MIB                                  January 2002
 
       --          including statistics specific to a target device."
       --          ::= { scsiTarget 2 }
 
 
 
         -- Target Port Table
         scsiTargetPortTable OBJECT-TYPE
              SYNTAX           SEQUENCE OF ScsiTargetPortEntry
              MAX-ACCESS       not-accessible
              STATUS           current
              DESCRIPTION
               "This table includes all the target ports of all the SCSI
              target devices."
         ::= { scsiTarget 3 }
 
         scsiTargetPortEntry OBJECT-TYPE
              SYNTAX              ScsiTargetPortEntry
              MAX-ACCESS          not-accessible
              STATUS              current
              DESCRIPTION
              "An entry (row) containing parameters applicable to the
              corresponding target device. "
              INDEX { scsiInstIndex, scsiDeviceIndex, scsiPortIndex}
         ::= { scsiTargetPortTable 1 }
 
         ScsiTargetPortEntry ::= SEQUENCE {
              scsiTargetPortName            ScsiName,
              scsiTargetPortIdentifier      ScsiIdentifier
           }
 
         scsiTargetPortName OBJECT-TYPE
              SYNTAX              ScsiName
              MAX-ACCESS          read-only
              STATUS              current
              DESCRIPTION
              "The name of the port assigned by the SCSI protocol."
              ::= { scsiTargetPortEntry 1 }
 
         scsiTargetPortIdentifier OBJECT-TYPE
              SYNTAX              ScsiIdentifier
              MAX-ACCESS          read-only
              STATUS              current
              DESCRIPTION
              "The identifier of the port according the type of transport."
              ::= { scsiTargetPortEntry 2 }
 
 
         -- Target Port Statistic Table will be placed here
         --   scsiTargetPortStatTable OBJECT-TYPE
         --   SYNTAX           SEQUENCE OF ScsiTargetPortStatEntry
         --   MAX-ACCESS       not-accessible
         --   STATUS           current
 
       Hallak-Stamler et al. Expires August 2002 [Page  37]
 
       SCSI MIB                                  January 2002
 
         --   DESCRIPTION
         --   "This table includes the statistics for the target ports of
         --   all the SCSI target devices."
         --   ::= { scsiTarget 4 }
 
         -- The following table should contain those initiator ports that
         -- may be attached to specific target ports and on which, an
         -- administrator would like to keep permanent information and long
         -- term statistic even when not currently attached.
         scsiTgtAuthorizedIntrTable OBJECT-TYPE
              SYNTAX           SEQUENCE OF ScsiTgtAuthorizedIntrEntry
              MAX-ACCESS       not-accessible
              STATUS           current
              DESCRIPTION
               "This table includes all the authorized initiator devices or
              ports that may attach a target device or port of this entity
              and that may interest an administrator."
         ::= { scsiTarget 5 }
 
         scsiTgtAuthorizedIntrEntry OBJECT-TYPE
              SYNTAX              ScsiTgtAuthorizedIntrEntry
              MAX-ACCESS          not-accessible
              STATUS              current
              DESCRIPTION
              "An entry (row)represents an initiator port that may attach
              the target port corresponding to the scsiPortIndex. "
              INDEX { scsiInstIndex, scsiDeviceIndex,
              scsiTgtPortIndexOrZero, scsiTgtAuthIntrIndex }
         ::= { scsiTgtAuthorizedIntrTable 1 }
 
         ScsiTgtAuthorizedIntrEntry ::= SEQUENCE {
              scsiTgtPortIndexOrZero        ScsiPortIndexValueOrZero,
              scsiTgtAuthIntrIndex          ScsiIndexValue,
              scsiTgtAuthIntrDevOrPort      ScsiDeviceOrPort,
              scsiTgtAuthIntrName           ScsiName,
              scsiTgtLunMapIndex            ScsiIndexValue,
              scsiTgtAuthIntrRowStatus      RowStatus
           }
 
 
         scsiTgtPortIndexOrZero   OBJECT-TYPE
              SYNTAX              ScsiPortIndexValueOrZero
              MAX-ACCESS          not-accessible
              STATUS              current
              DESCRIPTION
              "This field is:
                   - the index of the corresponding scsi target port,
                   - or zero, if this entry refers to a device."
         ::= { scsiTgtAuthorizedIntrEntry 1 }
 
         scsiTgtAuthIntrIndex     OBJECT-TYPE
              SYNTAX              ScsiIndexValue
 
       Hallak-Stamler et al. Expires August 2002 [Page  38]
 
       SCSI MIB                                  January 2002
 
              MAX-ACCESS          not-accessible
              STATUS              current
              DESCRIPTION
              " This field is an administrative index for this authorized
              initiator. (Authorized to attach to this target device or
              port.)"
         ::= { scsiTgtAuthorizedIntrEntry 2 }
 
         scsiTgtAuthIntrDevOrPort OBJECT-TYPE
              SYNTAX              ScsiDeviceOrPort
              MAX-ACCESS          read-create
              STATUS              current
              DESCRIPTION
              "This field specifies if this entry refers to a port or a
              device."
         ::= { scsiTgtAuthorizedIntrEntry 3 }
 
         scsiTgtAuthIntrName OBJECT-TYPE
              SYNTAX              ScsiName
              MAX-ACCESS          read-create
              STATUS              current
              DESCRIPTION
              "The name of the initiator device or port authorized to
              attach this target device or port."
         ::= { scsiTgtAuthorizedIntrEntry 4 }
 
         scsiTgtLunMapIndex  OBJECT-TYPE
              SYNTAX              ScsiIndexValue
              MAX-ACCESS          read-create
              STATUS              current
              DESCRIPTION
              "This field points to an entry in the scsiLunMapTable
              containing the parameters of the logical unit relevant to
              this target-initiator couple."
       ::= { scsiTgtAuthorizedIntrEntry 5 }
 
         scsiTgtAuthIntrRowStatus OBJECT-TYPE
              SYNTAX              RowStatus
              MAX-ACCESS          read-create
              STATUS              current
              DESCRIPTION
              "This field allows an administrator to create or delete this
              entry."
       ::= { scsiTgtAuthorizedIntrEntry 6 }
 
         -- Attached Initiators to Target Table
         scsiTgtAttIntrPortTable OBJECT-TYPE
              SYNTAX           SEQUENCE OF ScsiTgtAttIntrPortEntry
              MAX-ACCESS       not-accessible
              STATUS           current
              DESCRIPTION
 
       Hallak-Stamler et al. Expires August 2002 [Page  39]
 
       SCSI MIB                                  January 2002
 
               "This table includes all the remote initiator ports that are
              currently attached to each local target port of this local
              entity."
         ::= { scsiTarget 6 }
 
         scsiTgtAttIntrPortEntry OBJECT-TYPE
              SYNTAX              ScsiTgtAttIntrPortEntry
              MAX-ACCESS          not-accessible
              STATUS              current
              DESCRIPTION
              "An entry (row)represents a remote initiator currently
              attached to the local target port corresponding to the
              scsiPortIndex. "
              INDEX { scsiInstIndex, scsiDeviceIndex, scsiPortIndex,
              scsiTgtAttIntrIndex }
         ::= { scsiTgtAttIntrPortTable 1 }
 
         ScsiTgtAttIntrPortEntry ::= SEQUENCE {
              scsiTgtAttIntrIndex                ScsiIndexValue,
              scsiTgtAuthIntrIndexOrZero         ScsiIndexValueOrZero,
              scsiTgtAttIntrPortName             ScsiName,
              scsiTgtAttIntrPortId               ScsiIdentifier
           }
 
         scsiTgtAttIntrIndex OBJECT-TYPE
              SYNTAX              ScsiIndexValue
              MAX-ACCESS          not-accessible
              STATUS              current
              DESCRIPTION
              "An administrative index for this current attached
              initiator."
         ::= { scsiTgtAttIntrPortEntry 1 }
 
         scsiTgtAuthIntrIndexOrZero OBJECT-TYPE
              SYNTAX              ScsiIndexValueOrZero
              MAX-ACCESS          read-only
              STATUS              current
              DESCRIPTION
              "The corresponding index in the scsiTgtAuthorizedIntrTable
              for this current attached initiator or zero if this attached
              initiator is not authorized."
         ::= { scsiTgtAttIntrPortEntry 2 }
 
         scsiTgtAttIntrPortName OBJECT-TYPE
              SYNTAX              ScsiName
              MAX-ACCESS          read-only
              STATUS              current
              DESCRIPTION
              "The name of the remote initiator attached to this local
              target port."
         ::= { scsiTgtAttIntrPortEntry 3 }
 
 
       Hallak-Stamler et al. Expires August 2002 [Page  40]
 
       SCSI MIB                                  January 2002
 
         scsiTgtAttIntrPortId OBJECT-TYPE
              SYNTAX              ScsiIdentifier
              MAX-ACCESS          read-only
              STATUS              current
              DESCRIPTION
              "The identifier of the remote initiator attached to this
              local target port."
         ::= { scsiTgtAttIntrPortEntry 4 }
 
 
         -- Managed Objects regarding logical units
         scsiLogicalUnitTable OBJECT-TYPE
              SYNTAX           SEQUENCE OF ScsiLogicalUnitEntry
              MAX-ACCESS       not-accessible
              STATUS           current
              DESCRIPTION
               "This table includes all the logical units exposed by a
              target device."
         ::= { scsiLogicalUnit 1 }
 
         scsiLogicalUnitEntry OBJECT-TYPE
              SYNTAX              ScsiLogicalUnitEntry
              MAX-ACCESS          not-accessible
              STATUS              current
              DESCRIPTION
              "An entry (row) containing parameters applicable to the
              corresponding logical unit. "
              INDEX { scsiInstIndex, scsiDeviceIndex, scsiLuIndex}
         ::= { scsiLogicalUnitTable 1 }
 
         ScsiLogicalUnitEntry ::= SEQUENCE {
              scsiLuIndex         ScsiIndexValue,
              scsiLuDefaultLun    ScsiLUNFormat,
              scsiLuName          ScsiLUNFormat,
              scsiLuVendorId      SnmpAdminString,
              scsiLuProductId     SnmpAdminString,
              scsiLuRevisionId    SnmpAdminString,
              scsiLuStatus        INTEGER,
              scsiLuState         Integer32
           }
 
         scsiLuIndex         OBJECT-TYPE
              SYNTAX              ScsiIndexValue
              MAX-ACCESS          not-accessible
              STATUS              current
              DESCRIPTION
              "Administrative index in the Logical Unit table."
         ::= { scsiLogicalUnitEntry 1 }
 
         scsiLuDefaultLun         OBJECT-TYPE
              SYNTAX              ScsiLUNFormat
              MAX-ACCESS          read-only
 
       Hallak-Stamler et al. Expires August 2002 [Page  41]
 
       SCSI MIB                                  January 2002
 
              STATUS              current
              DESCRIPTION
              "The default Logical Unit Number for this Logical Unit."
         ::= { scsiLogicalUnitEntry 2 }
 
         scsiLuName          OBJECT-TYPE
              SYNTAX              ScsiLUNFormat
              MAX-ACCESS          read-only
              STATUS              current
              DESCRIPTION
              "The World-Wide Name of this LU."
         ::= { scsiLogicalUnitEntry 3 }
 
         scsiLuVendorId      OBJECT-TYPE
              SYNTAX              SnmpAdminString
              MAX-ACCESS          read-only
              STATUS              current
              DESCRIPTION
              "A string identifying the vendor of this LU according to the
              value in SCSI device page."
         ::= { scsiLogicalUnitEntry 4 }
 
         scsiLuProductId     OBJECT-TYPE
              SYNTAX              SnmpAdminString
              MAX-ACCESS          read-only
              STATUS              current
              DESCRIPTION
              "A string identifying the product for this LU according to
              the value in SCSI device page."
         ::= { scsiLogicalUnitEntry 5 }
 
         scsiLuRevisionId    OBJECT-TYPE
              SYNTAX              SnmpAdminString
              MAX-ACCESS          read-only
              STATUS              current
              DESCRIPTION
              "A string defining the product revision of this LU according
              to the value in SCSI device page."
         ::= { scsiLogicalUnitEntry 6 }
 
         scsiLuStatus        OBJECT-TYPE
              SYNTAX              INTEGER {
                                       unknown(1),
                                       available(2),
                                       notAvailable(3),
                                       broken(4),
                                       readying(5),
                                       abnormal(6)
                                  }
              MAX-ACCESS          read-only
              STATUS              current
              DESCRIPTION
 
       Hallak-Stamler et al. Expires August 2002 [Page  42]
 
       SCSI MIB                                  January 2002
 
              "The status of this logical unit:
              - unknown(1): The status of this logical unit cannot be
              fixed.
              - available(2): The logical unit is fully operational (i.e.,
              accepts media access SCSI commands and has not state
              information to report).
              - notAvailable(3): The logical unit is capable of being
              supported not available (i.e., no logical unit is currently
              present or the logical unit is present but not configured for
              use).
              - broken(4): The logical unit has failed and cannot respond
              to SCSI commands.
              - readying(5): The logical unit is being initialized and
              access is temporarily limited.
              - abnormal(6): The logical unit has state information
              available that indicates it is operating with limits. The
              scsiLuState indicates what those limits are.
              "
         REFERENCE
         " SCSI Controller Commands-2 (SCC-2) standard NCITS.318-1998)"
         ::= { scsiLogicalUnitEntry 7 }
 
         scsiLuState         OBJECT-TYPE
              SYNTAX              Integer32
              MAX-ACCESS          read-only
              STATUS              current
              DESCRIPTION
              "According the bit position:
              1    Data lost: Within the logical unit data has been lost.
              2    Dynamic reconfiguration in progress: The logical unit is
                   being reconfigured. In this state all data is still
                   protected.
              3    Exposed: Within the logical unit data is not protected.
                   In this state all data is still valid, however, a
                   failure shall cause a loss of data or a loss of data
                   availability.
              4    Fractionally exposed: Within the logical unit part of
                   the data is not protected. In this state all data is
                   still valid, however, a failure may cause a loss of data
                   or a loss of data availability.
              5    Partially exposed: Within the logical unit one or more
                   underlying storage devices have failed. In this state
                   all data is still protected.
              6    Protected rebuild: The logical unit is in the process of
                   a rebuild operation. In this state all data is
                   protected.
              7    Protection disabled: Within the logical unit the data
                   protection method has been disabled.
                   In this state all data is still valid, however, a
                   failure shall cause a loss of data or a loss of data
                   availability.
 
       Hallak-Stamler et al. Expires August 2002 [Page  43]
 
       SCSI MIB                                  January 2002
 
              8    Rebuild: The data protection method is in the process of
                   rebuilding data. In this state data is not protected.
              9    Recalculate: The logical unit is in the process of a
                   recalculate operation.
              10   Spare in use: Within the logical unit a storage device
                   in full or part being used to store data. In this state
                   all data is still protected.
              11   Verify in progress: Within the logical unit data is
                   being verified.
              More than one condition may exist."
         REFERENCE
         " SCSI Controller Commands-2 (SCC-2) standard NCITS.318-1998)"
         ::= { scsiLogicalUnitEntry 8 }
 
 
 
 
         scsiLuIdentifierTable OBJECT-TYPE
              SYNTAX           SEQUENCE OF ScsiLuIdentifierEntry
              MAX-ACCESS       not-accessible
              STATUS           current
              DESCRIPTION
               "A table of identifiers per logical unit."
         ::= { scsiLogicalUnit 2 }
 
         scsiLuIdentifierEntry OBJECT-TYPE
              SYNTAX              ScsiLuIdentifierEntry
              MAX-ACCESS          not-accessible
              STATUS              current
              DESCRIPTION
              "An entry (row) containing parameters applicable to the
              corresponding LUN per logical unit. "
              INDEX { scsiInstIndex, scsiDeviceIndex, scsiLuIndex,
              scsiLuIdIndex }
         ::= { scsiLuIdentifierTable 1 }
 
         ScsiLuIdentifierEntry ::= SEQUENCE {
              scsiLuIdIndex            ScsiIndexValue,
              scsiLuIdCodeSet          INTEGER,
              scsiLuIdAssociation      INTEGER,
              scsiLuIdType             INTEGER,
              scsiLuIdValue            OCTET STRING
         }
 
         scsiLuIdIndex  OBJECT-TYPE
              SYNTAX              ScsiIndexValue
              MAX-ACCESS          not-accessible
              STATUS              current
              DESCRIPTION
              "An administrative index for that entry."
         ::= { scsiLuIdentifierEntry 1 }
 
 
       Hallak-Stamler et al. Expires August 2002 [Page  44]
 
       SCSI MIB                                  January 2002
 
         scsiLuIdCodeSet OBJECT-TYPE
              SYNTAX              INTEGER
              MAX-ACCESS          read-only
              STATUS              current
              DESCRIPTION
              "The code set in use for this identifier: can be binary or
              ascii."
              REFERENCE " ANSI - SCSI Primary Commands - 2 [19]"
         ::= { scsiLuIdentifierEntry 2 }
 
         scsiLuIdAssociation OBJECT-TYPE
              SYNTAX              INTEGER
              MAX-ACCESS          read-only
              STATUS              current
              DESCRIPTION
              "This value means that the identifier is associated with the
              addressed physical or logical device or that the identifier is
              associated with the port that received the request."
              REFERENCE " ANSI - SCSI Primary Commands - 2 [19]"
         ::= { scsiLuIdentifierEntry 3 }
 
         scsiLuIdType   OBJECT-TYPE
              SYNTAX              INTEGER
              MAX-ACCESS          read-only
              STATUS              current
              DESCRIPTION
              "This field defines the type of LU Identifier used for this
              identifier and fixes the format of scsiLUIdValue. It might be:
              - proprietary corresponds to 0h identifier type value and
              means that the format used for this LU Identifier is vendor-
              specific,
              - annexD corresponds to 1h identifier type value and means
              that this LU Identifier starts with an 8-bytes T10 Vendor ID.
              - eui64 corresponds to 2h identifier type value and means that
              the format used for this LU Identifier is IEEE Extended Unique
              Identifier of 64 bits (EUI-64)
              - fcfs corresponds to 3h identifier and means that this LU
              Identifier contains an FC-FS identifier.
              - relative corresponds to 4h identifier type and means that
              this LU Identifier contains the relative position of the port.
              This type is used when the scsiLUIdAssociation points to
              port."
              REFERENCE " ANSI - SCSI Primary Commands - 2 [19]"
         ::= { scsiLuIdentifierEntry 4 }
 
         scsiLuIdValue OBJECT-TYPE
              SYNTAX              OCTET STRING (SIZE (0..255))
              MAX-ACCESS          read-only
              STATUS              current
              DESCRIPTION
              "The actual value of this identifier. The format is defined
              by the previous fields."
 
       Hallak-Stamler et al. Expires August 2002 [Page  45]
 
       SCSI MIB                                  January 2002
 
         ::= { scsiLuIdentifierEntry 5 }
 
 
 
         -- The LUN Map Table
 
         scsiLunMapTable OBJECT-TYPE
              SYNTAX           SEQUENCE OF ScsiLunMapEntry
              MAX-ACCESS       not-accessible
              STATUS           current
              DESCRIPTION
               "This table includes LUNs additional to the default one. It
              is configured per initiator port"
         ::= { scsiLogicalUnit 3 }
 
         scsiLunMapEntry OBJECT-TYPE
              SYNTAX              ScsiLunMapEntry
              MAX-ACCESS          not-accessible
              STATUS              current
              DESCRIPTION
              "An entry (row) containing parameters applicable to the
              corresponding LUN per logical unit and per configured
              initiator port. "
              INDEX { scsiInstIndex, scsiDeviceIndex, scsiLunMapIndex,
              scsiLuIndex}
         ::= { scsiLunMapTable 1 }
 
         ScsiLunMapEntry ::= SEQUENCE {
              scsiLunMapIndex          ScsiIndexValue,
              scsiLunMapLun            ScsiLUNFormat,
              scsiLunMapRowStatus      RowStatus
         }
 
         scsiLunMapIndex     OBJECT-TYPE
              SYNTAX              ScsiIndexValue
              MAX-ACCESS          not-accessible
              STATUS              current
              DESCRIPTION
              "An administrative index for this entry."
         ::= { scsiLunMapEntry 1 }
 
         scsiLunMapLun  OBJECT-TYPE
              SYNTAX              ScsiLUNFormat
              MAX-ACCESS          read-create
              STATUS              current
              DESCRIPTION
              "It is the LUN that will get the initiator port or device that
              points to this entry."
         ::= { scsiLunMapEntry 2 }
 
         scsiLunMapRowStatus OBJECT-TYPE
              SYNTAX              RowStatus
 
       Hallak-Stamler et al. Expires August 2002 [Page  46]
 
       SCSI MIB                                  January 2002
 
              MAX-ACCESS          read-create
              STATUS              current
              DESCRIPTION
              "This field allows an administrator to create and delete this
              entry."
         ::= { scsiLunMapEntry 3 }
 
         -- The following groups will be defined in next versions
         -- scsiNotifications OBJECT IDENTIFIER ::= { scsiModule 2 }
         -- scsiConformance OBJECT IDENTIFIER ::= { scsiModule 3 }
 
 
       END
 
       11.  Acknowledgments
 
          This document was produced by the SCSI MIB Working Group.
 
 
 
       12.  References
 
    [1]  Harrington, D., Presuhn, R. and B. Wijnen, "An Architecture
         for Describing SNMP Management Frameworks", RFC 2571, April
         1999.
 
    [2]  Rose, M. and K. McCloghrie, "Structure and Identification of
         Management Information for TCP/IP-based Internets", STD 16,
         RFC 1155, May 1990.
 
    [3] Rose, M. and K. McCloghrie, "Concise MIB Definitions", STD 16,
         RFC 1212, March 1991.
 
    [4]  Rose, M., "A Convention for Defining Traps for use with the
         SNMP", RFC 1215, March 1991.
 
     [5] McCloghrie, K., Perkins, D., Schoenwaelder, J., Case, J.,
         Rose, M. and S. Waldbusser, "Structure of Management
         Information Version 2 (SMIv2)", STD 58, RFC 2578, April 1999.
 
     [6] McCloghrie, K., Perkins, D., Schoenwaelder, J., Case, J.,
         Rose, M. and S. Waldbusser, "Textual Conventions for SMIv2",
         STD 58, RFC 2579, April 1999.
 
     [7] McCloghrie, K., Perkins, D., Schoenwaelder, J., Case, J.,
         Rose,M. and S. Waldbusser, "Conformance Statements for SMIv2",
         STD 58, RFC 2580, April 1999.
 
     [8] Case, J., Fedor, M., Schoffstall, M. and J. Davin, "Simple
         Network Management Protocol", STD 15, RFC 1157, May 1990.
 
    [9]  Case, J., McCloghrie, K., Rose, M. and S. Waldbusser,
 
       Hallak-Stamler et al. Expires August 2002 [Page  47]
 
  SCSI MIB                                  January 2002
 
         "Introduction to Community-based SNMPv2", RFC 1901, January
         1996.
 
    [10] Case, J., McCloghrie, K., Rose, M. and S. Waldbusser,
         "Transport Mappings for Version 2 of the Simple Network
         Management Protocol(SNMPv2)", RFC 1906, January 1996.
 
    [11] Case, J., Harrington D., Presuhn R. and B. Wijnen, "Message
         Processing and Dispatching for the Simple Network Management
         Protocol (SNMP)", RFC 2572, April 1999.
 
    [12] Blumenthal, U. and B. Wijnen, "User-based Security Model
         (USM)for version 3 of the Simple Network Management
         Protocol(SNMPv3)", RFC 2574, April 1999.
 
    [13] Case, J., McCloghrie, K., Rose, M. and S. Waldbusser,
         "Protocol Operations for Version 2 of the Simple Network
         Management Protocol (SNMPv2)", RFC 1905, January 1996.
 
    [14] Levi, D., Meyer, P. and B. Stewart, "SNMPv3 Applications",
         RFC 2573, April 1999.
 
    [15] Wijnen, B., Presuhn, R. and K. McCloghrie, "View-based Access
         Control Model (VACM) for the Simple Network Management
         Protocol (SNMP)", RFC 2575, April 1999.
 
    [16] Case, J., Mundy, R., Partain, D. and B. Stewart, "Introduction
         to Version 3 of the Internet-standard Network Management
         Framework", RFC 2570, April 1999.
 
    [17] Information Technology, SCSI Architecture Model-2 (SAM-2),
         Working Draft, T10 Project 1157-D, Revision 20, 19 September
         2001
 
    [18] IEEE Tutorial for SCSI use of IEEE company_id - X3T10/97-101,
         revision 2
 
    [19] Information Technology, SCSI Primary Commands - 2 (SPC-2), T10
         Project 1236-D, Revision 20, 18 July 2001
 
    [20] Information Technology, Names, Addresses, Identifiers, Oh my!,
         T10 Project, Revision 4, 25 July 2001 (T10/01-084 revision 4)
 
    [22] S. Waldbusser and P. Grillo, "Host Resources MIB", RFC 2790,
         March 2000.
 
    [23] Bradner, S., "Key words for use in RFCs to Indicate
         Requirement Levels", BCP 14, RFC 2119, March 1997.
 
  13.  Security Considerations
 
 
  Hallak-Stamler et al. Expires August 2002 [Page  48]
 
  SCSI MIB                                  January 2002
 
 There are a number of management objects defined in this MIB that have
 a MAX-ACCESS clause of read-write and/or read-create.  Such objects
 may be considered sensitive or vulnerable in some network
 environments.  The support for SET operations in a non-secure
 environment without proper protection can have a negative effect on
 network operations.
 
 Some managed objects in this MIB may contain sensitive information.
 
 SNMPv1 by itself is not a secure environment.  Even if the network
 itself is secure (for example by using IPSec), even then, there is no
 control as to who on the secure network is allowed to access and
 GET/SET (read/change/create/delete) the objects in this MIB.
 
 It is recommended that the implementers consider the security features
 as provided by the SNMPv3 framework.  Specifically, the use of the
 User-based Security Model RFC 2574 [12] and the View-based Access
 Control Model RFC 2575 [15] are recommended.
 
 It is then a customer/user responsibility to ensure that the SNMP
 entity giving access to an instance of this MIB, is properly
 configured to give access to the objects only to those principals
 (users) that have legitimate rights to indeed GET or SET
 (change/create/delete) them.
 
 
  14.  Authors' Addresses
 
  Michele Hallak-Stamler
  Sanrad Intelligent Network
  32 Habarzel Street
  Tel Aviv, Israel
 
  Phone: +972 3 7674809
  Email: michele@sanrad.com
 
 
  Yaron Lederman
  Siliquent Technologies Ltd.
  33 Bezalel Street
  Ramat Gan, Israel
 
  Phone: +972 3 7552320
  Email: yaronl@siliquent.com
 
 
  Mark Bakke
  Postal: Cisco Systems, Inc
  6450 Wedgwood Road, Suite 130
  Maple Grove, MN
  USA 55311
 
 
  Hallak-Stamler et al. Expires August 2002 [Page  49]
 
  SCSI MIB                                  January 2002
 
  Tel: +1 763-398-1000
  Fax: +1 763-398-1001
  E-mail: mbakke@cisco.com
 
  Marjorie Krueger
  Postal: Hewlett-Packard
  Networked Storage Architecture
  Networked Storage Solutions Org.
  8000 Foothills Blvd.
  Roseville, CA 95747
 
  Tel: +1 916-785-2656
  Tel: +1 916-785-0391
  Email: marjorie_krueger@hp.com
 
  Keith McCloghrie
  Cisco Systems, Inc.
  Postal: 170 West Tasman Drive
  San Jose, CA USA 95134
 
  Tel: +1 408 526-5260
  E-mail: kzm@cisco.com
 
 
 
 
 
 
 
 
 
 
  Hallak-Stamler et al. Expires August 2002 [Page  50]