Independent Submission D. Melman Request for Comments: 6847 T. Mizrahi Category: Informational Marvell ISSN: 2070-1721 D. Eastlake Huawei January 2013 Fibre Channel over Ethernet (FCoE) over Transparent Interconnection of Lots of Links (TRILL) Abstract Fibre Channel over Ethernet (FCoE) and TRILL are two emerging standards in the data center environment. While these two protocols are seemingly unrelated, they have a very similar behavior in the forwarding plane, as both perform hop-by-hop forwarding over Ethernet, modifying the packet's Media Access Control (MAC) addresses at each hop. This document describes an architecture for the integrated deployment of these two protocols. Status of This Memo This document is not an Internet Standards Track specification; it is published for informational purposes. This is a contribution to the RFC Series, independently of any other RFC stream. The RFC Editor has chosen to publish this document at its discretion and makes no statement about its value for implementation or deployment. Documents approved for publication by the RFC Editor are not a candidate for any level of Internet Standard; see Section 2 of RFC 5741. Information about the current status of this document, any errata, and how to provide feedback on it may be obtained at http://www.rfc-editor.org/info/rfc6847. Copyright Notice Copyright (c) 2013 IETF Trust and the persons identified as the document authors. All rights reserved. This document is subject to BCP 78 and the IETF Trust's Legal Provisions Relating to IETF Documents (http://trustee.ietf.org/license-info) in effect on the date of publication of this document. Please review these documents carefully, as they describe your rights and restrictions with respect to this document. Table of Contents 1. Introduction ................................................. 2 2. Abbreviations ................................................ 3 3. FCoE over TRILL .............................................. 4 3.1. FCoE over a TRILL Cloud ................................. 4 3.2. FCoE over an RBridge .................................... 5 3.2.1. FCRB ............................................... 5 3.2.2. Topology ........................................... 7 3.2.3. The FCRB Flow ..................................... 8 3.2.3.1. Example - ENode to ENode ..................... 8 3.2.3.1.1. Forwarding from A to C in Dense Mode .... 9 3.2.3.1.2. Forwarding from A to C in Sparse Mode ... 9 3.2.3.2. Example - ENode to Native FC Node ............ 10 3.2.3.3. Example - ENode to ENode with Non-FCRB EoR ... 10 3.2.3.4. Example - FCoE Control Traffic through an FCRB 11 4. Security Considerations ..................................... 12 5. Acknowledgments ............................................. 12 6. References .................................................. 12 6.1. Normative References ................................... 12 6.2. Informative References ................................. 12 1. Introduction Data center networks are rapidly evolving towards a consolidated approach, in which Ethernet is used as the common infrastructure for all types of traffic. Storage traffic was traditionally dominated by the Fibre Channel (FC) protocol suite. At the intersection between these two technologies a new technology was born, Fibre Channel over Ethernet (FCoE), in which native FC packets are encapsulated with an FCoE encapsulation over an Ethernet header. FCoE is specified in [FC-BB-5]. (A future version of FCoE is under development and is expected to be specified in a document to be referred to as FC-BB-6; however, this is a work in progress and is beyond the scope of this document.) Traffic between two FCoE end nodes (ENodes) is forwarded through one or more FCoE Forwarders (FCFs). An FCF takes a forwarding decision based on the Fibre Channel destination ID (D_ID), and enforces security policies between ENodes, also known as zoning. Once an FCF takes a forwarding decision, it modifies the source and destination MAC addresses of the packet, to reflect the path to the next-hop FCF or ENode. An FCoE virtual link is an Ethernet link between an ENode and an FCF, or between two FCFs. An FCoE virtual link may traverse one or more Layer 2 bridges. FCFs use a routing protocol called Fabric Shortest Path First (FSPF) to find the optimal path to each destination. An FCF typically has one or more native Fibre Channel interfaces, allowing it to communicate with native Fibre Channel devices, e.g., storage arrays. TRILL [TRILL] is a protocol for transparent least-cost routing, where Routing Bridges (RBridges) forward traffic to their destination based on a least-cost route, using a TRILL encapsulation header. RBridges route TRILL-encapsulated packets based on the egress RBridge nickname in the TRILL header. An RBridge routes a TRILL-encapsulated packet after modifying its MAC addresses to reflect the path to the next-hop RBridge and decrementing a Hop Count field. TRILL and FCoE bear a strong resemblance in their forwarding planes. Both protocols take a routing decision based on protocol addresses above Layer 2, and both modify the Ethernet MAC addresses on a per- hop basis. Each of the protocols uses its own routing protocol rather than using any type of bridging protocol, such as the spanning tree protocol [802.1Q] or the Shortest Path Bridging protocol [802.1Q]. FCoE and TRILL are both targeted at the data center environment, and their concurrent deployment is self-evident. This document describes an architecture for the integrated deployment of these two protocols. 2. Abbreviations DCB Data Center Bridging ENode FCoE Node such as server or storage array EoR End of Row FC Fibre Channel FCF FCoE Forwarder FCoE Fibre Channel over Ethernet FCRB FCF over RBridge FIP FCoE Initialization Protocol FSPF Fabric Shortest Path First LAN Local Area Network RBridge Routing Bridge SAN Storage Area Network ToR Top of Rack TRILL Transparent Interconnection of Lots of Links WAN Wide Area Network 3. FCoE over TRILL 3.1. FCoE over a TRILL Cloud The simplest approach for running FCoE traffic over a TRILL network is presented in Figure 1. The figure illustrates a TRILL-enabled network, in which FCoE traffic is transparently forwarded over the TRILL cloud. The figure illustrates two ENodes, a Server and an FCoE Storage Array, an FCF, and a native Fibre Channel SAN connected to the FCF. FCoE traffic between the two ENodes is sent from the first ENode over the TRILL cloud to the FCF, and then back through the TRILL cloud to the second ENode. +---+ | |_________ | | \ ___ _ +---+ \/ \_/ \__ _ __ FCoE Storage _/ \ / \_/ \_ Array / TRILL / +---+ \_ \ (ENode A) \_ Cloud /________| |____/ SAN _/ / \ | | \__ _/ \__/\_ ___/ +---+ \_/ +---+ / \_/ FCF | |________/ | | +---+ Server (ENode B) Figure 1. The "Separate Cloud" Approach The configuration in Figure 1 separates the TRILL cloud(s) and the FCoE cloud(s). The TRILL cloud routes FCoE traffic as standard Ethernet traffic, and appears to the ENodes and FCF as an Ethernet LAN. FCoE traffic routed over the TRILL cloud includes FCoE data frames, as well as FCoE control traffic, including FCoE Initialization Protocol (FIP) frames. To eliminate frame loss due to queue overflow, the switches in any TRILL Cloud used with FCoE would likely implement and use the relevant DCB protocols[TRILLDCB].[TRILLPFC] [TRILLCN]. The main drawbacks of the Separate Cloud approach are that RBridges and FCFs are separate nodes in the network, resulting in more cabling and boxes, and that communication between ENodes usually requires traversing the TRILL cloud twice, so there are twice as many hops. As mentioned above, data center networking is converging towards a consolidated and cost-effective approach, where the same infrastructure and equipment are used for both data and storage traffic, and where high efficiency and minimal number of hops are important factors when designing the network topology. The Separate Cloud approach is presented as background to clarify the motivation to develop an alternative approach with a higher level of integration. 3.2. FCoE over an RBridge 3.2.1. FCRB Rather than using the Separate Cloud approach discussed in Section 3.1, an alternate approach is presented, where each switch incorporates both an FCF entity and an RBridge entity. This consolidated entity is referred to as FCoE-forwarder-over-RBridge (FCRB). Figure 2 illustrates an FCRB and its main building blocks. An FCRB can be functionally viewed as two independent entities: o An FCoE Forwarder (FCF) entity. o An RBridge entity. The FCF entity is connected to one of the ports of the RBridge, and appears to the RBridge as a native Ethernet host. A detailed description of the interaction between the layers is presented in Section 3.2.3. Note: In this document, the term "FCF" is used slightly differently than defined in [FC-BB-5] to emphasize the concept that an FCRB is logically similar to an RBridge cascaded to an FCF. In the terminology defined in [FC-BB-5], an FCRB would be referred to as an FCF, and the FCF building block in Figure 2 would be referred to as an FC switching element. +-------------------+ |FCRB | | +-----------+ | Native FC | | FCF |------ Interface | +-----+-----+ | | | | | +-----+-----+ | | | RBridge | | | +-+-+---+-+-+ | | | | | | | +-----|-|---|-|-----+ FCoE/ / | | | +---+ Ethernet / / | | FCoE / Ethernet | |___________________/ / | | over TRILL ___ _ | | / | | / \_/ \__ +---+ / | \_____________ _/ \ FCoE Storage / \_______________/ TRILL / Array / \_ Cloud / (ENode A) / / \ / \__/\_ ___/ +---+ / \_/ | |______________/ | | +---+ Server (ENode B) Figure 2. FCRB Entity in the Network The FCRB entity maintains layer independence between the TRILL and FCoE protocols, while enabling both protocols on the same network. Note that FCoE traffic is always forwarded through an FCF and cannot be forwarded directly between two ENodes. Thus, FCoE traffic between ENodes A and B in the topology in Figure 1 is forwarded through the path ENode A-->TRILL cloud-->FCF-->TRILL cloud-->ENode B As opposed to the topology in Figure 1, the FCF in Figure 2 is adjacent to ENodes A and B. In Figure 2, the FCRB is connected to ENodes A and B, and functions as the edge RBridge that connects these two nodes to the TRILL cloud, as well as the FCF that forwards traffic between these two nodes. Thus, traffic between ENodes A and B in the topology in Figure 2 is forwarded through the path ENode A-->FCRB-->ENode B Hence, the usage of FCRB entities allows TRILL and FCoE to use common infrastructure and equipment, as opposed to requiring separate infrastructure as shown in the Separate Cloud topology presented in Figure 1. 3.2.2. Topology The network configuration illustrated in Figure 3 shows a typical topology of a data center network. Servers are hierarchically connected through Top-of-Rack (ToR) switches, also known as access switches, and each set of racks is aggregated through an End-of-Row (EoR) switch. The EoR switches are aggregated to the core switches, which may be connected to other clouds, such as an external WAN or a native FC SAN. _ __ _ __ / \_/ \_ / \_/ \_ \_ \ \_ \ .... / SAN _/ / WAN _/ \__ _/ \__ _/ \_/ \_/ | | | | +------+ +------+ Core | | | | FCoE over | | | | RBridge | | | | (FCRB) +------+ +------+ | \___ ___/ | | \ / | | \/ | EoR +----+_______/\_______+----+ FCoE over | | | | RBridge | | | | (FCRB) +----+ +----+ / \ / \ / \ / \ ToR +---+ +---+ +---+ +---+ FCoE over | | | | | | | | RBridge | | | | | | | | (FCRB) +---+ +---+ +---+ +---+ / \ / \ / \ / \ / \ / \ / \ / \ +-+ +-+ +-+ +-+ +-+ +-+ +-+ +-+ Servers/ | | | | | | | | | | | | | | | | ENodes +-+ +-+ +-+ +-+ +-+ +-+ +-+ +-+ A B C D E F G H Figure 3. FCoE over RBridge Topology Note that in the example in Figure 3, all the ToR, EoR, and core switches are FCRB entities, but it is also possible for some of the network nodes to be pure RBridges, creating a topology in which FCRBs are interconnected through TRILL clouds. 3.2.3. The FCRB Flow 3.2.3.1. Example - ENode to ENode FCoE traffic sent between the two ENodes A and B in Figure 3 is transmitted through the ToR FCRB, since A and B are connected to the same ToR. Traffic between ENodes A and C must be forwarded through the EoR FCRB. The FCoE jargon distinguishes between two deployment modes: o Sparse mode: an FCoE packet sent between two FCFs may be forwarded over several hops of a Layer 2 network, allowing the underlying Layer 2 network to determine the path between the two FCFs. o Dense mode: each node along the path between two FCFs is also an FCF, and the network is configured such that the forwarding decision at each hop is taken at the FCF layer, allowing the path between the two FCFs to be based on the FSPF routing protocol. Figure 4 illustrates the traffic between ENodes A and C, which are not connected to the same ToR. The following two subsections describe the forwarding procedure in the Dense mode and in the Sparse mode, respectively. +--------+ +--------+ +--------+ +--------+ +--------+ | FCoE |.....| FCF |.....| FCF |.....| FCF |.....| FCoE | | ENode | +--------+ +--------+ +--------+ | ENode | | | |RBridge |.....|RBridge |.....|RBridge | | | +--------+ +--------+ +--------+ +--------+ +--------+ |Ethernet|<===>|Ethernet|<===>|Ethernet|<===>|Ethernet|<===>|Ethernet| +--------+ +--------+ +--------+ +--------+ +--------+ Server ToR 1 EoR ToR 2 FCoE Storage ENode A FCRB FCRB FCRB Array ENode C Figure 4. Traffic between two ENodes - Example 3.2.3.1.1. Forwarding from A to C in Dense Mode o FCoE traffic from A is sent to ToR 1 over the Ethernet interface. The destination MAC address is the address of the FCF entity at ToR 1. o ToR 1: o The packet is forwarded to the FCF entity at the ToR. Thus, forwarding between ENode A and the FCF at the ToR is analogous to forwarding between two Ethernet hosts. o The FCF entity at the ToR takes a forwarding decision based on the FC addresses. This decision is based on the FSPF routing protocol at the FCF layer. The FCF entity at the ToR forwards the packet to the FCF entity in the EoR. o The FCF then updates the destination MAC address of the packet to the address of the EoR FCF. o The packet is forwarded to the RBridge entity, where it is encapsulated in a TRILL header, and sent to the RBridge at the EoR over a single hop of the TRILL network. o The RBridge entity in the EoR FCRB, acting as the egress RBridge, decapsulates the TRILL header and forwards the FCoE packet to the FCF entity. From this point, the forwarding process is similar to the one described above for the ToR. o A similar forwarding process takes place at the next-hop ToR FCRB, where the FCRB finally forwards the FCoE packet to the target, ENode C. 3.2.3.1.2. Forwarding from A to C in Sparse Mode o Traffic is forwarded to ToR 1, as described in Section 3.2.3.1.1. o The FCF in ToR 1, based on an FSPF forwarding decision, forwards the packet to the FCF in ToR 2. The destination MAC address of the FCoE packet is updated, reflecting the FCF in ToR 2. The RBridge entity in ToR 2 adds a TRILL encapsulation, with an egress RBridge nickname representing ToR 2. o The packet reaches the EoR. The RBridge entity in the EoR routes the packet to the RBridge entity in ToR 2. o The packet reaches ToR 2. From this point on, the process is identical to the one described in Section 3.2.3.1.1. 3.2.3.2. Example - ENode to Native FC Node +--------+ +--------+ +--------+ +---------+ +--------+ | FCoE |.....| FCF |.....| FCF |.....| FCF |.....| FC | | ENode | +--------+ +--------+ +----+----+ |protocol| | | |RBridge |.....|RBridge |.....| RB | | | stack | +--------+ +--------+ +--------+ +----+ FC | | | |Ethernet|<===>|Ethernet|<===>|Ethernet|<===>|Eth | |<===>| | +--------+ +--------+ +--------+ +----+----+ +--------+ Server ToR EoR Core Native FC ENode FCRB FCRB FCRB Storage Array Figure 5. Example of Traffic between an ENode and a Native FC Storage Array Figure 5 illustrates a second example, where traffic is sent between an ENode and an FC Storage Array, based on the network topology in Figure 3. o FCoE traffic from the ENode is sent to the ToR over the Ethernet interface. The forwarding process through the ToR FCRB and through the EoR is similar to the corresponding steps in Section 3.2.3.1. o When the packet reaches the core FCRB, the egress RBridge entity decapsulates the TRILL header and forwards the FCoE packet to the FCF entity. The packet is then forwarded as a native FC packet through the FC interface to the native FC node. 3.2.3.3. Example - ENode to ENode with Non-FCRB EoR The example illustrated in Figure 6 is similar to the one shown in Figure 4, except that the EoR is an RBridge rather than an FCRB. +--------+ +--------+ +--------+ +--------+ | FCoE |.....| FCF |....................| FCF |.....| FCoE | | ENode | +--------+ +--------+ +--------+ | ENode | | | |RBridge |.....|RBridge |.....|RBridge | | | +--------+ +--------+ +--------+ +--------+ +--------+ |Ethernet|<===>|Ethernet|<===>|Ethernet|<===>|Ethernet|<===>|Ethernet| +--------+ +--------+ +--------+ +--------+ +--------+ Server ToR 1 EoR ToR 2 FCoE Storage ENode A FCRB FCRB FCRB Array ENode C Figure 6. Example of Traffic between Two ENodes An FCoE packet sent from ENode A to C is forwarded as follows: o The packet is sent to the FCF in ToR 1, as in the previous example. o The FCF in ToR 1 takes a forwarding decision based on the FC addresses and forwards the packet to the next-hop FCF, which resides in ToR 2. This forwarding decision is taken at the FCF layer and is based on the FSPF routing protocol. o The packet is then forwarded to the RBridge entity in ToR 1, where it is encapsulated in a TRILL encapsulation, and forwarded to the RBridge at ToR 2. The packet is routed over the TRILL cloud through the RBridge at the EoR. The path through the TRILL cloud is determined by TRILL's IS-IS routing protocol. o Once the packet reaches ToR 2, it is forwarded in a similar manner to the description in Section 3.2.3.1. This example demonstrates that it is possible to have a hybrid network, in which some of the nodes are FCRBs and some of the nodes are RBridges. The forwarding procedure in this example is somewhat similar to the sparse-mode forwarding described in Section 3.2.3.1.2. 3.2.3.4. Example - FCoE Control Traffic through an FCRB The previous subsections focused on the data plane, i.e., storage data exchanges transported over an FCoE encapsulation. FCoE also requires control and management traffic that is used for initializing sessions (i.e., FIP), distributing routing information (i.e., FSPF), and administering and managing fabric. The FCoE Initialization Protocol (FIP) uses Ethernet frames with a dedicated Ethertype, allowing the FCF to distinguish these frames from other traffic. FIP uses both unicast and multicast traffic. The following example describes the forwarding scheme of a multicast FIP packet sent through the network depicted in Figure 4: o ENode A generates a multicast frame to a multicast MAC address that represents all the FCFs (All-FCF-MAC). o The packet is forwarded to the ToR FCRB node. The RBridge entity forwards a copy of the packet to its FCF entity, and also sends the packet through the TRILL cloud as a multicast TRILL encapsulated packet. o Each of the FCRBs then receives the packet, forwards a copy to its FCF entity, and forwards the packet through the TRILL network, allowing all the FCFs to receive the packet. While FIP packets have a dedicated Ethertype and frame format, other types of FCoE control and management frames use the same FCoE encapsulation as FCoE data traffic. Thus, the forwarding scheme for such control traffic is similar to the examples described in the previous subsections, with the exception that these frames can be sent between ENodes, between FCFs, or between ENodes and FCFs. 4. Security Considerations For general TRILL security considerations, see [TRILL]. For general FCoE security considerations, see Annex D of [FC-BB-5]. There are no additional security implications imposed by this document. 5. Acknowledgments The authors gratefully acknowledge Ayandeh Siamack and David Black for their helpful comments. The authors also thank the T11 committee for reviewing the document, and in particular Pat Thaler and Joe White for their useful input. 6. References 6.1. Normative References [TRILL] Perlman, R., Eastlake 3rd, D., Dutt, D., Gai, S., and A. Ghanwani, "Routing Bridges (RBridges): Base Protocol Specification", RFC 6325, July 2011. [FC-BB-5] ANSI INCITS 462: "Information Technology - Fibre Channel - Backbone - 5 (FC-BB-5)", May 2010. 6.2. Informative References [802.1Q] "IEEE Standard for Local and metropolitan area networks - Media Access Control (MAC) Bridges and Virtual Bridged Local Area Networks", IEEE Std 802.1Q(tm), 2012 Edition, October 2012.[TRILLDCB][TRILLPFC] Eastlake, 3rd., D., Wadekar, M., Ghanwani, A., Agarwal, P., and T. Mizrahi, "TRILL: Support of IEEE802.1Qbb, 802.1Qaz,802.1 Priority-based Flow Control and Enhanced Transmission Selection", Work in Progress, January 2013. [TRILLCN] Eastlake, 3rd., D., Wadekar, M., Ghanwani, A., Agarwal, P., and T. Mizrahi, "TRILL: Support of IEEE 802.1 Congestion Notification", Work in Progress,October 2012.January 2013. Authors' Addresses David Melman Marvell 6 Hamada St. Yokneam, 20692 Israel EMail: davidme@marvell.com Tal Mizrahi Marvell 6 Hamada St. Yokneam, 20692 Israel EMail: talmi@marvell.com Donald Eastlake 3rd Huawei USA R&D 155 Beaver Street Milford, MA 01757 USA Phone: +1-508-333-2270 EMail: d3e3e3@gmail.com