RFC4404

From RFC-Wiki

Network Working Group R. Natarajan Request for Comments: 4404 F5 Networks Category: Standards Track A. Rijhsinghani

                                       Accton Technology Corporation
                                                       February 2006
 Definitions of Managed Objects for Fibre Channel Over TCP/IP (FCIP)

Status of This Memo

This document specifies an Internet standards track protocol for the Internet community, and requests discussion and suggestions for improvements. Please refer to the current edition of the "Internet Official Protocol Standards" (STD 1) for the standardization state and status of this protocol. Distribution of this memo is unlimited.

Copyright Notice

Copyright (C) The Internet Society (2006).

Abstract

This memo defines a portion of the Management Information Base (MIB) for use with network management protocols in TCP/IP-based internets. In particular, it defines objects for managing Fibre Channel Over TCP/IP (FCIP) entities, which are used to interconnect Fibre Channel (FC) fabrics with IP networks.

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.

Overview of FCIP Management Model

Note that the Fibre Channel Over TCP/IP (FCIP) Entity is fully described in RFC3821 from a functional point of view. A collection of multiple instances of FCIP Entities and the corresponding FC Entities, described in [FCBB2], within an SNMP Context is referred to as an FCIP device here. This section describes FCIP from a management point of view.

    +------------------------------------------+
    | FCIP Device                              |
    |                                          |
    |   +-----------+       +-----------+      |
    |   |FCIP Entity|       |FCIP Entity|      |
    |   |           |       |           |      |
    |   |           |       |           |      |
    |   +--+--+--+--+       +--+--+--+--+      |
    |      |  |  |             |  |  |         |
    |      |  |  |             |  |  |         |
    |     FCIP Links         FCIP Links        |
    |                                          |
    +------------------------------------------+

The FCIP device provides an IP-based interconnection model for interconnecting FC fabric elements. In this model, the FCIP devices along with the IP network on which they are running provide a new FCIP transport network.

This IP-based FCIP Interconnection Model supports the following topology:

o The FCIP-based transport network is formed by interconnecting the

 FCIP devices.

o Each FCIP device has one or more FCIP Entities or Instances.

o Peer FCIP Entities are connected by FCIP Links attached to

 VE_ports/B_Access.

o Each FCIP Link Endpoint contains one or more Data Engines.

o The FCIP device can work as a stand-alone box or as part of a FC

 fabric element.

Each FCIP Entity managed by this MIB is referred to as an FCIP Instance. The MIB is broken up as follows:

FCIP Entity Instances Table

The FCIP Entity table contains information about this entity's existing instances of FCIP entities.

FCIP Link Table

The FCIP link table contains information about this FCIP device's existing FCIP links.

FCIP TCP Connection Table

The FCIP TCP Connection table contains information about existing TCP connections. Each FCIP link within an FCIP entity contains one or more TCP connections. The FCIP entity employs a Data Engine for each TCP connection for handling FC frame encapsulation, de-encapsulation, and transmission of FCIP frames on the connection.

FCIP Dynamic Route Table

The FCIP dynamic route table contains routing information that is dynamically discovered by this FCIP device. The FCIP device may use the SLPv2 protocol RFC3822 in conjunction with other protocols, such as Fabric Shortest Path First (FSPF), to dynamically discover other FCIP entities and populate this table to map destination domains to FCIP Links.

FCIP Static Route Table

The FCIP static route table contains routing information that is statically configured into this FCIP device by the Network Admin. In the absence of dynamic discovery of remote FCIP entities, the Network Manager can configure remote domains and FCIP Entities that are reachable by this device into this table.

At any point in time, both the static and dynamic routing tables can be active. If a DID is present in both tables, information in the static route table will take precedence over the entry in the dynamic route table for the same DID.

FCIP Discovery Domain Table

The FCIP Discovery Domain Table maps this device's FCIP Entities into FCIP Discovery Domains.

FCIP Link Error Table

The FCIP Link Errors Table contains counters that indicate error conditions on an FCIP Link.

Relationship to Other MIBs

Objects accessible from other MIB modules applicable to FCIP devices have not been included in this MIB module. The following subsections list all applicable MIB modules that should be present with FCIP- MGMT-MIB.

Relationship to the 'TCP' Group

This group is mandatory for all systems that implement TCP. Objects relevant to TCP must be obtained from this group RFC4022.

Relationship to the 'interfaces' MIB

The 'interfaces' group is defined as being mandatory for all systems and contains information on an entity's interfaces. Each logical/virtual interface created as an FCIP Link should be represented as a row in the ifTable with a unique ifIndex value and a value of ifType 'fcipLink' (224) for each such interface. For a complete list of interface types, refer to the IANA registry at "http://www.iana.org/assignments/smi-numbers". These are the only ifIndex values of relevance to an FCIP Entity because FCIP runs on top of TCP/IP.

FCIP runs over TCP. Thus, by definition, there is no ifTable interface directly beneath it, and so ifStackLowerLayer is always 0. For any protocol using FCIP (i.e., above FCIP), FCIP appears to be a regular FC interface. As stated in RFC4044, a regular "FC interface will typically have no other ifTable rows stacked on top of it", and thus, ifStackHigherLayer is typically zero.

Relationship to the Fibre Channel Management MIB

The Fibre Channel Management MIB RFC4044 is assumed for FC functionality managed objects.

Specific Interface Group MIB Objects

The following table provides specific implementation guidelines for applying the objects defined in the Interfaces Group MIB to FCIP Links. For those objects not listed here, refer to their generic definitions in RFC2863.

Object                   Guidelines

ifType 'fcipLink' (224)

ifSpeed The ifSpeed for the physical interface(s)

                        over which the FCIP Link runs.

ifPhysAddress There is no physical address corresponding

                        to an FCIP Link (only World Wide Name, WWN).
                        Reported as 0.

ifAdminStatus Write access is not required, and support

                        for 'testing' is not required.

ifOperStatus Support for 'testing' is not required.

                        The value 'dormant' has no meaning for
                        FCIP Links.

ifInOctets The number of octets of FCIP information ifHCInOctets contained in received frames in TCP

                        streams, starting with FCIP header.

ifInUcastPkts The number of FCIP frames received ifHCInUcastPkts on this FCIP Link.

ifOutOctets The number of octets of FCIP information ifHCOutOctets contained in transmitted frames in TCP

                        streams, starting with FCIP header.

ifOutUcastPkts The number of FCIP frames transmitted ifHCOutUcastPkts on this FCIP Link.

ifInMulticastPkts These counters are not incremented. ifInBroadcastPkts ifOutMulticastPkts ifOutBroadcastPkts ifHCInMulticastPkts ifHCInBroadcastPkts ifHCOutMulticastPkts ifHCOutBroadcastPkts

ifLinkUpDownTrapEnable Default is 'disabled'.

ifPromiscuousMode This will be 'false'.

ifConnectorPresent This will be 'false'.

MIB Definitions

The following MIB module has IMPORTS from RFC2578, RFC2579, RFC4001, RFC4044, RFC2863, RFC2580, and RFC3411. In REFERENCE clauses, it refers to [FC-SW-3], RFC3821, RFC2883, RFC1323, RFC2474 and RFC3822.

FCIP-MGMT-MIB DEFINITIONS ::= BEGIN

IMPORTS

   OBJECT-TYPE,
   MODULE-IDENTITY,
   Unsigned32,
   Counter32,
   mib-2               FROM SNMPv2-SMI
   TEXTUAL-CONVENTION,
   TruthValue, RowStatus, TimeStamp  FROM SNMPv2-TC
   InetAddressType,
   InetAddress,
   InetPortNumber FROM INET-ADDRESS-MIB
   FcNameIdOrZero FROM FC-MGMT-MIB
   InterfaceIndex FROM IF-MIB
   MODULE-COMPLIANCE,
   OBJECT-GROUP FROM SNMPv2-CONF
   SnmpAdminString FROM SNMP-FRAMEWORK-MIB;

fcipMIB MODULE-IDENTITY

   LAST-UPDATED "200602060000Z"
   ORGANIZATION "IETF IPFC Working Group"
   CONTACT-INFO "Anil Rijhsinghani
                 Accton Technology Corporation
                 5 Mount Royal Ave
                 Marlboro, MA 01752 USA.
                 Ravi Natarajan
                 F5 Networks
                 2460 North First Street, Suite 100
                 San Jose, CA 95131 USA."
   DESCRIPTION
       "The module defines management information specific to
        FCIP devices.
        Copyright(C) The Internet Society (2006).  This version
        of this MIB module is part of RFC 4404; see the RFC
        itself for full legal notices."
   REVISION        "200602060000Z"
   DESCRIPTION
       "Initial version of this module, published as RFC 4404."
   ::= { mib-2 224 }

fcipObjects OBJECT IDENTIFIER ::= { fcipMIB 1 } fcipConformance OBJECT IDENTIFIER ::= { fcipMIB 2 } fcipConfig OBJECT IDENTIFIER ::= { fcipObjects 1 }

-- ****************************************************************** -- Textual conventions --

FcipDomainIdInOctetForm ::= TEXTUAL-CONVENTION

   STATUS    current
   DESCRIPTION
       "The Domain ID of a FC entity in octet form
        to support the concatenation(000000h||Domain_ID)
        format defined in the FSPF routing protocol."
   REFERENCE
       "FC-SW-3 section 4.8"
   SYNTAX    OCTET STRING (SIZE(1))

FcipEntityMode ::= TEXTUAL-CONVENTION

   STATUS current
   DESCRIPTION
       "The type of port mode provided by an FCIP Entity
        for an FCIP Link.  An FCIP Entity can be an E-Port
        mode for one of its FCIP Link Endpoints or a B-Port
        mode for another of its FCIP Link Endpoints."
   REFERENCE
       "FC-BB, rev 4.7, 2 May 1997, section 3."
   SYNTAX INTEGER {
               ePortMode(1),
               bPortMode(2)
                  }

FcipEntityId ::= TEXTUAL-CONVENTION

   STATUS current
   DESCRIPTION
       "The FCIP entity identifier as defined in RFC 3821."
   REFERENCE
       "RFC 3821, Section 7.1, FCIP Special Frame Format"
   SYNTAX OCTET STRING (SIZE(8))

-- ****************************************************************** -- The FCIP group -- -- This group defines the global scalar objects applicable to FCIP -- devices only --

fcipDynIpConfType OBJECT-TYPE

   SYNTAX INTEGER {
               slpv2(1),
               none(2)
   }
   MAX-ACCESS read-write
   STATUS current
   DESCRIPTION
       "The type of discovery protocol used to discover remote
        FCIP entities.  The value of this object is persistent
        across system restarts."
   ::= { fcipConfig 1 }

fcipDeviceWWN OBJECT-TYPE

   SYNTAX FcNameIdOrZero
   MAX-ACCESS read-only
   STATUS current
   DESCRIPTION
       "The World Wide Name of this FCIP device."
   ::= { fcipConfig 2 }

fcipEntitySACKOption OBJECT-TYPE

   SYNTAX INTEGER {
               enabled(1),
               disabled(2)
   }
   MAX-ACCESS read-only
   STATUS current
   DESCRIPTION
       "Indication of whether the TCP Selective Acknowledgement
        Option is enabled at this FCIP device to let the receiver
        acknowledge multiple lost packets in a single ACK for faster
        recovery."
   REFERENCE
       "The Selective Ack option is defined in RFC 2883."
   ::= { fcipConfig 3 }

-- ****************************************************************** -- The FCIP Entity Table --

fcipEntityInstanceTable OBJECT-TYPE

   SYNTAX SEQUENCE OF FcipEntityInstanceEntry
   MAX-ACCESS not-accessible
   STATUS current
   DESCRIPTION
       "Information about this FCIP device's existing instances of
        FCIP entities."
   REFERENCE
       "RFC 3821, Section 5.4, FCIP Entity"
   ::= { fcipConfig 4 }

fcipEntityInstanceEntry OBJECT-TYPE

   SYNTAX FcipEntityInstanceEntry
   MAX-ACCESS not-accessible
   STATUS current
   DESCRIPTION
       "A conceptual row of the FCIP entity table with information
        about a particular FCIP entity.  Once a row has been
        created, it is non-volatile across agent restarts until it
        is deleted."
   INDEX { fcipEntityId }
   ::= { fcipEntityInstanceTable 1 }

FcipEntityInstanceEntry ::=

   SEQUENCE {
               fcipEntityId                  FcipEntityId,
               fcipEntityName                SnmpAdminString,
               fcipEntityAddressType         InetAddressType,
               fcipEntityAddress             InetAddress,
               fcipEntityTcpConnPort         InetPortNumber,
               fcipEntitySeqNumWrap          TruthValue,
               fcipEntityPHBSupport          TruthValue,
               fcipEntityStatus              RowStatus
          }

fcipEntityId OBJECT-TYPE

   SYNTAX FcipEntityId
   MAX-ACCESS not-accessible
   STATUS current
   DESCRIPTION
       "The FCIP entity identifier."
   REFERENCE
       "RFC 3821, Section 7.1, FCIP Special Frame Format"
   ::= { fcipEntityInstanceEntry 1 }

fcipEntityName OBJECT-TYPE

   SYNTAX SnmpAdminString (SIZE (0..32))
   MAX-ACCESS read-create
   STATUS current
   DESCRIPTION
       "An administratively-assigned name for this FCIP entity."
   ::= { fcipEntityInstanceEntry 2 }

fcipEntityAddressType OBJECT-TYPE

   SYNTAX InetAddressType
   MAX-ACCESS read-create
   STATUS current
   DESCRIPTION
       "The type of Internet address by which the entity is
        reachable.  Only address types IPv4 and IPv6 are supported."
   ::= { fcipEntityInstanceEntry 3 }

fcipEntityAddress OBJECT-TYPE

   SYNTAX InetAddress
   MAX-ACCESS read-create
   STATUS current
   DESCRIPTION
       "The Internet address for the entity, if configured.  The
        format of this address is determined by the value of the
        fcipEntityAddressType object."
   ::= { fcipEntityInstanceEntry 4 }

fcipEntityTcpConnPort OBJECT-TYPE

   SYNTAX InetPortNumber
   MAX-ACCESS read-create
   STATUS current
   DESCRIPTION
       "A TCP port other than the FCIP Well-Known port on which the
        FCIP entity listens for new TCP connection requests.  It
        contains the value zero(0) if the FCIP Entity only listens
        on the Well-Known port."
   DEFVAL  { 0 }
   ::= { fcipEntityInstanceEntry 5 }

fcipEntitySeqNumWrap OBJECT-TYPE

   SYNTAX TruthValue
   MAX-ACCESS read-only
   STATUS current
   DESCRIPTION
       "An indication of whether the FCIP Entity supports protection
        against sequence number wrap."
   REFERENCE
       "The PAWS option is defined in RFC 1323."
   ::= { fcipEntityInstanceEntry 6 }

fcipEntityPHBSupport OBJECT-TYPE

   SYNTAX TruthValue
   MAX-ACCESS read-only
   STATUS current
   DESCRIPTION
       "An indication of whether the FCIP Entity supports PHB IP
        quality of service (QoS)."
   REFERENCE
       "Per hop behavior is defined in RFC 2474, definition of the
        Differentiated Services Field."
   ::= { fcipEntityInstanceEntry 7 }

fcipEntityStatus OBJECT-TYPE

   SYNTAX RowStatus
   MAX-ACCESS   read-create
   STATUS   current
   DESCRIPTION
       "This object specifies the operational status of the row.
        When a management station sets the status to active(1), then
        the values for the objects fcipEntityName,
        fcipEntityAddressType, and fcipEntityAddress should be
        supplied as part of the set request.  The values of the
        objects fcipEntityName, fcipEntityAddressType, and
        fcipEntityAddress can be changed if the row status is in
        active state.  The object fcipEntityTcpConnPort takes the
        default value zero(0), if no value is supplied at the time
        of row creation.
        Setting the status to destroy(6) deletes the specified FCIP
        entity instance row from the table.  It also deletes all the
        rows corresponding to the specified FCIP entity from the
        fcipLinkTable and fcipTcpConnTable tables."
   ::= { fcipEntityInstanceEntry 8 }

-- ****************************************************************** -- The FCIP Link Table --

fcipLinkTable OBJECT-TYPE

   SYNTAX SEQUENCE OF FcipLinkEntry
   MAX-ACCESS not-accessible
   STATUS current
   DESCRIPTION
       "Information about FCIP links that exist on this device."
   ::= { fcipConfig 5 }

fcipLinkEntry OBJECT-TYPE

   SYNTAX FcipLinkEntry
   MAX-ACCESS not-accessible
   STATUS current
   DESCRIPTION
       "A conceptual row of the FCIP link table containing
        information about a particular FCIP link.  The values of the
        read-create objects in this table are persistent across
        system restarts."
   INDEX { fcipEntityId, fcipLinkIndex }
   ::= { fcipLinkTable 1 }

FcipLinkEntry ::=

   SEQUENCE {
               fcipLinkIndex                       Unsigned32,
               fcipLinkIfIndex                     InterfaceIndex,
               fcipLinkCost                        Unsigned32,
               fcipLinkLocalFcipEntityMode         FcipEntityMode,
               fcipLinkLocalFcipEntityAddressType  InetAddressType,
               fcipLinkLocalFcipEntityAddress      InetAddress,
               fcipLinkRemFcipEntityWWN            FcNameIdOrZero,
               fcipLinkRemFcipEntityId             FcipEntityId,
               fcipLinkRemFcipEntityAddressType    InetAddressType,
               fcipLinkRemFcipEntityAddress        InetAddress,
               fcipLinkStatus                      RowStatus,
               fcipLinkCreateTime                  TimeStamp

}

fcipLinkIndex OBJECT-TYPE

   SYNTAX Unsigned32 (1..4294967295)
   MAX-ACCESS not-accessible
   STATUS current
   DESCRIPTION
       "An arbitrary integer that uniquely identifies one FCIP link
        within an FCIP entity."
   ::= { fcipLinkEntry 1 }

fcipLinkIfIndex OBJECT-TYPE

   SYNTAX InterfaceIndex
   MAX-ACCESS read-only
   STATUS current
   DESCRIPTION
       "The ifIndex value of the virtual interface corresponding to
        the FCIP Link running over TCP/IP."
   ::= { fcipLinkEntry 2 }

fcipLinkCost OBJECT-TYPE

   SYNTAX Unsigned32
   MAX-ACCESS read-create
   STATUS current
   DESCRIPTION
       "The FSPF cost associated with this FCIP Link."
   DEFVAL  { 0 }
   ::= { fcipLinkEntry 3 }

fcipLinkLocalFcipEntityMode OBJECT-TYPE

   SYNTAX FcipEntityMode
   MAX-ACCESS   read-only
   STATUS   current
   DESCRIPTION
       "The mode of the local end of the FCIP link."
   ::= { fcipLinkEntry 4 }

fcipLinkLocalFcipEntityAddressType OBJECT-TYPE

   SYNTAX InetAddressType
   MAX-ACCESS read-create
   STATUS current
   DESCRIPTION
       "The type of Internet address contained in the corresponding
        instance of fcipLinkLocalFcipEntityAddress.  Only address
        types IPv4 and IPv6 are supported."
   ::= { fcipLinkEntry 5 }

fcipLinkLocalFcipEntityAddress OBJECT-TYPE

   SYNTAX InetAddress
   MAX-ACCESS read-create
   STATUS current
   DESCRIPTION
       "The Internet address for the local end of this FCIP Link.
        The format of this object is determined by the value of the
        fcipLinkLocalFcipEntityAddressType object."
   ::= { fcipLinkEntry 6 }

fcipLinkRemFcipEntityWWN OBJECT-TYPE

   SYNTAX FcNameIdOrZero
   MAX-ACCESS read-create
   STATUS current
   DESCRIPTION
       "The World Wide Name of the remote FC Fabric Entity."
   REFERENCE
       "RFC 3821, Section 7.1, FCIP Special Frame Format"
   ::= { fcipLinkEntry 7 }

fcipLinkRemFcipEntityId OBJECT-TYPE

   SYNTAX FcipEntityId
   MAX-ACCESS read-create
   STATUS current
   DESCRIPTION
       "The remote FCIP entity's identifier."
   REFERENCE
       "RFC 3821, Section 7.1, FCIP Special Frame Format"
   ::= { fcipLinkEntry 8 }

fcipLinkRemFcipEntityAddressType OBJECT-TYPE

   SYNTAX InetAddressType
   MAX-ACCESS read-create
   STATUS current
   DESCRIPTION
       "The type of Internet address contained in the corresponding
        instance of fcipLinkRemFcipEntityAddress.  Only address
        types IPv4 and IPv6 are supported."
   ::= { fcipLinkEntry 9 }

fcipLinkRemFcipEntityAddress OBJECT-TYPE

   SYNTAX InetAddress
   MAX-ACCESS read-create
   STATUS current
   DESCRIPTION
       "The Internet address for the remote end of this FCIP Link.
        The format of this object is determined by the value of the
        fcipLinkRemFcipEntityAddressType object."
   ::= { fcipLinkEntry 10 }

fcipLinkStatus OBJECT-TYPE

   SYNTAX RowStatus
   MAX-ACCESS   read-create
   STATUS   current
   DESCRIPTION
       "This object specifies the operational status of the row.
        The values of objects fcipLinkLocalFcipEntityAddressType,
        fcipLinkLocalFcipEntityAddress, fcipLinkRemFcipEntityWWN,
        fcipLinkRemFcipEntityId, fcipLinkRemFcipEntityAddressType,
        and fcipLinkRemFcipEntityAddress can be changed if the row
        is in active(1) state.  The object fcipLinkCost is set to
        the value zero(0) if no value is supplied at the time of row
        creation.
        Setting the status to destroy(6) deletes the specified FCIP
        link from the table.  It also deletes all rows corresponding
        to the specified FCIP link from the fcipTcpConnTable table."
   ::= { fcipLinkEntry 11 }

fcipLinkCreateTime OBJECT-TYPE

   SYNTAX      TimeStamp
   MAX-ACCESS  read-only
   STATUS      current
   DESCRIPTION
       "The value of sysUpTime when this entry was last created."
   ::= { fcipLinkEntry 12 }

-- ****************************************************************** -- The TCP Connection Table --

fcipTcpConnTable OBJECT-TYPE

   SYNTAX SEQUENCE OF FcipTcpConnEntry
   MAX-ACCESS not-accessible
   STATUS current
   DESCRIPTION
       "Information about existing TCP connections.  Each FCIP link
        within an FCIP entity manages one or more TCP connections.
        The FCIP entity employs a Data Engine for each TCP
        connection for handling FC frame encapsulation,
        de-encapsulation, and transmission of FCIP frames on the
        connection."
   ::= { fcipConfig 6 }

fcipTcpConnEntry OBJECT-TYPE

   SYNTAX FcipTcpConnEntry
   MAX-ACCESS not-accessible
   STATUS current
   DESCRIPTION
       "A conceptual row of the FCIP TCP Connection table containing
        information about a particular TCP connection."
   INDEX { fcipEntityId,
           fcipLinkIndex,
           fcipTcpConnLocalPort,
           fcipTcpConnRemPort}
   ::= { fcipTcpConnTable 1 }

FcipTcpConnEntry ::=

   SEQUENCE {
               fcipTcpConnLocalPort      InetPortNumber,
               fcipTcpConnRemPort        InetPortNumber,
               fcipTcpConnRWSize         Unsigned32,
               fcipTcpConnMSS            Unsigned32

}

fcipTcpConnLocalPort OBJECT-TYPE

   SYNTAX InetPortNumber
   MAX-ACCESS not-accessible
   STATUS current
   DESCRIPTION
       "The local port number for this TCP connection."
   ::= { fcipTcpConnEntry 1 }

fcipTcpConnRemPort OBJECT-TYPE

   SYNTAX InetPortNumber
   MAX-ACCESS not-accessible
   STATUS current
   DESCRIPTION
       "The remote port number for this TCP connection."
   ::= { fcipTcpConnEntry 2 }

fcipTcpConnRWSize OBJECT-TYPE

   SYNTAX Unsigned32
   MAX-ACCESS read-only
   STATUS current
   DESCRIPTION
       "The default maximum TCP Receiver Window size for this TCP
        connection."
   ::= { fcipTcpConnEntry 3 }

fcipTcpConnMSS OBJECT-TYPE

   SYNTAX Unsigned32
   MAX-ACCESS read-only
   STATUS current
   DESCRIPTION
       "The TCP Maximum Segment Size (MSS) for this TCP connection."
   ::= { fcipTcpConnEntry 4 }

-- ****************************************************************** -- The Dynamic Route Table --

fcipDynamicRouteTable OBJECT-TYPE

   SYNTAX SEQUENCE OF FcipDynamicRouteEntry
   MAX-ACCESS not-accessible
   STATUS current
   DESCRIPTION
       "Information about dynamically discovered routing
        information.  The FCIP device may use the SLPv2 protocol in
        conjunction with other protocols (say, FSPF) for dynamically
        discovering other FCIP entities and may populate this table
        with FCIP link information for each Destination Address
        Identifier."
   ::= { fcipConfig 7 }

fcipDynamicRouteEntry OBJECT-TYPE

   SYNTAX FcipDynamicRouteEntry
   MAX-ACCESS not-accessible
   STATUS current
   DESCRIPTION
       "A conceptual row of the FCIP Dynamic Route Table containing
        information about a particular FCIP route."
   INDEX { fcipEntityId, fcipDynamicRouteDID }
   ::= { fcipDynamicRouteTable 1 }

FcipDynamicRouteEntry ::=

   SEQUENCE {
               fcipDynamicRouteDID          FcipDomainIdInOctetForm,
               fcipDynamicRouteLinkIndex    Unsigned32
           }

fcipDynamicRouteDID OBJECT-TYPE

   SYNTAX FcipDomainIdInOctetForm
   MAX-ACCESS not-accessible
   STATUS current
   DESCRIPTION
       "8-bit ID of a Fibre Channel Domain that is reachable from
        this FCIP device."
   ::= { fcipDynamicRouteEntry  1 }

fcipDynamicRouteLinkIndex OBJECT-TYPE

   SYNTAX Unsigned32 (1..4294967295)
   MAX-ACCESS read-only
   STATUS current
   DESCRIPTION
       "The FCIP Link used to reach the domain specified by the
        corresponding instance of fcipDynamicRouteDID.  The link
        identified by a value of this object is the same FCIP link
        as identified by the same value of fcipLinkIndex for the
        same FCIP entity."
   ::= { fcipDynamicRouteEntry  2 }

-- ****************************************************************** -- The Static Route Table --

fcipStaticRouteTable OBJECT-TYPE

   SYNTAX SEQUENCE OF FcipStaticRouteEntry
   MAX-ACCESS not-accessible
   STATUS current
   DESCRIPTION
       "Information about static route entries configured by the
        Network Admin.  In the absence of dynamic discovery of
        remote FCIP entities, the Network Manager will figure out
        all remote FCIP devices that are reachable from this device
        and populate this table with FCIP link information for each
        Domain ID.  At any time, both static and dynamic routing
        can be active, and an entry in the static route table for a
        given DID takes precedence over the entry in the dynamic
        route table for the same Domain ID."
   ::= { fcipConfig 8 }

fcipStaticRouteEntry OBJECT-TYPE

   SYNTAX FcipStaticRouteEntry
   MAX-ACCESS not-accessible
   STATUS current
   DESCRIPTION
       "A conceptual row of the FCIP Static Route Table containing
        information about a particular FCIP route.  The values of
        the read-create objects in this table are persistent across
        system restarts."
   INDEX { fcipEntityId, fcipStaticRouteDID }
   ::= { fcipStaticRouteTable 1 }

FcipStaticRouteEntry ::=

   SEQUENCE {
               fcipStaticRouteDID           FcipDomainIdInOctetForm,
               fcipStaticRouteLinkIndex     Unsigned32,
               fcipStaticRouteStatus        RowStatus
           }

fcipStaticRouteDID OBJECT-TYPE

   SYNTAX FcipDomainIdInOctetForm
   MAX-ACCESS not-accessible
   STATUS current
   DESCRIPTION
       "8-bit ID of a Fibre Channel Domain that is reachable from
        this FCIP device."
   ::= { fcipStaticRouteEntry  1 }

fcipStaticRouteLinkIndex OBJECT-TYPE

   SYNTAX Unsigned32 (1..4294967295)
   MAX-ACCESS read-create
   STATUS current
   DESCRIPTION
       "The FCIP Link used to reach the domain specified by the
        corresponding instance of fcipStaticRouteDID.  The link
        identified by a value of this object is the same FCIP link
        as identified by the same value of fcipLinkIndex for the
        same FCIP entity."
   ::= { fcipStaticRouteEntry  2 }

fcipStaticRouteStatus OBJECT-TYPE

   SYNTAX RowStatus
   MAX-ACCESS   read-create
   STATUS   current
   DESCRIPTION
       "This object specifies the operational status of the row.
        When a management station sets the status to active(1),
        the values for the object fcipStaticRouteLinkIndex should be
        supplied as part of the set request.
        Setting the status to destroy(6) deletes the specified FCIP
        static route entry from the table."
   ::= { fcipStaticRouteEntry  3 }

-- ****************************************************************** -- The FCIP Discovery Domain Table --

fcipDiscoveryDomainTable OBJECT-TYPE

   SYNTAX SEQUENCE OF FcipDiscoveryDomainEntry
   MAX-ACCESS not-accessible
   STATUS current
   DESCRIPTION
       "Information about FCIP Discovery Domains.  Each FCIP
        Discovery Domain is associated with one or more FCIP
        entities."
   ::= { fcipConfig 9 }

fcipDiscoveryDomainEntry OBJECT-TYPE

   SYNTAX FcipDiscoveryDomainEntry
   MAX-ACCESS not-accessible
   STATUS current
   DESCRIPTION
       "A conceptual row of the FCIP Discovery Domain Table
        containing information about a particular FCIP Discovery
        Domain that is associated with one or more FCIP entities.
        The values of the read-write object fcipDiscoveryDomainName
        are persistent across system restarts."
   INDEX { fcipEntityId, fcipDiscoveryDomainIndex }
   ::= { fcipDiscoveryDomainTable 1 }

FcipDiscoveryDomainEntry ::=

   SEQUENCE {
       fcipDiscoveryDomainIndex        Unsigned32,
       fcipDiscoveryDomainName         SnmpAdminString
   }

fcipDiscoveryDomainIndex OBJECT-TYPE

   SYNTAX     Unsigned32 (1..4294967295)
   MAX-ACCESS not-accessible
   STATUS     current
   DESCRIPTION
       "An integer that uniquely identifies an FCIP Discovery Domain
        associated with this FCIP entity."
   ::= { fcipDiscoveryDomainEntry 1 }

fcipDiscoveryDomainName OBJECT-TYPE

   SYNTAX SnmpAdminString (SIZE (0..128))
   MAX-ACCESS read-write
   STATUS current
   DESCRIPTION
       "The name of this FCIP Discovery Domain."
   REFERENCE
       "RFC 3822, Section 4.1.1, FCIP Discovery Domains"
   ::= { fcipDiscoveryDomainEntry 2 }

-- ****************************************************************** -- The FCIP Link Errors --

fcipLinkErrorsTable OBJECT-TYPE

   SYNTAX SEQUENCE OF FcipLinkErrorsEntry
   MAX-ACCESS not-accessible
   STATUS current
   DESCRIPTION
       "A list of error counters for FCIP Links.  Each counter
        records the number of times a particular error happened that
        caused a TCP connection to close down."
   REFERENCE
       "RFC 3821, Section 5.2, FCIP Link"
   ::= { fcipConfig 10 }

fcipLinkErrorsEntry OBJECT-TYPE

   SYNTAX FcipLinkErrorsEntry
   MAX-ACCESS not-accessible
   STATUS current
   DESCRIPTION
       "A conceptual row of the FCIP Link Errors Table containing
        error counters for an FCIP Link."
   INDEX { fcipEntityId, fcipLinkIndex }
   ::= { fcipLinkErrorsTable 1 }

FcipLinkErrorsEntry ::=

   SEQUENCE {
       fcipLinkFcipLossofFcSynchs            Counter32,
       fcipLinkFcipEncapErrors               Counter32,
       fcipLinkFcipNotReceivedSfResps        Counter32,
       fcipLinkFcipSfRespMismatches          Counter32,
       fcipLinkFcipSfInvalidNonces           Counter32,
       fcipLinkFcipReceivedSfDuplicates      Counter32,
       fcipLinkFcipSfInvalidWWNs             Counter32,
       fcipLinkFcipBB2LkaTimeOuts            Counter32,
       fcipLinkFcipSntpExpiredTimeStamps     Counter32,
       fcipLinkTcpTooManyErrors              Counter32,
       fcipLinkTcpExcessiveDroppedDatagrams  Counter32,
       fcipLinkTcpSaParamMismatches          Counter32
   }

fcipLinkFcipLossofFcSynchs OBJECT-TYPE

   SYNTAX     Counter32
   MAX-ACCESS read-only
   STATUS     current
   DESCRIPTION
       "The number of times FC synchronization was lost on this FCIP
        Link.  The last discontinuity of this counter is indicated
        by fcipLinkCreateTime."
   ::= { fcipLinkErrorsEntry 1 }

fcipLinkFcipEncapErrors OBJECT-TYPE

   SYNTAX     Counter32
   MAX-ACCESS read-only
   STATUS     current
   DESCRIPTION
       "The number of FCIP frames received with encapsulation errors
        such as improper header, format, or length.  The last
        discontinuity of this counter is indicated by
        fcipLinkCreateTime."
   ::= { fcipLinkErrorsEntry 2 }

fcipLinkFcipNotReceivedSfResps OBJECT-TYPE

   SYNTAX     Counter32
   MAX-ACCESS read-only
   STATUS     current
   DESCRIPTION
       "The number of times an FCIP Special Frame Response was
        expected but not received on this FCIP Link.  The last
        discontinuity of this counter is indicated by
        fcipLinkCreateTime."
   ::= { fcipLinkErrorsEntry 3 }

fcipLinkFcipSfRespMismatches OBJECT-TYPE

   SYNTAX     Counter32
   MAX-ACCESS read-only
   STATUS     current
   DESCRIPTION
       "The number of times FCIP Special Frame Bytes mismatch
        happened on this FCIP Link.  The last discontinuity of this
        counter is indicated by fcipLinkCreateTime."
   ::= { fcipLinkErrorsEntry 4 }

fcipLinkFcipSfInvalidNonces OBJECT-TYPE

   SYNTAX     Counter32
   MAX-ACCESS read-only
   STATUS     current
   DESCRIPTION
       "The number of times FCIP Special Frame Invalid Connection
        Nonce happened on this FCIP Link.  The last discontinuity
        of this counter is indicated by fcipLinkCreateTime."
   ::= { fcipLinkErrorsEntry 5 }

fcipLinkFcipReceivedSfDuplicates OBJECT-TYPE

   SYNTAX     Counter32
   MAX-ACCESS read-only
   STATUS     current
   DESCRIPTION
       "The number of times duplicate FCIP Special Frames were
        received on this FCIP Link.  The last discontinuity of this
        counter is indicated by fcipLinkCreateTime."
   ::= { fcipLinkErrorsEntry 6 }

fcipLinkFcipSfInvalidWWNs OBJECT-TYPE

   SYNTAX     Counter32
   MAX-ACCESS read-only
   STATUS     current
   DESCRIPTION
       "The number of times FCIP Special Frames with invalid
        destination FC Fabric Entity WWN were received on this FCIP
        Link.  The last discontinuity of this counter is indicated
        by fcipLinkCreateTime."
   ::= { fcipLinkErrorsEntry 7 }

fcipLinkFcipBB2LkaTimeOuts OBJECT-TYPE

   SYNTAX     Counter32
   MAX-ACCESS read-only
   STATUS     current
   DESCRIPTION
       "The number of FC Keep Alive Time-outs that occurred on
        this FCIP Link.  The last discontinuity of this counter
        is indicated by fcipLinkCreateTime."
   ::= { fcipLinkErrorsEntry 8 }

fcipLinkFcipSntpExpiredTimeStamps OBJECT-TYPE

   SYNTAX     Counter32
   MAX-ACCESS read-only
   STATUS     current
   DESCRIPTION
       "The number of frames discarded due to an expired Simple
        Network Time Protocol (SNTP) timestamp on this FCIP Link.
        The last discontinuity of this counter is indicated by
        fcipLinkCreateTime."
   ::= { fcipLinkErrorsEntry 9 }

fcipLinkTcpTooManyErrors OBJECT-TYPE

   SYNTAX     Counter32
   MAX-ACCESS read-only
   STATUS     current
   DESCRIPTION
       "The number of TCP connections that closed down on this
        FCIP Link due to too many errors on the connection.  The
        last discontinuity of this counter is indicated by
        fcipLinkCreateTime."
   ::= { fcipLinkErrorsEntry 10  }

fcipLinkTcpExcessiveDroppedDatagrams OBJECT-TYPE

   SYNTAX     Counter32
   MAX-ACCESS read-only
   STATUS     current
   DESCRIPTION
       "The number of TCP connections that closed down on this
        FCIP Link due to an excessive number of dropped FCIP
        packets.  The last discontinuity of this counter is
        indicated by fcipLinkCreateTime."
   ::= { fcipLinkErrorsEntry 11  }

fcipLinkTcpSaParamMismatches OBJECT-TYPE

   SYNTAX     Counter32
   MAX-ACCESS read-only
   STATUS     current
   DESCRIPTION
       "The number of times TCP connections with Security
        Association parameter mismatches were closed down on this
        FCIP Link.  The last discontinuity of this counter is
        indicated by fcipLinkCreateTime."
   REFERENCE
       "RFC 3821, Section 9.4.2, TCP Connection Security
        Associations (SAs)"
   ::= { fcipLinkErrorsEntry 12  }

-- ****************************************************************** -- Conformance Statements --

fcipCompliances OBJECT IDENTIFIER ::= { fcipConformance 1 } fcipGroups OBJECT IDENTIFIER ::= { fcipConformance 2 }

fcipCompliance MODULE-COMPLIANCE

   STATUS current
   DESCRIPTION
       "Compliance statement for FCIP MIB."
   MODULE       -- this module
       MANDATORY-GROUPS {
           fcipEntityScalarGroup,
           fcipEntityInstanceGroup,
           fcipLinkGroup,
           fcipTcpConnGroup,
           fcipDiscoveryDomainGroup,
           fcipLinkErrorsGroup
       }
       GROUP   fcipDynamicRouteGroup
       DESCRIPTION
           "This group is mandatory only for systems that do not
            have these objects in any other FC MIB.  It may be
            implemented even in that case for convenience."
       GROUP   fcipStaticRouteGroup
       DESCRIPTION
           "This group is mandatory only for systems that do not
            have these objects in any other FC MIB.  It may be
            implemented even in that case for convenience."
      OBJECT   fcipEntityAddressType
      SYNTAX   INTEGER { ipv4(1), ipv6(2) }
      DESCRIPTION
          "Only IPv4 and IPv6 address types need to be supported for
           addressing FCIP entities."
      OBJECT   fcipEntityAddress
      SYNTAX   InetAddress (SIZE(4|16))
      DESCRIPTION
          "Size of FCIP entity's IP address depends on address type.
           FCIP entity address size is four if the IP address is
           IPv4 and sixteen if the IP address type is IPv6."
      OBJECT   fcipLinkLocalFcipEntityAddressType
      SYNTAX   INTEGER { ipv4(1), ipv6(2) }
      DESCRIPTION
          "Only IPv4 and IPv6 address types need to be supported for
           addressing the local FCIP entities."
      OBJECT   fcipLinkLocalFcipEntityAddress
      SYNTAX   InetAddress (SIZE(4|16))
      DESCRIPTION
          "Size of FCIP entity's IP address depends on address type.
           FCIP entity address size is four if the IP address is
           IPv4 and sixteen if the IP address type is IPv6."
      OBJECT   fcipLinkRemFcipEntityAddressType
      SYNTAX   INTEGER { ipv4(1), ipv6(2) }
      DESCRIPTION
          "Only IPv4 and IPv6 address types need to be supported for
           addressing the remote FCIP entities."
      OBJECT   fcipLinkRemFcipEntityAddress
      SYNTAX   InetAddress (SIZE(4|16))
      DESCRIPTION
          "Size of FCIP entity's IP address depends on the address
           type.  FCIP entity address size is four if the IP address
           is IPv4 and sixteen if the IP address type is IPv6."
   ::= { fcipCompliances 1 }

fcipEntityScalarGroup OBJECT-GROUP

   OBJECTS {   fcipDynIpConfType,
               fcipDeviceWWN,
               fcipEntitySACKOption
   }
   STATUS current
   DESCRIPTION
       "Collection of scalar objects applicable to all FCIP
        instances."
= { fcipGroups 1 }

fcipEntityInstanceGroup OBJECT-GROUP

   OBJECTS {
               fcipEntityName,
               fcipEntityAddressType,
               fcipEntityAddress,
               fcipEntityTcpConnPort,
               fcipEntitySeqNumWrap,
               fcipEntityPHBSupport,
               fcipEntityStatus
   }
   STATUS current
   DESCRIPTION
       "A collection of objects providing information about FCIP
        instances."
= { fcipGroups 2 }

fcipLinkGroup OBJECT-GROUP

   OBJECTS {
               fcipLinkIfIndex,
               fcipLinkCost,
               fcipLinkLocalFcipEntityMode,
               fcipLinkLocalFcipEntityAddressType,
               fcipLinkLocalFcipEntityAddress,
               fcipLinkRemFcipEntityWWN,
               fcipLinkRemFcipEntityId,
               fcipLinkRemFcipEntityAddressType,
               fcipLinkRemFcipEntityAddress,
               fcipLinkStatus,
               fcipLinkCreateTime
   }
   STATUS current
   DESCRIPTION
       "A collection of objects providing information about FCIP
        Links."
= { fcipGroups 3 }

fcipTcpConnGroup OBJECT-GROUP

   OBJECTS {
               fcipTcpConnRWSize,
               fcipTcpConnMSS
   }
   STATUS current
   DESCRIPTION
       "A collection of objects providing information about FCIP
        TCP connections."
= { fcipGroups 4 }

fcipDiscoveryDomainGroup OBJECT-GROUP

   OBJECTS {
               fcipDiscoveryDomainName
   }
   STATUS current
   DESCRIPTION
       "A collection of objects providing information about FCIP
        Discovery Domains."
= { fcipGroups 5 }

fcipLinkErrorsGroup OBJECT-GROUP

   OBJECTS {
       fcipLinkFcipLossofFcSynchs,
       fcipLinkFcipEncapErrors,
       fcipLinkFcipNotReceivedSfResps,
       fcipLinkFcipSfRespMismatches,
       fcipLinkFcipSfInvalidNonces,
       fcipLinkFcipReceivedSfDuplicates,
       fcipLinkFcipSfInvalidWWNs,
       fcipLinkFcipBB2LkaTimeOuts,
       fcipLinkFcipSntpExpiredTimeStamps,
       fcipLinkTcpTooManyErrors,
       fcipLinkTcpExcessiveDroppedDatagrams,
       fcipLinkTcpSaParamMismatches
   }
   STATUS current
   DESCRIPTION
       "A collection of objects providing information about FCIP
        link errors."
= { fcipGroups 6 }

fcipDynamicRouteGroup OBJECT-GROUP

   OBJECTS {
               fcipDynamicRouteLinkIndex
   }
   STATUS current
   DESCRIPTION
       "A collection of objects providing information about FCIP
        dynamic routes."
= { fcipGroups 7 }

fcipStaticRouteGroup OBJECT-GROUP

   OBJECTS {
               fcipStaticRouteLinkIndex,
               fcipStaticRouteStatus
   }
   STATUS current
   DESCRIPTION
       "A collection of objects providing information about FCIP
        static routes."
= { fcipGroups 8 }

END

Security Considerations

There are a number of management objects defined in this MIB that have a MAX-ACCESS clause of read-write and/or read-create. Such objects may be considered sensitive or vulnerable in some network environments. The support for SET operations in a non-secure environment without proper protection can have a negative effect on network operations. In particular, write access to fcipDiscoveryDomainName and fcipEntityAddress can cause a loss of reachability to portions of the Fibre Channel fabric, while write access to fcipStaticRouteStatus can create incorrect routes to remote devices.

There are a number of managed objects in this MIB that contain what could be considered as sensitive information. In particular, the objects which provide information on identification and network topology:

fcipDeviceWWN, fcipEntityName, fcipEntityAddress, fcipLinkLocalFcipEntityAddress, fcipLinkRemFcipEntityWWN, and fcipLinkRemFcipEntityAddress -- information on identification;

fcipDiscoveryDomainName -- information on discovery domains;

fcipDynamicRouteLinkIndex -- information on dynamic routes;

fcipStaticRouteLinkIndex and fcipStaticRouteStatus -- information on static routes

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 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.

IANA Considerations

The IANA has assigned a MIB OID assignment under the transmission branch. Specifically, { transmission 224 } for fcipMIB since this MIB contains the media-specific definitions that correspond to the ifType value of fcipLink(224).

Acknowledgements

The authors acknowledge significant feedback and guidance from NM Area advisor Keith McCloghrie, Cisco. Comments and input from members of the FCIP Working Group have also been incorporated.

Normative References

RFC3821 Rajagopal, M., Rodriguez, E., and R. Weber, "Fibre

           Channel Over TCP/IP (FCIP)", RFC 3821, July 2004.

[FCBB2] Fibre Channel Backbone -2 v6 (FC-BB-2), T11/03-078v0,

           February 2003.

[FC-SW-3] Fibre Channel Switch Fabric -3 (FC-SW-3), T11/03-018v4,

           December 2003.

RFC4044 McCloghrie, K., "Fibre Channel Management MIB", RFC 4044,

           May 2005.

RFC2863 McCloghrie, K. and F. Kastenholz, "The Interfaces Group

           MIB", RFC 2863, June 2000.

RFC2578 McCloghrie, K., Perkins, D., and J. Schoenwaelder,

           "Structure of Management Information Version 2 (SMIv2)",
           STD 58, RFC 2578, 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.

RFC2579 McCloghrie, K., Perkins, D., and J. Schoenwaelder,

           "Textual Conventions for SMIv2", STD 58, RFC 2579, April
           1999.

RFC2580 McCloghrie, K., Perkins, D., and J. Schoenwaelder,

           "Conformance Statements for SMIv2", STD 58, RFC 2580,
           April 1999.

RFC2474 Nichols, K., Blake, S., Baker, F., and D. Black,

           "Definition of the Differentiated Services Field (DS
           Field) in the IPv4 and IPv6 Headers", RFC 2474, December
           1998.

RFC4022 Raghunarayan, R., "Management Information Base for the

           Transmission Control Protocol (TCP)", RFC 4022, March
           2005.

RFC3822 Peterson, D., "Finding Fibre Channel over TCP/IP (FCIP)

           Entities Using Service Location Protocol version 2
           (SLPv2)", RFC 3822, July 2004.

RFC2883 Floyd, S., Mahdavi, J., Mathis, M., and M. Podolsky, "An

           Extension to the Selective Acknowledgement (SACK) Option
           for TCP", RFC 2883, July 2000.

RFC1323 Jacobson, V., Braden, R., and D. Borman, "TCP Extensions

           for High Performance", RFC 1323, May 1992.

RFC4001 Daniele, M., Haberman, B., Routhier, S., and J.

           Schoenwaelder, "Textual Conventions for Internet Network
           Addresses", RFC 4001, February 2005.

Informative References

RFC3410 Case, J., Mundy, R., Partain, D., and B. Stewart,

           "Introduction and Applicability Statements for Internet-
           Standard Management Framework", RFC 3410, December 2002.

Authors' Addresses

Anil Rijhsinghani Accton Technology Corporation 5 Mount Royal Ave Marlboro, MA 01752 USA

EMail: [email protected]

Ravi Natarajan F5 Networks 2460 North First Street, Suite 100 San Jose, CA 95131 USA

EMail: [email protected]

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.

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.

Intellectual Property

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 [email protected].

Acknowledgement

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