Address translation in fibre channel switches
First Claim
1. A method for processing frames in a fibre channel network, comprising:
- (a) determining if an incoming frame received at a receive segment of a port of a fibre channel switch element includes an inter fabric frame header (“
FR_Header”
);
(b) if there in no FR_Header in step (a), determining if there is a match from a hardware based address mapping cache;
(c) routing the frame as a local fabric frame, if there is no match from the address mapping cache in step (b) and the incoming frame did not include the FR_Header as determined in step (a);
(d) if there is said match from the address mapping cache in step (b) and the incoming frame did not include the FR_Header as determined in step (a) building the FR_Header; and
(e) updating the incoming frame with a new fabric identifier so that the incoming frame is routed as an inter-fabric frame or as the local fabric frame.
7 Assignments
0 Petitions
Accused Products
Abstract
A fibre channel switch element and method for processing frames in a fibre channel network is provided. The switch element includes an address mapping cache that receives an incoming fibre channel frame in a receive and/or transmit segment, wherein the address mapping cache compares a D_ID of an incoming frame in the receive segment and/or a S_ID in the transmit segment; and if a FR_Header is received then a D_ID or S_ID is compared from a fibre channel header that follows the FR_Header; and if a compare fabric identifier flag is set, then the fabric identifier is compared. The address mapping cache may also be used for routing frames from one virtual fabric to another by comparing a VF_ID field to a Virtual fabric identifier in a VFT_Header.
-
Citations
18 Claims
-
1. A method for processing frames in a fibre channel network, comprising:
-
(a) determining if an incoming frame received at a receive segment of a port of a fibre channel switch element includes an inter fabric frame header (“
FR_Header”
);(b) if there in no FR_Header in step (a), determining if there is a match from a hardware based address mapping cache; (c) routing the frame as a local fabric frame, if there is no match from the address mapping cache in step (b) and the incoming frame did not include the FR_Header as determined in step (a); (d) if there is said match from the address mapping cache in step (b) and the incoming frame did not include the FR_Header as determined in step (a) building the FR_Header; and (e) updating the incoming frame with a new fabric identifier so that the incoming frame is routed as an inter-fabric frame or as the local fabric frame. - View Dependent Claims (2, 3, 4, 5, 6, 9, 10)
-
-
7. A method for processing fibre channel frames in transmit segment of a port of a fibre channel switch element, comprising:
-
(a) determining if a transmit frame includes an inter-fabric frame header (“
FR_Header”
);(b) if the FR_Header is not present in step (a), determining if there is a match from a hardware based address mapping cache; (c) routing the transmit frame to a local fabric if there is no matching entry from an address mapping cache in step (b); and (d) if there is no FR_Header in the transmit frame in step (a) and there is said match from the address mapping cache in step (b);
building the FR_Header for the transmit frame, wherein the FR_Header depends on whether the destination fabric of the transmit frame is the local fabric or a remote fabric, and the FR_Header is inserted in the transmit frame with a fabric identifier for the destination fabric. - View Dependent Claims (8, 11, 12)
-
-
13. A fibre channel switch element, comprising:
-
a port having a receive segment and a transmit segment for receiving and transmitting a fibre channel frame;
wherein the port includes a hardware based address mapping cache that is used for routing the fibre channel frame to local fabric or to a remote fabric;
the address mapping cache using a compare field, a control field and an output field for routing the fibre channel frame to the local fabric and the remote fabric;wherein the compare field includes port address and a fabric identifier field in an inter-fabric frame identifier header (“
FR_Header”
);
the port address includes a destination identifier (D_ID ) and a source identifier (S_ID); and
if the FR_Header is present in the fibre channel frame, then to route fibre channel frame, the D_ID is compared, if the fibre channel frame is in the receive segment, and the S_ID is compared, if the fibre channel frame is in the transmit segment;wherein the output field includes (i) a FR_Head flag, which if set, is used to compare the FR_Header field in the fibre channel frame; and
if the FR_Header flag is not set, then FR_Header field is ignored;
(ii) a compare fabric identifier only flag, which when set, is used to compare a fabric identifier; and
(iii) a D_ID flag, which when set, is used to compare and substitute the D_ID; andwherein the output field includes (i) a new port address field that is used for address substitution when using one of the compare fields provides a match;
(ii) an add header flag, which when set, is used to add the FR_Header to the fibre channel frame;
(iii) a delete header flag, which when set, is used to remove the FR_header flag; and
(iv) a new fabric identifier that is used for destination fabric associated with a proxy address that matches an address map cache entry. - View Dependent Claims (14, 15, 16, 17, 18)
-
Specification