DATA STORAGE SYSTEM

Abstract: A data storage system having a plurality of disk drives. Each one has a pair of ports. A pair of directors controls the flow of data to and from the disk drives. A first and second fibre channel port by-pass selector section are provided. The first fibre channel selector section includes: an input/output port coupled to a first one of the directors; and, a plurality of output/input ports connected between a first one of the ports of the plurality of desk drives through a first plurality of fibre channel links. The first fibre channel port by-pass selector section is adapted to couple the first one of the directors serially to one, or ones, of the first ports of the plurality of disk drives through a first fibre channel selectively in accordance with a control signal fed to the first fibre channel by-pass selector section. The first fibre channel includes one, or more, of the first plurality of fibre channel links. The second fibre channel port by-pass selector section is similarly configured.

Description: DATA STOR AGE SYSTEM Background of the Invention This invention relates generally to data storage systems and more particularly to data storage systems having a plurality of magnetic storage disk drives in a redundancy arrangement whereby the disk drives are controllable by first disk controllers and second disk controllers. Still more particularly, the invention also relates to systems of such type wherein the disk drives are coupled to the disk controllers through a series, unidirectional, "ring" or, fibre channel protocol, communication system. As is known in the art, in one type of data storage system, data is stored in a bank of magnetic storage disk drives. The disk drives, and their coupled interfaces, are arranged in sets, each set being controlled by a first disk controller and a second disk controller. More particularly, in order to enable the set of disk drives to operate in the event that there is a failure of the first disk controller, each set is also coupled to a second, or redundant disk controller. Therefore, if either the first or second disk controller fails, the set can be accessed by the other one of the disk controllers. While today, most disk storage systems of this type use a Small Computer System Interconnection (SCSI) protocol, in order to operate with higher data rates, other protocols are being introduced. One higher data rate protocol is sometimes referred to as a fibre channel (FC) protocol. Such FC channel protocol uses a series, unidirectional, "ring" communication system. In order to provide for redundancy, that is, to enable use of the set of disk drives in the event that the first disk controller fails, as discussed above, the set is coupled to the second, or redundant disk controller, using a separate, independent, "ring", or fibre channel communication protocol. Thus, two fibre channels are provided for each set of disk drives and their disk interfaces; a first fibre channel and a second fibre channel. As is also known, when using the fibre channel communication protocol, if any element in the channel becomes inoperative, the entire channel becomes inoperative. That is, if the first disk controller becomes inoperative, or if any one of the disk drives in the set coupled to the first channel becomes inoperative (i.e., as where the disk interface fails, the disk interface is inoperative, or removed with its coupled disk drive, or where the disk drive coupled thereto fails, or is removed), the first fibre channel, is "broken", or open, and becomes inoperative. The data stored in the entire portion of the set of disk drives coupled to the first disk channel is therefore unavailable until the inoperative first disk controller or inoperative disk drive is replaced. This is true with either the first channel or the second channel. One technique suggested to solve this problem is through the use of a switch, sometimes referred to as an LRC (i.e., a loop resiliency circuit) switch. Such LRC switch is used to remove an inoperative disk drive from its channel. In one suggested arrangement, a printed circuit board is provided for each disk drive. The printed circuit board has a pair of LRCs, one for the first channel and one for the second channel. Thus, the open channel may be "closed" in the event of an inoperative disk drive by placing the LRC thereof in a by-pass condition. While such suggested technique solves the inoperative disk drive, or open channel problem, if one of the pair of LRCs fails, the entire printed circuit board having the pair of LRCs must be replaced thereby disrupting both the first and second channels; and, hence, disrupting the operation of the entire data storage system. One technique suggested to solve this disruption problem requires n LRC switches (where n is the number of disk drives in the set) in the first channel, i.e., one LRC for each one the n disk drives in the set and another n LRC switches in the second channel for each one of the n disk drives in the second channel. The first channel set of n LRCs is mounted on one printed circuit board and the second channel set of n LRCs is mounted on a different printed circuit board. A backplane is used to interconnect the two LRC printed circuit boards, the associated multiplexers, and the disk drives. In order to provide the requisite serial, or sequential, fibre channel connections, an elaborate, complex, fan-out wiring arrangement has been suggested for the backplane. Further, the slots provided for the two LRC boards eliminates two disk drives, and the disk interfaces which would otherwise be plugged into these two slots of the backplane. Another fibre channel arrangement is described in U. S. Patent 5,729,763 entitled "Data Storage System", inventor Eli Leshem, issued March 17. 1998, assigned to the same assignee as the present invention. Summary nf the Invention In accordance with one feature of the invention, a data storage system is provided having a plurality of disk drives. Each one has a pair of ports. A pair of directors is included for controlling the flow of information (i.e. data) to and from the disk drives. A first fibre channel port by-pass selector section is provided. The first fibre channel selector section includes: an input/output port coupled to a first one of the directors; and, a plurality of output/input ports connected between a first one of the ports of the plurality of disk drives through a first plurality of fibre channel links. The first fibre channel port by-pass selector section is adapted to couple the first one of the directors serially to one, or ones, of the first ports of the plurality of disk drives through a first fibre channel selectively in accordance with a control signal fed to the first fibre channel bypass selector. The first fibre channel includes one, or more, of the first plurality of fibre channel links. A second fibre channel port by-pass selector section is provided having an input/output port coupled to a second one of the directors and a plurality of output/ports serially connected between a second one of the pair of ports of the plurality of disk drives through a second plurality of fibre channel links. The second fibre channel port by-pass selector section is adapted to couple the second one of the directors serially to one, or ones, of the second ports of the plurality of disk drives through a second fibre channel selectively in accordance with the control signal. The second fibre channel includes one, or more, of the second plurality of fibre channel links. Brief Description of the Drawing These and other features of the invention will become more readily apparent from the follow detailed description when read together with the accompanying drawings, in which: FIG. 1 is a block diagram of a data storage system according to the invention; FIG. 2 is a block diagram of a redundant fibre channel network used in the system of FIG. 1 according to the invention; FIG. 3 is a block diagram of a port by-pass section used in the redundant fibre channel network of FIG. 3 coupled to a bank of disk drives used in the system of FIG. 1 according to the invention; FIGS. 4, 4A, and 4B are block diagrams of the system of FIG. 1 arranged in an expanded configuration according to the invention; FIGS. 5, 5A and 5B are block diagrams of a redundant fibre channel network adapted for use in the system of FIG. 1 according to the invention; FIG. 5C-5G are diagrams of the network of FIGS. 5, 5A and 5B configured in a number of contracted configurations according to the invention. Pesr-riptinn of the Preferred Embodim nts Referring now to FIG. 1 , a data storage system 10 is shown wherein a host computer 12 is coupled to a bank 14 of disk drives through a system interface 16. The system interface 16 includes a cache memory 18, having high memory address sections 18H and low address memory sections 18L. A plurality of directors 20o-20i5 is provided for controlling data transfer between the host computer 12 and the bank 14 of disk drives as such data passes through the cache memory 18. A pair of high address busses TH, BH is electrically connected to the high address memory sections 18H. A pair of low address busses TL, BL electrically connected to the low address memory sections 18L. The cache memory 18 has a plurality of storage location addresses. Here, the storage locations having the higher addresses are in the high address memory sections 18H and the storage locations having the lower addresses are in the low address memory sections 18L. It should be noted that each one of the directors 20o-20i5 is electrically connected to one of the pair of high address busses TH, BH and one of the pair of low address busses TL, BL. Thus, each one of the directors 20o-20i5 is able to address all locations in the entire cache memory 18 (i.e., to both the high address memory sections 18H and the low address memory sections 18L) and is therefore able to store data in and retrieve data from any storage location in the entire cache memory 18. More particularly, a rear-end portion of the directors, here directors 20o-203 and 20i2-20i5, is electrically connected to the bank 14 of disk drives through fibre channel (FC) port by-pass sections 23 ι-23s (described in more detail in connection with FIG. 3), respectively, and a front-end portion of the directors, here directors 204-20ι ι, is electrically connected to the host computer 12 through I/O adapter cards 22ι-22s, respectively, as indicated. It should also be noted that each end of the busses TH, TL, BH, BL terminates in a pair of master and slave arbiters bus arbiters, not shown, as described in co-pending patent application Serial No. 09/224,194 filed December 30, 1998, entitled DATA STORAGE SYSTEM, inventor Mark Zani, assigned to the same assignee as the present invention, the entire subject matter thereof being incorporated herein by reference. In operation, when the host computer 12 wishes to store data, the host computer 12 issues a write request to one of the front-end directors 204-20π to perform a write command. One of the front-end directors 204-20π replies to the request and asks the host computer 12 for the data. After the request has passed to the requesting one of the front-end directors 204-20n, the director determines the size of the data and reserves space in the cache memory 18 to store the request. The front-end director then produces control signals on either a high address memory bus (TH or BH) or a low memory address bus (TL, BL) connected to such front-end director depending on the location in the cache 5 memory 18 allocated to store the data and enable the transfer to the cache memory 18. The host computer 12 then transfers the data to the front-end director. The front-end director then advises the host computer 12 that the transfer is complete. The front-end director looks up in a Table, not shown, stored in the cache memory 18 to determine which one of the rear-end directors 10 20o-203 and 20i2-20i5 is to handle this request. The Table maps the host computer 12 address into an address in the bank 14 of disk drives. The front-end director then puts a notification in a "mail box" (not shown and stored in the cache memory 18) for the rear-end director which is to handle the request, the amount of the data and the disk address for the data. Other rear-end directors poll 15 the cache memory 18 when they are idle to check their "mail boxes". If the polled "mail box" indicates a transfer is to be made, the rear-end director processes the request, addresses the disk drive in the bank, reads the data from the cache memory and writes it into the addresses of a disk drive in the bank 14. When data is to be read from the disk drive to the host computer 12 the system 0 operates in a reciprocal manner. Each one of the rear-end portion of the directors 20o-203 is identical in construction and are described in detail in the above-referenced co-pending patent application Serial No. 09/224, 194 to include a pair of central processing sections, CPU X and CPU Y, a dual port random access memory (RAM), and shared resources (Flash memories, etc,) coupled to the bank 14 of disk drives (FIG. 1) through the fibre channel (FC) port by-pass sections (FIG. 3), as indicated and to a high memory address bus, here TH, and low memory address bus, here BL. It should be noted that the director 20o-2θ3 and 2012-20 is has a first output port, A, and a second output port, B. Further, it should be noted that different pairs of the rear-end directors 20o. 20i ; 202, 203; 20n, 20π (not shown); and, 20u, 20ιs are arranged in redundant fibre channel (FC) networks 251 -254, respectively, as indicated. Still further, it is noted that each one of the redundant fibre channel (FC) networks 25ι-254 also includes pairs of the fibre channel (FC) port by-pass sections 23ι, 232; 233, 234; 23s (not shown), 236 (not shown); and, 23?, 23s, respectively, as indicated and disk drive sets 14ι, 142; 143, 144; 14s (not shown), 146 (not shown); and, 147, 14s, respectively, as indicated. Each one of the pairs of the redundant fibre channel (FC) networks 25ι-254 is identical in construction, an exemplary one thereof, here redundant fibre channel (FC) networks 251 is shown in detail in FIG. 2. Thus, as shown in FIG. 2, the first port A and second port B of director 20o is connected to both FC port by-pass section 23 I and to FC port bypass section 232. Likewise, the first port A and second port B of director 20ι is connected to both FC port by-pass section 231 and to FC port by-pass section 232. More particularly, both directors 20o and 20ι of the redundant FC network 251 are connected to the pair of FC port by-pass sections 231, 232. Each one of the FC port by-pass sections 231. 232 includes a pair of FC port by-passes 34ι and 342. Each one of the FC port by -passes 341 and 342 is connected to a corresponding one of a plurality of sets 14ι, 142 of the disk drives in the bank of disk drives 14 (FIG. 1). Each one of the FC port by-passes 34ι, 342 and is identical in construction, an exemplary one thereof, here FC port by-pass 341 being shown in detail in FIG. 3 connected to set 14ι of the disk drives and to directors 20o and 20' . It is noted that director 20o is connected to busses TH and BL and that director 201 is connected to busses TL and BH. Thus, the redundant FC network 25ι (FIG. 1) is connected to all four busses TH, BH. TL, and BL. More particularly, and referring again also to FIG. 2, it is noted that each one of the disk drive sets 14ι, 142 includes a plurality of, here for example eight, disk drives 19ι-19s, it being understood that the number of disk drives 19 in a set can be selected in accordance with the requisite storage requirements. It is also noted that each one of the disk drives 19ι-19s includes a pair of input/output ports A, B. As noted above, each one of the FC port by-pass sections 23 ι-23s is identical in construction. An exemplary one thereof, here FC port by-pass section 231 is shown in FIG. 2 to include: an input/output port 30A coupled to the A port of director 20o and a plurality of, here in this example, eight, output/input ports 32AI -32AS serially connected between a first one of the ports, here port A, of the plurality of disk drives 1 ι-19s through a plurality of fibre channel links 29AI -29A8. The fibre channel port by-pass selector section 231 is adapted to couple port A of director 20o serially to a selected one. or ones, of port A of the plurality of disk drives 1 ι- 19s in set 14ι through a first fibre channel comprising one, or more, of the plurality of fibre channel links 29AI -29AS during a normal mode of operation. The fibre channel port by-pass selector section 231 also has an input/output port 30B coupled to the A port of director 201 and a plurality of output/ports 32BI -32BS serially connected between the B ports of the plurality of disk drives 19ι-198 through fibre channel links 29BI -29BS, as indicated. The fibre channel port by-pass selector section 231 is adapted to couple the A port of director 20ι serially to a selected one, or ones, of the B ports of the plurality of disk drives 19ι-19s in set 14ι through a second fibre channel comprising one, or more, of the second plurality of fibre channel links 29BI-29BS in the normal operating mode. Likewise, fibre channel port by-pass selector section 232 in FIG. 2 is shown to includes: an input/output port 30A coupled here, however, coupled to the B port of director 20o and a plurality of, here in this example, eight, output/input ports 32A I -32AS serially connected between port A of the plurality of disk drives 1 ι-l 9s in set 142 through a plurality of fibre channel links 29AI -29AS. The fibre channel port by-pass selector section 23 is adapted to couple port B of director 20o serially to a selected one, or ones, of port A of the plurality of disk drives 19ι-19s in set 142 through a first fibre channel comprising one, or more, of the plurality of fibre channel links 29AI-29AS in section 232 during a normal node of operation. The fibre channel port by-pass selector section 232 also has an input output port 30B coupled to the B port of director 20ι and a plurality of output/ports 32BI -32B8 serially connected between the B ports of the plurality of disk drives 19ι -198 in set 142 through fibre channel links 29BI -29BS, as indicated. The fibre channel port by-pass selector section 232 is adapted to couple the B port of director 20ι serially to a selected one, or ones, of the B ports of the plurality of disk drives 19ι-l s in set 142 through a second fibre channel comprising one, or more, of the second plurality of fibre channel links 29BI -29BS in section 232 in the normal operating mode. It is noted that director 20o is able to access the disk drives 19ι-19« in set 142 through its port B in the event of a failure in director 20ι and, likewise, director 20ι is able to access disk drives 19ι-19s in set 14ι through its A port in the event of a failure in director 20o. 5 It is also noted that in the event of a failure of, or removal of, any one of the port A or port B by-passes 34A, 34B, both sets of disk drives 14ι and 142 are still accessible from one of the directors 20o and 20ι. For example, if the port A by-pass 34A of fibre channel port by-pass section 231 fails or is removed, the set 14ι of disk drives is accessible from director 20ι, via the path between port A 10 of director 201. the port B by-pass 34B of fibre channel by-pass section 231, and the port B of the disk drives in set 14ι . In like manner, if the port B by-pass 34B of fibre channel port by-pass section 231 fails or is removed, the set 14ι of disk drives is accessible from director 201, via the path between port A of director 20o, the port A by-pass 34A of fibre channel by-pass section 23', and the port A of the 15 disk drives in set 14ι . If the port A by-pass 34A of fibre channel port by-pass section 232 fails or is removed, the set 142 of disk drives is accessible from director 20o, via the path between port B of director 20ι, the port B by-pass 34B of fibre channel by-pass section 231, and the port B of the disk drives in set 142. In like manner, if the port B by-pass 34B of fibre channel port by-pass section 20 232 fails or is removed, the set 142 of disk drives is accessible from director 20o, via the path between port B of director 20o, the port A by-pass 34A of fibre channel by-pass section 232, and the port A of the disk drives in set 142. Referring now to FIG. 3, an exemplary one of the FC port by-pass sections 23ι-23s, here section 23ι is shown in detail connected to set 14ι of disk drives 19ι-19s and to ports A of directors 20o and 20ι. As shown also in FIG. 2, the FC port by-pass section 231 includes a pair of FC port by-passes 34A, 34B. The FC port by-pass 34A is coupled between input/output port 30A and the A ports of the disk drives 19ι-19s in set 14ι through fibre channel links 29AI -29AS and the FC port by-pass 34B is coupled between input/output port 30B and the B ports of the disk drives 19ι-19» in set 14ι through fibre channel links 29BI-29BS. Referring again to FIG. 3, the FC port by-pass 34A includes selectors 36AI-36AI2 and a control section 40A. (It should be understood that the number of selectors is determined in accordance with the requisite storage requirements). Each one of the selectors 36AI -36AI2 has a pair of input ports (i.e., an A input and a B input) and an output port, one of the input ports A or B being coupled to the output port selectively in accordance with a control signal CAI -CAI2, respectively, fed thereto, as indicated, by the control section 40A. It is also noted that input/output port 30A has an input port 30AI and an output port 30AO. It is noted that the selectors 36AI -36AS; and, 36A8-36AI I are arranged in two selector sections 37AI and 37A2. Section 37AI is coupled to disk drives 19ι- 194 and section 37A2 is coupled to disk drives 19s- 198. Each section 37AI , 37A2 is used to control whether one, or more, of the disk drives coupled thereto should be by-passed. In like manner, the selectors 36BI-36BS; and, 36BS-36BI I are arranged in two selector sections 37BI and 37B2. Section 37BI is coupled to disk drives 19ι- 194 and section 37B2 is coupled to disk drives 195-198. Each section 37BI , 37B2 is used to control whether one, or more, of the disk drives 19ι-194, 195-198 coupled thereto, respectively, should be by-passed. Selector 36AI has its A input connected to input port 30AI and its B input port connected to output port 30AO. The outputs of selectors 36AI -36AH are connected to the B inputs of selectors 36A2-36AI2, respectively. The outputs of selectors 36AI -36A4 and 36A7-36AIO are also coupled to the A ports of disk drives 19ι-198, respectively as shown. The output of selector 36AI2 is connected to the A input of selector 36A6. The output of selector 36A6 is connected to both the B input of selector 36AI and the input port 30AI of director 20o, as indicated. The output of selector 36AI2 is also connected to the A input of selector 36A7. The A inputs of selectors 36A2-36AS and 36AS-36AU are fed thereto from the A ports of disk drives 19ι-19s, respectively, as indicated. It is noted that the output of selector 36AΠ , in addition to being fed to the B input of selector 36Ai2 is connected to an expansion port 30EXAO and that the A input of selector 36Ai2 is connected to an expansion port 30EXAI, for reasons to be discussed in more detail below in connection with FIGS. 4, 4A and 4B. The FC port by-pass 34B includes selectors 36B i -36B 12 and a control section 40B. Each one of the selectors 36BI-36BI2 has a pair of input ports (i.e., an A input and a B input) and an output port, one of the input ports A or B being coupled to the output port selectively in accordance with a control signal CBI - CB12, respectively, fed thereto, as indicated, by the control section 40B. It is also noted that input/output port 30B has an input port 30BI and an output port 30BO. It is noted that the selectors 36BI -36BS; and, 36BS-36BI I are arranged in two selector sections 37BI and 37B2. Section 37BI is coupled to disk drives 19ι- 194 and section 37B2 is coupled to disk drives 195-198. Each section 37BI , 37B2 is used to control whether one, or more, of the disk drives coupled thereto should be by-passed. In like manner, the selectors 36AI -36BS; and, 36AS-36AΠ are arranged in two selector sections 37AI and 37A2. Each section 37BI , 37B2 is used to control whether one, or more, of the disk drives 19ι-194, 195-198 coupled thereto, respectively, should be by-passed. Selector 36BI has its A input connected to input port 30BI and its B input port connected to output port 30BO. The outputs of selectors 36BI -36BH are connected to the B inputs of selectors 36B2-36BI2, respectively. The outputs of selectors 36BI -36B4 and 36B7-36BIO are also coupled to the B ports of disk drives 19ι-19s, respectively as shown. The output of selector 36BI2 is connected to the A input of selector 36B6. The output of selector 36B6 is connected to both the B input of selector 36BI and the input port 30BI of director 20ι, as indicated. The output of selector 36BI2 is also connected to the A input of selector 36B7. The A inputs of selectors 36B2-36BS and 36B8-36BH are fed thereto from the B ports of disk drives 19ι-19s, respectively, as indicated. It is noted that the output of selector 36BI i, in addition to being fed to the B input of selector 36BI2 is connected to an expansion port 30EXBO and that the A input of selector 36Bi2 is connected to an expansion port 30EXBI, for reasons to be discussed in more detail below in connection with FIGS. 4. 4A and 4B. NORMAL OPERATING MODE During the normal operating mode, port 30A of director 20o is coupled serially through disk drives 191 - 19* of set 14ι via ports A of such disk drives 19ι- 194 and port 30B of director 20ι is coupled serially through disk drives 195-198 of set 14ι via ports B of such disk drives 195-198. Such is accomplished by the control signals CAI -CAI2 and CBI-CBI2 which couple one of the A and B ports of the selectors coupled to the outputs of such selectors in the following TABLE: In the event of a failure in one of the disk drives 19ι-19», the control sections 40A and 40B are advised of such failure by the directors 20o and 20ι via control lines 45o, 451, respectively. For example, assume there is a failure in disk drive 193. Once such a failure is detected during the normal operating mode, control section 40A changes the logic state on control line CA4 to thereby decouple input port A of selector 36A4 from its output and couples input port B of selector 36A4 to its output; thereby by-passing disk drive 19 from the first fibre channel (i.e., the fibre channel through the input and output ports 30AJ and 30AO of director 20o). In like manner, if there is a failure in disk drive 197, once such a failure is detected during the normal operating mode, control section 40B changes the logic state on control line CBAIO to thereby de-couple input port A of selector 36BI O from its output and couples input port B of selector 36BI O to its output; thereby by-passing disk drive 197 from the second fibre channel (i.e.. the fibre channel through the input and output ports 30BI and 30BO of director 20ι). FAILURE OF ONE OF THE DIRECTORS 20o or 20ι As noted above, during normal operation, director 20o is coupled to the A ports of disk drives 191 - 1 4 and director 20ι is coupled to the B ports of disk drives 195-198. In the event of a failure in director 20o, director 20o is de- 5 coupled from disk drives 191 - 1 4 and director 201 is coupled to the B ports of disk drives 1 1 - 19 in addition to remaining coupled to the B ports of disk drives 195-198. Likewise, in the event of a failure in director 20ι. director 20ι is decoupled from disk drives 195-198 and director 20o is coupled to the A ports of disk drives 195-198 in addition to remaining coupled to the A ports of disk drives 10 19ι-194. Such is accomplished (i.e., removal of failed director 20ι, for example) by the control signals CAI -CAI2 and CBI -CBI2 which couple one of the A and B ports of the selectors coupled to the outputs of such selectors in the following TABLE: EXPANSION MODE As described above in connection with FIG. 1, for each redundant FC network 251 -254 the A port of one of the rear-end directors thereof is coupled in 5 the normal mode to one disk drive set and the A port of the other one of the rear- end directors thereof is coupled such set of disk drives. Thus, for example, considering redundant FC network 251 shown more clearly in FIG. 2, during the normal operating mode, the A port of rear-end director 20u and the A port of rear- end director 20ι are coupled to disk drive set 14ι through port by-passes 34A and 10 34B, respectively, of port by-pass section 231. Each one of the rear-end directors 20o-20i5 (FIG. 1) may, however, may be coupled to more than one disk drive set through the use of additional port by-passes. For example, referring to FIG. 4 and considering port A of the rear-end directors 20o and 20ι, an additional disk drive set 14'ι is shown coupled to the A ports of rear-end directors 20o and 20' through FC port by-passes 34'A and 34'B, respectively, as shown. It is first noted that the additional FC port by-passes 34'A and 34'B are identical in construction to FC port by-passes 34A and 34B shown in FIG. 3. Thus, referring also to FIGS. 4 and 4A, the same numerical designation is used for the elements in FC port bypass 34'A as was used in FC port by-pass 34A except that the elements in FC port by-pass 34'A have a prime (') numerical designation. It is next noted in FIG. 4, that the A port of director 20o is connected to the A ports of the disk drives 19ι- 198, 19'ι-19'8 in both disk drive sets 14ι and 14'ι through FC port by-passes 34A and 34'A, respectively, and that the A port of director 201 is connected to the B ports of the disk drives 19ι-19s and 19'ι-19'8, respectively, in both disk drive sets 14ι and 14'ι, respectively, through FC port by-passes 34B and 34'B, respectively. More specifically, and referring also to FIG. 4A, the output of port A of director 20 is coupled to port 30AI of FC port by-pass 34A and the input of port A of director 20o is coupled to port 30AO. The output of selector 36A6 is coupled to the B input of selector 36AI of port A by-pass 34A, and to port 30AO. Port 30AI is coupled to the A input of selector 36AI of the port A by -pass 34A. The details of the port A by-pass have been described above in connection with FIG. 3. The output of selector 36AI I is connected, through expansion port 30EXAO to A input of selector 36'AI of port A by-pass 34'A and the output of selector 36'AO of selector 34'A is connected to the B input of selector 36'AI and through port 30'AO, to the A input of selector 36AI2 of port A by-pass 34A. Thus, port A by-pass 34A is adapted to service disk drive set 14 and, if expansion is desired, the additional port A by-pass 34'A is adapted to service the additional disk drive set 14'ι . Referring now also to FIG. 4B, the port A by-pass 34A and the additional port A by-pass 34'A are shown in more detail. Thus, the FC port bypass 34A includes selectors 36AI-36AI2 and a control section 40A. Each one of the selectors 36AI-36AI2 has a pair of input ports (i.e., an A input and a B input) and an output port, one of the input ports A or B being coupled to the output port selectively in accordance with a control signal CAI -CAI2, respectively, fed thereto, as indicated, by the control section 40A. It is also noted that input port 30AI is coupled to port A of director 20o and the output of selector 36A6 of by-pass 34A is coupled to port 30AO, as in FIG. 4A. During the normal mode of operation, port 30A of director 20o is coupled serially through disk drives 19ι-194 of set 14ι via ports A of such disk drives 19ι-l 9 and through disk drives 19'ι-19'4 and then back to port 30'AO. Such is accomplished by the control signals CAI-CAI2 and CΑ1-CΑ12 which couple one of the A and B ports of the selectors coupled to the outputs of such selectors in the following TABLE: In the event of a failure in director 201. director 20o is coupled to the A ports of disk drives 19'ι-19's and 19ι - 19s. Such is accomplished by the control signals CAI -CAI2 and CΑ1-CΑ12 which couple one of the A and B ports of the selectors coupled to the out uts of such selectors in the followin TABLE: It is understood that appropriate control signals are produced by FC port by-passes 34B, 34'B (FIGS. 4. 4A and 4B) to de-couple failed director 20ι from the B ports of disk drives 194- 19s and 19'4-19's. CONTRACTION MODE Referring now to FIGS. 5, and 5A, an arrangement is shown where the disk drive set 14ι in bank 14 (FIG. 1) has 24 disk drives 19"ι-19"24 instead of the 8 disk drive set 14ι-14s discussed above. Further, a redundant FC network 25 "i includes, in addition to the rear-end directors 20o and 20ι described above in connection with redundant FC network 251 (FIG. 1), a pair of additional rear-end directors 20"o and 20" i. Director 20"o is coupled to busses TL and BH (FIG. 1) and director 20"ι is coupled to busses TH and BL (FIG. 1). The A port of director 20" is coupled to the A ports of the disk drives 19"ι-19"24 in disk drive set 14"ι through port A by-pass 34"A of port by-pass section 23"ι and the B port of director 20"o is coupled to the A ports of the disk drives 19"ι-19"24 in disk drive set 14"2 through port A by-pass 34"A of port by-pass section 23 "2. The A port of director 20"ι is coupled to the B ports of the disk drives 19"ι-19"24 in disk drive set 14"ι through port B by-pass 34"A of port by-pass section 23" 1 and the B port of director 20" 1 is coupled to the B ports of the disk drives 19"ι-19"24 in disk drive set 14"2 through port B by-pass 34"B of port by-pass section 23 "2. In a manner similar to the redundant FC network 251 described above in connection with FIGS. 1 and 2, the A port of director 20o is coupled to the A ports of the disk drives 19"ι-19"24 in disk drive set 14"ι through port A by-pass 34"A of port by- pass section 23 "1 and the B port of director 20o is coupled to the A ports of the disk drives 19"ι-19"24 in disk drive set 14"2 through port A by-pass 34"A of port by-pass section 23"2. Likewise, the A port of director 20ι is coupled to the B ports of the disk drives 19"ι-19"24 in disk drive set 14"ι through port A by-pass 34" A of port by-pass section 23 "1 and the B port of director 201 is coupled to the B ports of the disk drives 19"ι-19"24 in disk drive set 14"2 through port B by-pass 34"B of port by-pass section 23"2. Thus, here each set of disk drives 14"ι and 14"2 may be coupled to four rear-end directors 20o, 20ι, 20"o, 20"ι. The connections of rear-end directors 20o and 20ι is at the input/output ports 30"A, 30"B of the port A by-passes 34"A, 34"B of port by-pass sections 23 "i and 23 "2, respectively, in a manner similar to that described above in connection with FIG. 2. The connections of rear-end directors 20"o and 20" 1 is at the expansion input/output ports 30"EXA, 30"EXB of the port A by-passes 34"A, 34"B of port by-pass sections 23"ι and 23"2, 5 respectively, as shown more clearly in FIG. 5 A and 5B. It is first noted that each of the port A and port B by-passes 34"A and 34"B is identical in construction. An exemplary one thereof, here port B by-pass 34"B is shown in detail in FIGS. 5B and 5C. More particularly, and referring to FIGS. 5B and 5C, the disk drives 19"ι-19"24 are arranged in four sets, each set 10 being coupled to a corresponding one of four selector sections 37"ι-37"4, as indicated. Thus, disk drives 19"7-19"i2 are coupled to selector section 37"ι, disk drives 19"ι-19"6 are coupled to selector section 37"2, disk drives 19"i9-19"24 are coupled to selector section 37"3, and disk drives 19"i3-19"i8 are coupled to selector section 37"4, as indicated. The selectors: 36"B2-36"B7; 36"B9-36"BI4; 15 36"Bi7-36"B22; and, 36"25-36"B3o, in the sections 37"i; 37"2; 37"3; and 37"4, respectively, are controlled by control signals fed to the selectors therein by control 40"B in a manner similar to that described above in FIG. 3 in connection with controls 40A and 40B. Referring also to FIG. 5C, the port B by-pass 34" is shown to include, in addition to the selectors in the four selectors sections 37"ι- 20 37"4, described above in connection with FIG. 5B, selectors 36"BI , 36"BS, 36"BI 5, 36"i6, 36"23. 36"B24, 36"B3i, and 36"B32, arranged as shown. Referring again also to FIGS. 5 and 5 A, and the exemplary port B bypass 34"B. it is noted that port A of rear-end director 20ι is connected to ports 30BI and 30"BO of input output port 30"B and that port A of rear-end director 20" 1 is connected to ports 30EXI and 30"EXO of expansion port 30"EXB. This arrangement is useful where one has a system with 24 disk dives in each set and then wants to reduce the number of disk drives to either 18, or 12, or 6 disk drives. More particularly, and referring also to FIG. 5D, rear-end director 20ι a configurations is shown where director 201 is coupled to the B ports of all 24 disk drives 19"ι-19"24 in set 14" ι and director 20" ι is not coupled to any of the 24 disk drives 19"ι-19"24 in set 14"ι. Thus, the output of selector 36"BI is coupled to its input port A (as indicated by the arrows 50), the output of selector 36"BS is coupled to its A input port, the output of selector 36"BI S is coupled to its A port, the output of selector 36" i6 is coupled to its B port, the output of selector 36"23 is coupled to its A port, the output of selector 36"B24 is coupled to its B port, the output of selector 36"B3i is coupled to its B port, and the output of selector 36"B32 is coupled to its A port. Thus, the A port of director 20ι connected to the port 30"BI passes through selector 36"BI to the input of selector section 37" ι . The output of selector section 37" ι then passes successively through: the selector 36"BS; selector section 37"2; selector 36"BI 6; selector section 37"3; selector 36"B24; selector section 37"4; selector 36"β3i; selector 36"B23; selector 36"BI S; selector 36"B32, then to port 30"BO and back to the A port of director 201. It is noted that director 20" i is by-passed and not connected to the selector sections 37"ι-37"2 and hence not connectable to the disk drives connected to such selector sections 37"ι-37"2. If the user wishes to reduce the number of disk drives coupled to director 20ι from 24 to 18 with director 20" ι coupled to the other 6 disk drives, such a configuration is shown in FIG. 5E. Thus, the output of selector 36"BI remains coupled to its input port A (as indicated by the arrows 50), the output of selector 36"BS remains coupled to its A input port, the output of selector 36"BI 5 remains coupled to its A port, the output of selector 36"'& remains coupled to its B port, the output of selector 36"23 switches to its B port, the output of selector 5 36"B24 switches to its A port, the output of selector 36"B3i switches to its A port, and the output of selector 36"B32 remains coupled to its A port. Thus, the A port of director 20ι coupled to port 30"BI is then coupled through selector 36"BI to the input of selector section 37" i. The output of selector section 37"ι then passes successively through: the selector 36"BS; selector section 10 37"2; selector 36"BI&; selector section 37"3; selector 36"B23; selector 36"BIS; selector 36"B32 and then to port 30"BO and back to the A port of director 20ι. The A port of director 20" ι is connected through selector 36"B3i and through selector 36"B24 to selector section 37"4 and the back to the A port of selector 20" i. If the user wishes to reduce the number of disk drives coupled to 15 director 20" ι from 18 to 12 with the director 20"' being coupled to the other 12 disk drives, such a configuration is shown in FIG. 5F. Thus, the output of selector 36"BI remains coupled to its input port A (as indicated by the arrows 50), the output of selector 36"BS remains coupled to its A port, the output of selector 36"Bi5 switches to its B port, the output of selector 36"i6 switches to its A port, 0 the output of selector 36"23 switches to its A port, the output of selector 36"B24 switches to its B port, the output of selector 36"B3i remains at its A port, and the output of selector 36"B32 remains at its B port. Thus, the A port of director 201 coupled to port 30"BI is coupled through selector 36"BI to the input of selector section 37"ι. The output of selector section 37"ι then passes successively through: the selector 36"BS; selector section 37"2; selector 36"BI5; selector 36"B32 and then to port 30"BO and back to the A port of director 20' . The A port of director 20" ι connected through selector 36"B3i is coupled through selector 36"B3i then through selector 36"B23; selector 5 36BI 6; selector section 37"3, then through selector 36"B24, selector section 37"4 and the back to the A port of selector 20" ι. If the user wishes to reduce the number of disk drives coupled to director 20ι from 12 to 6 with the director 20" ι being coupled to the other 18 disk drives, such a configuration is shown in FIG. 5G. Thus, the output of selector 10 36"BI remains coupled to its input port A (as indicated by the arrows 50), the output of selector 36"BS is switched to its B port, the output of selector 36"BIS is switched to its B port, the output of selector 36"i6 is switched to its B port, the output of selector 36"23 remains at its A port, the output of selector 36"B24 remains at its B port, the output of selector 36"B3i remains at its A port, and the 15 output of selector 36"B32 is switched to its A port. Thus, the A port of director 20ι coupled to port 30"BI is coupled through selector 36"BI to the input of selector section 37"ι. The output of selector section 37" i then passes through selector 36"B32 and then to port 30"BO and back to the A port of director 20ι. The A port of director 20"ι connected through 0 selector 36"B3i is coupled through selector 36"B3i then through successively through selector 36"B23; selector 36BI S, selector section 372, selector 36BI6, selector section 37"3. selector 36B24, to selector section 37"3, then through selector 36"B24 to selector section 37"4 and the back to the A port of selector 20" ι. Other embodiments are within the spirit and scope of the appended claims. What is claimed is:

Claims: 1. A data storage system, comprising: (a) a bank of disk drives; (b) a host computer; (c) an interface for coupling data between the host computer and the bank of disk drives through the interface, such interface comprising: (i) a plurality of busses; (ii) a redundant fibre channel network coupled between the plurality of busses and disk drives, such network comprising: (A) a pair of directors for controlling flow of data to and from the disk drives through a first and a second fibre channel. respectively; (B) a first fibre channel port by-pass selector section, comprising: (1 ) an input/output port coupled to a first one of the directors; (2) a plurality of output/input ports connected to a first set of the disk drives through a first plurality of fibre channel links; and (3) wherein the first fibre channel port by-pass selector section is adapted to couple the first one of the directors serially to one, or ones, of the plurality of disk drives in the first set thereof through the first fibre channel selectively in accordance with a control signal, such first fibre channel comprising one, or more, of the first plurality of fibre channel links; and (C) a second fibre channel port by-pass selector section, comprising: (1 ) an input/output port coupled to a second one of the directors; (2) a plurality of output/ports connected between a second set of the plurality of disk drives through a second plurality of fibre channel links; and (3) wherein the second fibre channel port by-pass selector section is adapted to couple the second one of the directors serially to one, or ones, of the plurality of disk drives in the second set thereof through the second fibre channel selectively in accordance with the control signal, such second fibre channel comprising one, or more, of the second plurality of fibre channel links. 2. The system recited in claim 1 wherein: each one of the pair of directors has a pair of input/output ports; each one of the first and second port by-pass sections has a pair of output/input ports; and wherein a first one of the pair of directors has: a first one of the input/output ports thereof coupled to a first one of the pair of the output/input ports of the first fibre channel port by-pass section; and, a second one of the input output ports thereof coupled to a first one of the pair of output/input ports of the second fibre channel port by-pass section; and wherein a second one of the pair of directors has: a first one of the input/output ports thereof coupled to a second one of the output/input ports of the first fibre channel port by-pass section; and, a second one of the input/output ports thereof coupled to the second one of the pair of output/input ports of the second fibre channel port by-pass section. 3. A data storage system, comprising: (a) a bank of disk drives; (b) a host computer; (c) an interface for coupling data between the host computer and the bank of disk drives through the interface, such interface comprising: (i) a plurality of busses; (ii) a redundant fibre channel network coupled between the plurality of busses and disk drives, such network comprising: (A) a pair of directors for controlling flow of data to and from the disk drives through a first and a second fibre channel, respectively, each one of the directors having a pair of ports; (B) a first fibre channel port by-pass selector section, comprising: ( 1 ) a pair of input/output ports coupled to a first one of the pair of ports of a first one of the pair of directors; (2) a plurality of output/input ports connected to a first set of the disk drives through a first plurality of fibre channel links; and (3) wherein the first fibre channel port by-pass selector section is adapted to couple the first one of the directors serially to one, or ones, of the plurality of disk drives in the first set thereof through the first fibre channel selectively in accordance with a control signal, such first fibre channel comprising one, or more, of the first plurality of fibre channel links; and (C) a second fibre channel port by-pass selector section, comprising: (1 ) a pair of input/output port coupled to a second one of the pair of ports of the second one of the pair of directors; (2) a plurality of output ports connected between a second set of the plurality of disk drives through a second plurality of fibre channel links; and (3) wherein the second fibre channel port by-pass selector section is adapted to couple the second one of the directors serially to one, or ones, of the plurality of disk drives in the second set thereof through the second fibre channel selectively in accordance with the control signal, such second fibre channel comprising one, or more, of the second plurality of fibre channel links. 4. The system recited in claim 3 wherein: each one of the first and second port by-pass sections has a pair of port by-passes, a first one of the port by-passes being connected to a first one of the pair of output/input ports of such one of the port by-pass sections and a second one of the port by-passes being connected to a second one of the pair of output/input ports of such one of the port by-pass sections; and wherein the first one of the port by-passes is connected to a first one of the ports of the disk drives in the set of disk drives connected thereto and the second one of the port by-passes is connected to a second one of the ports of the set of disk drives connected thereto. 5. A data storage system, comprising: (a) a bank of disk drives, each one having of the disk drives having a pair of ports; (b) a host computer; (c) an interface for coupling data between the host computer and the bank of disk drives through the interface, such interface comprising: (i) a plurality of busses; (ii) a redundant fibre channel network coupled between the plurality of busses and disk drives, such network comprising: (A) a pair of directors for controlling flow of data to and from the disk drives through a first and a second fibre channel, respectively; (B) a first fibre channel port by-pass selector section, comprising: (1) an input/output port coupled to a first one of the directors; (2) a plurality of output/input ports connected between a first one of the ports of the plurality of disk drives through a first plurality of fibre channel links; and (3) wherein the first fibre channel port by-pass selector section is adapted to couple the first one of the directors serially to one, or ones, of the first ports of the plurality of disk drives through the first fibre channel selectively in accordance with a control signal, such first fibre channel comprising one, or more, of the first plurality of fibre channel links; and (C) a second fibre channel port by-pass selector section, comprising: (1) an input/output port coupled to a second one of the directors; (2) a plurality of output/ports connected between a second one of the pair of ports of the plurality of disk drives through a second plurality of fibre channel links; and (3) wherein the second fibre channel port bypass selector section is adapted to couple the second one of the directors serially to one, or ones, of the second ports of the plurality of disk drives through the second fibre channel selectively in accordance with the control signal, such second fibre channel comprising one, or more, of the second plurality of fibre channel links. 6. The system recited in claim 5 wherein: each one of the pair of directors has a pair of input/output ports; each one of the first and second port by-pass sections has a pair of output/input ports; and wherein a first one of the pair of directors has: a first one of the input/output ports thereof coupled to a first one of the pair of the output/input ports of the first fibre channel port by-pass section; and. a second one of the input/output ports thereof coupled to a first one of the pair of output/input ports of the second fibre channel port by-pass section; and wherein a second one of the pair of directors has: a first one of the input output ports thereof coupled to a second one of the output/input ports of the first fibre channel port by-pass section; and, a second one of the input/output ports thereof coupled to the second one of the pair of output/input ports of the second fibre channel port by-pass section. 7. The system recited in claim 6 wherein the first fibre channel port by-pass selector section is coupled to a first set of the bank of disk drives and the second fibre channel port by-pass selector section is coupled to a different set of the bank of disk drives. 8. A data storage system, comprising: (a) a plurality of disk drives, each one having a pair of ports; (b) a pair of directors for controlling flow of data to and from the disk drives; (c) a fibre channel port selector section comprising: (i) a plurality of first ports connected between a first one of the ports of the plurality of disk drives through a first plurality of fibre channel links; and (ii) a plurality of second ports connected between a second one of the pair of ports of the plurality of disk drives through a second plurality of fibre channel links; (iv) a third port coupled to a first one of the pair of directors; (v) a fourth port coupled to a second one of the pair of directors; and (vi) wherein the fibre channel port selector section is adapted to: couple the first one of the directors serially to one, or ones, of the first ports of the plurality of disk drives through a first fibre channel selectively in accordance with a control signal, such first fibre channel comprising one, or more, of the first plurality of fibre channel links; and, couple the second one of the directors serially to one, or ones, of the second ports of the plurality of disk drives through a second fibre channel selectively in accordance with the control signal, such second fibre channel comprising one, or more, of the second plurality of fibre channel links. 9. A data storage system, comprising: (a) a first and a second set of disk drives, each one of the disk drives having a pair of ports; (b) a pair of directors for controlling flow of data to and from the disk drives, each one of the directors having a pair of ports; (c) a first fibre channel port by-pass, comprising: an input/output port coupled to a first one of the pair of ports of a first one of the pair of directors; a plurality of output/input ports connected between a first one of the ports of the disk drives of the first set of disk drives through a first plurality of fibre channel links; and wherein the first fibre channel port by-pass selector is adapted to couple the first one of the ports of the first one of the pair of directors serially to one, or ones, of the first ports of the first plurality of disk drives through a first fibre channel selectively in accordance with a control signal, such first fibre channel comprising one, or more, of the first plurality of fibre channel links; and (d) a second fibre channel port by-pass, comprising: an input/output port coupled to a first one of the pair of ports of a second one of the pair of directors; a plurality of output/ports serially connected between a second one of the pair of ports of the first set of disk drives through a second plurality of fibre channel links; and wherein the second fibre channel port by-pass selector section is adapted to couple the first one of the pair of ports of the second one of the pair of directors serially to one, or ones, of the second ports of the first plurality of disk drives through a second fibre channel selectively in accordance with the control signal, such second fibre channel comprising one, or more, of the second plurality of fibre channel links; (d) a third fibre channel port by-pass, comprising: an input/output port coupled to a second one of the pair of ports of the first one of the pair of directors; a plurality of output/input ports serially connected between a first one of the ports of a second one of the plurality of disk drives through a third plurality of fibre channel links; and wherein the third fibre channel port by-pass selector is adapted to couple the second one of the ports of the first one of the pair of directors serially to a selected one, or ones, of the third ports of the second set of disk drives through a third fibre channel, such third fibre channel comprising one, or more, of the third plurality of fibre channel links; and (d) a fourth fibre channel port by-pass, comprising: an input/output port coupled to second one of the pair of ports of the second one of the pair of directors; a plurality of output/ports serially connected between a second one of the pair of output/input ports of the second plurality of disk drives through a fourth plurality of fibre channel links; and wherein the fourth fibre channel port by-pass selector section is adapted to couple the second one of the pair of ports of the second one of the pair of directors serially to a selected one, or ones, of the second ports of the second set of disk drives through a fourth fibre channel, such fourth fibre channel comprising one, or more, of the fourth plurality of fibre channel links. 10. A data storage system, comprising: (a) a first and second plurality of disk drives, each one of the disk drives having a pair of ports; (b) a pair of directors for controlling flow of data to and from the first and second plurality of disk drives; (c) a first fibre channel port selector section comprising: (i) a plurality of first ports connected between a first one of the ports of the first plurality of disk drives through a first plurality of fibre channel links; and (ii) a plurality of second ports connected between a second one of the pair of ports of the first plurality of disk drives through a second plurality of fibre channel links; (iv) a third port coupled to a first port of a first one of the pair of directors; (v) a fourth port coupled to a first port of a second one of the pair of directors; and (vi) wherein the first fibre channel port selector section is adapted to: couple the first one of the directors serially to one, or ones, of the first ports of the first plurality of disk drives through a first fibre channel selectively in accordance with a control signal, such first fibre channel comprising one, or more, of the first plurality of fibre channel links; and, couple the second one of the directors serially to one, or ones, of the second ports of the first plurality of disk drives through a second fibre channel selectively in accordance with the control signal, such second fibre channel comprising one, or more, of the second plurality of fibre channel links; (d) a second fibre channel port selector section comprising: (i) a plurality of first ports connected between a first one of the ports of the second plurality of disk drives through a third plurality of fibre channel links; and (ii) a plurality of second ports connected between a second one of the pair of ports of the second plurality of disk drives through a fourth plurality of fibre channel links; (iv) a third port coupled a second port of the first one of the pair of directors; (v) a fourth port coupled to a second port of the second one of the pair of directors; and (vi) wherein the second fibre channel port selector section is adapted to couple the first one of the directors serially to one, or ones, of the third ports of the second plurality of disk drives through a first fibre channel selectively in accordance with the control signal, such third fibre channel comprising one, or more, of the third plurality of fibre channel links; and, couple the second one of the directors serially to one, or ones, of the second ports of the second plurality of disk drives through a fourth fibre channel, such fourth fibre channel comprising one, or more, of the fourth plurality of fibre channel links. 1 1. A data storage system, comprising: (a) a first and a second plurality of disk drives, each one having a pair of ports; (b) a first fibre channel port by-pass selector section, comprising: an first input/output port; a plurality of first output/input ports serially connected between a first one of the ports of the first plurality of disk drives through a first plurality of fibre channel links; and wherein the first fibre channel port by-pass selector section is adapted to couple the first input/output port serially to a one, or ones, of the first ports of the plurality of disk drives through a first fibre channel selectively in accordance with a control signal, such first fibre channel comprising one, or more, of the first plurality of fibre channel links; and (b) a second fibre channel port by-pass selector section, comprising: an second input/output port; a plurality of second output/ports serially connected between a second one of the pair of ports of the second plurality of disk drives through a second plurality of fibre channel links; and wherein the second fibre channel port by-pass selector section is adapted to couple the second one of the directors serially to one, or ones, of the second ports of the plurality of disk drives through a second fibre channel selectively in accordance with the control signal, such second fibre channel comprising one, or more, of the second plurality of fibre channel links.

Inventors: LINNELL THOMAS EARL, MULVEY CHRISTOPHER J, TUCCIO WILLIAM R, LINNELL, THOMAS, EARL, MULVEY, CHRISTOPHER, J., TUCCIO, WILLIAM, R.
Applicants: EMC CORP, LINNELL THOMAS EARL, MULVEY CHRISTOPHER J, TUCCIO WILLIAM R, EMC CORPORATION, LINNELL, THOMAS, EARL, MULVEY, CHRISTOPHER, J., TUCCIO, WILLIAM, R.
Application year: 2000
Main classification: G06F11
IPC codes: G06F3, G06F11, G06F13, H04L12