The present invention generally relates to input/output controllers, device identification methods, and input/output control methods, and more particularly to an input/output controller, a device identification method, and an input/output control method that allow hot plugging of information processing devices.
Recently, fiber channel has come to the front as a next-generation interface standard to SCSI (Small Computer System Interface).
As the capacity of an individual storage system has increased, a function that allows the storage system to be used by a plurality of servers is required.
Fiber-channel interfaces, which realize high-speed data transfer, have been widely used, so that it is required to make the fiber-channel interfaces usable with SCSI interfaces.
The conventional SCSI interface employs a device type code and a serial number to manage a device.
On the other hand, the fiber channel standard requires that a device be managed with a world wide name (WWN). The WWN, which has a data length of eight bytes, is required to be set to a value unique to the port to which the device is connected. Since the device type code and the serial number employed in the conventional SCSI interface do not serve as a value unique to the port, the WWN is required to be newly set.
Further, in the case of using the SCSI interface, a target ID and a logical unit number are specified when the device is accessed. On the other hand, the fiber-channel standard provides that only the logical unit number of the device be specified. That is, in the case of using the fiber-channel interface, each device is required to be assigned a different logical unit number.
Furthermore, the SCSI standard defines a logical unit number “0” as an essential device. Therefore, replacement of a device having the logical unit number “0” makes all the connected devices unusable.
An object of the present invention is to eliminate the above-described disadvantages, and is achieved by the following aspects of the present invention.
According to the present invention, identification information on an interface is generated from an identification number unique to an interface control device and a port number of a connection port of the interface.
According to the present invention, a device is accessed through a fiber-channel interface with an identifier that is the combination of a device identifier and a logic unit number assigned to the device on a SCSI interface.
According to the present invention, a WWN can be set fixed to a port so that the same WWN can be regenerated even if a channel adapter (input/output controller) connected to the port is replaced. Accordingly, a device connected to the replacing channel adapter is prevented from being recognized as a different device after the channel adapter is replaced. This allows hot plugging of the device. Further, no setting change is required on the host computer side at the time of maintenance.
According to the present invention, when a device of a reference logic unit number is removed, a given response as made by the device of the reference logic unit number continues to be made.
Therefore, even if the device of the reference logic unit number is removed, a normal operation can be performed since the given response as made by the device of the reference logic unit number continues to be made.
A system 1 of this embodiment is formed by connecting host computers 2-1 and 2-2 with storage systems 3-1 through 3-n by an interface 4.
The host computers 2-1 and 2-2 share the storage systems 3-1 through 3-n. Each of the storage systems 3-1 through 3-n is composed of a storage device 11 and a channel adapter 12 (input/output controller) in
The storage device 11, which is composed of, for instance, a hard disk drive, stores data. The channel adapter 12 connects the storage device 11 to the interface 4.
The interface 4 is a fiber-channel interface, which is a high-speed serial interface identifying a device by its WWN.
Next, a detailed description will be given of the channel adapter 12 of this embodiment.
The channel adapter 12 is connected to one of the SCSI ports 22-1 through 22-m, for instance, the SCSI port 22-i. When the power is turned on, the channel adapter 12 makes a request to the interface board 21 for the port number of the SCSI port 22-i. The request is provided to the controller 24 of the interface board 21. The controller 24 reads out the port number corresponding to the SCSI port 22-i from the ROM 23, and supplies the port number to the channel adapter 12.
The channel adapter 12 stores a device type, a company ID, a model ID, and a serial number, and generates a WWN from the device type, the company ID, the model ID, the serial number, and the port number of the SCSI port 22-i.
The channel adapter 12 includes control logic parts 31 and 32, a driver 33, a microprocessor unit (MPU) 34, a memory 35, an MPU bus 36, a data buffer 37, a fiber-channel processor 38, and a transmission and reception circuit 39.
The control logic part 31 controls communication with the storage device 11. The control logic part 32 controls writing data to and reading data from the data buffer 37.
The driver 33 transmits data to and receives data from an RS-232C interface, which is used as a debugger interface.
The MPU 34 performs processing including generation of the WWN. The memory 35 is composed of a ROM 41 and a RAM 42. The ROM 41 stores a program for generating the WWN, the device type, the company ID, the model ID, and the serial number. The RAM 42 is used as a working storage for the MPU 34.
The MPU bus 36 connects the control logic parts 31 and 32, the MPU 34, and the memory 35. The data buffer 37 temporarily stores data supplied from the storage device 11 and the fiber-channel interface 4.
The fiber-channel processor 38 performs data conversion. The transmission and reception circuit 39 receives data from and transmits data to the fiber-channel interface 4.
Next, a detailed description will be given of generation of the WWN by the MPU 34.
Generation of the WWN by the MPU 34 includes steps S1-1 through S1-7.
In step S1-1, it is determined whether the channel adapter 12 is turned on. If it is determined in step S1-1 that the channel adapter 12 is turned on, in step S1-2, the device type, the company ID, the model ID, and the serial number are read from the ROM 41, and are set in the RAM 42. When the device type, the company ID, the model ID, and the serial number are set in the RAM 42, in step S1-3, it is determined whether the fiber-channel interface 4 is set as the interface to be used. If it is determined in step S1-3 that the fiber-channel interface 4 is set as the interface to be used, in step S1-4, the WWN is generated. A detailed description will be given later of the operation of step S1-4. When the WWN is generated in step S1-4, in step S1-5, it is determined whether the WWN generated in step S1-4 is to be validated.
If it is determined in step S1-5 that the WWN generated is to be validated, in step S1-6, the WWN is validated. If it is determined in step S1-5 that the WWN generated is not to be validated, or is to be invalidated, in step S1-7, the WWN is invalidated.
Thereby, the WWN is set in the channel adapter 12 so that communication can be performed through the fiber-channel interface 4.
Next, a detailed description will be given of the operation of step S1-4.
In step S2-1, a request is made to the SCSI port 22-i for its port number. Next, in step S2-2, it is determined whether the port number of the SCSI port 22-i is obtained.
If it is determined in step S2-2 that the port number of the SCSI port 22-i is obtained, in step S2-3, the device type, the company ID, the model ID, and the serial number are read from the RAM 42.
Next, in step S2-4, the WWN is generated by combining the port number, the device type, the company ID, the model ID, and the serial number.
Here, a description will be given, with reference to the flowchart of
The controller 24 of the interface board 21 executes steps S3-1 through S3-3 at the request of the channel adapter 12.
In step S3-1, it is determined whether the controller 24 has received the request for the port number of the SCSI port 22-i from the channel adapter 12. If it is determined in step S3-1 that the controller 24 has received the request, in step S3-2, the controller 24 reads the requested port number of the SCSI port 22-i from the ROM 23. Next, in step S3-3, the controller 24 transmits the read-out port number to the SCSI port 22-i.
Thereby, the port number corresponding to the SCSI port 22-i to which the channel adapter 12 is attached is supplied to the channel adapter 12.
Next, a detailed description will be given of a configuration of the WWN generated in the operation of
An ANSI (American National Standards Institute) standard provides that the WWN have an eight-byte/64-bit length.
As shown in
Thus, the WWN is automatically generated. Accordingly, the WWN is prevented from being set to a wrong value. Since the device type, the company IS, the model ID, and the serial number are preset in the device, there is no need for newly assigning a WWN to the device.
Next, a description will be given of a method of using a storage device with both a SCSI interface and a fiber-channel interface.
In order to use a storage device with both types of interfaces, a fiber-channel logic unit number FCLUN specified by the fiber-channel interface is the combination of a target ID and a SCSI logic unit number SCSILUN in this embodiment.
The channel adapter 12 manages the target ID shown in
By thus forming the fiber-channel logic unit number FCLUN by combining the target ID and the SCSI logic unit number SCSILUN, a region specified through the SCSI interface can be accessed through the fiber-channel interface and a region can be accessed from a plurality of ports through the fiber-channel interface by using the same target ID to form the fiber-channel logic unit number FCLUN. Further, in the case of using the fiber-channel interface independently, access control can be performed by forming the fiber-channel logic unit number FCLUN using a dummy target ID.
Next, a description will be given of a method of preventing any connected device from being unrecognized when no device of the logic unit number (LUN) “0” (LUN=0) exists.
In order to avoid a situation that no connected devices are recognized when no device of LUN=0 exists, a pseudo LUN-0 mode is set in the channel adapter 12 in this embodiment.
First, a description will be given, with reference to the flowchart of
The operation of setting the pseudo LUN-0 mode includes steps S5-1 and S5-2.
In step S5-1, it is determined whether the pseudo LUN-0 mode is set by a maintenance manager.
If it is determined in step S5-1 that the pseudo LUN-0 mode is set by the maintenance manager, in step S5-2, the channel adapter 12 is switched to the pseudo LUN-0 mode.
If it is determined in step S5-1 that the pseudo LUN-0 mode is not set by the maintenance manager, a normal response is made.
Thus, the maintenance manager can handle a failure of the device of LUN=0 by setting the pseudo LUN-0 mode in the channel adapter 12.
Next, a detailed description will be given, with reference to the flowchart of
The operation of the channel adapter 12 in the pseudo LUN-0 mode includes steps S6-1 through S6-9.
In step S6-1, it is determined whether a device of LUN=0 is accessed. If it is determined in step S6-1 that the device of LUN=0 is not accessed, or that a device other than the device of LUN-0 is accessed, the operation ends.
If it is determined in step S6-1 that the device of LUN=0 is accessed, in step S6-2, it is determined whether the pseudo LUN-0 mode is set.
If it is determined in step S6-2 that the pseudo LUN-0 mode is not set, the operation ends. If it is determined in step S6-2 that the pseudo LUN-0 mode is set, in step S6-3, it is determined whether a command issued to the channel adapter 12 is an inquiry command.
If it is determined in step S6-3 that the command issued to the channel adapter 12 is an inquiry command, in step S6-4, a normal response is made. In step S6-3, only standard inquiry data is supported as the inquiry command. Information indicating as a peripheral qualifier that the logic unit numbers are configured is returned in response to the inquiry command.
If it is determined in step S6-3 that the command issued to the channel adapter 12 is not an inquiry command, in step S6-5, it is determined whether the command is a read capacity command.
If it is determined in step S6-5 that the command is a read capacity command, in step S6-6, a logic block address of “0” and a block length of “0×200” are returned as data. The returned block length “0×200” is a length of data that is supposed to be transferred normally if the device of LUN=0 exists.
If it is determined in step S6-5 that the command is not a read capacity command, in step S6-7, it is determined whether the command is a mode sense command.
If it is determined in step S6-7 that the command is a mode sense command, in step S6-8, the following data are returned in response to the command:
If it is determined in step S6-7 that the command is not a mode sense command, or that the command is other than a mode sense command, in step S6-9, a preset check condition is returned in response to the command.
If the device whose LUN or fiber-channel address is zero exists, the channel adapter 12 may be switched to the pseudo LUN-0 mode.
At this point, when the device of LUN=0 is accessed, a normal operation is performed on the device, while the above-described operation is performed when a failure prevents the device from being accessed.
Thus, according to this embodiment, a device can be accessed through the fiber-channel interface with the identifiers employed in accessing the device through the SCSI interface.
Further, since a WWN can be set fixed to a port, the same WWN can be regenerated even if the channel adapter (input/output controller) connected to the port is replaced. Therefore, a device connected to the replacing channel adapter is prevented from being recognized as a different device on the interface, or on the network, after the channel adapter is replaced. This allows hot plugging of the device.
Furthermore, no setting change is required on the host computer side at the time of maintenance.
Thus, hot-plugging of devices is performable.
This is a continuing application, filed under 35 U.S.C. § 111(a), of International Application PCT/JP00/01058, filed Feb. 24, 2000.
| Number | Name | Date | Kind |
|---|---|---|---|
| 5790775 | Marks et al. | Aug 1998 | A |
| 5822614 | Kenton et al. | Oct 1998 | A |
| 5872524 | Iida | Feb 1999 | A |
| 5894481 | Book | Apr 1999 | A |
| 5944794 | Okamoto et al. | Aug 1999 | A |
| 5954796 | McCarty et al. | Sep 1999 | A |
| 5974474 | Furner et al. | Oct 1999 | A |
| 6009479 | Jeffries | Dec 1999 | A |
| 6009535 | Halligan et al. | Dec 1999 | A |
| 6098116 | Nixon et al. | Aug 2000 | A |
| 6148349 | Chow et al. | Nov 2000 | A |
| 6157962 | Hodges et al. | Dec 2000 | A |
| 6209023 | Dimitroff et al. | Mar 2001 | B1 |
| 6240511 | Blumenau et al. | May 2001 | B1 |
| 6260120 | Blumenau et al. | Jul 2001 | B1 |
| 6263387 | Chrabaszcz | Jul 2001 | B1 |
| 6266740 | Don et al. | Jul 2001 | B1 |
| 6336152 | Richman et al. | Jan 2002 | B1 |
| 6343324 | Hubis et al. | Jan 2002 | B1 |
| 6366964 | Shima et al. | Apr 2002 | B1 |
| 6430645 | Basham | Aug 2002 | B1 |
| 6484245 | Sanada et al. | Nov 2002 | B1 |
| 6571354 | Parks et al. | May 2003 | B1 |
| 6609165 | Frazier | Aug 2003 | B1 |
| 6631442 | Blumenau | Oct 2003 | B1 |
| 6665714 | Blumenau et al. | Dec 2003 | B1 |
| 6725394 | Bolt | Apr 2004 | B1 |
| 6735715 | Graham | May 2004 | B1 |
| 6779064 | McGowen et al. | Aug 2004 | B2 |
| 6792479 | Allen et al. | Sep 2004 | B2 |
| Number | Date | Country |
|---|---|---|
| 0 772 134 | May 1997 | EP |
| 0 917 319 | May 1999 | EP |
| 8-316975 | Nov 1996 | JP |
| 9-146875 | Jun 1997 | JP |
| 11-088434 | Mar 1999 | JP |
| 11-252181 | Sep 1999 | JP |
| 11282767 | Oct 1999 | JP |
| 9934297 | Jul 1999 | WO |
| Number | Date | Country | |
|---|---|---|---|
| 20030041207 A1 | Feb 2003 | US |
| Number | Date | Country | |
|---|---|---|---|
| Parent | PCT/JP00/01058 | Feb 2000 | US |
| Child | 10218468 | US |