US20070201457A1 - Method and system for dynamically assigning domain identification in a multi-module fibre channel switch - Google Patents

Method and system for dynamically assigning domain identification in a multi-module fibre channel switch Download PDF

Info

Publication number
US20070201457A1
US20070201457A1 US11/743,852 US74385207A US2007201457A1 US 20070201457 A1 US20070201457 A1 US 20070201457A1 US 74385207 A US74385207 A US 74385207A US 2007201457 A1 US2007201457 A1 US 2007201457A1
Authority
US
United States
Prior art keywords
switch
module
fibre channel
blade
domain
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Abandoned
Application number
US11/743,852
Inventor
Steven Betker
Timothy Vitters
Renae Weber
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Individual
Original Assignee
Individual
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Individual filed Critical Individual
Priority to US11/743,852 priority Critical patent/US20070201457A1/en
Publication of US20070201457A1 publication Critical patent/US20070201457A1/en
Abandoned legal-status Critical Current

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L49/00Packet switching elements
    • H04L49/35Switches specially adapted for specific applications
    • H04L49/356Switches specially adapted for specific applications for storage area networks
    • H04L49/357Fibre channel switches
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L49/00Packet switching elements
    • H04L49/10Packet switching elements characterised by the switching fabric construction
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L49/00Packet switching elements
    • H04L49/65Re-configuration of fast packet switches

Definitions

  • the present invention relates to networking systems, and more particularly to systems using fibre channel fabrics for interconnecting fibre channel devices.
  • Fibre channel is a set of American National Standard Institute (ANSI) standards which provide a serial transmission protocol for storage and network protocols such as HIPPI, SCSI, IP, ATM and others. Fibre channel provides an input/output interface to meet the requirements of both channel and network users.
  • ANSI American National Standard Institute
  • Fibre channel supports three different topologies: point-to-point, arbitrated loop and fibre channel fabric.
  • the point-to-point topology attaches two devices directly.
  • the arbitrated loop topology attaches devices in a loop.
  • the fibre channel fabric topology attaches host systems directly to a fabric, which are then connected to multiple devices.
  • the fibre channel fabric topology allows several media types to be interconnected.
  • Fibre channel is a closed system that relies on multiple ports to exchange information on attributes and characteristics to determine if the ports can operate together. If the ports can work together, they define the criteria under which they communicate.
  • fibre channel In fibre channel, a path is established between two nodes where the path's primary task is to transport data from one point to another at high speed with low latency, performing only simple error detection in hardware.
  • the fibre channel switch provides circuit/packet switched topology by establishing multiple simultaneous point-to-point connections.
  • Fibre channel fabric devices include a node port or “N_Port” that manages fabric connections.
  • the N_port establishes a connection to a fabric element (e.g., a switch) having a fabric port or F_port.
  • Fabric elements include the intelligence to handle routing, error detection, recovery, and similar management functions.
  • a fibre channel switch is a multi-port device where each port manages a simple point-to-point connection between itself and its attached system. Each port can be attached to a server, peripheral, I/O subsystem, bridge, hub, router, or even another switch.
  • a switch receives a connection request from one port and automatically establishes a connection to another port. Multiple calls or data transfers happen concurrently through the multi-port fibre channel switch.
  • a fibre channel switch may use multiple modules (also referred to as “blades” or “blade”) connected by fibre channel ports. Conventionally, a multi-module switch should appear to the other devices in the fibre channel fabric as a single switch.
  • Fibre channel switch addressing is defined by Fibre Channel Standard FC-SW-2.
  • FC-SW-2 Fibre Channel Standard
  • a 24-bit identifier is used to uniquely identify a switch.
  • the 24 bit address includes a 8-bit Domain Identification (“Domain_ID.”) number; 8-bit Area Identifier (Area_ID)and 8-bit Port Identifer (Port_ID), as stated in FC-SW — 2 Section 4.8, incorporated herein by reference in its entirety.
  • Domain_ID. 8-bit Domain Identification
  • Area_ID 8-bit Area Identifier
  • Port_ID Port Identifer
  • Domain_ID identifies a domain of one or more switches that have the same Domain_ID for all N_Ports and NL_Ports (an N_Port that can perform an Arbitrated Loop function).
  • ISL inter-switch link
  • the present invention solves the foregoing drawbacks by providing a method for entering fabric configuration in a fibre channel system for a multi-module fibre channel switch.
  • the method includes determining if a primary blade has been selected for the multi-module switch; sending exchange fabric parameters to internal ports of the multi-module switch; and processing principal switch selection events.
  • a method for processing principal switch selection events in a fibre channel system using a multi-module fibre channel switch includes determining if a switch module has received exchange fabric parameters; determining if the switch module has received domain identification values; sending domain identification values to all internal ports; and operating as a non-principal switch if the switch module is also a primary blade.
  • the method also includes determining if a F_S_TOV timer has expired if no domain identification value is received; and operating as the principal switch if the switch module is a primary blade and the F_S-TOV timer has expired.
  • a method for operating a principal switch in a fibre channel system using a multi-module switch includes sending exchange blade parameters with a local domain assigned value to plural internal ports in the switch module.
  • a method for operating a multi-module switch as a non-principal switch in a fibre channel system includes requesting local domain identification values from other modules; and sending exchange blade parameters with local domain assigned values to internal ports.
  • the method includes isolating the switch module if the local domain assignment value was unsuccessful.
  • a method for domain identification value assignment for a multi-module switch in a fibre channel system includes receiving exchange blade parameters with local domain value assigned; and sending domain identification value assigned flags to external ports.
  • the method includes isolating external ports if the exchange blade parameter has a rejected value for local domain assignment.
  • Domain_ID may be dynamically assigned.
  • a multi-module switch can act as a principal switch, with the primary blade performing Domain_ID assignments for the multi-module switch and for other external switches.
  • the multi-module switch can also operate as non-principal switch, with the primary blade requesting a Domain_ID assignment on behalf of the multi-module switch and informing the other modules of the assignment.
  • FIG. 1 shows a block diagram of a fibre channel system using a fibre channel fabric
  • FIG. 2 is a block diagram showing multi-module switch
  • FIG. 3 is block diagram of a switch in a multi-module switch environment that can select a primary blade, according to one aspect of the present invention
  • FIG. 4 is a process flow diagram of executable process steps for selecting a primary blade in a multi-module switch environment
  • FIG. 5 is a flow diagram of a executable process steps for processing exchange blade parameters for selecting a primary blade, according to one aspect of the present invention
  • FIG. 6 is a block diagram showing ISLs between plural multi-module switches
  • FIG. 7 is a process flow diagram of executable process steps for fabric configuration entry criteria for each blade, according to one aspect of the present invention.
  • FIG. 8 is a process flow diagram of executable process steps for principal switch selection, according to one aspect of the present invention.
  • FIG. 9 is a process flow diagram of executable process steps for primary blade and principal switch operation, according to one aspect of the present invention.
  • FIG. 10 is a process flow diagram of executable process steps for primary blade, and non-principal switch operation, according to one aspect of the present invention.
  • FIG. 11 is a process flow diagram of executable process steps for non-primary blade operation during Domain_ID address assignment, according to one aspect of the present invention.
  • FC-SW-2 standard as published by the American National Standard Institute.
  • FIG. 1 is a block diagram of a fibre channel system 100 implementing the methods and systems in accordance with the adaptive aspects of the present invention.
  • System 100 includes plural devices that are interconnected. Each device includes one or more ports, classified as node ports (N_Ports), fabric ports (F_Ports), and expansion ports (E_Ports).
  • Node ports may be located in a node device, e.g. server 103 , disk array 105 and storage device 104 .
  • Fabric ports are located in fabric devices such as switch 101 and 102 .
  • Arbitrated loop 105 may be operationally coupled to switch 101 using arbitrated loop ports (FL;Ports).
  • a path may be established between two N_ports, e.g. between server 103 and storage 104 .
  • a packet-switched path may be established using multiple links, e.g. an N-Port in server 103 may establish a path with disk array 105 through switch 102 .
  • Switch 101 includes an E_Port that enables a path to another switch 102 .
  • An ISL enables N_Ports to operationally couple to other N-Ports in a fabric.
  • FIG. 2 is a block diagram that shows plural switch modules (or blades) 102 A- 102 F integrated into a single multi-switch module 200 .
  • Internal ports between the switch modules operate on a multi-blade protocol, while external ports operate under FC-SW-2 protocol.
  • FIG. 3 is a block diagram of a blade in a multi-module switch, e.g. 102 A that implement the adaptive aspects of the present invention.
  • Switch module 102 A includes plural external ports (F_Ports operationally coupled to other devices, e.g. server 103 ; or E_Ports coupled to other switch modules) 300 A through 300 D; and internal ports 301 A- 301 D that operate under the multi-blade protocol.
  • F_Ports operationally coupled to other devices, e.g. server 103 ; or E_Ports coupled to other switch modules
  • Switch module 102 A also includes a primary blade state machine 302 that uses EBPs under the multi-blade protocol to select the primary blade for module 200 .
  • switch module 102 A Also included in switch module 102 A is a principal switch state machine 303 that processes principal switch selection and Domain_ID assignment for the switch module.
  • FIG. 4 shows a flow diagram of executable process steps for selecting a primary blade in a multi-module switch environment.
  • EBP parameters are used to select a primary blade, and once a primary blade is selected other blades are notified of the primary blade selection.
  • a blade with the lowest priority and slot number is selected as the primary blade.
  • a slot number is unique to a particular blade (or switch module, used interchangeably throughout this specification).
  • step S 400 the process starts and switch module 200 is initialized.
  • step S 401 retained primary blade priority and blade number is initialized to the blade's priority and blade number.
  • step S 402 internal ports 301 A- 301 D are initialized.
  • step S 403 a B_S-TOV timer is started and thereafter, in steps S 404 , an EBP request is sent to all adjacent blades.
  • the B_S_TOV timer (not shown) is operationally coupled or integrated with state machine 302 .
  • EBP Request Payload Byte Item Size Command Code hex′82′ 1 Reserved 1 Payload Length 2 Reserved 3 Primary Blade Priority 1 Reserved 3 Primary Blade Slot 1 Number Reserved 3 Primary Blade Assigned 1 Local Domain_ID Status 1 Reserved 2 Local Domain_ID 1 Reserved 3 Switch Priority 1 Design specific data N
  • Payload Length This field may contain a 16-bit unsigned integer that specifies the total payload length in bytes. This value is hex′18′+size of design specific data.
  • This field specifies the priority level of a blade that an EBP transmitting blade believes is the primary blade.
  • This field specifies the slot number of the blade that the EBP transmitting blade believes is the primary blade. This value uniquely identifies each blade in a switch derived from the physical location of the module in a chassis.
  • Primary Blade Assigned This field indicates that the primary blade role is assigned. If zero, the primary blade has not been selected. If non-zero, the primary blade has been selected. Table 2 below shows an example of primary blade values. TABLE 2 Primary Blade Assigned Status value Comments 0 Unassigned. Primary blade selection is in progress. 1 Assigned. Primary blade role assigned.
  • Local Domain_ID Status Indicates Domain_ID status of a blade.
  • the primary blade is responsible for requesting a Domain_ID on behalf of all blades.
  • DIA Domain_ID assignment
  • TABLE 3 Local Domain_ID Status value Comments 1 Predefined. Local Domain_ID was predefined by configuration data. 2 Accepted. Local Domain_ID has been granted by principal switch. 3 Accepted. Local Domain_ID has been granted by principal switch and fabric is in reconfiguration. 4 Rejected. Local Domain_ID has been rejected by principal switch. 5 Rejected. Local Domain_ID has been rejected by principal switch and fabric is in reconfiguration.
  • Local Domain_ID This denotes a switch's local Domain_ID.
  • Switch Priority Value This denotes a switch's priority as defined by FC-SW-2.
  • step S 405 the process determines if all switch modules have received an EBP payload. If an EBP payload has been received then the EBP is processed in step S 406 , as shown in the process steps of FIG. 5 . If a primary blade has been selected, as determined in step S 407 , the local blade is set as a non-primary blade in step S 408 . If the primary blade has not been selected, then the process moves back to step S 405 .
  • step S 405 A the process determines, if the B_S_TOV timer has expired. If the timer has not expired the process moves to step s 405 .
  • step S 409 the process determines if the retained slot number is the local slot number. If not, the process moves to step s 405 .
  • step S 410 the local blade is set as the primary blade.
  • step S 411 the primary blade sends EBPs to all internal ports and the selected blade operates as the primary blade in step S 412 .
  • FIG. 5 is a flow diagram of executable process steps that describes processing of EBPs (step S 406 ) for selecting a primary blade, according to one aspect of the present invention.
  • step S 500 EBP's are received and the B_S_TOV timer is started.
  • step S 501 the EBP payload is analyzed by primary blade state machine 302 , to determine whether a primary blade flag is set. If it is set, then the process moves to step S 503 , where the EBP priority and slot number replaces the retained priority and slot number.
  • step S 502 the process determines if the EBP priority is less than the retained priority. If it is less, then the process moves to step S 503 .
  • step S 506 the process determines if the EBP priority is equal to the retained priority. If not, the process terminates at step S 508 .
  • step S 507 the process determines if the EBP slot number is less than the retained slot number. If it is less, then the process moves to step S 503 . If not, the process terminates at step S 508 .
  • step S 504 (similar to step S 411 ), EBPs are sent to all internal ports with the selected primary blade and the process terminates in step S 505 .
  • a principal switch is selected whenever an external E_Port ISL is established.
  • FIG. 6 shows plural multi-module switches 200 A- 200 D operationally coupled to each other.
  • Each multi-module switch has a primary blade that may be selected by the process discussed above.
  • Each switch module (blade) has its own state machine. By following the process steps described below, the switch modules will appear to the rest of the Fabric as a single switch.
  • Non-multi-module switches use the process defined by FC-SW-2.
  • FIG. 7 is a process flow diagram of executable process steps for switch modules in a fabric to enter fabric configuration.
  • a primary blade is selected before the principal switch selection process is started.
  • the only blade operates as the primary blade.
  • a switch sends EFPs during fabric configuration and inter-blade EFP exchange occurs at the same time.
  • a blade with external E_Port ISL can initiate principal switch selection on behalf of other blades and send EFPs.
  • Other blades receive EFPs on internal ports, signaling the start of principal switch selection. Each blade may also operate independently during EFP exchange.
  • step S 701 a switch module (e.g. 200 A) enters fabric configuration.
  • the switch module waits in step S 702 for a primary blade to be selected, as described above.
  • step S 702 the process determines whether an external E_Port is initialized in step S 703 .
  • step S 703 the switch module initiates principal switch selection.
  • step S 704 an EFP is sent to external E_Ports as specified in FC-SW-2 and in step S 707 , EFPs are sent on all internal E_Ports to notify other switch modules that principal switch selection has started.
  • step S 705 the process determines if an EFP has been received on an internal port, before starting principal switch selection.
  • a switch module receiving an EFP on an internal port joins principal switch selection, and in step S 706 the EFPs are processed as specified in FC-SW-2.
  • step S 707 EFPs are sent on all internal E_Ports to notify all other switch modules that principal switch selection has started.
  • step S 708 each switch module initializes principal switch selection timer F_S_TOV as specified in FC-SW-2. The process then moves to the principal switch selection process in step S 709 , described below with respect to FIG. 8 .
  • FIG. 8 is a flow diagram of executable process steps for principal switch selection (step s 709 ). The process starts when the principal switch selection entry is completed in FIG. 7 . After a principal switch is selected, each switch module transitions to one of three domain address assignment processes, described below.
  • step S 801 the principal switch selection events starts. Principal switch selection events are processed in steps S 802 , S 804 and S 809 until a principal switch is selected.
  • the events include receipt of EFPS, DIA flags and expiration of F-S-TOV timer. These events may be processed in any order.
  • step S 802 If an EFP is received in step S 802 , the process moves to step S 803 .
  • step S 803 the EFP is processed as specified in FC-SW-2 for principal switch selection.
  • step S 804 determines if a set DIA flag is received in step S 804 , signaling the end of principal switch selection. If the DIA flag is set then the switch module does not become the principal switch and the process moves to step S 805 .
  • step S 805 the process sends DIA flag values to internal ports to notify other switch modules that principal switch selection is complete.
  • Other switch modules in step S 804 receive DIA values sent in step S 805 .
  • step S 806 the process determines if the switch module is the primary blade. If it is the primary blade then the process moves to step S 807 and the switch module operates as a non-principal switch, described below with respect to FIG. 10 .
  • step S 806 if the switch module is not the primary blade, the process moves to step S 808 and the switch module operates as a non-primary blade during domain address assignment described below with respect to FIG. 11 .
  • step S 809 the process determines if the F-S_TOV timer has expired. If F_S_TOV timer expires in step S 809 , the switch module may become the principal switch.
  • step S 810 the process determines if the switch module is the primary blade. If yes, then in step S 811 , the process determines if the switch module is the principal switch. The process compares the switch's worldwide name with the principal switch's worldwide name discovered in step S 803 . If either step S 810 or S 811 is false, the process resumes wait for the next event. If the switch module is the principal switch in step S 811 , then the process moves to step S 812 and the switch module operates as the principal switch described below with respect to FIG. 9 .
  • FIG. 9 is a process flow diagram of executable process steps for a primary blade that operates as a principal switch (step S 812 , FIG. 8 ).
  • the primary blade sends the switch's local Domain_ID status to non-primary blades.
  • step S 901 a primary blade operates as the principal switch.
  • step S 902 the primary blade assigns the local switch Domain_ID as specified in FC-SW-2, including sending DIA flags to external E_Ports and internal ports. It is noteworthy that non-primary blades at step S 804 receive the DIA flags.
  • step S 903 an EBP with this switch's local Domain_ID and status is sent to all non-primary blades.
  • Other non-primary blades at step S 1102 as described below, also receive these EBPs.
  • step S 904 the switch continues to operate as the principal switch as specified in FC-SW-2.
  • FIG. 10 is a process flow diagram of executable process steps for a primary blade that operates as a non-principal switch.
  • the primary blade sends this switch's local Domain_ID and status to non-primary blades.
  • a primary blade operates as a non-principal switch.
  • step S 1002 the primary blade requests a local switch Domain_Id as specified in FC-SW-2.
  • step S 1003 the process verifies if the local Domain_ID request is successful, and if successful, the process moves to step S 1004 .
  • step S 1004 an EBP with the switch's local Domain_ID and status flag is sent to all non-primary blades. Other non-primary blades at step S 1102 also receive these EBPs.
  • step S 1005 the switch continues to operate as a non-principal switch, as specified in FC-SW-2, and sends DIA information to external E_Ports and internal ports.
  • step S 1006 EBPs with the switch's local Domain_ID and status flags are sent to all non-primary blades. Other non-primary blades at step S 1104 receive these EBPs. Thereafter, in step S 1007 , external E-port ISLs are isolated per FC-SW-2.
  • FIG. 11 is a process flow diagram of executable process steps for a non-primary blade during Domain_ID assignment (S 808 ).
  • the non-primary blade waits until this switch's local Domain_ID and status flags are received from the primary blade.
  • a non-primary blade moves to Domain_ID assignment.
  • the non-primary blade waits for an EBP indicating that the local switch Domain_ID is either accepted in step S 1102 or rejected in steps S 1104 .
  • the switch module operates with the EBP local switch Domain_ID.
  • step S 1103 the switch module sends DIA information to external E-Port ISLs to notify neighboring switches as specified in FC-SW-2.
  • the switch module When the local switch domain is rejected in step S 1104 , the switch module operates with the EBP local switch Domain_ID and in step S 1105 , the switch module isolates external E-Ports.
  • Domain_ID may be dynamically assigned.
  • a multi-module switch can act as a principal switch, with the primary blade performing Domain_ID assignment for the multi-module switch and for other external switches.
  • the multi-module switch can also operate as non-principal switch, with the primary blade requesting a Domain_ID assignment on behalf of the multi-module switch and informing the other modules of the assignment.

Abstract

A method for entering fabric configuration in a fibre channel system for a multi-module fibre channel switch is provided. The method includes determining if a primary blade has been selected for the multi-module switch; sending exchange fabric parameters to internal ports of the multi-module switch; and processing principal switch selection events.

Description

    CROSS REFERENCE TO RELATED APPLICATION
  • This application is related to U.S. patent application entitled “METHOD AND SYSTEM FOR PRIMARY BLADE SELECTION IN A MULTI-MODULE FIBRE CHANNEL SWITCH”, Attorney Docket No. QN1009.US, Ser. No. ______, having common inventors and Assignee, filed on even date herewith, the disclosure of which is incorporated herein by reference in its' entirety.
  • BACKGROUND
  • 1. Field of the Invention
  • The present invention relates to networking systems, and more particularly to systems using fibre channel fabrics for interconnecting fibre channel devices.
  • 2. Background of the Invention
  • Fibre channel is a set of American National Standard Institute (ANSI) standards which provide a serial transmission protocol for storage and network protocols such as HIPPI, SCSI, IP, ATM and others. Fibre channel provides an input/output interface to meet the requirements of both channel and network users.
  • Fibre channel supports three different topologies: point-to-point, arbitrated loop and fibre channel fabric. The point-to-point topology attaches two devices directly. The arbitrated loop topology attaches devices in a loop. The fibre channel fabric topology attaches host systems directly to a fabric, which are then connected to multiple devices. The fibre channel fabric topology allows several media types to be interconnected.
  • Fibre channel is a closed system that relies on multiple ports to exchange information on attributes and characteristics to determine if the ports can operate together. If the ports can work together, they define the criteria under which they communicate.
  • In fibre channel, a path is established between two nodes where the path's primary task is to transport data from one point to another at high speed with low latency, performing only simple error detection in hardware. The fibre channel switch provides circuit/packet switched topology by establishing multiple simultaneous point-to-point connections.
  • Fibre channel fabric devices include a node port or “N_Port” that manages fabric connections. The N_port establishes a connection to a fabric element (e.g., a switch) having a fabric port or F_port. Fabric elements include the intelligence to handle routing, error detection, recovery, and similar management functions.
  • A fibre channel switch is a multi-port device where each port manages a simple point-to-point connection between itself and its attached system. Each port can be attached to a server, peripheral, I/O subsystem, bridge, hub, router, or even another switch. A switch receives a connection request from one port and automatically establishes a connection to another port. Multiple calls or data transfers happen concurrently through the multi-port fibre channel switch.
  • A fibre channel switch may use multiple modules (also referred to as “blades” or “blade”) connected by fibre channel ports. Conventionally, a multi-module switch should appear to the other devices in the fibre channel fabric as a single switch.
  • Fibre channel switch addressing is defined by Fibre Channel Standard FC-SW-2. Typically, a 24-bit identifier is used to uniquely identify a switch. The 24 bit address includes a 8-bit Domain Identification (“Domain_ID.”) number; 8-bit Area Identifier (Area_ID)and 8-bit Port Identifer (Port_ID), as stated in FC-SW 2 Section 4.8, incorporated herein by reference in its entirety.
  • Domain_ID identifies a domain of one or more switches that have the same Domain_ID for all N_Ports and NL_Ports (an N_Port that can perform an Arbitrated Loop function). A domain in the fibre channel environment as defined by ANSI Standard X3.289-199X Fibre Channel-Fabric Generic Requirements (FC-FG), incorporated herein by reference in its entirety, is the highest or most significant hierarchical level in a three-level addressing scheme. If there are more than one switch in a Domain, then each switch within the domain is directly connected via an inter-switch link (“ISL”) to at least another switch in the domain.
  • Conventional systems pre-define a Domain_ID when a fibre channel switch is configured. Typically, a switch is assigned a Domain_ID the procedures defined in FC-SW-2. However, if a multi-module switch needs to appear as a single switch to the rest of the Fabric, the Domain_ID assignment procedure must be such that a consistent interface is available within the fabric.
  • Current Fiber Channel standards do not provide a mechanism to combine multiple switch modules into one switch.
  • Therefore, what is required is a process and system that can dynamically assign Domain_ID after a primary blade in a multi-module switch is selected.
  • SUMMARY OF THE INVENTION
  • In one aspect, the present invention solves the foregoing drawbacks by providing a method for entering fabric configuration in a fibre channel system for a multi-module fibre channel switch. The method includes determining if a primary blade has been selected for the multi-module switch; sending exchange fabric parameters to internal ports of the multi-module switch; and processing principal switch selection events.
  • In another aspect of the present invention, a method for processing principal switch selection events in a fibre channel system using a multi-module fibre channel switch is provided. The method includes determining if a switch module has received exchange fabric parameters; determining if the switch module has received domain identification values; sending domain identification values to all internal ports; and operating as a non-principal switch if the switch module is also a primary blade.
  • The method also includes determining if a F_S_TOV timer has expired if no domain identification value is received; and operating as the principal switch if the switch module is a primary blade and the F_S-TOV timer has expired.
  • In another aspect of the present invention, a method for operating a principal switch in a fibre channel system using a multi-module switch is provided. The method includes sending exchange blade parameters with a local domain assigned value to plural internal ports in the switch module.
  • In yet another aspect, a method for operating a multi-module switch as a non-principal switch in a fibre channel system is provided. The method includes requesting local domain identification values from other modules; and sending exchange blade parameters with local domain assigned values to internal ports. The method includes isolating the switch module if the local domain assignment value was unsuccessful.
  • In yet another aspect, a method for domain identification value assignment for a multi-module switch in a fibre channel system is provided. The method includes receiving exchange blade parameters with local domain value assigned; and sending domain identification value assigned flags to external ports.
  • The method includes isolating external ports if the exchange blade parameter has a rejected value for local domain assignment.
  • In one aspect of the present invention, Domain_ID may be dynamically assigned.
  • In another aspect of the present invention, a multi-module switch can act as a principal switch, with the primary blade performing Domain_ID assignments for the multi-module switch and for other external switches. The multi-module switch can also operate as non-principal switch, with the primary blade requesting a Domain_ID assignment on behalf of the multi-module switch and informing the other modules of the assignment.
  • This brief summary has been provided so that the nature of the invention may be understood quickly. A more complete understanding of the invention can be obtained by reference to the following detailed description of the preferred embodiments thereof concerning the attached drawings.
  • BRIEF DESCRIPTION OF THE DRAWINGS
  • The foregoing features and other features of the present invention will now be described with reference to a fibre channel system. In the drawings, the same components have the same reference numerals. The illustrated embodiment is intended to illustrate, but not to limit the invention. The drawings include the following Figures:
  • FIG. 1, as described above, shows a block diagram of a fibre channel system using a fibre channel fabric;
  • FIG. 2 is a block diagram showing multi-module switch;
  • FIG. 3 is block diagram of a switch in a multi-module switch environment that can select a primary blade, according to one aspect of the present invention;
  • FIG. 4 is a process flow diagram of executable process steps for selecting a primary blade in a multi-module switch environment;
  • FIG. 5 is a flow diagram of a executable process steps for processing exchange blade parameters for selecting a primary blade, according to one aspect of the present invention;
  • FIG. 6 is a block diagram showing ISLs between plural multi-module switches;
  • FIG. 7 is a process flow diagram of executable process steps for fabric configuration entry criteria for each blade, according to one aspect of the present invention;
  • FIG. 8 is a process flow diagram of executable process steps for principal switch selection, according to one aspect of the present invention;
  • FIG. 9 is a process flow diagram of executable process steps for primary blade and principal switch operation, according to one aspect of the present invention;
  • FIG. 10 is a process flow diagram of executable process steps for primary blade, and non-principal switch operation, according to one aspect of the present invention; and
  • FIG. 11 is a process flow diagram of executable process steps for non-primary blade operation during Domain_ID address assignment, according to one aspect of the present invention.
  • DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS
  • Definitions:
  • The following definitions are provided as they are typically (but not exclusively) used in the fibre channel environment, implementing the various adaptive aspects of the present invention.
      • a. “Blade”: A module in a multi-module fibre channel switch.
      • b. “Blade_ID”: A unique identifier for identifying a switch module.
      • c. “B_S_TOV Timer”: A timer to detect inactivity during primary blade selection.
      • d. “E-Port”: Expansion port
      • e. “EBP”: Exchange Blade Parameters, created by a Multi-Blade Protocol.
      • f. “EFP”: Exchange Fabric Parameters as defined by FC-SW-2.
      • g. “Fibre channel ANSI Standard”: The standard describes the physical interface, transmission and signaling protocol of a high performance serial link for support of other high level protocols associated with IPI, SCSI, IP, ATM and others.
      • h. “FC-1”: Fibre channel transmission protocol, which includes serial encoding, decoding and error control.
      • i. “FC-2”: Fibre channel signaling protocol that includes frame structure and byte sequences.
      • j. “FC-3”: Defines a set of fibre channel services that are common across plural ports of a node.
      • k. “FC-4”: Provides mapping between lower levels of fibre channel, IPI and SCSI command sets, HIPPI data framing, IP and other upper level protocols.
      • l. “Fabric”: A system which interconnects various ports attached to it and is capable of routing fibre channel frames by using destination identifiers provided in FC-2 frame headers.
      • m. “Fabric Topology” This is a typology where a device is directly attached to a fibre channel fabric that uses destination identifiers embedded in frame headers to route frames through a fibre channel fabric to a desired destination.
      • n. F_S_TOV Timer: Defined by FC-SW-2, a time constant used to ensure that fabric stability has been achieved during fabric configuration.
      • o. Multi Blade protocol: A protocol that operates on internal switch module ports to assign a primary blade and exchange blade parameters.
      • p. Port: A general reference to N. Sub.—Port or F.Sub.—Port.
      • q. “Slot Number”: A unique identifier for each blade in a multi-module switch derived from the physical location of the blade in a chasis.
  • The Fibre Channel Specification used to build one embodiment of the present invention includes:
  • FC-SW-2 standard as published by the American National Standard Institute.
  • To facilitate an understanding of the preferred embodiment, the general architecture and operation of a fibre channel system will be described. The specific architecture and operation of the preferred embodiment will then be described with reference to the general architecture of the fibre channel system.
  • FIG. 1 is a block diagram of a fibre channel system 100 implementing the methods and systems in accordance with the adaptive aspects of the present invention. System 100 includes plural devices that are interconnected. Each device includes one or more ports, classified as node ports (N_Ports), fabric ports (F_Ports), and expansion ports (E_Ports). Node ports may be located in a node device, e.g. server 103, disk array 105 and storage device 104. Fabric ports are located in fabric devices such as switch 101 and 102. Arbitrated loop 105 may be operationally coupled to switch 101 using arbitrated loop ports (FL;Ports).
  • The devices of FIG. 1 are operationally coupled via “links” or “paths”. A path may be established between two N_ports, e.g. between server 103 and storage 104. A packet-switched path may be established using multiple links, e.g. an N-Port in server 103 may establish a path with disk array 105 through switch 102.
  • Switch 101 includes an E_Port that enables a path to another switch 102. An ISL enables N_Ports to operationally couple to other N-Ports in a fabric.
  • FIG. 2 is a block diagram that shows plural switch modules (or blades) 102A-102F integrated into a single multi-switch module 200. Internal ports between the switch modules operate on a multi-blade protocol, while external ports operate under FC-SW-2 protocol.
  • FIG. 3 is a block diagram of a blade in a multi-module switch, e.g. 102A that implement the adaptive aspects of the present invention. Switch module 102A includes plural external ports (F_Ports operationally coupled to other devices, e.g. server 103; or E_Ports coupled to other switch modules) 300A through 300D; and internal ports 301A-301D that operate under the multi-blade protocol.
  • Switch module 102A also includes a primary blade state machine 302 that uses EBPs under the multi-blade protocol to select the primary blade for module 200.
  • Also included in switch module 102A is a principal switch state machine 303 that processes principal switch selection and Domain_ID assignment for the switch module.
  • Primary Blade Selection:
  • FIG. 4 shows a flow diagram of executable process steps for selecting a primary blade in a multi-module switch environment. In one aspect of the present invention EBP parameters are used to select a primary blade, and once a primary blade is selected other blades are notified of the primary blade selection. A blade with the lowest priority and slot number is selected as the primary blade. As defined above, a slot number is unique to a particular blade (or switch module, used interchangeably throughout this specification).
  • Turning in detail to FIG. 4, in step S400 the process starts and switch module 200 is initialized.
  • In step S401, retained primary blade priority and blade number is initialized to the blade's priority and blade number.
  • In step S402, internal ports 301A-301D are initialized.
  • In step S403, a B_S-TOV timer is started and thereafter, in steps S404, an EBP request is sent to all adjacent blades. In one aspect the B_S_TOV timer (not shown) is operationally coupled or integrated with state machine 302.
  • An example of an EBP request is provided below:
    TABLE 1
    EBP Request Payload
    Byte
    Item Size
    Command Code = hex′82′ 1
    Reserved 1
    Payload Length 2
    Reserved 3
    Primary Blade Priority 1
    Reserved 3
    Primary Blade Slot 1
    Number
    Reserved 3
    Primary Blade Assigned 1
    Local Domain_ID Status 1
    Reserved 2
    Local Domain_ID 1
    Reserved 3
    Switch Priority 1
    Design specific data N
  • Payload Length: This field may contain a 16-bit unsigned integer that specifies the total payload length in bytes. This value is hex′18′+size of design specific data.
  • Primary Blade Priority: This field specifies the priority level of a blade that an EBP transmitting blade believes is the primary blade.
  • Primary Blade Slot Number: This field specifies the slot number of the blade that the EBP transmitting blade believes is the primary blade. This value uniquely identifies each blade in a switch derived from the physical location of the module in a chassis.
  • Primary Blade Assigned: This field indicates that the primary blade role is assigned. If zero, the primary blade has not been selected. If non-zero, the primary blade has been selected. Table 2 below shows an example of primary blade values.
    TABLE 2
    Primary Blade
    Assigned Status
    value Comments
    0 Unassigned. Primary
    blade selection is
    in progress.
    1 Assigned. Primary
    blade role assigned.
  • Local Domain_ID Status: Indicates Domain_ID status of a blade. The primary blade is responsible for requesting a Domain_ID on behalf of all blades. When Local Domain_ID status is two, blades are permitted to transmit Domain_ID assignment (“DIA”) requests on external E_Ports. Allowable shown in Table 3.
    TABLE 3
    Local Domain_ID Status
    value Comments
    1 Predefined. Local Domain_ID was
    predefined by configuration data.
    2 Accepted. Local Domain_ID has been
    granted by principal switch.
    3 Accepted. Local Domain_ID has been
    granted by principal switch and
    fabric is in reconfiguration.
    4 Rejected. Local Domain_ID has been
    rejected by principal switch.
    5 Rejected. Local Domain_ID has been
    rejected by principal switch and
    fabric is in reconfiguration.
  • Local Domain_ID: This denotes a switch's local Domain_ID.
  • Switch Priority Value: This denotes a switch's priority as defined by FC-SW-2. In step S405, the process determines if all switch modules have received an EBP payload. If an EBP payload has been received then the EBP is processed in step S406, as shown in the process steps of FIG. 5. If a primary blade has been selected, as determined in step S407, the local blade is set as a non-primary blade in step S408. If the primary blade has not been selected, then the process moves back to step S405.
  • If an EBP is not received in step s405, then in step S405A, the process determines, if the B_S_TOV timer has expired. If the timer has not expired the process moves to step s405.
  • If the timer has expired, then in step S409, the process determines if the retained slot number is the local slot number. If not, the process moves to step s405.
  • If the retained slot number is the local slot number, then in step S410, the local blade is set as the primary blade.
  • In step S411, the primary blade sends EBPs to all internal ports and the selected blade operates as the primary blade in step S412.
  • FIG. 5 is a flow diagram of executable process steps that describes processing of EBPs (step S406) for selecting a primary blade, according to one aspect of the present invention.
  • Turning in detail to FIG. 5, in step S500, EBP's are received and the B_S_TOV timer is started.
  • In step S501, the EBP payload is analyzed by primary blade state machine 302, to determine whether a primary blade flag is set. If it is set, then the process moves to step S503, where the EBP priority and slot number replaces the retained priority and slot number.
  • If the primary blade flag is not set in step S501, then in step S502, the process determines if the EBP priority is less than the retained priority. If it is less, then the process moves to step S503.
  • If the EBP priority is not less than the retained priority, then in step S506, the process determines if the EBP priority is equal to the retained priority. If not, the process terminates at step S508.
  • If the EBP priority is equal to the retained priority, then in step S507, the process determines if the EBP slot number is less than the retained slot number. If it is less, then the process moves to step S503. If not, the process terminates at step S508.
  • Once the EBP priority and slot number are retained in step S503, in step S504 (similar to step S411), EBPs are sent to all internal ports with the selected primary blade and the process terminates in step S505.
  • Principal Switch and Domain ID Assignment:
  • A principal switch is selected whenever an external E_Port ISL is established.
  • FIG. 6 shows plural multi-module switches 200A-200D operationally coupled to each other. Each multi-module switch has a primary blade that may be selected by the process discussed above. Each switch module (blade) has its own state machine. By following the process steps described below, the switch modules will appear to the rest of the Fabric as a single switch. Non-multi-module switches use the process defined by FC-SW-2.
  • FIG. 7 is a process flow diagram of executable process steps for switch modules in a fabric to enter fabric configuration. In one aspect of the present invention, a primary blade is selected before the principal switch selection process is started. In a single blade switch, the only blade operates as the primary blade. A switch sends EFPs during fabric configuration and inter-blade EFP exchange occurs at the same time. A blade with external E_Port ISL can initiate principal switch selection on behalf of other blades and send EFPs. Other blades receive EFPs on internal ports, signaling the start of principal switch selection. Each blade may also operate independently during EFP exchange.
  • Turning in detail to FIG. 7, in step S701, a switch module (e.g. 200A) enters fabric configuration. The switch module waits in step S702 for a primary blade to be selected, as described above. After primary blade selection is complete in step S702, the process determines whether an external E_Port is initialized in step S703.
  • If external E_Port ISL initialization is complete in step S703, the switch module initiates principal switch selection. In step S704, an EFP is sent to external E_Ports as specified in FC-SW-2 and in step S707, EFPs are sent on all internal E_Ports to notify other switch modules that principal switch selection has started.
  • If external E_Ports are not initialized in step S703, then in step S705, the process determines if an EFP has been received on an internal port, before starting principal switch selection. In step S705, a switch module receiving an EFP on an internal port joins principal switch selection, and in step S706 the EFPs are processed as specified in FC-SW-2.
  • In step S707, EFPs are sent on all internal E_Ports to notify all other switch modules that principal switch selection has started.
  • In step S708 each switch module initializes principal switch selection timer F_S_TOV as specified in FC-SW-2. The process then moves to the principal switch selection process in step S709, described below with respect to FIG. 8.
  • FIG. 8 is a flow diagram of executable process steps for principal switch selection (step s709). The process starts when the principal switch selection entry is completed in FIG. 7. After a principal switch is selected, each switch module transitions to one of three domain address assignment processes, described below.
  • Turning in detail to FIG. 8, in step S801 the principal switch selection events starts. Principal switch selection events are processed in steps S802, S804 and S809 until a principal switch is selected. The events include receipt of EFPS, DIA flags and expiration of F-S-TOV timer. These events may be processed in any order.
  • If an EFP is received in step S802, the process moves to step S803. In step S803, the EFP is processed as specified in FC-SW-2 for principal switch selection.
  • If an EFP is not received, then the process determines if a set DIA flag is received in step S804, signaling the end of principal switch selection. If the DIA flag is set then the switch module does not become the principal switch and the process moves to step S805.
  • In step S805, the process sends DIA flag values to internal ports to notify other switch modules that principal switch selection is complete. Other switch modules in step S804 receive DIA values sent in step S805.
  • In step S806, the process determines if the switch module is the primary blade. If it is the primary blade then the process moves to step S807 and the switch module operates as a non-principal switch, described below with respect to FIG. 10.
  • In step S806, if the switch module is not the primary blade, the process moves to step S808 and the switch module operates as a non-primary blade during domain address assignment described below with respect to FIG. 11.
  • If the DIA flag is not set in step S804, then in step S809, the process determines if the F-S_TOV timer has expired. If F_S_TOV timer expires in step S809, the switch module may become the principal switch.
  • In step S810, the process determines if the switch module is the primary blade. If yes, then in step S811, the process determines if the switch module is the principal switch. The process compares the switch's worldwide name with the principal switch's worldwide name discovered in step S803. If either step S810 or S811 is false, the process resumes wait for the next event. If the switch module is the principal switch in step S811, then the process moves to step S812 and the switch module operates as the principal switch described below with respect to FIG. 9.
  • FIG. 9 is a process flow diagram of executable process steps for a primary blade that operates as a principal switch (step S812, FIG. 8). In addition to standard FC-SW-2 operations, the primary blade sends the switch's local Domain_ID status to non-primary blades.
  • Turning in detail to FIG. 9, in step S901, a primary blade operates as the principal switch.
  • In step S902, the primary blade assigns the local switch Domain_ID as specified in FC-SW-2, including sending DIA flags to external E_Ports and internal ports. It is noteworthy that non-primary blades at step S804 receive the DIA flags.
  • In step S903, an EBP with this switch's local Domain_ID and status is sent to all non-primary blades. Other non-primary blades at step S1102, as described below, also receive these EBPs.
  • In step S904, the switch continues to operate as the principal switch as specified in FC-SW-2.
  • FIG. 10 is a process flow diagram of executable process steps for a primary blade that operates as a non-principal switch. In addition to standard FC-SW-2 operations, the primary blade sends this switch's local Domain_ID and status to non-primary blades.
  • Turning in detail to FIG. 10, in step S1001, a primary blade operates as a non-principal switch.
  • In step S1002, the primary blade requests a local switch Domain_Id as specified in FC-SW-2.
  • In step S1003, the process verifies if the local Domain_ID request is successful, and if successful, the process moves to step S1004.
  • In step S1004, an EBP with the switch's local Domain_ID and status flag is sent to all non-primary blades. Other non-primary blades at step S1102 also receive these EBPs.
  • In step S1005, the switch continues to operate as a non-principal switch, as specified in FC-SW-2, and sends DIA information to external E_Ports and internal ports.
  • Returning to step S1003, if the local Domain_ID request is unsuccessful then the process moves to step S1006. In step S1006, EBPs with the switch's local Domain_ID and status flags are sent to all non-primary blades. Other non-primary blades at step S1104 receive these EBPs. Thereafter, in step S1007, external E-port ISLs are isolated per FC-SW-2.
  • FIG. 11 is a process flow diagram of executable process steps for a non-primary blade during Domain_ID assignment (S808). The non-primary blade waits until this switch's local Domain_ID and status flags are received from the primary blade.
  • Turning in detail to FIG. 11, in step S1101, a non-primary blade moves to Domain_ID assignment. The non-primary blade waits for an EBP indicating that the local switch Domain_ID is either accepted in step S1102 or rejected in steps S1104. When the local switch domain is accepted in step S1102, the switch module operates with the EBP local switch Domain_ID.
  • In step S1103, the switch module sends DIA information to external E-Port ISLs to notify neighboring switches as specified in FC-SW-2.
  • When the local switch domain is rejected in step S1104, the switch module operates with the EBP local switch Domain_ID and in step S1105, the switch module isolates external E-Ports.
  • In one aspect of the present invention, Domain_ID may be dynamically assigned.
  • In another aspect of the present invention, a multi-module switch can act as a principal switch, with the primary blade performing Domain_ID assignment for the multi-module switch and for other external switches. The multi-module switch can also operate as non-principal switch, with the primary blade requesting a Domain_ID assignment on behalf of the multi-module switch and informing the other modules of the assignment.
  • Although the present invention has been described with reference to specific embodiments, these embodiments are illustrative only and not limiting. Many other applications and embodiments of the present invention will be apparent in light of this disclosure and the following claims

Claims (9)

1. A method for entering fabric configuration in a fibre channel system for a multi-module fibre channel switch, comprising:
determining if a primary blade has been selected for the multi-module switch;
sending exchange fabric parameters to internal ports of the multi-module switch; and
processing principal switch selection events.
2. A method for processing principal switch selection events in a fibre channel system using a multi-module fibre channel switch, comprising:
determining if exchange fabric parameters have been received by a switch module;
determining if domain identification values have been received by the switch module;
sending domain identification values to all internal ports; and
operating as a non-principal switch if the switch module is also a primary blade.
3. The method for claim 2, further comprising: determining if a F_S_TOV timer has expired if no domain identification value is received; and
operating as the principal switch if the switch module is a primary blade and the F_S-TOV timer has expired.
3. The method of claim 2, further comprising:
assigning the switch module as a non-primary blade if the domain identification value is received by the switch module and the switch module is not a primary blade.
4. A method for operating a principal switch in a fibre channel system using a multi-module switch, comprising:
sending exchange blade parameters with a local domain assigned value to plural internal ports in the switch module.
5. A method for operating a multi-module switch as a non-principal switch in a fibre channel system, comprising:
requesting local domain identification values from other modules; and
sending exchange blade parameters with local domain assigned values to internal ports.
6. The method of claim 5, further comprising:
isolating the switch module if the local domain assignment value was unsuccessful.
7. A method for domain identification value assignment for a multi-module switch in a fibre channel system, comprising:
receiving exchange blade parameters with local domain value assigned; and
sending domain identification value assigned flags to external ports.
8. The method of claim 7, further comprising:
isolating external ports if the exchange blade parameter has a rejected value for local domain assignment.
US11/743,852 2002-07-22 2007-05-03 Method and system for dynamically assigning domain identification in a multi-module fibre channel switch Abandoned US20070201457A1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
US11/743,852 US20070201457A1 (en) 2002-07-22 2007-05-03 Method and system for dynamically assigning domain identification in a multi-module fibre channel switch

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US10/200,393 US7230929B2 (en) 2002-07-22 2002-07-22 Method and system for dynamically assigning domain identification in a multi-module fibre channel switch
US11/743,852 US20070201457A1 (en) 2002-07-22 2007-05-03 Method and system for dynamically assigning domain identification in a multi-module fibre channel switch

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
US10/200,393 Continuation US7230929B2 (en) 2002-07-22 2002-07-22 Method and system for dynamically assigning domain identification in a multi-module fibre channel switch

Publications (1)

Publication Number Publication Date
US20070201457A1 true US20070201457A1 (en) 2007-08-30

Family

ID=30443515

Family Applications (2)

Application Number Title Priority Date Filing Date
US10/200,393 Active 2025-04-01 US7230929B2 (en) 2002-07-22 2002-07-22 Method and system for dynamically assigning domain identification in a multi-module fibre channel switch
US11/743,852 Abandoned US20070201457A1 (en) 2002-07-22 2007-05-03 Method and system for dynamically assigning domain identification in a multi-module fibre channel switch

Family Applications Before (1)

Application Number Title Priority Date Filing Date
US10/200,393 Active 2025-04-01 US7230929B2 (en) 2002-07-22 2002-07-22 Method and system for dynamically assigning domain identification in a multi-module fibre channel switch

Country Status (1)

Country Link
US (2) US7230929B2 (en)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20130010638A1 (en) * 2011-07-06 2013-01-10 Cisco Technology, Inc. Merging a Stand-Alone Switch to a Fibre Channel Network
US20130208625A1 (en) * 2012-02-15 2013-08-15 Cisco Technology, Inc. Persistent Principal Switch for Fibre Channel Fabric

Families Citing this family (66)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7031292B2 (en) * 2001-03-09 2006-04-18 Flarion Technologies, Inc. Method of scheduling regular signal transmission in a cellular wireless system
ES2185496B1 (en) * 2001-07-17 2005-06-01 Universidad Politecnica De Valencia ONLINE EQUIPMENT AND METHOD FOR THE DETECTION, DETERMINATION OF THE EVOLUTION AND QUANTIFICATION OF MICROBIAL BIOMASS AND OTHER SUBSTANCES THAT ABSORB THROUGHOUT THE SPECTRUM OF LIGHT DURING THE DEVELOPMENT OF BIOTECHNOLOGICAL PROCESSES.
US7230929B2 (en) 2002-07-22 2007-06-12 Qlogic, Corporation Method and system for dynamically assigning domain identification in a multi-module fibre channel switch
US7154886B2 (en) * 2002-07-22 2006-12-26 Qlogic Corporation Method and system for primary blade selection in a multi-module fiber channel switch
US7397768B1 (en) 2002-09-11 2008-07-08 Qlogic, Corporation Zone management in a multi-module fibre channel switch
US6886141B1 (en) 2002-10-07 2005-04-26 Qlogic Corporation Method and system for reducing congestion in computer networks
US7219183B2 (en) * 2003-01-21 2007-05-15 Nextio, Inc. Switching apparatus and method for providing shared I/O within a load-store fabric
US7493416B2 (en) * 2003-01-21 2009-02-17 Nextio Inc. Fibre channel controller shareable by a plurality of operating system domains within a load-store architecture
US7917658B2 (en) * 2003-01-21 2011-03-29 Emulex Design And Manufacturing Corporation Switching apparatus and method for link initialization in a shared I/O environment
US7046668B2 (en) 2003-01-21 2006-05-16 Pettey Christopher J Method and apparatus for shared I/O in a load/store fabric
US7953074B2 (en) * 2003-01-21 2011-05-31 Emulex Design And Manufacturing Corporation Apparatus and method for port polarity initialization in a shared I/O device
US8346884B2 (en) * 2003-01-21 2013-01-01 Nextio Inc. Method and apparatus for a shared I/O network interface controller
US8102843B2 (en) 2003-01-21 2012-01-24 Emulex Design And Manufacturing Corporation Switching apparatus and method for providing shared I/O within a load-store fabric
US7502370B2 (en) * 2003-01-21 2009-03-10 Nextio Inc. Network controller for obtaining a plurality of network port identifiers in response to load-store transactions from a corresponding plurality of operating system domains within a load-store architecture
US8032659B2 (en) 2003-01-21 2011-10-04 Nextio Inc. Method and apparatus for a shared I/O network interface controller
US7512717B2 (en) * 2003-01-21 2009-03-31 Nextio Inc. Fibre channel controller shareable by a plurality of operating system domains within a load-store architecture
US7836211B2 (en) * 2003-01-21 2010-11-16 Emulex Design And Manufacturing Corporation Shared input/output load-store architecture
US7698483B2 (en) * 2003-01-21 2010-04-13 Nextio, Inc. Switching apparatus and method for link initialization in a shared I/O environment
US7174413B2 (en) * 2003-01-21 2007-02-06 Nextio Inc. Switching apparatus and method for providing shared I/O within a load-store fabric
US7457906B2 (en) * 2003-01-21 2008-11-25 Nextio, Inc. Method and apparatus for shared I/O in a load/store fabric
US7103064B2 (en) * 2003-01-21 2006-09-05 Nextio Inc. Method and apparatus for shared I/O in a load/store fabric
US7664909B2 (en) 2003-04-18 2010-02-16 Nextio, Inc. Method and apparatus for a shared I/O serial ATA controller
US7188209B2 (en) * 2003-04-18 2007-03-06 Nextio, Inc. Apparatus and method for sharing I/O endpoints within a load store fabric by encapsulation of domain information in transaction layer packets
US7617333B2 (en) * 2003-01-21 2009-11-10 Nextio Inc. Fibre channel controller shareable by a plurality of operating system domains within a load-store architecture
US8081642B2 (en) 2003-01-31 2011-12-20 Brocade Communications Systems, Inc. Method and apparatus for routing between fibre channel fabrics
US7152132B2 (en) * 2003-07-16 2006-12-19 Qlogic Corporation Method and apparatus for improving buffer utilization in communication networks
US7453802B2 (en) * 2003-07-16 2008-11-18 Qlogic, Corporation Method and apparatus for detecting and removing orphaned primitives in a fibre channel network
US7525910B2 (en) * 2003-07-16 2009-04-28 Qlogic, Corporation Method and system for non-disruptive data capture in networks
US7463646B2 (en) * 2003-07-16 2008-12-09 Qlogic Corporation Method and system for fibre channel arbitrated loop acceleration
US7466700B2 (en) * 2003-07-21 2008-12-16 Qlogic, Corporation LUN based hard zoning in fibre channel switches
US7525983B2 (en) * 2003-07-21 2009-04-28 Qlogic, Corporation Method and system for selecting virtual lanes in fibre channel switches
US7646767B2 (en) 2003-07-21 2010-01-12 Qlogic, Corporation Method and system for programmable data dependant network routing
US7430175B2 (en) * 2003-07-21 2008-09-30 Qlogic, Corporation Method and system for managing traffic in fibre channel systems
US7420982B2 (en) * 2003-07-21 2008-09-02 Qlogic, Corporation Method and system for keeping a fibre channel arbitrated loop open during frame gaps
US7406092B2 (en) * 2003-07-21 2008-07-29 Qlogic, Corporation Programmable pseudo virtual lanes for fibre channel systems
US7522522B2 (en) * 2003-07-21 2009-04-21 Qlogic, Corporation Method and system for reducing latency and congestion in fibre channel switches
US7522529B2 (en) * 2003-07-21 2009-04-21 Qlogic, Corporation Method and system for detecting congestion and over subscription in a fibre channel network
US7792115B2 (en) * 2003-07-21 2010-09-07 Qlogic, Corporation Method and system for routing and filtering network data packets in fibre channel systems
US7512067B2 (en) * 2003-07-21 2009-03-31 Qlogic, Corporation Method and system for congestion control based on optimum bandwidth allocation in a fibre channel switch
US7894348B2 (en) 2003-07-21 2011-02-22 Qlogic, Corporation Method and system for congestion control in a fibre channel switch
US7684401B2 (en) * 2003-07-21 2010-03-23 Qlogic, Corporation Method and system for using extended fabric features with fibre channel switch elements
US7603453B1 (en) * 2003-10-24 2009-10-13 Network Appliance, Inc. Creating links between nodes connected to a fibre channel (FC) fabric
US7103504B1 (en) 2003-11-21 2006-09-05 Qlogic Corporation Method and system for monitoring events in storage area networks
US7707309B2 (en) * 2004-01-29 2010-04-27 Brocade Communication Systems, Inc. Isolation switch for fibre channel fabrics in storage area networks
US7480293B2 (en) * 2004-02-05 2009-01-20 Qlogic, Corporation Method and system for preventing deadlock in fibre channel fabrics using frame priorities
US7340167B2 (en) * 2004-04-23 2008-03-04 Qlogic, Corporation Fibre channel transparent switch for mixed switch fabrics
US7930377B2 (en) * 2004-04-23 2011-04-19 Qlogic, Corporation Method and system for using boot servers in networks
US7593997B2 (en) * 2004-10-01 2009-09-22 Qlogic, Corporation Method and system for LUN remapping in fibre channel networks
US7411958B2 (en) * 2004-10-01 2008-08-12 Qlogic, Corporation Method and system for transferring data directly between storage devices in a storage area network
US7380030B2 (en) * 2004-10-01 2008-05-27 Qlogic, Corp. Method and system for using an in-line credit extender with a host bus adapter
US8295299B2 (en) 2004-10-01 2012-10-23 Qlogic, Corporation High speed fibre channel switch element
US7519058B2 (en) * 2005-01-18 2009-04-14 Qlogic, Corporation Address translation in fibre channel switches
US7577134B2 (en) * 2005-08-19 2009-08-18 Brocade Communications Systems, Inc. Port expander for fibre channel fabrics in storage area networks
US20070058620A1 (en) * 2005-08-31 2007-03-15 Mcdata Corporation Management of a switch fabric through functionality conservation
US9143841B2 (en) 2005-09-29 2015-09-22 Brocade Communications Systems, Inc. Federated management of intelligent service modules
US7760717B2 (en) * 2005-10-25 2010-07-20 Brocade Communications Systems, Inc. Interface switch for use with fibre channel fabrics in storage area networks
US7953866B2 (en) * 2006-03-22 2011-05-31 Mcdata Corporation Protocols for connecting intelligent service modules in a storage area network
US20070258443A1 (en) * 2006-05-02 2007-11-08 Mcdata Corporation Switch hardware and architecture for a computer network
US7787482B2 (en) * 2006-10-17 2010-08-31 International Business Machines Corporation Independent drive enclosure blades in a blade server system with low cost high speed switch modules
US8085687B2 (en) 2008-02-28 2011-12-27 Cisco Technology, Inc. Returning domain identifications without reconfiguration
CN101645896B (en) * 2009-09-04 2012-06-06 杭州华三通信技术有限公司 Attribute propagation method based on fiber channel network and switch system
US8266356B2 (en) * 2009-12-10 2012-09-11 Hewlett-Packard Development Company, L.P. Interconnecting computing modules to form an integrated system
US8635375B2 (en) 2010-04-14 2014-01-21 Brocade Communications Systems, Inc. Remote F—ports
US9385969B2 (en) * 2013-09-03 2016-07-05 Cisco Technology, Inc. Merging fibre channel fabrics
JP2015156587A (en) * 2014-02-20 2015-08-27 富士通株式会社 Network system, network switch apparatus, and information processing apparatus, and setting method
US9667480B2 (en) * 2014-09-10 2017-05-30 Cisco Technology, Inc. Consolidated information delivery in a Fibre Channel fabric

Citations (97)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4081612A (en) * 1975-07-31 1978-03-28 Hasler Ag Method for building-up of routing addresses in a digital telecommunication network
US4200929A (en) * 1978-01-23 1980-04-29 Davidjuk Alexandr D Input device for delivery of data from digital transmitters
US4258418A (en) * 1978-12-28 1981-03-24 International Business Machines Corporation Variable capacity data buffer system
US4268906A (en) * 1978-12-22 1981-05-19 International Business Machines Corporation Data processor input/output controller
US4382159A (en) * 1981-05-29 1983-05-03 Bowditch Robert S Blow actuated microphone
US4449182A (en) * 1981-10-05 1984-05-15 Digital Equipment Corporation Interface between a pair of processors, such as host and peripheral-controlling processors in data processing systems
US4803622A (en) * 1987-05-07 1989-02-07 Intel Corporation Programmable I/O sequencer for use in an I/O processor
US5090011A (en) * 1988-12-23 1992-02-18 Hitachi, Ltd. Packet congestion control method and packet switching equipment
US5115430A (en) * 1990-09-24 1992-05-19 At&T Bell Laboratories Fair access of multi-priority traffic to distributed-queue dual-bus networks
US5212795A (en) * 1988-10-11 1993-05-18 California Institute Of Technology Programmable DMA controller
US5276807A (en) * 1987-04-13 1994-01-04 Emulex Corporation Bus interface synchronization circuitry for reducing time between successive data transmission in a system using an asynchronous handshaking
US5280483A (en) * 1990-08-09 1994-01-18 Fujitsu Limited Traffic control system for asynchronous transfer mode exchange
US5291481A (en) * 1991-10-04 1994-03-01 At&T Bell Laboratories Congestion control for high speed packet networks
US5390173A (en) * 1992-10-22 1995-02-14 Digital Equipment Corporation Packet format in hub for packet data communications system
US5594672A (en) * 1994-05-20 1997-01-14 Micro Energetics Corporation Peripheral power saver
US5623492A (en) * 1995-03-24 1997-04-22 U S West Technologies, Inc. Methods and systems for managing bandwidth resources in a fast packet switching network
US5706279A (en) * 1995-03-24 1998-01-06 U S West Technologies, Inc. Methods and systems for managing packet flow into a fast packet switching network
US5729762A (en) * 1995-04-21 1998-03-17 Intel Corporation Input output controller having interface logic coupled to DMA controller and plurality of address lines for carrying control information to DMA agent
US5732206A (en) * 1996-07-23 1998-03-24 International Business Machines Corporation Method, apparatus and program product for disruptive recovery in a data processing system
US5740467A (en) * 1992-01-09 1998-04-14 Digital Equipment Corporation Apparatus and method for controlling interrupts to a host during data transfer between the host and an adapter
US5758187A (en) * 1996-03-15 1998-05-26 Adaptec, Inc. Method for enhancing performance of a RAID 1 read operation using a pair of I/O command blocks in a chain structure
US5757771A (en) * 1995-11-14 1998-05-26 Yurie Systems, Inc. Queue management to serve variable and constant bit rate traffic at multiple quality of service levels in a ATM switch
US5875343A (en) * 1995-10-20 1999-02-23 Lsi Logic Corporation Employing request queues and completion queues between main processors and I/O processors wherein a main processor is interrupted when a certain number of completion messages are present in its completion queue
US5881296A (en) * 1996-10-02 1999-03-09 Intel Corporation Method for improved interrupt processing in a computer system
US5892969A (en) * 1996-03-15 1999-04-06 Adaptec, Inc. Method for concurrently executing a configured string of concurrent I/O command blocks within a chain to perform a raid 5 I/O operation
US5905905A (en) * 1997-08-05 1999-05-18 Adaptec, Inc. System for copying IOBS from FIFO into I/O adapter, writing data completed IOB, and invalidating completed IOB in FIFO for reuse of FIFO
US6011779A (en) * 1996-12-30 2000-01-04 Hyundai Electronics America ATM switch queuing system
US6026092A (en) * 1996-12-31 2000-02-15 Northern Telecom Limited High performance fault tolerant switching system for multimedia satellite and terrestrial communications networks
US6031842A (en) * 1996-09-11 2000-02-29 Mcdata Corporation Low latency shared memory switch architecture
US6046979A (en) * 1998-05-04 2000-04-04 Cabletron Systems, Inc. Method and apparatus for controlling the flow of variable-length packets through a multiport switch
US6049802A (en) * 1994-06-27 2000-04-11 Lockheed Martin Corporation System and method for generating a linked list in a computer memory
US6055618A (en) * 1995-10-31 2000-04-25 Cray Research, Inc. Virtual maintenance network in multiprocessing system having a non-flow controlled virtual maintenance channel
US6055603A (en) * 1997-09-18 2000-04-25 Emc Corporation Method and apparatus for performing pre-request operations in a cached disk array storage system
US6061360A (en) * 1998-02-24 2000-05-09 Seagate Technology, Inc. Method and apparatus for preserving loop fairness with dynamic half-duplex
US6185620B1 (en) * 1998-04-03 2001-02-06 Lsi Logic Corporation Single chip protocol engine and data formatter apparatus for off chip host memory to local memory transfer and conversion
US6185203B1 (en) * 1997-02-18 2001-02-06 Vixel Corporation Fibre channel switching fabric
US6201787B1 (en) * 1998-05-01 2001-03-13 Emulex Corporation Automatic loop segment failure isolation
US6209089B1 (en) * 1998-08-12 2001-03-27 Microsoft Corporation Correcting for changed client machine hardware using a server-based operating system
US6230276B1 (en) * 1999-02-01 2001-05-08 Douglas T Hayden Energy conserving measurement system under software control and method for battery powered products
US6229822B1 (en) * 1996-10-24 2001-05-08 Newbridge Networks Corporation Communications system for receiving and transmitting data cells
US6233244B1 (en) * 1997-02-14 2001-05-15 Advanced Micro Devices, Inc. Method and apparatus for reclaiming buffers
US6335935B2 (en) * 1998-07-08 2002-01-01 Broadcom Corporation Network switching architecture with fast filtering processor
US6343324B1 (en) * 1999-09-13 2002-01-29 International Business Machines Corporation Method and system for controlling access share storage devices in a network environment by configuring host-to-volume mapping data structures in the controller memory for granting and denying access to the devices
US20030002503A1 (en) * 2001-06-15 2003-01-02 Brewer Lani William Switch assisted frame aliasing for storage virtualization
US6504846B1 (en) * 1999-05-21 2003-01-07 Advanced Micro Devices, Inc. Method and apparatus for reclaiming buffers using a single buffer bit
US20030021239A1 (en) * 2001-07-26 2003-01-30 Mullendore Rodney N. Method and apparatus for scheduling packet flow on a fibre channel arbitrated loop
US20030026267A1 (en) * 2001-07-31 2003-02-06 Oberman Stuart F. Virtual channels in a network switch
US20030026287A1 (en) * 2001-07-31 2003-02-06 Mullendore Rodney N. Method and system for managing time division multiplexing (TDM) timeslots in a network switch
US6522656B1 (en) * 1994-09-12 2003-02-18 3Com Corporation Distributed processing ethernet switch with adaptive cut-through switching
US20030035433A1 (en) * 2001-08-16 2003-02-20 International Business Machines Corporation Apparatus and method for virtualizing a queue pair space to minimize time-wait impacts
US20030046396A1 (en) * 2000-03-03 2003-03-06 Richter Roger K. Systems and methods for managing resource utilization in information management environments
US6532212B1 (en) * 2001-09-25 2003-03-11 Mcdata Corporation Trunking inter-switch links
US20030056000A1 (en) * 2001-07-26 2003-03-20 Nishan Systems, Inc. Transfer ready frame reordering
US20030056032A1 (en) * 1999-06-09 2003-03-20 Charles Micalizzi Method and apparatus for automatically transferring i/o blocks between a host system and a host adapter
US6546010B1 (en) * 1999-02-04 2003-04-08 Advanced Micro Devices, Inc. Bandwidth efficiency in cascaded scheme
US20030072316A1 (en) * 1999-05-20 2003-04-17 Autumn Jane Niu Apparatus and method in a network switch port for transferring data between buffer memory and transmit and receive state machines according to a prescribed interface protocol
US20030076788A1 (en) * 2001-10-19 2003-04-24 Sun Microsystems, Inc. Method, system, and program for discovering devices communicating through a switch
US20030079019A1 (en) * 2001-09-28 2003-04-24 Lolayekar Santosh C. Enforcing quality of service in a storage network
US20040015638A1 (en) * 2002-07-22 2004-01-22 Forbes Bryn B. Scalable modular server system
US20040013088A1 (en) * 2002-07-19 2004-01-22 International Business Machines Corporation Long distance repeater for digital information
US6684209B1 (en) * 2000-01-14 2004-01-27 Hitachi, Ltd. Security method and system for storage subsystem
US6697359B1 (en) * 1999-07-02 2004-02-24 Ancor Communications, Inc. High performance switch fabric element and switch systems
US6697368B2 (en) * 2000-11-17 2004-02-24 Foundry Networks, Inc. High-performance network switch
US20040054866A1 (en) * 1998-06-29 2004-03-18 Blumenau Steven M. Mapping of hosts to logical storage units and data storage ports in a data processing system
US20040054776A1 (en) * 2002-09-16 2004-03-18 Finisar Corporation Network expert analysis process
US20040057389A1 (en) * 2002-09-16 2004-03-25 Finisar Corporation Network analysis scalable analysis tool for multiple protocols
US6718497B1 (en) * 2000-04-21 2004-04-06 Apple Computer, Inc. Method and apparatus for generating jitter test patterns on a high performance serial bus
US6721799B1 (en) * 1999-09-15 2004-04-13 Koninklijke Philips Electronics N.V. Method for automatically transmitting an acknowledge frame in canopen and other can application layer protocols and a can microcontroller that implements this method
US6725388B1 (en) * 2000-06-13 2004-04-20 Intel Corporation Method and system for performing link synchronization between two clock domains by inserting command signals into a data stream transmitted between the two clock domains
US20040081196A1 (en) * 2002-10-29 2004-04-29 Elliott Stephen J. Protocol independent hub
US20040081186A1 (en) * 2002-07-02 2004-04-29 Vixel Corporation Methods and apparatus for switching Fibre Channel Arbitrated Loop devices
US20040081394A1 (en) * 2001-01-31 2004-04-29 Giora Biran Providing control information to a management processor of a communications switch
US20050023656A1 (en) * 2002-08-08 2005-02-03 Leedy Glenn J. Vertical system integration
US20050036485A1 (en) * 2003-08-11 2005-02-17 Eilers Fritz R. Network having switchover with no data loss
US20050036499A1 (en) * 2001-12-26 2005-02-17 Andiamo Systems, Inc., A Delaware Corporation Fibre Channel Switch that enables end devices in different fabrics to communicate with one another while retaining their unique Fibre Channel Domain_IDs
US20050036763A1 (en) * 1999-05-06 2005-02-17 Motoki Kato Method of processing multiplexed program data using entry points and time units
US6859435B1 (en) * 1999-10-13 2005-02-22 Lucent Technologies Inc. Prevention of deadlocks and livelocks in lossless, backpressured packet networks
US20050047334A1 (en) * 2001-06-13 2005-03-03 Paul Harry V. Fibre channel switch
US6865157B1 (en) * 2000-05-26 2005-03-08 Emc Corporation Fault tolerant shared system resource with communications passthrough providing high availability communications
US20050058148A1 (en) * 2003-09-15 2005-03-17 Broadcom Corporation Elasticity buffer for streaming data
US6983342B2 (en) * 2002-10-08 2006-01-03 Lsi Logic Corporation High speed OC-768 configurable link layer chip
US6987768B1 (en) * 1999-06-02 2006-01-17 Fujitsu Limited Packet transferring apparatus
US6988149B2 (en) * 2002-02-26 2006-01-17 Lsi Logic Corporation Integrated target masking
US20060013248A1 (en) * 1999-08-13 2006-01-19 Hamayun Mujeeb Switching device interfaces
US7000025B1 (en) * 2001-05-07 2006-02-14 Adaptec, Inc. Methods for congestion mitigation in infiniband
US20060034192A1 (en) * 2004-08-12 2006-02-16 Broadcom Corporation Apparatus and system for coupling and decoupling initiator devices to a network using an arbitrated loop without disrupting the network
US20060034302A1 (en) * 2004-07-19 2006-02-16 David Peterson Inter-fabric routing
US7002926B1 (en) * 2000-11-30 2006-02-21 Western Digital Ventures, Inc. Isochronous switched fabric network
US7010607B1 (en) * 1999-09-15 2006-03-07 Hewlett-Packard Development Company, L.P. Method for training a communication link between ports to correct for errors
US7171050B2 (en) * 2002-03-19 2007-01-30 Samsung Electronics Co., Ltd. System on chip processor for multimedia devices
US7185062B2 (en) * 2001-09-28 2007-02-27 Emc Corporation Switch-based storage services
US7188364B2 (en) * 2001-12-20 2007-03-06 Cranite Systems, Inc. Personal virtual bridged local area networks
US7190667B2 (en) * 2001-04-26 2007-03-13 Intel Corporation Link level packet flow control mechanism
US7194538B1 (en) * 2002-06-04 2007-03-20 Veritas Operating Corporation Storage area network (SAN) management system for discovering SAN components using a SAN management server
US7200108B2 (en) * 2001-06-29 2007-04-03 International Business Machines Corporation Method and apparatus for recovery from faults in a loop network
US7315511B2 (en) * 2001-10-24 2008-01-01 Fujitsu Limited Transmitter, SONET/SDH transmitter, and transmission system
US7352740B2 (en) * 2003-04-29 2008-04-01 Brocade Communciations Systems, Inc. Extent-based fibre channel zoning in hardware

Family Cites Families (56)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4162375A (en) * 1972-03-23 1979-07-24 Siemens Aktiengesellschaft Time-divison multiplex switching network with spatial switching stages
GB2074815B (en) * 1980-04-24 1984-06-27 Plessey Co Ltd Telecommunications switching network using digital switching modules
US4546468A (en) * 1982-09-13 1985-10-08 At&T Bell Laboratories Switching network control circuit
US4569043A (en) * 1983-06-22 1986-02-04 Gte Automatic Electric Inc. Arrangement for interfacing the space stage to the time stages of a T-S-T digital switching system
US4725835A (en) * 1985-09-13 1988-02-16 T-Bar Incorporated Time multiplexed bus matrix switching system
US4821034A (en) * 1987-02-06 1989-04-11 Ancor Communications, Inc. Digital exchange switch element and network
US5144622A (en) 1988-02-15 1992-09-01 Hitachi, Ltd. Network system
US5367520A (en) * 1992-11-25 1994-11-22 Bell Communcations Research, Inc. Method and system for routing cells in an ATM switch
US5412653A (en) 1993-10-15 1995-05-02 International Business Machines Corporation Dynamic switch cascading system
GB9401092D0 (en) * 1994-01-21 1994-03-16 Newbridge Networks Corp A network management system
GB9408574D0 (en) * 1994-04-29 1994-06-22 Newbridge Networks Corp Atm switching system
US5598541A (en) * 1994-10-24 1997-01-28 Lsi Logic Corporation Node loop port communication interface super core for fibre channel
US5687172A (en) * 1994-12-30 1997-11-11 Lucent Technologies Inc. Terabit per second distribution network
EP0732659B1 (en) * 1995-03-17 2001-08-08 LSI Logic Corporation Controlling (n+i) I/O channels with (n) data managers in a homogeneous software programming environment
US5748612A (en) * 1995-08-10 1998-05-05 Mcdata Corporation Method and apparatus for implementing virtual circuits in a fibre channel system
US6047323A (en) * 1995-10-19 2000-04-04 Hewlett-Packard Company Creation and migration of distributed streams in clusters of networked computers
US5610745A (en) * 1995-10-26 1997-03-11 Hewlett-Packard Co. Method and apparatus for tracking buffer availability
JPH09247176A (en) * 1996-03-11 1997-09-19 Hitachi Ltd Asynchronous transfer mode exchange system
KR100194813B1 (en) * 1996-12-05 1999-06-15 정선종 Packet Switching Device with Multichannel / Multicast Switching Function and Packet Switching System Using the Same
US6188690B1 (en) * 1996-12-12 2001-02-13 Pmc-Sierra, Inc. Method and apparatus for high speed, scalable communication system
US6760302B1 (en) * 1996-12-20 2004-07-06 The Trustees Of Columbia University In The City Of New York Automatic protection switching system in a network
JP3156623B2 (en) 1997-01-31 2001-04-16 日本電気株式会社 Fiber channel fabric
US6014383A (en) * 1997-02-10 2000-01-11 Compaq Computer Corporation System and method for controlling multiple initiators in a fibre channel environment
US6118776A (en) * 1997-02-18 2000-09-12 Vixel Corporation Methods and apparatus for fiber channel interconnection of private loop devices
US6160813A (en) * 1997-03-21 2000-12-12 Brocade Communications Systems, Inc. Fibre channel switching system and method
US5987028A (en) * 1997-05-12 1999-11-16 Industrial Technology Research Insitute Multiple channel ATM switch
US6081512A (en) * 1997-06-30 2000-06-27 Sun Microsystems, Inc. Spanning tree support in a high performance network device
US6144668A (en) * 1997-11-26 2000-11-07 International Business Machines Corporation Simultaneous cut through and store-and-forward frame support in a network device
US6324181B1 (en) * 1998-04-16 2001-11-27 3Com Corporation Fibre channel switched arbitrated loop
US6411599B1 (en) * 1998-05-29 2002-06-25 International Business Machines Corporation Fault tolerant switching architecture
US6330236B1 (en) * 1998-06-11 2001-12-11 Synchrodyne Networks, Inc. Packet switching method with time-based routing
US6353612B1 (en) * 1998-06-19 2002-03-05 Brocade Communications Systems, Inc. Probing device
US6885664B2 (en) * 1998-07-22 2005-04-26 Synchrodyne Networks, Inc. Distributed switching system and method with time-based routing
US6597691B1 (en) * 1998-09-01 2003-07-22 Ancor Communications, Inc. High performance switching
US6424658B1 (en) * 1999-01-29 2002-07-23 Neomagic Corp. Store-and-forward network switch using an embedded DRAM
US6308220B1 (en) * 1999-01-29 2001-10-23 Neomagic Corp. Circulating parallel-search engine with random inputs for network routing table stored in a wide embedded DRAM
US6467008B1 (en) * 1999-03-01 2002-10-15 Sun Microsystems, Inc. Method and apparatus for indicating an interrupt in a network interface
US6370605B1 (en) * 1999-03-04 2002-04-09 Sun Microsystems, Inc. Switch based scalable performance storage architecture
US6597777B1 (en) * 1999-06-29 2003-07-22 Lucent Technologies Inc. Method and apparatus for detecting service anomalies in transaction-oriented networks
WO2001043328A1 (en) * 1999-12-10 2001-06-14 Qlogic Switch Products, Inc. Fibre channel credit extender and repeater
EP1297662A2 (en) * 2000-06-02 2003-04-02 Inrange Technologies Corporation Address conversion method and device in a fibre channel switch
CA2410932C (en) * 2000-06-05 2010-04-13 Qlogic Switch Products, Inc. Hardware-enforced loop-level hard zoning for fibre channel switch fabric
US20020156918A1 (en) * 2001-04-23 2002-10-24 Brocade Communications Systems, Inc. Dynamic path selection with in-order delivery within sequence in a communication network
US20020188754A1 (en) * 2001-04-27 2002-12-12 Foster Michael S. Method and system for domain addressing in a communications network
US6941357B2 (en) * 2001-07-18 2005-09-06 Dell Products L.P. Fibre channel switching appliance
US6862293B2 (en) * 2001-11-13 2005-03-01 Mcdata Corporation Method and apparatus for providing optimized high speed link utilization
US6915463B2 (en) * 2001-12-26 2005-07-05 Richard Charles Vieregge System and method for performing pre-emptive protection switching
US7433299B2 (en) * 2002-01-24 2008-10-07 Brocade Communications Systems, Inc. Fault-tolerant updates to a distributed fibre channel database
US7606167B1 (en) * 2002-04-05 2009-10-20 Cisco Technology, Inc. Apparatus and method for defining a static fibre channel fabric
US7385982B2 (en) * 2002-04-09 2008-06-10 Next Generation Systems, Inc. Systems and methods for providing quality of service (QoS) in an environment that does not normally support QoS features
TWI231424B (en) * 2002-06-28 2005-04-21 Quanta Comp Inc Management and preparation system of blade server
US7154886B2 (en) * 2002-07-22 2006-12-26 Qlogic Corporation Method and system for primary blade selection in a multi-module fiber channel switch
US7230929B2 (en) 2002-07-22 2007-06-12 Qlogic, Corporation Method and system for dynamically assigning domain identification in a multi-module fibre channel switch
US6886141B1 (en) * 2002-10-07 2005-04-26 Qlogic Corporation Method and system for reducing congestion in computer networks
US7930377B2 (en) * 2004-04-23 2011-04-19 Qlogic, Corporation Method and system for using boot servers in networks
US7716315B2 (en) * 2004-09-24 2010-05-11 Emc Corporation Enclosure configurable to perform in-band or out-of-band enclosure management

Patent Citations (100)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4081612A (en) * 1975-07-31 1978-03-28 Hasler Ag Method for building-up of routing addresses in a digital telecommunication network
US4200929A (en) * 1978-01-23 1980-04-29 Davidjuk Alexandr D Input device for delivery of data from digital transmitters
US4268906A (en) * 1978-12-22 1981-05-19 International Business Machines Corporation Data processor input/output controller
US4258418A (en) * 1978-12-28 1981-03-24 International Business Machines Corporation Variable capacity data buffer system
US4382159A (en) * 1981-05-29 1983-05-03 Bowditch Robert S Blow actuated microphone
US4449182A (en) * 1981-10-05 1984-05-15 Digital Equipment Corporation Interface between a pair of processors, such as host and peripheral-controlling processors in data processing systems
US4449182B1 (en) * 1981-10-05 1989-12-12
US5276807A (en) * 1987-04-13 1994-01-04 Emulex Corporation Bus interface synchronization circuitry for reducing time between successive data transmission in a system using an asynchronous handshaking
US4803622A (en) * 1987-05-07 1989-02-07 Intel Corporation Programmable I/O sequencer for use in an I/O processor
US5212795A (en) * 1988-10-11 1993-05-18 California Institute Of Technology Programmable DMA controller
US5090011A (en) * 1988-12-23 1992-02-18 Hitachi, Ltd. Packet congestion control method and packet switching equipment
US5280483A (en) * 1990-08-09 1994-01-18 Fujitsu Limited Traffic control system for asynchronous transfer mode exchange
US5115430A (en) * 1990-09-24 1992-05-19 At&T Bell Laboratories Fair access of multi-priority traffic to distributed-queue dual-bus networks
US5291481A (en) * 1991-10-04 1994-03-01 At&T Bell Laboratories Congestion control for high speed packet networks
US5740467A (en) * 1992-01-09 1998-04-14 Digital Equipment Corporation Apparatus and method for controlling interrupts to a host during data transfer between the host and an adapter
US5390173A (en) * 1992-10-22 1995-02-14 Digital Equipment Corporation Packet format in hub for packet data communications system
US5594672A (en) * 1994-05-20 1997-01-14 Micro Energetics Corporation Peripheral power saver
US6049802A (en) * 1994-06-27 2000-04-11 Lockheed Martin Corporation System and method for generating a linked list in a computer memory
US6522656B1 (en) * 1994-09-12 2003-02-18 3Com Corporation Distributed processing ethernet switch with adaptive cut-through switching
US5623492A (en) * 1995-03-24 1997-04-22 U S West Technologies, Inc. Methods and systems for managing bandwidth resources in a fast packet switching network
US5706279A (en) * 1995-03-24 1998-01-06 U S West Technologies, Inc. Methods and systems for managing packet flow into a fast packet switching network
US5729762A (en) * 1995-04-21 1998-03-17 Intel Corporation Input output controller having interface logic coupled to DMA controller and plurality of address lines for carrying control information to DMA agent
US5875343A (en) * 1995-10-20 1999-02-23 Lsi Logic Corporation Employing request queues and completion queues between main processors and I/O processors wherein a main processor is interrupted when a certain number of completion messages are present in its completion queue
US6055618A (en) * 1995-10-31 2000-04-25 Cray Research, Inc. Virtual maintenance network in multiprocessing system having a non-flow controlled virtual maintenance channel
US5757771A (en) * 1995-11-14 1998-05-26 Yurie Systems, Inc. Queue management to serve variable and constant bit rate traffic at multiple quality of service levels in a ATM switch
US5758187A (en) * 1996-03-15 1998-05-26 Adaptec, Inc. Method for enhancing performance of a RAID 1 read operation using a pair of I/O command blocks in a chain structure
US5892969A (en) * 1996-03-15 1999-04-06 Adaptec, Inc. Method for concurrently executing a configured string of concurrent I/O command blocks within a chain to perform a raid 5 I/O operation
US5732206A (en) * 1996-07-23 1998-03-24 International Business Machines Corporation Method, apparatus and program product for disruptive recovery in a data processing system
US6031842A (en) * 1996-09-11 2000-02-29 Mcdata Corporation Low latency shared memory switch architecture
US5881296A (en) * 1996-10-02 1999-03-09 Intel Corporation Method for improved interrupt processing in a computer system
US6229822B1 (en) * 1996-10-24 2001-05-08 Newbridge Networks Corporation Communications system for receiving and transmitting data cells
US6011779A (en) * 1996-12-30 2000-01-04 Hyundai Electronics America ATM switch queuing system
US6026092A (en) * 1996-12-31 2000-02-15 Northern Telecom Limited High performance fault tolerant switching system for multimedia satellite and terrestrial communications networks
US6233244B1 (en) * 1997-02-14 2001-05-15 Advanced Micro Devices, Inc. Method and apparatus for reclaiming buffers
US6185203B1 (en) * 1997-02-18 2001-02-06 Vixel Corporation Fibre channel switching fabric
US5905905A (en) * 1997-08-05 1999-05-18 Adaptec, Inc. System for copying IOBS from FIFO into I/O adapter, writing data completed IOB, and invalidating completed IOB in FIFO for reuse of FIFO
US6055603A (en) * 1997-09-18 2000-04-25 Emc Corporation Method and apparatus for performing pre-request operations in a cached disk array storage system
US6061360A (en) * 1998-02-24 2000-05-09 Seagate Technology, Inc. Method and apparatus for preserving loop fairness with dynamic half-duplex
US6185620B1 (en) * 1998-04-03 2001-02-06 Lsi Logic Corporation Single chip protocol engine and data formatter apparatus for off chip host memory to local memory transfer and conversion
US6201787B1 (en) * 1998-05-01 2001-03-13 Emulex Corporation Automatic loop segment failure isolation
US6046979A (en) * 1998-05-04 2000-04-04 Cabletron Systems, Inc. Method and apparatus for controlling the flow of variable-length packets through a multiport switch
US6988130B2 (en) * 1998-06-29 2006-01-17 Emc Corporation Virtual ports for partitioning of data storage
US20040054866A1 (en) * 1998-06-29 2004-03-18 Blumenau Steven M. Mapping of hosts to logical storage units and data storage ports in a data processing system
US6335935B2 (en) * 1998-07-08 2002-01-01 Broadcom Corporation Network switching architecture with fast filtering processor
US6209089B1 (en) * 1998-08-12 2001-03-27 Microsoft Corporation Correcting for changed client machine hardware using a server-based operating system
US6230276B1 (en) * 1999-02-01 2001-05-08 Douglas T Hayden Energy conserving measurement system under software control and method for battery powered products
US6546010B1 (en) * 1999-02-04 2003-04-08 Advanced Micro Devices, Inc. Bandwidth efficiency in cascaded scheme
US20050036763A1 (en) * 1999-05-06 2005-02-17 Motoki Kato Method of processing multiplexed program data using entry points and time units
US20030072316A1 (en) * 1999-05-20 2003-04-17 Autumn Jane Niu Apparatus and method in a network switch port for transferring data between buffer memory and transmit and receive state machines according to a prescribed interface protocol
US6504846B1 (en) * 1999-05-21 2003-01-07 Advanced Micro Devices, Inc. Method and apparatus for reclaiming buffers using a single buffer bit
US6987768B1 (en) * 1999-06-02 2006-01-17 Fujitsu Limited Packet transferring apparatus
US20030056032A1 (en) * 1999-06-09 2003-03-20 Charles Micalizzi Method and apparatus for automatically transferring i/o blocks between a host system and a host adapter
US6697359B1 (en) * 1999-07-02 2004-02-24 Ancor Communications, Inc. High performance switch fabric element and switch systems
US20060013248A1 (en) * 1999-08-13 2006-01-19 Hamayun Mujeeb Switching device interfaces
US6343324B1 (en) * 1999-09-13 2002-01-29 International Business Machines Corporation Method and system for controlling access share storage devices in a network environment by configuring host-to-volume mapping data structures in the controller memory for granting and denying access to the devices
US7010607B1 (en) * 1999-09-15 2006-03-07 Hewlett-Packard Development Company, L.P. Method for training a communication link between ports to correct for errors
US6721799B1 (en) * 1999-09-15 2004-04-13 Koninklijke Philips Electronics N.V. Method for automatically transmitting an acknowledge frame in canopen and other can application layer protocols and a can microcontroller that implements this method
US6859435B1 (en) * 1999-10-13 2005-02-22 Lucent Technologies Inc. Prevention of deadlocks and livelocks in lossless, backpressured packet networks
US6684209B1 (en) * 2000-01-14 2004-01-27 Hitachi, Ltd. Security method and system for storage subsystem
US7024410B2 (en) * 2000-01-14 2006-04-04 Hitachi, Ltd. Security method and system for storage subsystem
US20030046396A1 (en) * 2000-03-03 2003-03-06 Richter Roger K. Systems and methods for managing resource utilization in information management environments
US6718497B1 (en) * 2000-04-21 2004-04-06 Apple Computer, Inc. Method and apparatus for generating jitter test patterns on a high performance serial bus
US6865157B1 (en) * 2000-05-26 2005-03-08 Emc Corporation Fault tolerant shared system resource with communications passthrough providing high availability communications
US6725388B1 (en) * 2000-06-13 2004-04-20 Intel Corporation Method and system for performing link synchronization between two clock domains by inserting command signals into a data stream transmitted between the two clock domains
US6697368B2 (en) * 2000-11-17 2004-02-24 Foundry Networks, Inc. High-performance network switch
US7002926B1 (en) * 2000-11-30 2006-02-21 Western Digital Ventures, Inc. Isochronous switched fabric network
US20040081394A1 (en) * 2001-01-31 2004-04-29 Giora Biran Providing control information to a management processor of a communications switch
US7190667B2 (en) * 2001-04-26 2007-03-13 Intel Corporation Link level packet flow control mechanism
US7000025B1 (en) * 2001-05-07 2006-02-14 Adaptec, Inc. Methods for congestion mitigation in infiniband
US20050047334A1 (en) * 2001-06-13 2005-03-03 Paul Harry V. Fibre channel switch
US20030002503A1 (en) * 2001-06-15 2003-01-02 Brewer Lani William Switch assisted frame aliasing for storage virtualization
US7200108B2 (en) * 2001-06-29 2007-04-03 International Business Machines Corporation Method and apparatus for recovery from faults in a loop network
US20030056000A1 (en) * 2001-07-26 2003-03-20 Nishan Systems, Inc. Transfer ready frame reordering
US20030021239A1 (en) * 2001-07-26 2003-01-30 Mullendore Rodney N. Method and apparatus for scheduling packet flow on a fibre channel arbitrated loop
US20030026267A1 (en) * 2001-07-31 2003-02-06 Oberman Stuart F. Virtual channels in a network switch
US20030026287A1 (en) * 2001-07-31 2003-02-06 Mullendore Rodney N. Method and system for managing time division multiplexing (TDM) timeslots in a network switch
US20030035433A1 (en) * 2001-08-16 2003-02-20 International Business Machines Corporation Apparatus and method for virtualizing a queue pair space to minimize time-wait impacts
US6532212B1 (en) * 2001-09-25 2003-03-11 Mcdata Corporation Trunking inter-switch links
US7185062B2 (en) * 2001-09-28 2007-02-27 Emc Corporation Switch-based storage services
US20030079019A1 (en) * 2001-09-28 2003-04-24 Lolayekar Santosh C. Enforcing quality of service in a storage network
US20030076788A1 (en) * 2001-10-19 2003-04-24 Sun Microsystems, Inc. Method, system, and program for discovering devices communicating through a switch
US7315511B2 (en) * 2001-10-24 2008-01-01 Fujitsu Limited Transmitter, SONET/SDH transmitter, and transmission system
US7188364B2 (en) * 2001-12-20 2007-03-06 Cranite Systems, Inc. Personal virtual bridged local area networks
US20050036499A1 (en) * 2001-12-26 2005-02-17 Andiamo Systems, Inc., A Delaware Corporation Fibre Channel Switch that enables end devices in different fabrics to communicate with one another while retaining their unique Fibre Channel Domain_IDs
US6988149B2 (en) * 2002-02-26 2006-01-17 Lsi Logic Corporation Integrated target masking
US7171050B2 (en) * 2002-03-19 2007-01-30 Samsung Electronics Co., Ltd. System on chip processor for multimedia devices
US7194538B1 (en) * 2002-06-04 2007-03-20 Veritas Operating Corporation Storage area network (SAN) management system for discovering SAN components using a SAN management server
US20040081186A1 (en) * 2002-07-02 2004-04-29 Vixel Corporation Methods and apparatus for switching Fibre Channel Arbitrated Loop devices
US20040013088A1 (en) * 2002-07-19 2004-01-22 International Business Machines Corporation Long distance repeater for digital information
US20040015638A1 (en) * 2002-07-22 2004-01-22 Forbes Bryn B. Scalable modular server system
US20050023656A1 (en) * 2002-08-08 2005-02-03 Leedy Glenn J. Vertical system integration
US20040057389A1 (en) * 2002-09-16 2004-03-25 Finisar Corporation Network analysis scalable analysis tool for multiple protocols
US20040054776A1 (en) * 2002-09-16 2004-03-18 Finisar Corporation Network expert analysis process
US6983342B2 (en) * 2002-10-08 2006-01-03 Lsi Logic Corporation High speed OC-768 configurable link layer chip
US20040081196A1 (en) * 2002-10-29 2004-04-29 Elliott Stephen J. Protocol independent hub
US7352740B2 (en) * 2003-04-29 2008-04-01 Brocade Communciations Systems, Inc. Extent-based fibre channel zoning in hardware
US20050036485A1 (en) * 2003-08-11 2005-02-17 Eilers Fritz R. Network having switchover with no data loss
US20050058148A1 (en) * 2003-09-15 2005-03-17 Broadcom Corporation Elasticity buffer for streaming data
US20060034302A1 (en) * 2004-07-19 2006-02-16 David Peterson Inter-fabric routing
US20060034192A1 (en) * 2004-08-12 2006-02-16 Broadcom Corporation Apparatus and system for coupling and decoupling initiator devices to a network using an arbitrated loop without disrupting the network

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20130010638A1 (en) * 2011-07-06 2013-01-10 Cisco Technology, Inc. Merging a Stand-Alone Switch to a Fibre Channel Network
US8811227B2 (en) * 2011-07-06 2014-08-19 Cisco Technology, Inc. Merging a stand-alone switch to a fibre channel network
US20130208625A1 (en) * 2012-02-15 2013-08-15 Cisco Technology, Inc. Persistent Principal Switch for Fibre Channel Fabric
US8830871B2 (en) * 2012-02-15 2014-09-09 Cisco Technology, Inc. Persistent principal switch for fibre channel fabric

Also Published As

Publication number Publication date
US7230929B2 (en) 2007-06-12
US20040013092A1 (en) 2004-01-22

Similar Documents

Publication Publication Date Title
US7230929B2 (en) Method and system for dynamically assigning domain identification in a multi-module fibre channel switch
US7154886B2 (en) Method and system for primary blade selection in a multi-module fiber channel switch
US7397768B1 (en) Zone management in a multi-module fibre channel switch
US7684401B2 (en) Method and system for using extended fabric features with fibre channel switch elements
US7542676B2 (en) Fibre channel transparent switch for mixed switch fabrics
US8018936B2 (en) Inter-fabric routing
US8532119B2 (en) Interfabric routing header for use with a backbone fabric
US8446913B2 (en) Multifabric zone device import and export
US8125992B2 (en) System and method for providing proxy and translation domains in a fibre channel router
US8213447B2 (en) Apparatus and system for coupling and decoupling initiator devices to a network using an arbitrated loop without disrupting the network
US5954796A (en) System and method for automatically and dynamically changing an address associated with a device disposed in a fire channel environment
US7646767B2 (en) Method and system for programmable data dependant network routing
US5944798A (en) System and method for arbitrated loop recovery
US8351442B1 (en) Method and system for network communication
US8059664B2 (en) Multifabric global header
US20100220734A1 (en) Multifabric Communication Using a Backbone Fabric
US7334046B1 (en) System and method for optimizing frame routing in a network
US7564789B2 (en) Method and system for reducing deadlock in fibre channel fabrics using virtual lanes
US7660302B2 (en) Method and system for inter-fabric routing
US7362717B1 (en) Method and system for using distributed name servers in multi-module fibre channel switches

Legal Events

Date Code Title Description
STCB Information on status: application discontinuation

Free format text: ABANDONED -- FAILURE TO RESPOND TO AN OFFICE ACTION