Information About FCoE
Fibre Channel over Ethernet (FCoE) provides a method of transporting Fibre Channel traffic over a physical Ethernet connection. FCoE requires the underlying Ethernet to be full duplex and to provide lossless behavior for Fibre Channel traffic.
Note |
Lossless behavior on Ethernet is provided by using a priority flow control (PFC) mechanism that prevents packet loss during congestion conditions. |
Cisco Nexus 5000 Series switches support T11-compliant FCoE on all 10-Gigabit Ethernet interfaces.
Information About FCoE and FIP
FCoE Initiation Protocol
The FCoE Initialization Protocol (FIP) allows the switch to discover and initialize FCoE-capable entities that are connected to an Ethernet LAN. Two versions of FIP are supported by the Cisco Nexus 5000 Series switch:
-
FIP—The Converged Enhanced Ethernet Data Center Bridging Exchange (CEE-DCBX) protocol supports T11-compliant Gen-2, Gen-3, and Gen-4 CNAs.
-
Pre-FIP—The Cisco, Intel, Nuova Data Center Bridging Exchange (CIN-DCBX) protocol supports Gen-1 converged network adapters (CNAs).
The Cisco Nexus 5000 Series switch detects the capabilities of the attached CNA and switches to the correct FIP mode.
FIP Virtual Link Instantiation
Cisco NX-OS Release 4.1(3)N1(1) adds support for the T11-compliant FIP on the Cisco Nexus 5000 Series switch.
FIP is used to perform device discovery, initialization, and link maintenance. FIP performs the following protocols:
-
FIP Discovery—When a FCoE device is connected to the fabric, it sends out a Discovery Solicitation message. A Fibre Channel Forwarder (FCF) or a switch responds to the message with a Solicited Advertisement that provides an FCF MAC address to use for subsequent logins.
-
FCoE Virtual Link instantiation— FIP defines the encapsulation of fabric login (FLOGI) , fabric discovery (FDISC), logout (LOGO), and exchange link parameters (ELP) frames along with the corresponding reply frames. The FCoE devices use these messages to perform a fabric login.
-
FCoE Virtual Link maintenance— FIP periodically sends maintenance messages between the switch and the CNA to ensure the connection is still valid.
FCoE Frame Format
FCoE is implemented by encapsulating a Fibre Channel frame in an Ethernet packet with a dedicated Ethertype, 0x8906. That packet has a 4-bit version field. The other header fields in the frame (the source and destination MAC addresses, VLAN tags, and frame markers) are all standard Ethernet fields. Reserved bits pad the FCoE frame to the IEEE 802.3 minimum packet length of 64 bytes.
A Fibre Channel frame consists of 36 bytes of headers and up to 2112 bytes of data for a total maximum size of 2148 bytes. The encapsulated Fibre Channel frame has all the standard headers, which allow it to be passed to the storage network without further modification. To accomodate the maximum Fibre Channel frame in an FCoE frame, the class-fcoe is defined with a default MTU of 2240 bytes.
VLAN Tagging for FCoE Frames
The Ethernet frames that are sent by the switch to the adapter may include the IEEE 802.1Q tag. This tag includes a field for the class of service (CoS) value used by the priority flow control (PFC). The IEEE 802.1Q tag also includes a VLAN field.
The Cisco Nexus 5000 Series switch expects frames from a FIP T11-compliant CNA to be tagged with the VLAN tag for the FCoE VLAN. Frames that are not correctly tagged are discarded.
The switch expects frames from a pre-FIP CNA to be priority tagged with the FCoE CoS value. The switch will still accept untagged frames from the CNA.
FIP Ethernet Frame Format
FIP is encapsulated in an Ethernet packet with a dedicated EtherType, 0x8914. The packet has a 4-bit version field. Along with the source and destination MAC addresses, the FIP packet also contains a FIP operation code and a FIP operation subcode. The following table describes the FIP operation codes.
FIP Operation Code |
FIP Subcode |
FIP Operation |
---|---|---|
0x0001 |
0x01 |
Discovery Solicitation |
0x02 |
Discovery Advertisement |
|
0x0002 |
0x01 |
Virtual Link Instantiation Request |
0x02 |
Virtual Link Instantiation Reply |
|
0x0003 |
0x01 |
FIP Keep Alive |
0x02 |
FIP Clear Virtual Links |
|
0x0004 |
0x01 |
FIP VLAN Request |
0x02 |
FIP VLAN Notification |
Pre-FIP Virtual Link Instantiation
Pre-FIP virtual link instantiation consists of two phases; link discovery using the Data Center Bridging Exchange protocol (DCBX), which is followed by Fabric Login.
The Cisco Nexus 5000 Series switch is backward compatible with Gen-1 CNAs that operate in pre-FIP mode.
Note |
Pre-FIP is also known as the Cisco, Intel, Nuova Data Center Bridging Exchange (CIN-DCBX) protocol. |
Information About DCBX
Data Center Bridging Exchange Protocol
The Data Center Bridging Exchange (DCBX) protocol is an extension of the Link Layer Discovery Protocol (LLDP). DCBX end points exchange request and acknowledgment messages. For flexibility, parameters are coded in a type-length-value (TLV) format.
The Cisco Nexus 5000 Series switch supports two versions of DCBX:
-
CEE-DCBX—The Converged Enhanced Ethernet DCBX is supported on all T11-compliant Gen-2, Gen-3, and Gen-4 CNAs
-
CIN-DCBX—The Cisco, Intel, Nuova DCBX is supported on Gen-1 converged network adapters (CNAs). CIN-DCBX is used to perform link detection in addition to other functions.
DCBX runs on the physical Ethernet link between the Cisco Nexus 5000 Series switch and the CNA. By default, DCBX is enabled on Ethernet interfaces. When an Ethernet interface is brought up, the switch automatically starts to communicate with the CNA. If the CNA supports both CIN and CEE mode, the switch and CNA will operate in CEE-DCBX mode.
During the normal operation of FCoE between the switch and the CNA, DCBX provides link-error detection.
DCBX is also used to negotiate capabilities between the switch and the CNA and to send configuration values to the CNA.
The CNAs that are connected to a Cisco Nexus 5000 Series switch are programmed to accept the configuration values sent by the switch, allowing the switch to distribute configuration values to all attached CNAs, which reduces the possibility of configuration errors and simplifies CNA administration.
DCBX Feature Negotiation
The switch and CNA exchange capability information and configuration values. The Cisco Nexus 5000 Series switches support the following capabilities:
-
FCoE—If the CNA supports FCoE capability, the switch sends the IEEE 802.1p CoS value to be used with FCoE packets.
-
Priority Flow Control (PFC)—If the adapter supports PFC, the switch sends the IEEE 802.1p CoS values to be enabled with PFC.
-
Priority group type-length-value (TLV)
-
Ethernet logical link up and down signal
-
FCoE logical link up and down signal for pre-FIP CNAs
The following rules determine whether the negotiation results in a capability being enabled:
-
If a capability and its configuration values match between the switch and the CNA, the feature is enabled.
-
If a capability matches, but the configuration values do not match, the following occurs:
-
If the CNA is configured to accept the switch configuration value, the capability is enabled using the switch value.
-
If the CNA is not configured to accept the switch configuration value, the capability remains disabled.
-
-
If the CNA does not support a DCBX capability, that capability remains disabled.
-
If the CNA does not implement DCBX, all capabilities remain disabled.
Note |
The Cisco Nexus 5000 Series switch provides CLI commands to manually override the results of the PFC negotiation with the adapter. On a per-interface basis, you can force capabilities to be enabled or disabled. |
Note |
The priority flow control (PFC) mode does not send PFC TLV and PFC will not negotiate between CNA and Cisco Nexus 5000 Series switches. |
Lossless Ethernet
Standard Ethernet is a best-effort medium which means that it lacks any form of flow control. In the event of congestion or collisions, Ethernet will drop packets. The higher level protocols detect the missing data and retransmit the dropped packets.
To properly support Fibre Channel, Ethernet has been enhanced with a priority flow control (PFC) mechanism.
Logical Link Up/Down
The following expansion modules provide native Fibre Channel ports to connect the Cisco Nexus 5000 Series switch to other Fibre Channel devices.
-
N5K-M1404 Cisco Nexus 5000 1000 Series Module 4x10GE 4xFC 4/2/1
-
N5K-M1008 Cisco Nexus 5000 1000 Series Module 8xFC 4/2/1
-
N5K-M1060 Cisco Nexus 5000 1000 Series Module 6xFC 8/4/2/1
On a native Fibre Channel link, some configuration actions (such as changing the VSAN) require that you reset the interface status. When you reset the interface status, the switch disables the interface and then immediately reenables the interface.
If an Ethernet link provides FCoE service, do not reset the physical link because this action is disruptive to all traffic on the link.
The logical link up/down feature allows the switch to reset an individual virtual link. The logical link down is signaled with a FIP Clear Virtual Link message.
For pre-FIP CNAs, the switch sends a DCBX message to request the CNA to reset only the virtual Fibre Channel interface.
Note |
If the CNA does not support the logical link level up/down feature, the CNA resets the physical link. In this case, all traffic on the Ethernet interface is disrupted. DCBX-based FC Logical Link Status signaling only applies to FCoE sessions to pre-FIP CNAs. |
Converged Network Adapters
The following types of CNAs are available:
-
Hardware adapter
-
Works with the existing Fibre Channel host bus adapter (HBA) driver and Ethernet Network Interface Card (NIC) driver in the server.
-
Server operating system view of the network is unchanged; the CNA presents a SAN interface and a LAN interface to the operating system.
-
-
FCoE software stack
-
Runs on existing 10-Gigabit Ethernet adapters.
-
Two generations of CNAs are supported by the Cisco Nexus 5000 Series switch:
-
A FIP adapter uses the FIP to exchange information about its available capabilities and to negotiate the configurable values with the switch.
-
A pre-FIP adapter uses DCBX to exchange information about its available capabilities and to negotiate the configurable values with the switch.
To reduce configuration errors and simplify administration, the switch distributes the configuration data to all the connected adapters.