`(10) Patent N0.:
`US 6,425,035 B2
`
`Hoese et al.
`(45) Date of Patent:
`*Jul. 23, 2002
`
`U5006425035B2
`
`(54) STORAGE ROUTER AND METHOD FOR
`PROVIDING VIRTUAL LOCAL STORAGE
`
`(75)
`
`Inventors: Geofi'rey B. Hoese, Austin; Jefiry T.
`-
`Russell’ ClbOIO’ bOth 0f TX (Us)
`.
`.
`.
`(73) ASSlgnee‘ Crossroads Syswms’ Inc'>AuStm> TX
`(Us)
`.
`.
`.
`.
`SubJectfo any dlsclalmeritheterm 0fth15
`patent is extended or adjusted under 35
`U.S.C. 154(b) by 0 days.
`
`*
`
`.
`) Nome:
`
`(
`
`This patent is subject to a terminal dis-
`claimer.
`
`(21) Appl. N0.: 09/965,335
`
`(22)
`
`Filed:
`
`Sep. 27, 2001
`
`Related US. Application Data
`
`(63) Continuation of application No. 09/354,682, filed on Jul. 15,
`1999, which is a continuation of application No. 09/001,799,
`filed on Dec. 31, 1997, now Pat. No. 5,941,972.
`Int. Cl.7 ................................................ G06F 13/00
`(51)
`(52) U.S. CI.
`........................... 710/129; 710/128; 710/8;
`710/36; 710/105
`(58) Field of Search ............................... 710/1—5, 8—13,
`710/36—38> 105> 100—101> 126—131; 711/100>
`112> 113; 714/42
`
`(56)
`
`References Clted
`US. PATENT DOCUMENTS
`
`.............. 710/129
`5/1998 Llorens et al.
`5,748,924 A *
`
`6/1998 Judd et al‘ """""
`710/37
`5,768,623 A *
`................ 710/5
`9/1998 Nogales et al.
`5,809,328 A *
`9/1998 Lui et al.
`....................... 714/6
`5,812,754 A *
`5,835,496 A * 11/1998 Yeung et al.
`............... 370/514
`5,848,251 A * 12/1998 Lomelino et al.
`........... 710/129
`
`8/1999 Ofer ............................ 714/42
`5,935,260 A *
`8/1999 Hoese et al.
`......
`710/129
`5,941,972 A *
`
`9/1999 Boggs et al.
`.....
`370/399
`5,959,994 A *
`31/3888 3%in
`ERIE?
`gag: :
`er e a .
`...........
`,
`,
`
`5/2000 Keaveny et al.
`.....
`710/129
`6,065,087 A *
`6/2000 Krishnan etal.
`..... 380/49
`6,075,863 A *
`8/2000 Oferetal.
`...........
`711/112
`6,098,149 A *
`9/2000 Akers ...............
`370/249
`6,118,766 A *
`6,148,004 A * 11/2000 Nelson etal.
`370/463
`6,185,203 B1 *
`2/2001 Berman ...............
`370/351
`6,209,023 B1 *
`3/2001 Dimitroff et al.
`709/211
`6,230,218 B1 *
`5/2001 Caspers et al.
`........... 710/20
`6,341,315 B1 *
`1/2002 Arroyo et al.
`.......
`709/230
`6,343,324 B1 *
`1/2002 Hubis et al.
`................ 709/229
`
`
`
`
`
`* cited by examiner
`
`.
`.
`.
`.
`Przmary Exammer—Christopher B. Shin
`(74) Attorney, Agent, or Firm—Gray Cary Ware &
`Friedrich LLP
`
`(57)
`
`ABSTRACT
`
`.
`A storage router (56) and storage network (50) pr0v1de
`virtual local storage on remote SCSI storage devices (60, 62,
`:14)?" Fiber Channel devices A plurality 0f Fiber Chalmel
`ev1ces, such as workstations (58), are connected to a Fiber
`Channel transport medium (52), and a plurality Of SCSI
`storage devices (60, 62, 64) are connected to a SCSI bus
`transport medium (54). The storage router (56) interfaces
`between the Fibre Channel transport medium (52) and the
`SCSI bus transport medium (54). The storage router (56)
`maps between the workstations (58) and the SCSI storage
`devices (60, 62, 64) and implements access controls for
`storage space on the SCSI storage devices (60, 62, 64). The
`storage router (56) then allows access from the workstations
`(53) to the SCSI storage devices (60, 62, 64) using native
`low level, block protocol in accordance with the mapping
`and the access controls
`‘
`
`14 Claims, 2 Drawing Sheets
`
`58
`
`WORKSTATION
`A
`
`58
`
`
`
`
`
`
`
`
`
`58
`
`
`
`
`WORKSTATION WORKSTATION
`B
`C
`
`
` STORAGE DEVICE
`
`
`
`
`
`STORAGE DEVICE
`
`WORKSTATION
`A STORAGE
`
`WORKSTATION
`
`
`
`FIBRE
`CHANNEL
`
`52
`
`WORKSTATION
`D
`
`WORKSTATION
`E
`
`58
`
`58
`
`
`
`
`
`
`
`
`I B STORAGE
`
`WORKSTATION
`C STORAGE
`
`WORKSTATION
`D STORAGE
`
`MANAGEMENT
`S ATION
`
`6
`
`T 7
`
`
`
`STORAGE DEVICE
`WORKSTATION
`E STORAGE
`
`74
`
`
`50
`
`64
`
`CROSSROADS EXHIBIT 2025
`
`Cisco Systems et al. v. Crossroads Systems, Inc.
`
`IPR2014-01544
`
`1of14
`
`1 of 14
`
`
`
`US. Patent
`
`Jul. 23, 2002
`
`Sheet 1 0f2
`
`US 6,425,035 B2
`
`12
`
`12
`
`12
`
`1O
`
`WORKSTATION
`
`
`
`WORKSTATION
`
`___
`
`FIG.
`
`7
`
`
`
`58
`
`58
`
`58
`
`6O
`
`WORKSTATION WORKSTATION WORKSTATION
`A
`B
`G
`
`56
`
`STORAGE DEVICE
`
`65
`
`62
`
`_—
`
`STORAGE
`
`SCSI
`BUS
`
`STORAGE DEVICE
`WORKSTATION
`
`FIBRE
`CHANNEL
`WORKSTATION
`
`D
`
`52
`WORKSTATION
`
`E
`
`,
`g
`L
`
`58
`
`58
`
`, "I A STORAGE I
`ROUTER
`}
`54
`WORKSTATION
`MANAGEMENT -. B STORAGE
`-I C STORAGE
`
`WORKSTATION
`
`WORKSTATION
`D STORAGE
`
`STATION
`
`76
`
`55
`
`53
`
`7O
`
`72
`
`56.
`
`FIG. 3
`
`54
`
`.-
`
`STORAGE DEVICE
`
`
`WORKSTATION
`
`ESTORAGE
`
`
`74
`
`20f14
`
`2 of 14
`
`
`
`US. Patent
`
`Jul. 23, 2002
`
`Sheet 2 0f 2
`
`US 6,425,035 B2
`
`mm
`
`mom
`
`
`
`$.30
`E28
`
`fizz/:16mam:
`
`EdoEzoo
`
`mamZmAIV.vm
`
`50995
`
`mm
`
`<29
`
`mofimmhz
`
`<29cmon
`
`mofimEE
`
`585$
`
`mm
`
`ow.AIVdzz§omam:
`
`momSEnSm
`
`ozfimmooma
`
`$38520058
`
`m
`
`mom—Rama
`
`
`
`
`
`5.5528dzz<Io”Em:
`
`3of14
`
`3 of 14
`
`
`
`
`
`
`
`
`
`
`
`US 6,425,035 B2
`
`1
`STORAGE ROUTER AND METHOD FOR
`PROVIDING VIRTUAL LOCAL STORAGE
`
`RELATED APPLICATIONS
`
`This application claims the benefit of the filing date of
`US. patent application Ser. No. 09/354,682 by inventors
`Geoffrey B. Hoese and Jeffry T. Russell, entitled “Storage
`Router and Method for Providing Virtual Local Storage”
`filed on Jul. 15, 1999, which is a continuation of US. patent
`application Ser. No. 091001,799, filed on Dec. 31, 1997,
`now US. Pat. No. 5.941,972, and hereby incorporates these
`applications by reference in their entireties as if they had
`been fully set forth herein.
`TECHNICAL FIELD OF THE INVENTION
`
`to network storage
`This invention relates in general
`devices, and more particularly to a storage router and
`method for providing virtual local storage on remote SCSI
`storage devices to Fiber Channel devices.
`BACKGROUND OF THE INVENTION
`
`Typical storage transport mediums provide for a relatively
`small number of devices to be attached over relatively short
`distances. One such transport medium is a Small Computer
`System Interface (SCSI) protocol, the structure and opera-
`tion of which is generally well known as is described, for
`example, in the SCSI-1, SCSI-2 and SCSI-3 specifications.
`High speed serial interconnects provide enhanced capability
`to attach a large number of high speed devices to a common
`storage transport medium over large distances. One such
`serial interconnect is Fibre Channel, the structure and opera-
`tion of which is described, for example, in Fiber Channel
`Physical and Signaling Interface (FC-PH), ANSI X3230
`Fiber Channel Arbitrated Loop (FC-AL), and ANSI X3272
`Fiber Channel Private Loop Direct Attach (FC-PLDA).
`Conventional computing devices, such as computer
`workstations, generally access storage locally or through
`network interconnects. Local storage typically consists of a
`disk drive,
`tape drive, CD-ROM drive or other storage
`device contained within, or locally connected to the work-
`station. The workstation provides a file system structure, that
`includes security controls, with access to the local storage
`device through native low level, block protocols. These
`protocols map directly to the mechanisms used by the
`storage device and consist of data requests without security
`controls. Network interconnects typically provide access for
`a large number of computing devices to data storage on a
`remote network server. The remote network server provides
`file system structure, access control, and other miscellaneous
`capabilities that include the network interface. Access to
`data through the network server is through network proto-
`cols that the server must translate into low level requests to
`the storage device. A workstation with access to the server
`storage must translate its file system protocols into network
`protocols that are used to communicate with the server.
`Consequently, from the perspective of a workstation, or
`other computing device, seeking to access such server data,
`the access is much slower than access to data on a local
`
`storage device.
`SUMMARY OF THE INVENTION
`
`In accordance with the present invention, a storage router
`and method for providing virtual local storage on remote
`SCSI storage devices to Fiber Channel devices are disclosed
`that provide advantages over conventional network storage
`devices and methods.
`
`5
`
`10
`
`15
`
`20
`
`25
`
`30
`
`35
`
`40
`
`45
`
`50
`
`55
`
`60
`
`65
`
`2
`invention, a
`According to one aspect of the present
`storage router and storage network provide virtual local
`storage on remote SCSI storage devices to Fiber Channel
`devices. A plurality of Fiber Channel devices, such as
`workstations, are connected to a Fiber Channel transport
`medium, and a plurality of SCSI storage devices are con-
`nected to a SCSI bus transport medium. The storage router
`interfaces between the Fiber Channel transport medium and
`the SCSI bus transport medium. The storage router maps
`between the workstations and the SCSI storage devices and
`implements access controls for storage space on the SCSI
`storage devices. The storage router then allows access from
`the workstations to the SCSI storage devices using native
`low level, block protocol in accordance with the mapping
`and the access controls.
`
`According to another aspect of the present invention,
`virtual
`local storage on remote SCSI storage devices is
`provided to Fiber Channel devices. A Fibre Channel trans-
`port medium and a SCSI bus transport medium are inter-
`faced with. A configuration is maintained for SCSI storage
`devices connected to the SCSI bus transport medium. The
`configuration maps between Fiber Channel devices and the
`SCSI storage devices and implements access controls for
`storage space on the SCSI storage devices. Access is then
`allowed from Fiber Channel initiator devices to SCSI stor-
`age devices using native low level, block protocol in accor-
`dance with the configuration.
`A technical advantage of the present invention is the
`ability to centralize local storage for networked workstations
`without any cost of speed or overhead. Each workstation
`access its virtual local storage as if it work locally con-
`nected. Further,
`the centralized storage devices can be
`located in a significantly remote position even in excess of
`ten kilometers as defined by Fibre Channel standards.
`Another technical advantage of the present invention is
`the ability to centrally control and administer storage space
`for connected users without limiting the speed with which
`the users can access local data. In addition, global access to
`data, backups, virus scanning and redundancy can be more
`easily accomplished by centrally located storage devices.
`A further technical advantage of the present invention is
`providing support for SCSI storage devices as local storage
`for Fiber Channel hosts. In addition, the present invention
`helps to provide extended capabilities for Fiber Channel and
`for management of storage subsystems.
`BRIEF DESCRIPTION OF THE DRAWINGS
`
`A more complete understanding of the present invention
`and the advantages thereof may be acquired by referring to
`the following description taken in conjunction with the
`accompanying drawings, in which like reference numbers
`indicate like features, and wherein:
`FIG. 1 is a block diagram of a conventional network that
`provides storage through a network server;
`FIG. 2 is a block diagram of one embodiment of a storage
`network with a storage router that provides global access
`and routing;
`FIG. 3 is a block diagram of one embodiment of a storage
`network with a storage router that provides virtual local
`storage;
`FIG. 4 is a block diagram of one embodiment of the
`storage router of FIG. 3; and
`FIG. 5 is a block diagram of one embodiment of data flow
`within the storage router of FIG. 4.
`DETAILED DESCRIPTION OF THE
`INVENTION
`
`FIG. 1 is a block diagram of a conventional network,
`indicated generally at 10, that provides access to storage
`
`4of14
`
`4 of 14
`
`
`
`US 6,425,035 B2
`
`3
`through a network server. As shown, network 10 includes a
`plurality of workstations 12 interconnected with a network
`server 14 via a network transport medium 16. Each work-
`station 12 can generally comprise a processor, memory,
`input/output devices, storage devices and a network adapter
`as well as other common computer components. Network
`server 14 uses a SCSI bus 18 as a storage transport medium
`to interconnect with a plurality of storage devices 20 (tape
`drives, disk drives, etc.). In the embodiment of FIG. 1,
`network transport medium 16 is an network connection and
`storage devices 20 comprise hard disk drives, although there
`are numerous alternate transport mediums and storage
`devices.
`
`In network 10, each workstation 12 has access to its local
`storage device as well as network access to data on storage
`devices 20. The access to a local storage device is typically
`through native low level, block protocols. On the other hand,
`access by a workstation 12 to storage devices 20 requires the
`participation of network server 14 which implements a file
`system and transfers data to workstations 12 only through
`high level file system protocols. Only network server 14
`communicates with storage devices 20 via native low level,
`block protocols. Consequently, the network access by work-
`stations 12 through network server 14 is slow with respect
`to their access to local storage. In network 10, it can Also be
`a logistical problem to centrally manage and administer
`local data distributed across an organization,
`including
`accomplishing tasks such as backups, virus scanning and
`redundancy.
`FIG. 2 is a block diagram of one embodiment of a storage
`network, indicated generally at 30, with a storage router that
`provides global access and routing. This environment is
`significantly different from that of FIG. 1 in that there is no
`network server involved. In FIG. 2, a Fiber Channel high
`speed serial transport 32 interconnects a plurality of work-
`stations 36 and storage devices 38. A SCSI bus storage
`transport medium interconnects workstations 40 and storage
`devices 42. A storage router 44 then serves to interconnect
`these mediums and provide devices on either medium
`global, transparent access to devices on the other medium.
`Storage router 44 routes requests from initiator devices on
`one medium to target devices on the other medium and
`routes data between the target and the initiator. Storage
`router 44 can allow initiators and targets to be on either side.
`In this manner, storage router 44 enhances the functionality
`of Fiber Channel 32 by providing access, for example, to
`legacy SCSI storage devices on SCSI bus 34. In the embodi-
`ment of FIG. 2, the operation of storage router 44 can be
`managed by a management station 46 connected to the
`storage router via a direct serial connection.
`In storage network 30, any workstation 36 or workstation
`40 can access any storage device 38 or storage device 42
`through native low level, block protocols, and vice versa.
`This functionality is enabled by storage router 44 which
`routes requests and data as a generic transport between Fiber
`Channel 32 and SCSI bus 34. Storage router 44 uses tables
`to map devices from one medium to the other and distributes
`requests and data across Fiber Channel 32 and SCSI bus 34
`without any security access controls. Although this exten-
`sion of the high speed serial interconnect provided by Fiber
`Channel 32 is beneficial, it is desirable to provide security
`controls in addition to extended access to storage devices
`through a native low level, block protocol.
`FIG. 3 is a block diagram of one embodiment of a storage
`network, indicated generally at 50, with a storage router that
`provides virtual local storage. Similar to that of FIG. 2,
`storage network 50 includes a Fiber Channel high speed
`
`5
`
`10
`
`15
`
`20
`
`25
`
`30
`
`35
`
`40
`
`45
`
`50
`
`55
`
`60
`
`65
`
`4
`serial interconnect 52 and a SCSI bus 54 bridged by a
`storage router 56. Storage router 56 of FIG. 3 provides for
`a large number of workstations 58 to be interconnected on
`a common storage transport and to access common storage
`devices 60, 62 and 64 through native low level, block
`protocols.
`According to the present invention, storage router 56 has
`enhanced functionality to implement security controls and
`routing such that each workstation 58 can have access to a
`specific subset of the overall data stored in storage devices
`60, 62 and 64. This specific subset of data has the appearance
`and characteristics of local storage and is referred to herein
`as virtual local storage. Storage router 56 allows the con-
`figuration and modification of the storage allocated to each
`attached workstation 58 through the use of mapping tables
`or other mapping techniques.
`As shown in FIG. 3, for example, storage device 60 can
`be configured to provide global data 65 which can be
`accessed by all workstations 58. Storage device 62 can be
`configured to provide partitioned subsets 66, 68, 70 and 72,
`where each partition is allocated to one of the workstations
`58 (workstations A, B, C and D). These subsets 66, 68, 70
`and 72 can only be accessed by the associated workstation
`58 and appear to the associated workstation 58 as local
`storage accessed using native low level, block protocols.
`Similarly, storage device 64 can be allocated as storage for
`the remaining workstation 58 (workstation E).
`Storage router 56 combines access control with routing
`such that each workstation 58 has controlled access to only
`the specified partition of storage device 62 which forms
`virtual local storage for the workstation 58. This access
`control allows security control for the specified data parti-
`tions. Storage router 56 allows this allocation of storage
`devices 60, 62 and 64 to be managed by a management
`station 76. Management station 76 can connect directly to
`storage router 56 via a direct connection or, alternately, can
`interface with storage router 56 through either Fiber Channel
`52 or SCSI bus 54. In the latter case, management station 76
`can be a workstation or other computing device with special
`rights such that storage router 56 allows access to mapping
`tables and shows storage devices 60, 62 and 64 as they exist
`physically rather than as they have been allocated.
`The environment of FIG. 3 extends the concept of a single
`workstation having locally connected storage devices to a
`storage network 50 in which workstations 58 are provided
`virtual local storage in a manner transparent to workstations
`58. Storage router 56 provides centralized control of what
`each workstation 58 sees as its local drive, as well as what
`data it sees as global data accessible by other workstations
`58. Consequently,
`the storage space considered by the
`workstation 58 to be its local storage is actually a partition
`(i.e., logical storage definition) of a physically remote stor-
`age device 60, 62 or 64 connected through storage router 56.
`This means that similar requests from workstations 58 for
`access to their local storage devices produce different
`accesses to the storage space on storage devices 60, 62 and
`64. Further, no access from a workstation 58 is allowed to
`the virtual local storage of another workstation 58.
`The collective storage provided by storage devices 60, 62
`and 64 can have blocks allocated by programming means
`within storage router 56. To accomplish this function, stor-
`age router 56 can include routing tables and security controls
`that define storage allocation for each workstation 58. The
`advantages provided by implementing virtual local storage
`in centralized storage devices include the ability to do
`collective backups and other collective administrative func-
`
`50f14
`
`5 of 14
`
`
`
`US 6,425,035 B2
`
`5
`tions more easily. This is accomplished without limiting the
`performance of workstations 58 because storage access
`involves native low level, block protocols and does not
`involve the overhead of high level protocols and file systems
`required by network servers.
`FIG. 4 is a block diagram of one embodiment of storage
`router 56 of FIG. 3. Storage router 56 can comprise a Fiber
`Channel controller 80 that interfaces with Fiber Channel 52
`and a SCSI controller 82 that interfaces with SCSI bus 54.
`
`A buffer 84 provides memory work space and is connected
`to both Fiber Channel controller 80 and to SCSI controller
`
`82. A supervisor unit 86 is connected to Fiber Channel
`controller 80, SCSI controller 82 and buffer 84. Supervisor
`unit 86 comprises a microprocessor for controlling operation
`of storage router 56 and to handle mapping and security
`access for requests between Fiber Channel 52 and SCSI bus
`54.
`
`FIG. 5 is a block diagram of one embodiment of data flow
`within storage router 56 of FIG. 4. As shown, data from
`Fiber Channel 52 is processed by a Fibre Channel (FC)
`protocol unit 88 and placed in a FIFO queue 90. A direct
`memory access (DMA) interface 92 then takes data out of
`FIFO queue 90 and places it in buffer 84.
`Supervisor unit 86 processes the data in buffer 84 as
`represented by supervisor processing 93. This processing
`involves mapping between Fiber Channel 52 and SCSI bus
`54 and applying access controls and routing functions. A
`DMA interface 94 then pulls data from buffer 84 and places
`it into a buffer 96. A SCSI protocol unit 98 pulls data from
`buffer 96 and communicates the data on SCSI bus 54. Data
`flow in the reverse direction, from SCSI bus 54 to Fiber
`Channel 52, is accomplished in a reverse manner.
`The storage router of the present invention is a bridge
`device that connects a Fiber Channel link directly to a SCSI
`bus and enables the exchange of SCSI command set infor-
`mation between application clients on SCSI bus devices and
`the Fiber Channel links. Further, the storage router applies
`access controls such that virtual local storage can be estab-
`lished in remote SCSI storage devices for workstations on
`the Fiber Channel link. In one embodiment,
`the storage
`router provides a connection for Fiber Channel links running
`the SCSI Fiber Channel Protocol (FCP) to legacy SCSI
`devices attached to a SCSI bus. The Fiber Channel topology
`is typically an Arbitrated Loop (FCiAL).
`In part, the storage router enables a migration path to
`Fiber Channel based, serial SCSI networks by providing
`connectivity for legacy SCSI bus devices. The storage router
`can be attached to a Fiber Channel Arbitrated Loop and a
`SCSI bus to support a number of SCSI devices. Using
`configuration settings, the storage router can make the SCSI
`bus devices available on the Fiber Channel network as FCP
`
`logical units. Once the configuration is defined, operation of
`the storage router is transparent to application clients. In this
`manner, the storage router can form an integral part of the
`migration to new Fibre Channel based networks while
`providing a means to continue using legacy SCSI devices.
`In one implementation (not shown), the storage router can
`be a rack mount or free standing device with an internal
`power supply. The storage router can have a Fibre Channel
`and SCSI port, and a standard, detachable power cord can be
`used, the FC connector can be a copper DB9 connector, and
`the SCSI connector can be a 68-pin type. Additional modular
`jacks can be provided for a serial port and a 802.3 10BaseT
`port, i.e. twisted pair Ethernet, for management access. The
`SCSI port of the storage router an support SCSI direct and
`sequential access target devices and can support SCSI
`
`10
`
`15
`
`20
`
`25
`
`30
`
`35
`
`40
`
`45
`
`50
`
`55
`
`60
`
`65
`
`6
`initiators, as well. The Fiber Channel port can interface to
`SCSI-3 FCP enabled devices and initiators.
`
`To accomplish its functionality, one implementation of
`the storage router uses: a Fiber Channel interface based on
`the HEWLETT-PACKARD TACHYON HPFC-5000 con-
`troller and a GLM media interface; an Intel 80960RP
`processor,
`incorporating independent data and program
`memory spaces, and associated logic required to implement
`a stand alone processing system; and a serial port for debug
`and system configuration. Further,
`this implementation
`includes a SCSI interface supporting Fast-20 based on the
`SYMBIOS 53C8xx series SCSI controllers, and an operat-
`ing system based upon the WIND RIVERS SYSTEMS
`VXWORKS or
`IXWORKS kernel, as determined. by
`design. In addition, the storage router includes software as
`required to control basic functions of the various elements,
`and to provide appropriate translations between the FC and
`SCSI protocols.
`The storage router has various modes of operation that are
`possible between FC and SCSI target and initiator combi-
`nations. These modes are: FC Initiator to SCSI Target; SCSI
`Initiator to FC Target; SCSI Initiator to SCSI Target; and FC
`Initiator to FC Target. The first two modes can be supported
`concurrently in a single storage router device are discussed
`briefly below. The third mode can involve two storage router
`devices back to back and can serve primarily as a device to
`extend the physical distance beyond that possible via a direct
`SCSI connection. The last mode can be used to carry FC
`protocols encapsulated on other transmission technologies
`(e.g. ATM, SONET), or to act as a bridge between two FC
`loops (e.g. as a two port fabric).
`The FC Initiator to SCSI Target mode provides for the
`basic configuration of a server using Fiber Channel
`to
`communicate with SCSI targets. This mode requires that a
`host system have an FC attached device and associated
`device drivers and software to generate SCSI-3 FCP
`requests. This system acts as an initiator using the storage
`router to communicate with SCSI target devices. The SCSI
`devices supported can include SCSI-2 compliant direct or
`sequential access (disk or tape) devices. The storage router
`serves to translate command and status information and
`
`transfer data between SCSI-3 FCP and SCSI-2, allowing the
`use of standard SCSI-2 devices in a Fibre Channel environ-
`ment.
`
`The SCSI Initiator to FC Target mode provides for the
`configuration of a server using SCSI-2 to communicate with
`Fiber Channel targets. This mode requires that a host system
`has a SCSI-2 interface and driver software to control SCSI-2
`
`target devices. The storage router will connect to the SCSI-2
`bus and respond as a target to multiple target IDs. Configu-
`ration information is required to identify the target IDs to
`which the bridge will respond on the SCSI-2 bus. The
`storage router then translates the SCSI-2 requests to SCSI-3
`FCP requests, allowing the use of FC devices with a SCSI
`host system. This will also allow features such as a tape
`device acting as an initiator on the SCSI bus to provide full
`support for this type of SCSI device.
`In general, user configuration of the storage router will be
`needed to support various functional modes of operation.
`Configuration can be modified, for example, through a serial
`port or through an Ethernet port via SNMP (simple network
`management protocol) or a Telnet session. Specifically,
`SNMP manageability can be provided via an 802.3 Ethernet
`interface. This can provide for configuration changes as well
`as providing statistics and error information. Configuration
`can also be performed via TELNET or RS-232 interfaces
`
`60f14
`
`6 of 14
`
`
`
`US 6,425,035 B2
`
`7
`with menu driven command interfaces. Configuration infor-
`mation can be stored in a segment of flash memory and can
`be retained across resets and power off cycles. Password
`protection can also be provided.
`In the first two modes of operation, addressing informa-
`tion is needed to map from FC addressing to SCSI address-
`ing and vice versa. This can be ‘hard’ configuration data, due
`to the need for address information to be maintained across
`initialization and partial reconfigurations of the Fiber Chan-
`nel address space. In an arbitrated loop configuration, user
`configured addresses will be needed for ALiPAs in order to
`insure that known addresses are provided between loop
`reconfigurations.
`With respect to addressing, FCP and SCSI 2 systems
`employ different methods of addressing target devices.
`Additionally, the inclusion of a storage router means that a
`method of translating device IDs needs to be implemented.
`In addition, the storage router can respond to commands
`without passing the commands through to the opposite
`interface. This can be implemented to allow all generic FCP
`and SCSI commands to pass through the storage router to
`address attached devices, but allow for configuration and
`diagnostics to be performed directly on the storage router
`through the FC and SCSI interfaces.
`Management commands are those intended to be pro-
`cessed by the storage router controller directly. This may
`include diagnostic, mode, and log commands as well as
`other vendor-specific commands. These commands can be
`received and processed by both the FCP and SCSI interfaces,
`but are not typically bridged to the opposite interface. These
`commands may also have side effects on the operation of the
`storage router, and cause other storage router operations to
`change or terminate.
`Aprimary method of addressing management commands
`though the FCP and SCSI interfaces can be through periph-
`eral device type addressing. For example, the storage router
`can respond to all operations addressed to logical unit
`(LUN) zero as a controller device. Commands that
`the
`storage router will support can include INQUIRY as well as
`vendor-specific management commands. These are to be
`generally consistent with SCC standard commands.
`The SCSI bus is capable of establishing bus connections
`between targets. These targets may internally address logical
`units. Thus, the prioritized addressing scheme used by SCSI
`subsystems can be represented as
`follows:
`BUS:TARGET:LOGICAL UNIT. The BUS identification is
`
`intrinsic in the configuration, as a SCSI initiator is attached
`to only one-bus. Target addressing is handled by bus arbi-
`tration from information provided to the arbitrating device.
`Target addresses are assigned to SCSI devices directly,
`though some means of configuration, such as a hardware
`jumper, switch setting, or device specific software configu-
`ration. As such, the SCSI protocol provides only logical unit
`addressing within the Identify message. Bus and target
`information is implied by the established connection.
`Fiber Channel devices within a fabric are addressed by a
`unique port identifier. This identifier is assigned to a port
`during certain well-defined states of the FC protocol. Indi-
`vidual ports are allowed to arbitrate for a known, user
`defined address. If such an address is not provided, or if
`arbitration for a particular user address fails,
`the port is
`assigned a unique address by the FC protocol. This address
`is generally not guaranteed to be unique between instances.
`Various scenarios exist where the AL-PA of a device will
`
`change, either after power cycle or loop reconfiguration.
`The FC protocol also provides a logical unit address field
`within command structures to provide addressing to devices
`
`10
`
`15
`
`20
`
`25
`
`30
`
`35
`
`40
`
`45
`
`50
`
`55
`
`60
`
`65
`
`8
`internal to a port. The FCPiCMD payload specifies an eight
`byte LUN field. Subsequent identification of the exchange
`between devices is provided by the FQXID (Fully Qualified
`Exchange ID).
`FC ports can be required to have specific addresses
`assigned. Although basic functionality is not dependent on
`this, changes in the loop configuration could result in disk
`targets changing identifiers with the potential risk of data
`corruption or
`loss. This configuration can be
`straightforward, and can consist of providing the device a
`loop-unique ID (ALiPA) in the range of “01h” to “EFh.”
`Storage routers could be shipped with a default value with
`the assumption that most configurations will be using single
`storage routers and no other devices requesting the present
`ID. This would provide a minimum amount of initial con-
`figuration to the system administrator. Alternately, storage
`routers could be defaulted to assume any address so that
`configurations requiring multiple storage routers on a loop
`would not require that the administrator assign a unique ID
`to the additional storage routers.
`Address translation is needed where commands are issued
`
`in the cases FC Initiator to SCSI Target and SCSI Initiator
`to FC Target. Target responses are qualified by the FQXID
`and will retain the translation acquired at the beginning of
`the exchange. This prevents configuration changes occurring
`during the course of execution of a command from causing
`data or state information to be inadvertently misdirected.
`Configuration can be required in cases of SCSI Initiator to
`FC Target, as discovery may not effectively allow for FCP
`targets to consistently be found. This is due to an FC
`arbitrated loop supporting addressing of a larger number of
`devices than a SCSI bus and the possibility of FC devices
`changing their AL-PA due to device insertion or other loop
`initialization.
`
`the translation to BUS:TAR-
`In the direct method,
`GET:LUN of the SCSI address information will be direct.
`
`That is, the values represented in the FCP LUN field will
`directly map to the values in effect on the SCSI bus. This
`provides a clean translation and does not require SCSI bus
`discovery. It also allows devices to be dynamically added to
`the SCSI bus without modifying the address map. It may not
`allow for complete discovery by FCP initiator devices, as
`gaps betw