US20040162921A1 - SCSI enclosure services - Google Patents

SCSI enclosure services Download PDF

Info

Publication number
US20040162921A1
US20040162921A1 US10/778,452 US77845204A US2004162921A1 US 20040162921 A1 US20040162921 A1 US 20040162921A1 US 77845204 A US77845204 A US 77845204A US 2004162921 A1 US2004162921 A1 US 2004162921A1
Authority
US
United States
Prior art keywords
fabric
logical
enclosure services
scsi enclosure
unit
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
US10/778,452
Inventor
Kha Sin Teow
Paul Ramsay
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 US10/778,452 priority Critical patent/US20040162921A1/en
Publication of US20040162921A1 publication Critical patent/US20040162921A1/en
Assigned to BANK OF AMERICA, N.A. AS ADMINISTRATIVE AGENT reassignment BANK OF AMERICA, N.A. AS ADMINISTRATIVE AGENT SECURITY AGREEMENT Assignors: BROCADE COMMUNICATIONS SYSTEMS, INC., FOUNDRY NETWORKS, INC., INRANGE TECHNOLOGIES CORPORATION, MCDATA CORPORATION
Assigned to WELLS FARGO BANK, NATIONAL ASSOCIATION, AS COLLATERAL AGENT reassignment WELLS FARGO BANK, NATIONAL ASSOCIATION, AS COLLATERAL AGENT SECURITY AGREEMENT Assignors: BROCADE COMMUNICATIONS SYSTEMS, INC., FOUNDRY NETWORKS, LLC, INRANGE TECHNOLOGIES CORPORATION, MCDATA CORPORATION, MCDATA SERVICES CORPORATION
Assigned to INRANGE TECHNOLOGIES CORPORATION, BROCADE COMMUNICATIONS SYSTEMS, INC., FOUNDRY NETWORKS, LLC reassignment INRANGE TECHNOLOGIES CORPORATION RELEASE BY SECURED PARTY (SEE DOCUMENT FOR DETAILS). Assignors: BANK OF AMERICA, N.A., AS ADMINISTRATIVE AGENT
Assigned to BROCADE COMMUNICATIONS SYSTEMS, INC., FOUNDRY NETWORKS, LLC reassignment BROCADE COMMUNICATIONS SYSTEMS, INC. RELEASE BY SECURED PARTY (SEE DOCUMENT FOR DETAILS). Assignors: WELLS FARGO BANK, NATIONAL ASSOCIATION, AS COLLATERAL AGENT
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
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0602Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
    • G06F3/0604Improving or facilitating administration, e.g. storage management
    • G06F3/0605Improving or facilitating administration, e.g. storage management by facilitating the interaction with a user or administrator
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0629Configuration or reconfiguration of storage systems
    • G06F3/0635Configuration or reconfiguration of storage systems by changing the path, e.g. traffic rerouting, path reconfiguration
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0655Vertical data movement, i.e. input-output transfer; data movement between one or more hosts and one or more storage devices
    • G06F3/0658Controller construction arrangements
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/08Configuration management of networks or network elements
    • H04L41/0803Configuration setting
    • H04L41/0806Configuration setting for initial configuration or provisioning, e.g. plug-and-play
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/12Discovery or management of network topologies
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/40Network security protocols

Definitions

  • the present invention relates generally to the field of computer networks, and more particularly, to the management of storage networks.
  • NAS Network Attached Storage
  • NFS Network File System
  • FIG. 1 such a system 100 includes a host device 105 , a file server 110 , a Small Computer Systems Interface (“SCSI”) bus 116 and a plurality of storage devices 122 , 124 , 126 and 130 .
  • Device 130 further includes a logical controller unit 131 and logical units 132 and 134 .
  • a logical unit is a target-resident entity that implements a device model and executes SCSI commands originated by an initiator.
  • An initiator is a device that initiates communication with, and transmits commands to other devices.
  • Host device 105 and file server 110 can be conventional personal computers from, for instance, IBM Corporation of Armonk, N.Y., or high-end computer workstations from, for instance, Sun Microsystems, Inc. of Palo Alto, Calif.
  • Storage devices 122 , 124 , 126 can include, for instance, IBM's Ultrastar 18LZX.
  • Device 130 can be a Redundant Array of Inexpensive Disks (“RAID”) system, such as a GigaRAID/AA from nStor Corporation of San Diego, Calif. with the logical units 132 and 134 representing individual hard disks, such as Barracuda 18LP-18.2GB-ST318275LW/LC of Seagate of Scotts Valley, Calif.
  • RAID Redundant Array of Inexpensive Disks
  • File server 110 is coupled via SCSI bus 116 to storage devices 122 , 124 , 126 and 130 .
  • the SCSI standard was adopted as the open I/O interface standard for storage-to-server connections in the 1980s.
  • host device 105 attempts to access any of these storage devices 122 , 124 , 126 , or 130 , host device 105 must access them via file server 110 .
  • host device 105 must establish a connection 103 with file server 110 , and then retrieve information stored within storage devices 130 , 122 , 124 , and 126 by communicating with file server 110 .
  • Such an NAS system 100 is inherently inefficient because host device 105 must access each device via file server 110 .
  • file server 110 By requiring access to storage devices 130 , 122 , 124 and 126 to be routed through file server 110 , bandwidth constraints directly related to file server 110 will exist. In addition, with such a system 100 dedicated to a specific application, the system 100 is not scalable. There also is a single point of failure in that if file server 110 is not available, the host device 105 will not be able to access any of the storage devices 122 , 124 , 126 and 130 .
  • An alternative Storage Area Network (“SAN”) architecture which attempts to solve the limitations associated with NAS systems described above, is a fabric-based SAN.
  • a fabric typically is constructed with one or more routing devices, such as switches, and each storage device (or group of storage devices, for example, in the case of a loop-based architecture) is coupled to the fabric.
  • devices coupled to the fabric are capable of communicating with every other device coupled to the fabric. This eliminates the bottleneck created in NAS, where every device coupled to a file server 110 has to be accessed via that single file server 110 .
  • the scalability limitations of the NAS system also are avoided by fabric-based SANs. In addition, since every device does not have to be accessed via a single file server, there is no single point of failure in the fabric-based SANs.
  • Fibre Channel is an American National Standards Institute (“ANSI”) high-speed, high-performance storage-to-server and server-to-server interconnect protocol.
  • ANSI American National Standards Institute
  • This application relates to “Fibre Channel Protocol for SCSI (FCP), Rev 012, May 30, 1995” and “Fibre Channel Physical and Signaling Interface-3, Rev 9.4, Nov. 5, 1997,” both published by American National Standard for Information Technology, which are each incorporated herein by reference in their entirety.
  • Fibre Channel can support large data block transfers at gigabit speeds, Fibre Channel is well suited for data transfers between storage systems and servers. Fibre Channel also supports multiple protocols such as SCSI and Internet Protocol (“IP”). Furthermore, Fibre Channel provides transmission reliability with guaranteed delivery and transmission distances of up to 10 kilometers. Fibre Channel complements and supports advancements in local and wide area network technologies, such as gigabit Ethernet and ATM, which directly cannot effectively transfer large blocks of data.
  • Fibre Channel-based SANS deliver centrally managed storage through high availability architectures, managing systems, and exploiting effective storage methodologies like RAID and mirroring.
  • the Fibre Channel Protocol for SCSI (“FCP”) relies upon the Small Computer System Interface (“SCSI”) communication scheme to communicate between devices, which are coupled to the fabric.
  • SCSI Small Computer System Interface
  • One version of SCSI on which FCP can rely is SCSI-3.
  • SCSI Small Computer System Interface
  • SCSI Small Computer System Interface
  • Fibre Channel is able to provide high-performance (e.g. gigabit per second data delivery and gigabit per second backup and recovery), a highly available storage network, and continuous access during network expansion.
  • such a system can provide continuous access during network repair.
  • the routing devices within the SAN's fabric need to be able to be managed in order to provide universal, seamless and easy access to storage resources.
  • Conventional management techniques require use of multiple protocols. For instance, in an IP network, the Simple Network Management Protocol (“SNMP”) is used to manage the network.
  • SNMP requires the Internet Protocol (“IP”), which is not commonly available in a SAN storage device. Therefore it is highly desirable to use the same FCP protocol for managing the routing devices within the fabric-based SAN as well as for communicating with the devices coupled to the fabric. This approach will eliminate the need for a multi-protocol system, as well as create more flexibility in the choice of management systems available.
  • routing devices within a fabric are managed using a native protocol that exists within a fabric-based SAN.
  • a management station can manage the fabric by treating the fabric as a logical fabric SES device.
  • a plurality of routing devices within the fabric are recharacterized as logical units, which are included within the logical fabric SES device.
  • the management station interacts with the logical fabric SES device as if the logical fabric SES device includes a smart controller and multiple logical units, each with a separate logical unit number.
  • the management station then can perform management functions, such as configuration (e.g., enable or disable a routing device port) and performance evaluation (e.g., monitor temperature sensor readings of a routing device or monitor the performance or error counters of a routing device port) on any routing device within the fabric.
  • configuration e.g., enable or disable a routing device port
  • performance evaluation e.g., monitor temperature sensor readings of a routing device or monitor the performance or error counters of a routing device port
  • FIG. 1 illustrates a high level block diagram of a conventional Network Attached Storage system.
  • FIG. 2A illustrates a high level block diagram of a fabric-based Storage Area Network system of an embodiment of the present invention.
  • FIG. 2B illustrates a flowchart of the steps performed by a first device for communicating with a second device coupled to the fabric of an embodiment of the present invention.
  • FIG. 3 illustrates a more detailed block diagram of the fabric of an embodiment of the present invention.
  • FIG. 4 illustrates a more detailed block diagram of a routing device within the fabric of an embodiment of the present invention.
  • FIG. 5A illustrates a domain identifier to logical unit number mapping table of an embodiment of the present invention.
  • FIG. 5B illustrates a flowchart of the steps performed in assigning a logical unit number to a routing device of an embodiment of the present invention.
  • FIG. 6A illustrates a logical (fabric) SCSI Enclosure Services device of an embodiment of the present invention.
  • FIG. 6B illustrates a flowchart depicting the steps performed by a management station in communicating with a routing device within the fabric, of an embodiment of the present invention.
  • FIG. 2A illustrates a Fibre Channel fabric-based SAN 200 of an embodiment of the present invention.
  • SAN 200 includes a fabric 210 and host device 205 , storage devices 222 , 224 , 226 and 230 and a loop 220 .
  • Storage device 230 further includes logical controller unit 231 and logical units 232 and 234 .
  • Loop 220 is an arbitrated loop with a shared bandwidth for storage devices 222 , 223 and 226 , which are coupled to loop 220 .
  • Host device 205 can be a conventional computer, such as a personal computer, or an IBM RS6000 or a Sun Ultra 30 Workstation.
  • Device 230 can be a RAID system, such as a Clariion 5600C from EMC of Hopkinton, Mass.
  • Device 230 includes logical units 232 and 234 , as well as a logical controller 231 .
  • Fabric 210 seamlessly couples host device 205 to device 230 , and to storage devices 222 , 224 , and 226 via loop 220 .
  • a host device such as host device 205
  • fabric 210 can communicate over fabric 210 to any other device, such as device 230 , regardless of the composition of fabric 210 . If, however, the fabric 210 , in an alternative embodiment, is divided into zones, then host device 205 only would be able to access and manage those devices that are within the same zone as host device 205 .
  • host device 205 intends upon communicating with a storage device (e.g., device 230 ), which is coupled to the fabric 210 , host device 205 would be considered an “initiator.”
  • An initiator is a device that initiates communication with, and transmits commands to other devices.
  • Storage device 230 would be considered a “target” because storage device 230 would receive instructions from an initiator such as host device 205 , and would execute those instructions.
  • FIG. 2B illustrates a flowchart of the steps for initiating FCP communication between devices that are attached to a fabric 210 of an embodiment of the present invention.
  • a device such as 205 , logs into fabric 210 by performing a Fabric Login (“FLOGI”) 250 .
  • the fabric 210 assigns a Fibre Channel well-known address to the initiator device, which in this case is host device 205 .
  • the host device 205 performs a Port Login (“PLOGI”) 252 with the name server.
  • the host device 205 communicates with the name server by transmitting the well-known address (e.g., FFFFFCh) of the name server.
  • the name server can reside within the fabric 210 and can maintain registered information for each of the devices coupled to the fabric 210 .
  • the name server can reside outside the fabric 210 .
  • Host device 205 transmits 253 a request to the name server to obtain a list of the devices coupled to the fabric 210 .
  • Host 205 receives 254 a response from the name server, which includes information regarding the addresses of the various storage devices 222 , 224 , 226 , and 230 , that are coupled to fabric 210 .
  • Host device 205 utilizes this address information to make a determination 255 regarding with which of the storage devices 222 , 224 , 226 , or 230 to communicate.
  • this target storage device e.g. 230
  • host device 205 performs a PLOGI 256 with that target storage device 230 .
  • target storage device 230 includes a logical controller unit 231 , and logical units 232 and 234 .
  • Host device 205 therefore, performs PLOGI 256 with logical controller unit 231 to establish contact, with target storage device 230 .
  • Host device 205 then performs a Process Login (“PRLI”) 258 with logical controller unit 231 to determine the capabilities of target storage device 230 , as to whether host device 205 and target storage device 230 can communicate with each other using FCP.
  • PRLI Process Login
  • host device 205 optionally transmits 260 a “Report LUNs” command to the logical controller unit 231 .
  • This command results in host device 205 receiving from logical controller unit 231 a list of all of the LUNs within storage device 230 .
  • Host device 205 utilizes this list of LUNs to determine 264 with which logical unit host device 205 will communicate.
  • host device 205 may communicate 260 with the chosen logical unit, (e.g., logical unit 232 ). If host device 205 had initially chosen 255 to communicate with a different storage device, such as storage device 222 , which unlike storage device 230 does not include logical units, then PLOGI 256 and PRLI 258 would have been performed directly with target storage device 222 , and step 268 would have been performed directly after step 258 . Steps 260 , 262 , and 264 would not have been performed at all.
  • FIG. 3 illustrates a more detailed block diagram of the fabric 210 of an embodiment of the present invention.
  • Fabric 210 includes several routing devices 302 , 304 , and 306 which are connected with each other.
  • Routing devices 302 , 304 , and 306 can be any type of networking device including switches, hubs or routers. In order to manage these routing devices, information about and the ability to manage these routing devices 302 , 304 , and 306 is needed to be able to optimally configure the fabric 210 .
  • host device 205 To manage these routing devices 302 , 304 , and 306 , an analogous method to the method described with regard to FIG. 2A can be used by host device 205 . Since host device 205 will now have the capability of managing routing devices 302 , 304 , and 306 , for the remainder of this discussion, host device 205 will be called a “management station.”
  • a system 200 in accordance with an embodiment of the present invention manages the routing devices 302 , 304 , and 306 within the fabric 210 , by using the Fibre Channel Protocol for SCSI (“FCP), which already is used in communicating with storage devices 222 , 224 , 226 and 230 .
  • FCP can be based on SCSI-3.
  • the management station 205 within this system utilizes FCP to facilitate its communication with routing devices 302 , 304 , and 306 .
  • the management station 205 is connected via a Fibre Channel link to at least one of the routing devices 302 within the fabric 210 and communicates with and manages any of the routing devices 302 , 304 , and 306 .
  • the management station 205 recognizes the fabric 210 as an FCP target with a well-known address (e.g., FFFFFAh).
  • the fabric 210 therefore, will now be treated like a SCSI logical controller with multiple logical units.
  • the routing devices 302 , 304 , and 306 are managed based upon industry-standard SCSI Enclosure Services (“SES”) commands.
  • SES SCSI Enclosure Services
  • SES is a subset of the FCP command set for storage device management purpose. “SCSI Enclosure Services (SES) Command Set, Rev 8a, Jan. 16, 1997” published by American National Standard for Information Technology is incorporated herein by reference in its entirety.
  • FIG. 4 illustrates a more detailed block diagram of routing device 302 of an embodiment of the present invention.
  • the routing device 302 includes an SES management server 400 , which is used for managing routing device 302 .
  • the SES management server 400 includes a logical unit generator 410 , a configuration server 420 , and a manager 430 .
  • the manager 410 supports SES commands.
  • the configuration server 420 obtains information regarding the topology and composition of the fabric 210 , and the logical unit generator 410 utilizes this information to assign a unique logical unit number (“LUN”) to each routing device 302 , 304 , and 306 within the fabric 210 .
  • LUN unique logical unit number
  • the manager 430 communicates with the management station 205 .
  • the management station 205 now can communicate with the fabric 210 as though the fabric 210 were a logical fabric SES device 610 , which includes multiple logical fabric SES units 602 , 604 , 606 .
  • the management station 205 can access and communicate with all of these routing devices 302 , 304 , and 306 in a manner analogous to management station 205 accessing and communicating with logical units 232 and 234 as described with regard to FIG. 2B.
  • the logical unit generator 410 is software modules.
  • these modules can be implemented in hardware.
  • these modules can be implemented as a combination of hardware and software.
  • FIG. 5A illustrates a domain identifier to LUN mapping table that can be included in the logical unit generator 410 in one embodiment of the present invention.
  • the domain identifier (“Domain-ID”) for each routing device within the fabric is obtained by configuration server 420 .
  • the logical unit generator 410 retrieves this topological information from the configuration server 420 and maps these Domain-IDs to LUNs within the LUN mapping table.
  • the logical unit generator 410 maps the Domain-ID to a unique LUN value, which is illustrated as a hexadecimal value.
  • byte one of the LUN value in hexadecimal is set using the Domain-ID of the routing device, and bytes 2 through 7 are set to zero.
  • FIG. 5B illustrates a flowchart of the steps performed by the SES management server 400 in assigning a LUN value to each routing device 302 , 304 , or 306 of an embodiment of the present invention.
  • the Domain-ID of a routing device is identified 550 .
  • a LUN value is created 552 based upon the Domain-ID. This LUN value then is assigned 554 to the corresponding routing device.
  • the routing device 302 to which the management station 205 is physically connected functions as the logical fabric SES controller unit 602 a.
  • the logical fabric SES controller unit 602 a is identified as LUN 0.
  • the logical fabric SES controller unit 602 a is ensured to be present in the fabric 210 .
  • the management station 205 will communicate directly with logical fabric SES controller unit 602 a in order to obtain information regarding the routing devices 302 , 304 and 306 coupled to the fabric 210 .
  • the routing device 302 to which the management station 205 is physically connected is also assigned a LUN based upon the same algorithm used for assigning LUNs to routing devices 304 , and 306 .
  • FIG. 6A illustrates a logical fabric SES device 610 of an embodiment of the present invention.
  • each routing device 302 , 304 , and 306 within the fabric 210 is assigned a LUN.
  • routing devices 302 , 304 and 306 are recharacterized as a logical controller 602 a and logical fabric SES units 602 b, 604 , and 606 .
  • the fabric 210 now functions like a logical fabric SES device 610 .
  • management station 205 interacts with the logical fabric SES units 602 b, 604 , and 606 , which correspond to routing devices 302 , 304 , and 306 , respectively, in a similar manner as host device 205 interacted with device 230 , logical units 232 and 234 , and the logical controller unit 231 , as discussed with regard to FIG. 2A.
  • the management station 205 now can manage the routing devices 302 , 304 , and 306 within the fabric 210 .
  • the SES management server 400 would automatically compensate accordingly by proceeding through the same steps 550 , 552 and 554 to assign a LUN to the newly added routing device.
  • FIG. 6B illustrates a flowchart depicting the steps for managing the routing devices 302 , 304 , and 306 within fabric 210 .
  • the management station 205 performs a Fabric Login (“FLOGI”) 650 in order to obtain a well-known address from the fabric 210 .
  • the management station 205 performs a Port Login (“PLOGI”) 656 with the SES management server 400 .
  • the PLOGI step includes transmitting the well-known address (e.g., FFFFFAh) corresponding to the SES management server 400 .
  • the PLOGI 656 with the SES management server 400 establishes a link between the management station 205 and the logical fabric SES device 610 .
  • the management station 205 determines 657 whether the Process Login (“PRLI”) 5 step is to be performed with the SES management server 400 . If PRLI needs to be performed, PRLI 658 is initiated to determine the capabilities of the logical fabric SES controller unit 602 a. In one embodiment of the present invention, the PRLI step is optional. If PRLI does not need to be performed, step 660 is performed directly after step 657 . In step 660 , the management station 205 would transmit a “Report LUNs” command to the logical fabric SES controller unit 602 a. If the management station 205 does not perform PRLI, the management station 205 will transmit 660 a “Report LUNs” command to the logical fabric SES controller unit 602 a. The “Report LUNs” command results in the logical fabric SES controller unit 602 a returning 662 a list of all the LUNs comprising the logical fabric SES device 610 to the management station 205 .
  • PRLI Process Login
  • the management station 205 determines 664 which routing device (e.g. 304 ) to obtain information from and manage.
  • the management station 205 transmits 666 a “Receive Diagnostic Results” command to the LUN corresponding to a routing device (e.g. 404 ) for which the management station 205 has determined information is desired.
  • the specified logical fabric SES unit 610 Upon receiving this command, the specified logical fabric SES unit 610 returns 668 diagnostic or management data to the management station 205 . Based on this diagnostic data, the management station 205 can proceed to manage the routing device 304 by issuing 670 further management commands to the corresponding logical fabric SES unit 604 . For example, the management station 205 can perform a configuration, performance, and/or enclosure function on a routing device. The management station 205 can enable or disable a port on a specific routing device, take the temperature sensor readings of a routing device, or monitor the performance or error counters of a port on a specific routing device.
  • the management station 205 can issue standard SCSI commands to routing devices 302 , 304 , and 306 .
  • the management station 205 can transmit a command to receive the “Switch Page,” which will permit the management station 205 to obtain status information about a routing device (e.g. 304 ), its operational state and firmware as well as information about the boot date and time and the last date and time the firmware was updated.
  • the “Fabric Page” command allows the management station 205 to obtain information about the fabric 210 , including what neighbors the fabric 210 has.
  • Another example is the “Sensor Table Page” command, which provides the status of all sensors in a routing device 304 .
  • any other SCSI commands can be used by the management station 205 to obtain information regarding the fabric 210 .

Abstract

A method and system for a management station managing a plurality of routing devices within a fabric. In one embodiment, this management of routing devices comprising the fabric occurs in the Storage Area Network environment. Use is made of a protocol which already exists in a Storage Area Network environment, such as the Fibre Channel Protocol for SCSI (“FCP”), for managing routing devices within a fabric. Each routing device comprising the fabric is assigned a logical unit number, which, in one embodiment, is based on the domain identifiers of each routing device. Further, the routing device to which the management station is physically is also labeled as LUN 0, and serves as the logical fabric SCSI Enclosure Services controller unit. The fabric interacts with the management station as though the fabric were a logical fabric SCSI Enclosure Services device coupled to a plurality of logical fabric SCSI Enclosure Services units. The management station is thus able to obtain information about, and manage, any of the routing devices comprising the fabric.

Description

    RELATED APPLICATIONS
  • This application is a continuation of U.S. patent application Ser. No. 09/510,541 filed Feb. 22, 2000, which application claims the benefit, under 35 USC § 119(e), of U.S. Provisional Application Serial No. 60/121,353, by Kha Sin Teow, et al, filed on Feb. 24, 1999, entitled “SCSI Enclosure Services,” which are incorporated herein by reference in their entirety.[0001]
  • TECHNICAL FIELD
  • The present invention relates generally to the field of computer networks, and more particularly, to the management of storage networks. [0002]
  • BACKGROUND OF THE INVENTION
  • As a result of continuous advances in technology, particularly in the area of computer networking, the last decade has seen an explosion in the volume of data that is being captured, processed, stored and manipulated in business environments. This data explosion has fueled an increase in demand for data storage capacity. The challenges presented by this increased demand for data storage further are amplified by the fact that it is not just the existence of data alone that provides value, but rather the manner in which the data is stored, accessed, and managed, that creates a competitive advantage. [0003]
  • Increased reliance on applications ranging from business intelligence and decision support, data warehousing and data mining of large databases, disaster tolerance and recovery, enterprise software, and imaging and graphics have all contributed to this trend. In addition, the development of Internet-based business operations and electronic-commerce specifically has intensified the demand placed on data centers. Customer interactions over the Internet have increased operational focus on the performance, scalability, management and flexibility of systems that use-business-critical data. This dependence on data for fundamental business processes by employees, customers and suppliers has greatly increased the number of input and output (“I/O”) transactions required of computer storage systems and servers. Thus, it is important that data storage be viewed as a centralized, managed resource that is available and capable of expansion without sacrificing access or performance. [0004]
  • Despite the increased attention and resources devoted to data storage requirements, the technical capabilities of data storage systems have not kept pace with increasing data management demands and with the advancements in other networking technologies. In the 1980s, the near ubiquity of personal computers (“PCs”), workstations and servers required broader connectivity, resulting in the development of local and wide area networks to support messaging between computer systems. The data used by computers and servers connected to local and wide area networks typically are located on computer storage systems and servers, which store, process and manipulate data. The adoption of high speed messaging technologies such as gigabit Ethernet and asynchronous transfer mode (“ATM”), increased local and wide area network transmission speeds by more than 1,000 times during the 1990s. However, storage-to-server data transmission speeds increased by less than ten times during this period, creating a bottleneck between the local or wide area network and business-critical storage systems and servers. [0005]
  • One conventional solution with regard to data storage and retrieval is Network Attached Storage (“NAS”), which commonly utilizes a Network File System (“NFS”). As illustrated in FIG. 1, such a [0006] system 100 includes a host device 105, a file server 110, a Small Computer Systems Interface (“SCSI”) bus 116 and a plurality of storage devices 122, 124, 126 and 130. Device 130 further includes a logical controller unit 131 and logical units 132 and 134. A logical unit is a target-resident entity that implements a device model and executes SCSI commands originated by an initiator. An initiator is a device that initiates communication with, and transmits commands to other devices.
  • [0007] Host device 105 and file server 110 can be conventional personal computers from, for instance, IBM Corporation of Armonk, N.Y., or high-end computer workstations from, for instance, Sun Microsystems, Inc. of Palo Alto, Calif. Storage devices 122, 124, 126 can include, for instance, IBM's Ultrastar 18LZX. Device 130 can be a Redundant Array of Inexpensive Disks (“RAID”) system, such as a GigaRAID/AA from nStor Corporation of San Diego, Calif. with the logical units 132 and 134 representing individual hard disks, such as Barracuda 18LP-18.2GB-ST318275LW/LC of Seagate of Scotts Valley, Calif.
  • [0008] File server 110 is coupled via SCSI bus 116 to storage devices 122, 124, 126 and 130. The SCSI standard was adopted as the open I/O interface standard for storage-to-server connections in the 1980s. When host device 105 attempts to access any of these storage devices 122, 124, 126, or 130, host device 105 must access them via file server 110. In particular, host device 105 must establish a connection 103 with file server 110, and then retrieve information stored within storage devices 130, 122, 124, and 126 by communicating with file server 110. Such an NAS system 100, however, is inherently inefficient because host device 105 must access each device via file server 110. By requiring access to storage devices 130, 122, 124 and 126 to be routed through file server 110, bandwidth constraints directly related to file server 110 will exist. In addition, with such a system 100 dedicated to a specific application, the system 100 is not scalable. There also is a single point of failure in that if file server 110 is not available, the host device 105 will not be able to access any of the storage devices 122, 124, 126 and 130.
  • An alternative Storage Area Network (“SAN”) architecture, which attempts to solve the limitations associated with NAS systems described above, is a fabric-based SAN. A fabric typically is constructed with one or more routing devices, such as switches, and each storage device (or group of storage devices, for example, in the case of a loop-based architecture) is coupled to the fabric. Generally, devices coupled to the fabric are capable of communicating with every other device coupled to the fabric. This eliminates the bottleneck created in NAS, where every device coupled to a [0009] file server 110 has to be accessed via that single file server 110. Further, the scalability limitations of the NAS system also are avoided by fabric-based SANs. In addition, since every device does not have to be accessed via a single file server, there is no single point of failure in the fabric-based SANs.
  • One implementation of a fabric-based SAN is Fibre Channel, which is an American National Standards Institute (“ANSI”) high-speed, high-performance storage-to-server and server-to-server interconnect protocol. This application relates to “Fibre Channel Protocol for SCSI (FCP), Rev 012, May 30, 1995” and “Fibre Channel Physical and Signaling Interface-3, Rev 9.4, Nov. 5, 1997,” both published by American National Standard for Information Technology, which are each incorporated herein by reference in their entirety. [0010]
  • Since Fibre Channel can support large data block transfers at gigabit speeds, Fibre Channel is well suited for data transfers between storage systems and servers. Fibre Channel also supports multiple protocols such as SCSI and Internet Protocol (“IP”). Furthermore, Fibre Channel provides transmission reliability with guaranteed delivery and transmission distances of up to [0011] 10 kilometers. Fibre Channel complements and supports advancements in local and wide area network technologies, such as gigabit Ethernet and ATM, which directly cannot effectively transfer large blocks of data.
  • Fibre Channel-based SANS deliver centrally managed storage through high availability architectures, managing systems, and exploiting effective storage methodologies like RAID and mirroring. The Fibre Channel Protocol for SCSI (“FCP”) relies upon the Small Computer System Interface (“SCSI”) communication scheme to communicate between devices, which are coupled to the fabric. One version of SCSI on which FCP can rely is SCSI-3. By incorporating SCSI, a protocol already native to many devices, into the fabric-based scheme, Fibre Channel is able to provide high-performance (e.g. gigabit per second data delivery and gigabit per second backup and recovery), a highly available storage network, and continuous access during network expansion. In addition, such a system can provide continuous access during network repair. [0012]
  • In order to optimize the use of a Fibre Channel-based SAN, the routing devices within the SAN's fabric need to be able to be managed in order to provide universal, seamless and easy access to storage resources. Conventional management techniques require use of multiple protocols. For instance, in an IP network, the Simple Network Management Protocol (“SNMP”) is used to manage the network. However, SNMP requires the Internet Protocol (“IP”), which is not commonly available in a SAN storage device. Therefore it is highly desirable to use the same FCP protocol for managing the routing devices within the fabric-based SAN as well as for communicating with the devices coupled to the fabric. This approach will eliminate the need for a multi-protocol system, as well as create more flexibility in the choice of management systems available. [0013]
  • Accordingly, a need exists for managing routing devices within a fabric, based on a protocol that already exists within a fabric-based SAN. [0014]
  • SUMMARY OF THE INVENTION
  • In accordance with the system and method of the present invention, routing devices within a fabric are managed using a native protocol that exists within a fabric-based SAN. Through such a management scheme, a management station can manage the fabric by treating the fabric as a logical fabric SES device. In one embodiment of the present invention, a plurality of routing devices within the fabric are recharacterized as logical units, which are included within the logical fabric SES device. In such a management scheme, the management station interacts with the logical fabric SES device as if the logical fabric SES device includes a smart controller and multiple logical units, each with a separate logical unit number. The management station then can perform management functions, such as configuration (e.g., enable or disable a routing device port) and performance evaluation (e.g., monitor temperature sensor readings of a routing device or monitor the performance or error counters of a routing device port) on any routing device within the fabric.[0015]
  • BRIEF DESCRIPTION OF THE DRAWINGS
  • FIG. 1 illustrates a high level block diagram of a conventional Network Attached Storage system. [0016]
  • FIG. 2A illustrates a high level block diagram of a fabric-based Storage Area Network system of an embodiment of the present invention. [0017]
  • FIG. 2B illustrates a flowchart of the steps performed by a first device for communicating with a second device coupled to the fabric of an embodiment of the present invention. [0018]
  • FIG. 3 illustrates a more detailed block diagram of the fabric of an embodiment of the present invention. [0019]
  • FIG. 4 illustrates a more detailed block diagram of a routing device within the fabric of an embodiment of the present invention. [0020]
  • FIG. 5A illustrates a domain identifier to logical unit number mapping table of an embodiment of the present invention. [0021]
  • FIG. 5B illustrates a flowchart of the steps performed in assigning a logical unit number to a routing device of an embodiment of the present invention. [0022]
  • FIG. 6A illustrates a logical (fabric) SCSI Enclosure Services device of an embodiment of the present invention. [0023]
  • FIG. 6B illustrates a flowchart depicting the steps performed by a management station in communicating with a routing device within the fabric, of an embodiment of the present invention.[0024]
  • DETAILED DESCRIPTION OF EMBODIMENTS OF THE PRESENT INVENTION
  • Embodiments of the present invention are now described with reference to figures where like reference numbers indicate identical or functionally similar elements and the left most digit(s) of each reference number corresponds to the figure in which the reference number is first used. [0025]
  • The following discussion will focus upon Fibre Channel-based SANS, and how routing devices within the fabric in a Fibre Channel based SAN are recharacterized as Logical Units. However, one skilled in the art will recognize that the present invention may be applied to any network topology or protocol, which utilizes a fabric. [0026]
  • FIG. 2A illustrates a Fibre Channel fabric-based [0027] SAN 200 of an embodiment of the present invention. SAN 200 includes a fabric 210 and host device 205, storage devices 222, 224, 226 and 230 and a loop 220. Storage device 230 further includes logical controller unit 231 and logical units 232 and 234. Loop 220 is an arbitrated loop with a shared bandwidth for storage devices 222, 223 and 226, which are coupled to loop 220. Host device 205 can be a conventional computer, such as a personal computer, or an IBM RS6000 or a Sun Ultra 30 Workstation. Device 230 can be a RAID system, such as a Clariion 5600C from EMC of Hopkinton, Mass. Device 230 includes logical units 232 and 234, as well as a logical controller 231.
  • [0028] Fabric 210 seamlessly couples host device 205 to device 230, and to storage devices 222, 224, and 226 via loop 220. Thus, a host device, such as host device 205, which is coupled to fabric 210 can communicate over fabric 210 to any other device, such as device 230, regardless of the composition of fabric 210. If, however, the fabric 210, in an alternative embodiment, is divided into zones, then host device 205 only would be able to access and manage those devices that are within the same zone as host device 205.
  • If [0029] host device 205 intends upon communicating with a storage device (e.g., device 230), which is coupled to the fabric 210, host device 205 would be considered an “initiator.” An initiator is a device that initiates communication with, and transmits commands to other devices. Storage device 230 would be considered a “target” because storage device 230 would receive instructions from an initiator such as host device 205, and would execute those instructions.
  • FIG. 2B illustrates a flowchart of the steps for initiating FCP communication between devices that are attached to a [0030] fabric 210 of an embodiment of the present invention. A device, such as 205, logs into fabric 210 by performing a Fabric Login (“FLOGI”) 250. During this step, the fabric 210 assigns a Fibre Channel well-known address to the initiator device, which in this case is host device 205. Next, the host device 205 performs a Port Login (“PLOGI”) 252 with the name server. The host device 205 communicates with the name server by transmitting the well-known address (e.g., FFFFFCh) of the name server. In one embodiment, the name server can reside within the fabric 210 and can maintain registered information for each of the devices coupled to the fabric 210. One skilled in the art will recognize that in an alternative embodiment, the name server can reside outside the fabric 210.
  • [0031] Host device 205 transmits 253 a request to the name server to obtain a list of the devices coupled to the fabric 210. Host 205 receives 254 a response from the name server, which includes information regarding the addresses of the various storage devices 222, 224, 226, and 230, that are coupled to fabric 210. Host device 205 utilizes this address information to make a determination 255 regarding with which of the storage devices 222, 224, 226, or 230 to communicate. Once this target storage device, e.g. 230, has been chosen 255, host device 205 performs a PLOGI 256 with that target storage device 230. As previously discussed, target storage device 230 includes a logical controller unit 231, and logical units 232 and 234. Host device 205, therefore, performs PLOGI 256 with logical controller unit 231 to establish contact, with target storage device 230. Host device 205 then performs a Process Login (“PRLI”) 258 with logical controller unit 231 to determine the capabilities of target storage device 230, as to whether host device 205 and target storage device 230 can communicate with each other using FCP. Upon establishing that host device 205 and target storage device 230 can communicate with each other, host device 205 optionally transmits 260 a “Report LUNs” command to the logical controller unit 231. This command results in host device 205 receiving from logical controller unit 231 a list of all of the LUNs within storage device 230. Host device 205 utilizes this list of LUNs to determine 264 with which logical unit host device 205 will communicate. Upon selecting a LUN, host device 205 may communicate 260 with the chosen logical unit, (e.g., logical unit 232). If host device 205 had initially chosen 255 to communicate with a different storage device, such as storage device 222, which unlike storage device 230 does not include logical units, then PLOGI 256 and PRLI 258 would have been performed directly with target storage device 222, and step 268 would have been performed directly after step 258. Steps 260, 262, and 264 would not have been performed at all.
  • FIG. 3 illustrates a more detailed block diagram of the [0032] fabric 210 of an embodiment of the present invention. Fabric 210 includes several routing devices 302, 304, and 306 which are connected with each other. Routing devices 302, 304, and 306 can be any type of networking device including switches, hubs or routers. In order to manage these routing devices, information about and the ability to manage these routing devices 302, 304, and 306 is needed to be able to optimally configure the fabric 210.
  • To manage these [0033] routing devices 302, 304, and 306, an analogous method to the method described with regard to FIG. 2A can be used by host device 205. Since host device 205 will now have the capability of managing routing devices 302, 304, and 306, for the remainder of this discussion, host device 205 will be called a “management station.”
  • A [0034] system 200 in accordance with an embodiment of the present invention manages the routing devices 302, 304, and 306 within the fabric 210, by using the Fibre Channel Protocol for SCSI (“FCP), which already is used in communicating with storage devices 222, 224, 226 and 230. In one embodiment, FCP can be based on SCSI-3. The management station 205 within this system utilizes FCP to facilitate its communication with routing devices 302, 304, and 306. In one embodiment, the management station 205 is connected via a Fibre Channel link to at least one of the routing devices 302 within the fabric 210 and communicates with and manages any of the routing devices 302, 304, and 306. In such an embodiment, the management station 205 recognizes the fabric 210 as an FCP target with a well-known address (e.g., FFFFFAh). The fabric 210, therefore, will now be treated like a SCSI logical controller with multiple logical units. In one embodiment of the present invention, the routing devices 302, 304, and 306 are managed based upon industry-standard SCSI Enclosure Services (“SES”) commands. One skilled in the art will understand that SES is a subset of the FCP command set for storage device management purpose. “SCSI Enclosure Services (SES) Command Set, Rev 8a, Jan. 16, 1997” published by American National Standard for Information Technology is incorporated herein by reference in its entirety.
  • FIG. 4 illustrates a more detailed block diagram of [0035] routing device 302 of an embodiment of the present invention. The routing device 302 includes an SES management server 400, which is used for managing routing device 302. The SES management server 400 includes a logical unit generator 410, a configuration server 420, and a manager 430. In one embodiment, the manager 410 supports SES commands. The configuration server 420 obtains information regarding the topology and composition of the fabric 210, and the logical unit generator 410 utilizes this information to assign a unique logical unit number (“LUN”) to each routing device 302, 304, and 306 within the fabric 210. Subsequent to this assignment of LUNs to each routing device 302, 304, 306, the manager 430 communicates with the management station 205. The management station 205 now can communicate with the fabric 210 as though the fabric 210 were a logical fabric SES device 610, which includes multiple logical fabric SES units 602, 604, 606. Within this scheme, the management station 205 can access and communicate with all of these routing devices 302, 304, and 306 in a manner analogous to management station 205 accessing and communicating with logical units 232 and 234 as described with regard to FIG. 2B. One skilled in the art will recognize that in one embodiment, the logical unit generator 410, the configuration server 420, and the manager 430, are software modules. In an alternative embodiment, these modules can be implemented in hardware. In still another alternative embodiment, these modules can be implemented as a combination of hardware and software.
  • FIG. 5A illustrates a domain identifier to LUN mapping table that can be included in the [0036] logical unit generator 410 in one embodiment of the present invention. The domain identifier (“Domain-ID”) for each routing device within the fabric is obtained by configuration server 420. The logical unit generator 410 retrieves this topological information from the configuration server 420 and maps these Domain-IDs to LUNs within the LUN mapping table. In particular, the logical unit generator 410 maps the Domain-ID to a unique LUN value, which is illustrated as a hexadecimal value. In one embodiment, for all logical units except LUN 0 (e.g., 00000000 00000000), byte one of the LUN value in hexadecimal is set using the Domain-ID of the routing device, and bytes 2 through 7 are set to zero.
  • FIG. 5B illustrates a flowchart of the steps performed by the [0037] SES management server 400 in assigning a LUN value to each routing device 302, 304, or 306 of an embodiment of the present invention. The Domain-ID of a routing device is identified 550. A LUN value is created 552 based upon the Domain-ID. This LUN value then is assigned 554 to the corresponding routing device.
  • Regardless of the specific manner in which the LUNs are assigned to the [0038] routing devices 302, 304, and 306, the routing device 302 to which the management station 205 is physically connected, functions as the logical fabric SES controller unit 602 a. In one embodiment, the logical fabric SES controller unit 602 a is identified as LUN 0. By identifying the routing device 302 in the fabric 210 to which the management station 205 is physically connected as a logical fabric. SES controller unit 602 a, the logical fabric SES controller unit 602 a is ensured to be present in the fabric 210. Thus, the management station 205 will communicate directly with logical fabric SES controller unit 602 a in order to obtain information regarding the routing devices 302, 304 and 306 coupled to the fabric 210.
  • The [0039] routing device 302 to which the management station 205 is physically connected, is also assigned a LUN based upon the same algorithm used for assigning LUNs to routing devices 304, and 306. Hence, there are two logical fabric SES units corresponding to the routing device 302, which is physically connected to management station 205: a logical fabric SES controller unit 602 a which is identified as LUN 0, and a logical fabric SES unit 602 b, which is assigned a LUN in a similar manner as the other routing devices 304, and 306.
  • FIG. 6A illustrates a logical [0040] fabric SES device 610 of an embodiment of the present invention. As described above, each routing device 302, 304, and 306 within the fabric 210 is assigned a LUN. By assigning a LUN to each routing device 302, 304, and 306, routing devices 302, 304 and 306 are recharacterized as a logical controller 602 a and logical fabric SES units 602 b, 604, and 606. Hence, the fabric 210 now functions like a logical fabric SES device 610. Thus, management station 205 interacts with the logical fabric SES units 602 b, 604, and 606, which correspond to routing devices 302, 304, and 306, respectively, in a similar manner as host device 205 interacted with device 230, logical units 232 and 234, and the logical controller unit 231, as discussed with regard to FIG. 2A. Through this reconfiguration of the fabric 210, the management station 205 now can manage the routing devices 302, 304, and 306 within the fabric 210. In addition, if more routing devices were added to the fabric 210, the SES management server 400 would automatically compensate accordingly by proceeding through the same steps 550, 552 and 554 to assign a LUN to the newly added routing device.
  • FIG. 6B illustrates a flowchart depicting the steps for managing the [0041] routing devices 302, 304, and 306 within fabric 210. The management station 205 performs a Fabric Login (“FLOGI”) 650 in order to obtain a well-known address from the fabric 210. The management station 205 performs a Port Login (“PLOGI”) 656 with the SES management server 400. The PLOGI step includes transmitting the well-known address (e.g., FFFFFAh) corresponding to the SES management server 400. The PLOGI 656 with the SES management server 400 establishes a link between the management station 205 and the logical fabric SES device 610.
  • The [0042] management station 205 then determines 657 whether the Process Login (“PRLI”) 5 step is to be performed with the SES management server 400. If PRLI needs to be performed, PRLI 658 is initiated to determine the capabilities of the logical fabric SES controller unit 602 a. In one embodiment of the present invention, the PRLI step is optional. If PRLI does not need to be performed, step 660 is performed directly after step 657. In step 660, the management station 205 would transmit a “Report LUNs” command to the logical fabric SES controller unit 602 a. If the management station 205 does not perform PRLI, the management station 205 will transmit 660 a “Report LUNs” command to the logical fabric SES controller unit 602 a. The “Report LUNs” command results in the logical fabric SES controller unit 602 a returning 662 a list of all the LUNs comprising the logical fabric SES device 610 to the management station 205.
  • The [0043] management station 205 determines 664 which routing device (e.g. 304) to obtain information from and manage. The management station 205 transmits 666 a “Receive Diagnostic Results” command to the LUN corresponding to a routing device (e.g. 404) for which the management station 205 has determined information is desired.
  • Upon receiving this command, the specified logical [0044] fabric SES unit 610 returns 668 diagnostic or management data to the management station 205. Based on this diagnostic data, the management station 205 can proceed to manage the routing device 304 by issuing 670 further management commands to the corresponding logical fabric SES unit 604. For example, the management station 205 can perform a configuration, performance, and/or enclosure function on a routing device. The management station 205 can enable or disable a port on a specific routing device, take the temperature sensor readings of a routing device, or monitor the performance or error counters of a port on a specific routing device.
  • More specifically, the [0045] management station 205 can issue standard SCSI commands to routing devices 302, 304, and 306. For instance, the management station 205 can transmit a command to receive the “Switch Page,” which will permit the management station 205 to obtain status information about a routing device (e.g. 304), its operational state and firmware as well as information about the boot date and time and the last date and time the firmware was updated. Similarly, the “Fabric Page” command allows the management station 205 to obtain information about the fabric 210, including what neighbors the fabric 210 has. Another example is the “Sensor Table Page” command, which provides the status of all sensors in a routing device 304. One skilled in the art will recognize that any other SCSI commands can be used by the management station 205 to obtain information regarding the fabric 210.
  • From the above description, it will be apparent to one skilled in the art that the present invention disclosed herein provides a novel and advantageous method and system for managing routing devices coupled within a fabric. The foregoing discussion discloses and describes merely exemplary embodiments of the present invention. As will be understood by those familiar with the art, the present invention may be embodied in other specific forms without departing from the spirit or essential characteristics thereof. Accordingly, the disclosure of the present invention is intended to be illustrative, but not limiting, of the scope of the invention, which is set forth in the following claims. [0046]

Claims (27)

1. A logical fabric SCSI Enclosure Services device comprising:
a logical fabric SCSI Enclosure Services controller unit; and
a first logical fabric SCSI Enclosure Services unit coupled to the logical fabric SCSI Enclosure Services controller unit.
2. The logical fabric SCSI Enclosure Services device of claim 1, further comprising a second logical fabric SCSI Enclosure Services unit.
3. The logical fabric SCSI Enclosure Services device of claim 1, wherein the first logical fabric SCSI Enclosure Services unit corresponds to a routing device.
4. The logical fabric SCSI Enclosure Services device of claim 3, wherein the routing device is a switch,
5. The logical fabric SCSI Enclosure Services device of claim 1, wherein the first logical fabric SCSI Enclosure Services unit includes a logical unit number.
6. The logical fabric SCSI Enclosure Services device of claim 5, wherein the first logical fabric SCSI Enclosure Services unit corresponds to a domain identifier, that is used to assign a logical unit number.
7. The system of claim 1, wherein the fabric is a Fibre Channel fabric.
8. A system for managing routing devices within a fabric, the system comprising:
a logical fabric SCSI Enclosure Services device; and
a management station coupled to the logical fabric SCSI Enclosure Services device.
9. The system of claim 8, wherein the logical fabric SCSI Enclosure Services device comprises:
a logical fabric SCSI Enclosure Services controller unit; and
a logical fabric SCSI Enclosure Services unit coupled to the logical fabric SCSI Enclosure Services controller unit.
10. The system of claim 9, wherein the logical fabric SCSI Enclosure Services controller unit corresponds to a routing device physically connected to the management station.
11. The system of claim 9, wherein the logical fabric SCSI Enclosure Services unit is a Fibre Channel Protocol for SCSI (FCP) unit.
12. The system of claim 9, wherein the fabric is a Fibre Channel fabric.
13. A SCSI Enclosure Services management server comprising:
a configuration server; and
a logical unit generator adapted to receive information from the configuration server and to recharacterize a routing device as a logical fabric SCSI Enclosure Services unit.
14. The SCSI Enclosure Services management server of claim 13 further comprising:
a manager adapted to manage the routing device recharacterized as a logical fabric SCSI Enclosure Services unit.
15. A method for managing a plurality of routing devices within a fabric, the method comprising the steps of:
assigning each of the plurality of routing devices a logical unit number.
16. The method of claim 15, wherein the assigning step comprises assigning each of the plurality of routing devices a logical unit number based upon a corresponding domain identifier.
17. The method of claim 15, further comprising the step of:
assigning a routing device a logical unit number of zero if the routing device is physically connected to a management station.
18. A method for assigning logical unit numbers to a network of interconnected routing devices, the method comprising:
specifying a unique identification for one of the plurality of routing devices;
creating a logical unit number for the routing device based upon the unique identification; and
assigning the logical unit number to the routing device.
19. The method of claim 18, wherein the unique identification for a routing device is a domain identifier.
20. An electronically readable medium storing a program for permitting a computer to perform a method for managing a plurality of routing devices within a fabric, the method comprising:
assigning each of the plurality of routing devices a logical unit number.
21. An electronically readable medium storing a program for permitting a computer to perform a method for assigning logical unit numbers to a plurality of routing devices, the method comprising:
specifying a unique identifier for one of the plurality of routing devices;
creating a logical unit number for the routing device based upon the unique identifier; and
assigning the created logical unit number to the routing device.
22. The electronically readable medium of claim 21, wherein the unique identifier for one of the plurality of routing devices is a domain identifier.
23. A network routing device for use in a fabric, the routing device comprising:
a logical fabric SCSI Enclosure Services controller unit; and
a logical fabric SCSI Enclosure Services unit coupled to said logical fabric SCSI Enclosure Services controller unit.
24. The routing device of claim 23, wherein the routing device is a switch.
25. The routing device of claim 23, wherein said logical fabric SCSI Enclosure Services controller unit includes a logical unit number and said logical fabric SCSI Enclosure Services unit includes a logical unit number different from that of said logical fabric SCSI Enclosure Services controller unit.
26. The routing device of claim 25, wherein said logical fabric SCSI Enclosure Services unit logical unit number corresponds to a domain identifier of the routing device.
27. The routing device of claim 23, further comprising:
a SCSI Enclosure Services management server.
US10/778,452 1999-02-24 2004-02-13 SCSI enclosure services Abandoned US20040162921A1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
US10/778,452 US20040162921A1 (en) 1999-02-24 2004-02-13 SCSI enclosure services

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US12135399P 1999-02-24 1999-02-24
US09/510,541 US6785742B1 (en) 1999-02-24 2000-02-22 SCSI enclosure services
US10/778,452 US20040162921A1 (en) 1999-02-24 2004-02-13 SCSI enclosure services

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
US09/510,541 Continuation US6785742B1 (en) 1999-02-24 2000-02-22 SCSI enclosure services

Publications (1)

Publication Number Publication Date
US20040162921A1 true US20040162921A1 (en) 2004-08-19

Family

ID=32852916

Family Applications (2)

Application Number Title Priority Date Filing Date
US09/510,541 Expired - Fee Related US6785742B1 (en) 1999-02-24 2000-02-22 SCSI enclosure services
US10/778,452 Abandoned US20040162921A1 (en) 1999-02-24 2004-02-13 SCSI enclosure services

Family Applications Before (1)

Application Number Title Priority Date Filing Date
US09/510,541 Expired - Fee Related US6785742B1 (en) 1999-02-24 2000-02-22 SCSI enclosure services

Country Status (1)

Country Link
US (2) US6785742B1 (en)

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20030131114A1 (en) * 2001-10-12 2003-07-10 Scheidt Edward M. Portable electronic authenticator cryptographic module
US20030187627A1 (en) * 2002-03-29 2003-10-02 International Business Machines Corporation I/O velocity projection for bridge attached channel
US20040243776A1 (en) * 2003-06-02 2004-12-02 Yuko Matsui Storage system control method, storage system, and storage apparatus
US7346724B1 (en) * 2002-06-28 2008-03-18 Cypress Semiconductor Corp. Enabling multiple ATA devices using a single bus bridge
US7552191B1 (en) * 2001-06-12 2009-06-23 F5 Networks, Inc. Method and apparatus to facilitate automatic sharing in a client server environment
US7653767B2 (en) 2007-01-23 2010-01-26 International Business Machines Corporation Hierarchical enclosure management services

Families Citing this family (18)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20020194407A1 (en) * 2001-04-25 2002-12-19 Kim Hyon T. Maintaining fabric device configuration through dynamic reconfiguration
US7165258B1 (en) * 2002-04-22 2007-01-16 Cisco Technology, Inc. SCSI-based storage area network having a SCSI router that routes traffic between SCSI and IP networks
US7656884B1 (en) 2002-05-24 2010-02-02 Cisco Technology, Inc. Apparatus and method for a generic service locking mechanism for a fibre channel switching fabric of a storage area network
US8200871B2 (en) * 2002-06-28 2012-06-12 Brocade Communications Systems, Inc. Systems and methods for scalable distributed storage processing
US20040143642A1 (en) * 2002-06-28 2004-07-22 Beckmann Curt E. Apparatus and method for fibre channel data processing in a storage process device
US9787524B1 (en) * 2002-07-23 2017-10-10 Brocade Communications Systems, Inc. Fibre channel virtual host bus adapter
US7616631B2 (en) * 2002-08-14 2009-11-10 Lsi Corporation Method and apparatus for debugging protocol traffic between devices in integrated subsystems
JP4330889B2 (en) 2003-01-20 2009-09-16 株式会社日立製作所 Method for installing software in storage device control apparatus, control method for storage device control apparatus, and storage device control apparatus
US8151318B1 (en) * 2003-02-25 2012-04-03 Cisco Technology, Inc. Method and apparatus for reliably and asymmetrically distributing security information within a fibre channel fabric
US7831736B1 (en) * 2003-02-27 2010-11-09 Cisco Technology, Inc. System and method for supporting VLANs in an iSCSI
US7817583B2 (en) * 2003-04-28 2010-10-19 Hewlett-Packard Development Company, L.P. Method for verifying a storage area network configuration
US7451208B1 (en) 2003-06-28 2008-11-11 Cisco Technology, Inc. Systems and methods for network address failover
US8180855B2 (en) * 2005-01-27 2012-05-15 Netapp, Inc. Coordinated shared storage architecture
US8019842B1 (en) * 2005-01-27 2011-09-13 Netapp, Inc. System and method for distributing enclosure services data to coordinate shared storage
GB0612573D0 (en) * 2006-06-24 2006-08-02 Ibm System and method for detecting routing problems
WO2008086321A1 (en) * 2007-01-05 2008-07-17 Sanpulse Technologies, Inc. Storage optimization method
JP4354492B2 (en) * 2007-01-31 2009-10-28 富士通株式会社 Disk drive diagnostic device
US8489827B2 (en) 2010-10-28 2013-07-16 Hewlett-Packard Development Company, L.P. Method and system for storage-system management

Citations (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5812754A (en) * 1996-09-18 1998-09-22 Silicon Graphics, Inc. Raid system with fibre channel arbitrated loop
US5859837A (en) * 1995-06-07 1999-01-12 Advanced Micro Devices Inc. Flow control method and apparatus for ethernet packet switched hub
US6041381A (en) * 1998-02-05 2000-03-21 Crossroads Systems, Inc. Fibre channel to SCSI addressing method and system
US6105122A (en) * 1998-02-06 2000-08-15 Ncr Corporation I/O protocol for highly configurable multi-node processing system
US6115772A (en) * 1998-09-18 2000-09-05 International Business Machines, Inc. System and method for host expansion and connection adaptability for a SCSI storage array
US6118776A (en) * 1997-02-18 2000-09-12 Vixel Corporation Methods and apparatus for fiber channel interconnection of private loop devices
US6148349A (en) * 1998-02-06 2000-11-14 Ncr Corporation Dynamic and consistent naming of fabric attached storage by a file system on a compute node storing information mapping API system I/O calls for data objects with a globally unique identification
US6260079B1 (en) * 1998-11-15 2001-07-10 Hewlett-Packard Company Method and system for enhancing fibre channel loop resiliency for a mass storage enclosure by increasing component redundancy and using shunt elements and intelligent bypass management
US6314477B1 (en) * 1998-10-30 2001-11-06 Agilent Technologies, Inc. Performance of fibre channel protocol sequence reassembly using expected frame information and buffer list calculations
US6330246B1 (en) * 1998-08-21 2001-12-11 International Business Machines Corporation Method and system for switching SCSI devices utilizing an analog multiplexor
US6711612B1 (en) * 1998-12-18 2004-03-23 Emc Corporation System for facilitating the transfer of management information from a remote mass storage subsystem over a switching fabric or selectively over a private link to a central location for servicing
US6711632B1 (en) * 1998-08-11 2004-03-23 Ncr Corporation Method and apparatus for write-back caching with minimal interrupts
US6839746B1 (en) * 2003-06-03 2005-01-04 Veritas Operating Corporation Storage area network (SAN) device logical relationships manager
US6898184B1 (en) * 1998-11-15 2005-05-24 Hewlett-Packard Development Company, L.P. Private arbitrated loop self-test management for a fibre channel storage enclosure
US7039870B2 (en) * 2001-11-07 2006-05-02 Hitachi, Ltd. Method for connecting computer systems

Patent Citations (17)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5859837A (en) * 1995-06-07 1999-01-12 Advanced Micro Devices Inc. Flow control method and apparatus for ethernet packet switched hub
US5812754A (en) * 1996-09-18 1998-09-22 Silicon Graphics, Inc. Raid system with fibre channel arbitrated loop
US6470007B1 (en) * 1997-02-18 2002-10-22 Stuart B. Berman Interconnect system for fiber channel arbitrated loop including private loop devices
US6118776A (en) * 1997-02-18 2000-09-12 Vixel Corporation Methods and apparatus for fiber channel interconnection of private loop devices
US7012914B2 (en) * 1997-02-18 2006-03-14 Emulex Design & Manufacturing Corporation Methods and apparatus for fibre channel interconnection of private loop devices
US6041381A (en) * 1998-02-05 2000-03-21 Crossroads Systems, Inc. Fibre channel to SCSI addressing method and system
US6105122A (en) * 1998-02-06 2000-08-15 Ncr Corporation I/O protocol for highly configurable multi-node processing system
US6148349A (en) * 1998-02-06 2000-11-14 Ncr Corporation Dynamic and consistent naming of fabric attached storage by a file system on a compute node storing information mapping API system I/O calls for data objects with a globally unique identification
US6711632B1 (en) * 1998-08-11 2004-03-23 Ncr Corporation Method and apparatus for write-back caching with minimal interrupts
US6330246B1 (en) * 1998-08-21 2001-12-11 International Business Machines Corporation Method and system for switching SCSI devices utilizing an analog multiplexor
US6115772A (en) * 1998-09-18 2000-09-05 International Business Machines, Inc. System and method for host expansion and connection adaptability for a SCSI storage array
US6314477B1 (en) * 1998-10-30 2001-11-06 Agilent Technologies, Inc. Performance of fibre channel protocol sequence reassembly using expected frame information and buffer list calculations
US6898184B1 (en) * 1998-11-15 2005-05-24 Hewlett-Packard Development Company, L.P. Private arbitrated loop self-test management for a fibre channel storage enclosure
US6260079B1 (en) * 1998-11-15 2001-07-10 Hewlett-Packard Company Method and system for enhancing fibre channel loop resiliency for a mass storage enclosure by increasing component redundancy and using shunt elements and intelligent bypass management
US6711612B1 (en) * 1998-12-18 2004-03-23 Emc Corporation System for facilitating the transfer of management information from a remote mass storage subsystem over a switching fabric or selectively over a private link to a central location for servicing
US7039870B2 (en) * 2001-11-07 2006-05-02 Hitachi, Ltd. Method for connecting computer systems
US6839746B1 (en) * 2003-06-03 2005-01-04 Veritas Operating Corporation Storage area network (SAN) device logical relationships manager

Cited By (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7552191B1 (en) * 2001-06-12 2009-06-23 F5 Networks, Inc. Method and apparatus to facilitate automatic sharing in a client server environment
US20030131114A1 (en) * 2001-10-12 2003-07-10 Scheidt Edward M. Portable electronic authenticator cryptographic module
US20030187627A1 (en) * 2002-03-29 2003-10-02 International Business Machines Corporation I/O velocity projection for bridge attached channel
US7099814B2 (en) * 2002-03-29 2006-08-29 International Business Machines Corportion I/O velocity projection for bridge attached channel
US7346724B1 (en) * 2002-06-28 2008-03-18 Cypress Semiconductor Corp. Enabling multiple ATA devices using a single bus bridge
US8041872B1 (en) * 2002-06-28 2011-10-18 Cypress Semiconductor Corporation Enabling multiple devices using a single bus bridge
US7660936B1 (en) * 2002-06-28 2010-02-09 Cypress Semiconductor Corporation Enabling multiple ATA devices using a single bus bridge
US7117340B2 (en) 2003-06-02 2006-10-03 Hitachi, Ltd. Storage system control method, storage system, and storage apparatus
US20060277382A1 (en) * 2003-06-02 2006-12-07 Yuko Matsui Storage system control method, storage system, and storage apparatus
US7454591B2 (en) 2003-06-02 2008-11-18 Hitachi, Ltd. Storage system control method, storage system, and storage apparatus storing information relating a first logical unit number (LUN) used to access a volume by a host computer and a second LUN used to access the volume by another storage system with remote copy procedure
US20060064544A1 (en) * 2003-06-02 2006-03-23 Yuko Matsui Storage system control method, storage system, and storage apparatus
US7013380B2 (en) 2003-06-02 2006-03-14 Hitachi, Ltd. Storage system control method, storage system, and storage apparatus
US20040243776A1 (en) * 2003-06-02 2004-12-02 Yuko Matsui Storage system control method, storage system, and storage apparatus
US7653767B2 (en) 2007-01-23 2010-01-26 International Business Machines Corporation Hierarchical enclosure management services

Also Published As

Publication number Publication date
US6785742B1 (en) 2004-08-31

Similar Documents

Publication Publication Date Title
US6785742B1 (en) SCSI enclosure services
US8699322B1 (en) Port identifier management for path failover in cluster environments
US7467191B1 (en) System and method for failover using virtual ports in clustered systems
US8205043B2 (en) Single nodename cluster system for fibre channel
US8180855B2 (en) Coordinated shared storage architecture
US7272674B1 (en) System and method for storage device active path coordination among hosts
US7596616B2 (en) Event notification method in storage networks
US7996560B2 (en) Managing virtual ports in an information processing system
US6389432B1 (en) Intelligent virtual volume access
US6295575B1 (en) Configuring vectors of logical storage units for data storage partitioning and sharing
US8429446B2 (en) Method and apparatus for managing virtual ports on storage systems
US8706837B2 (en) System and method for managing switch and information handling system SAS protocol communication
US7519769B1 (en) Scalable storage network virtualization
US20070022314A1 (en) Architecture and method for configuring a simplified cluster over a network with fencing and quorum
TWI439871B (en) Maintaining storage area network (''san") access rights during migration of operating systems
US20050015459A1 (en) System and method for establishing a peer connection using reliable RDMA primitives
US10782889B2 (en) Fibre channel scale-out with physical path discovery and volume move
US7739543B1 (en) System and method for transport-level failover for loosely coupled iSCSI target devices
US20240007373A1 (en) Methods and Systems for Resending Missing Network Data Packets
US8621059B1 (en) System and method for distributing enclosure services data to coordinate shared storage
US10798159B2 (en) Methods for managing workload throughput in a storage system and devices thereof
CN112650440B (en) Path replacing method and device
US7539711B1 (en) Streaming video data with fast-forward and no-fast-forward portions
US7779137B1 (en) IP aliasing and address resolution using a fibre channel (FC) fabric name server
US8996802B1 (en) Method and apparatus for determining disk array enclosure serial number using SAN topology information in storage area network

Legal Events

Date Code Title Description
AS Assignment

Owner name: BANK OF AMERICA, N.A. AS ADMINISTRATIVE AGENT, CAL

Free format text: SECURITY AGREEMENT;ASSIGNORS:BROCADE COMMUNICATIONS SYSTEMS, INC.;FOUNDRY NETWORKS, INC.;INRANGE TECHNOLOGIES CORPORATION;AND OTHERS;REEL/FRAME:022012/0204

Effective date: 20081218

Owner name: BANK OF AMERICA, N.A. AS ADMINISTRATIVE AGENT,CALI

Free format text: SECURITY AGREEMENT;ASSIGNORS:BROCADE COMMUNICATIONS SYSTEMS, INC.;FOUNDRY NETWORKS, INC.;INRANGE TECHNOLOGIES CORPORATION;AND OTHERS;REEL/FRAME:022012/0204

Effective date: 20081218

AS Assignment

Owner name: WELLS FARGO BANK, NATIONAL ASSOCIATION, AS COLLATE

Free format text: SECURITY AGREEMENT;ASSIGNORS:BROCADE COMMUNICATIONS SYSTEMS, INC.;FOUNDRY NETWORKS, LLC;INRANGE TECHNOLOGIES CORPORATION;AND OTHERS;REEL/FRAME:023814/0587

Effective date: 20100120

STCB Information on status: application discontinuation

Free format text: ABANDONED -- AFTER EXAMINER'S ANSWER OR BOARD OF APPEALS DECISION

AS Assignment

Owner name: FOUNDRY NETWORKS, LLC, CALIFORNIA

Free format text: RELEASE BY SECURED PARTY;ASSIGNOR:BANK OF AMERICA, N.A., AS ADMINISTRATIVE AGENT;REEL/FRAME:034792/0540

Effective date: 20140114

Owner name: BROCADE COMMUNICATIONS SYSTEMS, INC., CALIFORNIA

Free format text: RELEASE BY SECURED PARTY;ASSIGNOR:BANK OF AMERICA, N.A., AS ADMINISTRATIVE AGENT;REEL/FRAME:034792/0540

Effective date: 20140114

Owner name: INRANGE TECHNOLOGIES CORPORATION, CALIFORNIA

Free format text: RELEASE BY SECURED PARTY;ASSIGNOR:BANK OF AMERICA, N.A., AS ADMINISTRATIVE AGENT;REEL/FRAME:034792/0540

Effective date: 20140114

AS Assignment

Owner name: BROCADE COMMUNICATIONS SYSTEMS, INC., CALIFORNIA

Free format text: RELEASE BY SECURED PARTY;ASSIGNOR:WELLS FARGO BANK, NATIONAL ASSOCIATION, AS COLLATERAL AGENT;REEL/FRAME:034804/0793

Effective date: 20150114

Owner name: FOUNDRY NETWORKS, LLC, CALIFORNIA

Free format text: RELEASE BY SECURED PARTY;ASSIGNOR:WELLS FARGO BANK, NATIONAL ASSOCIATION, AS COLLATERAL AGENT;REEL/FRAME:034804/0793

Effective date: 20150114