Movatterモバイル変換


[0]ホーム

URL:


US7463646B2 - Method and system for fibre channel arbitrated loop acceleration - Google Patents

Method and system for fibre channel arbitrated loop acceleration
Download PDF

Info

Publication number
US7463646B2
US7463646B2US10/889,267US88926704AUS7463646B2US 7463646 B2US7463646 B2US 7463646B2US 88926704 AUS88926704 AUS 88926704AUS 7463646 B2US7463646 B2US 7463646B2
Authority
US
United States
Prior art keywords
fibre channel
loop
primitive
devices
arbitration
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related, expires
Application number
US10/889,267
Other versions
US20050013318A1 (en
Inventor
John M Fike
Patricia E Hareski
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Cavium International
Marvell Asia Pte Ltd
Original Assignee
QLogic LLC
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by QLogic LLCfiledCriticalQLogic LLC
Priority to US10/889,267priorityCriticalpatent/US7463646B2/en
Assigned to QLOGIC CORPORATIONreassignmentQLOGIC CORPORATIONASSIGNMENT OF ASSIGNORS INTEREST (SEE DOCUMENT FOR DETAILS).Assignors: FIKE, JOHN M., HARESKI, PATRICIA E.
Publication of US20050013318A1publicationCriticalpatent/US20050013318A1/en
Application grantedgrantedCritical
Publication of US7463646B2publicationCriticalpatent/US7463646B2/en
Assigned to JPMORGAN CHASE BANK, N.A., AS COLLATERAL AGENTreassignmentJPMORGAN CHASE BANK, N.A., AS COLLATERAL AGENTSECURITY AGREEMENTAssignors: QLOGIC CORPORATION
Assigned to Cavium, Inc.reassignmentCavium, Inc.MERGER (SEE DOCUMENT FOR DETAILS).Assignors: QLOGIC CORPORATION
Assigned to CAVIUM NETWORKS LLC, CAVIUM, INC, QLOGIC CORPORATIONreassignmentCAVIUM NETWORKS LLCRELEASE BY SECURED PARTY (SEE DOCUMENT FOR DETAILS).Assignors: JP MORGAN CHASE BANK, N.A., AS COLLATERAL AGENT
Assigned to CAVIUM, LLCreassignmentCAVIUM, LLCCHANGE OF NAME (SEE DOCUMENT FOR DETAILS).Assignors: Cavium, Inc.
Assigned to CAVIUM INTERNATIONALreassignmentCAVIUM INTERNATIONALASSIGNMENT OF ASSIGNORS INTEREST (SEE DOCUMENT FOR DETAILS).Assignors: CAVIUM, LLC
Assigned to MARVELL ASIA PTE, LTD.reassignmentMARVELL ASIA PTE, LTD.ASSIGNMENT OF ASSIGNORS INTEREST (SEE DOCUMENT FOR DETAILS).Assignors: CAVIUM INTERNATIONAL
Expired - Fee Relatedlegal-statusCriticalCurrent
Adjusted expirationlegal-statusCritical

Links

Images

Classifications

Definitions

Landscapes

Abstract

A fibre channel switch element with an acceleration device that connects plural fibre channel devices in an arbitrated loop and monitors frames sent during a loop initialization process is provided. The acceleration device creates an AL_PA table selected by each fibre channel device, wherein the AL_PA table is used for port selection; and during an arbitration process sends a benign primitive to non-arbitrating devices. The acceleration device includes, a global arbitration module, a state machine module, and a matrix for connecting plural fibre channel devices.

Description

CROSS-REFERENCE TO RELATED APPLICATIONS
This application claims priority under 35 USC Section 119(e), to the following provisional patent applications:
    • Ser. No. 60/487,876 filed on Jul. 16, 2003;
    • Ser. No. 60/487,887 filed on Jul. 16, 2003;
    • Ser. No. 60/487,875 filed on Jul. 16, 2003;
    • Ser. No. 60/490,747 filed on Jul. 29, 2003;
    • Ser. No. 60/487,667 filed on Jul. 16, 2003;
    • Ser. No. 60/487,665 filed on Jul. 16, 2003;
    • Ser. No. 60/492,346 filed on Aug. 4, 2003; and
    • Ser. No. 60/487,873 filed on Jul. 16, 2003.
BACKGROUND
The disclosures of the foregoing applications are incorporated herein by reference in their entirety.
1. Field of the Invention
The present invention relates to networks, and more particularly, to reducing latency in a fibre channel arbitrated loop environment.
2. Background of the Invention
Fibre channel is a set of American National Standard Institute (ANSI) standards, which provides a serial transmission protocol for storage and network protocols such as HIPPI, SCSI, IP, ATM and others. Fibre channel provides an input/output interface to meet the requirements of both channel and network users.
Fibre channel supports three different topologies: point-to-point, arbitrated loop and fibre channel fabric. The point-to-point topology attaches two devices directly. The arbitrated loop topology attaches devices in a loop. The fibre channel fabric topology attaches host systems directly to a fabric, which are then connected to multiple devices. The fibre channel fabric topology allows several media types to be interconnected.
Fibre channel is a closed system that relies on multiple ports to exchange information on attributes and characteristics to determine if the ports can operate together. If the ports can work together, they define the criteria under which they communicate.
In fibre channel, a path is established between two nodes where the path's primary task is to transport data from one point to another at high speed with low latency, performing only simple error detection in hardware.
FC-AL is one fibre channel standard (incorporated herein by reference in its entirety) that establishes the protocols for an arbitrated loop topology.
In a Fibre Channel Arbitrated Loop (FC-AL) implementation of each device on the loop must have the intelligence to process incoming data in accordance with FC-AL rules. Latency occurs due to every device in the loop, as data is processed. This latency is accumulated around the loop. Even when a device is only required to pass data to the next device, it still has latency before passing on the data, because the device must continuously process data for changes in state. The accumulated latency slows down data transfers in a heavily populated loop.
The traditional FC-AL implementation has a transmitter of one device connected to the receiver of the next device and so on until the transmitter of the last device is connected to the receiver of the first device, creating a loop, as shown inFIG. 2.
In the traditional FC-Al implementation, all fibre channel devices (“FCDs”), to properly follow the FC-AL protocol, need to implement a LPSM. The LPSM has the following states: initializing, open-initiate, monitoring, arbitrating, arbitration won, open, opened, transmitted close, received close, transfer, and old-port (optional) before the FC-AL standard.
Under the FC-AL standard, there can be a maximum of 127 devices on a loop. Every device on the loop must be operating correctly for the loop to be operational. Because of this, many implementations include a bypass element that allows loop connectivity to be maintained when a particular device is not available for proper operation. Standard bypass elements are not intelligent devices and are not controlled based on data being transmitted but on device functionality or availability. These bypass elements do not add latency, but add jitter.
Each connected device must follow the FC-AL standard by decoding primitives, maintaining a Loop Port State Machine (LPSM), obtaining AL_PA's through the LIP process, performing arbitration, and sending frames in a manner that is consistent with the standard.
The following introduces some FC-AL process steps and how these processes add delay/latency:
LIP Process: In the traditional FC-AL implementation, the LIP process is started when one or more of the devices on the loop start sending LIPs to the next device in the loop. After all devices have seen the LIP, a temporary master is selected and this master sends out various frames that each device uses to select an AL_PA. The frames are sent in a serial fashion and the master must get the first frame back before sending the next type of frame. There are several trips around the loop before the LIP process is completed. Each device acquires an AL_PA and only needs to know its own AL_PA to be FC-AL compliant. Thus when all the frames return to the master, all the participating devices have their AL_PA's. The AL_PA's are used for identification and priority evaluation in the arbitration.
Each device in the loop takes time to process incoming data and deciding (per FC-AL standard) what to send out to its transmitter. Thus each device adds to latency and slows data processing. Two major points of latency are the time delay to create (and close) the loop circuit and the time delay for frames to be passed back and forth. To create a loop circuit in a traditional implementation the device must arbitrate for access and then open the device.
Arbitration process: In the traditional FC-AL implementation, the device desiring access to the loop does arbitration. In order to arbitrate and win arbitration, the device must send arbitration primitives and receive the arbitration primitive back.
In the simplest case, only one device wants access. The device that wants access to the loop sends its arbitration primitive to the next device in the loop and after some processing the next device passes the arbitration primitive onto the next device and so on until the primitive returns to the originating device. Therefore, for the FCD to know it has won arbitration there is an entire loop delay, even if it is the only device that wants access to the loop.
Open process: In the traditional FC-AL implementation to complete a loop circuit, the winning device needs to open the device it wants to communicate with. To open the other device and know that it is open (using zero BB_Credit) the device sends an open primitive and receives back an R_RDY primitive. The open primitive (OPN) is sent by the winning device to the next device, which processes it and sends it on to the next device and so on until the destination device receives the open primitive. Then the destination FCD sends a R_RDY primitive to the next device it is connected to and that device processes the primitive and sends it to the next device and so on, until the R_RDY primitive reaches the winning FCD. Thus to open the loop circuit and to know it is open, causes a delay around the loop.
“Open Replicate” process: In the traditional FC-AL implementation, to complete the loop circuit a winning FCD can send an open replicate primitive(s). When the winning FCD does a broadcast open replicate then every FCD will replicate the incoming frames and send them out to the next device. When the winning FCD does a specific open replicate then it sends out a number of open replicate primitives to inform the FCDs (that it wants to communicate) to replicate the frames on the incoming port and also send the frame on to the next device. There are no R_RDY primitives sent for an open replicate primitive, so frames can quickly follow the open primitive(s), but there is still delay to pass the frames around the entire loop.
Close process: In the traditional implementation to close the loop circuit, active devices must send a close primitive to the other device. An entire loop delay occurs when one of the devices sends a close primitive that is received by the other device before it sends its close primitive. Once the first device receives the second close primitive then the loop circuit is closed. Per the FC-AL standard, it is not required for the close primitives to be sent in a serial fashion, hence, the close primitives can be traveling the loop at the same time affecting the overall latency.
The following summarizes, the problems with traditional FC-AL implementation:
Problem 1: Large latency in loop communication implementations.
Problem 2: Separate devices to bypass non-working devices add cost to overall system and add jitter to the communication network.
Problem 3: Since only a device needs to know its AL_PA in a conventional standard system, there is no required “system” for determining the AL_PAs used in a loop.
Problem 4: Conventional methodology does not support global arbitration.
Problem 5: All devices on a loop currently need to support a full LPSM, and hence can be expensive.
Problem 6: The open replicate feature of the FC-AL has a long latency on frames sent because all frames need to return to the source device to be removed from the loop.
Therefore, what is required is a process and system that can accelerate frame processing and minimize latency in fibre channel arbitrated loop topology.
SUMMARY OF THE INVENTION
In one aspect of the present invention, a fibre channel switch element is provided. The switch element includes, an acceleration device that connects plural fibre channel devices in an arbitrated loop and monitors frames sent during a loop initialization process and creates an AL_PA table selected by each fibre channel device, wherein the AL_PA table is used for port selection; and during an arbitration process sends a benign primitive to non-arbitrating devices.
During an open process, the acceleration device connects a fibre channel device that wins arbitration to a destination device so that an open primitive can be sent directly to the destination device. Non-destination devices receive a benign primitive during the open process to maintain proper loop state machine state.
During an open replicate process, the acceleration device after it receives an open replicate primitive creates a spray pattern for all ports with which a fibre channel device intends to communicate.
In yet another aspect of the present invention, an acceleration device used by a fibre channel switch element is provided. The acceleration device includes, a global arbitration module, a state machine module, and a matrix for connecting plural fibre channel devices; wherein the acceleration device connects plural fibre channel devices in an arbitrated loop and monitors frames sent during a loop initialization process and creates an AL_PA table selected by each fibre channel device, wherein the AL_PA table is used for port selection; and during an arbitration process sends a benign primitive to non-arbitrating devices.
In yet another aspect of the present invention, a method for accelerating traffic in a fibre channel arbitrated loop topology having a fibre channel switch element with an acceleration device is provided. The method includes, monitoring fibre channel frames during a loop initialization process; creating an AL_PA table for fibre channel devices connected in the arbitrated loop and using the AL_PA table for identifying ports. The method also includes, sending benign primitives to non-arbitrating devices during an arbitration process; connecting a fibre channel device that sends an OPEN primitive to a destination port; and sending a benign primitive to non-destination device connected in the arbitrated loop.
The method also includes creating a spray pattern after receiving an open replicate primitive from a fibre channel device; and sending frames to plural destination ports at the same time.
This brief summary has been provided so that the nature of the invention may be understood quickly. A more complete understanding of the invention can be obtained by reference to the following detailed description of the preferred embodiments thereof concerning the attached drawings.
BRIEF DESCRIPTION OF THE DRAWINGS
The foregoing features and other features of the present invention will now be described with reference to the drawings of a preferred embodiment. In the drawings, the same components have the same reference numerals. The illustrated embodiment is intended to illustrate, but not to limit the invention. The drawings include the following Figures:
FIG. 1 shows a block diagram of a storage area network;
FIGS. 2 and 3 show configurations that use the adaptive aspects of the present invention;
FIG. 4 shows a block diagram of a switch element, according to one aspect of the present invention;
FIGS. 5A and 5B (jointly referred to asFIG. 5) show a block diagram of a transmission protocol engine, according to one aspect of the present invention;
FIGS. 6A and 6B show block diagrams for a diagnostic module and a SES module, according to one aspect of the present invention;
FIG. 7 shows a block diagram of acceleration device, according to one aspect of the present invention;
FIG. 8 shows an example of how plural fibre channel switch elements may be used to couple 127 fibre channel devices, according to one aspect of the present invention; and
FIGS. 9A and 9B show a state machine for the acceleration device, according to one aspect of the present invention.
DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS
Definitions:
The following definitions are provided as they are typically (but not exclusively) used in the fibre channel environment, implementing the various adaptive aspects of the present invention.
“Active device”: The source device (winning arbitrator) or the destination device.
“Active port”: A port with an active device attached to it.
“AL_PA”: Arbitrated loop physical address.
“BB_Credit”: Buffer-to-Buffer Credit
“FCD”: Fibre Channel device
“FC-AL”: Fibre channel arbitrated loop process described in FC-AL standard.
“Fibre channel ANSI Standard”: The standard (incorporated herein by reference in its entirety) describes the physical interface, transmission and signaling protocol of a high performance serial link for support of other high level protocols associated with IPI, SCSI, IP, ATM and others.
“FC-1”: Fibre channel transmission protocol, which includes serial encoding, decoding and error control.
“FC-2”: Fibre channel signaling protocol that includes frame structure and byte sequences.
“FC-3”: Defines a set of fibre channel services that are common across plural ports of a node.
“FC-4”: Provides mapping between lower levels of fibre channel, IPI and SCSI command sets, HIPPI data framing, IP and other upper level protocols.
“LIP”: Loop initialization protocol primitive.
“L_Port”: A port that contains Arbitrated Loop functions associated with the Arbitrated Loop topology.
“SES”: SCSI Enclosure Services.
“TPE”: Transmission Protocol Engine, a controller that operates at the FC-1 level.
To facilitate an understanding of the preferred embodiment, the general architecture and operation of a fibre channel system will be described. The specific architecture and operation of the preferred embodiment will then be described with reference to the general architecture of the fibre channel system.
FIG. 1 is a block diagram of afibre channel system100 implementing the methods and systems in accordance with the adaptive aspects of the present invention.System100 includes plural devices that are interconnected. Each device includes one or more ports, classified as node ports (N_Ports), fabric ports (F_Ports), and expansion ports (E_Ports). Node ports may be located in a node device,e.g. server103,disk array105 andstorage device104. Fabric ports are located in fabric devices such asswitch101 and102. Arbitratedloop106 may be operationally coupled to switch101 using arbitrated loop ports (FL_Ports).
The devices ofFIG. 1 are operationally coupled via “links” or “paths”. A path may be established between two N_ports, e.g. betweenserver103 andstorage104. A packet-switched path may be established using multiple links, e.g. an N-Port inserver103 may establish a path withdisk array105 throughswitch102.
In one aspect of the present invention, an acceleration method and system is provided that maintains FC-AL operation while reducing the overall latency as compared to standard FC-AL implementations.
FIG. 4 is a block diagram of an 18-port ASIC FC element400A (also referred to as system307) according to one aspect of the present invention. FC element400A provides various functionality in an FC-AL environment, including without limitation, FC element400A operates as a loop controller and loop switch usingswitch matrix408, in accordance with the FC-AL standard.
FC element307 of the present invention is presently implemented as a single CMOS ASIC, and for this reason the term “FC element” and ASIC are used interchangeably to refer to the preferred embodiments in this specification. AlthoughFIG. 4 shows 18 ports, the present invention is not limited to any particular number of ports.
System307 provides a set of port control functions, status indications, and statistics counters for monitoring the health of the loop and attached devices, diagnosing faults, and recovering from errors.
ASIC307 has 18 ports where 16 ports are shown as numeral405 while ahost port404 and cascadeport404A are shown separately for convenience only. These ports are generic to common Fibre Channel port types, for example, L_Ports.
For illustration purposes only, all ports are drawn on the same side ofASIC307 inFIG. 4. However, the ports may be located on any side ofASIC307. This does not imply any difference in port or ASIC design. Actual physical layout of the ports will depend on the physical layout of the ASIC.
Each port has transmit and receive connections to switchmatrix408 and includes transmitprotocol engine407 and a serial/deserializer406. Frames enter/leave the link405A andSERDES406 converts data into 10-bit parallel data to fibre channel characters.
Switch matrix408 dynamically establishes a connection for loop traffic.Switch matrix408 includes a global arbiter (hence switchmatrix408 is also referred to as SGA408) that provides lower latency and improved diagnostic capabilities while maintaining full Fibre Channel Arbitrated Loop (FC-AL) compliance.
Switch matrix408 is also referred to as anacceleration device408 throughout this specification. All transmitters and receivers of all devices are connected to theacceleration device408, as shown inFIG. 3. Any device that is not operating properly is isolated, which means thatacceleration device408 also acts as a virtual bypass element for each FCD. Each FCD connected to theacceleration device408 operates in the same fashion as in the traditional implementation, per the FC-AL standard.
FIG. 7 shows a block diagram ofacceleration device408 and it includes an AL_PA table408C, astate machine408D, aglobal arbiter408B, acontroller408F, anddata switching paths408A. Devices are coupled viamatrix408E throughconnections408A.State machine408D states are described belo v with respect toFIG. 9.
Global arbiter408B selects the arbitration winner from all arbitrating channels according to FC-AL rules. For switch channels that request arbitration at a given time, the AL_PA is looked up in table408C to validate an arbitration request. This is because a switch channel may be repeating an arbitration primitive that it received and may not be requesting arbitration for itself.
Arbiter408B has a validation and comparison section (not shown). The validation section includes combinatorial logic that validates an arbitration request (“cARBDet”) for a given switch channel. The comparison section includes comparators and multiplexers that output the highest arbitrating switch channel.
Controller408F has three modes of operation, loop mode, spray mode and connection mode. In the loop mode, an isolated switch channel receives data from a previous un-isolated switch channel, however data from the isolated switch channel (or port) is not sent to the loop.
In the spray mode, again an isolated switch channel receives spray elements from a previous un-isolated switch channel, however data from the isolated switch channel (or port) is not sent to the loop.Controller408F is in spray mode when there is no active traffic for the loop and data is sprayed from a host port to the transmit sections of other switch channels.
In the connection mode, isolated switch channels receive ARB(F0), however data from the isolated switch channel (or port) is not sent to the loop.Controller408F is in connection mode when there is active traffic for the loop.
Switch matrix408 provides a quasi-direct architecture in the form of a buffer-less Switch Matrix.Switch matrix408 includes data multiplexers that provide a path to each port. In one aspect, twenty multiplexers may be used. In one aspect, data is 16 bits wide plus the internal “K” control signal and two parity bits.
At power-up,SGA408 is setup in a flow-through configuration, which means all ports send what was received onhost port404. When a valid LIP sequence occurs,SGA408 configures the switch to a complete loop configuration for the address selection process. During normal data transfer on the loop,SGA408 reconfigures the switch data-path to connect the active ports in what appears as a smaller loop, which lowers the latency but still emulates FC-AL functionality to all entities on the loop.
During loop configuration,SGA408 configures the switch data-path to include a snooping port that walks through each port during the LIP physical address assignment to track each port's assigned arbitrated loop physical address (AL_PA). This snooping process is called the ‘LIP walk’. When the LIP process is done, the firmware records the “port to AL_PA” map in an internal table built inSGA408. During normal data transfer mode,SGA408 monitors arbitration requests, open requests, and close primitives to determine which ports have traffic that must be forwarded. The ports that have traffic for the loop provide the necessary information to create the connection points for the switch data-path. The inactive ports are provided the primitive ARB(F0).
SGA408 selects the arbitration winner, from all the arbitrating ports, according to Fibre Channel Arbitrated Loop (FC-AL) rules. For ports, which detect arbitration, the AL_PA is looked up in a Port Address Table to see if the arbitration request is valid for that port. Due to the unique purpose of port0 (Host port404),port0 never needs to win arbitration, but can detect that the arbitration winner is outside a range, or with ARB(F0)/IDLE show that devices outsidesystem307 are not arbitrating at a given time.
For arbitration detect onhost port404 to be considered valid the “ArbPS0” cannot match an AL_PA in the internal Port Address Table, which means that the source address is not in aparticular system307. For ports seeking a valid arbitration, the AL_PA determines which arbitrating device has highest priority; and typically, the port with the lowest AL_PA value is always selected as the winner.
SGA408 creates a direct ioop connection between source and destination devices. This connection methodology avoids the delay associated with data having to pass from one member of the loop to the next until the data has completed traversing the loop. In one aspect, the following formula evaluates performance of a loop connection:
Latency (word times)=n*(2*8)+disk+host=16n+12
Where n is the number ofsystems307 that comprise the FC loop, 6 is the latency of the disk drive that is part of the loop connection and 6 is typically the latency of the attached host.
System307 includes plural I2C (I2C standard compliant) interfaces412-413 that allowsystem307 to couple to plural I2C ports each having a master and slave capability.
System307 also includes a general-purpose input/output interface (“GPIO”)415. This allows information fromsystem307 to be analyzed by any device that can useGPIO415. Control/Status information419 can be sent or received throughmodule415.Timer module411 is provided to control various timer operations.
System307 also includes aSPI module414 that is used for parallel to serial and serial to parallel transfer betweenprocessor400 firmware andflash memory421 in the standard Little Endian format.
System307 also includes a Universal Asynchronous Receiver/Transmitter (“UART”)interface418 that converts serial data to parallel data (for example, from a peripheral device modem or data set) and vice-versa (data received from processor400) complying industry standard requirements.
System307 can also process tachometer inputs (received from a fan, not shown) using module417.Processor400 can read the tachometer input via a tachometer rate register and status register (not shown).
System307 provides pulse width modulator (“PWM”) outputs viamodule416.Processor400 can program plural outputs.
System307 also includes twoframe manager modules402 and403 that are similar in structure.Processor400 can access runtime code frommemory420 and input/output instructions from read onlymemory409.
Module402 (also referred to as the “diag module402”) is a diagnostic module used to transfer diagnostic information between a FC-AL and the firmware ofsystem307.
Diag module402 is functionally coupled to storage media (via ports405) via dedicated pathsoutside switch matrix408 so that its connection does not disrupt the overall loop.Diag module402 is used for AL_PA capture during LIP propagation, drive(s) (coupled to ports405) diagnostics and frame capture.
Module403 (also referred to as “SES module403”) complies with the SES standard and is functionally coupled tohost port404 and its output is routed throughswitch matrix408.SES module403 is used for in-band management services using the standard SES protocol.
When not bypassed,modules402 and403 receive primitives, primitive sequences, and frames. Based on the received traffic and the requests from firmware,modules402 and403 maintain loop port state machine (LPSM) (615,FIG. 6B) in the correct state per the FC-AL standard specification, and also maintain the current fill word.
Based on acurrent LPSM615 state (OPEN or OPENED State),modules402 and403 receive frames, pass the frame onto a buffer, and alert firmware that a frame has been received.Module402 and403 follow FC-AL buffer to buffer credit requirements.
Firmware may requestmodules402 and403 to automatically append SOF and EOF to the outgoing frame, and to automatically calculate the outgoing frame's CRC usingCRC generator612.Modules402 and403 can receive any class of frames and firmware may request to send eitherfibre channel Class 2 orClass 3 frames.
Port Management Interface (PMIF)401 allowsprocessor400 access to various port level registers,SerDes modules406 and TPE Management Interfaces509 (FIG. 5).PMIF401 contains a set of global control and status registers, receive and transmit test buffers, and three Serial Control Interface (SCIF) controllers (not shown) for accessingSerDes406 registers.
FIGS. 6A and 6B show block diagrams formodule402 and403. It is noteworthy that the structure inFIGS. 6A and 6B can be used for bothmodules402 and403.FIG. 6B is the internal data path of aFC port601 coupled tomodules402/403.
Modules402 and403 interface withprocessor400 via aninterface606. Incoming frames tomodules402 and403 are received from port601 (which could be any of theports404,404A and405) and stored inframe buffer607. Outgoing frames are also stored inframe buffer607.Modules402 and403 have a receive side memory buffer based on “first-in, first-out” principle RX_FIFO, (“FIFO”)603 and transmitside TX_FIFO FIFO604 interfacing with aRandom access FIFO605. A receiveside FIFO603 signals to firmware when incoming frame(s) are received. A transmitside FIFO604 signals to hardware when outgoing frames(s) are ready for transmission. Aframe buffer607 is used to stage outgoing frames and to store incoming frames.Modules602 and602A are used to manage frame traffic fromport601 tobuffers603 and604, respectively.
Modules402 and403 use various general-purpose registers608 for managing control, status and timing information.
Based on the AL_PA,modules402 and403 monitor received frames and if a frame is received for a particular module (402 or403), it will pass the frame onto a receive buffer and alert the firmware that a frame has been received via a receiveside FIFO603.Modules402 and403 follow the FC-AL buffer-to-buffer creditrequirements using module616.Modules402 and403 transmit primitives and frames based on FC-AL rules. On request,modules402 and403 may automatically generate SOF and EOF during frame transmission (using module613). On request,modules402 and403 may also automatically calculate the Cyclic Redundancy Code (CRC) during frame transmission, usingmodule612.
Overall transmission control is performed bymodule611 that receives data, SOF, EOF and CRC. Transmit Buffer control is performed bymodule614. Aword assembler module609 is used to assemble incoming words, and a fill word module610 receives data “words” before sending it tomodule611 for transmission.
FIG. 5 shows a block diagram of the transmission protocol engine (“TPE”)407.TPE407 maintains plural counters/registers to interact with drives coupled toports405. EachTPE407 interacts withprocessor400 viaport manager interface401.
Each Fibre Channel port of system400A includes a TPE module for interfacing withSerDes406.TPE407 handles most of the FC-1 layer (transmission protocol) functions, including 10B receive character alignment, 8B/10B encode/decode, 32-bit receive word synchronization, and elasticity buffer management for word re-timing and TX/RX frequency compensation.
SerDes modules406 handle the FC-1 serialization and de-serialization functions. EachSerDes406 port consists of an independent transmit and receive node.
TPE407 has a receive module500 (that operates in the Rx clock domain503) and a transmitmodule501.Data502 is received fromSERDES406 and decoded by decodingmodule504. Aparity generator module505 generates parity data.SGA interface508 allows TPE to communicate with switch514 orswitch matrix408. Interface508 (via multiplexer507) receives information from areceiver module506 that receives decoded data fromdecode module504 and parity data frommodule505.
Management interfaces module509 interfaces withprocessor400. Transmitmodule501 includes aparity checker511, atransmitter510 and anencoder512 that encodes 8-bit data into 10-bit data. 10-bit transmit data is sent to SERDES406 viamultiplexer513.
Port Management Interface (PMIF)401 allowsprocessor400 access to various port level registers,SerDes modules406 and TPE Management Interfaces509 (MIFs).PMIF401 contains a set of global control and status registers, receive and transmit test buffers, and three Serial Control Interface (SCIF) controllers (not shown) for accessingSerDes406 registers.
The following provides a description of various standard FC-AL processes that are accelerated, using system307 (and acceleration device408), according to one aspect of the present invention (also referred to as the “accelerated implementation”).
LIP Process: During the LIP process,acceleration device408 connects all devices as if they were in a loop and the devices behave as in the traditional implementation. In one aspect of the present invention,acceleration device408 monitors the frames sent during the LIP process to determine the AL_PAs selected by each FCD. A FC-AL compliant entity advances through the loop to intercept the initialization frames from each device for processing before passing them on to the next device. This retrieves the AL_PA selected by each device and creates a table for the AL_PAs of the FCDs connected tosystem307. The AL-PA table408C is then used for identification purposes for port selection.
Arbitration process: In the accelerated implementation (i.e. with acceleration device408) when the loop is idle, “host”port404 sends data to all the connected FCDs. When only one device wants access to the loop, theglobal arbiter408B connects “host”port404 to the FCD arbitrating and then connects this FCD back to the “host”port404. The other FCDs receive a benign primitive, so if they desire to access the loop they can start the arbitration process just as they would in a traditional implementation.
Global arbiter408B follows the FC-AL rules for arbitration and changes the winning port if a higher priority port starts arbitrating before any existing arbiter has won arbitration, just as in the traditional implementation.
In the accelerated implementation, only the arbitrating and “host”port404 are connected to the loop. Thus, the delay to retrieve the arbitration primitive (win arbitration) is two re-timing delays, one in theacceleration device408 and the other through the FCD on thehost port404. If the device onhost port404 is the arbitrating device then the delay is one re-timing delay through the acceleration device.
Open process: In the accelerated implementation (i.e. with acceleration device408) when the winning FCD sends out an open primitive, theacceleration device408 connects the destination FCD to the winning FCD, looping throughhost port404, and the open primitive is directly passed to the destination FCD. The destination FCD can then send the R_RDY primitive, which travels through theacceleration device408 and the FCD on thehost port404. The other FCDs receive a benign primitive to maintain the proper LPSM state in those devices. In this case, the latency is three re-timing delays, due to the open primitive, the R_RDY primitive and the delay of the FCD on thehost port404.
If the destination port is upstream of the winning port, there are three re-timing delays, two due to the open primitive and one due to the R_RDY primitive. However, if one of the ports ishost port404, then there is only two re-timing delays through theacceleration device408.
Open replicate process: In the accelerated implementation (i.e. using acceleration device408) to complete the loop circuit, the winning FCD can send an open replicate primitive(s). The winning FCD can do a broadcast open replicate or a specific open replicate and theacceleration device408 responds in a similar manner. When theacceleration device408 sees the open replicate, it creates a spray pattern that includes the FCDs ports that a source (the winning FCD) port wants to communicate with. The frames are sent to all ports at the same time and then returned to the source for removal from the loop, as per the FC-AL standard. Latency is reduced by the frames arriving at all ports at the same time instead of traveling around the entire loop.
Close process: In the accelerated implementation (i.e. using acceleration device408) since only the active devices are connected there is only re-timing andhost port404 delay to close the circuit.
State Machine: In the accelerated implementation (i.e. using acceleration device408), all FCDs connected to theacceleration device408 need a LPSM as in the traditional implementation. However,acceleration device408, only requires a state machine (408D) that describes the state of the loop, not individual loop ports. This simplified state machine is not a part of the current FC-AL standard.FIG. 9 (i.e.FIGS. 9A and 9B) shows a state machine diagram foracceleration device408, according to one aspect of the present invention.
FIG. 9 shows eight basic states forstate machine408D. Table I below describes the basic eight states:
StateDescription
PWRUPThe power up state is thehardware reset
State
0state.TPE 407 uses this time for speed
negotiation, before it allows a valid LIP to
be indicated to theSGA 408. The only way to
exit this state is to have both the Switch
Enable bit set and a valid LIP indication.
The Switch Enable bit is only evaluated in
this state and is set by firmware ofsystem
307.
LOINITThis state is used to put the switch (307) in
State 1the loop configuration and to process LISM
and Lix A frames. The first switch channel to
indicate ARB (F0) during the LISM processing
is the Loop Initialization Master (LIM). The
Lix A frames are snooped at each switch
channel by walking theDiagnostics port 402
through all unisolated switch channels.
Firmware is responsible for advancing the
Diagnostics port 402.
IDLEThis state is used when there is notraffic
State
2on the loop. The switch (307) is set in a
single spray configuration where the source
of the spray is theHost Port 404.
ARBINGThis state is used to connect thehighest
State
3arbitrating switch channel to the loop and
stays here until the switch channel
arbitrating recognizes that it has won
arbitration.
ARB WONThis state is used to wait for anopen
State
4primitive once an arbitrating switch channel
has declared it has won arbitration.
OPENThis state indicates that an OPEN (OPN)
State 5connection exists.
CLEANThis state is used to clear up all
State 6retransmitted closes after Replicated Open.
SNDCLSThis state is used to send a closeprimitive
State
7for a connection switch channel that was
isolated before it sent a Close (CLS)
primitive itself.
WTCLSThis state is used to wait out thecompletion
State
8of a connection where one of the connection
switch channels was isolated.
Table II below shows thevarious State Machine408D transitions, according to one aspect of the present invention:
Current
StateNext StateReason for Transition
PWRUPPWRUPWhen reset occurs, thestate
machine
408D stays in this state
to indicate to theSwitch
Controller
408F that it should be
in default single spray mode. To
leave this state is to have a valid
LIP occur with the Switch Enable
bit set. Loop traffic should NOT be
considered reliable until LIPs
occur.
PWRUPLOINITWhenswitch 307 is enabled and a
valid LIP occurs, thestate machine
408 changes to the loop
initialization state. Loop traffic
at this instance is LIP primitives.
AnyLOINITWhen a valid LIP occurs in any
Statestate, thestate machine 408D
transitions to the loop
initialization state and loop
traffic is LIP primitives.
LOINITLOINITState machine 408D stays in this
state until the LIP process has
completed. The LOINIT state
indicates to theSwitch Controller
408F that it should be in loop
mode. In loop mode, firmware
advancesport 402 for snooping
AL_PA assignments. Loop traffic
consists of LISM and LIxA frames.
LOINITIDLEThis transition occurs when the CLS
primitive for the LIP process is
seen. Only one CLS primitive is
used for the LIP process. Loop
traffic is CLS and idle primitives.
IDLEIDLEWhen none of the switch channels
require active connections to the
loop, thestate machine 408D stays
in the idle state. Loop traffic is
idle and possibly link primitives.
IDLEARBINGWhenever any switch channel
indicates that arbitration
primitive has been seen, thestate
machine
408D changes to the
arbitrating state. TheSwitch
Controller
408F makes the winning
switch channel, according to the
Arbiter module 408B, the source
connection for loop traffic and the
loop traffic is arbitration
primitives.
IDLEOPENWhenever an open primitive has been
seen on a previous source port, the
state machine 408D changes to the
open state. TheSwitch Controller
408F makes the source of the open
primitive to be the current source
and the destination of the open
primitive to be the destination
connection point. Loop traffic is
open and idle primitives.
ARBINGARBINGWhile a winner is being selected,
according to FC-AL protocol a port
receives back it's own arbitration
primitive to win arbitration,
hence, thestate machine 408D stays
in the arbitrating state. The SrcPN
primitive can change during this
state and loop traffic is
arbitration primitives.
ARBINGARBWONWhen the source switch channel
issues an ARB(F0) primitive the
state machine 408D changes to the
arbitration won state. Loop traffic
is arbitration primitives.
ARBINGOPENWhen an open primitive is seen on
the source switch channel, the
state machine 408D changes to the
open state. TheSwitch Controller
408F makes the destination of the
OPN as the destination connection
for the loop. Loop traffic is OPN,
arbitration and idle primitives.
ARBINGIDLEWhen the source switch channel is
isolated or when a close connection
is seen and there are no other
switch channels arbitrating, the
state machine 408D returns to the
idle state.
ARBWONARBWONWaiting for an open primitive from
the source connection, thestate
machine
408D stays in the
arbitration won state.
ARBWONOPENWhen an open primitive is seen on
the source switch channel, the
state machine 408D changes to the
open state. TheSwitch Controller
408F makes the destination of the
OPN as the destination connection
for the loop. Loop traffic is OPN,
arbitration and idle primitives.
ARBWONARBINGWhen a close connection is seen and
there are other switch channels
arbitrating, thestate machine 408D
changes to the arbitrating state.
ARBWONIDLEWhen the source switch channel is
isolated or when a close connection
is seen and there are no other
switch channels arbitrating, the
state machine 408D returns to the
idle state.
OPENOPENWhile there is an open connection,
thestate machine 408D stays in the
open state. Loop traffic is frames,
R_RDYs, idle or arbitration
primitives.
OPENARBINGWhen a close connection is seen and
there are other switch channels
arbitrating and the previous
connection was not a replicate
spray, thestate machine 408D
changes to the arbitrating state.
Loop traffic is arbitration
primitives.
OPENIDLEWhen a close connection is seen and
there are no other switch channels
arbitrating and the previous
connection was not a replicate
spray, thestate machine 408D
changes to the idle state. Loop
traffic is idle primitives.
OPENCLEANWhen a close connection is seen and
the previous connection was a
replicate spray, thestate machine
408D changes to the clean state.
Loop traffic is idle or arbitration
primitives.
OPENSNDCLSWhen one of the switch channels is
isolated and the CLS was not seen
for that connection point, the
state machine 408D changes to the
send close state (“SNDCLS”). Loop
traffic is frames and idle or
arbitration primitives.
OPENWTCLSWhen one of the connection switch
channels is isolated and the close
was seen for that connection point,
thestate machine 408D changes to
the wait close state (“WTCLS”).
Loop traffic is frames and idle or
arbitration primitives.
CLEANCLEANWhile the switch channels that were
part of the replicate spray are
retransmitting the close primitive,
thestate machine 408D stays in the
clean state. Loop traffic is idle
or arbitration primitives.
CLEANARBINGWhen the switch channels that were
part of the replicate spray have
completed retransmitting the close
primitive and there is another
switch channel arbitrating, the
state machine 408D changes to the
arbitrating state. Loop traffic is
arbitration primitives.
CLEANIDLEWhen the switch channels that were
part of the replicate spray have
completed retransmitting the close
primitive and there is no other
switch channel arbitrating, the
state machine 408D changes to the
idle state. Loop traffic is idle
primitives.
CLEANOPENWhen the switch channels that were
part of the replicate spray have
completed retransmitting the close
primitive and there is an open
primitive, thestate machine 408D
changes to the open state. Loop
traffic is open, arbitration or
idle primitives.
SNDCLSSNDCLSUntil the correct phase of
MsHalfWord and cDataEn occur, the
state machine 408D stays in the
send close state. Loop traffic is
close, idle or arbitration
primitives or frames.
SNDCLSWTCLSWhen there is no connection timeout
at a next clock edge on the correct
phase of MsHalfWord and cDataEn,
thestate machine 408D changes to
the wait close state. Loop traffic
is close, idle or arbitration
primitives or frames.
SNDCLSIDLEWhen there is a connection timeout
at the next clock edge on the
correct phase of MsHalfWord and
cDataEn, thestate machine 408D
changes to the idle state. Loop
traffic is close, idle or
arbitration primitives or frames.
WTCLSWTCLSWhile the connection is completing
after one of the connection points
is isolated, thestate machine 408D
stays in the wait close state. Loop
traffic is close, idle or
arbitration primitives.
WTCLSCLEANWhen there is a close connection
and the previous connection was a
replicated spray, thestate machine
408D changes to the clean state.
Loop traffic is close, idle or
arbitration primitives.
WTCLSARBINGWhen there is a close connection
and there is another switch channel
arbitrating, thestate machine 408D
changes to the arbitrating state.
Loop traffic is close, and
arbitration primitives.
WTCLSIDLEWhen there is a close connection
and there is no other switch
channel arbitrating, thestate
machine
408D changes to the idle
state. Loop traffic is close, and
idle primitives.
AnyIDLEWhen a connection timeout timer
stateexpires, thestate machine 408D
exceptchanges to the idle state. The
PWRUPtimeout indicates that the switch
ormay be out of sync with the loop
LOINITtraffic or that an active switch
channel did not follow protocol and
needs to be removed as an active
connection. Loop traffic could be
anything at this time.
Reducing Latency in the “Small Example” Case:
The following illustrates how the present invention minimizes latency in a “small example” case, i.e., where the number of FCD is small, as shown inFIGS. 2 and 3. InFIG. 3 the fibre channel devices are numbered as301-310 for clarification only, since the fibre channel devices are the same as inFIG. 2. Referring toFIGS. 2 and 3, ifFCD #1 wants to send frames toFCD #7, thenFCD #1 creates the loop circuit, sends the frames and closes the loop circuit. The following calculations show the difference in latency between traditional and the accelerated implementation. Table III below also provides a comparison between the traditional implementation and the accelerated implementation, according to the present invention:
Arbitration process: In the traditional implementation, the arbitration primitive (“ARB”) passes through all devices on the loop. In the above example,FCD #1 sends the arbitration primitive toFCD #2, which processes this primitive and sends it toFCD #3 and so on until the primitive is sent toFCD #1. The cumulative latency is based on the latency for all devices except #1. If the latency is the same for each device, such as the maximum latency in monitoring mode per the FC-AL standard then the “Total Latency” (latency)(n-1) where n is the number of devices connected to the loop. Thus in the above example Total Latency=(6 transmission word times)(10-1)=54 transmission word times, “word” is a unit for frame (or date) transmission. It is noteworthy that the various adaptive aspects of the present invention are not limited to any particular unit for frame/date transmission.
In the accelerated implementation, according to the present invention, the arbitration primitive is sent to theacceleration device408 and then looped around. If the arbitrating device is not onhost port404 it takes two re-timing delays to pass fromFCD #1 back toFCD #1. If the arbitrating device is on thehost port404, it takes one re-timing delay to pass fromFCD #1 back toFCD #1. Hence according to the present invention, the latency will be 16 and 8 transmission word times, respectively, instead of 54 transmission word times in the traditional implementation.
Open process: In the traditional implementation, the open primitive passes through all devices betweenFCD #1 andFCD #7.
Thus Total Latency=(latency)(m) where m is the number of devices between the two active devices.
In the above example there are 5 devices between the two active devices (FCD #2, #3, #4, #5, #6) and hence, the Total Latency=(6 transmission word times)(5)=30 transmission word times. Thereafter,FCD #7 sends an R_RDY primitive back toFCD #1, which has the same equation for Total Latency.
In the above example there are 3 devices between the two active devices (FCD #8, #9, #10) and the Total Latency=(6 transmission word times)(3)=18 transmission word times. Hence the total latency for the complete open process is 30+18=48 transmission word times.
In the accelerated implementation, according to the present invention, the open primitive is sent toacceleration device408 and then sent toFCD #7. The total latency is one re-timing delay to pass through theacceleration device408, which will be 8 transmission word times. ThenFCD #7 sends an R_RDY primitive back toFCD #1, which has the same Total Latency, i.e., 8 transmission word times. The total latency for complete open process is 8+8=16 transmission word times, instead of 48 transmission word times in the traditional implementation.
If neither of the active devices is onhost port404, there is another re-timing delay to complete the loop causing the Total Latency to be equal to 24 transmission word times.
Frame process: In the traditional implementation, frames pass through all devices betweenFCD #1 andFCD #7. The Total Latency=(latency)(m), where m is the number of devices between the two active devices. In the above example there are 5 devices between the two active devices (FCD #2, #3, #4, #5, #6), hence, the Total Latency=(6 transmission word times)(5)=30 transmission word times.
The frames fromFCD #7 toFCD #1 have the same equation for Total Latency. In the above example there are 3 devices between the two active devices (FCD #8, #9, #10) and the Total Latency=(6 transmission word times)(3)=18 transmission word times.
In a loop circuit created by an open replicate primitive the frame sent by the source travels the entire loop and then removed by the source device. The Total Latency=(latency)(n−1)=(6 transmission word times)(9)=54 transmission word times.
In the accelerated implementation, according to the present invention, the frames fromFCD #1 toFCD #7 are sent to theacceleration device408 and then sent toFCD #7. The total latency is one re-timing delay to pass through the acceleration device, which is 8 transmission word times. The frames fromFCD #7 toFCD #1 have the same Total Latency, i.e. 8 transmission word times. Hence, the total latency is 16 transmission word times, instead of 48 transmission word times in the traditional implementation.
In a loop circuit created by an open replicate primitive the frame sent by the source is sent to all necessary devices at the same time and then returned to the source to be removed. The total latency is two re-timing delays, which is 16 transmission word times, instead of 54 transmission word times in the traditional implementation.
If one of the active devices is not onhost port404 another re-timing delay is added, thus total latency=24 transmission word times.
Close process: The closing of a loop circuit is similar to opening a loop circuit, except that the two active devices can send their close primitives at the same time. In the worst case scenario, the difference in latency between the two implementations is the same as the open process. In the best case scenario, the two active devices have the same number of devices between them on both paths and both devices send their closes at the same time.
In this case for the traditional implementation the Total Latency=(latency)(n/2−1)=(6 transmission word times)(10/2−1)=24 transmission word times.
For the accelerated implementation, according to the present invention, the total latency is two or three re-timing delays (two if the host port has one of the active devices), i.e. 16 or 24 transmission word times.
TABLE III
Comparison of Latency in a Small Example Case
Accelerated
AcceleratedImplementation/
Implementation/Host NOT an
Latency TypeTraditionalHost an active portactive port
Arbitration54816
Open481624
Frame FCD #1 to308 8/16
FCD #7
Frame FCD #7 to18816/8 
FCD #1
Frames back and481624
forth (total)
Frame Open541624
Replicate
Close241624
Reducing Latency in the “Maximum Example” Case:
FC-AL standard allows for a maximum of 127 devices on a loop. All 127 FCDs could be connected to oneacceleration device408 orplural system307 may be used to operationally/functionally couple 127 devices. In one aspect, 17 FCDs may be coupled tosystem307 viaacceleration device408. To get a greater number of devices connected,system307 be cascaded together such that thecascade port404A of thefirst system307 is connected to thehost port404 of thesecond system307 and so on.FIG. 8 shows an example of howplural system307 may be used to couple 127FCDs (the “Maximum Case” (shown as devices801-804).
The following provides a comparison (including Table IV) between traditional and the accelerated implementation latency, according to the present invention in the Maximum Example Case.
Arbitration process: In the traditional implementation, the arbitration primitive passes through all devices on the loop. In the above example,FCD #1 sends out the arbitration primitive toFCD #2 that processes this primitive and sends toFCD #3 and so on, until the primitive is sent toFCD #1. The total latency is due to the latency in all devices except #1. If the latency is the same for each device, such as the maximum latency in monitoring mode per the FC-AL standard then, Total Latency=(latency)(n−1) where n is the number of devices connected to the loop. Thus in the above example Total Latency=(6 transmission word times)(127−1)=756 transmission word times.
In the accelerated implementation, the arbitration primitive is sent to theacceleration devices408 and then looped around. In one aspect, the arbitration primitive is sent to each acceleration device and then looped back. IfFCD #1 sends the arbitration primitive then there will be one retiming delay to go throughcascade port404A and then so on through allacceleration devices408 except the last, which will just take one retiming delay to loop the arbitration primitive back throughhost port404. There is a re-timing delay to get the arbitration primitive from thecascade port404A to hostport404 and so on throughplural system307. Total Latency=(2)(latency)(n−1)+latency=(2)(8 transmission word times)(8)+(8 transmission word times)=136 transmission word times, instead of the traditional 756 transmission word times.
If neither of the active devices is onhost port404 there is another retiming delay to complete the loop causing the Total Latency to be equal to 144 transmission word times.
Open process: In the traditional implementation, the open primitive passes through all devices betweenFCD #1 andFCD #7. Thus Total Latency=(latency)(m) where m is the number of devices between the two active devices. In the above example there are 5 devices between the two active devices (FCD #2, #3, #4, #5, #6) and the Total Latency=(6 transmission word times)(5)=30 transmission word times. ThenFCD #7 will send an R_RDY primitive back toFCD #1, which has the same equation for Total Latency. In the above example there are 120 devices between the two active devices (FCD #8, #9, #10 . . . #127) and the Total Latency=(6 transmission word times)(120)=720 transmission word times. The complete open process is 30+720=750 transmission word times.
In the accelerated implementation, the open primitive is sent to theacceleration device408 and then sent toFCD #7. The total latency is one retiming delay to pass through theacceleration device408. This would be 8 transmission word times. ThenFCD #7 will send an R_RDY primitive back toFCD #1, which has the Total Latency required to pass through allacceleration devices408 and loop back toFCD #1, which is 136 transmission word times. The complete open process takes 8+136=144 transmission word times, instead of 750 transmission word times in the traditional implementation.
If neither of the active devices is onhost port404 there is another retiming delay to complete the loop causing the Total Latency to be equal to 152 transmission word times.
Frame process: In the traditional implementation, the frames pass through all devices betweenFCD #1 andFCD #7. Thus Total Latency=(latency)(m) where m is the number of devices in between the two active devices. In the above example there are 5 devices between the two active devices (FCD #2, #3, #4, #5, #6) and the Total Latency=(6 transmission word times)(5)=30 transmission word times. The frames fromFCD #7 toFCD #1 have the same equation for Total Latency. In the above example there are 120 devices between the two active devices (FCD #8, #9, #10 . . . #127) and the Total Latency=(6 transmission word times)(120)=720 transmission word times.
In a loop circuit created by an open replicate primitive the frame sent by the source will travel the entire loop and then be removed by the source device. The Total Latency=(latency)(n-1)=(6 transmission word times)(126)=756 transmission word times.
In the accelerated implementation, the frames are sent toacceleration device408 and then sent toFCD #7. The total latency is one retiming delay to pass through the acceleration device. This would be 8 transmission word times. The frames fromFCD #7 toFCD #1 have the Total Latency of passing through each acceleration device and then looping back, which is 136 transmission word times, according to one aspect of the present invention, instead of 720 transmission word times in the traditional implementation.
In a loop circuit created by an open replicate primitive, the frame sent by the source is sent to all necessary devices at the same time and then returned to the source to be removed. The total latency is one extra retiming delay, which is 144 transmission word times, according to the present invention, instead of 756 transmission word times in the traditional implementation.
If one of the active devices is not on the host port another retiming delay is added, thus total latency=152 transmission word times.
Close process: The closing of a loop circuit is similar to opening a loop circuit, except the two active devices can send their close primitives at the same time. In the worst case scenario, the difference in latency between the two implementations is the same as the open process.
In the best case scenario, the two active devices have the same number of devices between them on both paths and both devices send their “closes” at the same time. In this case for the traditional implementation the Total Latency=(latency)(n/2-1)=(6 transmission word times)(127/2-1)=378 transmission word times.
For the accelerated implementation the total latency is half the total latency of the acceleration devices, 144/2=72 transmission word times, when both devices are sending close at the same time and the devices are half way around the loop from each other.
TABLE IV
Comparison of Latency in the Maximum
Example Case
Accelerated
AcceleratedImplementation/
Implementation/Host
TraditionalHost an activeNOT an
Latency Typeimplementationportactive port
Arbitration756136144
Open750144152
Frame FCD #130816
toFCD #7
Frame FCD #7720136144
toFCD #1
Frames back750144152
and forth
(total)
Frame Open756152160
Replicate
Close3787280
Although the present invention has been described with reference to specific embodiments, these embodiments are illustrative only and not limiting. Many other applications and embodiments of the present invention will be apparent in light of this disclosure and the following claims.

Claims (13)

What is claimed is:
1. A fibre channel switch element, comprising:
an acceleration device that (a) connects a plurality of fibre channel devices in an arbitrated loop; (b) monitors frames sent by of the plurality of fibre channel devices during a loop initialization process to determine an arbitrated loop physical address (AL_PA) value selected by each of the plurality of fibre channel devices; (c) creates an AL_PA table based on the AL_PA values selected by each of the plurality of fibre channel devices, wherein the AL_PA table is stored in the acceleration device and the AL_PA table is used for port selection; and (d) during an arbitration process only an arbitrating fibre channel device and a host port for the acceleration device are connected to the arbitrated loop and the acceleration device sends a benign primitive to non-arbitrating devices so that the non-arbitrating devices start the arbitration process when ports of the non-arbitrating devices are ready for arbitration;
a global arbitration module that validates arbitration requests received from the plurality of fibre channel devices by using the AL_PA table;
a controller module that operates in (i) a loop mode during which an isolated port receives data from an un-isolated port but data from the isolated port is not sent to the arbitrated loop; (ii) a spray mode when there is no active traffic for the arbitrated loop and data is sent from the host port to other ports; and (iii) a connection mode when there is traffic for the arbitrated loop and an isolated port receives a primitive but is unable to send frames to the arbitrated loop; and
a state machine that uses a state of the arbitrated loop for changing fibre channel switch element states, instead of using individual port states of the plurality of fibre channel device ports.
2. The switch element ofclaim 1, wherein during an open process, the acceleration device connects a source fibre channel device that wins arbitration to a destination device via the host port and an open primitive is sent directly from the source fibre channel device to the destination device and in response the destination device directly sends a response primitive (R_RDY) to the source fibre channel device.
3. The switch element ofclaim 2, wherein non-destination devices receive a benign primitive during the open process to maintain proper loop state machine state instead of receiving an open primitive from the source fibre channel device.
4. The switch element ofclaim 1, wherein during an open replicate process the acceleration device receives an open replicate primitive from a source fibre channel device and creates a spray pattern to send the open replicate primitive at the same time directly to all ports with which the source fibre channel device intends to communicate.
5. The switch element ofclaim 1, wherein the acceleration device after the loop initialization process and during data transfer mode reconfigures a data path to directly connect active ports.
6. The switch element ofclaim 1, wherein during a data transfer mode after the loop initialization primitive process the acceleration device monitors arbitration requests, open requests and close primitives to determine which ports have traffic for creating connection points for a data path.
7. An acceleration device of a fibre channel switch element for connecting a plurality of fibre channel devices in an arbitrated loop via a host port, comprising:
a global arbitration module that validates arbitration requests received from the plurality of fibre channel devices by using an arbitrated loop physical address (AL_PA) table populated with AL_PA values selected by the plurality of fibre channel devices and the AL_PA values are determined by the acceleration device during a loop initialization process when the acceleration device monitors frames that are sent by the plurality of fibre channel devices;
a state machine module that uses a state of the arbitrated loop for changing fibre channel switch element states, instead of using individual port states of the plurality of fibre channel device ports;
a switch matrix for connecting the plurality of fibre channel devices; and
a controller module that operates in (i) a loop mode during which an isolated port receives data from an un-isolated port but data from the isolated port is not sent to the arbitrated loop; (ii) a spray mode when there is no active traffic for the arbitrated loop and data is sent from the host port to other ports; and (iii) a connection mode when there is traffic for the arbitrated loop and an isolated port receives a primitive but is unable to send flames to the arbitrated loop; wherein the AL_PA table is used for port selection; and during an arbitration process only an arbitrating fibre channel device and the host port for the acceleration device are connected to the arbitrated loop and the acceleration device sends a benign primitive to non-arbitrating devices so that the non-arbitrating devices start the arbitration process when ports of the non-arbitrating devices are ready for arbitration.
8. The acceleration device ofclaim 7, wherein during an open process, the acceleration device connects a source fibre channel device that wins arbitration to a destination device via the host port and an open primitive is sent directly from the source fibre channel device to the destination device and in response, the destination device directly sends a response primitive (R_RDY) to the source fibre channel device.
9. The acceleration device ofclaim 8, wherein non-destination devices receive a benign primitive during the open process to maintain proper loop state machine state instead of receiving an open primitive from the source fibre channel device.
10. The acceleration device ofclaim 7, wherein during an open replicate process the acceleration device receives an open replicate primitive from a source fibre channel device and creates a spray pattern to send the open replicate primitive at the same time directly to all ports with which the source fibre channel device intends to communicate.
11. The acceleration device ofclaim 7, wherein during a data transfer mode after the loop initialization process the acceleration device monitors arbitration requests, open requests and close primitives to determine which ports have traffic for creating connection points for a data path.
12. A method for accelerating traffic in a fibre channel arbitrated loop topology where a fibre channel switch element with an acceleration device couples a plurality of fibre channel devices to the arbitrated loop via a host port, comprising:
monitoring fibre channel frames during a loop initialization process;
creating an arbitrated loop physical address (AL_PA) table based on AL_PA values selected by the plurality of fibre channel devices; wherein the AL_PA table values are used by a global arbitration module for validating arbitration requests during an arbitration process when only an arbitrating fibre channel device and the host port for the acceleration device are connected to the arbitrated loop and the acceleration device sends a benign primitive to non-arbitration devices so that the non-arbitrating devices start the arbitration process when ports of the non-arbitrating devices are ready for arbitration;
using the AL_PA table for identifying ports;
connecting a source fibre channel device that sends an OPEN primitive to a destination port;
sending a benign primitive to a non-destination device connected to the arbitrated loop so that the non-destination device maintains a proper loop state machine state;
creating a spray pattern after receiving an open replicate primitive from a fibre channel device; and
sending frames directly to a plurality of destination ports at the same time.
13. The method ofclaim 12, wherein the acceleration device includes a state machine that uses a state of the arbitrated loop for changing fibre channel switch element states, instead of using individual port states of the plurality of fibre channel device ports.
US10/889,2672003-07-162004-07-12Method and system for fibre channel arbitrated loop accelerationExpired - Fee RelatedUS7463646B2 (en)

Priority Applications (1)

Application NumberPriority DateFiling DateTitle
US10/889,267US7463646B2 (en)2003-07-162004-07-12Method and system for fibre channel arbitrated loop acceleration

Applications Claiming Priority (9)

Application NumberPriority DateFiling DateTitle
US48766703P2003-07-162003-07-16
US48788703P2003-07-162003-07-16
US48787303P2003-07-162003-07-16
US48787603P2003-07-162003-07-16
US48787503P2003-07-162003-07-16
US48766503P2003-07-162003-07-16
US49074703P2003-07-292003-07-29
US49234603P2003-08-042003-08-04
US10/889,267US7463646B2 (en)2003-07-162004-07-12Method and system for fibre channel arbitrated loop acceleration

Publications (2)

Publication NumberPublication Date
US20050013318A1 US20050013318A1 (en)2005-01-20
US7463646B2true US7463646B2 (en)2008-12-09

Family

ID=34069527

Family Applications (1)

Application NumberTitlePriority DateFiling Date
US10/889,267Expired - Fee RelatedUS7463646B2 (en)2003-07-162004-07-12Method and system for fibre channel arbitrated loop acceleration

Country Status (1)

CountryLink
US (1)US7463646B2 (en)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication numberPriority datePublication dateAssigneeTitle
US20100303084A1 (en)*2009-06-012010-12-02Lsi CorporationApparatus and methods for access fairness for a multiple target bridge/router in a fibre channel arbitrated loop system
US20130229726A1 (en)*2012-03-022013-09-05Jabil Circuit, Inc.Method for Optimizing Control Circuit for FC HDDS in a System and Control Circuit for FC HDDS in a System

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication numberPriority datePublication dateAssigneeTitle
US7519058B2 (en)*2005-01-182009-04-14Qlogic, CorporationAddress translation in fibre channel switches
US8289966B1 (en)2006-12-012012-10-16Synopsys, Inc.Packet ingress/egress block and system and method for receiving, transmitting, and managing packetized data
US8127113B1 (en)*2006-12-012012-02-28Synopsys, Inc.Generating hardware accelerators and processor offloads
US8706987B1 (en)2006-12-012014-04-22Synopsys, Inc.Structured block transfer module, system architecture, and method for transferring
US8161316B1 (en)*2008-09-302012-04-17Emc CorporationManaging loop interface instability

Citations (256)

* Cited by examiner, † Cited by third party
Publication numberPriority datePublication dateAssigneeTitle
US4081612A (en)1975-07-311978-03-28Hasler AgMethod for building-up of routing addresses in a digital telecommunication network
US4162375A (en)1972-03-231979-07-24Siemens AktiengesellschaftTime-divison multiplex switching network with spatial switching stages
US4200929A (en)1978-01-231980-04-29Davidjuk Alexandr DInput device for delivery of data from digital transmitters
US4258418A (en)1978-12-281981-03-24International Business Machines CorporationVariable capacity data buffer system
US4344132A (en)1979-12-141982-08-10International Business Machines CorporationSerial storage interface apparatus for coupling a serial storage mechanism to a data processor input/output bus
US4382159A (en)1981-05-291983-05-03Bowditch Robert SBlow actuated microphone
US4425640A (en)1980-04-241984-01-10The Plessey Company PlcTelecommunications switching network using digital switching modules
US4546468A (en)1982-09-131985-10-08At&T Bell LaboratoriesSwitching network control circuit
US4569043A (en)1983-06-221986-02-04Gte Automatic Electric Inc.Arrangement for interfacing the space stage to the time stages of a T-S-T digital switching system
US4716561A (en)1985-08-261987-12-29American Telephone And Telegraph Company, At&T Bell LaboratoriesDigital transmission including add/drop module
US4725835A (en)1985-09-131988-02-16T-Bar IncorporatedTime multiplexed bus matrix switching system
US4821034A (en)1987-02-061989-04-11Ancor Communications, Inc.Digital exchange switch element and network
US4860193A (en)1986-05-221989-08-22International Business Machines CorporationSystem for efficiently transferring data between a high speed channel and a low speed I/O device
US4980857A (en)1987-04-151990-12-25Allied-Signal Inc.Operations controller for a fault tolerant multiple node processing system
US5025370A (en)1986-09-021991-06-18Koegel Robert JCircuit for preventing lock-out of high priority requests to a system controller
US5051742A (en)1984-12-031991-09-24Robert M. NewmanQueueing protocol
US5090011A (en)1988-12-231992-02-18Hitachi, Ltd.Packet congestion control method and packet switching equipment
US5115430A (en)1990-09-241992-05-19At&T Bell LaboratoriesFair access of multi-priority traffic to distributed-queue dual-bus networks
US5144622A (en)1988-02-151992-09-01Hitachi, Ltd.Network system
US5260935A (en)1991-03-011993-11-09Washington UniversityData packet resequencer for a high speed data switch
US5260933A (en)1992-05-151993-11-09International Business Machines CorporationAcknowledgement protocol for serial data network with out-of-order delivery
US5367520A (en)1992-11-251994-11-22Bell Communcations Research, Inc.Method and system for routing cells in an ATM switch
US5390173A (en)1992-10-221995-02-14Digital Equipment CorporationPacket format in hub for packet data communications system
EP0649098A2 (en)1993-10-151995-04-19International Business Machines CorporationDynamic switch cascading system
US5537400A (en)1994-04-151996-07-16Dsc Communications CorporationBuffered crosspoint matrix for an asynchronous transfer mode switch and method of operation
US5568165A (en)1993-10-221996-10-22Auravision CorporationVideo processing technique using multi-buffer video memory
US5568614A (en)1994-07-291996-10-22International Business Machines CorporationData streaming between peer subsystems of a computer system
US5590125A (en)1993-05-261996-12-31The Trustees Of Columbia University In The City Of New YorkMethod and apparatus for supporting mobile communications in asynchronous transfer mode based networks
US5594672A (en)1994-05-201997-01-14Micro Energetics CorporationPeripheral power saver
US5598541A (en)1994-10-241997-01-28Lsi Logic CorporationNode loop port communication interface super core for fibre channel
US5610745A (en)1995-10-261997-03-11Hewlett-Packard Co.Method and apparatus for tracking buffer availability
US5623492A (en)1995-03-241997-04-22U S West Technologies, Inc.Methods and systems for managing bandwidth resources in a fast packet switching network
US5666483A (en)1995-09-221997-09-09Honeywell Inc.Redundant processing system architecture
US5687172A (en)1994-12-301997-11-11Lucent Technologies Inc.Terabit per second distribution network
US5701416A (en)1995-04-131997-12-23Cray Research, Inc.Adaptive routing mechanism for torus interconnection network
US5706279A (en)1995-03-241998-01-06U S West Technologies, Inc.Methods and systems for managing packet flow into a fast packet switching network
US5732206A (en)1996-07-231998-03-24International Business Machines CorporationMethod, apparatus and program product for disruptive recovery in a data processing system
US5748612A (en)1995-08-101998-05-05Mcdata CorporationMethod and apparatus for implementing virtual circuits in a fibre channel system
US5768533A (en)1995-09-011998-06-16National Semiconductor CorporationVideo coding using segmented frames and retransmission to overcome channel errors
US5768271A (en)1996-04-121998-06-16Alcatel Data Networks Inc.Virtual private network
US5790840A (en)1997-08-151998-08-04International Business Machines CorporationTimestamp systems, methods and computer program products for data processing system
EP0856969A1 (en)1997-01-311998-08-05Nec CorporationFibre channel fabric
WO1998036537A1 (en)1997-02-181998-08-20Vixel CorporationFibre channel switching fabric
US5818842A (en)1994-01-211998-10-06Newbridge Networks CorporationTransparent interconnector of LANs by an ATM network
US5821875A (en)1994-12-231998-10-13Electronics And Telecommunications Research InstituteData switching device
US5825748A (en)1997-04-081998-10-20International Business Machines CorporationCredit-based flow control checking and correction system
US5828475A (en)1995-10-251998-10-27Mcdata CorporationBypass switching and messaging mechanism for providing intermix data transfer for a fiber optic switch using a bypass bus and buffer
US5835752A (en)1996-10-181998-11-10Samsung Electronics Co. Ltd.PCI interface synchronization
US5850386A (en)1996-11-011998-12-15Wandel & Goltermann Technologies, Inc.Protocol analyzer for monitoring digital transmission networks
US5894560A (en)1995-03-171999-04-13Lsi Logic CorporationMethod and apparatus for controlling I/O channels responsive to an availability of a plurality of I/O devices to transfer data
US5936442A (en)1998-05-011999-08-10Kye Systems Corp.Power shut-off and recovery circuit for data communication devices
US5954796A (en)1997-02-111999-09-21Compaq Computer CorporationSystem and method for automatically and dynamically changing an address associated with a device disposed in a fire channel environment
US5974547A (en)1998-03-201999-10-263Com CorporationTechnique for reliable network booting of an operating system to a client computer
US5978359A (en)1995-07-191999-11-02Fujitsu Network Communications, Inc.Allocated and dynamic switch flow control
US5978379A (en)1997-01-231999-11-02Gadzoox Networks, Inc.Fiber channel learning bridge, learning half bridge, and protocol
US5987028A (en)1997-05-121999-11-16Industrial Technology Research InsituteMultiple channel ATM switch
US5999528A (en)1994-04-291999-12-07Newbridge Networks CorporationCommunications system for receiving and transmitting data cells
US6014383A (en)1997-02-102000-01-11Compaq Computer CorporationSystem and method for controlling multiple initiators in a fibre channel environment
US6021128A (en)1996-03-112000-02-01Hitachi, Ltd.Asynchronous transfer mode switching system
US6026092A (en)1996-12-312000-02-15Northern Telecom LimitedHigh performance fault tolerant switching system for multimedia satellite and terrestrial communications networks
US6031842A (en)1996-09-112000-02-29Mcdata CorporationLow latency shared memory switch architecture
US6047323A (en)1995-10-192000-04-04Hewlett-Packard CompanyCreation and migration of distributed streams in clusters of networked computers
US6055618A (en)1995-10-312000-04-25Cray Research, Inc.Virtual maintenance network in multiprocessing system having a non-flow controlled virtual maintenance channel
US6061360A (en)*1998-02-242000-05-09Seagate Technology, Inc.Method and apparatus for preserving loop fairness with dynamic half-duplex
US6081512A (en)1997-06-302000-06-27Sun Microsystems, Inc.Spanning tree support in a high performance network device
US6108778A (en)1998-04-072000-08-22Micron Technology, Inc.Device for blocking bus transactions during reset
US6108738A (en)1997-06-102000-08-22Vlsi Technology, Inc.Multi-master PCI bus system within a single integrated circuit
US6118776A (en)1997-02-182000-09-12Vixel CorporationMethods and apparatus for fiber channel interconnection of private loop devices
US6128292A (en)1996-12-052000-10-03Electronics And Telecommunications Research InstitutePacket switching apparatus with multi-channel and multi-cast switching functions and packet switching system using the same
US6134127A (en)1994-05-182000-10-17Hamilton Sunstrand CorporationPWM harmonic control
US6144668A (en)1997-11-262000-11-07International Business Machines CorporationSimultaneous cut through and store-and-forward frame support in a network device
US6151644A (en)1998-04-172000-11-21I-Cube, Inc.Dynamically configurable buffer for a computer network
US6160813A (en)1997-03-212000-12-12Brocade Communications Systems, Inc.Fibre channel switching system and method
US6201787B1 (en)1998-05-012001-03-13Emulex CorporationAutomatic loop segment failure isolation
US6209089B1 (en)1998-08-122001-03-27Microsoft CorporationCorrecting for changed client machine hardware using a server-based operating system
US6229822B1 (en)1996-10-242001-05-08Newbridge Networks CorporationCommunications system for receiving and transmitting data cells
US6230276B1 (en)1999-02-012001-05-08Douglas T HaydenEnergy conserving measurement system under software control and method for battery powered products
US6240096B1 (en)1996-09-112001-05-29Mcdata CorporationFibre channel switch employing distributed queuing
US6253267B1 (en)1997-07-312001-06-26Samsung Electronics Co., Ltd.Hot-plug of PCI bus using single chip
US6252891B1 (en)1998-04-092001-06-26Spirent Communications, Inc.System and method to insert timestamp information in a protocol neutral manner
US20010011357A1 (en)2000-02-012001-08-02Yoshiaki MoriTroubleshooting method of looped interface and system provided with troubleshooting function
US6289002B1 (en)1998-05-012001-09-11Emulex CorporationAutomatic isolation in loops
US20010022823A1 (en)2000-03-202001-09-20Pierre RenaudMethod and system for multi-protocol clock recovery and generation
US6301612B1 (en)1998-08-122001-10-09Microsoft CorporationEstablishing one computer as a replacement for another computer
US6308220B1 (en)1999-01-292001-10-23Neomagic Corp.Circulating parallel-search engine with random inputs for network routing table stored in a wide embedded DRAM
US20010038628A1 (en)1998-07-222001-11-08Yoram OfekDistributed switching system and method with time-based routing
US6324181B1 (en)1998-04-162001-11-273Com CorporationFibre channel switched arbitrated loop
US20010047460A1 (en)2000-04-252001-11-29Naotaka KobayashiRemote copy system of storage systems connected to fibre network
US6330236B1 (en)1998-06-112001-12-11Synchrodyne Networks, Inc.Packet switching method with time-based routing
US6343324B1 (en)1999-09-132002-01-29International Business Machines CorporationMethod and system for controlling access share storage devices in a network environment by configuring host-to-volume mapping data structures in the controller memory for granting and denying access to the devices
US20020016838A1 (en)1999-12-172002-02-07Ceki GelucScheme for blocking the use of lost or stolen network-connectable computer systems
US6353612B1 (en)1998-06-192002-03-05Brocade Communications Systems, Inc.Probing device
US20020034178A1 (en)2000-06-022002-03-21Inrange Technologies CorporationFibre channel address adaptor having data buffer extension and address mapping in a fibre channel switch
US6370605B1 (en)1999-03-042002-04-09Sun Microsystems, Inc.Switch based scalable performance storage architecture
US6401128B1 (en)1998-08-072002-06-04Brocade Communiations Systems, Inc.System and method for sending and receiving frames between a public device and a private device
WO2001095566A3 (en)2000-06-052002-06-13Qlogic Switch Products IncHardware-enforced loop-level hard zoning for fibre channel switch fabric
US20020071387A1 (en)2000-12-112002-06-13Kabushiki Kaisha ToshibaInter-network relay unit and transfer scheduling method in the same
US6411627B1 (en)1994-07-252002-06-25Curtin University Of TechnologySwitching protocol providing controlled access to available asynchronous network service
US6411599B1 (en)1998-05-292002-06-25International Business Machines CorporationFault tolerant switching architecture
US6418477B1 (en)1996-11-152002-07-09Philips Electronics North America CorporationCommunication network
US6421711B1 (en)1998-06-292002-07-16Emc CorporationVirtual ports for data transferring of a data storage system
US6424658B1 (en)1999-01-292002-07-23Neomagic Corp.Store-and-forward network switch using an embedded DRAM
US20020103913A1 (en)2001-01-262002-08-01Ahmad TawilSystem and method for host based target device masking based on unique hardware addresses
US20020104039A1 (en)2001-01-302002-08-01Sun Microsystems, Inc.Method, system, program, and data structures for testing a network system including input/output devices
US20020124124A1 (en)2001-03-022002-09-05Yoshiko MatsumotoStorage subsystem that connects fibre channel and supports online backup
US6449274B1 (en)1996-12-122002-09-10Pmc-Sierra, Inc.Apparatus for high speed communication system
US6452915B1 (en)1998-07-102002-09-17Malibu Networks, Inc.IP-flow classification in a wireless point to multi-point (PTMP) transmission system
US6457090B1 (en)1999-06-302002-09-24Adaptec, Inc.Structure and method for automatic configuration for SCSI Synchronous data transfers
US20020147843A1 (en)2001-04-042002-10-10Sun Microsystems, Inc.Method, system, and program for enabling communication between devices using dynamic addressing
US20020147560A1 (en)2001-04-042002-10-10International Business Machines CorporationMethod and system for logic verification using mirror interface
US6467008B1 (en)1999-03-012002-10-15Sun Microsystems, Inc.Method and apparatus for indicating an interrupt in a network interface
US6470026B1 (en)1998-10-302002-10-22Agilent Technologies, Inc.Fibre channel loop map initialization protocol implemented in hardware
US20020156918A1 (en)2001-04-232002-10-24Brocade Communications Systems, Inc.Dynamic path selection with in-order delivery within sequence in a communication network
US20020159385A1 (en)2001-04-262002-10-31Susnow Dean S.Link level packet flow control mechanism
US20020172195A1 (en)2001-03-232002-11-21Pekkala Richard E.Apparatus amd method for disparate fabric data and transaction buffering within infiniband device
US20020174197A1 (en)2001-03-272002-11-21International Business Machines CorporationMethod and system for accurately determining a device location in an arbitrated loop
US20020191602A1 (en)2001-06-132002-12-19Woodring Sherrie L.Address mapping and identification
US20030002503A1 (en)2001-06-152003-01-02Brewer Lani WilliamSwitch assisted frame aliasing for storage virtualization
US20030016683A1 (en)1999-12-102003-01-23George William R.Fibre channel credit extender and repeater
US20030021239A1 (en)*2001-07-262003-01-30Mullendore Rodney N.Method and apparatus for scheduling packet flow on a fibre channel arbitrated loop
US20030026267A1 (en)2001-07-312003-02-06Oberman Stuart F.Virtual channels in a network switch
US20030026287A1 (en)2001-07-312003-02-06Mullendore Rodney N.Method and system for managing time division multiplexing (TDM) timeslots in a network switch
US20030035433A1 (en)2001-08-162003-02-20International Business Machines CorporationApparatus and method for virtualizing a queue pair space to minimize time-wait impacts
US20030046396A1 (en)2000-03-032003-03-06Richter Roger K.Systems and methods for managing resource utilization in information management environments
US6532212B1 (en)2001-09-252003-03-11Mcdata CorporationTrunking inter-switch links
US20030056000A1 (en)2001-07-262003-03-20Nishan Systems, Inc.Transfer ready frame reordering
US20030072316A1 (en)1999-05-202003-04-17Autumn Jane NiuApparatus and method in a network switch port for transferring data between buffer memory and transmit and receive state machines according to a prescribed interface protocol
US20030079019A1 (en)2001-09-282003-04-24Lolayekar Santosh C.Enforcing quality of service in a storage network
US20030076788A1 (en)2001-10-192003-04-24Sun Microsystems, Inc.Method, system, and program for discovering devices communicating through a switch
US20030084219A1 (en)2001-10-262003-05-01Maxxan Systems, Inc.System, apparatus and method for address forwarding for a computer network
US20030091062A1 (en)2001-11-132003-05-15Lay Samuel C.Method and apparatus for providing optimized high speed link utilization
US20030093607A1 (en)2001-11-092003-05-15Main Kevin K.Low pin count (LPC) I/O bridge
US6570853B1 (en)1998-12-182003-05-27Lsi Logic CorporationMethod and apparatus for transmitting data to a node in a distributed data processing system
US6570850B1 (en)1998-04-232003-05-27Giganet, Inc.System and method for regulating message flow in a digital data network
US20030103451A1 (en)2001-11-302003-06-05Lutgen Craig L.Method and apparatus for managing congestion in a data communication network
US20030115355A1 (en)2001-12-182003-06-19Andiamo Systems, Inc.Methods and apparatus for network congestion control
US20030120743A1 (en)2001-12-212003-06-26Coatney Susan M.System and method of implementing disk ownership in networked storage
US20030120983A1 (en)2001-12-262003-06-26Vieregge Richard CharlesSystem and method for performing pre-emptive protection switching
US20030117961A1 (en)2001-12-262003-06-26Chuah John Tiong-HengMethod and system for isolation of a fault location in a communications device
US20030126223A1 (en)2001-12-312003-07-03Maxxan Systems, Inc.Buffer to buffer credit flow control for computer network
US20030126242A1 (en)2001-12-282003-07-03Chang Albert H.Network boot system and method using remotely-stored, client-specific boot images created from shared, base snapshot image
US6594231B1 (en)1999-05-122003-07-153Com CorporationMethod and apparatus for configuration of stackable units in packet-based communications systems
US6597691B1 (en)1998-09-012003-07-22Ancor Communications, Inc.High performance switching
US6597777B1 (en)1999-06-292003-07-22Lucent Technologies Inc.Method and apparatus for detecting service anomalies in transaction-oriented networks
US20030137941A1 (en)2002-01-242003-07-24Brocade Communications Systems, Inc.Fault-tolerant updates to a distributed fibre channel database
US6606690B2 (en)2001-02-202003-08-12Hewlett-Packard Development Company, L.P.System and method for accessing a storage area network as network attached storage
US20030172239A1 (en)2001-10-052003-09-11Swank Raymond MatthewStorage area network methods and apparatus for identifiying fiber channel devices in kernel mode
US20030172149A1 (en)2002-01-232003-09-11Andiamo Systems, A Delaware CorporationMethods and apparatus for implementing virtualization of storage within a storage area network
US20030174652A1 (en)2002-03-182003-09-18Nec CorporationMulti-hop network for transmission of packets whose size is determined by hop count number
US20030174789A1 (en)2002-03-142003-09-18SynthesysMethod and apparatus for determining the errors of a mult-valued data signal that are outside the limits of an eye mask
US20030174721A1 (en)1998-11-192003-09-18Black Alistair D.Fibre channel arbitrated loop bufferless switch circuitry to increase bandwidth without significant increase in cost
US20030179709A1 (en)2002-03-212003-09-25Broadcom CorporationAuto-selection of SGMII or SerDes pass-through modes
US20030179755A1 (en)2002-01-182003-09-25Fraser Alexander GibsonSystem and method for handling prioritized data in a network
US20030189935A1 (en)2002-04-092003-10-09Warden Gary G.Systems and methods for providing quality of service (QoS) in an environment that does not normally support QoS features
US20030191857A1 (en)2001-10-182003-10-09Terrell William C.Router and methods using in-band link between managing processor and routing processor
US20030195983A1 (en)1999-05-242003-10-16Krause Michael R.Network congestion management using aggressive timers
US20030198238A1 (en)*2002-04-192003-10-23Seagate Technology LlcPrioritizing outbound data transfers across a serial data transmission interface
WO2003088050A1 (en)2002-04-052003-10-23Cisco Technology, Inc.Apparatus and method for defining a static fibre channel fabric
US20030218986A1 (en)2002-05-242003-11-27Andiamo Systems, Inc.Apparatus and method for preventing disruption of fibre channel fabrics caused by reconfigure fabric (RCF) messages
US6657962B1 (en)2000-04-102003-12-02International Business Machines CorporationMethod and system for managing congestion in a network
US20030229808A1 (en)2001-07-302003-12-11Axcelerant, Inc.Method and apparatus for monitoring computer network security enforcement
US20030236953A1 (en)2002-06-212003-12-25Compaq Information Technologies Group, L.P.System and method for providing multi-initiator capability to an ATA drive
US20040013088A1 (en)2002-07-192004-01-22International Business Machines CorporationLong distance repeater for digital information
US20040013092A1 (en)2002-07-222004-01-22Betker Steven ManningMethod and system for dynamically assigning domain identification in a multi-module fibre channel switch
US20040013125A1 (en)2002-07-222004-01-22Betker Steven ManningMethod and system for primary blade selection in a multi-module fibre channel switch
US20040015638A1 (en)2002-07-222004-01-22Forbes Bryn B.Scalable modular server system
US6684209B1 (en)2000-01-142004-01-27Hitachi, Ltd.Security method and system for storage subsystem
US20040024831A1 (en)2002-06-282004-02-05Shih-Yun YangBlade server management system
US6697359B1 (en)1999-07-022004-02-24Ancor Communications, Inc.High performance switch fabric element and switch systems
US6697368B2 (en)2000-11-172004-02-24Foundry Networks, Inc.High-performance network switch
US20040057389A1 (en)*2002-09-162004-03-25Finisar CorporationNetwork analysis scalable analysis tool for multiple protocols
US6718497B1 (en)2000-04-212004-04-06Apple Computer, Inc.Method and apparatus for generating jitter test patterns on a high performance serial bus
US20040081394A1 (en)2001-01-312004-04-29Giora BiranProviding control information to a management processor of a communications switch
US20040081186A1 (en)2002-07-022004-04-29Vixel CorporationMethods and apparatus for switching Fibre Channel Arbitrated Loop devices
US20040085955A1 (en)2002-10-312004-05-06Brocade Communications Systems, Inc.Method and apparatus for encryption of data on storage units using devices inside a storage area network fabric
US20040085994A1 (en)2002-07-022004-05-06Vixel CorporationMethods and apparatus for device access fairness in fibre channel arbitrated loop systems
US20040092278A1 (en)2002-11-132004-05-13Wilhelmus DiepstratenManaging priority queues and escalation in wireless communication systems
US6738381B1 (en)1997-12-192004-05-18Telefonaktiebolaget Lm Ericsson (Publ)ATM time stamped queuing
US20040100944A1 (en)2002-11-272004-05-27Scott RichmondSerial ATA frame structure routing circuitry and protocols
US6744772B1 (en)2000-11-302004-06-01Western Digital Ventures, Inc.Converting asynchronous packets into isochronous packets for transmission through a multi-dimensional switched fabric network
US20040109418A1 (en)2002-12-052004-06-10Fedorkow Guy C.Method for verifying function of redundant standby packet forwarder
US20040123181A1 (en)2002-12-202004-06-24Moon Nathan I.Self-repair of memory arrays using preallocated redundancy (PAR) architecture
US6760302B1 (en)1996-12-202004-07-06The Trustees Of Columbia University In The City Of New YorkAutomatic protection switching system in a network
US20040151188A1 (en)2003-01-312004-08-05Brocade Communications Systems, Inc.Method and apparatus for providing virtual ports with attached virtual devices in a storage area network
US20040153526A1 (en)1999-10-182004-08-05Haun C. K.Providing a reliable operating system for clients of a net-booted environment
US20040153914A1 (en)2003-01-172004-08-05El-Batal Mohamad H.System and method for isolating a faulty switch, storage device or SFP in a daisy-chained configuration
US6779083B2 (en)2001-07-132004-08-17Hitachi, Ltd.Security for logical unit in storage subsystem
US6785241B1 (en)1999-12-022004-08-31International Business Machines CorporationMethod for pacing buffered data transfers over a network such as fibre channel
US20040174813A1 (en)1998-09-302004-09-09Stmicroelectronics, Inc.Method and apparatus for controlling network data congestion
US6807181B1 (en)1999-05-192004-10-19Sun Microsystems, Inc.Context based control data
US20040208201A1 (en)2001-10-312004-10-21Naoto OtakeTimestamp value controlling apparatus
US6816492B1 (en)2000-07-312004-11-09Cisco Technology, Inc.Resequencing packets at output ports without errors using packet timestamps and timestamp floors
US6816750B1 (en)2000-06-092004-11-09Cirrus Logic, Inc.System-on-a-chip
US20040267982A1 (en)2003-06-272004-12-30Emulex CorporationRead/write command buffer pool resource management using read-path prediction of future resources
US20050023656A1 (en)*2002-08-082005-02-03Leedy Glenn J.Vertical system integration
US20050036763A1 (en)1999-05-062005-02-17Motoki KatoMethod of processing multiplexed program data using entry points and time units
US20050036499A1 (en)2001-12-262005-02-17Andiamo Systems, Inc., A Delaware CorporationFibre Channel Switch that enables end devices in different fabrics to communicate with one another while retaining their unique Fibre Channel Domain_IDs
US6859435B1 (en)1999-10-132005-02-22Lucent Technologies Inc.Prevention of deadlocks and livelocks in lossless, backpressured packet networks
US6865157B1 (en)2000-05-262005-03-08Emc CorporationFault tolerant shared system resource with communications passthrough providing high availability communications
US20050076113A1 (en)2003-09-122005-04-07Finisar CorporationNetwork analysis sample management process
US20050073956A1 (en)2003-08-112005-04-07Moores John D.Network switching device ingress memory system
US20050088969A1 (en)2001-12-192005-04-28Scott CarlsenPort congestion notification in a switch
US20050117522A1 (en)*2003-12-012005-06-02Andiamo Systems, Inc.Apparatus and method for performing fast fibre channel write operations over relatively high latency networks
US20050177641A1 (en)2004-01-162005-08-11Hitachi, Ltd.Method and apparatus for limiting access to a storage system
US6934799B2 (en)2002-01-182005-08-23International Business Machines CorporationVirtualization of iSCSI storage
US6941357B2 (en)2001-07-182005-09-06Dell Products L.P.Fibre channel switching appliance
US6941482B2 (en)2002-09-102005-09-06Finisar CorporationSystems and methods for synchronizing time stamps
US20050198523A1 (en)2004-01-292005-09-08Brocade Communications Systems, Inc.Isolation switch for fibre channel fabrics in storage area networks
US6947393B2 (en)2001-03-302005-09-20Hewlett-Packard Development Company, L.P.Segmented fiber channel arbitrated loop and intra-loop routing system
US6952659B2 (en)2001-08-102005-10-04Sun Microsystems, Inc.Computer system monitoring
US6968463B2 (en)2001-01-172005-11-22Hewlett-Packard Development Company, L.P.System for controlling access to resources in a storage area network
US6988149B2 (en)2002-02-262006-01-17Lsi Logic CorporationIntegrated target masking
US6987768B1 (en)1999-06-022006-01-17Fujitsu LimitedPacket transferring apparatus
US20060013248A1 (en)1999-08-132006-01-19Hamayun MujeebSwitching device interfaces
US7000025B1 (en)2001-05-072006-02-14Adaptec, Inc.Methods for congestion mitigation in infiniband
US20060034302A1 (en)2004-07-192006-02-16David PetersonInter-fabric routing
US20060034192A1 (en)2004-08-122006-02-16Broadcom CorporationApparatus and system for coupling and decoupling initiator devices to a network using an arbitrated loop without disrupting the network
US7002926B1 (en)2000-11-302006-02-21Western Digital Ventures, Inc.Isochronous switched fabric network
US20060047852A1 (en)2004-04-232006-03-02Shishir ShahMethod and system for using boot servers in networks
US7010607B1 (en)1999-09-152006-03-07Hewlett-Packard Development Company, L.P.Method for training a communication link between ports to correct for errors
US20060074927A1 (en)2004-09-242006-04-06Emc CorporationEnclosure configurable to perform in-band or out-of-band enclosure management
US7039870B2 (en)2001-11-072006-05-02Hitachi, Ltd.Method for connecting computer systems
US7039070B2 (en)2000-10-272006-05-02Kabushiki Kaisha ToshibaMoving image packet decoding and reproducing apparatus, reproduction time control method thereof, computer program product for controlling reproduction time and multimedia information receiving apparatus
US7047326B1 (en)2002-01-312006-05-16Harman International Industries, Inc.Use of a remote control with a device having a built-in communication port
US20060107260A1 (en)2000-11-172006-05-18Giovanni MottaEfficient generator of update packages for mobile devices
US7050392B2 (en)2001-03-302006-05-23Brocade Communications Systems, Inc.In-order delivery of frames during topology change
US7055068B2 (en)2002-07-252006-05-30Lsi Logic CorporationMethod for validating operation of a fibre link
US7061871B2 (en)2001-07-312006-06-13Tandberg Telecom AsSystem and method for identifying errors in a video conference conducted on a packet-based network
US7092374B1 (en)2000-09-272006-08-15Cirrus Logic, Inc.Architecture for a wireless area network node
US20060184711A1 (en)2003-01-212006-08-17Nextio Inc.Switching apparatus and method for providing shared i/o within a load-store fabric
US20060203725A1 (en)2001-06-132006-09-14Paul Harry VFibre channel switch
US7110394B1 (en)2001-06-252006-09-19Sanera Systems, Inc.Packet switching apparatus including cascade ports and method for switching packets
US7120728B2 (en)2002-07-312006-10-10Brocade Communications Systems, Inc.Hardware-based translating virtualization switch
US7123306B1 (en)1999-09-062006-10-17Matsushita Electric Industrial Co., Ltd.Data transmitter and data receiver
US7124169B2 (en)2003-06-182006-10-17Hitachi, Ltd.Network system and its switches
US7151778B2 (en)2001-04-182006-12-19Brocade Communications Systems, Inc.Frame filtering of fibre channel packets
US7171050B2 (en)2002-03-192007-01-30Samsung Electronics Co., Ltd.System on chip processor for multimedia devices
US7185062B2 (en)2001-09-282007-02-27Emc CorporationSwitch-based storage services
US7188364B2 (en)2001-12-202007-03-06Cranite Systems, Inc.Personal virtual bridged local area networks
US7194538B1 (en)2002-06-042007-03-20Veritas Operating CorporationStorage area network (SAN) management system for discovering SAN components using a SAN management server
US7200610B1 (en)2002-04-222007-04-03Cisco Technology, Inc.System and method for configuring fibre-channel devices
US7200108B2 (en)2001-06-292007-04-03International Business Machines CorporationMethod and apparatus for recovery from faults in a loop network
US7206288B2 (en)*2002-06-122007-04-17Cisco Technology, Inc.Methods and apparatus for characterizing a route in fibre channel fabric
US7221650B1 (en)2002-12-232007-05-22Intel CorporationSystem and method for checking data accumulators for consistency
US7245613B1 (en)2002-03-282007-07-17Advanced Micro Devices, Inc.Arrangement in a channel adapter for validating headers concurrently during reception of a packet for minimal validation latency
US7263593B2 (en)2002-11-252007-08-28Hitachi, Ltd.Virtualization controller and data transfer control method
US7266286B2 (en)1998-04-062007-09-04Sony CorporationEditing system and method and distribution medium
US20070206502A1 (en)2002-07-292007-09-06Brocade Communications Systems, IncCascade credit sharing for fibre channel links
US7269131B2 (en)*2001-08-062007-09-11International Business Machines CorporationMethod and apparatus for managing a loop network
US7269168B2 (en)2002-07-312007-09-11Brocade Communications Systems, Inc.Host bus adaptor-based virtualization switch
US7277431B2 (en)2002-10-312007-10-02Brocade Communications Systems, Inc.Method and apparatus for encryption or compression devices inside a storage area network fabric
US7287063B2 (en)2001-10-052007-10-23International Business Machines CorporationStorage area network methods and apparatus using event notifications with data
US7292593B1 (en)2002-03-282007-11-06Advanced Micro Devices, Inc.Arrangement in a channel adapter for segregating transmit packet data in transmit buffers based on respective virtual lanes
US7315511B2 (en)2001-10-242008-01-01Fujitsu LimitedTransmitter, SONET/SDH transmitter, and transmission system
US7327680B1 (en)2002-11-052008-02-05Cisco Technology, Inc.Methods and apparatus for network congestion control
US7352740B2 (en)2003-04-292008-04-01Brocade Communciations Systems, Inc.Extent-based fibre channel zoning in hardware

Patent Citations (277)

* Cited by examiner, † Cited by third party
Publication numberPriority datePublication dateAssigneeTitle
US4162375A (en)1972-03-231979-07-24Siemens AktiengesellschaftTime-divison multiplex switching network with spatial switching stages
US4081612A (en)1975-07-311978-03-28Hasler AgMethod for building-up of routing addresses in a digital telecommunication network
US4200929A (en)1978-01-231980-04-29Davidjuk Alexandr DInput device for delivery of data from digital transmitters
US4258418A (en)1978-12-281981-03-24International Business Machines CorporationVariable capacity data buffer system
US4344132A (en)1979-12-141982-08-10International Business Machines CorporationSerial storage interface apparatus for coupling a serial storage mechanism to a data processor input/output bus
US4344132B1 (en)1979-12-141984-03-27
US4425640A (en)1980-04-241984-01-10The Plessey Company PlcTelecommunications switching network using digital switching modules
US4382159A (en)1981-05-291983-05-03Bowditch Robert SBlow actuated microphone
US4546468A (en)1982-09-131985-10-08At&T Bell LaboratoriesSwitching network control circuit
US4569043A (en)1983-06-221986-02-04Gte Automatic Electric Inc.Arrangement for interfacing the space stage to the time stages of a T-S-T digital switching system
US5051742A (en)1984-12-031991-09-24Robert M. NewmanQueueing protocol
US4716561A (en)1985-08-261987-12-29American Telephone And Telegraph Company, At&T Bell LaboratoriesDigital transmission including add/drop module
US4725835A (en)1985-09-131988-02-16T-Bar IncorporatedTime multiplexed bus matrix switching system
US4860193A (en)1986-05-221989-08-22International Business Machines CorporationSystem for efficiently transferring data between a high speed channel and a low speed I/O device
US5025370A (en)1986-09-021991-06-18Koegel Robert JCircuit for preventing lock-out of high priority requests to a system controller
US4821034A (en)1987-02-061989-04-11Ancor Communications, Inc.Digital exchange switch element and network
US4980857A (en)1987-04-151990-12-25Allied-Signal Inc.Operations controller for a fault tolerant multiple node processing system
US5144622A (en)1988-02-151992-09-01Hitachi, Ltd.Network system
US5090011A (en)1988-12-231992-02-18Hitachi, Ltd.Packet congestion control method and packet switching equipment
US5115430A (en)1990-09-241992-05-19At&T Bell LaboratoriesFair access of multi-priority traffic to distributed-queue dual-bus networks
US5339311A (en)1991-03-011994-08-16Washington UniversityData packet resequencer for a high speed data switch
US5260935A (en)1991-03-011993-11-09Washington UniversityData packet resequencer for a high speed data switch
US5260933A (en)1992-05-151993-11-09International Business Machines CorporationAcknowledgement protocol for serial data network with out-of-order delivery
US5390173A (en)1992-10-221995-02-14Digital Equipment CorporationPacket format in hub for packet data communications system
US5367520A (en)1992-11-251994-11-22Bell Communcations Research, Inc.Method and system for routing cells in an ATM switch
US5590125A (en)1993-05-261996-12-31The Trustees Of Columbia University In The City Of New YorkMethod and apparatus for supporting mobile communications in asynchronous transfer mode based networks
EP0649098A2 (en)1993-10-151995-04-19International Business Machines CorporationDynamic switch cascading system
US5568165A (en)1993-10-221996-10-22Auravision CorporationVideo processing technique using multi-buffer video memory
US5818842A (en)1994-01-211998-10-06Newbridge Networks CorporationTransparent interconnector of LANs by an ATM network
US5537400A (en)1994-04-151996-07-16Dsc Communications CorporationBuffered crosspoint matrix for an asynchronous transfer mode switch and method of operation
US5999528A (en)1994-04-291999-12-07Newbridge Networks CorporationCommunications system for receiving and transmitting data cells
US6134127A (en)1994-05-182000-10-17Hamilton Sunstrand CorporationPWM harmonic control
US5594672A (en)1994-05-201997-01-14Micro Energetics CorporationPeripheral power saver
US6411627B1 (en)1994-07-252002-06-25Curtin University Of TechnologySwitching protocol providing controlled access to available asynchronous network service
US5568614A (en)1994-07-291996-10-22International Business Machines CorporationData streaming between peer subsystems of a computer system
US5598541A (en)1994-10-241997-01-28Lsi Logic CorporationNode loop port communication interface super core for fibre channel
US5821875A (en)1994-12-231998-10-13Electronics And Telecommunications Research InstituteData switching device
US5687172A (en)1994-12-301997-11-11Lucent Technologies Inc.Terabit per second distribution network
US5894560A (en)1995-03-171999-04-13Lsi Logic CorporationMethod and apparatus for controlling I/O channels responsive to an availability of a plurality of I/O devices to transfer data
US5706279A (en)1995-03-241998-01-06U S West Technologies, Inc.Methods and systems for managing packet flow into a fast packet switching network
US5623492A (en)1995-03-241997-04-22U S West Technologies, Inc.Methods and systems for managing bandwidth resources in a fast packet switching network
US5812525A (en)1995-03-241998-09-22U S West Technologies, Inc.Methods and systems for managing bandwidth resources in a fast packet switching network
US5701416A (en)1995-04-131997-12-23Cray Research, Inc.Adaptive routing mechanism for torus interconnection network
US5978359A (en)1995-07-191999-11-02Fujitsu Network Communications, Inc.Allocated and dynamic switch flow control
US5748612A (en)1995-08-101998-05-05Mcdata CorporationMethod and apparatus for implementing virtual circuits in a fibre channel system
US5768533A (en)1995-09-011998-06-16National Semiconductor CorporationVideo coding using segmented frames and retransmission to overcome channel errors
US5666483A (en)1995-09-221997-09-09Honeywell Inc.Redundant processing system architecture
US6047323A (en)1995-10-192000-04-04Hewlett-Packard CompanyCreation and migration of distributed streams in clusters of networked computers
US5828475A (en)1995-10-251998-10-27Mcdata CorporationBypass switching and messaging mechanism for providing intermix data transfer for a fiber optic switch using a bypass bus and buffer
US5610745A (en)1995-10-261997-03-11Hewlett-Packard Co.Method and apparatus for tracking buffer availability
US6055618A (en)1995-10-312000-04-25Cray Research, Inc.Virtual maintenance network in multiprocessing system having a non-flow controlled virtual maintenance channel
US6021128A (en)1996-03-112000-02-01Hitachi, Ltd.Asynchronous transfer mode switching system
US5768271A (en)1996-04-121998-06-16Alcatel Data Networks Inc.Virtual private network
US5732206A (en)1996-07-231998-03-24International Business Machines CorporationMethod, apparatus and program product for disruptive recovery in a data processing system
US6240096B1 (en)1996-09-112001-05-29Mcdata CorporationFibre channel switch employing distributed queuing
US6031842A (en)1996-09-112000-02-29Mcdata CorporationLow latency shared memory switch architecture
US5835752A (en)1996-10-181998-11-10Samsung Electronics Co. Ltd.PCI interface synchronization
US6229822B1 (en)1996-10-242001-05-08Newbridge Networks CorporationCommunications system for receiving and transmitting data cells
US5850386A (en)1996-11-011998-12-15Wandel & Goltermann Technologies, Inc.Protocol analyzer for monitoring digital transmission networks
US6418477B1 (en)1996-11-152002-07-09Philips Electronics North America CorporationCommunication network
US6128292A (en)1996-12-052000-10-03Electronics And Telecommunications Research InstitutePacket switching apparatus with multi-channel and multi-cast switching functions and packet switching system using the same
US6449274B1 (en)1996-12-122002-09-10Pmc-Sierra, Inc.Apparatus for high speed communication system
US6760302B1 (en)1996-12-202004-07-06The Trustees Of Columbia University In The City Of New YorkAutomatic protection switching system in a network
US6026092A (en)1996-12-312000-02-15Northern Telecom LimitedHigh performance fault tolerant switching system for multimedia satellite and terrestrial communications networks
US5978379A (en)1997-01-231999-11-02Gadzoox Networks, Inc.Fiber channel learning bridge, learning half bridge, and protocol
US6614796B1 (en)1997-01-232003-09-02Gadzoox Networks, Inc,Fibre channel arbitrated loop bufferless switch circuitry to increase bandwidth without significant increase in cost
EP0856969A1 (en)1997-01-311998-08-05Nec CorporationFibre channel fabric
US6014383A (en)1997-02-102000-01-11Compaq Computer CorporationSystem and method for controlling multiple initiators in a fibre channel environment
US5954796A (en)1997-02-111999-09-21Compaq Computer CorporationSystem and method for automatically and dynamically changing an address associated with a device disposed in a fire channel environment
US20020196773A1 (en)1997-02-182002-12-26Vixel CorporationMethods and apparatus for fibre channel interconnection of private loop devices
US6118776A (en)1997-02-182000-09-12Vixel CorporationMethods and apparatus for fiber channel interconnection of private loop devices
US20030086377A1 (en)*1997-02-182003-05-08Vixel CorporationMethods and apparatus for Fibre Channel interconnection of private loop devices
WO1998036537A1 (en)1997-02-181998-08-20Vixel CorporationFibre channel switching fabric
US6160813A (en)1997-03-212000-12-12Brocade Communications Systems, Inc.Fibre channel switching system and method
US5825748A (en)1997-04-081998-10-20International Business Machines CorporationCredit-based flow control checking and correction system
US5987028A (en)1997-05-121999-11-16Industrial Technology Research InsituteMultiple channel ATM switch
US6108738A (en)1997-06-102000-08-22Vlsi Technology, Inc.Multi-master PCI bus system within a single integrated circuit
US6081512A (en)1997-06-302000-06-27Sun Microsystems, Inc.Spanning tree support in a high performance network device
US6253267B1 (en)1997-07-312001-06-26Samsung Electronics Co., Ltd.Hot-plug of PCI bus using single chip
US5790840A (en)1997-08-151998-08-04International Business Machines CorporationTimestamp systems, methods and computer program products for data processing system
US6144668A (en)1997-11-262000-11-07International Business Machines CorporationSimultaneous cut through and store-and-forward frame support in a network device
US6738381B1 (en)1997-12-192004-05-18Telefonaktiebolaget Lm Ericsson (Publ)ATM time stamped queuing
US6061360A (en)*1998-02-242000-05-09Seagate Technology, Inc.Method and apparatus for preserving loop fairness with dynamic half-duplex
US5974547A (en)1998-03-201999-10-263Com CorporationTechnique for reliable network booting of an operating system to a client computer
US7266286B2 (en)1998-04-062007-09-04Sony CorporationEditing system and method and distribution medium
US6108778A (en)1998-04-072000-08-22Micron Technology, Inc.Device for blocking bus transactions during reset
US6252891B1 (en)1998-04-092001-06-26Spirent Communications, Inc.System and method to insert timestamp information in a protocol neutral manner
US6324181B1 (en)1998-04-162001-11-273Com CorporationFibre channel switched arbitrated loop
US6151644A (en)1998-04-172000-11-21I-Cube, Inc.Dynamically configurable buffer for a computer network
US6570850B1 (en)1998-04-232003-05-27Giganet, Inc.System and method for regulating message flow in a digital data network
US6289002B1 (en)1998-05-012001-09-11Emulex CorporationAutomatic isolation in loops
US5936442A (en)1998-05-011999-08-10Kye Systems Corp.Power shut-off and recovery circuit for data communication devices
US6201787B1 (en)1998-05-012001-03-13Emulex CorporationAutomatic loop segment failure isolation
US6411599B1 (en)1998-05-292002-06-25International Business Machines CorporationFault tolerant switching architecture
US6330236B1 (en)1998-06-112001-12-11Synchrodyne Networks, Inc.Packet switching method with time-based routing
US6353612B1 (en)1998-06-192002-03-05Brocade Communications Systems, Inc.Probing device
US6988130B2 (en)1998-06-292006-01-17Emc CorporationVirtual ports for partitioning of data storage
US20040054866A1 (en)1998-06-292004-03-18Blumenau Steven M.Mapping of hosts to logical storage units and data storage ports in a data processing system
US7051182B2 (en)1998-06-292006-05-23Emc CorporationMapping of hosts to logical storage units and data storage ports in a data processing system
US6421711B1 (en)1998-06-292002-07-16Emc CorporationVirtual ports for data transferring of a data storage system
US20020194294A1 (en)1998-06-292002-12-19Blumenau Steven M.Virtual ports for partitioning of data storage
US6452915B1 (en)1998-07-102002-09-17Malibu Networks, Inc.IP-flow classification in a wireless point to multi-point (PTMP) transmission system
US20010038628A1 (en)1998-07-222001-11-08Yoram OfekDistributed switching system and method with time-based routing
US6401128B1 (en)1998-08-072002-06-04Brocade Communiations Systems, Inc.System and method for sending and receiving frames between a public device and a private device
US6301612B1 (en)1998-08-122001-10-09Microsoft CorporationEstablishing one computer as a replacement for another computer
US6209089B1 (en)1998-08-122001-03-27Microsoft CorporationCorrecting for changed client machine hardware using a server-based operating system
US20040028038A1 (en)1998-09-012004-02-12Ancor Communications, Inc.High performance switching
US6597691B1 (en)1998-09-012003-07-22Ancor Communications, Inc.High performance switching
US20040174813A1 (en)1998-09-302004-09-09Stmicroelectronics, Inc.Method and apparatus for controlling network data congestion
US6470026B1 (en)1998-10-302002-10-22Agilent Technologies, Inc.Fibre channel loop map initialization protocol implemented in hardware
US20030174721A1 (en)1998-11-192003-09-18Black Alistair D.Fibre channel arbitrated loop bufferless switch circuitry to increase bandwidth without significant increase in cost
US6570853B1 (en)1998-12-182003-05-27Lsi Logic CorporationMethod and apparatus for transmitting data to a node in a distributed data processing system
US6308220B1 (en)1999-01-292001-10-23Neomagic Corp.Circulating parallel-search engine with random inputs for network routing table stored in a wide embedded DRAM
US6424658B1 (en)1999-01-292002-07-23Neomagic Corp.Store-and-forward network switch using an embedded DRAM
US6230276B1 (en)1999-02-012001-05-08Douglas T HaydenEnergy conserving measurement system under software control and method for battery powered products
US6467008B1 (en)1999-03-012002-10-15Sun Microsystems, Inc.Method and apparatus for indicating an interrupt in a network interface
US6370605B1 (en)1999-03-042002-04-09Sun Microsystems, Inc.Switch based scalable performance storage architecture
US20050036763A1 (en)1999-05-062005-02-17Motoki KatoMethod of processing multiplexed program data using entry points and time units
US6594231B1 (en)1999-05-122003-07-153Com CorporationMethod and apparatus for configuration of stackable units in packet-based communications systems
US6807181B1 (en)1999-05-192004-10-19Sun Microsystems, Inc.Context based control data
US20030072316A1 (en)1999-05-202003-04-17Autumn Jane NiuApparatus and method in a network switch port for transferring data between buffer memory and transmit and receive state machines according to a prescribed interface protocol
US20030195983A1 (en)1999-05-242003-10-16Krause Michael R.Network congestion management using aggressive timers
US6987768B1 (en)1999-06-022006-01-17Fujitsu LimitedPacket transferring apparatus
US6597777B1 (en)1999-06-292003-07-22Lucent Technologies Inc.Method and apparatus for detecting service anomalies in transaction-oriented networks
US6457090B1 (en)1999-06-302002-09-24Adaptec, Inc.Structure and method for automatic configuration for SCSI Synchronous data transfers
US6697359B1 (en)1999-07-022004-02-24Ancor Communications, Inc.High performance switch fabric element and switch systems
US20040141521A1 (en)1999-07-022004-07-22Ancor Communications, Inc.High performance switch fabric element and switch systems
US20060013248A1 (en)1999-08-132006-01-19Hamayun MujeebSwitching device interfaces
US7123306B1 (en)1999-09-062006-10-17Matsushita Electric Industrial Co., Ltd.Data transmitter and data receiver
US6343324B1 (en)1999-09-132002-01-29International Business Machines CorporationMethod and system for controlling access share storage devices in a network environment by configuring host-to-volume mapping data structures in the controller memory for granting and denying access to the devices
US7010607B1 (en)1999-09-152006-03-07Hewlett-Packard Development Company, L.P.Method for training a communication link between ports to correct for errors
US6859435B1 (en)1999-10-132005-02-22Lucent Technologies Inc.Prevention of deadlocks and livelocks in lossless, backpressured packet networks
US20040153526A1 (en)1999-10-182004-08-05Haun C. K.Providing a reliable operating system for clients of a net-booted environment
US7233985B2 (en)1999-10-182007-06-19Apple Inc.Providing a reliable operating system for clients of a net-booted environment
US6785241B1 (en)1999-12-022004-08-31International Business Machines CorporationMethod for pacing buffered data transfers over a network such as fibre channel
US20030016683A1 (en)1999-12-102003-01-23George William R.Fibre channel credit extender and repeater
US20020016838A1 (en)1999-12-172002-02-07Ceki GelucScheme for blocking the use of lost or stolen network-connectable computer systems
US7024410B2 (en)2000-01-142006-04-04Hitachi, Ltd.Security method and system for storage subsystem
US6684209B1 (en)2000-01-142004-01-27Hitachi, Ltd.Security method and system for storage subsystem
US20010011357A1 (en)2000-02-012001-08-02Yoshiaki MoriTroubleshooting method of looped interface and system provided with troubleshooting function
US20030046396A1 (en)2000-03-032003-03-06Richter Roger K.Systems and methods for managing resource utilization in information management environments
US20010022823A1 (en)2000-03-202001-09-20Pierre RenaudMethod and system for multi-protocol clock recovery and generation
US6657962B1 (en)2000-04-102003-12-02International Business Machines CorporationMethod and system for managing congestion in a network
US6718497B1 (en)2000-04-212004-04-06Apple Computer, Inc.Method and apparatus for generating jitter test patterns on a high performance serial bus
US20010047460A1 (en)2000-04-252001-11-29Naotaka KobayashiRemote copy system of storage systems connected to fibre network
US6865157B1 (en)2000-05-262005-03-08Emc CorporationFault tolerant shared system resource with communications passthrough providing high availability communications
US20020034178A1 (en)2000-06-022002-03-21Inrange Technologies CorporationFibre channel address adaptor having data buffer extension and address mapping in a fibre channel switch
US7248580B2 (en)2000-06-052007-07-24Qlogic Switch Products, Inc.Hardware-enforced loop-level hard zoning for fibre channel switch fabric
WO2001095566A3 (en)2000-06-052002-06-13Qlogic Switch Products IncHardware-enforced loop-level hard zoning for fibre channel switch fabric
US20030179748A1 (en)2000-06-052003-09-25George William R.Hardware-enforced loop-level hard zoning for fibre channel switch fabric
US6816750B1 (en)2000-06-092004-11-09Cirrus Logic, Inc.System-on-a-chip
US6816492B1 (en)2000-07-312004-11-09Cisco Technology, Inc.Resequencing packets at output ports without errors using packet timestamps and timestamp floors
US7092374B1 (en)2000-09-272006-08-15Cirrus Logic, Inc.Architecture for a wireless area network node
US7039070B2 (en)2000-10-272006-05-02Kabushiki Kaisha ToshibaMoving image packet decoding and reproducing apparatus, reproduction time control method thereof, computer program product for controlling reproduction time and multimedia information receiving apparatus
US6697368B2 (en)2000-11-172004-02-24Foundry Networks, Inc.High-performance network switch
US20060107260A1 (en)2000-11-172006-05-18Giovanni MottaEfficient generator of update packages for mobile devices
US7002926B1 (en)2000-11-302006-02-21Western Digital Ventures, Inc.Isochronous switched fabric network
US6744772B1 (en)2000-11-302004-06-01Western Digital Ventures, Inc.Converting asynchronous packets into isochronous packets for transmission through a multi-dimensional switched fabric network
US7061862B2 (en)2000-12-112006-06-13Kabushiki Kaisha ToshibaInter-network relay system and method
US20020071387A1 (en)2000-12-112002-06-13Kabushiki Kaisha ToshibaInter-network relay unit and transfer scheduling method in the same
US6968463B2 (en)2001-01-172005-11-22Hewlett-Packard Development Company, L.P.System for controlling access to resources in a storage area network
US20020103913A1 (en)2001-01-262002-08-01Ahmad TawilSystem and method for host based target device masking based on unique hardware addresses
US20020104039A1 (en)2001-01-302002-08-01Sun Microsystems, Inc.Method, system, program, and data structures for testing a network system including input/output devices
US20040081394A1 (en)2001-01-312004-04-29Giora BiranProviding control information to a management processor of a communications switch
US6606690B2 (en)2001-02-202003-08-12Hewlett-Packard Development Company, L.P.System and method for accessing a storage area network as network attached storage
US20020124124A1 (en)2001-03-022002-09-05Yoshiko MatsumotoStorage subsystem that connects fibre channel and supports online backup
US20020172195A1 (en)2001-03-232002-11-21Pekkala Richard E.Apparatus amd method for disparate fabric data and transaction buffering within infiniband device
US20020174197A1 (en)2001-03-272002-11-21International Business Machines CorporationMethod and system for accurately determining a device location in an arbitrated loop
US6947393B2 (en)2001-03-302005-09-20Hewlett-Packard Development Company, L.P.Segmented fiber channel arbitrated loop and intra-loop routing system
US7050392B2 (en)2001-03-302006-05-23Brocade Communications Systems, Inc.In-order delivery of frames during topology change
US20020147843A1 (en)2001-04-042002-10-10Sun Microsystems, Inc.Method, system, and program for enabling communication between devices using dynamic addressing
US20020147560A1 (en)2001-04-042002-10-10International Business Machines CorporationMethod and system for logic verification using mirror interface
US7151778B2 (en)2001-04-182006-12-19Brocade Communications Systems, Inc.Frame filtering of fibre channel packets
US20020156918A1 (en)2001-04-232002-10-24Brocade Communications Systems, Inc.Dynamic path selection with in-order delivery within sequence in a communication network
US20020159385A1 (en)2001-04-262002-10-31Susnow Dean S.Link level packet flow control mechanism
US7190667B2 (en)2001-04-262007-03-13Intel CorporationLink level packet flow control mechanism
US7000025B1 (en)2001-05-072006-02-14Adaptec, Inc.Methods for congestion mitigation in infiniband
US20060203725A1 (en)2001-06-132006-09-14Paul Harry VFibre channel switch
US20020191602A1 (en)2001-06-132002-12-19Woodring Sherrie L.Address mapping and identification
US20030002503A1 (en)2001-06-152003-01-02Brewer Lani WilliamSwitch assisted frame aliasing for storage virtualization
US7110394B1 (en)2001-06-252006-09-19Sanera Systems, Inc.Packet switching apparatus including cascade ports and method for switching packets
US7200108B2 (en)2001-06-292007-04-03International Business Machines CorporationMethod and apparatus for recovery from faults in a loop network
US6779083B2 (en)2001-07-132004-08-17Hitachi, Ltd.Security for logical unit in storage subsystem
US6941357B2 (en)2001-07-182005-09-06Dell Products L.P.Fibre channel switching appliance
US7215680B2 (en)2001-07-262007-05-08Nishan Systems, Inc.Method and apparatus for scheduling packet flow on a fibre channel arbitrated loop
US20030056000A1 (en)2001-07-262003-03-20Nishan Systems, Inc.Transfer ready frame reordering
US20030021239A1 (en)*2001-07-262003-01-30Mullendore Rodney N.Method and apparatus for scheduling packet flow on a fibre channel arbitrated loop
US20030229808A1 (en)2001-07-302003-12-11Axcelerant, Inc.Method and apparatus for monitoring computer network security enforcement
US20030026287A1 (en)2001-07-312003-02-06Mullendore Rodney N.Method and system for managing time division multiplexing (TDM) timeslots in a network switch
US20030026267A1 (en)2001-07-312003-02-06Oberman Stuart F.Virtual channels in a network switch
US7061871B2 (en)2001-07-312006-06-13Tandberg Telecom AsSystem and method for identifying errors in a video conference conducted on a packet-based network
US7269131B2 (en)*2001-08-062007-09-11International Business Machines CorporationMethod and apparatus for managing a loop network
US6952659B2 (en)2001-08-102005-10-04Sun Microsystems, Inc.Computer system monitoring
US20030035433A1 (en)2001-08-162003-02-20International Business Machines CorporationApparatus and method for virtualizing a queue pair space to minimize time-wait impacts
US6532212B1 (en)2001-09-252003-03-11Mcdata CorporationTrunking inter-switch links
US20030079019A1 (en)2001-09-282003-04-24Lolayekar Santosh C.Enforcing quality of service in a storage network
US7185062B2 (en)2001-09-282007-02-27Emc CorporationSwitch-based storage services
US20030172239A1 (en)2001-10-052003-09-11Swank Raymond MatthewStorage area network methods and apparatus for identifiying fiber channel devices in kernel mode
US7287063B2 (en)2001-10-052007-10-23International Business Machines CorporationStorage area network methods and apparatus using event notifications with data
US20030191857A1 (en)2001-10-182003-10-09Terrell William C.Router and methods using in-band link between managing processor and routing processor
US20030189930A1 (en)2001-10-182003-10-09Terrell William C.Router with routing processors and methods for virtualization
US20030076788A1 (en)2001-10-192003-04-24Sun Microsystems, Inc.Method, system, and program for discovering devices communicating through a switch
US7315511B2 (en)2001-10-242008-01-01Fujitsu LimitedTransmitter, SONET/SDH transmitter, and transmission system
US20030084219A1 (en)2001-10-262003-05-01Maxxan Systems, Inc.System, apparatus and method for address forwarding for a computer network
US20040208201A1 (en)2001-10-312004-10-21Naoto OtakeTimestamp value controlling apparatus
US7039870B2 (en)2001-11-072006-05-02Hitachi, Ltd.Method for connecting computer systems
US20030093607A1 (en)2001-11-092003-05-15Main Kevin K.Low pin count (LPC) I/O bridge
US20030091062A1 (en)2001-11-132003-05-15Lay Samuel C.Method and apparatus for providing optimized high speed link utilization
US20030103451A1 (en)2001-11-302003-06-05Lutgen Craig L.Method and apparatus for managing congestion in a data communication network
US20030115355A1 (en)2001-12-182003-06-19Andiamo Systems, Inc.Methods and apparatus for network congestion control
US20050088969A1 (en)2001-12-192005-04-28Scott CarlsenPort congestion notification in a switch
US7188364B2 (en)2001-12-202007-03-06Cranite Systems, Inc.Personal virtual bridged local area networks
US20030120743A1 (en)2001-12-212003-06-26Coatney Susan M.System and method of implementing disk ownership in networked storage
US20050036499A1 (en)2001-12-262005-02-17Andiamo Systems, Inc., A Delaware CorporationFibre Channel Switch that enables end devices in different fabrics to communicate with one another while retaining their unique Fibre Channel Domain_IDs
US20030117961A1 (en)2001-12-262003-06-26Chuah John Tiong-HengMethod and system for isolation of a fault location in a communications device
US20030120983A1 (en)2001-12-262003-06-26Vieregge Richard CharlesSystem and method for performing pre-emptive protection switching
US20030126242A1 (en)2001-12-282003-07-03Chang Albert H.Network boot system and method using remotely-stored, client-specific boot images created from shared, base snapshot image
US20030126223A1 (en)2001-12-312003-07-03Maxxan Systems, Inc.Buffer to buffer credit flow control for computer network
US6934799B2 (en)2002-01-182005-08-23International Business Machines CorporationVirtualization of iSCSI storage
US20030179755A1 (en)2002-01-182003-09-25Fraser Alexander GibsonSystem and method for handling prioritized data in a network
US20030172149A1 (en)2002-01-232003-09-11Andiamo Systems, A Delaware CorporationMethods and apparatus for implementing virtualization of storage within a storage area network
US20030137941A1 (en)2002-01-242003-07-24Brocade Communications Systems, Inc.Fault-tolerant updates to a distributed fibre channel database
US7047326B1 (en)2002-01-312006-05-16Harman International Industries, Inc.Use of a remote control with a device having a built-in communication port
US6988149B2 (en)2002-02-262006-01-17Lsi Logic CorporationIntegrated target masking
US20030174789A1 (en)2002-03-142003-09-18SynthesysMethod and apparatus for determining the errors of a mult-valued data signal that are outside the limits of an eye mask
US20030174652A1 (en)2002-03-182003-09-18Nec CorporationMulti-hop network for transmission of packets whose size is determined by hop count number
US7171050B2 (en)2002-03-192007-01-30Samsung Electronics Co., Ltd.System on chip processor for multimedia devices
US20030179709A1 (en)2002-03-212003-09-25Broadcom CorporationAuto-selection of SGMII or SerDes pass-through modes
US7245613B1 (en)2002-03-282007-07-17Advanced Micro Devices, Inc.Arrangement in a channel adapter for validating headers concurrently during reception of a packet for minimal validation latency
US7292593B1 (en)2002-03-282007-11-06Advanced Micro Devices, Inc.Arrangement in a channel adapter for segregating transmit packet data in transmit buffers based on respective virtual lanes
WO2003088050A1 (en)2002-04-052003-10-23Cisco Technology, Inc.Apparatus and method for defining a static fibre channel fabric
US20030189935A1 (en)2002-04-092003-10-09Warden Gary G.Systems and methods for providing quality of service (QoS) in an environment that does not normally support QoS features
US20030198238A1 (en)*2002-04-192003-10-23Seagate Technology LlcPrioritizing outbound data transfers across a serial data transmission interface
US7200610B1 (en)2002-04-222007-04-03Cisco Technology, Inc.System and method for configuring fibre-channel devices
US20030218986A1 (en)2002-05-242003-11-27Andiamo Systems, Inc.Apparatus and method for preventing disruption of fibre channel fabrics caused by reconfigure fabric (RCF) messages
US7194538B1 (en)2002-06-042007-03-20Veritas Operating CorporationStorage area network (SAN) management system for discovering SAN components using a SAN management server
US7206288B2 (en)*2002-06-122007-04-17Cisco Technology, Inc.Methods and apparatus for characterizing a route in fibre channel fabric
US20030236953A1 (en)2002-06-212003-12-25Compaq Information Technologies Group, L.P.System and method for providing multi-initiator capability to an ATA drive
US20040024831A1 (en)2002-06-282004-02-05Shih-Yun YangBlade server management system
US20040081186A1 (en)2002-07-022004-04-29Vixel CorporationMethods and apparatus for switching Fibre Channel Arbitrated Loop devices
US20040085994A1 (en)2002-07-022004-05-06Vixel CorporationMethods and apparatus for device access fairness in fibre channel arbitrated loop systems
US20040013088A1 (en)2002-07-192004-01-22International Business Machines CorporationLong distance repeater for digital information
US20040013092A1 (en)2002-07-222004-01-22Betker Steven ManningMethod and system for dynamically assigning domain identification in a multi-module fibre channel switch
US20040013125A1 (en)2002-07-222004-01-22Betker Steven ManningMethod and system for primary blade selection in a multi-module fibre channel switch
US20040015638A1 (en)2002-07-222004-01-22Forbes Bryn B.Scalable modular server system
US7230929B2 (en)2002-07-222007-06-12Qlogic, CorporationMethod and system for dynamically assigning domain identification in a multi-module fibre channel switch
US7055068B2 (en)2002-07-252006-05-30Lsi Logic CorporationMethod for validating operation of a fibre link
US20070206502A1 (en)2002-07-292007-09-06Brocade Communications Systems, IncCascade credit sharing for fibre channel links
US7120728B2 (en)2002-07-312006-10-10Brocade Communications Systems, Inc.Hardware-based translating virtualization switch
US7269168B2 (en)2002-07-312007-09-11Brocade Communications Systems, Inc.Host bus adaptor-based virtualization switch
US20050023656A1 (en)*2002-08-082005-02-03Leedy Glenn J.Vertical system integration
US6941482B2 (en)2002-09-102005-09-06Finisar CorporationSystems and methods for synchronizing time stamps
US20040057389A1 (en)*2002-09-162004-03-25Finisar CorporationNetwork analysis scalable analysis tool for multiple protocols
US20040085955A1 (en)2002-10-312004-05-06Brocade Communications Systems, Inc.Method and apparatus for encryption of data on storage units using devices inside a storage area network fabric
US7277431B2 (en)2002-10-312007-10-02Brocade Communications Systems, Inc.Method and apparatus for encryption or compression devices inside a storage area network fabric
US7327680B1 (en)2002-11-052008-02-05Cisco Technology, Inc.Methods and apparatus for network congestion control
US20040092278A1 (en)2002-11-132004-05-13Wilhelmus DiepstratenManaging priority queues and escalation in wireless communication systems
US7263593B2 (en)2002-11-252007-08-28Hitachi, Ltd.Virtualization controller and data transfer control method
US20040100944A1 (en)2002-11-272004-05-27Scott RichmondSerial ATA frame structure routing circuitry and protocols
US20040109418A1 (en)2002-12-052004-06-10Fedorkow Guy C.Method for verifying function of redundant standby packet forwarder
US20040123181A1 (en)2002-12-202004-06-24Moon Nathan I.Self-repair of memory arrays using preallocated redundancy (PAR) architecture
US7221650B1 (en)2002-12-232007-05-22Intel CorporationSystem and method for checking data accumulators for consistency
US20040153914A1 (en)2003-01-172004-08-05El-Batal Mohamad H.System and method for isolating a faulty switch, storage device or SFP in a daisy-chained configuration
US20060184711A1 (en)2003-01-212006-08-17Nextio Inc.Switching apparatus and method for providing shared i/o within a load-store fabric
US20040151188A1 (en)2003-01-312004-08-05Brocade Communications Systems, Inc.Method and apparatus for providing virtual ports with attached virtual devices in a storage area network
US7352740B2 (en)2003-04-292008-04-01Brocade Communciations Systems, Inc.Extent-based fibre channel zoning in hardware
US7124169B2 (en)2003-06-182006-10-17Hitachi, Ltd.Network system and its switches
US20040267982A1 (en)2003-06-272004-12-30Emulex CorporationRead/write command buffer pool resource management using read-path prediction of future resources
US20050073956A1 (en)2003-08-112005-04-07Moores John D.Network switching device ingress memory system
US20050076113A1 (en)2003-09-122005-04-07Finisar CorporationNetwork analysis sample management process
US20050117522A1 (en)*2003-12-012005-06-02Andiamo Systems, Inc.Apparatus and method for performing fast fibre channel write operations over relatively high latency networks
US20050177641A1 (en)2004-01-162005-08-11Hitachi, Ltd.Method and apparatus for limiting access to a storage system
US20050198523A1 (en)2004-01-292005-09-08Brocade Communications Systems, Inc.Isolation switch for fibre channel fabrics in storage area networks
US20060047852A1 (en)2004-04-232006-03-02Shishir ShahMethod and system for using boot servers in networks
US20060034302A1 (en)2004-07-192006-02-16David PetersonInter-fabric routing
US20060034192A1 (en)2004-08-122006-02-16Broadcom CorporationApparatus and system for coupling and decoupling initiator devices to a network using an arbitrated loop without disrupting the network
US20060074927A1 (en)2004-09-242006-04-06Emc CorporationEnclosure configurable to perform in-band or out-of-band enclosure management

Non-Patent Citations (80)

* Cited by examiner, † Cited by third party
Title
"Deliver Server-Free Backup", Pathlight & Computer Associates, White Paper of Apr. 2000, Ithaca, New York, XP-002381153, 1-8.
"Examination Report from the European Patent Office dated Oct. 12, 2007 for European Application No. 05 805 636.6".
"Final Office Action from USPTO dated Apr. 1, 2008 for U.S. Appl. No. 10/956,717".
"Final Office Action from USPTO dated Apr. 23, 2008 for U.S. Appl. No. 10/889,255".
"Final Office Action from USPTO dated Apr. 25, 2008 for U.S. Appl. No. 10/894,579".
"Final Office Action from USPTO dated Apr. 29, 2008 for U.S. Appl. No. 10/894,491".
"Final Office Action from USPTO dated May 12, 2008 for U.S. Appl. No. 10/894,492".
"Final Office Action from USPTO dated May 21, 2008 for U.S. Appl. No. 10/889,635".
"Notice of Allowance from USPTO dated Apr. 10, 2008 for U.S. Appl. No. 10/241,153".
"Notice of Allowance from USPTO dated Apr. 18, 2008 for U.S. Appl. No. 10/894,597".
"Notice of Allowance from USPTO dated Apr. 4, 2008 for U.S. Appl. No. 11/608,634".
"Notice of Allowance from USPTO dated Dec. 20, 2007 for U.S. Appl. No. 10/889,337".
"Notice of Allowance from USPTO dated Dec. 21, 2007 for U.S. Appl. No. 10/961,463".
"Notice of Allowance from USPTO dated Feb. 8, 2008 for U.S. Appl. No. 10/894,529".
"Notice of Allowance from USPTO dated Jan. 10, 2008 for U.S. Appl. No. 10/263,858".
"Notice of Allowance from USPTO dated Jan. 11, 2008 for U.S. Appl. No. 10/664,548".
"Notice of Allowance from USPTO dated Jan. 8, 2008 for U.S. Appl. No. 10/889,551".
"Office Action from USPTO dated Apr. 11, 2008 for U.S. Appl. No. 10/894,595".
"Office Action from USPTO dated Apr. 14, 2008 for U.S. Appl. No. 10/894,627".
"Office Action from USPTO dated Apr. 17, 2008 for U.S. Appl. No. 10/894,689".
"Office Action from USPTO dated Apr. 3, 2007 for U.S. Appl. No. 10/241,153".
"Office Action from USPTO dated Apr. 3, 2008 for U.S. Appl. No. 10/894,587".
"Office Action from USPTO dated Apr. 4, 2008 for U.S. Appl. No. 10/957,465".
"Office Action from USPTO dated Apr. 6, 2007 for U.S. Appl. No. 10/956,718".
"Office Action from USPTO dated Aug. 20, 2007 for U.S. Appl. No. 10/302,149".
"Office Action from USPTO dated Aug. 31, 2007 for U.S. Appl. No. 10/889,635".
"Office Action from USPTO dated Dec. 5, 2006 for U.S. Appl. No. 10/212,425".
"Office Action from USPTO dated Dec. 7, 2007 for U.S. Appl. No. 10/961,463".
"Office Action from USPTO dated Feb. 12, 2008 for U.S. Appl. No. 11/057,912".
"Office Action from USPTO dated Jan. 19, 2006 for U.S. Appl. No. 10/212,425".
"Office Action from USPTO dated Jan. 19, 2007 for U.S. Appl. No. 10/302,149".
"Office Action from USPTO dated Jan. 9, 2008 for U.S. Appl. No. 10/798,468".
"Office Action from USPTO dated Jan. 9, 2008 for U.S. Appl. No. 11/608,634".
"Office Action from USPTO dated Jul. 11, 2007 for U.S. Appl. No. 10/263,858".
"Office Action from USPTO dated Jul. 3, 2007 2007 for U.S. Appl. No. 10/664,548".
"Office Action from USPTO dated Jun. 1, 2007 for U.S. Appl. No. 10/961,463".
"Office Action from USPTO dated Jun. 28, 2007 for U.S. Appl. No. 10/894,529".
"Office Action from USPTO dated Mar. 20, 2008 for U.S. Appl. No. 10/894,732".
"Office Action from USPTO dated Mar. 21, 2006 for U.S. Appl. No. 10/889,588".
"Office Action from USPTO dated Mar. 5, 2008 for U.S. Appl. No. 10/889,259".
"Office Action from USPTO dated Mar. 7, 2008 for U.S. Appl. No. 10/894,629".
"Office Action from USPTO dated May 14, 2008 for U.S. Appl. No. 10/956,502".
"Office Action from USPTO dated May 15, 2008 for U.S. Appl. No. 10/798,527".
"Office Action from USPTO dated May 2, 2008 for U.S. Appl. No. 11/037,922".
"Office Action from USPTO dated May 21, 2007 for U.S. Appl. No. 10/212,425".
"Office Action from USPTO dated Nov. 13, 2007 for U.S. Appl. No. 10/894,586".
"Office Action from USPTO dated Nov. 15, 2006 for U.S. Appl. No. 10/263,858".
"Office Action from USPTO dated Nov. 16, 2007 for U.S. Appl. No. 10/241,153".
"Office Action from USPTO dated Oct. 11, 2007 for U.S. Appl. No. 10/894,629".
"Office Action from USPTO dated Oct. 17, 2007 for U.S. Appl. No. 10/894,917".
"Office Action from USPTO dated Oct. 18, 2006 for U.S. Appl. No. 10/241,153".
"Office Action from USPTO dated Oct. 23, 2007 for U.S. Appl. No. 10/894,597".
"Office Action from USPTO dated Oct. 25, 2007 for U.S. Appl. No. 10/894,491".
"Office Action from USPTO dated Oct. 25, 2007 for U.S. Appl. No. 10/894,536".
"Office Action from USPTO dated Oct. 25, 2007 for U.S. Appl. No. 10/894,579".
"Office Action from USPTO dated Oct. 3, 2007 for U.S. Appl. No. 10/956,717".
"Office Action from USPTO dated Oct. 4, 2007 for U.S. Appl. No. 10/894,627".
"Office Action from USPTO dated Sep. 10, 2007 for U.S. Appl. No. 10/889,255".
"Office Action from USPTO dated Sep. 14, 2007 for U.S. Appl. No. 10/894,978".
"Office Action from USPTO dated Sep. 19, 2007 for U.S. Appl. No. 10/894,492".
"Office Action from USPTO dated Sep. 20, 2007 for U.S. Appl. No. 10/798,527".
"Office Action from USPTO dated Sep. 20, 2007 for U.S. Appl. No. 10/889,259".
"Office Action from USPTO dated Sep. 4, 2007 for U.S. Appl. No. 10/889,551".
"Office Action from USPTO dated Sep. 6, 2007 for U.S. Appl. No. 10/889,337".
Banks, David C., et al., "Link Trunking and Measuring Link Latency in Fibre Channel Fabric", U.S. Appl. No. 60/286,046, 1-52.
Brown, Douglas W., "A State-Machine Synthesizer", 18th Design Automation Conference, (1981),301-305.
Clark, Tom, "Zoning for Fibre Channel Fabrics", Vixel Corporation Paper-XP002185194., (Aug. 1999), pp. 1-6.
Claudio DeSanti, "Virtual Fabrics Switch Support"; VF Switch Support, T11/04-395v2. Sep. 2004, pp. 1-15.
Curtis, A. R., "Design Considerations for 10-Gbit Fibre Channel", Curtis A. Ridgeway, Distinguished I/O Architect, Storage and Computing ASIC's Division, LSI Logic Corp., Feb. 3, 2003.
DeSanti et al, "Virtual Fabrics";Virtual Fabrics, T11/03-352v0, May 2003; pp. 1-4.
Malavalli, et al., "Fibre Channel Framing and Signaling (FC-FS) Rev 1.10", NCITS working draft proposed American National Standard for Information Technology, (Jan. 25, 2001).
Malavalli, Kumar , "High Speed Fibre Channel Switching Fabric Devices", Proceedings of the SPIE, SPIE, Bellingham, VA, USA vol. 1577., XP000562869, ISSN: 0277-786X,(Sep. 4, 1991),216-226.
Malavalli, Kumar, et al., "Distributed Computing with fibre channel fabric", Proc of the Computer Soc. Int'l Conf., Los Alamitos, IEEE Comp Soc. Press., vol. Conf. 37, XP000340745, (Feb. 24, 1992), pp. 269-274.
Martin et al , "Virtual Channel Architecture", Presentation by Brocade to T11/03-369V0 dated Jun. 2, 2003.
Martin, Charles R., "Fabric Interconnection of fibre channel standard nodes", Proceedings of the SPIE, (Sep. 8, 1992), pp. 65-71.
Melhem, et al., "Minimizing Wavelength Conversions in WDM Path Establishment", Computer Science Department, University of Pittsburgh, Pittsburgh, PA 15260, (2001), 197-211.
Naik, D. , "Inside Windows Storage:Server Storage Technologies for Windows 2000, Windows Server 2003 and Beyond", Addison-Wesley, US, Chapter 5, XP-002381152, (Jul. 15, 2003),137-173.
Pelissier et al, "Inter-Fabric Routing", dated Jul. 30, 2004, Inter Fabric Routing (04-520v0); pp. 1-31.
Ridgeway, Curt , "0GFC-40GFC using 4-lane XAUI's", LSI Logic Presentation-T11/03-069v0, Feb. 3, 2003.
Yoshida, Hu, "LUN Security Considerations for Storage Area Networks," Hitachi Data Systems Paper-XP 002185193 (1999), pp. 1-7.

Cited By (4)

* Cited by examiner, † Cited by third party
Publication numberPriority datePublication dateAssigneeTitle
US20100303084A1 (en)*2009-06-012010-12-02Lsi CorporationApparatus and methods for access fairness for a multiple target bridge/router in a fibre channel arbitrated loop system
US8379665B2 (en)*2009-06-012013-02-19Lsi CorporationApparatus and methods for access fairness for a multiple target bridge/router in a fibre channel arbitrated loop system
US20130229726A1 (en)*2012-03-022013-09-05Jabil Circuit, Inc.Method for Optimizing Control Circuit for FC HDDS in a System and Control Circuit for FC HDDS in a System
US8838842B2 (en)*2012-03-022014-09-16Jabil Circuit, Inc.Method for optimizing control circuit for FC HDDS in a system and control circuit for FC HDDS in a system

Also Published As

Publication numberPublication date
US20050013318A1 (en)2005-01-20

Similar Documents

PublicationPublication DateTitle
US7894348B2 (en)Method and system for congestion control in a fibre channel switch
US7512067B2 (en)Method and system for congestion control based on optimum bandwidth allocation in a fibre channel switch
US6988161B2 (en)Multiple port allocation and configurations for different port operation modes on a host
US7477655B2 (en)Method and system for power control of fibre channel switches
KR100245903B1 (en)Repeater interface controller
US7525910B2 (en)Method and system for non-disruptive data capture in networks
US7649903B2 (en)Method and system for managing traffic in fibre channel systems
US20040022263A1 (en)Cross point switch with out-of-band parameter fine tuning
US20090316592A1 (en)Method and system for selecting virtual lanes in fibre channel switches
US9118586B2 (en)Multi-speed cut through operation in fibre channel switches
EP1652034A2 (en)Method and apparatus for device access fairness in fibre channel arbitrated loop systems
US7352701B1 (en)Buffer to buffer credit recovery for in-line fibre channel credit extension devices
US7522529B2 (en)Method and system for detecting congestion and over subscription in a fibre channel network
US7463646B2 (en)Method and system for fibre channel arbitrated loop acceleration
US7542418B2 (en)Method and apparatus for detecting and removing orphaned primitives in a fibre channel network
US7355966B2 (en)Method and system for minimizing disruption in common-access networks
US7388843B2 (en)Method and apparatus for testing loop pathway integrity in a fibre channel arbitrated loop
US7404020B2 (en)Integrated fibre channel fabric controller
US7152132B2 (en)Method and apparatus for improving buffer utilization in communication networks
US7471635B2 (en)Method and apparatus for test pattern generation
US7620059B2 (en)Method and apparatus for accelerating receive-modify-send frames in a fibre channel network
US7522522B2 (en)Method and system for reducing latency and congestion in fibre channel switches
US7420982B2 (en)Method and system for keeping a fibre channel arbitrated loop open during frame gaps

Legal Events

DateCodeTitleDescription
ASAssignment

Owner name:QLOGIC CORPORATION, CALIFORNIA

Free format text:ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNORS:HARESKI, PATRICIA E.;FIKE, JOHN M.;REEL/FRAME:015573/0861;SIGNING DATES FROM 20040625 TO 20040705

STCFInformation on status: patent grant

Free format text:PATENTED CASE

CCCertificate of correction
FPAYFee payment

Year of fee payment:4

FPAYFee payment

Year of fee payment:8

ASAssignment

Owner name:JPMORGAN CHASE BANK, N.A., AS COLLATERAL AGENT, IL

Free format text:SECURITY AGREEMENT;ASSIGNOR:QLOGIC CORPORATION;REEL/FRAME:041854/0119

Effective date:20170228

ASAssignment

Owner name:CAVIUM, INC., CALIFORNIA

Free format text:MERGER;ASSIGNOR:QLOGIC CORPORATION;REEL/FRAME:044812/0504

Effective date:20160615

ASAssignment

Owner name:CAVIUM, INC, CALIFORNIA

Free format text:RELEASE BY SECURED PARTY;ASSIGNOR:JP MORGAN CHASE BANK, N.A., AS COLLATERAL AGENT;REEL/FRAME:046496/0001

Effective date:20180706

Owner name:CAVIUM NETWORKS LLC, CALIFORNIA

Free format text:RELEASE BY SECURED PARTY;ASSIGNOR:JP MORGAN CHASE BANK, N.A., AS COLLATERAL AGENT;REEL/FRAME:046496/0001

Effective date:20180706

Owner name:QLOGIC CORPORATION, CALIFORNIA

Free format text:RELEASE BY SECURED PARTY;ASSIGNOR:JP MORGAN CHASE BANK, N.A., AS COLLATERAL AGENT;REEL/FRAME:046496/0001

Effective date:20180706

ASAssignment

Owner name:CAVIUM, LLC, CALIFORNIA

Free format text:CHANGE OF NAME;ASSIGNOR:CAVIUM, INC.;REEL/FRAME:047205/0953

Effective date:20180921

ASAssignment

Owner name:CAVIUM INTERNATIONAL, CAYMAN ISLANDS

Free format text:ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNOR:CAVIUM, LLC;REEL/FRAME:051948/0807

Effective date:20191231

ASAssignment

Owner name:MARVELL ASIA PTE, LTD., SINGAPORE

Free format text:ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNOR:CAVIUM INTERNATIONAL;REEL/FRAME:053179/0320

Effective date:20191231

FEPPFee payment procedure

Free format text:MAINTENANCE FEE REMINDER MAILED (ORIGINAL EVENT CODE: REM.); ENTITY STATUS OF PATENT OWNER: LARGE ENTITY

LAPSLapse for failure to pay maintenance fees

Free format text:PATENT EXPIRED FOR FAILURE TO PAY MAINTENANCE FEES (ORIGINAL EVENT CODE: EXP.); ENTITY STATUS OF PATENT OWNER: LARGE ENTITY

STCHInformation on status: patent discontinuation

Free format text:PATENT EXPIRED DUE TO NONPAYMENT OF MAINTENANCE FEES UNDER 37 CFR 1.362

FPLapsed due to failure to pay maintenance fee

Effective date:20201209


[8]ページ先頭

©2009-2025 Movatter.jp