IPS                                                    Kevin Gibbons
   Internet Draft                                          G D                                           2Wire, Inc.
   <draft-ietf-ips-isns-mib-11.txt>
   Intended Status: Standards Track                      G. D. Ramkumar
   <draft-ietf-ips-isns-mib-10.txt>
   Expires: September 17, 2007                           SnapTell, Inc.

                                                             Scott Kipp
   Category: standards-track                         McDATA Corporation
                                                       October 11, 2006
                                                          Brocade, Inc.

                                                         March 16, 2007

                  Definitions of Managed Objects for iSNS
                      (Internet Storage Name Service)

Status of this Memo

   By submitting this Internet-Draft, each author represents that any
   applicable patent or other IPR claims of which he or she is aware
   have been or will be disclosed, and any of which he or she becomes
   aware will be disclosed, in accordance with Section 6 of BCP 79.

   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.

   This Internet-Draft will expire in April September 2007.

Abstract

   The iSNS protocol provides storage name service functionality on an
   IP network that is being used for iSCSI or iFCP storage. This draft
   provides a mechanism to monitor multiple iSNS Servers, including
   information about registered objects in an iSNS Server.

   This memo is a product of the IP Storage (IPS) working group within
   the Internet Engineering Task Force.  Comments are solicited and
   should be addressed to the working group's mailing list at
   ips@ietf.org and/or the authors.

   Gibbons            Expires April September 17, 2007                     1

Table of Contents

   Status of this Memo................................................1
   Abstract...........................................................1
   Table of Contents..................................................2
   1.  The Internet-Standard Management Framework.....................3
   2.  Introduction...................................................3
   3.  Technical Description..........................................3
   3.1  iSNS Registered Objects.......................................3
   3.2  iSNS MIB Structure............................................4
   3.3  iSNS Server Info..............................................5
   3.3.1  Control Node Information.....................................5 Information....................................5
   3.3.2  Discovery Domain Set (DDS)..................................5
   3.3.3  Discovery Domain (DD).......................................5
   3.3.4  Registered Storage Objects..................................5
   3.3.4.1  Registered Entities.......................................6
   3.3.4.2  Registered Portals........................................6
   3.3.4.3  Registered Portal Groups..................................6
   3.3.4.4  Registered iSCSI Nodes....................................6
   3.3.4.5  Registered FC Ports.......................................6
   3.3.4.6  Registered FC Nodes.......................................6
   3.4  Multiple Server Instances.....................................6
   3.5  iSNS Notifications............................................6
   4.  MIB References and Requirement Levels..........................6
   5.  MIB Module......................................................7 Module.....................................................7
   6.  IANA Considerations............................................65 Considerations...........................................69
   7.  Security Considerations........................................66 Considerations.......................................69
   8.  Normative References...........................................67 References..........................................71
   9.  Informative References.........................................68 References........................................71
   10. Acknowledgements..............................................68  Acknowledgements.............................................72
   11.  Authors' Addresses............................................68
   11. Addresses...........................................72
   12.  Full Copyright Statement.....................................72
   13.  Intellectual Property Statement...............................69 Statement..............................73
   14.  Acknowledgment...............................................73
   15.  Expiration Notice............................................73

   Gibbons            Expires April September 17, 2007                     2

1.  The Internet-Standard Management Framework

   For a detailed overview of the documents that describe the current
   Internet-Standard Management Framework, please refer to section 7 of
   RFC 3410 [RFC3410].

   Managed objects are accessed via a virtual information store, termed
   the Management Information Base or MIB.  MIB objects are generally
   accessed through the Simple Network Management Protocol (SNMP).
   Objects in the MIB are defined using the mechanisms defined in the
   Structure of Management Information (SMI).  This memo specifies a
   MIB module that is compliant to the SMIv2, which is described in STD
   58, RFC 2578 [RFC2578], STD 58, RFC 2579 [RFC2579] and STD 58, RFC
   2580 [RFC2580].

2.  Introduction

   The iSNS protocol, as described in RFC 4171 [RFC4171], can be used
   by IP based storage devices for dynamic registration and discovery
   of other storage devices in the network.  It has the capability to
   group devices into storage Discovery Domains, and Discovery Domains
   into Discovery Domain Sets.  The iSNS MIB is designed to allow SNMP
   to be used to monitor iSNS servers supporting iSCSI [RFC3720] and
   iFCP [RFC4172].

3.  Technical Description

3.1  iSNS Registered Objects

   The following entity relationship figure indicates the objects that
   can be registered in the iSNS, and their relationship to each other.

   Gibbons            Expires April September 17, 2007                     3
                    +--------------+    +-----------+
                    |    NETWORK   |1  *|           |
                    |    ENTITY    |----|  PORTAL   |
                    |              |    |           |
                    +--------------+    +-----------+
                            |1            |1  |*
                            |             |   |
                            |             |*  |
                            |   +----------+  |
                            |   |  PORTAL  |  |
                            |   |  GROUP   |  |
                            |   +----------+  |
                            |    |*           |
                            |    |            |
                            |*   |1           |*
   +----------+    +-------------+    +----------+    +-----------+
   |   FC     |1  *|   STORAGE   |*  *| DISCOVERY|*  *| DISCOVERY |
   |  DEVICE  |----|    NODE     |----|  DOMAIN  |----|  DOMAIN   |
   |          |    |             |    |          |    |    SET    |
   +----------+    +-------------+    +----------+    +-----------+

                * represents 0 to many possible relationships

3.2  iSNS MIB Structure

   The MIB is divided into sections for iSNS server information, iSNS
   server registered objects information, and iSNS notifications.

   +--------------+    +--------------+
   | MANAGED iSNS |1  *| CONTROL NODE |
   |    SERVER    |----|    INFO      |
   |     INFO     |    +--------------+
   +--------------+
          |1    |1
          |     |      +--------------+
          |     |     *|  DDS AND DD  |
          |     +------|     INFO     |
          |            |              |
          |            +--------------+
          |
          |            +-------------+
          |           *| REGISTERED  |
          +------------|  ENTITIES   |
                       |    INFO     |
                       +-------------+
   +-----------------+
   |     iSNS        |
   |  NOTIFICATION   |
   |     INFO        |
   +-----------------+

   Gibbons            Expires April September 17, 2007                     4
   The sections that are required to implement are for iSNS Server
   management and notification.

3.3  iSNS Server Info

   The isnsServerInfo section provides the ability to monitor multiple
   iSNS Server instances.   The isnsServerTable table provides
   information on each server instance.  This table is indexed by the
   variable isnsServerIndex.  The table indicates current settings for
   each iSNS server being managed.  The network address, TCP and UDP
   ports being used by a server for iSNSP registrations and queries can
   be determined from this table.

   The count of objects registered in each iSNS server instance is
   shown in the table isnsNumObjectsTable.  The provides a summary of
   the number Discovery Domain Sets, Discovery Domains, Entities,
   Portals, Portal Groups, iSCSI Nodes, and iFCP FC Nodes and Ports.

3.3.1  Control Node Information

   As defined in the iSNS specification, control nodes Control Nodes are objects that
   have been registered with the server and are allowed to manage the
   iSNS server.  These control nodes Control Nodes are identified by their iSCSI Node
   Name or iFCP FC Port Name.  The isnsControlNodeInfo section of the
   MIB provides the ability to view the currently registered set of
   iSCSI and iFCP control nodes.

3.3.2  Discovery Domain Set (DDS)

   The isnsDdsInfo section provides information on each registered DDS,
   the Discovery Domain members of each DDS, for each iSNS Server
   instance being managed.  DDSs provide a method to group multiple
   Discovery Domains for easier control.  As described in the iSNS
   Specification [RFC4171], a DDS can be enabled or disabled, which in
   turn enables or disables the member Discovery Domains.  Discovery
   Domains that are contained in an enabled DDS are then enforced by an
   iSNS Server.

3.3.3  Discovery Domain (DD)

   The isnsDdInfo section provides information on each registered DD,
   and the DD members, for each iSNS Server instance being managed.
   DDs are collections of storage nodes and portals that are allowed to
   discover one another.  DD members can be iSCSI nodes, Entity
   Portals, or iFCP nodes.

3.3.4  Registered Storage Objects

   The isnsReg section provides information on the registered storage
   objects for a specific iSNS Server instance.  This section is
   divided into subsections for Entities, Portals, iSCSI Nodes, as well
   as iFCP Port and Node information.

   Gibbons            Expires April September 17, 2007                     5

3.3.4.1  Registered Entities

   The isnsRegEntityInfo section provides information on the registered
   entities.  Entities are collections of storage nodes and portals.

3.3.4.2  Registered Portals

   The isnsRegPortalInfo section provides information on the registered
   portals for a specific iSNS Server instance.  Portals are logical
   IP-Address, TCP/UDP Port pairs that provide access to storage nodes
   contained in the associated Entity.

3.3.4.3  Registered Portal Groups

   The isnsRegPortalGroupInfo section provides information on the
   registered portal groups for a specific iSNS Server instance.  As
   described in iSCSI [RFC3720], Portal Groups provide a mapping
   between Portals and iSCSI Storage Nodes contained in an Entity.

3.3.4.4  Registered iSCSI Nodes

   The isnsRegIscsiNodeInfo section provides information on the
   registered iSCSI Nodes for a specific iSNS Server instance. The
   iSCSI nodes are individual storage targets or initiators.

3.3.4.5  Registered FC Ports

   The isnsRegFcPortInfo section provides information on the registered
   FC Ports for a specific iSNS Server instance. The FC Ports are ports
   associated with an iFCP gateway.

3.3.4.6  Registered FC Nodes

   The isnsRegFcNodeInfo section provides information on the registered
   FC Nodes for a specific iSNS Server instance. The FC nodes are
   individual storage devices associated with an iFCP gateway.

3.4  Multiple Server Instances

   The management of multiple instances of iSNS servers by the agent is
   supported.  As described in Section 3.3, each managed iSNS server
   instance has an entry in the table isnsServerTable.

3.5  iSNS Notifications

   The isnsNotification section provides SNMP notifications for iSNS
   Server state changes.

4.  MIB References and Requirement Levels

   Gibbons            Expires April September 17, 2007                     6
   The following MIB module has IMPORTS from [RFC2578], [RFC2579],
   [RFC2580], [RFC3411], [RFC4001], [RFC4044], and [RFC4133].  In
   REFERENCE clauses, it also refers to [RFC3720], [RFC4171], and
   [RFC4172].

   The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT",
   "SHOULD", "SHOULD NOT", "RECOMMENDED", "MAY", and "OPTIONAL" in this
   document are to be interpreted as described in RFC 2119.
   [RFC2119] [RFC2119].

5.  MIB Module

   ISNS-MIB DEFINITIONS ::= BEGIN
      IMPORTS
      --  From RFC2578
          MODULE-IDENTITY,
          OBJECT-TYPE,
          NOTIFICATION-TYPE,
          Integer32,
          Unsigned32,
          Gauge32,
          mib-2
               FROM SNMPv2-SMI

      --  From RFC2579
          TEXTUAL-CONVENTION,
          TimeStamp,
          TruthValue
               FROM SNMPv2-TC

      --  From RFC2580
          OBJECT-GROUP,
          MODULE-COMPLIANCE,
          NOTIFICATION-GROUP
               FROM SNMPv2-CONF

      --  From RFC3411
          SnmpAdminString
               FROM SNMP-FRAMEWORK-MIB

      --  From RFC4001
          InetAddressType,
          InetAddress,
          InetPortNumber
               FROM INET-ADDRESS-MIB

      --  From RFC4044
          FcNameIdOrZero,
          FcAddressIdOrZero
               FROM FC-MGMT-MIB

      --  From RFC4133
          PhysicalIndex

   Gibbons            Expires April September 17, 2007                     7
               FROM ENTITY-MIB
            ;

      isnsMIB  MODULE-IDENTITY
            LAST-UPDATED "200610110000Z" "200703160000Z"
            ORGANIZATION "IETF IPS Working Group"
            CONTACT-INFO "
              Attn: Kevin Gibbons
                    McDATA Corporation
                    4555 Great America Pkwy
                    Santa Clara,
                    2Wire, Inc.
                    1704 Automation Parkway
                    San Jose, CA 95054-1208 95131
                    USA
                    Tel: +1 408-567-5765 408-895-1387
                    Fax: +1 408-567-0063 408-428-9590
                    Email: kevin.gibbons@mcdata.com kgibbons@yahoo.com

                    G.D. Ramkumar
                    McDATA Corporation
                    4555 Great America Pkwy
                    Santa Clara,
                    SnapTell, Inc.
                    2741 Middlefield Rd, Suite 200
                    Palo Alto, CA 95054-1208 94306
                    USA
                    Tel: +1 408-567-5614 650-326-7627
                    Fax: +1 408-567-0063 650-326-7620
                    Email: gramkumar@stanfordalumni.org

                    Scott Kipp
                    McDATA Corporation
                    Brocade
                    4 McDATA Pkwy
                    Broomfield, CO 80021
                    USA
                    Tel: +1 720-558-3452
                    Fax: +1 720-558-8999
                    Email: scott.kipp@mcdata.com skipp@brocade.com
                          "

               DESCRIPTION
                       "This module defines management information
                        specific to internet Storage Name Service
                        (iSNS) management.

                        Copyright (C) The Internet Society 2006. IETF Trust (2007).
                        This version of this MIB module is part
                        of RFC XXXX; see the RFC itself for full
                        legal notices."

               REVISION    "200610110000Z"    "200703160000Z"

               DESCRIPTION
                        "Initial version of iSNS Management Module.
                         This MIB published as RFC XXXX."

         -- RFC Ed.: replace XXXX with RFC number assigned to

   Gibbons            Expires April September 17, 2007                     8
         -- this document
                 ::=  { mib-2 YYYY }
         -- RFC Ed.: enter the IANA assigned number to this MIB
         -- for YYYY

         --
         --  Textual Conventions
         --

      IsnsDiscoveryDomainSetId ::= TEXTUAL-CONVENTION
          DISPLAY-HINT   "d"
          STATUS         current
          DESCRIPTION
      "The unique Discovery Domain Set Identifier associated with a
       Discovery Domain Set (DDS)."
          REFERENCE      "RFC4171, Section 6.11.1.1"
          SYNTAX         Unsigned32 ( 1 .. 4294967295 )

      IsnsDdsStatusType ::= TEXTUAL-CONVENTION
          STATUS         current
          DESCRIPTION
      "The status of a Discovery Domain Set (DDS) registered in the
       iSNS.  The initially assigned values are below:
                    Bit           Status
                 ---------       ---------
                     1
                    31            DDS Enabled
                 All others       RESERVED

       Setting a bit to 1 indicates the feature is enabled.
       Otherwise it is disabled.  The future assignment of any of
       the reserved values will be documented in a revision of
       RFC4171."
          REFERENCE      "RFC4171, Section 6.11.1.3"
          SYNTAX         BITS {
              reserved0(0), reserved1(1), reserved2(2),
              reserved3(3), reserved4(4), reserved5(5),
              reserved6(6), reserved7(7), reserved8(8),
              reserved9(9), reserved10(10), reserved11(11),
              reserved12(12), reserved13(13), reserved14(14),
              reserved15(15), reserved16(16), reserved17(17),
              reserved18(18), reserved19(19), reserved20(20),
              reserved21(21), reserved22(22), reserved23(23),
              reserved24(24), reserved25(25), reserved26(26),
              reserved27(27), reserved28(28), reserved29(29),
              reserved30(30),
              ddsEnabled (31)
                              }

      IsnsDiscoveryDomainId ::= TEXTUAL-CONVENTION
          DISPLAY-HINT   "d"
          STATUS         current
          DESCRIPTION

   Gibbons            Expires April September 17, 2007                     9
      "The unique Discovery Domain Identifier (DD_ID) associated
       with each Discovery Domain (DD).  This is used to
       uniquely index and reference a DD."
          REFERENCE      "RFC4171, Section 6"
          SYNTAX         Unsigned32 ( 1 .. 4294967295 )

      IsnsDdFeatureType ::= TEXTUAL-CONVENTION
          STATUS         current
          DESCRIPTION
      "This type defines the features that each Discovery Domain
       (DD) has.
                    Bit           Status
                 ---------       ---------
                    31            Boot List
                 All others       RESERVED

       Boot List: this feature indicates that the targets
       in this DD provide boot capabilities for the member
       initiators.

       Setting a bit to 1 indicates the feature is enabled.
       Otherwise it is disabled.  The future assignment of any of
       the reserved values will be documented in a revision of
       RFC4171."
          REFERENCE      "RFC4171, Section 6.11.2.9"
          SYNTAX         BITS {
              reserved0(0), reserved1(1), reserved2(2),
              reserved3(3), reserved4(4), reserved5(5),
              reserved6(6), reserved7(7), reserved8(8),
              reserved9(9), reserved10(10), reserved11(11),
              reserved12(12), reserved13(13), reserved14(14),
              reserved15(15), reserved16(16), reserved17(17),
              reserved18(18), reserved19(19), reserved20(20),
              reserved21(21), reserved22(22), reserved23(23),
              reserved24(24), reserved25(25), reserved26(26),
              reserved27(27), reserved28(28), reserved29(29),
              reserved30(30),
              bootlist(31)
                              }

      IsnsDdDdsModificationType ::= TEXTUAL-CONVENTION
          STATUS         current
          DESCRIPTION
      "The methods that can be used to modify the Discovery
       Domain and Discovery Domain Sets in an iSNS Server
       instance. Although this MIB does not allow modification
       of DD's and DDS's, SNMP may be used to modify them via
       another MIB.
              Bit             Flag Description
           ---------   ------------------------------------
               0       SNMP protocol is allowed to modify
                       DD's/DDS's

   Gibbons                Expires April 2007                        10
               1       Control Nodes are allowed
               2
               1       Target iSCSI Nodes are allowed
               3
               2       Initiator iSCSI Nodes are allowed
               4
               3       Target iFCP Ports are allowed
               5

   Gibbons            Expires September 17, 2007                    10
               4       Initiator iFCP Ports are allowed

       Setting a bit to 1 indicates the feature is
       enabled.  Otherwise it is disabled."
          REFERENCE      "RFC4171, Section 2.4"
          SYNTAX         BITS {
                            snmpEnabled(0),
                            controlNode(1),
                            targetIscsiNode(2),
                            initiatorIscsiNode(3),
                            targetIfcpNode(4),
                            initiatorIfcpNode(5)
                            controlNode(0),
                            targetIscsiNode(1),
                            initiatorIscsiNode(2),
                            targetIfcpNode(3),
                            initiatorIfcpNode(4)
                              }

      IsnsEntityIndexId

      IsnsEntityIndexIdOrZero ::= TEXTUAL-CONVENTION
          DISPLAY-HINT   "d"
          STATUS         current
          DESCRIPTION
      "The identifer identifier for the unique integer Entity Index
       associated with an iSNS registered Entity object." object, and the
       value 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 the Entity is unknown,
       or not yet registered in the iSNS server.  If a value of
       zero is not valid for an object, than that MUST be
       indicated."
          REFERENCE      "RFC4171, Section 6"
          SYNTAX         Unsigned32 ( 1 0 .. 4294967295 )

      IsnsPortalGroupIndexId ::= TEXTUAL-CONVENTION
          DISPLAY-HINT   "d"
          STATUS         current
          DESCRIPTION
      "The identifier for the unique integer Portal Group Index
       associated with an iSNS registered Portal Group object."
          REFERENCE      "RFC4171, Section 6"
          SYNTAX         Unsigned32 ( 1 .. 4294967295 )

      IsnsPortalIndexId ::= TEXTUAL-CONVENTION
          DISPLAY-HINT   "d"
          STATUS         current
          DESCRIPTION
      "The identifier for the unique integer Portal Index
       associated with an iSNS registered Portal object." object.  The
       index is created by the iSNS Server for mapping between
       registered objects. The Portal Index used for a specific
       portal IP-address and port number pair is only persistent
       across reboots for portals that have been explicitly added
       to a Discovery Domain (DD).  If a portal is not explicitly
       registered in any DD, then the index used for a portal can
       change after a server reinitialization."
          REFERENCE      "RFC4171, Section 6"

   Gibbons            Expires September 17, 2007                    11
          SYNTAX         Unsigned32 ( 1 .. 4294967295 )

      IsnsPortalPortTypeId ::= TEXTUAL-CONVENTION
          STATUS         current
          DESCRIPTION
      "The UDP or TCP port type being used by a Portal for an
       Entity."
          REFERENCE      "RFC4171, Section 6.3.2"
          SYNTAX         INTEGER { udp(1), tcp(2) }

   Gibbons                Expires April 2007                        11

      IsnsPortalGroupTagIdOrNull ::= TEXTUAL-CONVENTION
          DISPLAY-HINT   "d"
          STATUS         current
          DESCRIPTION
      "The Portal Group Tag (PGT) represents an association
       between a Portal and iSCSI Node using the value range
       0 to 65535.  A PGT with no association is a NULL
       value.  The value of -1 indicates a NULL value."
          REFERENCE      "RFC4171, Section 6.5.4, and RFC3720"
          SYNTAX         Integer32 ( -1 .. 65535 )

      IsnsPortalSecurityType ::= TEXTUAL-CONVENTION
          STATUS         current
          DESCRIPTION
      "Indicates security attribute settings for a Portal that is
       registered in the iSNS server.  The bitmapVALID field must
       be set in order for the contents to be considered valid
       information.  The definitions of the bit fields are based
       on RFC4171.  The initial representation of each bit setting
       (0 or 1) is indicated below.
             Bit             Flag Description
           ---------   ------------------------------------
              25       1 = Tunnel Mode Preferred; 0 = No Preference
              26       1 = Transport Mode Preferred; 0 = No
                       Preference
              27       1 = PFS Enabled; 0 = PFS Disabled
              28       1 = Aggressive Mode Enabled; 0 = Disabled
              29       1 = Main Mode Enabled; 0 = MM Disabled
              30       1 = IKE/IPSec IKE/IPsec Enabled; 0 = IKE/IPSec IKE/IPsec
                       Disabled
              31       1 = Bitmap VALID; 0 = INVALID
           All others  RESERVED

       The future assignment of any of the reserved values will be
       documented in a revision of RFC4171."
          REFERENCE      "RFC4171, Section 6.3.9"
          SYNTAX        BITS {
              reserved0(0), reserved1(1), reserved2(2),
              reserved3(3), reserved4(4), reserved5(5),
              reserved6(6), reserved7(7), reserved8(8),
              reserved9(9), reserved10(10), reserved11(11),
              reserved12(12), reserved13(13), reserved14(14),

   Gibbons            Expires September 17, 2007                    12
              reserved15(15), reserved16(16), reserved17(17),
              reserved18(18), reserved19(19), reserved20(20),
              reserved21(21), reserved22(22), reserved23(23),
              reserved24(24),
              tunnelModePreferred(25),
              transportModePreferred(26),
              pfsEnabled(27),
              agressiveModeEnabled(28),
              mainModeEnabled(29),

   Gibbons                Expires April 2007                        12
              ikeIpsecEnabled(30),
              ikeIPsecEnabled(30),
              bitmapVALID(31)
                             }

      IsnsNodeIndexId ::= TEXTUAL-CONVENTION
          DISPLAY-HINT   "d"
          STATUS         current
          DESCRIPTION
      "The identifier for the unique integer Node Index associated
       with a storage node.  In order  This index provides a 1 to support objects that have
       key identifiers whose 1 mapping
       to an iSCSI node name.  The iSCSI node name maximum length
       is longer than the
       maximum SNMP supported length, the iSNS server provides
       secondary non-zero integer index identifiers.  These indexes
       SHALL too long to be persistent used for as long as the an index directly.  The iSCSI
       node index used for a specific iSCSI node name is identical
       in all DDs, and is persistent across server
       reinitializations when the iSCSI node is a member of a
       Discovery Domain (DD) or is active. registered as a Control Node.
       Furthermore, index values for recently deregistered objects
       SHOULD NOT be reused in the short term."
          REFERENCE      "RFC4171, Section 6.4.5"
          SYNTAX         Unsigned32 ( 1 .. 4294967295 )

      IsnsNodeIndexIdOrZero ::= TEXTUAL-CONVENTION
          DISPLAY-HINT   "d"
          STATUS         current
          DESCRIPTION
      "This textual convention is an extension of the IsnsNodeIndexId
       textual convention, which defines a greater than zero value
       used to identify an IsnsNode.  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 the IsnsNode was unknown,
       or when none or all IsnsNodes need to be referenced."
          REFERENCE      "RFC4171, Section 6.4.5"
          SYNTAX         Unsigned32 ( 0 .. 4294967295 )

      IsnsIscsiNodeType ::= TEXTUAL-CONVENTION
          STATUS         current
          DESCRIPTION
      "The iSCSI Node Type defines the functions of the registered
       object.  The definitiions definitions of each setting are defined in
       RFC4171.
                    Bit          Node Type
                 ---------       ---------
                    29            Control
                    30            Initiator
                    31            Target
                 All others       RESERVED

       Setting a bit to 1 indicates the node has the corresponding
       characteristics.  The future assignment of any of the
       reserved values will be documented in a revision of
       RFC4171."
          REFERENCE      "RFC4171, Section 6.4.2"

   Gibbons                Expires April 2007                        13
          SYNTAX         BITS {
              reserved0(0), reserved1(1), reserved2(2),
              reserved3(3), reserved4(4), reserved5(5),
              reserved6(6), reserved7(7), reserved8(8),

   Gibbons            Expires September 17, 2007                    13
              reserved9(9), reserved10(10), reserved11(11),
              reserved12(12), reserved13(13), reserved14(14),
              reserved15(15), reserved16(16), reserved17(17),
              reserved18(18), reserved19(19), reserved20(20),
              reserved21(21), reserved22(22), reserved23(23),
              reserved24(24), reserved25(25), reserved26(26),
              reserved27(27), reserved28(28),
              control(29),
              initiator(30),
              target(31)
                              }

      IsnsFcClassOfServiceType ::= TEXTUAL-CONVENTION
          STATUS         current
          DESCRIPTION
      "This defines the Fibre Channel Class of Service types
       that are supported by the registered port.  The
       definitions are as defined in RFC4171.
             Bit              FC COS Type
           ---------          ----------------
              28             Fibre Channel Class 3 Supported
              29             Fibre Channel Class 2 Supported
           All others        RESERVED

       Setting a bit to 1 indicates the class of service is
       supported.  The future assignment of any of the
       reserved values will be documented in a revision of
       RFC4171."
          REFERENCE      "RFC4171, Section 6.6.8"
          SYNTAX         BITS {
              reserved0(0), reserved1(1), reserved2(2),
              reserved3(3), reserved4(4), reserved5(5),
              reserved6(6), reserved7(7), reserved8(8),
              reserved9(9), reserved10(10), reserved11(11),
              reserved12(12), reserved13(13), reserved14(14),
              reserved15(15), reserved16(16), reserved17(17),
              reserved18(18), reserved19(19), reserved20(20),
              reserved21(21), reserved22(22), reserved23(23),
              reserved24(24), reserved25(25), reserved26(26),
              reserved27(27),
              class3(28),
              class2(29)
                              }

      IsnsIscsiScnType ::= TEXTUAL-CONVENTION
          STATUS         current
          DESCRIPTION
      "The iSCSI Node State Change Notification (SCN) values

   Gibbons                Expires April 2007                        14
       for a node as defined in RFC4171.
                Bit                Description
             ------------       ----------------
              24                INITIATOR AND SELF INFORMATION ONLY                Initiator and self information only

   Gibbons            Expires September 17, 2007                    14
              25                TARGET AND SELF INFORMATION ONLY                Target and self information only
              26                MANAGEMENT REGISTRATION/SCN                Management registration/SCN
              27                OBJECT REMOVED                Object removed
              28                OBJECT ADDED                Object added
              29                OBJECT UPDATED                Object updated
              30                DD/DDS MEMBER REMOVED                DD or DDS member removed (Mgmt
                                Reg/SCN only)
              31 (Lsb)          DD/DDS MEMBER ADDED          DD or DDS member added (Mgmt
                                Reg/SCN only)
              All others        RESERVED        Reserved

       Setting a bit to 1 indicates that type of SCN is enabled.
       The future assignment of any of the reserved values will be
       documented in a revision of RFC4171."
          REFERENCE      "RFC4171, Section 6.4.4"
          SYNTAX         BITS {
              reserved0(0), reserved1(1), reserved2(2),
              reserved3(3), reserved4(4), reserved5(5),
              reserved6(6), reserved7(7), reserved8(8),
              reserved9(9), reserved10(10), reserved11(11),
              reserved12(12), reserved13(13), reserved14(14),
              reserved15(15), reserved16(16), reserved17(17),
              reserved18(18), reserved19(19), reserved20(20),
              reserved21(21), reserved22(22), reserved23(23),
              initiatorAndSelfOnly(24),
              targetAndSelfOnly(25),
              managementRegistrationScn(26),
              objectRemoved(27),
              objectAdded(28),
              objectUpdated(29),
              ddOrDdsMemberRemoved(30),
              ddOrDdsMemberAdded(31)
                              }

      IsnsIfcpScnType ::= TEXTUAL-CONVENTION
          STATUS         current
          DESCRIPTION
      "The iFCP State Change Notification (SCN) values for an iFCP
       object as defined in RFC4171.
                Bit                Description
             ------------       ----------------
              24                INITIATOR AND SELF INFORMATION ONLY                Initiator and self information only
              25                TARGET AND SELF INFORMATION ONLY
              26                MANAGEMENT REGISTRATION/SCN
              27                OBJECT REMOVED                Target and self information only
              26                Management registration/SCN
              27                Object removed
              28                OBJECT ADDED                Object added
              29                OBJECT UPDATED                Object updated
              30                DD/DDS MEMBER REMOVED                DD or DDS member removed (Mgmt
                                Reg/SCN

   Gibbons                Expires April 2007                        15 only)
              31 (Lsb)          DD/DDS MEMBER ADDED          DD or DDS member added (Mgmt
                                Reg/SCN only)
              All others        RESERVED        Reserved

   Gibbons            Expires September 17, 2007                    15
       Setting a bit to 1 indicates that type of SCN is enabled.
       The future assignment of any of the reserved values will be
       documented in a revision of RFC4171."
          REFERENCE      "RFC4171, Section 6.6.12"
          SYNTAX         BITS {
              reserved0(0), reserved1(1), reserved2(2),
              reserved3(3), reserved4(4), reserved5(5),
              reserved6(6), reserved7(7), reserved8(8),
              reserved9(9), reserved10(10), reserved11(11),
              reserved12(12), reserved13(13), reserved14(14),
              reserved15(15), reserved16(16), reserved17(17),
              reserved18(18), reserved19(19), reserved20(20),
              reserved21(21), reserved22(22), reserved23(23),
              initiatorAndSelfOnly(24),
              targetAndSelfOnly(25),
              managementRegistrationScn(26),
              objectRemoved(27),
              objectAdded(28),
              objectUpdated(29),
              ddOrDdsMemberRemoved(30),
              ddOrDdsMemberAdded(31)
                              }

      IsnsFcPortRoleType ::= TEXTUAL-CONVENTION
          STATUS         current
          DESCRIPTION
      "The FC Port Role defines the functions of the registered
       object.  The definitiions definitions of each setting are defined in
       RFC4171.
                    Bit          Port Role
                 ---------       ---------
                    29            Control
                    30            FCP Initiator
                    31            FCP Target
                All others        RESERVED

       Setting a bit to 1 indicates the port has the corresponding
       characteristics.  The future assignment of any of the
       reserved values will be documented in a revision of
       RFC4171."
          REFERENCE      "RFC4171, Section 6.6.13"
          SYNTAX         BITS {
              reserved0(0), reserved1(1), reserved2(2),
              reserved3(3), reserved4(4), reserved5(5),
              reserved6(6), reserved7(7), reserved8(8),
              reserved9(9), reserved10(10), reserved11(11),
              reserved12(12), reserved13(13), reserved14(14),

   Gibbons                Expires April 2007                        16
              reserved15(15), reserved16(16), reserved17(17),
              reserved18(18), reserved19(19), reserved20(20),
              reserved21(21), reserved22(22), reserved23(23),
              reserved24(24), reserved25(25), reserved26(26),

   Gibbons            Expires September 17, 2007                    16
              reserved27(27), reserved28(28),
              control(29),
              initiator(30),
              target(31)
                              }

      IsnsSrvrDiscoveryMethodsType ::= TEXTUAL-CONVENTION
          STATUS         current
          DESCRIPTION
      "The types of iSNS Server discovery methods that are enabled
       on an iSNS Server.  The options are DHCP, SLP, multicast
       group iSNS heartbeat, broadcast group iSNS heartbeat,
       configured server list, and other.  The iSNS Server may
       support additional discovery methods not indicated."
          REFERENCE      "RFC4171, Section 2.5"
          SYNTAX         BITS {
                            dhcp(0),
                            slp(1),
                            multicastGroupHb(2),
                            broadcastHb(3),
                            cfgdServerList(4),
                            other(5)
                                  }

      --
      -- Internet Storage Name Service Management
      --

      isnsNotifications           OBJECT IDENTIFIER ::=
                                      { isnsMIB 0 }
      isnsObjects                 OBJECT IDENTIFIER ::=
                                      { isnsMIB 1 }
      isnsConformance             OBJECT IDENTIFIER ::=
                                      { isnsMIB 2 }

      --
      -- iSNS Server instance managed objects --------------------
      --

      isnsServerInfo OBJECT IDENTIFIER ::= { isnsObjects 1 }

      isnsServerTable             OBJECT-TYPE
          SYNTAX                  SEQUENCE OF IsnsServerEntry
          MAX-ACCESS              not-accessible
          STATUS                  current
          DESCRIPTION
      "This table provides a list of the iSNS Server instances

   Gibbons                Expires April 2007                        17
       that are managed through the same SNMP context."
          ::= { isnsServerInfo 1 }

      isnsServerEntry             OBJECT-TYPE

   Gibbons            Expires September 17, 2007                    17
          SYNTAX                  IsnsServerEntry
          MAX-ACCESS              not-accessible
          STATUS                  current
          DESCRIPTION
      "This is a row in the iSNS Server instance table.  The number
       of rows is dependent on the number of iSNS Server instances
       that are being managed through same SNMP context."
          INDEX   { isnsServerIndex }
          ::= { isnsServerTable 1 }

      IsnsServerEntry ::=
          SEQUENCE {
             isnsServerIndex           Unsigned32,
             isnsServerName            SnmpAdminString,
             isnsServerIsnsVersion     Unsigned32,
             isnsServerVendorInfo      SnmpAdminString,
             isnsServerPhysicalIndex   PhysicalIndex,
             isnsServerTcpPort         InetPortNumber,
             isnsServerUdpPort         InetPortNumber,
             isnsServerDiscontinuityTime
                                       TimeStamp,
             isnsServerRole            INTEGER,
             isnsServerDiscoveryMethodsEnabled
                                       IsnsSrvrDiscoveryMethodsType,
             isnsServerDiscoveryMcGroupType
                                       InetAddressType,
             isnsServerDiscoveryMcGroupAddress
                                       InetAddress,
             isnsServerEsiNonResponseThreshold
                                       Unsigned32,
             isnsServerEnableControlNodeMgtScn
                                       TruthValue,
             isnsServerDefaultDdDdsStatus
                                       INTEGER,
             isnsServerUpdateDdDdsSupported
                                       IsnsDdDdsModificationType,
             isnsServerUpdateDdDdsEnabled
                                       IsnsDdDdsModificationType
                   }

      isnsServerIndex             OBJECT-TYPE
          SYNTAX                  Unsigned32 ( 1 .. 4294967295 )
          MAX-ACCESS              not-accessible
          STATUS                  current
          DESCRIPTION
      "This object uniquely identifies the iSNS Server being
       managed by the SNMP context and is the key for this table.
       This is an instance index for each iSNS Server being

   Gibbons                Expires April 2007                        18
       managed.  The value of this object is used elsewhere in
       the MIB to reference specific iSNS Servers."
          ::= { isnsServerEntry 1 }

   Gibbons            Expires September 17, 2007                    18
      isnsServerName              OBJECT-TYPE
          SYNTAX                  SnmpAdminString (SIZE (0..255))
          MAX-ACCESS              read-only
          STATUS                  current
          DESCRIPTION
      "A non-unique name that can be assigned to the iSNS Server
       instance.  If not configured, then the string SHALL be
       zero-length."
          ::= { isnsServerEntry 2 }

      isnsServerIsnsVersion       OBJECT-TYPE
          SYNTAX                  Unsigned32 ( 0 .. 65535 )
          MAX-ACCESS              read-only
          STATUS                  current
          DESCRIPTION
      "The iSNS version value as contained in messages received
       from the current primary server.  The header of each iSNSP
       message contains the iSNS version of the sender.  If
       unknown the reported value is 0."
          REFERENCE               "RFC4171"
          DEFVAL                  { 1 }
          ::= { isnsServerEntry 3 }

      isnsServerVendorInfo        OBJECT-TYPE
          SYNTAX                  SnmpAdminString (SIZE (0..255))
          MAX-ACCESS              read-only
          STATUS                  current
          DESCRIPTION
      "If this server instance is utilizing the product of a
       particular 'vendor', then this managed object contains
       that vendor's name and version.  Otherwise, then the
       string SHALL be zero-length.  The format of the string
       is as follows: Vendor Name, Vendor Version, Vendor
       Defined Information.

             Field           Description
           ---------       ----------------
          Vendor Name      The name of the vendor (if one exists)
          Vendor Version   The version of the vendor product
          Vendor Defined   This follows the second comma in the
                           string, if one exists, and is vendor
                           defined
      "
          ::= { isnsServerEntry 4 }

      isnsServerPhysicalIndex     OBJECT-TYPE
          SYNTAX                  PhysicalIndex
          MAX-ACCESS              read-only

   Gibbons                Expires April 2007                        19
          STATUS                  current
          DESCRIPTION
      "An index identifying the network interface for this iSNS
       Server within a network entity.  This index maps to the

   Gibbons            Expires September 17, 2007                    19
       entPhysicalIndex of entPhysicalTable table in RFC4133.  The
       entPhysicalClass value for the table row must be 'port' as
       the interface must be able to send and receive data."
          REFERENCE           "RFC4133, RFC4171, Section 2.5 - 2.8"
          ::= { isnsServerEntry 5 }

      isnsServerTcpPort           OBJECT-TYPE
          SYNTAX                  InetPortNumber
          MAX-ACCESS              read-only
          STATUS                  current
          DESCRIPTION
      "Indicates the TCP port this iSNS instance is accepting
       iSNSP messages on, generally the iSNS well known port.
       The well known TCP port for iSNSP is 3205.  If TCP is
       not supported by this server instance, then the value
       is 0."
          ::= { isnsServerEntry 6 }

      isnsServerUdpPort           OBJECT-TYPE
          SYNTAX                  InetPortNumber
          MAX-ACCESS              read-only
          STATUS                  current
          DESCRIPTION
      "Indicates the UDP port this iSNS instance is accepting
       iSNSP messages on, generally the iSNS well known port.
       The well known UDP port for iSNSP is 3205.  If UDP is
       not supported by this server instance, then the value
       is 0."
          ::= { isnsServerEntry 7 }

      isnsServerDiscontinuityTime OBJECT-TYPE
           SYNTAX                 TimeStamp
           MAX-ACCESS             read-only
           STATUS                 current
           DESCRIPTION
      "The value of sysUpTime on the most recent occasion that
       this iSNS server became active or suffered a
       discontinuity."
          ::= { isnsServerEntry 8 }

      isnsServerRole              OBJECT-TYPE
           SYNTAX                 INTEGER { notSet(1),
                                            server(2),
                                            backupServer(3) }
           MAX-ACCESS             read-only
           STATUS                 current
           DESCRIPTION
      "The current operational mode of this iSNS Server instance.

   Gibbons                Expires April 2007                        20

             Value             Description
           ---------         ----------------
            notSet           The iSNS Server role is not

   Gibbons            Expires September 17, 2007                    20
                             configured.
            server           The iSNS Server instance is
                             an operational iSNS Server.
            backupServer     The iSNS Server instance is
                             currently acting as a backup."
          REFERENCE               "RFC4171, Section 2.7 - 2.8"
          ::= { isnsServerEntry 9 }

      isnsServerDiscoveryMethodsEnabled  OBJECT-TYPE
          SYNTAX                  IsnsSrvrDiscoveryMethodsType
          MAX-ACCESS              read-only
          STATUS                  current
          DESCRIPTION
      "Indicates the discovery methods currently enabled for
       this iSNS Server instance.  This allows a client to
       determine what discovery methods that can be used for
       this iSNS Server.  Additional methods of discovery may
       also be supported."
          ::= { isnsServerEntry 10 }

      isnsServerDiscoveryMcGroupType   OBJECT-TYPE
          SYNTAX                  InetAddressType
          MAX-ACCESS              read-only
          STATUS                  current
          DESCRIPTION
      "The type of Internet address in
       isnsServerDiscoveryMcGroupAddress.  If the address is
       specified, then it must be a valid multicast address and the
       value of this object must be ipv4(1), ipv6(2), ipv4z(3), or
       ipv6z(4); otherwise, then the value of this object is
       unknown(0), and the value of
       isnsServerDiscoveryMcGroupAddress is the zero-length string."
          ::= { isnsServerEntry 11 }

      isnsServerDiscoveryMcGroupAddress  OBJECT-TYPE
          SYNTAX                  InetAddress
          MAX-ACCESS              read-only
          STATUS                  current
          DESCRIPTION
      "The multicast group that iSNS Heartbeat messages are
       sent to if multicast based discovery has been enabled
       for this server instance.  If not configured, then the
       string SHALL be zero-length.  The format of this
       object is specified by isnsServerDiscoveryMcGroupType."
          ::= { isnsServerEntry 12 }

      isnsServerEsiNonResponseThreshold OBJECT-TYPE
          SYNTAX                  Unsigned32 ( 0 .. 65535 )

   Gibbons                Expires April 2007                        21
          MAX-ACCESS              read-only
          STATUS                  current
          DESCRIPTION
      "ESI Non-Response Threshold - the number of ESI

   Gibbons            Expires September 17, 2007                    21
       messages that will be sent without receiving a response
       before an entity is deregistered from the iSNS database.
       If
       A value of 0 then indicates Entities will never be deregistered
       due to non-receipt of ESI messages."
          REFERENCE "RFC4171, Section 2.4"
          DEFVAL                  { 3 }
          ::= { isnsServerEntry 13 }

      isnsServerEnableControlNodeMgtScn  OBJECT-TYPE
          SYNTAX                  TruthValue
          MAX-ACCESS              read-only
          STATUS                  current
          DESCRIPTION
      "Indicates if the iSNS Server administrative option for to send
       Management SCNs for to Control Nodes is enabled.  This is the option for a control node  Management
       SCNs are used by Control Nodes to
       register for monitor and control an
       iSNS Server.  If enabled, Control Nodes can register to
       receive Management SCNs sent by this
       server." SCNs."
          REFERENCE "RFC4171, Section 2.2.3, 2.4"
          DEFVAL                  { true }
          ::= { isnsServerEntry 14 }

      isnsServerDefaultDdDdsStatus OBJECT-TYPE
          SYNTAX                  INTEGER { inNoDomain(1),
                                            inDefaultDdAndDds(2) }
          MAX-ACCESS              read-only
          STATUS                  current
          DESCRIPTION
      "This indicates the Discovery Domain (DD) and Discovery
       Domain Set (DDS) membership status for a new device
       when registerd registered in the iSNS Server instance. Either the
       new device will not be in a DD/DDS, or will be placed
       into a default DD and default DDS.  The default setting
       is inNoDomain."
          REFERENCE "RFC4171, Section 2.4"
          DEFVAL                  { inNoDomain }
          ::= { isnsServerEntry 16 15 }

      isnsServerUpdateDdDdsSupported OBJECT-TYPE
          SYNTAX                  IsnsDdDdsModificationType
          MAX-ACCESS              read-only
          STATUS                  current
          DESCRIPTION
      "The methods that this iSNS Server instance supports
       to modify Discovery Domains and Discovery Domain Sets."
          REFERENCE  "RFC4171, Section 2.4"
          ::= { isnsServerEntry 17 16 }

      isnsServerUpdateDdDdsEnabled OBJECT-TYPE

   Gibbons                Expires April 2007                        22
          SYNTAX                  IsnsDdDdsModificationType
          MAX-ACCESS              read-only
          STATUS                  current

   Gibbons            Expires September 17, 2007                    22
          DESCRIPTION
      "This indicates the methods this server instance currently
       allows for modifying Discovery Domains and Discovery
       Domain Sets."
          REFERENCE  "RFC4171, Sec 2.2.2 and 2.4"
          ::= { isnsServerEntry 18 17 }

      --
      -- Count of objects currently registered in a server instance
      --

      isnsNumObjectsTable         OBJECT-TYPE
          SYNTAX                  SEQUENCE OF
                                      IsnsNumObjectsEntry
          MAX-ACCESS              not-accessible
          STATUS                  current
          DESCRIPTION
      "Table providing the number of registered objects of each
       type in the iSNS Server instance.  This table is optional
       to implement.  The number of entries is
       dependent upon the number of iSNS Server instances being
       managed."
          ::= { isnsServerInfo 2 }

      isnsNumObjectsEntry         OBJECT-TYPE
          SYNTAX                  IsnsNumObjectsEntry
          MAX-ACCESS              not-accessible
          STATUS                  current
          DESCRIPTION
      "Entry of an iSNS Server instance."
          AUGMENTS { isnsServerEntry }
           ::= { isnsNumObjectsTable 1 }

      IsnsNumObjectsEntry ::= SEQUENCE  {
           isnsNumDds             Unsigned32,             Gauge32,
           isnsNumDd              Unsigned32,              Gauge32,
           isnsNumEntities        Unsigned32,        Gauge32,
           isnsNumPortals         Unsigned32,         Gauge32,
           isnsNumPortalGroups    Unsigned32,    Gauge32,
           isnsNumIscsiNodes      Unsigned32,      Gauge32,
           isnsNumFcPorts         Unsigned32,         Gauge32,
           isnsNumFcNodes         Unsigned32         Gauge32
                                         }

      isnsNumDds                  OBJECT-TYPE
          SYNTAX                  Unsigned32                  Gauge32 ( 0 .. 4294967295 )
          MAX-ACCESS              read-only
          STATUS                  current
          DESCRIPTION
      "The current total number of Discovery Domain Sets

   Gibbons                Expires April 2007                        23
       in this iSNS instance.  This is the number of rows
       in the isnsDdsTable."
          ::= { isnsNumObjectsEntry 1 }

   Gibbons            Expires September 17, 2007                    23
      isnsNumDd                   OBJECT-TYPE
          SYNTAX                  Unsigned32                  Gauge32 ( 0 .. 4294967295 )
          MAX-ACCESS              read-only
          STATUS                  current
          DESCRIPTION
      "The current total number of Discovery Domains
       in this iSNS instance.  This is the number of rows in the
       isnsDdTable."
          ::= { isnsNumObjectsEntry 2 }

      isnsNumEntities             OBJECT-TYPE
          SYNTAX                  Unsigned32                  Gauge32 ( 0 .. 4294967295 )
          MAX-ACCESS              read-only
          STATUS                  current
          DESCRIPTION
      "The current number of Entities registered in this
       iSNS Server instance.  This is the number of rows in
       the isnsRegEntityTable for this instance."
          ::= { isnsNumObjectsEntry 3 }

      isnsNumPortals              OBJECT-TYPE
          SYNTAX                  Unsigned32                  Gauge32 ( 0 .. 4294967295 )
          MAX-ACCESS              read-only
          STATUS                  current
          DESCRIPTION
      "The current total number of Portals registered in iSNS.
       This is the number of rows in isnsRegPortalTable."
          ::= { isnsNumObjectsEntry 4 }

      isnsNumPortalGroups         OBJECT-TYPE
          SYNTAX                  Unsigned32                  Gauge32 ( 0 .. 4294967295 )
          MAX-ACCESS              read-only
          STATUS                  current
          DESCRIPTION
      "The current total number of Portal Groups registered in
       iSNS.  This is the number of rows in isnsRegPgTable."
          ::= { isnsNumObjectsEntry 5 }

      isnsNumIscsiNodes           OBJECT-TYPE
          SYNTAX                  Unsigned32                  Gauge32 ( 0 .. 4294967295 )
          MAX-ACCESS              read-only
          STATUS                  current
          DESCRIPTION
      "The current total number of iSCSI node entries registered
       in the iSNS.  This is the number rows in
       isnsRegIscsiNodeTable."
          ::= { isnsNumObjectsEntry 6 }

   Gibbons                Expires April 2007                        24

      isnsNumFcPorts              OBJECT-TYPE
          SYNTAX                  Unsigned32                  Gauge32 ( 0 .. 4294967295 )
          MAX-ACCESS              read-only

   Gibbons            Expires September 17, 2007                    24
          STATUS                  current
          DESCRIPTION
      "The current total number of FC Port entries registered
       in the iSNS.  This is the number of rows in
       isnsRegFcPortTable."
          ::= { isnsNumObjectsEntry 7 }

      isnsNumFcNodes              OBJECT-TYPE
          SYNTAX                  Unsigned32                  Gauge32 ( 0 .. 4294967295 )
          MAX-ACCESS              read-only
          STATUS                  current
          DESCRIPTION
      "The current total number of FC node entries registered
       in the iSNS. This is the number of rows in
       isnsRegFcNodeTable."
          ::= { isnsNumObjectsEntry 8 }

      --
      -- Control node information
      --

      isnsControlNodeInfo     OBJECT IDENTIFIER ::=
                                           { isnsServerInfo 3 }

      --
      -- Specific iSCSI Nodes authorized to register as Control
      -- Nodes
      --

      isnsControlNodeIscsiTable   OBJECT-TYPE
          SYNTAX                  SEQUENCE OF
                                    IsnsControlNodeIscsiEntry
          MAX-ACCESS              not-accessible
          STATUS                  current
          DESCRIPTION
      "Specified iSCSI Nodes that can register or are registered
       as control nodes.  The number of rows is dependent on the
       number of iSCSI Control Nodes."
          ::= { isnsControlNodeInfo 1 }

      isnsControlNodeIscsiEntry      OBJECT-TYPE
          SYNTAX                  IsnsControlNodeIscsiEntry
          MAX-ACCESS              not-accessible
          STATUS                  current
          DESCRIPTION
      "This is an iSCSI Control Node entry for a specific iSNS
       server instance."
           INDEX          { isnsServerIndex,
                            isnsControlNodeIscsiNodeIndex }

   Gibbons                Expires April 2007                        25
           ::= { isnsControlNodeIscsiTable 1 }

      IsnsControlNodeIscsiEntry ::= SEQUENCE {

   Gibbons            Expires September 17, 2007                    25
           isnsControlNodeIscsiNodeIndex     IsnsNodeIndexId,
           isnsControlNodeIscsiNodeName      SnmpAdminString,
           isnsControlNodeIscsiIsRegistered  TruthValue,
           isnsControlNodeIscsiRcvMgtSCN     TruthValue
                                          }

      isnsControlNodeIscsiNodeIndex  OBJECT-TYPE
          SYNTAX                  IsnsNodeIndexId
          MAX-ACCESS              not-accessible
          STATUS                  current
          DESCRIPTION
      "The iSCSI Index index for the iSCSI storage node authorized to act
       as a control node."
           ::= { isnsControlNodeIscsiEntry 1 }

      isnsControlNodeIscsiNodeName   OBJECT-TYPE
          SYNTAX                  SnmpAdminString (SIZE (0..223))
          MAX-ACCESS              read-only
          STATUS                  current
          DESCRIPTION
      "The iSCSI Name of the initiator or target associated with
       the storage node.  The iSCSI Name can not be longer then than
       223 bytes.  The iSNS Server internal maximum size is 224
       bytes to provide NULL termination.  This is the iSCSI Node
       Name for the storage node authorized and/or acting as a
       control node."
           ::= { isnsControlNodeIscsiEntry 2 }

      isnsControlNodeIscsiIsRegistered OBJECT-TYPE
          SYNTAX                  TruthValue
          MAX-ACCESS              read-only
          STATUS                  current
          DESCRIPTION
       "Indicates whether the control node is currently
        registered in the iSNS Server instance."
           ::= { isnsControlNodeIscsiEntry 3 }

      --
      -- Specific FC Ports authorized to register as Control
      -- Nodes
      --

      isnsControlNodeFcPortTable

      isnsControlNodeIscsiRcvMgtSCN  OBJECT-TYPE
          SYNTAX                  SEQUENCE OF
                                    IsnsControlNodeFcPortEntry                  TruthValue
          MAX-ACCESS              not-accessible              read-only
          STATUS                  current
          DESCRIPTION
      "Specified FC Ports that can register or are registered as
       control nodes.
       "Indicates whether the Control Node has registered to
        receive Management SCNs.  Management SCNs are sent to
        a Control Node if they are enabled, as indicated by
        isnsServerEnableControlNodeMgtScn, and the Control
        Node has registered for them."
          REFERENCE "RFC4171, Section 2.2.3, 2.4"
           ::= { isnsControlNodeIscsiEntry 4 }

      --
      -- Specific FC Ports authorized to register as Control

   Gibbons            Expires September 17, 2007                    26
      -- Nodes
      --

      isnsControlNodeFcPortTable  OBJECT-TYPE
          SYNTAX                  SEQUENCE OF
                                    IsnsControlNodeFcPortEntry
          MAX-ACCESS              not-accessible
          STATUS                  current
          DESCRIPTION
      "Specified FC Ports that can register or are registered as
       control nodes.  The number of rows is dependent on the

   Gibbons                Expires April 2007                        26
       number of FC Port Control Nodes."
          ::= { isnsControlNodeInfo 2 }

      isnsControlNodeFcPortEntry  OBJECT-TYPE
          SYNTAX                  IsnsControlNodeFcPortEntry
          MAX-ACCESS              not-accessible
          STATUS                  current
          DESCRIPTION
      "FC Port control node entry."
           INDEX          { isnsServerIndex,
                            isnsControlNodeFcPortName
                            isnsControlNodeFcPortWwpn }
           ::= { isnsControlNodeFcPortTable 1 }

      IsnsControlNodeFcPortEntry ::= SEQUENCE  {
           isnsControlNodeFcPortName
           isnsControlNodeFcPortWwpn          FcNameIdOrZero,
           isnsControlNodeFcPortIsRegistered  TruthValue,
           isnsControlNodeFcPortRcvMgtSCN     TruthValue
                                               }

      isnsControlNodeFcPortName

      isnsControlNodeFcPortWwpn   OBJECT-TYPE
          SYNTAX                  FcNameIdOrZero (SIZE(8))
          MAX-ACCESS              not-accessible
          STATUS                  current
          DESCRIPTION
      "The FC Port WWN World Wide Port Name that can and/or is acting
       as a control
       node Control Node for the specified iSNS Server.  Zero  A zero
       length string is not a valid
       value for this managed object.
       This managed object, combined with the isnsServerIndex, is
       the key for this table."
           ::= { isnsControlNodeFcPortEntry 1 }

      isnsControlNodeFcPortIsRegistered OBJECT-TYPE
          SYNTAX                  TruthValue
          MAX-ACCESS              read-only
          STATUS                  current
          DESCRIPTION
       "Indicates whether the control node is currently
        registered in the iSNS Server instance."
           ::= { isnsControlNodeFcPortEntry 2 }

      isnsControlNodeFcPortRcvMgtSCN OBJECT-TYPE

   Gibbons            Expires September 17, 2007                    27
          SYNTAX                  TruthValue
          MAX-ACCESS              read-only
          STATUS                  current
          DESCRIPTION
       "Indicates whether the Control Node has registered to
        receive Management SCNs.  Management SCNs are sent to
        a Control Node if they are enabled, as indicated by
        isnsServerEnableControlNodeMgtScn, and the Control
        Node has registered for them."
          REFERENCE "RFC4171, Section 2.2.3, 2.4"
           ::= { isnsControlNodeFcPortEntry 3 }

      --
      -- Discovery Domain Set information
      --

      isnsDdsInfo     OBJECT IDENTIFIER ::= { isnsServerInfo 4 }

      --
      -- Discovery Domain Set Registrations -----------------
      --

      isnsDdsTable                OBJECT-TYPE
          SYNTAX                  SEQUENCE OF IsnsDdsEntry
          MAX-ACCESS              not-accessible

   Gibbons                Expires April 2007                        27
          STATUS                  current
          DESCRIPTION
      "A table containing configuration information for each
       Discovery Domain Set (DDS) registered in the iSNS Server
       instance. The number of rows in the table is dependent
       on the number of DDSs registered in the specified iSNS
       server instance."
          ::= { isnsDdsInfo 1 }

      isnsDdsEntry                OBJECT-TYPE
          SYNTAX                  IsnsDdsEntry
          MAX-ACCESS              not-accessible
          STATUS                  current
          DESCRIPTION
      "Information on one Discovery Domain Set (DDS) registered
       in the iSNS Server instance."
          INDEX   { isnsServerIndex, isnsDdsId}
          ::= { isnsDdsTable 1 }

      IsnsDdsEntry ::=
          SEQUENCE {
             isnsDdsId             IsnsDiscoveryDomainSetId,
             isnsDdsSymbolicName   SnmpAdminString,
             isnsDdsStatus         IsnsDdsStatusType
                   }

      isnsDdsId                   OBJECT-TYPE

   Gibbons            Expires September 17, 2007                    28
          SYNTAX                  IsnsDiscoveryDomainSetId
          MAX-ACCESS              not-accessible
          STATUS                  current
          DESCRIPTION
      "The ID that refers to this Discovery Domain Set and
       index to the table."
          ::= { isnsDdsEntry 1 }

      isnsDdsSymbolicName         OBJECT-TYPE
          SYNTAX                  SnmpAdminString (SIZE (0..255))
          MAX-ACCESS              read-only
          STATUS                  current
          DESCRIPTION
      "The Discovery Domain Set Symbolic Name field contains
       a unique variable-length description (up to 255 bytes)
       that is associated with the DDS.  If a Symbolic Name is
       not provided, then one will be generated by the iSNS
       server."
          REFERENCE "RFC4171, Section 6"
          ::= { isnsDdsEntry 2 }

      isnsDdsStatus               OBJECT-TYPE
          SYNTAX                  IsnsDdsStatusType
          MAX-ACCESS              read-only
          STATUS                  current

   Gibbons                Expires April 2007                        28
          DESCRIPTION
      "The status of this Discovery Domain Set (DDS)."
          REFERENCE "RFC4171, Section 6.11.1.3"
          ::= { isnsDdsEntry 3 }

      --
      -- Discovery Domain Set Members --------------------
      --

      --
      -- DDS Membership Assignment
      --

      isnsDdsMemberTable          OBJECT-TYPE
          SYNTAX                  SEQUENCE OF IsnsDdsMemberEntry
          MAX-ACCESS              not-accessible
          STATUS                  current
          DESCRIPTION
      "A table containing Discovery Domains (DDs) that have
       been assigned to specific Discovery Domain Sets (DDSs).
       The number of rows in the table is dependent on the
       number of DD to DDS relationships in the iSNS instance."
          ::= { isnsDdsInfo 2 }

      isnsDdsMemberEntry          OBJECT-TYPE
          SYNTAX                  IsnsDdsMemberEntry

   Gibbons            Expires September 17, 2007                    29
          MAX-ACCESS              not-accessible
          STATUS                  current
          DESCRIPTION
      "The mapping of one Discovery Domain (DD) to a Discovery
       Domain Set (DDS).  This indicates the DD is a member of
       the DDS."
          INDEX   { isnsServerIndex,
                    isnsDdsId,
                    isnsDdsMemberDdId }
          ::= { isnsDdsMemberTable 1 }

      IsnsDdsMemberEntry ::=
          SEQUENCE {
             isnsDdsMemberDdId       IsnsDiscoveryDomainId,
             isnsDdsMemberSymbolicName SnmpAdminString
                   }

      isnsDdsMemberDdId           OBJECT-TYPE
          SYNTAX                  IsnsDiscoveryDomainId
          MAX-ACCESS              not-accessible
          STATUS                  current
          DESCRIPTION
      "The ID that identifies the Discovery Domain
       which is a member of the Discovery Domain Set."
          ::= { isnsDdsMemberEntry 1 }

   Gibbons                Expires April 2007                        29

      isnsDdsMemberSymbolicName   OBJECT-TYPE
          SYNTAX                  SnmpAdminString (SIZE (0..255))
          MAX-ACCESS              read-only
          STATUS                  current
          DESCRIPTION
      "The Symbolic Name of the Discovery Domain that is a member
       of this DDS.  This value SHALL be identical to the object
       isnsDdSymbolicName for the associated DD ID."
          REFERENCE "RFC4171, Section 6"
          ::= { isnsDdsMemberEntry 2 }

      --
      -- Discovery Domain information
      --

      isnsDdInfo     OBJECT IDENTIFIER ::= { isnsServerInfo 5 }

      --
      -- Discovery Domain Registrations ------------------------
      --

      isnsDdTable                 OBJECT-TYPE
          SYNTAX                  SEQUENCE OF IsnsDdEntry
          MAX-ACCESS              not-accessible
          STATUS                  current
          DESCRIPTION

   Gibbons            Expires September 17, 2007                    30
      "A table containing configuration information for each
       Discovery Domain (DD) registered in the iSNS.  The number
       of rows in the table is dependent on the number of DDs
       registered in the iSNS instance."
          ::= { isnsDdInfo 1 }

      isnsDdEntry                 OBJECT-TYPE
          SYNTAX                  IsnsDdEntry
          MAX-ACCESS              not-accessible
          STATUS                  current
          DESCRIPTION
      "Information on a Discovery Domain (DD) registered in
       the iSNS Server instance."
          INDEX   { isnsServerIndex, isnsDdId}
          ::= { isnsDdTable 1 }

      IsnsDdEntry::=
          SEQUENCE {
             isnsDdId             IsnsDiscoveryDomainId,
             isnsDdSymbolicName   SnmpAdminString,
             isnsDdFeatures       IsnsDdFeatureType
                   }

      isnsDdId                    OBJECT-TYPE
          SYNTAX                  IsnsDiscoveryDomainId

   Gibbons                Expires April 2007                        30
          MAX-ACCESS              not-accessible
          STATUS                  current
          DESCRIPTION
      "The ID that refers to this Discovery Domain, and the
       index to the table."
          REFERENCE "RFC4171, Section 6"
          ::= { isnsDdEntry 1 }

      isnsDdSymbolicName          OBJECT-TYPE
          SYNTAX                  SnmpAdminString (SIZE (0..255))
          MAX-ACCESS              read-only
          STATUS                  current
          DESCRIPTION
      "The Discovery Domain Symbolic Name field contains a
       unique variable-length description (up to 255 bytes)
       that is associated with the DD."
          REFERENCE "RFC4171, Section 6"
          ::= { isnsDdEntry 2 }

      isnsDdFeatures              OBJECT-TYPE
          SYNTAX                  IsnsDdFeatureType
          MAX-ACCESS              read-only
          STATUS                  current
          DESCRIPTION
      "This defines the features the Discovery Domain has."
          REFERENCE "RFC4171, Section 6.11.2.9"
          ::= { isnsDdEntry 3 }

   Gibbons            Expires September 17, 2007                    31
      --
      -- Discovery Domain Members --------------------
      --

      --
      -- DD iSCSI Node Membership Assignment
      --

      isnsDdIscsiMemberTable      OBJECT-TYPE
          SYNTAX                  SEQUENCE OF
                                    IsnsDdIscsiMemberEntry
          MAX-ACCESS              not-accessible
          STATUS                  current
          DESCRIPTION
      "A table containing iSCSI node indexes that have been
       assigned to specific DDs in this iSNS Server instance.  The
       number of rows in the table is dependent on the number of
       relationships between iSCSI Nodes and DDs registered in the
       iSNS instance."
          ::= { isnsDdInfo 2 }

      isnsDdIscsiMemberEntry      OBJECT-TYPE
          SYNTAX                  IsnsDdIscsiMemberEntry
          MAX-ACCESS              not-accessible

   Gibbons                Expires April 2007                        31
          STATUS                  current
          DESCRIPTION
      "The mapping of one iSCSI Node to a Discovery Domain to
       indicate membership in the DD.  The indexes are the iSNS
       server instance, the DD ID of the Discovery Domain, and
       the iSCSI Node Index of the iSCSI Node."
          INDEX   { isnsServerIndex,
                    isnsDdId,
                    isnsDdMemberIscsiIndex
                    isnsDdIscsiMemberIndex }
          ::= { isnsDdIscsiMemberTable 1 }

      IsnsDdIscsiMemberEntry::=
          SEQUENCE {
             isnsDdMemberIscsiIndex
             isnsDdIscsiMemberIndex   IsnsNodeIndexId,
             isnsDdMemberIscsiName
             isnsDdIscsiMemberName    SnmpAdminString,
             isnsDdMemberIsRegistered
             isnsDdIscsiMemberIsRegistered TruthValue
                   }

      isnsDdMemberIscsiIndex

      isnsDdIscsiMemberIndex      OBJECT-TYPE
          SYNTAX                  IsnsNodeIndexId
          MAX-ACCESS              not-accessible
          STATUS                  current
          DESCRIPTION
      "The iSCSI node index for this member iSCSI node entry.  This
       index is used to uniquely indicate this table entry,
       and provides a 1 to entry."
          REFERENCE "RFC4171, Section 6"
          ::= { isnsDdIscsiMemberEntry 1 mapping to a node name.  The
       iSCSI node name is too long to be used for an index
       directly.  The iSCSI node index used for a specific
       iSCSI node name MUST be indentical in all DDs, and is

       persistent across server reinitializations when the
       iSCSI node is a member of a Discovery Domain (DD)."
          REFERENCE "RFC4171, Section 6"
          ::= { isnsDdIscsiMemberEntry 1 }

      isnsDdMemberIscsiName       OBJECT-TYPE
          SYNTAX                  SnmpAdminString (SIZE (0..223))
          MAX-ACCESS              read-only
          STATUS                  current
          DESCRIPTION
      "The }

   Gibbons            Expires September 17, 2007                    32
      isnsDdIscsiMemberName       OBJECT-TYPE
          SYNTAX                  SnmpAdminString (SIZE (0..223))
          MAX-ACCESS              read-only
          STATUS                  current
          DESCRIPTION
      "The iSCSI Name associated with the storage node.  The
       iSCSI Name can not be longer then than 223 bytes.  The iSNS
       server internal maximum size is 224 bytes to provide
       NULL termination.  This is the iSCSI Name for the storage
       node that is a member of the DD.  This value maps 1 to 1
       to the isnsDdMemberIscsiIndex isnsDdIscsiMemberIndex node index.  The iSCSI Name
       field is too long to be easily used for an index directly.
       The node index used for a specific node name is only
       persistent across iSNS Server reinitializations for nodes
       that are in a Discovery Domain (DD) or are registered
       control nodes.  This value is only required during row

   Gibbons                Expires April 2007                        32
       creation if the storage node is not yet registered in the
       iSNS Server instance.  If the storage node is not yet
       registered, then the iSCSI Name MUST be provided with the
       iSCSI node index during row creation in order to create the
       1 to 1 mapping."
          REFERENCE "RFC4171, Section 6"
          ::= { isnsDdIscsiMemberEntry 2 }

      isnsDdMemberIsRegistered

      isnsDdIscsiMemberIsRegistered OBJECT-TYPE
          SYNTAX                  TruthValue
          MAX-ACCESS              read-only
          STATUS                  current
          DESCRIPTION
      "This indicates whether this member of the DD is currently
       registered in the iSNS Server instance.  iSCSI Storage
       Node members do not need to be currently registered in
       order for their iSCSI Name and Index to be added to
       a DD."
          REFERENCE "RFC4171, Section 6.11"
          ::= { isnsDdIscsiMemberEntry 3 }

      --
      -- DD Portal Membership Assignment
      --

      isnsDdPortalMemberTable     OBJECT-TYPE
          SYNTAX                  SEQUENCE OF
                                    IsnsDdPortalMemberEntry
          MAX-ACCESS              not-accessible
          STATUS                  current
          DESCRIPTION
      "A table containing currently registered and unregistered
       portal objects that have been explicitly assigned to
       specific DDs.  Explicit assignment of a portal to a DD
       is only done when a specific set of portals are prefered preferred
       for use within a DD.  Otherwise, for iSCSI, the Portal

   Gibbons            Expires September 17, 2007                    33
       Group Object should be used for identifying which portals
       provide access to which storage nodes. The number of rows
       in the table is dependent on the number of explicit
       relationships between portals and DDs registered in the
       iSNS."
          REFERENCE "RFC4171, Section 6"
          ::= { isnsDdInfo 3 }

      isnsDdPortalMemberEntry     OBJECT-TYPE
          SYNTAX                  IsnsDdPortalMemberEntry
          MAX-ACCESS              not-accessible
          STATUS                  current
          DESCRIPTION
      "Each entry indicates an explicit addition of a portal to a
       discovery domain.  The explicit addition of an entity portal
       to a discovery domain indicates the portal is preferred for

   Gibbons                Expires April 2007                        33
       access to nodes of the entity for this discovery domain.
       Registered Portal Group objects are used in iSCSI to
       indicate mapping of portals to nodes across all discovery
       domains.  Portals that have been explicitly mapped a
       discovery domain will be returned as part of a query that
       is scoped to that discovery domain.  If no portal of an
       entity has been explicitly mapped to a discovery domain,
       then all portals of the entity that provide access to a
       storage node are returned as part of a query.  The table
       indexes are the server instance, the DD ID of the Discovery
       Domain, and the Portal Index of the portal."
          INDEX   { isnsServerIndex,
                    isnsDdId,
                    isnsDdMemberPortalIndex
                    isnsDdPortalMemberIndex }
          ::= { isnsDdPortalMemberTable 1 }

      IsnsDdPortalMemberEntry ::=
          SEQUENCE {
             isnsDdMemberPortalIndex
             isnsDdPortalMemberIndex        IsnsPortalIndexId,
             isnsDdMemberPortalAddressType
             isnsDdPortalMemberAddressType  InetAddressType,
             isnsDdMemberPortalAddress
             isnsDdPortalMemberAddress      InetAddress,
             isnsDdMemberPortalPortType
             isnsDdPortalMemberPortType     IsnsPortalPortTypeId,
             isnsDdMemberPortalPort
             isnsDdPortalMemberPort         InetPortNumber,
             isnsDdMemberPortalIsRegistered
             isnsDdPortalMemberIsRegistered TruthValue
                   }

      isnsDdMemberPortalIndex

      isnsDdPortalMemberIndex     OBJECT-TYPE
          SYNTAX                  IsnsPortalIndexId
          MAX-ACCESS              not-accessible
          STATUS                  current
          DESCRIPTION
      "The index for a portal explicitly contained in the discovery
       domain.  The Portal Index used for a specific portal
       IP-address  This managed object, combined with isnsServerIndex
       and port number pair is only persistent across
       reboots for portals that have been explicitly added to a
       Discovery Domain (DD).  If a portal isnsDdId, is not explicitly
       registered in any DD, then the index used key for a portal can
       change after a server reinitialization." this table."
          REFERENCE "RFC4171, Section 6"
          ::= { isnsDdPortalMemberEntry 1 }

      isnsDdMemberPortalAddressType

   Gibbons            Expires September 17, 2007                    34
      isnsDdPortalMemberAddressType  OBJECT-TYPE
          SYNTAX                  InetAddressType
          MAX-ACCESS              read-only
          STATUS                  current
          DESCRIPTION
      "The type of Inet address in isnsDdMemberPortalAddress." isnsDdPortalMemberAddress.  If
       the address is specified, then it must be a valid unicast
       address and the value of this object must be ipv4(1),
       ipv6(2), ipv4z(3), or ipv6z(4); otherwise, then the value
       of this object is unknown(0), and the value of
       isnsDdPortalMemberAddress is the zero-length string."
          ::= { isnsDdPortalMemberEntry 2 }

      isnsDdMemberPortalAddress

      isnsDdPortalMemberAddress   OBJECT-TYPE
          SYNTAX                  InetAddress
          MAX-ACCESS              read-only

   Gibbons                Expires April 2007                        34
          STATUS                  current
          DESCRIPTION
      "The Inet Address for the portal." portal.  The format of this
       object is specified by isnsDdPortalMemberAddressType."
          REFERENCE "RFC4171, Section 6"
          ::= { isnsDdPortalMemberEntry 3 }

      isnsDdMemberPortalPortType

      isnsDdPortalMemberPortType  OBJECT-TYPE
          SYNTAX                  IsnsPortalPortTypeId
          MAX-ACCESS              read-only
          STATUS                  current
          DESCRIPTION
      "The port type for the portal, either UDP or TCP."
          REFERENCE "RFC4171, Section 6"
          ::= { isnsDdPortalMemberEntry 4 }

      isnsDdMemberPortalPort

      isnsDdPortalMemberPort      OBJECT-TYPE
          SYNTAX                  InetPortNumber ( 1 .. 65535 )
          MAX-ACCESS              read-only
          STATUS                  current
          DESCRIPTION
      "The port number for the portal.  Whether the portal
       type is TCP or UDP is indicated by isnsDdPortalPortType."
       isnsDdPortalMemberPortType."
          REFERENCE "RFC4171, Section 6"
          ::= { isnsDdPortalMemberEntry 5 }

      isnsDdMemberPortalIsRegistered

      isnsDdPortalMemberIsRegistered OBJECT-TYPE
          SYNTAX                  TruthValue
          MAX-ACCESS              read-only
          STATUS                  current
          DESCRIPTION
      "This indicates whether this member of the DD is currently
       registered in the iSNS Server instance.  Portals that are
       DD members do not need to be currently registered in

   Gibbons            Expires September 17, 2007                    35
       order for them to be added to a DD."
          REFERENCE "RFC4171, Section 6.11"
          ::= { isnsDdPortalMemberEntry 6 }

      --
      -- DD FC Port Membership Assignment
      --

      isnsDdFcPortMemberTable     OBJECT-TYPE
          SYNTAX                  SEQUENCE OF
                                    IsnsDdFcPortMemberEntry
          MAX-ACCESS              not-accessible
          STATUS                  current
          DESCRIPTION
      "A table containing FC Port World Wide Names (WWN) that
       have been assigned to specific DDs.  The number of rows
       in the table is dependent on the number of relationships
       between FC Ports and DDs registered in the iSNS."
          ::= { isnsDdInfo 4 }

   Gibbons                Expires April 2007                        35

      isnsDdFcPortMemberEntry     OBJECT-TYPE
          SYNTAX                  IsnsDdFcPortMemberEntry
          MAX-ACCESS              not-accessible
          STATUS                  current
          DESCRIPTION
      "The association of one FC Port with a Discovery Domain.
       Membership of an FC Port in a Discovery Domain is
       indicated by creating a row for the appropriate DD ID
       and FC Port WWN."
          INDEX   { isnsServerIndex,
                    isnsDdId,
                    isnsDdMemberFcPortName
                    isnsDdFcPortMemberPortName }
          ::= { isnsDdFcPortMemberTable 1 }

      IsnsDdFcPortMemberEntry ::=
          SEQUENCE {
             isnsDdMemberFcPortName
             isnsDdFcPortMemberPortName FcNameIdOrZero,
             isnsDdMemberFcIsRegistered
             isnsDdFcPortMemberIsRegistered TruthValue
          }

      isnsDdMemberFcPortName

      isnsDdFcPortMemberPortName  OBJECT-TYPE
          SYNTAX                  FcNameIdOrZero (SIZE(8))
          MAX-ACCESS              not-accessible
          STATUS                  current
          DESCRIPTION
      "The Port WWN the FC Port that is a member of the DD. The
       value MUST be a valid FC WWN, as per the FC-GS standard.
       This managed object, combined with the isnsServerIndex
       and isnsDdId are the key for this table.  Zero  A zero-length
       string is not a valid value for this managed object."
          REFERENCE "RFC4171, Section 6"
          ::= { isnsDdFcPortMemberEntry 1 }

      isnsDdMemberFcIsRegistered

   Gibbons            Expires September 17, 2007                    36
      isnsDdFcPortMemberIsRegistered OBJECT-TYPE
          SYNTAX                  TruthValue
          MAX-ACCESS              read-only
          STATUS                  current
          DESCRIPTION
      "This indicates whether this member of the DD is currently
       registered in the iSNS Server instance."
          REFERENCE "RFC4171, Section 6.11"
          ::= { isnsDdFcPortMemberEntry 2 }

      --
      --  Registered Device Information
      --

      isnsReg    OBJECT IDENTIFIER ::= { isnsServerInfo 6 }

      isnsRegEntityInfo           OBJECT IDENTIFIER
                                     ::= { isnsReg    1 }

   Gibbons                Expires April 2007                        36

      --
      -- iSNS Registered Entities Table
      --

      isnsRegEntityTable          OBJECT-TYPE
          SYNTAX                  SEQUENCE OF IsnsRegEntityEntry
          MAX-ACCESS              not-accessible
          STATUS                  current
          DESCRIPTION
      "A table containing registered Entity objects in each iSNS
       server instance.  The number of entries in the table is
       dependent on the number of Entity objects registered in the
       iSNS Server instances.  All Entity objects are registered in
       the iSNS using the iSNS protocol."
          ::= { isnsRegEntityInfo 1 }

      isnsRegEntityEntry          OBJECT-TYPE
          SYNTAX                  IsnsRegEntityEntry
          MAX-ACCESS              not-accessible
          STATUS                  current
          DESCRIPTION
      "Information on one registered Entity object in an iSNS
       server instance."
          INDEX   { isnsServerIndex,
                    isnsRegEntityIndex }
          ::= { isnsRegEntityTable 1 }

      IsnsRegEntityEntry ::=
          SEQUENCE {
             isnsRegEntityIndex          IsnsEntityIndexId,          IsnsEntityIndexIdOrZero,
             isnsRegEntityEID            SnmpAdminString,
             isnsRegEntityProtocol       Unsigned32,

   Gibbons            Expires September 17, 2007                    37
             isnsRegEntityManagementAddressType
                                         InetAddressType,
             isnsRegEntityManagementAddress
                                         InetAddress,
             isnsRegEntityTimestamp      TimeStamp,
             isnsRegEntityVersionMin     Unsigned32,
             isnsRegEntityVersionMax     Unsigned32,
             isnsRegEntityRegistrationPeriod
                                         Unsigned32
                  }

      isnsRegEntityIndex          OBJECT-TYPE
          SYNTAX                  IsnsEntityIndexId                  IsnsEntityIndexIdOrZero
                                         ( 1 .. 4294967295 )
          MAX-ACCESS              not-accessible
          STATUS                  current
          DESCRIPTION
      "The Entity Index for this entity.  This integer based index is assigned
       by the iSNS Server when an Entity is initially registered.
       The Entity Index can be used to represent a

   Gibbons                Expires April 2007                        37 registered
       Entity object in situations where the Entity EID would
       be too long/unwieldy."
          REFERENCE "RFC4171, Section 6"
          ::= { isnsRegEntityEntry long/unwieldy.  Zero is not a valid value for this
       object."
          REFERENCE "RFC4171, Section 6"
          ::= { isnsRegEntityEntry 1 }

      isnsRegEntityEID            OBJECT-TYPE
          SYNTAX                  SnmpAdminString (SIZE (0..255))
          MAX-ACCESS              read-only
          STATUS                  current
          DESCRIPTION
      "The EID is a unique registered Entity object identifier, as
       specified in the iSNS Specification.  This is the iSNS
       Entity Identifier for the registered Entity object."
          REFERENCE "RFC4171, Section 6"
          ::= { isnsRegEntityEntry 2 }

      isnsRegEntityProtocol       OBJECT-TYPE
          SYNTAX                  Unsigned32 ( 1 .. 4294967295 )
          MAX-ACCESS              read-only
          STATUS                  current
          DESCRIPTION
      "The block storage protocol supported by this entity, as
       defined in the iSNS Specification, Section 6.2.2.  The
       following values are initially assigned.

                 Type Value       Entity Type
                 ----------       -----------
                    1             No Protocol
                    2             iSCSI
                    3             iFCP
                  All Others      As assigned by IANA

   Gibbons            Expires September 17, 2007                    38
       The full set of current Block Storage Protocols are
       specified in the IANA-maintained registry of assigned
       values for the ISNS protocol.
       iSNS parameters.  Please refer to RFC4171 and the iSNS
       parameters maintained at IANA."
          REFERENCE  "RFC4171, Section 6.2.2, and
                      www.iana.org/assignments/isns-parameters" IANA Assignments"
          ::= { isnsRegEntityEntry 3 }

      isnsRegEntityManagementAddressType OBJECT-TYPE
          SYNTAX                  InetAddressType
          MAX-ACCESS              read-only
          STATUS                  current
          DESCRIPTION
      "The type of Inet address in isnsRegEntityManagementAddress." isnsRegEntityManagementAddress.
       If the address is specified, then it must be a valid unicast
       address and the value of this object must be ipv4(1),
       ipv6(2), ipv4z(3), or ipv6z(4); otherwise, then the value of
       this object is unknown(0), and the value of
       isnsRegEntityManagementAddress is the zero-length string."
          ::= { isnsRegEntityEntry 4 }

      isnsRegEntityManagementAddress OBJECT-TYPE
          SYNTAX                  InetAddress
          MAX-ACCESS              read-only
          STATUS                  current

   Gibbons                Expires April 2007                        38
          DESCRIPTION
      "The iSNS Management IP Address for the registred registered Entity
       object."
       object.  The format of this object is specified by
       isnsRegEntityManagementAddressType."
          REFERENCE "RFC4171, Section 6"
          ::= { isnsRegEntityEntry 5 }

      isnsRegEntityTimestamp      OBJECT-TYPE
          SYNTAX                  TimeStamp
          MAX-ACCESS              read-only
          STATUS                  current
          DESCRIPTION
      "The iSNS Entity Registration Timestamp for the registred registered
       Entity object.  This is the most recent date and time that
       the registered Entity object, and associated registered
       objects contained in the Entity, were registered or
       updated."
          REFERENCE "RFC4171, Section 6"
          ::= { isnsRegEntityEntry 6 }

      isnsRegEntityVersionMin     OBJECT-TYPE
          SYNTAX                  Unsigned32 ( 0 .. 65535 254 | 255 )
          MAX-ACCESS              read-only
          STATUS                  current
          DESCRIPTION
      "The iSNS Entity Protocol Version Range minimum value. version supported for the block storage protocol
       specified by isnsRegEntityProtocol.  The protocol version

   Gibbons            Expires September 17, 2007                    39
       specified can be from 1 to 254.  A value of x'FF' 255 is a wildcard value
       value, indicating no minimum to
       the protocol versions supported by version value has been specified
       for this Entity.  Entity registrations with an
       isnsRegEntityProtocol set to No Protocol
       always of 'No Protocol' SHALL have a minimum version an
       isnsRegEntityVersionMin value of 0."
          REFERENCE "RFC4171, Section 6" 6.2.5"
          ::= { isnsRegEntityEntry 7 }

      isnsRegEntityVersionMax     OBJECT-TYPE
          SYNTAX                  Unsigned32 ( 0 .. 65535 254 | 255 )
          MAX-ACCESS              read-only
          STATUS                  current
          DESCRIPTION
      "The iSNS Entity Protocol Version Range maximum value. version supported for the block storage protocol
       specified by isnsRegEntityProtocol.  The protocol version
       specified can be from 1 to 254.  A value of x'FF' 255 is a wildcard value
       value, indicating no maximum to
       the protocol versions supported by version value has been specified
       for this Entity.  Entity registrations with an
       isnsRegEntityProtocol set to No Protocol
       always of 'No Protocol' SHALL have a maximum version an
       isnsRegEntityVersionMax value of 0."
          REFERENCE "RFC4171, Section 6" 6.2.5"
          ::= { isnsRegEntityEntry 8 }

      isnsRegEntityRegistrationPeriod OBJECT-TYPE
          SYNTAX                  Unsigned32 ( 0 .. 4294967295 )
          UNITS                   "seconds"
          MAX-ACCESS              read-only
          STATUS                  current
          DESCRIPTION
      "The iSNS Entity Status Inquiry (ESI) registration period
       which indicates the maximum time, in seconds, that the

   Gibbons                Expires April 2007                        39
       registration will be maintained without receipt of an iSNSP
       message from the entity.  If the Registration Period is set
       to 0, then the Entity SHALL NOT be deregistered due to no
       contact with the entity."
          REFERENCE "RFC4171, Section 6"
          ::= { isnsRegEntityEntry 9 }

      --
      -- Registered Objects Associated With an Entity Information
      --

      isnsRegEntityNumObjectsTable    OBJECT-TYPE
          SYNTAX                  SEQUENCE OF
                                    IsnsRegEntityNumObjectsEntry
          MAX-ACCESS              not-accessible
          STATUS                  current
          DESCRIPTION
      "A table containing information on the number of registered
       objects associated with a registered Entity in the iSNS
       server instance.  This table is optional to implement.  The number of entries in the table is
       dependent on the number of registered Entity objects in the

   Gibbons            Expires September 17, 2007                    40
       iSNS."
          ::= { isnsRegEntityInfo 2 }

      isnsRegEntityNumObjectsEntry    OBJECT-TYPE
          SYNTAX                  IsnsRegEntityNumObjectsEntry
          MAX-ACCESS              not-accessible
          STATUS                  current
          DESCRIPTION
      "Information on the number of registered objects associated
       with a registered Entity object in an iSNS Server instance."
          INDEX   { isnsServerIndex,
                    isnsRegEntityIndex }
          ::= { isnsRegEntityNumObjectsTable 1 }

      IsnsRegEntityNumObjectsEntry ::=
          SEQUENCE {
             isnsRegEntityInfoNumPortals      Unsigned32,      Gauge32,
             isnsRegEntityInfoNumPortalGroups Unsigned32, Gauge32,
             isnsRegEntityInfoNumIscsiNodes   Unsigned32,   Gauge32,
             isnsRegEntityInfoNumFcPorts      Unsigned32,      Gauge32,
             isnsRegEntityInfoNumFcNodes      Unsigned32      Gauge32
                  }

      isnsRegEntityInfoNumPortals OBJECT-TYPE
          SYNTAX                  Unsigned32                  Gauge32 ( 0 .. 4294967295 )
          MAX-ACCESS              read-only
          STATUS                  current
          DESCRIPTION
      "The number of Portals associated with this Entity."
          ::= { isnsRegEntityNumObjectsEntry 1 }

   Gibbons                Expires April 2007                        40

      isnsRegEntityInfoNumPortalGroups OBJECT-TYPE
          SYNTAX                  Unsigned32                  Gauge32 ( 0 .. 4294967295 )
          MAX-ACCESS              read-only
          STATUS                  current
          DESCRIPTION
      "The number of Portal Groups associated with this Entity."
          ::= { isnsRegEntityNumObjectsEntry 2 }

      isnsRegEntityInfoNumIscsiNodes OBJECT-TYPE
          SYNTAX                  Unsigned32                  Gauge32 ( 0 .. 4294967295 )
          MAX-ACCESS              read-only
          STATUS                  current
          DESCRIPTION
      "The number of iSCSI Storage Nodes associated with this
       Entity."
          ::= { isnsRegEntityNumObjectsEntry 3 }

      isnsRegEntityInfoNumFcPorts OBJECT-TYPE
          SYNTAX                  Unsigned32                  Gauge32 ( 0 .. 4294967295 )
          MAX-ACCESS              read-only
          STATUS                  current

   Gibbons            Expires September 17, 2007                    41
          DESCRIPTION
      "The number of FC Ports associated with this Entity."
          ::= { isnsRegEntityNumObjectsEntry 4 }

      isnsRegEntityInfoNumFcNodes OBJECT-TYPE
          SYNTAX                  Unsigned32                  Gauge32 ( 0 .. 4294967295 )
          MAX-ACCESS              read-only
          STATUS                  current
          DESCRIPTION
      "The number of FC Nodes associated with this Entity."
          ::= { isnsRegEntityNumObjectsEntry 5 }

      --
      -- iSNS Registered Portal Information
      --

      isnsRegPortalInfo           OBJECT IDENTIFIER
                                     ::= { isnsReg  2 }

      --
      -- iSNS Registered Portal Table
      --

      isnsRegPortalTable          OBJECT-TYPE
          SYNTAX                  SEQUENCE OF IsnsRegPortalEntry
          MAX-ACCESS              not-accessible
          STATUS                  current
          DESCRIPTION
      "A table containing the registered Portals in the iSNS.
       The number of entries is dependent on the number of
       Portals registered in the iSNS."

   Gibbons                Expires April 2007                        41
          ::= { isnsRegPortalInfo 1 }

      isnsRegPortalEntry          OBJECT-TYPE
          SYNTAX                  IsnsRegPortalEntry
          MAX-ACCESS              not-accessible
          STATUS                  current
          DESCRIPTION
      "Information on one registered Entity Portal in the iSNS.
       The Entity Index is part of the table index to quickly
       find Portals that support a specific Entity."
          INDEX   { isnsServerIndex,
                    isnsRegEntityIndex,
                    isnsRegPortalPortalIndex }
          ::= { isnsRegPortalTable 1 }

      IsnsRegPortalEntry ::=
          SEQUENCE {
             isnsRegPortalPortalIndex    IsnsPortalIndexId,
             isnsRegPortalAddressType    InetAddressType,
             isnsRegPortalAddress        InetAddress,
             isnsRegPortalPortType       IsnsPortalPortTypeId,

   Gibbons            Expires September 17, 2007                    42
             isnsRegPortalPort           InetPortNumber,
             isnsRegPortalSymbolicName   SnmpAdminString,
             isnsRegPortalEsiInterval    Unsigned32,
             isnsRegPortalEsiPortType    IsnsPortalPortTypeId,
             isnsRegPortalEsiPort        InetPortNumber,
             isnsRegPortalScnPortType    IsnsPortalPortTypeId,
             isnsRegPortalScnPort        InetPortNumber,
             isnsRegPortalSecurityInfo   IsnsPortalSecurityType
                  }

      isnsRegPortalPortalIndex    OBJECT-TYPE
          SYNTAX                  IsnsPortalIndexId
          MAX-ACCESS              not-accessible
          STATUS                  current
          DESCRIPTION
      "The Portal Index index for this node.  The index is created by the
       iSNS Server for mapping between registered objects.  The
       Portal Index used for a specific portal IP-address and port
       number pair is only persistent across reboots for portals
       that have been explicitly added to a Discovery Domain (DD).
       If a portal is not explicitly registered in any DD, then the
       index used for a portal can change after a server
       reinitialization." Entity Portal."
          REFERENCE "RFC4171, Section 6"
          ::= { isnsRegPortalEntry 1 }

      isnsRegPortalAddressType    OBJECT-TYPE
          SYNTAX                  InetAddressType
          MAX-ACCESS              read-only
          STATUS                  current
          DESCRIPTION

   Gibbons                Expires April 2007                        42
      "The type of Inet address in isnsRegPortalAddress." isnsRegPortalAddress.  If the
       address is specified, then it must be a valid unicast
       address and the value of this object must be ipv4(1),
       ipv6(2), ipv4z(3), or ipv6z(4); otherwise, then the value
       of this object is unknown(0), and the value of
       isnsRegPortalAddress is the zero-length string."
          ::= { isnsRegPortalEntry 2 }

      isnsRegPortalAddress        OBJECT-TYPE
          SYNTAX                  InetAddress
          MAX-ACCESS              read-only
          STATUS                  current
          DESCRIPTION
      "The Inet Address for this Portal as defined in the iSNS
       Specification, RFC4171." RFC4171.  The format of this object is
       specified by isnsRegPortalAddressType."
          REFERENCE "RFC4171, Section 6"
          ::= { isnsRegPortalEntry 3 }

      isnsRegPortalPortType       OBJECT-TYPE
          SYNTAX                  IsnsPortalPortTypeId
          MAX-ACCESS              read-only
          STATUS                  current
          DESCRIPTION
      "The port type for this Portal, either UDP or TCP, as
       defined in the iSNS Specification, RFC4171."
          REFERENCE "RFC4171, Section 6"
          ::= { isnsRegPortalEntry 4 }

   Gibbons            Expires September 17, 2007                    43
      isnsRegPortalPort           OBJECT-TYPE
          SYNTAX                  InetPortNumber ( 1 .. 65535 )
          MAX-ACCESS              read-only
          STATUS                  current
          DESCRIPTION
      "The port number for this Portal as defined in the
       iSNS Specification, RFC4171.  Whether the Portal type
       is TCP or UDP is indicated by isnsRegPortalPortType."
          REFERENCE "RFC4171, Section 6"
          ::= { isnsRegPortalEntry 5 }

      isnsRegPortalSymbolicName   OBJECT-TYPE
          SYNTAX                  SnmpAdminString (SIZE (0..255))
          MAX-ACCESS              read-only
          STATUS                  current
          DESCRIPTION
      "The optional Symbolic Name for this Portal as defined in the iSNS
       Specification, RFC4171.  If not provided then the string
       SHALL be zero-length."
          REFERENCE "RFC4171, Section 6"
          ::= { isnsRegPortalEntry 6 }

      isnsRegPortalEsiInterval    OBJECT-TYPE
          SYNTAX                  Unsigned32 ( 0 .. 4294967295 65535 )
          UNITS                   "seconds"
          MAX-ACCESS              read-only
          STATUS                  current
          DESCRIPTION
      "The Entity Status Inquiry (ESI) Interval for this Portal
       as defined in the iSNS Specification, RFC4171."

   Gibbons                Expires April 2007                        43 RFC4171.  A value of
       0 indicates that ESI monitoring has not be configured for
       this Portal."
          REFERENCE "RFC4171, Section 6" 6.3.4"
          ::= { isnsRegPortalEntry 7 }

      isnsRegPortalEsiPortType    OBJECT-TYPE
          SYNTAX                  IsnsPortalPortTypeId
          MAX-ACCESS              read-only
          STATUS                  current
          DESCRIPTION
      "The port type for the ESI Port, either UDP or TCP, as
       defined in the iSNS Specification, RFC4171."
          REFERENCE "RFC4171, Section 6"
          ::= { isnsRegPortalEntry 8 }

      isnsRegPortalEsiPort        OBJECT-TYPE
          SYNTAX                  InetPortNumber
          MAX-ACCESS              read-only
          STATUS                  current
          DESCRIPTION
      "The TCP or UDP port number used for ESI monitoring.  Whether

   Gibbons            Expires September 17, 2007                    44
       the port type is TCP or UDP is indicated by
       isnsRegPortalEsiPortType."
       isnsRegPortalEsiPortType.  A value of 0 indicates that ESI
       monitoring is not enabled for this Portal."
          REFERENCE "RFC4171, Section 6"
          ::= { isnsRegPortalEntry 9 }

      isnsRegPortalScnPortType    OBJECT-TYPE
          SYNTAX                  IsnsPortalPortTypeId
          MAX-ACCESS              read-only
          STATUS                  current
          DESCRIPTION
      "The port type for the SCN Port, either UDP or TCP, as
       defined in the iSNS Specification, RFC4171."
          REFERENCE "RFC4171, Section 6"
          ::= { isnsRegPortalEntry 10 }

      isnsRegPortalScnPort        OBJECT-TYPE
          SYNTAX                  InetPortNumber
          MAX-ACCESS              read-only
          STATUS                  current
          DESCRIPTION
      "The TCP or UDP port used to receive SCN messages from the
       iSNS Server.  Whether the port type is TCP or UDP is
       indicated by isnsRegPortalScnPortType." isnsRegPortalScnPortType.  A value of 0
       indicates that SCN message receipt is not enabled for this
       Portal."
          REFERENCE "RFC4171, Section 6"
          ::= { isnsRegPortalEntry 11 }

      isnsRegPortalSecurityInfo   OBJECT-TYPE
          SYNTAX                  IsnsPortalSecurityType
          MAX-ACCESS              read-only
          STATUS                  current
          DESCRIPTION
      "Indicates security attribute settings for the Portal as
       registered in iSNS server.  The bit for bitmapVALID must

   Gibbons                Expires April 2007                        44
       be set in order for this attribute to contain valid
       information.  Setting a bit to 1 indicates the
       feature is enabled."
          REFERENCE "RFC4171, Section 6.3.9"
          ::= { isnsRegPortalEntry 12 }

      --
      -- iSNS Registered Portal Group Information
      --

      isnsRegPortalGroupInfo      OBJECT IDENTIFIER
                                     ::= { isnsReg  3 }

      --
      -- iSNS Registered Portal Group (PG) Table
      --

   Gibbons            Expires September 17, 2007                    45
      isnsRegPgTable              OBJECT-TYPE
          SYNTAX                  SEQUENCE OF IsnsRegPgEntry
          MAX-ACCESS              not-accessible
          STATUS                  current
          DESCRIPTION
      "A table containing the registered Portal Groups (PGs) in
       the iSNS Server instance.  The number of entries is
       dependent on the number of Portal Groups registered in
       the iSNS."
          ::= { isnsRegPortalGroupInfo 1 }

      isnsRegPgEntry              OBJECT-TYPE
          SYNTAX                  IsnsRegPgEntry
          MAX-ACCESS              not-accessible
          STATUS                  current
          DESCRIPTION
      "Information on one registered Portal Group in the iSNS
       server instance.  The Entity Index is part of the table
       index to quickly find Portal Groups that support Portals
       and iSCSI Storage Nodes in a specific Entity."
          INDEX   { isnsServerIndex,
                    isnsRegEntityIndex,
                    isnsRegPgIndex }
          ::= { isnsRegPgTable 1 }

      IsnsRegPgEntry ::=
          SEQUENCE {
             isnsRegPgIndex              IsnsPortalGroupIndexId,
             isnsRegPgIscsiNodeIndex     IsnsNodeIndexId,
             isnsRegPgIscsiName          SnmpAdminString,
             isnsRegPgPortalPortalIndex  IsnsPortalIndexId,
             isnsRegPgPortalAddressType  InetAddressType,
             isnsRegPgPortalAddress      InetAddress,
             isnsRegPgPortalPortType     IsnsPortalPortTypeId,
             isnsRegPgPortalPort         InetPortNumber,

   Gibbons                Expires April 2007                        45
             isnsRegPgPGT                IsnsPortalGroupTagIdOrNull
                   }

      isnsRegPgIndex              OBJECT-TYPE
          SYNTAX                  IsnsPortalGroupIndexId
          MAX-ACCESS              not-accessible
          STATUS                  current
          DESCRIPTION
      "The PG Index for this node.  The index is created by the
       iSNS Server instance for uniquely identifying registered
       objects.  The PG object is registered at the same time a
       Portal or Storage Node is registered using the iSNS
       protocol."
          REFERENCE "RFC4171, Section 6"
          ::= { isnsRegPgEntry 1 }

   Gibbons            Expires September 17, 2007                    46
      isnsRegPgIscsiNodeIndex     OBJECT-TYPE
          SYNTAX                  IsnsNodeIndexId
          MAX-ACCESS              read-only
          STATUS                  current
          DESCRIPTION
      "The iSCSI Node Index index for the node iSCSI Node associated with this PG.
       This index can be used to reference the
       isnsRegIscsiNodeTable."
          REFERENCE "RFC4171, Section 6"
          ::= { isnsRegPgEntry 2 }

      isnsRegPgIscsiName          OBJECT-TYPE
          SYNTAX                  SnmpAdminString (SIZE (0..223))
          MAX-ACCESS              read-only
          STATUS                  current
          DESCRIPTION
      "The iSCSI Name of the initiator or target associated with
       the storage node.  The iSCSI Name can not be longer then than
       223 bytes.  The iSNS Server internal maximum size is 224
       bytes to provide NULL termination.  This is the PG iSCSI
       Name that uniquely identifies the iSCSI Storage Node that
       is associated with this PG."
          ::= { isnsRegPgEntry 3 }

      isnsRegPgPortalPortalIndex  OBJECT-TYPE
          SYNTAX                  IsnsPortalIndexId
          MAX-ACCESS              read-only
          STATUS                  current
          DESCRIPTION
      "The Portal Index for the Portal associated with this PG.
       This index can be used to reference the isnsRegPortalTable."
          ::= { isnsRegPgEntry 4 }

      isnsRegPgPortalAddressType  OBJECT-TYPE
          SYNTAX                  InetAddressType
          MAX-ACCESS              read-only

   Gibbons                Expires April 2007                        46
          STATUS                  current
          DESCRIPTION
      "The type of Inet address in isnsRegPgPortalAddress."
          ::= { isnsRegPgEntry 5 }

      isnsRegPgPortalAddress      OBJECT-TYPE
          SYNTAX                  InetAddress
          MAX-ACCESS              read-only
          STATUS                  current
          DESCRIPTION
      "The Inet Address for isnsRegPgPortalAddress.  If
       the Portal that address is associated with specified, then it must be a valid unicast
       address and the PG." value of this object must be ipv4(1),
       ipv6(2), ipv4z(3), or ipv6z(4); otherwise, then the value
       of this object is unknown(0), and the value of
       isnsRegPgPortalAddress is the zero-length string."
          ::= { isnsRegPgEntry 5 }

      isnsRegPgPortalAddress      OBJECT-TYPE
          SYNTAX                  InetAddress
          MAX-ACCESS              read-only
          STATUS                  current
          DESCRIPTION
      "The Inet Address for the Portal that is associated with

   Gibbons            Expires September 17, 2007                    47
       the PG. The format of this object is specified by
       isnsRegPgPortalAddressType."
          REFERENCE "RFC4171, Section 6"
          ::= { isnsRegPgEntry 6 }

      isnsRegPgPortalPortType     OBJECT-TYPE
          SYNTAX                  IsnsPortalPortTypeId
          MAX-ACCESS              read-only
          STATUS                  current
          DESCRIPTION
      "The port type, either UDP or TCP, for the Portal that
       is associated with this registered PG object."
          REFERENCE "RFC4171, Section 6"
          ::= { isnsRegPgEntry 7 }

      isnsRegPgPortalPort         OBJECT-TYPE
          SYNTAX                  InetPortNumber ( 1 .. 65535 )
          MAX-ACCESS              read-only
          STATUS                  current
          DESCRIPTION
      "The port number for the Portal that is associated with
       this registered PG object.  Whether the Portal type is
       TCP or UDP is indicated by isnsRegPgPortalPortType."
          REFERENCE "RFC4171, Section 6"
          ::= { isnsRegPgEntry 8 }

      isnsRegPgPGT                OBJECT-TYPE
          SYNTAX                  IsnsPortalGroupTagIdOrNull
          MAX-ACCESS              read-only
          STATUS                  current
          DESCRIPTION
      "The Portal Group Tag (PGT) for the registered iSCSI Portal
       Group object in an iSNS Server instance.  This indicates
       the tag value that the Portal uses for access to the iSCSI
       Storage Node.  The PGT is used for coordinated access
       between multiple Portals, as described in the iSCSI
       Specification, RFC3720.  A PGT with no association is a
       NULL value.  The value of -1 indicates a NULL value."
          REFERENCE "RFC4171, Section 6, and RFC3720"
          ::= { isnsRegPgEntry 9 }

      --

   Gibbons                Expires April 2007                        47
      -- iSNS Registered iSCSI Node Information
      --

      isnsRegIscsiNodeInfo  OBJECT IDENTIFIER ::= { isnsReg  4 }

      --
      -- iSNS Registered iSCSI Node Table
      --

      isnsRegIscsiNodeTable       OBJECT-TYPE

   Gibbons            Expires September 17, 2007                    48
          SYNTAX                  SEQUENCE OF IsnsRegIscsiNodeEntry
          MAX-ACCESS              not-accessible
          STATUS                  current
          DESCRIPTION
      "A table containing the registered iSCSI Nodes in the iSNS
       server instance.  Storage devices register using the iSNS
       protocol.  While a device cannot be registered in an iSNS
       server using SNMP, an entry can be deleted in order to
       remove 'stale' entries. The number of entries is related
       to the number of iSCSI nodes registered in the iSNS."
          ::= { isnsRegIscsiNodeInfo 1 }

      isnsRegIscsiNodeEntry       OBJECT-TYPE
          SYNTAX                  IsnsRegIscsiNodeEntry
          MAX-ACCESS              not-accessible
          STATUS                  current
          DESCRIPTION
      "Information on one iSCSI node that has been registered in
       the iSNS Server instance.  New rows cannot be added using
       SNMP."
          INDEX { isnsServerIndex,
                  isnsRegEntityIndex,
                  isnsRegIscsiNodeIndex }
          ::= { isnsRegIscsiNodeTable 1 }

      IsnsRegIscsiNodeEntry ::= SEQUENCE {
          isnsRegIscsiNodeIndex          IsnsNodeIndexId,
          isnsRegIscsiNodeName           SnmpAdminString,
          isnsRegIscsiNodeType           IsnsIscsiNodeType,
          isnsRegIscsiNodeAlias          SnmpAdminString,
          isnsRegIscsiNodeScnTypes       IsnsIscsiScnType,
          isnsRegIscsiNodeWwnToken       FcNameIdOrZero,
          isnsRegIscsiNodeAuthMethod     SnmpAdminString
                                       }

      isnsRegIscsiNodeIndex       OBJECT-TYPE
          SYNTAX                  IsnsNodeIndexId
          MAX-ACCESS              not-accessible
          STATUS                  current
          DESCRIPTION
      "The Node Index for this node.  The index is created by the
       iSNS Server for mapping between registered objects.  The

   Gibbons                Expires April 2007                        48
       index used for a specific node name is only persistent
       across reboots for nodes that have been registered in a
       Discovery Domain (DD).  If a node is not registered in any
       DD, then the index used for a node can change after a
       server reinitialization." this iSCSI node."
          REFERENCE "RFC4171, Section 6"
          ::= { isnsRegIscsiNodeEntry 1 }

      isnsRegIscsiNodeName        OBJECT-TYPE
          SYNTAX                  SnmpAdminString (SIZE (0..223))
          MAX-ACCESS              read-only
          STATUS                  current
          DESCRIPTION
      "The iSCSI Name of the initiator or target associated with
       the storage node.  The iSCSI Name can not be longer then than
       223 bytes.  The iSNS Server internal maximum size is 224

   Gibbons            Expires September 17, 2007                    49
       bytes to provide NULL termination.  This is the iSCSI Name
       that uniquely identifies the initiator, initiator/target,
       target, or control node in the network."
          REFERENCE "RFC4171, Section 6"
          ::= { isnsRegIscsiNodeEntry 2 }

      isnsRegIscsiNodeType        OBJECT-TYPE
          SYNTAX                  IsnsIscsiNodeType
          MAX-ACCESS              read-only
          STATUS                  current
          DESCRIPTION
      "The Node Type defining the functions of this iSCSI node."
          ::= { isnsRegIscsiNodeEntry 3 }

      isnsRegIscsiNodeAlias       OBJECT-TYPE
          SYNTAX                  SnmpAdminString (SIZE (0..255))
          MAX-ACCESS              read-only
          STATUS                  current
          DESCRIPTION
      "The Alias name of the iSCSI node.  This is a variable-length
       text-based description of up to 255 bytes."
          REFERENCE "RFC4171, Section 6"
          ::= { isnsRegIscsiNodeEntry 4 }

      isnsRegIscsiNodeScnTypes    OBJECT-TYPE
          SYNTAX                  IsnsIscsiScnType
          MAX-ACCESS              read-only
          STATUS                  current
          DESCRIPTION
      "The State Change Notification (SCN) types enabled for this
       iSCSI node."
          REFERENCE "RFC4171, Section 6.4.4"
          ::= { isnsRegIscsiNodeEntry 5 }

      isnsRegIscsiNodeWwnToken    OBJECT-TYPE
          SYNTAX                  FcNameIdOrZero

   Gibbons                Expires April 2007                        49
          MAX-ACCESS              read-only
          STATUS                  current
          DESCRIPTION
      "This contains an optional a globally unique 64-bit integer value that
       can be used to represent the World Wide Node Name of the
       iSCSI device in a Fibre Channel fabric. This identifier is
       used during the device registration process, and MUST
       conform to the requirements in RFC4171.  The
       value of zero  A zero-length string
       for this managed object indicates that a Node WWN token has
       not been assigned."
          REFERENCE "RFC4171, Section 6"
          ::= { isnsRegIscsiNodeEntry 6 }

      isnsRegIscsiNodeAuthMethod  OBJECT-TYPE
          SYNTAX                  SnmpAdminString (SIZE (0..255))
          MAX-ACCESS              read-only

   Gibbons            Expires September 17, 2007                    50
          STATUS                  current
          DESCRIPTION
      "This attribute contains a null-terminated string containing
       UTF-8 text listing the iSCSI authentication methods enabled
       for this iSCSI Node, in order of preference.  The text
       values used to identify iSCSI authentication methods are
       embedded in this string attribute and delineated by a
       comma.  The text values are identical to those found in
       RFC3720 - iSCSI.  Additional vendor-specific text values
       are also possible."
          REFERENCE "RFC4171, Section 6, and RFC3720"
          ::= { isnsRegIscsiNodeEntry 7 }

      --
      -- iSNS Registered FC Port Node Information
      --

      isnsRegFcPortInfo

      isnsRegFcNodeInfo     OBJECT IDENTIFIER ::= { isnsReg  5 }

      --
      -- iSNS Registered FC Port Node Table
      --

      isnsRegFcPortTable

      isnsRegFcNodeTable          OBJECT-TYPE
          SYNTAX                  SEQUENCE OF IsnsRegFcPortEntry IsnsRegFcNodeEntry
          MAX-ACCESS              not-accessible
          STATUS                  current
          DESCRIPTION
      "Information on
      "A table containing the registered FC N_Ports Nodes in the iSNS.
       This supports iFCP as defined in RFC4172."
          REFERENCE "RFC4172, Section 4"
          ::= { isnsRegFcPortInfo isnsRegFcNodeInfo 1 }

      isnsRegFcPortEntry

      isnsRegFcNodeEntry          OBJECT-TYPE
          SYNTAX                   IsnsRegFcPortEntry

   Gibbons                Expires April 2007                        50                  IsnsRegFcNodeEntry
          MAX-ACCESS              not-accessible
          STATUS                  current
          DESCRIPTION
      "Information on one registered FC Port node that has been
       registered in the iSNS."
          REFERENCE "RFC4172, Section 4"
          INDEX { isnsServerIndex,
                  isnsRegEntityIndex,
                  isnsRegFcPortWwpn
                   isnsRegFcNodeWwnn }
          ::= { isnsRegFcPortTable isnsRegFcNodeTable 1 }

      IsnsRegFcPortEntry

      IsnsRegFcNodeEntry ::= SEQUENCE {
          isnsRegFcPortWwpn
          isnsRegFcNodeWwnn           FcNameIdOrZero,
          isnsRegFcPortID                FcAddressIdOrZero,
          isnsRegFcPortType              Unsigned32,
          isnsRegFcPortSymbolicName
          isnsRegFcNodeSymbolicName   SnmpAdminString,
          isnsRegFcPortFabricPortWwn     FcNameIdOrZero,
          isnsRegFcPortHA                FcAddressIdOrZero,
          isnsRegFcPortAddressType
          isnsRegFcNodeAddressType    InetAddressType,
          isnsRegFcPortAddress
          isnsRegFcNodeAddress        InetAddress,
          isnsRegFcPortFcCos             IsnsFcClassOfServiceType,
          isnsRegFcPortFc4Types          OCTET STRING,
          isnsRegFcPortFc4Descr          OCTET STRING,
          isnsRegFcPortFc4Features
          isnsRegFcNodeIPA            OCTET STRING,
          isnsRegFcPortScnTypes          IsnsIfcpScnType,
          isnsRegFcPortRole              IsnsFcPortRoleType,
          isnsRegFcPortFcNodeWwn         FcNameIdOrZero,
          isnsRegFcPortPpnWwn            FcNameIdOrZero
          isnsRegFcNodeProxyIscsiName SnmpAdminString,
          isnsRegFcNodeNumFcPorts     Gauge32
                                      }

      isnsRegFcPortWwpn

   Gibbons            Expires September 17, 2007                    51
      isnsRegFcNodeWwnn           OBJECT-TYPE
          SYNTAX                  FcNameIdOrZero (SIZE(8))
          MAX-ACCESS              not-accessible
          STATUS                  current
          DESCRIPTION
      "The FC Port's Node World Wide Port Node Name as defined in the iSNS
       Specification, RFC4171.  The value of zero  A zero-length string is not valid
       for this managed object."
          REFERENCE "RFC4171, Section 6"
          ::= { isnsRegFcPortEntry isnsRegFcNodeEntry 1 }

      isnsRegFcPortID

      isnsRegFcNodeSymbolicName   OBJECT-TYPE
          SYNTAX                  FcAddressIdOrZero                  SnmpAdminString
          MAX-ACCESS              read-only
          STATUS                  current
          DESCRIPTION
      "The FC Port's Port ID Node Symbolic Name of the node as defined in the
       iSNS Specification,
       RFC4171." RFC4171.  This is a variable-length
       text-based description.  If not provided then the string
       SHALL be zero-length."
          REFERENCE "RFC4171, Section 6"
          ::= { isnsRegFcPortEntry isnsRegFcNodeEntry 2 }

      isnsRegFcPortType

      isnsRegFcNodeAddressType    OBJECT-TYPE

   Gibbons                Expires April 2007                        51
          SYNTAX                  Unsigned32 ( 0 .. 65535 )                  InetAddressType
          MAX-ACCESS              read-only
          STATUS                  current
          DESCRIPTION
      "The FC Port Port Type as defined type of Inet address in isnsRegFcNodeAddress.  If
       the iSNS Specification,
       RFC4171, address is specified, then it must be a valid unicast
       address and the Fibre Channel Generic Services
       Specification. Current values are as shown below:
              unknown      (0),
              nPort        (1),
              nlPort       (2),
              fNlPort      (3),
              fPort        (129),     -- x'81'
              flPort       (130),     -- x'82'
              ePort        (132),     -- x'84'
              bPort        (133),     -- x'85'
              mFcpPort     (65297),   -- x'FF11'
              iFcpPort     (65298),   -- x'FF12'
              unknownEnd   (65535)
       The future assignment value of any additional values will this object must be
       documented in a revision ipv4(1),
       ipv6(2), ipv4z(3), or ipv6z(4); otherwise, then the value
       of RFC4171."
          REFERENCE "RFC4171, Section 6" this object is unknown(0), and the value of
       isnsRegFcNodeAddress is the zero-length string."
          ::= { isnsRegFcPortEntry isnsRegFcNodeEntry 3 }

      isnsRegFcPortSymbolicName

      isnsRegFcNodeAddress        OBJECT-TYPE
          SYNTAX                SnmpAdminString (SIZE (0..255))                  InetAddress
          MAX-ACCESS              read-only
          STATUS                  current
          DESCRIPTION
      "The optional FC Port Port Symbolic Name Node Inet address of the node as defined in the
       iSNS Specification, RFC4171.  If not provided then the
       string SHALL be zero-length."  The format of this object is
       specified by isnsRegFcNodeAddressType."
          REFERENCE "RFC4171, Section 6"
          ::= { isnsRegFcPortEntry isnsRegFcNodeEntry 4 }

      isnsRegFcPortFabricPortWwn

      isnsRegFcNodeIPA            OBJECT-TYPE
          SYNTAX                  FcNameIdOrZero                  OCTET STRING (SIZE(8))
          MAX-ACCESS              read-only
          STATUS                  current

   Gibbons            Expires September 17, 2007                    52
          DESCRIPTION
      "The Fabric Port WWN for this entry
      "This managed object identifies the FC Initial Process
       Associator of the node as defined in the iSNS
       Specification, RFC4171.  The value of zero for this managed
       object indicates that the Fabric Port WWN is not known,
       or has not yet been registered with the iSNS Server." RFC4171."
          REFERENCE "RFC4171, Section 6"
          ::= { isnsRegFcPortEntry isnsRegFcNodeEntry 5 }

      isnsRegFcPortHA

      isnsRegFcNodeProxyIscsiName OBJECT-TYPE
          SYNTAX                  FcAddressIdOrZero                  SnmpAdminString (SIZE (0..223))
          MAX-ACCESS              read-only
          STATUS                  current
          DESCRIPTION
      "The iSCSI Name used to represent the FC Port Hard Address Node in the IP
       network. It is used as defined a pointer to the matching iSCSI Name
       entry in the iSNS

   Gibbons                Expires April 2007                        52
       Specification, RFC4171." Server.  Its value is usually registered
       by an FC-iSCSI gateway connecting the IP network to the
       fabric containing the FC device."
          REFERENCE  "RFC4171, Section 6"
          ::= { isnsRegFcPortEntry isnsRegFcNodeEntry 6 }

      isnsRegFcPortAddressType

      isnsRegFcNodeNumFcPorts     OBJECT-TYPE
          SYNTAX                  InetAddressType                  Gauge32 ( 0 .. 4294967295 )
          MAX-ACCESS              read-only
          STATUS                  current
          DESCRIPTION
      "The type number of Inet address in the isnsRegFcPortAddress." FC Ports associated with this FC Node."
          ::= { isnsRegFcPortEntry isnsRegFcNodeEntry 7 }

      isnsRegFcPortAddress

      --
      -- iSNS Registered FC Port Table
      --

      isnsRegFcPortTable          OBJECT-TYPE
          SYNTAX                  InetAddress                  SEQUENCE OF IsnsRegFcPortEntry
          MAX-ACCESS              read-only              not-accessible
          STATUS                  current
          DESCRIPTION
      "The
      "Information on registered FC Port Inet Address N_Ports in the iSNS.  FC Ports
       are associated with registered FC Nodes.  This supports
       iFCP as defined in the iSNS
       Specification, RFC4171." RFC4172."
          REFERENCE "RFC4171, "RFC4172, Section 6" 4"
          ::= { isnsRegFcPortEntry 8 isnsRegFcNodeInfo 2 }

      isnsRegFcPortFcCos

      isnsRegFcPortEntry          OBJECT-TYPE
          SYNTAX                  IsnsFcClassOfServiceType                   IsnsRegFcPortEntry
          MAX-ACCESS              read-only              not-accessible
          STATUS                  current
          DESCRIPTION
      "The
      "Information on one FC Port Class of Service as defined that has been registered in the iSNS
       Specification, RFC4171."
       iSNS."
          REFERENCE  "RFC4171, "RFC4172, Section 6" 4"
          INDEX { isnsServerIndex,

   Gibbons            Expires September 17, 2007                    53
                  isnsRegEntityIndex,
                  isnsRegFcPortWwpn }
          ::= { isnsRegFcPortEntry 9 isnsRegFcPortTable 1 }

      IsnsRegFcPortEntry ::= SEQUENCE {
          isnsRegFcPortWwpn              FcNameIdOrZero,
          isnsRegFcPortID                FcAddressIdOrZero,
          isnsRegFcPortType              Unsigned32,
          isnsRegFcPortSymbolicName      SnmpAdminString,
          isnsRegFcPortFabricPortWwn     FcNameIdOrZero,
          isnsRegFcPortHA                FcAddressIdOrZero,
          isnsRegFcPortAddressType       InetAddressType,
          isnsRegFcPortAddress           InetAddress,
          isnsRegFcPortFcCos             IsnsFcClassOfServiceType,
          isnsRegFcPortFc4Types          OCTET STRING,
          isnsRegFcPortFc4Descr          SnmpAdminString,
          isnsRegFcPortFc4Features       OCTET STRING,
          isnsRegFcPortScnTypes          IsnsIfcpScnType,
          isnsRegFcPortRole              IsnsFcPortRoleType,
          isnsRegFcPortFcNodeWwnn        FcNameIdOrZero,
          isnsRegFcPortPpnWwn            FcNameIdOrZero
                                      }

      isnsRegFcPortWwpn           OBJECT-TYPE
          SYNTAX                  OCTET STRING (SIZE (32))                  FcNameIdOrZero (SIZE(8))
          MAX-ACCESS              read-only              not-accessible
          STATUS                  current
          DESCRIPTION
      "The FC Port's World Wide Port FC-4 Types Name as defined in the iSNS
       Specification, RFC4171." RFC4171.  A zero-length string is not valid
       for this managed object."
          REFERENCE "RFC4171, Section 6"
          ::= { isnsRegFcPortEntry 10 1 }

      isnsRegFcPortFc4Descr

      isnsRegFcPortID             OBJECT-TYPE
          SYNTAX                  OCTET STRING(SIZE(0..255))                  FcAddressIdOrZero
          MAX-ACCESS              read-only
          STATUS                  current
          DESCRIPTION
      "The FC Port's Port FC-4 Descriptors ID as defined in the iSNS Specification,
       RFC4171."
          REFERENCE "RFC4171, Section 6"
          ::= { isnsRegFcPortEntry 11 2 }

   Gibbons                Expires April 2007                        53
      isnsRegFcPortFc4Features

      isnsRegFcPortType           OBJECT-TYPE
          SYNTAX                  OCTET STRING (SIZE (128))                  Unsigned32 ( 0 .. 65535 )
          MAX-ACCESS              read-only
          STATUS                  current
          DESCRIPTION
      "The FC Port FC-4 Features Port Type as defined in the iSNS Specification,
       RFC4171, and the Fibre Channel Generic Services
       Specification. Current values are as shown below:

   Gibbons            Expires September 17, 2007                    54
              unknown      (0),
              nPort        (1),
              nlPort       (2),
              fNlPort      (3),
              fPort        (129),     -- x'81'
              flPort       (130),     -- x'82'
              ePort        (132),     -- x'84'
              bPort        (133),     -- x'85'
              mFcpPort     (65297),   -- x'FF11'
              iFcpPort     (65298),   -- x'FF12'
              unknownEnd   (65535)
       The future assignment of any additional values will be
       documented in a revision of RFC4171."
          REFERENCE "RFC4171, Section 6" 6.6.3"
          ::= { isnsRegFcPortEntry 12 3 }

      isnsRegFcPortScnTypes

      isnsRegFcPortSymbolicName OBJECT-TYPE
          SYNTAX                  IsnsIfcpScnType                SnmpAdminString
          MAX-ACCESS            read-only
          STATUS                current
          DESCRIPTION
      "The iFCP State Change Notification (SCN) types enabled for FC Port Port Symbolic Name as defined in the registered object." iSNS
       Specification, RFC4171.  If not provided then the
       string SHALL be zero-length."
          REFERENCE "RFC4171, Section 6"
          ::= { isnsRegFcPortEntry 13 4 }

      isnsRegFcPortRole

      isnsRegFcPortFabricPortWwn  OBJECT-TYPE
          SYNTAX                  IsnsFcPortRoleType                  FcNameIdOrZero
          MAX-ACCESS              read-only
          STATUS                  current
          DESCRIPTION
      "The FC Fabric Port Role defines WWN for this entry as defined in the role of iSNS
       Specification, RFC4171.  A zero-length string for this
       managed object indicates that the Fabric Port WWN is not
       known, or has not yet been registered
       object." with the iSNS Server."
          REFERENCE "RFC4171, Section 6"
         ::= { isnsRegFcPortEntry 14 5 }

      isnsRegFcPortFcNodeWwn

      isnsRegFcPortHA             OBJECT-TYPE
          SYNTAX                  FcNameIdOrZero                  FcAddressIdOrZero
          MAX-ACCESS              read-only
          STATUS                  current
          DESCRIPTION
      "The FC Node WWN of the FC Node that has been associated with
       this FC Port Hard Address as defined in the iSNS
       Specification, RFC4171.
       This managed object may contain the value of zero prior to
       a device registering this value with the iSNS Server." RFC4171."
          REFERENCE "RFC4171, Section 6"
          ::= { isnsRegFcPortEntry 15 6 }

      isnsRegFcPortPpnWwn

      isnsRegFcPortAddressType    OBJECT-TYPE
          SYNTAX                  FcNameIdOrZero                  InetAddressType
          MAX-ACCESS              read-only

   Gibbons            Expires September 17, 2007                    55
          STATUS                  current
          DESCRIPTION
      "The Permanent Port Name attribute is the FC Port Name WWPN type of the first Storage Node registered Inet address in isnsRegFcPortAddress.  If
       the iSNS Database
       that address is associated with specified, then it must be a particular FC Device (FC Node).
       The PPN valid unicast
       address and the value of all subsequent Storage Node registrations that
       are associated with that FC Device (FC Node) SHALL this object must be set

   Gibbons                Expires April 2007                        54
       to ipv4(1),
       ipv6(2), ipv4z(3), or ipv6z(4); otherwise, then the FC Port Name WWPN value
       of this object is unknown(0), and the first Storage Node, value of
       isnsRegFcPortAddress is the zero-length string."
          ::= { isnsRegFcPortEntry 7 }

      isnsRegFcPortAddress        OBJECT-TYPE
          SYNTAX                  InetAddress
          MAX-ACCESS              read-only
          STATUS                  current
          DESCRIPTION
      "The FC Port Inet Address as defined in the iSNS
       Specification, RFC4171.  This managed
       object may contain the value  The format of zero prior to a device
       registering this value with the iSNS Server" object is
       specified by isnsRegFcPortAddressType."
          REFERENCE "RFC4171, Section 6"
          ::= { isnsRegFcPortEntry 16 }

      --
      -- iSNS Registered FC Node Information
      --

      isnsRegFcNodeInfo     OBJECT IDENTIFIER ::= { isnsReg  6 8 }

      --
      -- iSNS Registered FC Node Table
      --

      isnsRegFcNodeTable

      isnsRegFcPortFcCos          OBJECT-TYPE
          SYNTAX                  SEQUENCE OF IsnsRegFcNodeEntry                  IsnsFcClassOfServiceType
          MAX-ACCESS              not-accessible              read-only
          STATUS                  current
          DESCRIPTION
      "A table containing the registered
      "The FC Nodes Port Class of Service as defined in the iSNS." iSNS
       Specification, RFC4171."
          REFERENCE  "RFC4171, Section 6"
          ::= { isnsRegFcNodeInfo 1 isnsRegFcPortEntry 9 }

      isnsRegFcNodeEntry

      isnsRegFcPortFc4Types       OBJECT-TYPE
          SYNTAX                  IsnsRegFcNodeEntry                  OCTET STRING (SIZE (32))
          MAX-ACCESS              not-accessible              read-only
          STATUS                  current
          DESCRIPTION
      "Information on one registered
      "The FC node that has been
       regisered Port FC-4 Types as defined in the iSNS."
          INDEX { isnsServerIndex,
                   isnsRegFcNodeWwn }
          ::= { isnsRegFcNodeTable 1 }

      IsnsRegFcNodeEntry iSNS
       Specification, RFC4171."
          REFERENCE "RFC4171, Section 6.6.9"
          ::= SEQUENCE {
          isnsRegFcNodeWwn            FcNameIdOrZero,
          isnsRegFcNodeSymbolicName   SnmpAdminString,
          isnsRegFcNodeAddressType    InetAddressType,
          isnsRegFcNodeAddress        InetAddress,
          isnsRegFcNodeIPA            OCTET STRING,
          isnsRegFcNodeProxyIscsiName SnmpAdminString isnsRegFcPortEntry 10 }

      isnsRegFcNodeWwn

      isnsRegFcPortFc4Descr       OBJECT-TYPE
          SYNTAX                  FcNameIdOrZero                  SnmpAdminString (SIZE(4..255))
          MAX-ACCESS              not-accessible              read-only
          STATUS                  current
          DESCRIPTION
      "The FC Node World Wide Node Name Port FC-4 Descriptor as defined in the iSNS
       Specification, RFC4171.  The value of zero is FC-4 Descriptor can not valid for

   Gibbons                Expires April 2007                        55
       this managed object." be
       longer than 255 bytes.  The iSNS Server internal maximum
       size is 256 bytes to provide NULL termination."
           REFERENCE "RFC4171, Section 6" 6.6.10"
         ::= { isnsRegFcNodeEntry 1 isnsRegFcPortEntry 11 }

      isnsRegFcNodeSymbolicName

   Gibbons            Expires September 17, 2007                    56
      isnsRegFcPortFc4Features    OBJECT-TYPE
          SYNTAX                  SnmpAdminString                  OCTET STRING (SIZE (0..255)) (128))
          MAX-ACCESS              read-only
          STATUS                  current
          DESCRIPTION
      "The optional FC Node Symbolic Name of the node Port FC-4 Features as defined in the iSNS
       Specification, RFC4171.  This is a
       variable-length text-based description.  If not
       provided then the string SHALL be zero-length." RFC4171."
          REFERENCE "RFC4171, Section 6" 6.6.11"
          ::= { isnsRegFcNodeEntry 2 isnsRegFcPortEntry 12 }

      isnsRegFcNodeAddressType

      isnsRegFcPortScnTypes       OBJECT-TYPE
          SYNTAX                  InetAddressType                  IsnsIfcpScnType
          MAX-ACCESS              read-only
          STATUS                  current
          DESCRIPTION
      "The type of Inet address in isnsRegFcNodeAddress." iFCP State Change Notification (SCN) types enabled for
       the registered object."
          REFERENCE "RFC4171, Section 6"
          ::= { isnsRegFcNodeEntry 3 isnsRegFcPortEntry 13 }

      isnsRegFcNodeAddress

      isnsRegFcPortRole           OBJECT-TYPE
          SYNTAX                  InetAddress                  IsnsFcPortRoleType
          MAX-ACCESS              read-only
          STATUS                  current
          DESCRIPTION
      "The FC Node Inet address of Port Role defines the node as defined in role of the
       iSNS Specification, RFC4171." registered
       object."
          REFERENCE "RFC4171, Section 6"
          ::= { isnsRegFcNodeEntry 4 isnsRegFcPortEntry 14 }

      isnsRegFcNodeIPA

      isnsRegFcPortFcNodeWwnn     OBJECT-TYPE
          SYNTAX                  OCTET STRING (SIZE(8))                  FcNameIdOrZero
          MAX-ACCESS              read-only
          STATUS                  current
          DESCRIPTION
      "This managed object identifies the
      "The FC Initial Process
       Associator of the node Node World Wide Node Name that is associated with
       this FC Port as defined in the iSNS Specification, RFC4171." RFC4171.
       This managed object may contain a zero-length string prior
       to a device registering this value with the iSNS Server."
          REFERENCE "RFC4171, Section 6"
          ::= { isnsRegFcNodeEntry 5 isnsRegFcPortEntry 15 }

      isnsRegFcNodeProxyIscsiName

      isnsRegFcPortPpnWwn         OBJECT-TYPE
          SYNTAX                  SnmpAdminString (SIZE (0..223))                  FcNameIdOrZero
          MAX-ACCESS              read-only
          STATUS                  current
          DESCRIPTION
      "The iSCSI Permanent Port Name used to represent attribute is the FC Port Name WWPN
       of the first Storage Node registered in the IP
       network. It iSNS Database
       that is used as associated with a pointer to the matching iSCSI Name particular FC Device (FC Node).
       The PPN of all subsequent Storage Node registrations that

   Gibbons            Expires April September 17, 2007                        56
       entry in the iSNS Server.  Its value is usually registered
       by an FC-iSCSI gateway connecting the IP network to the
       fabric containing the                    57
       are associated with that FC device."
          REFERENCE  "RFC4171, Section 6"
          ::= { isnsRegFcNodeEntry 6 }

      --
      -- Basic information for Device (FC Node) SHALL be set
       to the registered FC Node object
      --

      isnsRegFcNodeInfoTable      OBJECT-TYPE
          SYNTAX                  SEQUENCE OF
                                    IsnsRegFcNodeInfoEntry
          MAX-ACCESS              not-accessible
          STATUS                  current
          DESCRIPTION
      "A table containing basic information on registered FC
       Nodes in the iSNS.  The number Port Name WWPN of entries in the table
       is dependent on the number of FC Nodes registered first Storage Node, as
       defined in the iSNS." iSNS Specification, RFC4171.  This managed
       object may contain a zero-length string prior to a device
       registering this value with the iSNS Server."
          REFERENCE "RFC4172, "RFC4171, Section 4"
          ::= { isnsRegFcNodeInfo 2 }

      isnsRegFcNodeInfoEntry      OBJECT-TYPE
          SYNTAX                  IsnsRegFcNodeInfoEntry
          MAX-ACCESS              not-accessible
          STATUS                  current
          DESCRIPTION
      "Information on one FC Node that has been registered in the
       iSNS."
          INDEX   { isnsServerIndex,
                     isnsRegFcNodeWwn }
          ::= { isnsRegFcNodeInfoTable 1 }

      IsnsRegFcNodeInfoEntry ::=
          SEQUENCE {
             isnsRegFcNodeInfoNumFcPorts   Unsigned32
                 }

      isnsRegFcNodeInfoNumFcPorts OBJECT-TYPE
          SYNTAX                  Unsigned32 ( 0 .. 4294967295 )
          MAX-ACCESS              read-only
          STATUS                  current
          DESCRIPTION
      "The number of FC Ports associated with this FC Node." 6"
          ::= { isnsRegFcNodeInfoEntry 1 isnsRegFcPortEntry 16 }

      --
      --  Mapping from FC Node to Entity - FC Port
      --

      isnsRegFcNodePortTable      OBJECT-TYPE

   Gibbons                Expires April 2007                        57
          SYNTAX                  SEQUENCE OF
                                    IsnsRegFcNodePortEntry
          MAX-ACCESS              not-accessible
          STATUS                  current
          DESCRIPTION
      "A table containing the mapping of a registered FC Nodes to Node and
       associated registered iFCP Ports and Port to the supporting registered
       Entity
       objects object in the an iSNS Server instance."
          ::= { isnsRegFcNodeInfo 3 }

      isnsRegFcNodePortEntry      OBJECT-TYPE
          SYNTAX                  IsnsRegFcNodePortEntry
          MAX-ACCESS              not-accessible
          STATUS                  current
          DESCRIPTION
      "Information on one mapping from an FC Port Node and Entity iFCP Port to
       an
       FC node Entity object registered in the an iSNS."
          INDEX { isnsServerIndex,
                  isnsRegFcNodeWwn,
                  isnsRegFcNodeWwnn,
                  isnsRegFcPortWwpn }
          ::= { isnsRegFcNodePortTable 1 }

      IsnsRegFcNodePortEntry ::= SEQUENCE {
              isnsRegFcNodePortEntityIndex IsnsEntityIndexId IsnsEntityIndexIdOrZero
                                          }

      isnsRegFcNodePortEntityIndex OBJECT-TYPE
          SYNTAX                  IsnsEntityIndexId                  IsnsEntityIndexIdOrZero
          MAX-ACCESS              read-only
          STATUS                  current
          DESCRIPTION
      "The Entity Index for the registered Entity object
       associated with the FC Port and FC Node." Node.  This managed
       object may contain the value of zero prior to a device
       registering this value with the iSNS Server."
          ::= { isnsRegFcNodePortEntry 1 }

      --
      -- iSNS Notifications Information -----------------

   Gibbons            Expires September 17, 2007                    58
      --

      isnsNotificationsInfo        OBJECT IDENTIFIER
                                        ::= { isnsObjects 2 }

      isnsInstanceInfo            OBJECT-TYPE
          SYNTAX                  SnmpAdminString (SIZE (0..80))
          MAX-ACCESS              accessible-for-notify
          STATUS                  current
          DESCRIPTION
      "Textual information about the notification event and the
       iSNS Server generating the notification.  An example is:
       iSNS Server Started."
          ::= { isnsNotificationsInfo 1 }

   Gibbons                Expires April 2007                        58
      isnsAddressTypeNotification

      isnsAddressNotificationType OBJECT-TYPE
          SYNTAX                  InetAddressType
          MAX-ACCESS              accessible-for-notify
          STATUS                  current
          DESCRIPTION
      "The type of Inet address in isnsAddressNotification."
          ::= { isnsNotificationsInfo 2 }

      isnsAddressNotification     OBJECT-TYPE
          SYNTAX                  InetAddress
          MAX-ACCESS              accessible-for-notify
          STATUS                  current
          DESCRIPTION
      "Identifies isnsAddressNotification.  If
       the IP address of the is specified, then it must be a valid unicast
       address and the value of this object must be ipv4(1),
       ipv6(2), ipv4z(3), or ipv6z(4); otherwise, then the value
       of this object is unknown(0), and the value of
       isnsAddressNotification is the zero-length string."
          ::= { isnsNotificationsInfo 2 }

      isnsAddressNotification     OBJECT-TYPE
          SYNTAX                  InetAddress
          MAX-ACCESS              accessible-for-notify
          STATUS                  current
          DESCRIPTION
      "Identifies the IP address of the iSNS Server." Server.  The format of
       this object is specified by isnsAddressNotificationType.
       The IP address will always be specified in the notification
       unless an error causes the IP address to not be known."
          ::= { isnsNotificationsInfo 3 }

      isnsTcpPortNotification     OBJECT-TYPE
          SYNTAX                  InetPortNumber
          MAX-ACCESS              accessible-for-notify
          STATUS                  current
          DESCRIPTION
      "Indicates the TCP port the iSNS Server is using,
       or 0 if TCP based registrations are not supported."
          ::= { isnsNotificationsInfo 4 }

      isnsUdpPortNotification     OBJECT-TYPE
          SYNTAX                  InetPortNumber
          MAX-ACCESS              accessible-for-notify
          STATUS                  current

   Gibbons            Expires September 17, 2007                    59
          DESCRIPTION
      "Indicates the UDP port the iSNS Server is using,
       or 0 if UDP based registrations are not supported."
          ::= { isnsNotificationsInfo 5 }

      --
      -- iSNS Notification Block -----------------
      --

      isnsServerStart             NOTIFICATION-TYPE
          OBJECTS {
              isnsInstanceInfo,
              isnsAddressTypeNotification,
              isnsAddressNotificationType,
              isnsAddressNotification,
              isnsTcpPortNotification,
              isnsUdpPortNotification
                  }
          STATUS                  current
          DESCRIPTION
      "This notification is sent when an iSNS Server begins
       operation.  The notification provides the following:
              isnsInstanceInfo : iSNS Server textual information
              isnsAddressTypeNotification : iSNS Server address type

   Gibbons                Expires April 2007                        59
              isnsAddressNotification : iSNS Server address
              isnsTcpPortNotification : iSNS Server TCP Port
              isnsUdpPortNotification : iSNS Server UDP Port
      "
          ::= { isnsNotifications 1 }

      isnsServerShutdown          NOTIFICATION-TYPE
          OBJECTS {
              isnsInstanceInfo,
              isnsAddressTypeNotification,
              isnsAddressNotificationType,
              isnsAddressNotification,
              isnsTcpPortNotification,
              isnsUdpPortNotification
                  }
          STATUS                  current
          DESCRIPTION
      "This notification is sent when an iSNS Server is
       shutdown.  The notification provides the following:
              isnsInstanceInfo : iSNS Server textual information
              isnsAddressTypeNotification : iSNS Server address type
              isnsAddressNotification : iSNS Server address
              isnsTcpPortNotification : iSNS Server TCP Port
              isnsUdpPortNotification : iSNS Server UDP Port
      "
          ::= { isnsNotifications 2 }

      ------------------------------------------------------------
      --
      -- Compliance Information

   Gibbons            Expires September 17, 2007                    60
      --

      isnsCompliances OBJECT IDENTIFIER ::= IDENTIFIER ::= { isnsConformance 1 }

      isnsIscsiServerCompliance MODULE-COMPLIANCE
          STATUS                  current
          DESCRIPTION
      "Initial compliance statement for an iSNS Server
       providing support to iSCSI clients."
          MODULE       -- this module
          MANDATORY-GROUPS {
              isnsServerAttributesGroup,
              isnsServerIscsiControlNodeGroup,
              isnsServerIscsiDdsDdObjGroup,
              isnsServerRegIscsiObjGroup,
              isnsServerNumObjectsGroup,
              isnsNotificationsObjGroup,
              isnsServerNotificationGroup
                           }
          OBJECT isnsServerDiscoveryMcGroupType
          SYNTAX InetAddressType { unknown(0), ipv4(1), ipv6(2),
                                     ipv4z(3), ipv6z(4) }
          DESCRIPTION
      "Only support for unknown, ipv4, ipv6, ipv4z, ipv6z
       is required."

          OBJECT isnsServerDiscoveryMcGroupAddress
          SYNTAX InetAddress (SIZE (0 | 4 | 8 | 16 | 20 ))
          DESCRIPTION
      "Only addresses for unknown, ipv4, ipv6, ipv4z, ipv6z
       and their related SIZE need to be supported."

          OBJECT isnsDdPortalMemberAddressType
          SYNTAX InetAddressType { unknown(0), ipv4(1), ipv6(2),
                                     ipv4z(3), ipv6z(4) }
          DESCRIPTION
      "Only support for unknown, ipv4, ipv6, ipv4z, ipv6z
       is required."

          OBJECT isnsDdPortalMemberAddress
          SYNTAX InetAddress (SIZE (0 | 4 | 8 | 16 | 20 ))
          DESCRIPTION
      "Only addresses for unknown, ipv4, ipv6, ipv4z, ipv6z
       and their related SIZE need to be supported."

          OBJECT isnsRegEntityManagementAddressType
          SYNTAX InetAddressType { unknown(0), ipv4(1), ipv6(2),
                                     ipv4z(3), ipv6z(4) }
          DESCRIPTION
      "Only support for unknown, ipv4, ipv6, ipv4z, ipv6z
       is required."

   Gibbons            Expires September 17, 2007                    61
          OBJECT isnsRegEntityManagementAddress
          SYNTAX InetAddress (SIZE (0 | 4 | 8 | 16 | 20 ))
          DESCRIPTION
      "Only addresses for unknown, ipv4, ipv6, ipv4z, ipv6z
       and their related SIZE need to be supported."

          OBJECT isnsRegPortalAddressType
          SYNTAX InetAddressType { unknown(0), ipv4(1), ipv6(2),
                                     ipv4z(3), ipv6z(4) }
          DESCRIPTION
      "Only support for unknown, ipv4, ipv6, ipv4z, ipv6z
       is required."

          OBJECT isnsRegPortalAddress
          SYNTAX InetAddress (SIZE (0 | 4 | 8 | 16 | 20 ))
          DESCRIPTION
      "Only addresses for unknown, ipv4, ipv6, ipv4z, ipv6z
       and their related SIZE need to be supported."

          OBJECT isnsRegPgPortalAddressType
          SYNTAX InetAddressType { unknown(0), ipv4(1), ipv6(2),
                                     ipv4z(3), ipv6z(4) }
          DESCRIPTION
      "Only support for unknown, ipv4, ipv6, ipv4z, ipv6z
       is required."

          OBJECT isnsRegPgPortalAddress
          SYNTAX InetAddress (SIZE (0 | 4 | 8 | 16 | 20 ))
          DESCRIPTION
      "Only addresses for unknown, ipv4, ipv6, ipv4z, ipv6z
       and their related SIZE need to be supported."

          OBJECT isnsAddressNotificationType
          SYNTAX InetAddressType { unknown(0), ipv4(1), ipv6(2),
                                     ipv4z(3), ipv6z(4) }
          DESCRIPTION
      "Only support for unknown, ipv4, ipv6, ipv4z, ipv6z
       is required."

          OBJECT isnsAddressNotification
          SYNTAX InetAddress (SIZE (0 | 4 | 8 | 16 | 20 ))
          DESCRIPTION
      "Only addresses for unknown, ipv4, ipv6, ipv4z, ipv6z
       and their related SIZE need to be supported."
          ::= { isnsCompliances 1 }

      isnsIfcpServerCompliance MODULE-COMPLIANCE
          STATUS                  current
          DESCRIPTION
      "Initial compliance statement for an iSNS Server
       providing support to iFCP Clients."
          MODULE       -- this module

   Gibbons            Expires September 17, 2007                    62
          MANDATORY-GROUPS {
              isnsServerAttributesGroup,
              isnsServerIfcpPortControlNodeGroup,
              isnsServerIfcpDdsDdObjGroup,
              isnsServerRegIfcpObjGroup,
              isnsServerNumObjectsGroup,
              isnsNotificationsObjGroup,
              isnsServerNotificationGroup
                           }
          OBJECT isnsServerDiscoveryMcGroupType
          SYNTAX InetAddressType { unknown(0), ipv4(1), ipv6(2),
                                     ipv4z(3), ipv6z(4) }
          DESCRIPTION
      "Only support for unknown, ipv4, ipv6, ipv4z, ipv6z
       is required."

          OBJECT isnsServerDiscoveryMcGroupAddress
          SYNTAX InetAddress (SIZE (0 | 4 | 8 | 16 | 20 ))
          DESCRIPTION
      "Only addresses for unknown, ipv4, ipv6, ipv4z, ipv6z
       and their related SIZE need to be supported."

          OBJECT isnsDdPortalMemberAddressType
          SYNTAX InetAddressType { unknown(0), ipv4(1), ipv6(2),
                                     ipv4z(3), ipv6z(4) }
          DESCRIPTION
      "Only support for unknown, ipv4, ipv6, ipv4z, ipv6z
       is required."

          OBJECT isnsDdPortalMemberAddress
          SYNTAX InetAddress (SIZE (0 | 4 | 8 | 16 | 20 ))
          DESCRIPTION
      "Only addresses for unknown, ipv4, ipv6, ipv4z, ipv6z
       and their related SIZE need to be supported."

          OBJECT isnsRegEntityManagementAddressType
          SYNTAX InetAddressType { unknown(0), ipv4(1), ipv6(2),
                                     ipv4z(3), ipv6z(4) }
          DESCRIPTION
      "Only support for unknown, ipv4, ipv6, ipv4z, ipv6z
       is required."

          OBJECT isnsRegEntityManagementAddress
          SYNTAX InetAddress (SIZE (0 | 4 | 8 | 16 | 20 ))
          DESCRIPTION
      "Only addresses for unknown, ipv4, ipv6, ipv4z, ipv6z
       and their related SIZE need to be supported."

          OBJECT isnsRegPortalAddressType
          SYNTAX InetAddressType { unknown(0), ipv4(1), ipv6(2),
                                     ipv4z(3), ipv6z(4) }
          DESCRIPTION

   Gibbons            Expires September 17, 2007                    63
      "Only support for unknown, ipv4, ipv6, ipv4z, ipv6z
       is required."

          OBJECT isnsRegPortalAddress
          SYNTAX InetAddress (SIZE (0 | 4 | 8 | 16 | 20 ))
          DESCRIPTION
      "Only addresses for unknown, ipv4, ipv6, ipv4z, ipv6z
       and their related SIZE need to be supported."

          OBJECT isnsRegFcNodeAddressType
          SYNTAX InetAddressType { isnsConformance 1 unknown(0), ipv4(1), ipv6(2),
                                     ipv4z(3), ipv6z(4) }

      isnsIscsiServerCompliance MODULE-COMPLIANCE
          STATUS                  current
          DESCRIPTION
      "Initial compliance statement for an iSNS Server
       providing
      "Only support for unknown, ipv4, ipv6, ipv4z, ipv6z
       is required."

          OBJECT isnsRegFcNodeAddress
          SYNTAX InetAddress (SIZE (0 | 4 | 8 | 16 | 20 ))
          DESCRIPTION
      "Only addresses for unknown, ipv4, ipv6, ipv4z, ipv6z
       and their related SIZE need to iSCSI clients."
          MODULE       -- this module
          MANDATORY-GROUPS {
              isnsServerAttributesGroup,
              isnsServerIscsiControlNodeGroup,
              isnsServerIscsiDdsDdObjGroup,
              isnsServerRegIscsiObjGroup,
              isnsServerNumObjectsGroup,
              isnsNotificationsObjGroup,
              isnsServerNotificationGroup
                           }
          ::= be supported."

          OBJECT isnsRegFcPortAddressType
          SYNTAX InetAddressType { isnsCompliances 1 unknown(0), ipv4(1), ipv6(2),
                                     ipv4z(3), ipv6z(4) }

      isnsIfcpServerCompliance MODULE-COMPLIANCE
          STATUS                  current

   Gibbons                Expires April 2007                        60
          DESCRIPTION
      "Initial compliance statement for an iSNS Server
       providing
      "Only support for unknown, ipv4, ipv6, ipv4z, ipv6z
       is required."

          OBJECT isnsRegFcPortAddress
          SYNTAX InetAddress (SIZE (0 | 4 | 8 | 16 | 20 ))
          DESCRIPTION
      "Only addresses for unknown, ipv4, ipv6, ipv4z, ipv6z
       and their related SIZE need to iFCP Clients."
          MODULE       -- this module
          MANDATORY-GROUPS be supported."

          OBJECT isnsAddressNotificationType
          SYNTAX InetAddressType {
              isnsServerAttributesGroup,
              isnsServerIfcpPortControlNodeGroup,
              isnsServerIfcpDdsDdObjGroup,
              isnsServerRegIfcpObjGroup,
              isnsServerNumObjectsGroup,
              isnsNotificationsObjGroup,
              isnsServerNotificationGroup unknown(0), ipv4(1), ipv6(2),
                                     ipv4z(3), ipv6z(4) }
          DESCRIPTION
      "Only support for unknown, ipv4, ipv6, ipv4z, ipv6z
       is required."

          OBJECT isnsAddressNotification
          SYNTAX InetAddress (SIZE (0 | 4 | 8 | 16 | 20 ))
          DESCRIPTION
      "Only addresses for unknown, ipv4, ipv6, ipv4z, ipv6z
       and their related SIZE need to be supported."
          ::= { isnsCompliances 2 }

   isnsGroups OBJECT IDENTIFIER ::= { isnsConformance 2 }

      isnsServerAttributesGroup      OBJECT-GROUP

   Gibbons            Expires September 17, 2007                    64
          OBJECTS {
             isnsServerName,
             isnsServerIsnsVersion,
             isnsServerVendorInfo,
             isnsServerPhysicalIndex,
             isnsServerTcpPort,
             isnsServerUdpPort,
             isnsServerDiscontinuityTime,
             isnsServerRole,
             isnsServerDiscoveryMethodsEnabled,
             isnsServerDiscoveryMcGroupType,
             isnsServerDiscoveryMcGroupAddress,
             isnsServerEsiNonResponseThreshold,
             isnsServerEnableControlNodeMgtScn,
             isnsServerDefaultDdDdsStatus,
             isnsServerUpdateDdDdsSupported,
             isnsServerUpdateDdDdsEnabled
                  }
          STATUS                  current
          DESCRIPTION
      "iSNS Server attributes."
             ::= { isnsGroups 1 }

      isnsServerNumObjectsGroup      OBJECT-GROUP
          OBJECTS {
             isnsNumDds,
             isnsNumDd,
             isnsNumEntities,
             isnsNumPortals,
             isnsNumPortalGroups,
             isnsNumIscsiNodes,
             isnsNumFcPorts,
             isnsNumFcNodes,
             isnsRegEntityInfoNumPortals,

   Gibbons                Expires April 2007                        61
             isnsRegEntityInfoNumPortalGroups,
             isnsRegEntityInfoNumIscsiNodes,
             isnsRegEntityInfoNumFcPorts,
             isnsRegEntityInfoNumFcNodes,
             isnsRegFcNodeInfoNumFcPorts
             isnsRegEntityInfoNumFcNodes
                  }
          STATUS                  current
          DESCRIPTION
      "Managed objects indicating the number of registered objects
       in an iSNS Server or the number of registered objects
       associated with a registered Entity.  These managed objects
       are optional to implement."
             ::= { isnsGroups 2 }

      isnsServerIscsiControlNodeGroup    OBJECT-GROUP
          OBJECTS {
             isnsControlNodeIscsiNodeName,
             isnsControlNodeIscsiIsRegistered
             isnsControlNodeIscsiIsRegistered,
             isnsControlNodeIscsiRcvMgtSCN

   Gibbons            Expires September 17, 2007                    65
                  }
          STATUS                  current
          DESCRIPTION
      "iSNS Server iSCSI control node managed objects."
             ::= { isnsGroups 3 }

      isnsServerIfcpPortControlNodeGroup   OBJECT-GROUP
          OBJECTS {
             isnsControlNodeFcPortIsRegistered
             isnsControlNodeFcPortIsRegistered,
             isnsControlNodeFcPortRcvMgtSCN
                  }
          STATUS                  current
          DESCRIPTION
      "iSNS Server iFCP Port control node managed objects."
             ::= { isnsGroups 4 }

      isnsServerIscsiDdsDdObjGroup   OBJECT-GROUP
          OBJECTS {
             isnsDdsSymbolicName,
             isnsDdsStatus,
             isnsDdsMemberSymbolicName,
             isnsDdSymbolicName,
             isnsDdFeatures,
             isnsDdMemberIscsiName,
             isnsDdMemberIsRegistered,
             isnsDdMemberPortalAddressType,
             isnsDdMemberPortalAddress,
             isnsDdMemberPortalPortType,
             isnsDdMemberPortalPort,
             isnsDdMemberPortalIsRegistered
             isnsDdIscsiMemberName,
             isnsDdIscsiMemberIsRegistered,
             isnsDdPortalMemberAddressType,
             isnsDdPortalMemberAddress,
             isnsDdPortalMemberPortType,
             isnsDdPortalMemberPort,
             isnsDdPortalMemberIsRegistered
                  }
          STATUS                  current
          DESCRIPTION
      "iSNS Server DDS and DD managed objects for iSCSI."
             ::= { isnsGroups 5 }

   Gibbons                Expires April 2007                        62

      isnsServerIfcpDdsDdObjGroup    OBJECT-GROUP
          OBJECTS {
             isnsDdsSymbolicName,
             isnsDdsStatus,
             isnsDdSymbolicName,
             isnsDdFeatures,
             isnsDdMemberPortalAddressType,
             isnsDdMemberPortalAddress,
             isnsDdMemberPortalPortType,
             isnsDdMemberPortalPort,
             isnsDdMemberPortalIsRegistered,
             isnsDdMemberFcIsRegistered
             isnsDdPortalMemberAddressType,
             isnsDdPortalMemberAddress,
             isnsDdPortalMemberPortType,
             isnsDdPortalMemberPort,
             isnsDdPortalMemberIsRegistered,
             isnsDdFcPortMemberIsRegistered
                  }
          STATUS                  current
          DESCRIPTION
      "iSNS Server DDS and DD managed objects for iFCP."

   Gibbons            Expires September 17, 2007                    66
             ::= { isnsGroups 6 }

      isnsServerRegIscsiObjGroup   OBJECT-GROUP
          OBJECTS {
             isnsRegEntityEID,
             isnsRegEntityProtocol,
             isnsRegEntityManagementAddressType,
             isnsRegEntityManagementAddress,
             isnsRegEntityTimestamp,
             isnsRegEntityVersionMin,
             isnsRegEntityVersionMax,
             isnsRegEntityRegistrationPeriod,
             isnsRegEntityInfoNumPortals,
             isnsRegEntityInfoNumPortalGroups,
             isnsRegEntityInfoNumIscsiNodes,
             isnsRegEntityInfoNumFcPorts,
             isnsRegEntityInfoNumFcNodes,
             isnsRegPortalAddressType,
             isnsRegPortalAddress,
             isnsRegPortalPortType,
             isnsRegPortalPort,
             isnsRegPortalSymbolicName,
             isnsRegPortalEsiInterval,
             isnsRegPortalEsiPortType,
             isnsRegPortalEsiPort,
             isnsRegPortalScnPortType,
             isnsRegPortalScnPort,
             isnsRegPortalSecurityInfo,
             isnsRegPgIscsiNodeIndex,
             isnsRegPgIscsiName,
             isnsRegPgPortalPortalIndex,
             isnsRegPgPortalAddressType,
             isnsRegPgPortalAddress,
             isnsRegPgPortalPortType,
             isnsRegPgPortalPort,

   Gibbons                Expires April 2007                        63
             isnsRegPgPGT,
             isnsRegIscsiNodeName,
             isnsRegIscsiNodeType,
             isnsRegIscsiNodeAlias,
             isnsRegIscsiNodeScnTypes,
             isnsRegIscsiNodeWwnToken,
             isnsRegIscsiNodeAuthMethod
                  }
          STATUS                  current
          DESCRIPTION
      "iSNS Server registered iSCSI managed objects."
             ::= { isnsGroups 7 }

      isnsServerRegIfcpObjGroup    OBJECT-GROUP
          OBJECTS {
             isnsRegEntityEID,
             isnsRegEntityProtocol,

   Gibbons            Expires September 17, 2007                    67
             isnsRegEntityManagementAddressType,
             isnsRegEntityManagementAddress,
             isnsRegEntityTimestamp,
             isnsRegEntityVersionMin,
             isnsRegEntityVersionMax,
             isnsRegEntityRegistrationPeriod,
             isnsRegEntityInfoNumPortals,
             isnsRegEntityInfoNumPortalGroups,
             isnsRegEntityInfoNumIscsiNodes,
             isnsRegEntityInfoNumFcPorts,
             isnsRegEntityInfoNumFcNodes,
             isnsRegPortalAddressType,
             isnsRegPortalAddress,
             isnsRegPortalPortType,
             isnsRegPortalPort,
             isnsRegPortalSymbolicName,
             isnsRegPortalEsiInterval,
             isnsRegPortalEsiPortType,
             isnsRegPortalEsiPort,
             isnsRegPortalScnPortType,
             isnsRegPortalScnPort,
             isnsRegPortalSecurityInfo,
             isnsRegFcPortID,
             isnsRegFcPortType,
             isnsRegFcPortSymbolicName,
             isnsRegFcPortFabricPortWwn,
             isnsRegFcPortHA,
             isnsRegFcPortAddressType,
             isnsRegFcPortAddress,
             isnsRegFcPortFcCos,
             isnsRegFcPortFc4Types,
             isnsRegFcPortFc4Descr,
             isnsRegFcPortFc4Features,
             isnsRegFcPortScnTypes,
             isnsRegFcPortRole,

   Gibbons                Expires April 2007                        64
             isnsRegFcPortFcNodeWwn,
             isnsRegFcPortFcNodeWwnn,
             isnsRegFcPortPpnWwn,
             isnsRegFcNodeSymbolicName,
             isnsRegFcNodeAddressType,
             isnsRegFcNodeAddress,
             isnsRegFcNodeIPA,
             isnsRegFcNodeProxyIscsiName,
             isnsRegFcNodeNumFcPorts,
             isnsRegFcNodePortEntityIndex
                  }
          STATUS                  current
          DESCRIPTION
      "iSNS Server registered iFCP managed objects."
             ::= { isnsGroups 8 }

      isnsNotificationsObjGroup    OBJECT-GROUP
          OBJECTS {

   Gibbons            Expires September 17, 2007                    68
             isnsInstanceInfo,
             isnsAddressTypeNotification,
             isnsAddressNotificationType,
             isnsAddressNotification,
             isnsTcpPortNotification,
             isnsUdpPortNotification
                  }
          STATUS                  current
          DESCRIPTION
      "iSNS Notification managed objects."
             ::= { isnsGroups 9 }

      isnsServerNotificationGroup  NOTIFICATION-GROUP
          NOTIFICATIONS {
             isnsServerStart,
             isnsServerShutdown
                        }
          STATUS                  current
          DESCRIPTION
      "iSNS Server Notification managed objects."
             ::= { isnsGroups 10 }
   END

6.  IANA Considerations

   The MIB module in this document uses the following IANA-assigned
   OBJECT IDENTIFIER values recorded in the SMI Numbers registry:

         Descriptor        OBJECT IDENTIFIER value
         ----------        -----------------------

         isnsMgmtMIB

         isnsMIB           { mib-2 YYYY }

   Editor's Note (to be removed prior to publication):  the IANA is
   requested to assign a value for "YYYY" under the 'mib-2' subtree and
   to record the assignment in the SMI Numbers registry.  When the
   assignment has been made, the RFC Editor is asked to replace "YYYY"

   Gibbons                Expires April 2007                        65
   (here and in the MIB module) with the assigned value and to remove
   this note.

   This RFC utilizes the IANA registry of iSNS parameters.  This
   registry was created for the iSNS Specification [RFC4171], and is
   located at http://www.iana.org/assignments/isns-parameters.
   Specifically, the isnsRegEntityProtocol values used in the MIB
   module are the values for the Block Storage Protocols that IANA
   assigns and documents in http://www.iana.org/assignments/isns-
   parameters.

7.  Security Considerations

   There are no management objects defined in this MIB module that have
   a MAX-ACCESS clause of read-write and/or read-create.  So, if this
   MIB module is implemented correctly, then there is no risk that an

   Gibbons            Expires September 17, 2007                    69
   intruder can alter or create any management objects of this MIB
   module via direct SNMP SET operations.

   Some of the readable objects in this MIB module (i.e., objects with
   a MAX-ACCESS other than not-accessible) may be considered sensitive
   or vulnerable in some network environments.  It is thus important to
   control even GET and/or NOTIFY access to these objects and possibly
   to even encrypt the values of these objects when sending them over
   the network via SNMP.  These are the tables and objects and their
   sensitivity/vulnerability:

   The isnsDdsMemberTable contains information about which Discovery
   Domains may be enabled at the same time.

   The isnsDdTable contains information about Discovery Domains,
   containing storage nodes with an ability to communicate and exchange
   storage data.

   The isnsDdIscsiMemberTable indicates which iSCSI nodes are contained
   in which Discovery Domains.

   The isnsDdPortalMemberTable indicates which iSCSI portals are
   contained in which Discovery Domains.

   The isnsDdFcPortMemberTable indicates which iFCP FC N_Ports are
   contained in which Discovery Domains.

   The isnsControlNodeIscsiTable indicates which iSCSI nodes have the
   ability to possibly control an iSNS server.

   The isnsControlNodeFcPortTable indicates which iFCP FC N_Ports have
   the ability to possibly control an iSNS server.

   The above object tables provide information about storage objects
   sessions, and can indicate to a user who is communicating and
   exchanging storage data.

   Gibbons                Expires April 2007                        66

   SNMP versions prior to SNMPv3 did not include adequate security.
   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 module.

   It is RECOMMENDED that implementers consider the security features
   as provided by the SNMPv3 framework (see [RFC3410], section 8),
   including full support for the SNMPv3 cryptographic mechanisms (for
   authentication and privacy).

   Further, deployment of SNMP versions prior to SNMPv3 is NOT
   RECOMMENDED.  Instead, it is RECOMMENDED to deploy SNMPv3 and to
   enable cryptographic security.  It is then a customer/operator
   responsibility to ensure that the SNMP entity giving access to an

   Gibbons            Expires September 17, 2007                    70
   instance of this MIB module 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.

8.  Normative References

   [RFC2119]  Bradner, S., "Key words for use in RFCs to Indicate
              Requirement Levels", BCP 14, RFC 2119, March 1997.

   [RFC2578]  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.

   [RFC2579]  McCloghrie, K., Perkins, D., Schoenwaelder, J., Case,
              J., Rose, M., and S. Waldbusser, "Textual Conventions
              for SMIv2", STD 58, RFC 2579, April 1999.

   [RFC2580]  McCloghrie, K., Perkins, D., Schoenwaelder, J., Case,
              J., Rose, M., and S. Waldbusser, "Conformance
              Statements for SMIv2", STD 58, RFC 2580, April 1999.

   [RFC3411]  Harrington, D., Presuhn, R., and B. Wijnen, "An
              Architecture for Describing Simple Network Management
              Protocol (SNMP) Management Frameworks", STD 62, RFC
              3411, December 2002.

   [RFC3720]  Satran, J., Meth, K., Sapuntzakis, C., Chadalapaka,
              M., and Zeidner, E., "Internet Small Computer Systems
              Interface (iSCSI)", RFC 3720, March 2004.

   [RFC4001]  Daniele, M., Haberman, B., Routhier, S.,
              Schoenwaelder, J., "Textual Conventions for Internet
              Network Addresses", RFC 4001, February 2005.

   [RFC4044]  McCloghrie, K., "Fibre Channel Management MIB", RFC

   Gibbons                Expires April 2007                        67
              4044, May 2005.

   [RFC4133]  McCloghrie, K., Bierman, A., "Entity MIB (Version
              3)", RFC 4133, August 2005.

   [RFC4171]  Tseng, J., Gibbons, K., Travostino, F., Du Laney, C.,
              Souza, J., "Internet Storage Name Service (iSNS)",RFC
              4171, September 2005.

   [RFC4172]  Monia, C., Mullendore, R., Travostino, F., Jeong, W.,
              Edwards, M., "iFCP - A Protocol for Internet Fibre
              Channel Storage Networking", RFC 4172, September
              2005.

9.  Informative References

   Gibbons            Expires September 17, 2007                    71
   [RFC3410]   Case, J., Mundy, R., Partain, D. and B. Stewart,
               "Introduction and Applicability Statements for
               Internet-Standard Management Framework", RFC 3410,
               December 2002.

10.  Acknowledgements

   This memo is a product of the IP Storage (IPS) working group within
   the Internet Engineering Task Force.

   We wish to acknowledge the contributions and comments from the IPS
   WG, including the following:

         IPS WG Chair: David Black
         Former Editors: Josh Tseng and Tom McSweeney
         MIB Editors: Keith McCloghrie and Bert Wijnen

11.  Authors' Addresses

   Kevin Gibbons
   McDATA Corporation
   4555 Great America Pkwy
   Santa Clara,
   2Wire, Inc.
   1704 Automation Parkway
   San Jose, CA 95054-1208 95131
   USA
   Tel: +1 408 567-5765 408-895-1387
   Fax: +1 408 567-0063 408-428-9590
   Email: kevin.gibbons@mcdata.com kgibbons@yahoo.com

   G.D. Ramkumar
   McDATA Corporation
   4555 Great America Pkwy
   Santa Clara,
   SnapTell, Inc.
   2741 Middlefield Rd, Suite 200
   Palo Alto, CA 95054-1208 94306
   USA
   Tel: +1 408-567-5614 650-326-7627
   Fax: +1 408 567-0063 650-326-7620
   Email: gramkumar@stanfordalumni.org

   Scott Kipp
   McDATA Corporation

   Gibbons                Expires April 2007                        68
   Brocade
   4 McDATA Pkwy
   Broomfield, CO 80021
   USA
   Tel: +1 720-558-3452
   Fax: +1 720-558-8999
   Email: scott.kipp@mcdata.com
                       "

11. skipp@brocade.com

12.  Full Copyright Statement

   Copyright (C) The IETF Trust (2007).

   Gibbons            Expires September 17, 2007                    72
   This document is subject to the rights, licenses and restrictions
   contained in BCP 78, and except as set forth therein, the authors
   retain all their rights.

   This document and the information contained herein are provided on
   an "AS IS" basis and THE CONTRIBUTOR, THE ORGANIZATION HE/SHE
   REPRESENTS OR IS SPONSORED BY (IF ANY), THE INTERNET SOCIETY, THE
   IETF TRUST AND THE INTERNET ENGINEERING TASK FORCE DISCLAIM ALL
   WARRANTIES, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO ANY
   WARRANTY THAT THE USE OF THE INFORMATION HEREIN WILL NOT INFRINGE
   ANY RIGHTS OR ANY IMPLIED WARRANTIES OF MERCHANTABILITY OR FITNESS
   FOR A PARTICULAR PURPOSE.

13.  Intellectual Property Statement

   The IETF takes no position regarding the validity or scope of any
   Intellectual Property Rights or other rights that might be claimed
   to pertain to the implementation or use of the technology described
   in this document or the extent to which any license under such
   rights might or might not be available; nor does it represent that
   it has made any independent effort to identify any such rights.
   Information on the procedures with respect to rights in RFC
   documents can be found in BCP 78 and BCP 79.

   Copies of IPR disclosures made to the IETF Secretariat and any
   assurances of licenses to be made available, or the result of an
   attempt made to obtain a general license or permission for the use
   of such proprietary rights by implementers or users of this
   specification can be obtained from the IETF on-line IPR repository
   at http://www.ietf.org/ipr.

   The IETF invites any interested party to bring to its attention any
   copyrights, patents or patent applications, or other proprietary
   rights that may cover technology that may be required to implement
   this standard.  Please address the information to the IETF at ietf-
   ipr@ietf.org.

Full Copyright Statement

   Copyright (C) The Internet Society (2006).

   This document is subject to the rights, licenses and restrictions
   contained in BCP 78, and except as set forth therein, the authors
   retain all their rights.

Disclaimer of Validity

   This document and the information contained herein are provided on
   an "AS IS" basis and THE CONTRIBUTOR, THE ORGANIZATION HE/SHE
   REPRESENTS OR IS SPONSORED BY (IF ANY), THE INTERNET SOCIETY AND THE
   INTERNET ENGINEERING TASK FORCE DISCLAIM ALL WARRANTIES, EXPRESS OR
   IMPLIED, INCLUDING BUT NOT LIMITED TO ANY WARRANTY THAT THE USE OF
   THE INFORMATION HEREIN WILL NOT INFRINGE ANY RIGHTS OR ANY IMPLIED
   WARRANTIES OF MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE.

14.  Acknowledgment

   Gibbons                Expires April 2007                        69

   Funding for the RFC Editor function is currently provided by the
   Internet Society. IETF
   Administrative Support Activity (IASA).

15.  Expiration Notice

   This Internet-Draft expires in April September 17, 2007.

   Gibbons            Expires April September 17, 2007                        70                    73