Detailed Description
An embodiment of the present invention provides a method for cross-data center interconnection in an FCoE network, where the method is applied to an FCoE network including a home FCF device and an opposite FCF device, and the home FCF device and the opposite FCF device are located in different data centers, as shown in fig. 2, the method includes the following steps:
step 201, the home terminal FCF device establishes a VFC virtual connection between the home terminal FCF device and the opposite terminal FCF device, and an MAC address of the VFC virtual connection is an FCoE MAC address of the opposite terminal FCF device. Further, the opposite-end FCF device establishes a VFC virtual connection between the opposite-end FCF device and the home-end FCF device, and the MAC address of the VFC virtual connection is the FCoE MAC address of the home-end FCF device.
In the embodiment of the invention, when the data centers are interconnected through an EVI network, an EVI LINK exists between the home terminal FCF equipment and the opposite terminal FCF equipment; the home terminal FCF device establishes a VFC virtual connection between the home terminal FCF device and the peer terminal FCF device, and specifically includes: the home terminal FCF equipment sends a discovery request message carrying an FCoE MAC address of the home terminal FCF equipment to the opposite terminal FCF equipment through the EVI LINK; after the home terminal FCF device receives a discovery announcement message responded by an opposite terminal FCF device aiming at the discovery request message, establishing VFC virtual connection between the home terminal FCF device and the opposite terminal FCF device by using an FCoE MAC address of the opposite terminal FCF device carried in the discovery announcement message, wherein the MAC address of the VFC virtual connection is the FCoE MAC address of the opposite terminal FCF device; or, the home terminal FCF device receives a discovery request message carrying an FCoE MAC address of the peer terminal FCF device from the peer terminal FCF device through the EVI LINK; the home terminal FCF device establishes VFC virtual connection between the home terminal FCF device and the opposite terminal FCF device by using the FCoE MAC address of the opposite terminal FCF device carried in the discovery request message, wherein the MAC address of the VFC virtual connection is the FCoE MAC address of the opposite terminal FCF device; and the home terminal FCF equipment sends a discovery notification message which carries the FCoE MAC address of the home terminal FCF equipment and responds to the discovery request message to the opposite terminal FCF equipment through the EVILINK. The protocol type identifier in the header of GRE tunnel encapsulation of the discovery request message and the discovery notification message is used for establishing the VFC virtual connection.
In the embodiment of the invention, when data centers are interconnected through an MPLS network, a PW virtual link exists between the FCF equipment at the home terminal and the FCF equipment at the opposite terminal; the home terminal FCF device establishes a VFC virtual connection between the home terminal FCF device and the peer terminal FCF device, and specifically includes: the home terminal FCF equipment sends a discovery request message carrying an FCoE MAC address of the home terminal FCF equipment to the opposite terminal FCF equipment through the PW virtual link; after the home terminal FCF device receives a discovery announcement message responded by an opposite terminal FCF device aiming at the discovery request message, establishing VFC virtual connection between the home terminal FCF device and the opposite terminal FCF device by using an FCoE MAC address of the opposite terminal FCF device carried in the discovery announcement message, wherein the MAC address of the VFC virtual connection is the FCoE MAC address of the opposite terminal FCF device; or, the home terminal FCF device receives, through the PW virtual link, a discovery request packet carrying an FCoE MAC address of the peer terminal FCF device from the peer terminal FCF device; the home terminal FCF device establishes VFC virtual connection between the home terminal FCF device and the opposite terminal FCF device by using the FCoEMAC address of the opposite terminal FCF device carried in the discovery request message, wherein the MAC address of the VFC virtual connection is the FCoE MAC address of the opposite terminal FCF device; and the home terminal FCF equipment sends a discovery notification message which carries the FCoE MAC address of the home terminal FCF equipment and responds to the discovery request message to the opposite terminal FCF equipment through the PW virtual link. The headers of the MPLS tunnel encapsulation of the discovery request packet and the discovery notification packet include a Flow Label or a Control Word Label, and the Flow Label or the Control Word Label identifies the current packet for establishing the VFC virtual connection.
Step 202, after receiving the storage network message, the home-end FCF device queries the FC routing table through the destination FC ID carried in the storage network message. And if the query result is that the next hop of the storage network message is the opposite-end FCF device, determining that the output interface of the storage network message is VFC virtual connection, performing tunnel encapsulation on the storage network message, and sending the storage network message after tunnel encapsulation to the opposite-end FCF device.
Step 203, after receiving the storage network packet after tunnel encapsulation, the opposite-end FCF device decapsulates the tunnel encapsulation storage network packet, queries an FC routing table through a destination FC ID carried in the storage network packet after tunnel decapsulation, and sends the storage network packet after tunnel decapsulation by using the queried output interface. The tunnel decapsulation mode of the storage network message corresponds to the tunnel encapsulation thereof.
In the embodiment of the invention, when the data centers are interconnected through an EVI network, an EVI LINK exists between the home terminal FCF equipment and the opposite terminal FCF equipment; the process that the home terminal FCF device carries out tunnel encapsulation on the storage network message and sends the storage network message after tunnel encapsulation to the opposite terminal FCF device comprises the following steps:
when the storage network message is an FC message, home terminal FCF equipment carries out GRE tunnel encapsulation on the FC message; the destination IP address in the GRE tunnel header is the IP address of the opposite end FCF device, the source IP address in the GRE tunnel header is the IP address of the local end FCF device, and the protocol type in the GRE tunnel header is used for marking the load behind the GRE tunnel header as an FC message; then, the home terminal FCF device sends the FC message after GRE tunnel encapsulation to the opposite terminal FCF device through the EVI LINK between the home terminal FCF device and the opposite terminal FCF device; after receiving the FC message encapsulated by the GRE tunnel, the opposite-end FCF device decapsulates the FC message encapsulated by the GRE tunnel, queries an FC routing table through a target FC ID carried in the FC message decapsulated by the GRE tunnel, and sends the FC message decapsulated by the GRE tunnel by using the queried output interface; or when the storage network message is an FCoE message, the home-end FCF device sets the destination MAC address of the FCoE message as the FCoE MAC address of the opposite-end FCF device by using the MAC address of the VFC virtual connection, and performs GRE tunnel encapsulation on the FCoE message; the destination IP address in the GRE tunnel header is the IP address of the opposite end FCF equipment, the source IP address in the GRE tunnel header is the IP address of the local end FCF equipment, and the protocol type in the GRE tunnel header is used for marking the load behind the GRE tunnel header as an FCoE message; the home terminal FCF equipment sends the FCoE message after GRE tunnel encapsulation to the opposite terminal FCF equipment through an EVI LINK between the home terminal FCF equipment and the opposite terminal FCF equipment; after receiving the FCoE message encapsulated by the GRE tunnel, the FCoE device at the opposite terminal decapsulates the GRE tunnel of the FCoE message encapsulated by the GRE tunnel, and when the destination MAC address of the FCoE message after the GRE tunnel decapsulation is determined to be the FCoE MAC address of the FCoE device at the opposite terminal, queries an FC routing table through the destination FC ID carried in the FCoE message after the GRE tunnel decapsulation, and sends the FCoE message after the GRE tunnel decapsulation by using the queried output interface.
In the embodiment of the invention, when data centers are interconnected through an MPLS network, a PW virtual link exists between the FCF equipment at the home terminal and the FCF equipment at the opposite terminal; the process that the home terminal FCF device carries out tunnel encapsulation on the storage network message and sends the storage network message after tunnel encapsulation to the opposite terminal FCF device comprises the following steps:
when the storage network message is an FC message, home terminal FCF equipment performs MPLS tunnel encapsulation on the FC message; the MPLS Tunnel head comprises a public network Tunnel Label, a PW VC Label, a Flow Label Label or a Control Word Label, and the Flow Label Label or the Control Word Label is used for marking the load behind the MPLS Tunnel head as an FC message; the home terminal FCF equipment sends the FC message encapsulated by the MPLS tunnel to the opposite terminal FCF equipment through a PW virtual link between the home terminal FCF equipment and the opposite terminal FCF equipment; after receiving the FC message encapsulated by the MPLS tunnel, the opposite-end FCF device decapsulates the MPLS tunnel, inquires an FC routing table through a target FC ID carried in the FC message decapsulated by the MPLS tunnel, and sends the FC message decapsulated by the MPLS tunnel by using the inquired outlet interface; or when the storage network message is an FCoE message, the home-end FCF device sets the destination MAC address of the FCoE message as the FCoE MAC address of the opposite-end FCF device by using the VFC virtual connection MAC address, and performs MPLS tunnel encapsulation on the FCoE message; the MPLS Tunnel header comprises a public network Tunnel Label, a PW VC Label, a Flow Label Label or a Control Word Label, and the Flow Label Label or the Control Word Label is used for marking the load behind the MPLS Tunnel header as an FCoE message; the home terminal FCF equipment sends the FCoE message encapsulated by the MPLS tunnel to the opposite terminal FCF equipment through a PW virtual link between the home terminal FCF equipment and the opposite terminal FCF equipment; after receiving the FCoE message encapsulated by the MPLS tunnel, the opposite-end FCF device decapsulates the FCoE message encapsulated by the MPLS tunnel through a GRE tunnel, queries an FC routing table through a destination FC ID carried in the FCoE message decapsulated by the MPLS tunnel when determining that the destination MAC address of the FCoE message decapsulated by the MPLS tunnel is the FCoE MAC address of the opposite-end FCF device, and sends the FCoE message decapsulated by the MPLS tunnel by using the queried output interface.
In the embodiment of the invention, the home terminal FCF equipment and the opposite terminal FCF equipment are positioned in different data centers, and the different data centers can be interconnected through an EVI network or an MPLS network. When different data centers are interconnected through an EVI network, the home FCF device and the peer FCF device also serve as an ED (edge device) device of the EVI network on the basis of serving as an edge device of the FCoE network, and an EVI LINK exists between the home FCF device and the peer FCF device. When different data centers are interconnected through an MPLS network, the home terminal FCF device and the opposite terminal FCF device are also used as an operator edge device of the MPLS network on the basis of being used as an edge device of the FCoE network, and a PW virtual link exists between the home terminal FCF device and the opposite terminal FCF device.
In the first case, as shown in fig. 3, the first case is a networking schematic diagram in which different data centers are interconnected through an EVI network, each FCF device serves as an edge device of the FCoE network and also serves as an ED device of the EVI network, and EVI LINK connections exist between the FCF devices. Taking two FCF devices as an example, the two FCF devices are FCF1 and FCF2, respectively. The FCF1 is a home FCF device and the FCF2 is a peer FCF device, or the FCF2 is a home FCF device and the FCF1 is a peer FCF device. For convenience of description, the FCF1 is taken as a home FCF device, and the FCF2 is taken as a peer FCF device for illustration.
In this networking situation, forstep 201, the process of the local FCF device establishing the VFC virtual connection between the local FCF device and the peer FCF device specifically includes, but is not limited to, the following manners:
in a first mode, a home FCF device (FCF 1) triggers establishment of a VFC virtual connection between the home FCF device and an opposite FCF device (FCF 2), and the method specifically includes the following steps:
step 1, the FCF1 generates a discovery request message for establishing the VFC virtual connection, where the discovery request message carries an FCoE MAC address of the FCF1, and the discovery request message is a discovery request message based on FIP (fcoeionization Protocol, ethernet-based fibre channel initialization Protocol).
Step 2, the FCF1 performs GRE (Generic Route Encapsulation) tunnel Encapsulation on the discovery request message. In the discovery request message after encapsulation of the GRE tunnel, the destination IP address in the GRE tunnel header is the IP address of FCF2, the source IP address in the GRE tunnel header is the IP address of FCF1, and the protocol type identifier in the GRE tunnel header is used for establishing the VFC virtual connection.
And step 3, the FCF1 sends the discovery request message after GRE tunnel encapsulation to the FCF2 through the EVI LINK. Wherein the EVI LINK is between FCF1 and FCF 2.
Specifically, in the FCoE network, the creation of a VFC virtual connection between FCF devices needs to be performed remotely using FIP. Based on this, the FCF1 generates a discovery request message for establishing the VFC virtual connection, performs GRE tunnel encapsulation on the discovery request message, and sends the discovery request message after GRE tunnel encapsulation to the FCF2 at the opposite end of the EVI LINK to start establishing the VFC virtual connection. Wherein, the discovery request message carries the FCoE MAC address of the FCF1, the destination IP address in the GRE tunnel header is the IP address of FCF2, and the source IP address in the GRE tunnel header is the IP address of FCF 1; in addition, in order to distinguish from the existing EVI data packet, the protocol type in the GRE tunnel header may be set to 0x8914, so as to identify the current packet as an FIP protocol packet, and identify the current packet for establishing the VFC virtual connection.
Further, after the FCF1 sends the discovery request packet after GRE tunnel encapsulation to the FCF2 through the EVI LINK, the discovery request packet after GRE tunnel encapsulation is IP-forwarded on the EVI network, and since the destination IP address in the GRE tunnel header is the IP address of the FCF2, the discovery request packet after GRE tunnel encapsulation is finally forwarded to the FCF 2.
Step 4, after receiving the discovery request message encapsulated by the GRE tunnel, if the protocol type identifier is identified to be used for establishing the VFC virtual connection in the current message, the FCF2 decapsulates the discovery request message encapsulated by the GRE tunnel to obtain the discovery request message, and establishes the VFC virtual connection between the FCF2 and the FCF1 by using the FCoE MAC address of the FCF1 carried in the discovery request message, where the MAC address of the VFC virtual connection is the FCoE MAC address of the FCF 1.
Step 5, the FCF2 generates a discovery announcement message for establishing the VFC virtual connection, where the discovery announcement message carries the FCoE MAC address of the FCF2, the discovery announcement message is a response message of the discovery request message, and the discovery announcement message is a FIP-based discovery announcement message.
And step 6, the FCF2 performs GRE tunnel encapsulation on the discovery notification message.
In the discovery notification message after encapsulation of the GRE tunnel, the destination IP address in the GRE tunnel header is the IP address of FCF1, the source IP address in the GRE tunnel header is the IP address of FCF2, and the protocol type identifier in the GRE tunnel header is used for establishing the VFC virtual connection.
And step 7, the FCF2 sends the discovery notification message after GRE tunnel encapsulation to the FCF1 through EVI LINK. Wherein the EVI LINK is between FCF2 and FCF 1.
Specifically, in the FCoE network, the creation of a VFC virtual connection between FCF devices needs to be performed remotely using FIP. Based on this, after receiving the discovery request message encapsulated by the GRE tunnel, if the protocol type identifier is identified to be used for establishing the VFC virtual connection, the FCF2 pops down the GRE tunnel header and parses the discovery request message, obtains and learns the FCoE MAC address of the FCF1, and establishes the VFC virtual connection between the FCF2 and the FCF1, where the MAC address of the VFC virtual connection is the FCoEMAC address of the FCF 1. Further, the FCF2 generates a discovery notification message for establishing the VFC virtual connection, performs GRE tunnel encapsulation on the discovery notification message, and sends the discovery notification message after GRE tunnel encapsulation to the FCF1 of the opposite end of the EVI LINK, so as to establish the VFC virtual connection. Wherein, the discovery notification message carries the FCoE MAC address of the FCF2, the destination IP address in the GRE tunnel header is the IP address of FCF1, and the source IP address in the GRE tunnel header is the IP address of FCF 2; in addition, in order to distinguish from the existing EVI data packet, the protocol type in the GRE tunnel header may be set to 0x8914, so as to identify the current packet as an FIP protocol packet, and identify the current packet for establishing the VFC virtual connection.
Further, after the FCF2 sends the discovery notification packet after GRE tunnel encapsulation to the FCF1 through the EVI LINK, the discovery notification packet after GRE tunnel encapsulation is IP-forwarded on the EVI network, and since the destination IP address in the GRE tunnel header is the IP address of the FCF1, the discovery notification packet after GRE tunnel encapsulation is finally forwarded to the FCF 1.
Step 8, after receiving the discovery announcement packet encapsulated by the GRE tunnel returned by the FCF2, if the protocol type identifier is identified to be used for establishing the VFC virtual connection, the FCF1 performs tunnel decapsulation on the discovery announcement packet encapsulated by the GRE tunnel to obtain the discovery announcement packet, and establishes the VFC virtual connection between the FCF1 and the FCF2 by using the FCoE MAC address of the FCF2 carried in the discovery announcement packet, and the MAC address of the VFC virtual connection is the FCoE MAC address of the FCF 2.
In the embodiment of the present invention, in the process that the FCF1 establishes the VFC virtual connection between the FCF1 and the FCF2 by using the FCoE MAC address of the FCF2 carried in the discovery notification message, the FCF2 periodically sends an unsolicited discovery notification message to the FCF1, and the GRE tunnel encapsulation mode of the unsolicited discovery notification message is the same as the GRE tunnel encapsulation mode of the discovery notification message, which is not described herein again; after receiving the unsolicited discovery notification message sent by the FCF2, the FCF1 establishes the VFC virtual connection between the FCF1 and the FCF2 by using the FCoEMAC address of the FCF2 carried in the discovery notification message. In the process that the FCF2 establishes the VFC virtual connection between the FCF2 and the FCF1 by using the FCoE MAC address of the FCF1 carried in the discovery request message, the FCF1 periodically sends a non-request discovery notification message to the FCF2, and the GRE tunnel encapsulation mode of the non-request discovery notification message is the same as that of the discovery request message, which is not described herein again; after receiving the unsolicited discovery notification packet sent by the FCF1, the FCF2 establishes the VFC virtual connection between the FCF2 and the FCF1 by using the FCoE MAC address of the FCF1 carried in the discovery request packet.
In the embodiment of the present invention, the FCF1 and the FCF2 further need to maintain the established VFC virtual connection by periodically sending an unsolicited discovery advertisement packet. Specifically, FCF2 periodically sends an unsolicited discovery announcement packet to FCF1, and deletes the VFC virtual connection between FCF1 and FCF2 if FCF1 does not receive the unsolicited discovery announcement packet from FCF2 within a specified time interval. FCF1 periodically sends unsolicited discovery advertisement messages to FCF2, and deletes the VFC virtual connection between FCF2 and FCF1 if FCF2 does not receive unsolicited discovery advertisement messages from FCF1 within a specified time interval.
And in a second mode, triggering and establishing the VFC virtual connection between the opposite-end FCF device (FCF 2) and the home-end FCF device (FCF 1) by the opposite-end FCF device (FCF 2), wherein the second mode specifically comprises the following steps:
step 1, the FCF2 generates a discovery request message for establishing VFC virtual connection, performs GRE tunnel encapsulation on the discovery request message, and sends the discovery request message after GRE tunnel encapsulation to the FCF1 through the EVI LINK. Wherein the EVI LINK is between FCF2 and FCF 1; the discovery request message carries the FCoE MAC address of the FCF2, and is a discovery request message based on FIP; in the discovery request message after encapsulation of the GRE tunnel, the destination IP address in the GRE tunnel header is the IP address of FCF1, the source IP address in the GRE tunnel header is the IP address of FCF2, and the protocol type identifier current message in the GRE tunnel header is used for establishing the VFC virtual connection.
Specifically, in the FCoE network, the creation of a VFC virtual connection between FCF devices needs to be performed remotely using FIP. Based on this, the FCF2 generates a discovery request message for establishing the VFC virtual connection, performs GRE tunnel encapsulation on the discovery request message, and sends the discovery request message after GRE tunnel encapsulation to the FCF1 at the opposite end of the EVI LINK to start establishing the VFC virtual connection. Wherein, the discovery request message carries the FCoE MAC address of the FCF2, the destination IP address in the GRE tunnel header is the IP address of FCF1, and the source IP address in the GRE tunnel header is the IP address of FCF 2; in addition, in order to distinguish from the existing EVI data packet, the protocol type in the GRE tunnel header may be set to 0x8914, so as to identify the current packet as an FIP protocol packet, and identify the current packet for establishing the VFC virtual connection.
Further, after the FCF2 sends the discovery request packet after GRE tunnel encapsulation to the FCF1 through the EVI LINK, the discovery request packet after GRE tunnel encapsulation is IP-forwarded on the EVI network, and since the destination IP address in the GRE tunnel header is the IP address of the FCF1, the discovery request packet after GRE tunnel encapsulation is finally forwarded to the FCF 1.
Step 2, after receiving the discovery request message encapsulated by the GRE tunnel, if the protocol type identifier is identified to be used for establishing the VFC virtual connection in the current message, the FCF1 decapsulates the discovery request message encapsulated by the GRE tunnel to obtain the discovery request message, and establishes the VFC virtual connection between the FCF1 and the FCF2 by using the FCoE MAC address of the FCF2 carried in the discovery request message, where the MAC address of the VFC virtual connection is the FCoE MAC address of the FCF 2.
And step 3, the FCF1 generates a discovery notification message for establishing the VFC virtual connection, performs GRE tunnel encapsulation on the discovery notification message, and sends the discovery notification message after GRE tunnel encapsulation to the FCF2 through the EVI LINK. The discovery notification message carries the FCoE MAC address of the FCF1, is a response message of the discovery request message, and is a discovery notification message based on FIP; in the discovery notification message after encapsulation of the GRE tunnel, the destination IP address in the GRE tunnel header is the IP address of FCF2, the source IP address in the GRE tunnel header is the IP address of FCF1, and the protocol type identifier in the GRE tunnel header is used for establishing the VFC virtual connection.
Specifically, after receiving the discovery request packet encapsulated by the GRE tunnel, if the protocol type identifier identifies that the current packet is used to establish the VFC virtual connection, the FCF1 pops down the GRE tunnel header and parses the discovery request packet, obtains and learns the FCoE MAC address of the FCF2, and establishes the VFC virtual connection between the FCF1 and the FCF2, where the MAC address of the VFC virtual connection is the FCoE MAC address of the FCF 2. Further, the FCF1 generates a discovery notification message for establishing the VFC virtual connection, performs GRE tunnel encapsulation on the discovery notification message, and sends the discovery notification message after GRE tunnel encapsulation to the FCF2 of the opposite end of the EVI LINK, so as to establish the VFC virtual connection. Wherein, the discovery notification message carries the FCoE MAC address of the FCF1, the destination IP address in the GRE tunnel header is the IP address of FCF2, and the source IP address in the GRE tunnel header is the IP address of FCF 1; in addition, in order to distinguish from the existing EVI data packet, the protocol type in the GRE tunnel header may be set to 0x8914, so as to identify the current packet as an FIP protocol packet, and identify the current packet for establishing the VFC virtual connection.
Further, after the FCF1 sends the discovery notification packet after GRE tunnel encapsulation to the FCF2 through the EVI LINK, the discovery notification packet after GRE tunnel encapsulation is IP-forwarded on the EVI network, and since the destination IP address in the GRE tunnel header is the IP address of the FCF2, the discovery notification packet after GRE tunnel encapsulation is finally forwarded to the FCF 2.
Step 4, after receiving the discovery announcement message encapsulated by the GRE tunnel returned by the FCF1, if the protocol type identifier is identified to be used for establishing the VFC virtual connection, the FCF2 performs tunnel decapsulation on the discovery announcement message encapsulated by the GRE tunnel to obtain the discovery announcement message, and establishes the VFC virtual connection between the FCF2 and the FCF1 by using the FCoE MAC address of the FCF1 carried in the discovery announcement message, and the MAC address of the VFC virtual connection is the FCoE MAC address of the FCF 1.
In the embodiment of the present invention, in the process that the FCF1 establishes the VFC virtual connection between the FCF1 and the FCF2 by using the FCoE MAC address of the FCF2 carried in the discovery request message, the FCF2 periodically sends an unsolicited discovery notification message to the FCF1, and the GRE tunnel encapsulation mode of the unsolicited discovery notification message is the same as the GRE tunnel encapsulation mode of the discovery notification message, which is not described herein again; after receiving the unsolicited discovery notification message sent by the FCF2, the FCF1 establishes the VFC virtual connection between the FCF1 and the FCF2 by using the FCoEMAC address of the FCF2 carried in the discovery request message. In the process that the FCF2 establishes the VFC virtual connection between the FCF2 and the FCF1 by using the FCoE MAC address of the FCF1 carried in the discovery notification message, the FCF1 periodically sends an unsolicited discovery notification message to the FCF2, and the GRE tunnel encapsulation mode of the unsolicited discovery notification message is the same as that of the discovery request message, and is not described herein again; after receiving the unsolicited discovery notification packet sent by the FCF1, the FCF2 establishes the VFC virtual connection between the FCF2 and the FCF1 by using the FCoE MAC address of the FCF1 carried in the discovery notification packet.
In the embodiment of the present invention, the FCF1 and the FCF2 further need to maintain the established VFC virtual connection by periodically sending an unsolicited discovery advertisement packet. Specifically, FCF2 periodically sends an unsolicited discovery announcement packet to FCF1, and deletes the VFC virtual connection between FCF1 and FCF2 if FCF1 does not receive the unsolicited discovery announcement packet from FCF2 within a specified time interval. FCF1 periodically sends unsolicited discovery advertisement messages to FCF2, and deletes the VFC virtual connection between FCF2 and FCF1 if FCF2 does not receive unsolicited discovery advertisement messages from FCF1 within a specified time interval.
Based on the above processing, after the VFC virtual connection is established between FCF1 and FCF2, the VFC virtual connection is equivalent to a VFC interface locally maintained by FCF1 or FCF2, and FCF1 or FCF2 may send an FC packet or FCoE packet in the data center to another data center.
As shown in fig. 3, FCF1 and FCF2 are in different data centers. The FCF1 is connected to the LAN1, SAN1, and ENODE1, respectively, inside the data center 1; the LAN1 is Ethernet, and the message between the FCF1 and the CE1 is a two-layer Ethernet message; SAN1 is a storage optical fiber network, and the message between FCF1 and FC1 is an FC message; the ENODE1 is a device supporting FCoE, and the messages between the FCF1 and the ENDOE1 are two-layer Ethernet messages and FCoE messages. The FCF2 is connected to the LAN2, SAN2, and ENODE2, respectively, inside the data center 2; the LAN2 is Ethernet, and the message between the FCF2 and the CE2 is a two-layer Ethernet message; SAN2 is a storage optical fiber network, and the message between FCF2 and FC2 is an FC message; the ENODE2 is a point device supporting FCoE, and the messages between the FCF2 and the ENDOE2 are two-layer Ethernet messages and FCoE messages.
In the embodiment of the present invention, after the FCF1 establishes the VFC virtual connection between the FCF1 and the FCF2, and the FCF2 establishes the VFC virtual connection between the FCF2 and the FCF1, the MAC address and the FC route between the two data centers are synchronized and learned. Further, MAC address synchronization between two data centers needs to be completed by an EVI ISIS (Intermediate System to Intermediate System) protocol; the FC routing information between two data centers is directly completed by an FSPF (fiber Shortest Path First) protocol, and the EVI network transmits FSPF protocol messages to realize FC routing learning of different data centers. Based on this, there is a MAC address in the LAN2 network in data center 2 on FCF1 and FC routing information in SAN2 in data center 2 on FCF 1. In addition, there is a MAC address on the FCF2 in the LAN1 network in data center 1 and FC routing information on the FCF2 in SAN1 in data center 1.
It should be noted that cross-data center access between LAN1 and LAN2, and cross-data center access between LAN1 and ende 2 are access between ordinary two-layer ethernet networks, and are not described herein again.
For cross-data center access between SAN1 and ENODE2, the process includes the following steps:
step 1, FC1 receives an FC message from a host in the SAN1 network, queries a local FC routing table by using a destination FC ID carried in the FC message, and forwards the FC message to an FCF1 through a VFC interface if an outgoing interface of the FC message is the VFC interface connected between FC1 and FCF 1.
Step 2, the FCF1 receives the FC message from the FC1, queries the local FC routing table by using the destination FC ID carried in the FC message, and if the query result is that the next hop of the FC message is FCF2, the FCF1 determines that the outgoing interface of the FC message is VFC virtual connection.
And step 3, the FCF1 performs GRE tunnel encapsulation on the FC message, and sends the FC message subjected to GRE tunnel encapsulation to the FCF2 through the EVI LINK between the FCF1 and the FCF 2.
In the embodiment of the present invention, the destination IP address in the GRE tunnel header is the IP address of FCF2, the source IP address in the GRE tunnel header is the IP address of FCF1, and the protocol type in the GRE tunnel header is used to identify the payload behind the GRE tunnel header as an FC packet, for example, by setting the protocol type in the GRE tunnel header to 0x8906, the protocol type is used to identify the payload behind the GRE tunnel header as an FC packet. Further, after the FCF1 sends the FC message after GRE tunnel encapsulation to the FCF2 through the EVI LINK, the FC message after GRE tunnel encapsulation performs IP forwarding on the EVI network; since the destination IP address in the GRE tunnel header is the IP address of the FCF2, the FC packet encapsulated by the GRE tunnel is forwarded to the FCF 2.
And 4, after receiving the FC message encapsulated by the GRE tunnel, the FCF2 decapsulates the GRE tunnel of the FC message encapsulated by the GRE tunnel, namely, pops down the head of the GRE tunnel and triggers FCoE to search if the identified protocol type is used for identifying the load after the head of the GRE tunnel is the FC message.
Step 5, the FCF2 queries a local FC routing table through a destination FC ID carried in the FC message after the GRE tunnel is decapsulated; if the query result is that the outlet interface of the FC message is the interface between the FCF2 and the ENODE2, the FCF2 encapsulates the FC message into an FCoE format and forwards the FC message to the ENODE 2.
And 6, after receiving the FCoE format message, the ENODE2 sends the FCoE message to the FCF2 if the host in the SAN1 needs to respond to the message. The destination MAC address of the FCoE packet is the FCoE MAC address of FCF2, and the source MAC address is the MAC address of ENODE 2.
Step 7, the FCF2 receives the FCoE message from the ENODE2, and if the destination MAC address is the FCoE MAC address of the FCF2, the FCoE is triggered to search, and the destination FC ID carried in the FCoE message is used for inquiring a local FC routing table; if the query result is that the next hop of the FCoE message is FCF1, the FCF2 determines that the outgoing interface of the FCoE message is VFC virtual connection, and sets the destination MAC address of the FCoE message to be the FCoE MAC address of FCF1 by using the MAC address of the VFC virtual connection.
And step 8, the FCF2 performs GRE tunnel encapsulation on the FCoE message, and sends the FCoE message after GRE tunnel encapsulation to the FCF1 through the EVI LINK between the FCF2 and the FCF 1.
In the embodiment of the present invention, the destination IP address in the GRE tunnel header is an IP address of FCF1, the source IP address in the GRE tunnel header is an IP address of FCF2, and the protocol type in the GRE tunnel header is used to identify that the payload after the GRE tunnel header is an FCoE packet, for example, by setting the protocol type in the GRE tunnel header to 0x8907, the protocol type is used to identify that the payload after the GRE tunnel header is an FCoE packet. After the FCF2 sends the FCoE message encapsulated by the GRE tunnel to the FCF1 through the EVI LINK, the FCoE message encapsulated by the GRE tunnel is subjected to IP forwarding on the EVI network; since the destination IP address in the GRE tunnel header is the IP address of the FCF1, the FCoE packet encapsulated by the GRE tunnel is forwarded to the FCF 1.
Step 9, after receiving the FCoE message encapsulated by the GRE tunnel, if the protocol type is identified to identify that the load after the GRE tunnel header is the FCoE message, the FCF1 decapsulates the GRE tunnel of the FCoE message encapsulated by the GRE tunnel, that is, pops up the GRE tunnel header, and triggers FCoE lookup.
Step 10, when determining that the destination MAC address of the FCoE message after the GRE tunnel decapsulation is the FCoE MAC address of the FCF1, the FCF1 queries the local FC routing table through the destination FC ID carried in the FCoE message after the GRE tunnel decapsulation; if the query result is that the output interface of the FCoE message is the interface between the FCF1 and the FC1, the FCF1 encapsulates the FCoE message into an FC format and forwards the FC format to the FC 1.
Step 11, after receiving the FC message from the FCF1, the FC1 queries the local FC routing table by using the destination FC ID carried in the FC message, and if the outgoing interface is an interface between the FC1 and a host in the SAN1 network, forwards the FC message to the host in the SAN1 network through the interface.
For cross-data center access between SAN1 and SAN2, the process includes the following steps:
step 1, FC1 receives an FC message from a host in the SAN1 network, queries a local FC routing table by using a destination FC ID carried in the FC message, and forwards the FC message to an FCF1 through a VFC interface if an outgoing interface of the FC message is the VFC interface connected between FC1 and FCF 1.
Step 2, the FCF1 receives the FC message from the FC1, queries the local FC routing table by using the destination FC ID carried in the FC message, and if the query result is that the next hop of the FC message is FCF2, the FCF1 determines that the outgoing interface of the FC message is VFC virtual connection.
And step 3, the FCF1 performs GRE tunnel encapsulation on the FC message, and sends the FC message subjected to GRE tunnel encapsulation to the FCF2 through the EVI LINK between the FCF1 and the FCF 2.
In the embodiment of the present invention, the destination IP address in the GRE tunnel header is the IP address of FCF2, the source IP address in the GRE tunnel header is the IP address of FCF1, and the protocol type in the GRE tunnel header is used to identify the payload behind the GRE tunnel header as an FC packet, for example, by setting the protocol type in the GRE tunnel header to 0x8906, the protocol type is used to identify the payload behind the GRE tunnel header as an FC packet. Further, after the FCF1 sends the FC message after GRE tunnel encapsulation to the FCF2 through the EVI LINK, the FC message after GRE tunnel encapsulation performs IP forwarding on the EVI network; since the destination IP address in the GRE tunnel header is the IP address of the FCF2, the FC packet encapsulated by the GRE tunnel is forwarded to the FCF 2.
And 4, after receiving the FC message encapsulated by the GRE tunnel, the FCF2 decapsulates the GRE tunnel of the FC message encapsulated by the GRE tunnel, namely, pops down the head of the GRE tunnel and triggers FCoE to search if the identified protocol type is used for identifying the load after the head of the GRE tunnel is the FC message.
Step 5, the FCF2 queries a local FC routing table through a destination FC ID carried in the FC message after the GRE tunnel is decapsulated; if the query result is that the outgoing interface of the FC packet is the interface between the FCF2 and the FC2, the FCF2 encapsulates the FC packet into an FC format and forwards the FC packet to the FC 2.
Step 6, after receiving the FC message from the FCF2, the FC2 queries the local FC routing table by using the destination FC ID carried in the FC message, and if the outgoing interface is an interface between the FC2 and a host in the SAN2 network, forwards the FC message to the host in the SAN2 network through the interface.
Further, FC2 receives an FC packet from a host in the SAN2 network, queries a local FC routing table using a destination FC ID carried in the FC packet, and forwards the FC packet to the FCF2 through the VFC interface if an outgoing interface of the FC packet is the VFC interface connected between the FC2 and the FCF 2.
And step 7, receiving the FC message from the FCF2 by the FCF2, querying a local FC routing table by using the destination FC ID carried in the FC message, and if the query result is that the next hop of the FC message is FCF1, determining that the outgoing interface of the FC message is VFC virtual connection by the FCF 2.
And step 8, the FCF2 performs GRE tunnel encapsulation on the FC message, and sends the FC message subjected to GRE tunnel encapsulation to the FCF1 through the EVI LINK between the FCF2 and the FCF 1.
In the embodiment of the present invention, the destination IP address in the GRE tunnel header is the IP address of FCF1, the source IP address in the GRE tunnel header is the IP address of FCF2, and the protocol type in the GRE tunnel header is used to identify the payload behind the GRE tunnel header as an FC packet, for example, by setting the protocol type in the GRE tunnel header to 0x8906, the protocol type is used to identify the payload behind the GRE tunnel header as an FC packet. Further, after the FCF2 sends the FC message after GRE tunnel encapsulation to the FCF1 through the EVI LINK, the FC message after GRE tunnel encapsulation performs IP forwarding on the EVI network; since the destination IP address in the GRE tunnel header is the IP address of the FCF1, the FC packet encapsulated by the GRE tunnel is forwarded to the FCF 1.
Step 9, after receiving the FC message encapsulated by the GRE tunnel, if the identification protocol type is used to identify the load after the GRE tunnel header as the FC message, the FCF1 decapsulates the GRE tunnel of the FC message encapsulated by the GRE tunnel, that is, pops off the GRE tunnel header, and triggers FCoE lookup.
Step 10, the FCF1 queries a local FC routing table through a destination FC ID carried in an FC message after the GRE tunnel is decapsulated; if the query result is that the outgoing interface of the FC packet is the interface between the FCF1 and the FC1, the FCF1 encapsulates the FC packet into an FC format and forwards the FC packet to the FC 1.
Step 11, after receiving the FC message from the FCF1, the FC1 queries the local FC routing table by using the destination FC ID carried in the FC message, and if the outgoing interface is an interface between the FC1 and a host in the SAN1 network, forwards the FC message to the host in the SAN1 network through the interface.
In a second case, as shown in fig. 4, the second scenario is a networking schematic diagram in which different data centers are interconnected through an MPLS network, each FCF device serves as an edge device of an FCoE network, and also serves as an edge device of an operator of the MPLS network, that is, the FCF device supports MPLS services and FCoE services. A PW Virtual link exists between the local FCF device and the opposite FCF device, where the PW Virtual link is a PW of a Layer2VPN (Layer 2Virtual Private Network). Taking two FCF devices as an example, the two FCF devices are FCF1 and FCF2, respectively. The FCF1 is a home FCF device and the FCF2 is a peer FCF device, or the FCF2 is a home FCF device and the FCF1 is a peer FCF device. For convenience of description, the FCF1 is taken as a home FCF device, and the FCF2 is taken as a peer FCF device for illustration.
In this networking situation, forstep 201, the process of the local FCF device establishing the VFC virtual connection between the local FCF device and the peer FCF device specifically includes, but is not limited to, the following manners:
in a first mode, a home FCF device (FCF 1) triggers establishment of a VFC virtual connection between the home FCF device and an opposite FCF device (FCF 2), and the method specifically includes the following steps:
step 1, the FCF1 generates a discovery request message based on the FIP protocol for establishing the VFC virtual connection, and the discovery request message carries the FCoE MAC address of the FCF 1.
And step 2, the FCF1 performs MPLS tunnel encapsulation on the discovery request message. In the discovery request message after the MPLS Tunnel is encapsulated, the MPLS Tunnel header includes a public network Tunnel (Tunnel) Label (i.e., an outer Label), a PW VC Label (i.e., an inner Label), a Flow Label (Flow Label) Label, or a Control Word (Control Word) Label; further, the Flow Label tag or the Control Word tag identifies the current packet for establishing the VFC virtual connection.
In the embodiment of the invention, the Label technology adopted by the current PW virtual link is expanded, and on the basis of a public network Tunnel Label and a PW VC Label adopted by the current PW virtual link, a Control Word Label or a Flow Label is configured for the PW virtual link, so that the current message is identified by the Flow Label or the Control Word Label for establishing the VFC virtual connection.
And step 3, the FCF1 sends the discovery request message after the MPLS tunnel is encapsulated to the FCF2 through the PW virtual link. Wherein the PW virtual link is a PW virtual link between FCF1 and FCF 2.
Specifically, in the FCoE network, the creation of a VFC virtual connection between FCF devices needs to be performed remotely using FIP. Based on this, the FCF1 generates a discovery request message for establishing the VFC virtual connection, performs MPLS tunnel encapsulation on the discovery request message, and sends the discovery request message after MPLS tunnel encapsulation to the FCF2 at the opposite end of the PW virtual link to start establishing the VFC virtual connection. The discovery request message carries the FCoE MAC address of the FCF1, the MPLS Tunnel header includes a public network Tunnel Label, a PW VC Label, a Flow Label, or a Control Word Label, and the Flow Label or the Control Word Label identifies the current message for establishing the VFC virtual connection.
Further, after the FCF1 sends the discovery request packet encapsulated by the MPLS tunnel to the FCF2 through the PW virtual link, the discovery request packet encapsulated by the MPLS tunnel is subjected to label forwarding in the MPLS network; the discovery request packet encapsulated by the MPLS Tunnel is label-forwarded in the MPLS network by using a public network Tunnel label, and the discovery request packet encapsulated by the MPLS Tunnel is finally forwarded to the FCF 2.
Step 4, after receiving the discovery request message encapsulated by the MPLS tunnel, if it identifies that the FlowLabel or Control Word label identifies that the current message is used for establishing the VFC virtual connection, the FCF2 decapsulates the discovery request message encapsulated by the MPLS tunnel to obtain the discovery request message, and establishes the VFC virtual connection between the FCF2 and the FCF1 by using the FCoE MAC address of the FCF1 carried in the discovery request message, where the MAC address of the VFC virtual connection is the FCoE MAC address of the FCF 1.
In the embodiment of the present invention, Flow Label tags or Control Word tags, including a send Flow Label tag and a receive Flow Label tag, or a send Control Word tag and a receive Control Word tag, need to be configured on FCF1 and FCF2 in advance. Wherein the sending Flow Label tag of the FCF1 is equal to the receiving Flow Label tag of the FCF2, and the receiving Flow Label tag of the FCF1 is equal to the sending Flow Label tag of the FCF 2; alternatively, the send Control Word tag of FCF1 is equal to the receive Control Word tag of FCF2, and the receive Control Word tag of FCF1 is equal to the send Control Word tag of FCF 2. Based on this, after the FCF2 receives the discovery request message encapsulated by the MPLS tunnel, the MPLS tunnel header includes a PW VC Label, a Flow Label, or a Control Word Label, and the FCF2 can identify the Flow Label or the Control Word Label according to the PW VC Label, the Flow Label, or the Control Word Label, and identify the current message for establishing the VFC virtual connection.
Step 5, the FCF2 generates a discovery announcement message for establishing the VFC virtual connection, where the discovery announcement message carries the FCoE MAC address of the FCF2, the discovery announcement message is a response message of the discovery request message, and the discovery announcement message is a FIP-based discovery announcement message.
And step 6, the FCF2 performs MPLS tunnel encapsulation on the discovery notification message. Wherein, in the discovery announcement message after the MPLS Tunnel is encapsulated, the MPLS Tunnel head comprises a public network Tunnel Label, a PWVC Label, a Flow Label Label or a Control Word Label; further, the Flow Label tag or the Control Word tag identifies the current packet for establishing the VFC virtual connection.
And step 7, the FCF2 sends the discovery notification message after the MPLS tunnel is encapsulated to the FCF1 through the PW virtual link. Wherein the PW virtual link is a PW virtual link between FCF2 and FCF 1.
Specifically, in the FCoE network, the creation of a VFC virtual connection between FCF devices needs to be performed remotely using FIP. Based on this, the FCF1 generates a discovery advertisement message for establishing the VFC virtual connection, performs MPLS tunnel encapsulation on the discovery advertisement message, and sends the discovery advertisement message after MPLS tunnel encapsulation to the FCF1 of the opposite end of the PW virtual link, so as to establish the VFC virtual connection. The discovery notification message carries the FCoE MAC address of the FCF2, the MPLS Tunnel header includes a public network Tunnel Label, a PW VC Label, a Flow Label, or a Control Word Label, and the Flow Label or the Control Word Label identifies the current message for establishing the VFC virtual connection.
Further, after the FCF2 sends the discovery advertisement packet encapsulated by the MPLS tunnel to the FCF1 through the PW virtual link, the discovery advertisement packet encapsulated by the MPLS tunnel is subjected to label forwarding in the MPLS network; the discovery notification packet encapsulated by the MPLS Tunnel is label-forwarded in the MPLS network by using a public network Tunnel label, and the discovery notification packet encapsulated by the MPLS Tunnel is finally forwarded to the FCF 1.
Step 8, after receiving the discovery notification message encapsulated by the MPLS tunnel, if it identifies that the FlowLabel or Control Word label identifies that the current message is used for establishing the VFC virtual connection, the FCF1 decapsulates the discovery notification message encapsulated by the MPLS tunnel to obtain the discovery notification message, and establishes the VFC virtual connection between the FCF1 and the FCF2 by using the FCoE MAC address of the FCF2 carried in the discovery notification message, where the MAC address of the VFC virtual connection is the FCoE MAC address of the FCF 2.
In the embodiment of the present invention, in the process that the FCF1 establishes the VFC virtual connection between the FCF1 and the FCF2 by using the FCoE MAC address of the FCF2 carried in the discovery notification message, the FCF2 periodically sends an unsolicited discovery notification message to the FCF1, and the MPLS tunnel encapsulation mode of the unsolicited discovery notification message is the same as the MPLS tunnel encapsulation mode of the discovery notification message, which is not described herein again; after receiving the unsolicited discovery notification message sent by the FCF2, the FCF1 establishes the VFC virtual connection between the FCF1 and the FCF2 by using the FCoEMAC address of the FCF2 carried in the discovery notification message. In the process that the FCF2 establishes the VFC virtual connection between the FCF2 and the FCF1 by using the FCoE MAC address of the FCF1 carried in the discovery request message, the FCF1 periodically sends an unsolicited discovery notification message to the FCF2, and the MPLS tunnel encapsulation mode of the unsolicited discovery notification message is the same as the MPLS tunnel encapsulation mode of the discovery request message, which is not described herein again; after receiving the unsolicited discovery notification packet sent by the FCF1, the FCF2 establishes the VFC virtual connection between the FCF2 and the FCF1 by using the FCoE MAC address of the FCF1 carried in the discovery request packet.
In the embodiment of the present invention, the FCF1 and the FCF2 further need to maintain the established VFC virtual connection by periodically sending an unsolicited discovery advertisement packet. Specifically, FCF2 periodically sends an unsolicited discovery announcement packet to FCF1, and deletes the VFC virtual connection between FCF1 and FCF2 if FCF1 does not receive the unsolicited discovery announcement packet from FCF2 within a specified time interval. FCF1 periodically sends unsolicited discovery advertisement messages to FCF2, and deletes the VFC virtual connection between FCF2 and FCF1 if FCF2 does not receive unsolicited discovery advertisement messages from FCF1 within a specified time interval.
And in a second mode, triggering and establishing the VFC virtual connection between the opposite-end FCF device (FCF 2) and the home-end FCF device (FCF 1) by the opposite-end FCF device (FCF 2), wherein the second mode specifically comprises the following steps:
step 1, the FCF2 generates a discovery request message based on the FIP protocol for establishing the VFC virtual connection, and the discovery request message carries the FCoE MAC address of the FCF 2.
And step 2, the FCF2 performs MPLS tunnel encapsulation on the discovery request message. Wherein, in the discovery request message after the MPLS Tunnel is encapsulated, the MPLS Tunnel head comprises a public network Tunnel Label, a PWVC Label, a Flow Label Label or a Control Word Label; further, the Flow Label tag or the Control Word tag identifies the current packet for establishing the VFC virtual connection.
And step 3, the FCF2 sends the discovery request message after the MPLS tunnel is encapsulated to the FCF1 through the PW virtual link. Wherein the PW virtual link is a PW virtual link between FCF2 and FCF 1.
Step 4, after receiving the discovery request message encapsulated by the MPLS tunnel, if it identifies that the FlowLabel or Control Word label identifies that the current message is used for establishing the VFC virtual connection, the FCF1 decapsulates the discovery request message encapsulated by the MPLS tunnel to obtain the discovery request message, and establishes the VFC virtual connection between the FCF1 and the FCF2 by using the FCoE MAC address of the FCF2 carried in the discovery request message, where the MAC address of the VFC virtual connection is the FCoE MAC address of the FCF 2.
Step 5, the FCF1 generates a discovery announcement message for establishing the VFC virtual connection, where the discovery announcement message carries the FCoE MAC address of the FCF1, the discovery announcement message is a response message of the discovery request message, and the discovery announcement message is a FIP-based discovery announcement message.
And step 6, the FCF1 performs MPLS tunnel encapsulation on the discovery notification message. Wherein, in the discovery announcement message after the MPLS Tunnel is encapsulated, the MPLS Tunnel head comprises a public network Tunnel Label, a PWVC Label, a Flow Label Label or a Control Word Label; further, the Flow Label tag or the Control Word tag identifies the current packet for establishing the VFC virtual connection.
And step 7, the FCF1 sends the discovery notification message after the MPLS tunnel is encapsulated to the FCF2 through the PW virtual link. Wherein the PW virtual link is a PW virtual link between FCF1 and FCF 2.
Step 8, after receiving the discovery notification message encapsulated by the MPLS tunnel, if it identifies that the FlowLabel or Control Word label identifies that the current message is used for establishing the VFC virtual connection, the FCF2 decapsulates the discovery notification message encapsulated by the MPLS tunnel to obtain the discovery notification message, and establishes the VFC virtual connection between the FCF2 and the FCF1 by using the FCoE MAC address of the FCF1 carried in the discovery notification message, where the MAC address of the VFC virtual connection is the FCoE MAC address of the FCF 1.
In the embodiment of the present invention, in the process that the FCF1 establishes the VFC virtual connection between the FCF1 and the FCF2 by using the FCoE MAC address of the FCF2 carried in the discovery request message, the FCF2 periodically sends an unsolicited discovery notification message to the FCF1, and the MPLS tunnel encapsulation mode of the unsolicited discovery notification message is the same as the MPLS tunnel encapsulation mode of the discovery notification message, which is not described herein again; after receiving the unsolicited discovery notification message sent by the FCF2, the FCF1 establishes the VFC virtual connection between the FCF1 and the FCF2 by using the FCoEMAC address of the FCF2 carried in the discovery request message. In the process that the FCF2 establishes the VFC virtual connection between the FCF2 and the FCF1 by using the FCoE MAC address of the FCF1 carried in the discovery notification message, the FCF1 periodically sends an unsolicited discovery notification message to the FCF2, and the MPLS tunnel encapsulation mode of the unsolicited discovery notification message is the same as the MPLS tunnel encapsulation mode of the discovery request message, which is not described herein again; after receiving the unsolicited discovery notification packet sent by the FCF1, the FCF2 establishes the VFC virtual connection between the FCF2 and the FCF1 by using the FCoE MAC address of the FCF1 carried in the discovery notification packet.
In the embodiment of the present invention, the FCF1 and the FCF2 further need to maintain the established VFC virtual connection by periodically sending an unsolicited discovery advertisement packet. Specifically, FCF2 periodically sends an unsolicited discovery announcement packet to FCF1, and deletes the VFC virtual connection between FCF1 and FCF2 if FCF1 does not receive the unsolicited discovery announcement packet from FCF2 within a specified time interval. FCF1 periodically sends unsolicited discovery advertisement messages to FCF2, and deletes the VFC virtual connection between FCF2 and FCF1 if FCF2 does not receive unsolicited discovery advertisement messages from FCF1 within a specified time interval.
Based on the above processing, after the VFC virtual connection is established between FCF1 and FCF2, the VFC virtual connection is equivalent to a VFC interface locally maintained by FCF1 or FCF2, and FCF1 or FCF2 may send an FC packet or FCoE packet in the data center to another data center.
It should be noted that, the above process describes in detail the process of establishing the VFC virtual connection between the FCF1 and the FCF2, and correspondingly, for the process of establishing the VFC virtual connection between the FCF1 and the FCF3 and the process of establishing the VFC virtual connection between the FCF2 and the FCF3, details are not described in this embodiment of the present invention.
As shown in fig. 4, FCF1, FCF2, and FCF3 are in different data centers. The FCF1 is connected to the LAN1, SAN1, and ENODE1, respectively, inside the data center 1; the LAN1 is Ethernet, and the message between the FCF1 and the CE1 is a two-layer Ethernet message; SAN1 is a storage optical fiber network, and the message between FCF1 and FC1 is an FC message; the ENODE1 is a device supporting FCoE, and the messages between the FCF1 and the ENDOE1 are two-layer Ethernet messages and FCoE messages. The FCF2 is connected to SAN2 and ENODE2, respectively, inside the data center 2; SAN2 is a storage optical fiber network, and the message between FCF2 and FC2 is an FC message; the ENODE2 is a point device supporting FCoE, and the messages between the FCF2 and the ENDOE2 are two-layer Ethernet messages and FCoE messages. The FCF3 is connected to the LAN3, SAN3, and ENODE3 inside the data center 3; the LAN3 is Ethernet, and the message between the FCF3 and the CE3 is a two-layer Ethernet message; SAN3 is a storage optical fiber network, and the message between FCF3 and FC3 is an FC message; the ENODE3 is a point device supporting FCoE, and the messages between the FCF3 and the ENDOE3 are two-layer Ethernet messages and FCoE messages.
Taking the processing of FCF1 and FCF2 as an example, in the embodiment of the present invention, after the VFC virtual connection between FCF1 and FCF2 is established on FCF1, and the VFC virtual connection between FCF2 and FCF1 is established on FCF2, the MAC address and FC route between the two data centers are synchronized and learned. Further, MAC address synchronization between two data centers needs to be completed by an EVI ISIS protocol; the FC routing information between the two data centers is directly completed by the FSPF protocol, and the EVI network transmits the FSPF protocol message so as to realize FC routing learning of different data centers. Based on this, there is FC routing information in SAN2 in data center 2 on FCF 1. In addition, there is a MAC address on the FCF2 in the LAN1 network in data center 1 and FC routing information on the FCF2 in SAN1 in data center 1.
For cross-data center access between SAN1 and ENODE2, the process includes the following steps:
step 1, FC1 receives an FC message from a host in the SAN1 network, queries a local FC routing table by using a destination FC ID carried in the FC message, and forwards the FC message to an FCF1 through a VFC interface if an outgoing interface of the FC message is the VFC interface connected between FC1 and FCF 1.
Step 2, the FCF1 receives the FC message from the FC1, queries the local FC routing table by using the destination FC ID carried in the FC message, and if the query result is that the next hop of the FC message is FCF2, the FCF1 determines that the outgoing interface of the FC message is VFC virtual connection.
And step 3, the FCF1 performs MPLS tunnel encapsulation on the FC message, and sends the FC message subjected to MPLS tunnel encapsulation to the FCF2 through a PW virtual link between the FCF1 and the FCF 2.
In the embodiment of the present invention, the MPLS Tunnel header includes a public network Tunnel Label, a PW VC Label, a Flow Label, or a Control Word Label, and the Flow Label or the Control Word Label is used to identify that the load behind the MPLS Tunnel header is an FC packet or an FCoE packet.
In the embodiment of the invention, in order to carry the FC message and the FCoE message on the PW virtual link, the Label technology adopted by the current PW virtual link is expanded, and on the basis of the public network Tunnel Label and the PW VC Label adopted by the current PW virtual link, a ControlWord Label or a Flowee Label can be added behind the PW VC Label for marking the load behind the MPLS Tunnel header as the FC message or the FCoE message. Wherein, the FC message and the FCoE message adopt different Control Word labels, or the FC message and the FCoE message adopt different Flowee Label labels.
Further, in order to carry the FC packet and the FCoE packet on the PW virtual link, it is necessary to extend a Label technology used by the current PW virtual link, and configure a Flowe Label or a Control Word Label for the PW virtual link. Based on this, the PW virtual link needs to be associated with all VSAN (virtual storage local area network) instances, and VLAN IDs in all VSAN instances are allowed to pass through.
In the embodiment of the invention, after the FCF1 sends the FC message encapsulated by the MPLS tunnel to the FCF2 through the PW virtual link, the FC message encapsulated by the MPLS tunnel carries out label forwarding in an MPLS network; the FC packet after MPLS Tunnel encapsulation is label-forwarded in the MPLS network by using a public network Tunnel label, and the FC packet after MPLS Tunnel encapsulation is finally forwarded to the FCF 2.
Step 4, after receiving the FC packet after the MPLS tunnel encapsulation, if it identifies that the FlowLabel or Control Word label is used to identify that the load after the MPLS tunnel header is the FC packet, the FCF2 decapsulates the MPLS tunnel of the FC packet after the MPLS tunnel encapsulation, that is, the FCF2 pops off the MPLS tunnel header and triggers FCoE lookup.
Step 5, the FCF2 queries a local FC routing table through a destination FC ID carried in the FC message after the MPLS tunnel is unpacked; if the query result is that the outlet interface of the FC message is the interface between the FCF2 and the ENODE2, the FCF2 encapsulates the FC message into an FCoE format and forwards the FC message to the ENODE 2.
And 6, after receiving the FCoE format message, the ENODE2 sends the FCoE message to the FCF2 if the host in the SAN1 needs to respond to the message. The destination MAC address of the FCoE packet is the FCoE MAC address of FCF2, and the source MAC address is the MAC address of ENODE 2.
Step 7, the FCF2 receives the FCoE message from the ENODE2, and if the destination MAC address is the FCoE MAC address of the FCF2, the FCoE is triggered to search, and the destination FC ID carried in the FCoE message is used for inquiring a local FC routing table; if the query result is that the next hop of the FCoE message is FCF1, the FCF2 determines that the outgoing interface of the FCoE message is VFC virtual connection, and sets the destination MAC address of the FCoE message to be the FCoE MAC address of FCF1 by using the MAC address of the VFC virtual connection.
And 8, the FCF2 performs MPLS tunnel encapsulation on the FCoE message, and sends the FCoE message subjected to MPLS tunnel encapsulation to the FCF1 through a PW virtual link between the FCF2 and the FCF 1.
In the embodiment of the present invention, the MPLS Tunnel header includes a public network Tunnel Label, a PW VC Label, a Flow Label, or a Control Word Label, and the Flow Label or the Control Word Label is used to identify that the load behind the MPLS Tunnel header is an FC packet or an FCoE packet. In order to carry the FC packet and the FCoE packet on the PW virtual link, the label technology adopted by the current PW virtual link is extended, and on the basis of the public network Tunnel label and the PW VC label adopted by the current PW virtual link, a Control Word label or a FloweLabel label may be added behind the PW VC label to identify the load behind the MPLS Tunnel header as the FC packet or the FCoE packet.
Further, after the FCF2 sends the FCoE packet encapsulated by the MPLS tunnel to the FCF1 through the PW virtual link, the FCoE packet encapsulated by the MPLS tunnel is subjected to label forwarding in the MPLS network; the FCoE packet encapsulated by the MPLS Tunnel is label-forwarded in the MPLS network by using a public network Tunnel label, and the FCoE packet encapsulated by the MPLS Tunnel is finally forwarded to the FCF 1.
Step 9, after receiving the FCoE packet encapsulated by the MPLS tunnel, if the Flow Label or Control Word Label is identified to identify that the load after the MPLS tunnel header is the FCoE packet, the FCF1 decapsulates the MPLS tunnel of the encapsulated FCoE packet, that is, the FCF1 pops off the MPLS tunnel header and triggers FCoE lookup.
Step 10, when determining that the destination MAC address of the FCoE message decapsulated from the MPLS tunnel is the FCoE MAC address of the FCF1, the FCF1 queries the local FC routing table through the destination FC ID carried in the FCoE message decapsulated from the MPLS tunnel; if the query result is that the output interface of the FCoE message is the interface between the FCF1 and the FC1, the FCF1 encapsulates the FCoE message into an FC format and forwards the FC format to the FC 1.
Step 11, after receiving the FC message from the FCF1, the FC1 queries the local FC routing table by using the destination FC ID carried in the FC message, and if the outgoing interface is an interface between the FC1 and a host in the SAN1 network, forwards the FC message to the host in the SAN1 network through the interface.
Based on the same inventive concept as the above method, an embodiment of the present invention further provides an FCF device, which is applied to an ethernet-based fibre channel FCoE network including a home-end FCF device and an opposite-end FCF device, where the home-end FCF device and the opposite-end FCF device are located in different data centers, and as shown in fig. 5, the home-end FCF device specifically includes:
an establishingmodule 11, configured to establish a VFC virtual connection between a home-end FCF device and an opposite-end FCF device, where a medium access control MAC address of the VFC virtual connection is an FCoE MAC address of the opposite-end FCF device; aprocessing module 12, configured to query an FC routing table through a destination fiber channel identifier FC ID carried in a storage network packet after receiving the storage network packet; if the query result is that the next hop of the storage network message is the opposite-end FCF device, determining that an output interface of the storage network message is the VFC virtual connection, and performing tunnel encapsulation on the storage network message; a sendingmodule 13, configured to send the storage network packet after tunnel encapsulation to the opposite-end FCF device; and after receiving the storage network message after tunnel encapsulation, the opposite-end FCF device decapsulates the tunnel encapsulation storage network message, queries an FC routing table through a target FC ID carried in the storage network message after tunnel decapsulation, and sends the storage network message after tunnel decapsulation by using the queried output interface.
When the data centers are interconnected through Ethernet connection virtualization EVI networks, an EVI LINK exists between the home-end FCF device and the opposite-end FCF device; the establishing module 11 is specifically configured to send a discovery request packet carrying an FCoE MAC address of the local FCF device to the opposite FCF device through the EVI LINK; after receiving a discovery announcement message responded by opposite-end FCF equipment aiming at the discovery request message, establishing VFC virtual connection between local-end FCF equipment and opposite-end FCF equipment by using an FCoE MAC address of the opposite-end FCF equipment carried in the discovery announcement message, wherein the MAC address of the VFC virtual connection is the FCoE MAC address of the opposite-end FCF equipment; wherein, the protocol type identifier in the header of generic routing encapsulation GRE tunnel encapsulation of the discovery request message and the discovery notification message is used for establishing VFC virtual connection; or receiving a discovery request message carrying an FCoE MAC address of opposite-end FCF equipment from the opposite-end FCF equipment through the EVI LINK; establishing VFC virtual connection between the local terminal FCF equipment and the opposite terminal FCF equipment by using the FCoE MAC address of the opposite terminal FCF equipment carried in the discovery request message, wherein the MAC address of the VFC virtual connection is the FCoE MAC address of the opposite terminal FCF equipment; sending a discovery notification message carrying the FCoE MAC address of the FCF device of the local terminal and responding to the discovery request message to the FCF device of the opposite terminal through the EVI LINK; wherein, the protocol type identifier in the header of GRE tunnel encapsulation of the discovery request message and the discovery notification message is used for establishing VFC virtual connection.
When the data centers are interconnected through an EVI network, an EVI LINK exists between the home-end FCF device and the opposite-end FCF device; the processing module 12 is specifically configured to perform GRE tunnel encapsulation on the FC packet when the storage network packet is an FC packet, and a protocol type in a GRE tunnel header is used to identify that a load behind the GRE tunnel header is an FC packet; the sending module 13 is specifically configured to send the FC packet after the GRE tunnel is encapsulated to the opposite-end FCF device through the EVI LINK between the home-end FCF device and the opposite-end FCF device; or, the processing module 12 is specifically configured to, when the storage network packet is an FCoE packet, set a destination MAC address of the FCoE packet as an FCoE MAC address of the FCF device at the opposite end by using the MAC address of the VFC virtual connection, perform GRE tunnel encapsulation on the FCoE packet, and use a protocol type in a GRE tunnel header to identify that a load after the GRE tunnel header is an FCoE packet; the sending module 13 is specifically configured to send the FCoE packet after the GRE tunnel encapsulation to the opposite-end FCF device through the EVI LINK between the home-end FCF device and the opposite-end FCF device.
When the data centers are interconnected through an EVI network, an EVI LINK exists between the home-end FCF device and the opposite-end FCF device; the FCF apparatus further comprises: a receiving module 14, configured to receive an FC message after GRE tunnel encapsulation sent by an FCF device at an opposite end through an EVI LINK, where a protocol type in a GRE tunnel header is used to identify a load behind the GRE tunnel header as the FC message; the processing module 12 is further configured to, after receiving the FC packet encapsulated by the GRE tunnel, decapsulate the GRE tunnel of the FC packet encapsulated by the GRE tunnel if the identification protocol type is used to identify that the load after the GRE tunnel header is the FC packet, and query the FC routing table by using the destination FC ID carried in the FC packet decapsulated by the GRE tunnel; the sending module 13 is further configured to send an FC message after the GRE tunnel decapsulation by using the queried egress interface; alternatively, the FCF device further comprises: a receiving module 14, configured to receive an FCoE packet after the GRE tunnel encapsulation sent by an opposite-end FCF device through the EVI LINK, where a protocol type in a GRE tunnel header is used to identify a load behind the GRE tunnel header as the FCoE packet; the processing module 12 is further configured to, after receiving the FCoE message encapsulated by the GRE tunnel, decapsulate the GRE tunnel of the FCoE message encapsulated by the GRE tunnel if the protocol type is identified to identify that the load after the GRE tunnel header is the FCoE message, and query the FC routing table through the destination FC ID carried in the FCoE message decapsulated by the GRE tunnel when it is determined that the destination MAC address of the FCoE message decapsulated by the GRE tunnel is the FCoE MAC address of the FCF device at the home end; the sending module 13 is further configured to send the FCoE packet decapsulated by the GRE tunnel by using the queried egress interface.
When data centers are interconnected through a multiprotocol label switching (MPLS) network, a Pseudo Wire (PW) virtual link exists between the FCF equipment at the home terminal and the FCF equipment at the opposite terminal; the establishing module 11 is specifically configured to send a discovery request packet carrying an FCoE MAC address of the local FCF device to the opposite FCF device through the PW virtual link; after receiving a discovery announcement message responded by opposite-end FCF equipment aiming at the discovery request message, establishing VFC virtual connection between the local-end FCF equipment and the opposite-end FCF equipment by using an FCoE MAC address of the opposite-end FCF equipment carried in the discovery announcement message, wherein the MAC address of the VFC virtual connection is the FCoE MAC address of the opposite-end FCF equipment; wherein, the headers of the MPLS tunnel encapsulation of the discovery request packet and the discovery notification packet include a Flow Label or a Control Word Label, and the Flow Label or the Control Word Label identifies the current packet for establishing the VFC virtual connection; or, receiving a discovery request message carrying an FCoE MAC address of the opposite-end FCF device from the opposite-end FCF device through the PW virtual link; establishing VFC virtual connection between the local-end FCF equipment and the opposite-end FCF equipment by using the FCoE MAC address of the opposite-end FCF equipment carried in the discovery request message, wherein the MAC address of the VFC virtual connection is the FCoEMAC address of the opposite-end FCF equipment; sending a discovery announcement message carrying the FCoEMAC address of the FCF device of the home terminal and responding to the discovery request message to the FCF device of the opposite terminal through a PW virtual link; wherein, the headers of the MPLS tunnel encapsulation of the discovery request packet and the discovery notification packet include a Flow Label or a Control Word Label, and the Flow Label or the Control Word Label identifies the current packet for establishing the VFC virtual connection.
When the data centers are interconnected through an MPLS network, a PW virtual link exists between the FCF equipment at the home terminal and the FCF equipment at the opposite terminal; the processing module 12 is specifically configured to perform MPLS tunnel encapsulation on the FC packet when the storage network packet is an FC packet, and an MPLS tunnel header includes a Flow Label or a Control Word Label for identifying that a load behind the MPLS tunnel header is the FC packet; the sending module 13 is specifically configured to send the FC packet after the MPLS tunnel is encapsulated to the opposite-end FCF device through a PW virtual link between the home-end FCF device and the opposite-end FCF device; or, the processing module 12 is specifically configured to, when the storage network packet is an FCoE packet, set a destination MAC address of the FCoE packet as an FCoE MAC address of the FCF device at the opposite end by using the MAC address of the VFC virtual connection, and perform MPLS tunnel encapsulation on the FCoE packet, where an MPLS tunnel header includes a FlowLabel or a Control Word label for identifying that a load behind the MPLS tunnel header is the FCoE packet; the sending module 13 is specifically configured to send the FCoE packet after the MPLS tunnel is encapsulated to the opposite-end FCF device through a PW virtual link between the local-end FCF device and the opposite-end FCF device.
When the data centers are interconnected through an MPLS network, a PW virtual link exists between the FCF equipment at the home terminal and the FCF equipment at the opposite terminal; the FCF apparatus further comprises: a receiving module 14, configured to receive an FC packet after MPLS tunnel encapsulation sent by an opposite-end FCF device through a PW virtual link, where a MPLS tunnel header includes a Flow Label or a Control Word Label for identifying a load behind the MPLS tunnel header as the FC packet; the processing module 12 is further configured to, after receiving the FC packet encapsulated by the MPLS tunnel, decapsulate the MPLS tunnel of the FC packet encapsulated by the MPLS tunnel and query an FC routing table through a destination FC ID carried in the FC packet decapsulated by the MPLS tunnel if the Flow Label or Control Word Label is identified to identify that the load behind the MPLS tunnel header is the FC packet; the sending module 13 is further configured to send an FC message after decapsulation of the MPLS tunnel by using the queried egress interface; or, the FCF device further includes a receiving module 14, configured to receive an FCoE packet sent by an opposite-end FCF device through a PW virtual link after being encapsulated in an MPLS tunnel, where an MPLS tunnel header includes a Flow Label or a Control Word Label for identifying a load behind the MPLS tunnel header as the FCoE packet; the processing module 12 is further configured to, after receiving the FCoE packet encapsulated by the MPLS tunnel, if a Flow Label or Control Word Label is identified to identify that the load after the MPLS tunnel header is the FCoE packet, decapsulate the MPLS tunnel of the encapsulated FCoE packet, and query the FC routing table through the destination FC ID carried in the decapsulated FCoE packet of the MPLS tunnel when it is determined that the destination MAC address of the decapsulated FCoE packet of the MPLS tunnel is the FCoE MAC address of the FCF device of the home terminal; the sending module 13 is further configured to send the FCoE packet decapsulated by the MPLS tunnel using the queried egress interface.
The modules of the device can be integrated into a whole or can be separately deployed. The modules can be combined into one module, and can also be further split into a plurality of sub-modules.
Through the above description of the embodiments, those skilled in the art will clearly understand that the present invention may be implemented by software plus a necessary general hardware platform, and certainly may also be implemented by hardware, but in many cases, the former is a better embodiment. Based on such understanding, the technical solutions of the present invention may be embodied in the form of a software product, which is stored in a storage medium and includes instructions for causing a computer device (which may be a personal computer, a server, or a network device) to execute the methods according to the embodiments of the present invention.
Those skilled in the art will appreciate that the drawings are merely schematic representations of one preferred embodiment and that the blocks or flow diagrams in the drawings are not necessarily required to practice the present invention.
Those skilled in the art will appreciate that the modules in the devices in the embodiments may be distributed in the devices in the embodiments according to the description of the embodiments, and may be correspondingly changed in one or more devices different from the embodiments. The modules of the above embodiments may be combined into one module, or further split into multiple sub-modules.
The above-mentioned serial numbers of the embodiments of the present invention are merely for description and do not represent the merits of the embodiments.
The above disclosure is only for a few specific embodiments of the present invention, but the present invention is not limited thereto, and any variations that can be made by those skilled in the art are intended to fall within the scope of the present invention.