|
Network Working Group Request for Comments: 4404 Category: Standards Track |
R. Natarajan F5 Networks A. Rijhsinghani Accton Technology Corporation February 2006 |
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 © The Internet Society (2006).
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.
1. The Internet-Standard Management Framework
2. Overview of FCIP Management Model
3. Relationship to Other MIBs
4. MIB Definitions
5. Security Considerations
6. IANA Considerations
7. Acknowledgements
8. Normative References
9. Informative References
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].
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:
Each FCIP Entity managed by this MIB is referred to as an FCIP Instance. The MIB is broken up as follows:
The FCIP Entity table contains information about this entity's existing instances of FCIP entities.
The FCIP link table contains information about this FCIP device's existing FCIP links.
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.
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.
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.
The FCIP Discovery Domain Table maps this device's FCIP Entities into FCIP Discovery Domains.
The FCIP Link Errors Table contains counters that indicate error conditions on an FCIP Link.
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.
This group is mandatory for all systems that implement TCP. Objects relevant to TCP must be obtained from this group [RFC4022].
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.
The Fibre Channel Management MIB [RFC4044] is assumed for FC functionality managed 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'.
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© 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
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.
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).
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.
[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.
[RFC3410] Case, J., Mundy, R., Partain, D., and B. Stewart,
"Introduction and Applicability Statements for Internet-
Standard Management Framework", RFC 3410, December 2002.
Anil Rijhsinghani
Accton Technology Corporation
5 Mount Royal Ave
Marlboro, MA 01752
USA
EMail: anil@charter.net
Ravi Natarajan
F5 Networks
2460 North First Street, Suite 100
San Jose, CA 95131
USA
EMail: r.natarajan@f5.com
Copyright © 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.
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.
Funding for the RFC Editor function is provided by the IETF Administrative Support Activity (IASA).