Method and system for programmable data dependant network routing
Abstract
A method and system for routing fibre channel frames using a fibre channel switch element is provided. The switch element includes, a look up table that is indexed by domain, area, a virtual storage area number and/or AL_PA values of frames entering the fibre channel switch element; and logic for generating a column select signal that is used to select a column from the look up table for frame routing information The switch element also includes logic for validating a frame route by performing word depth match. A register is used to load look up table entries and column entries are selected based on the column select signal. The method includes, indexing a look up table with plural fibre channel frame header values; selecting a table value for routing a fibre channel frame based on a column select signal; and routing the frame if a route is valid.
Claims
exact text as granted — not AI-modified1 - 16 . (canceled)
17 . A method for routing frames via a network element having a plurality of ports, comprising:
(a) receiving a frame at a port of the network element; (b) indexing a look up table by using one or more of (i) a domain value for routing the frame to another network element, (ii) an area value for routing the frame to a port of the network element that received the frame, (iii) a Virtual Storage Area Network identifier (VSAN#) for routing the frame within a Virtual Storage Area Network, and (iv) an Arbitrated Loop Physical Address (AL_PA) value included in a header of the frame; wherein the look up table includes a plurality of columns for storing destination information indexed by one or more of the Domain value, the Area value, the Virtual Storage Network identifier and the Arbitrated Loop Physical Address; (c) selecting a column value from the look up table based on a column select signal generated by a hardware logic of the network element; and (d) based on the selected column value, routing the frame if a route is valid.
18 . The method of claim 17 , wherein a valid route is determined by matching a correct word depth with a frame word depth.
19 . The method of claim 17 , wherein a frame's destination identifier field is used to select a column for routing the frame.
20 . The method of claim 17 , wherein a frame's source identifier field value is used to select a column for routing the frame.
21 . The method of claim 17 , wherein a frame's originator identification field is used to select a column for routing the frame.
22 . The method of claim 17 , wherein a frame's type field is used to select a column for routing the frame.
23 . The method of claim 17 , wherein bits other than a type field of a frame are used to select a column for routing the frame.
24 . The method of claim 17 , wherein the column select signal is generated after a plurality of fields are input to the hardware logic and one of the input is selected to generate the column select signal.
25 . The method of claim 24 wherein the hardware logic is a multiplexer and the plurality of inputs are a destination identifier field, a source identifier field, a virtual storage area network identifier, an originator exchange identification field, a type field, and a decode frame header type field.
26 . A network element for routing frames, configured to select a route from amongst a plurality of routes, the network element comprising:
at least one port for receiving and transmitting a frame; a look up table having a plurality of columns indexed by one or more of (i) a Domain value for routing the frame to another network element, (ii) an Area value for routing the frame within the network element that received the frame, (iii) a Virtual Storage Area Network identifier (VSAN#) for routing the frame within a Virtual Storage Area Network, and (iv) an Arbitrated Loop Physical Address (AL_PA) value; and a hardware logic that receives a plurality of inputs and based on one of the inputs, a column select signal is generated to select a value from one of the plurality of columns to route the frame, if the route based on the selected column is valid.
27 . The network element of claim 26 , wherein a frame's destination identifier is used to select a column for routing the frame.
28 . The network element of claim 26 , wherein a frame's source identifier value is used to select a column for routing the frame.
29 . The network element of claim 26 wherein a frame's originator exchange identification field is used to select a column for routing the frame.
30 . The network element of claim 26 , wherein a register is used to load look up table entries and column entries are selected based on the column select signal.
31 . The network element of claim 26 , wherein a frame's type field is used to select a column for routing the frame.
32 . The network element of claim 26 , wherein bits other than a type field of a frame are used to select a column for routing the frame.
33 . A network system, comprising:
a computing system for sending and receiving information; at least one network element operationally coupled to the computing system for routing frames and configured to select a route from amongst a plurality of routes, where the network element includes: at least one port for receiving and transmitting a frame having a frame header; a look up table with a plurality of columns that is indexed by one or more of (i) a domain value for routing the frame to another network element, (ii) an area value for routing the frame to a port of the network element that received the frame, (iii) a Virtual Storage Area Network identifier (VSAN#) for routing the frame within a Virtual Storage Area Network, and (iv) an Arbitrated Loop Physical Address (AL_PA) value; and a hardware logic that receives a plurality of inputs and based on one of the inputs generates a column select signal, wherein the column select signal is used to select a column from the one of the plurality of columns of the look up table to route frames, if a route based on the selected column is valid.
34 . The system of claim 33 , wherein a register is used to load look up table entries and column entries are selected based on the column select signal.
35 . The system of claim 33 , wherein the hardware logic is a multiplexer and the plurality of inputs are a destination identifier field, a source identifier field, a virtual storage area network identifier, an originator exchange identification field, a type field, and a decode frame header type field.Cited by (0)
No later patents cite this yet.
References (0)
No backward citations on record.