Error detection/correction and fault detection/recovery – Data processing system error or fault handling – Reliability and availability
Reexamination Certificate
1999-08-27
2001-06-05
Beausoleil, Robert (Department: 2184)
Error detection/correction and fault detection/recovery
Data processing system error or fault handling
Reliability and availability
C714S045000
Reexamination Certificate
active
06243834
ABSTRACT:
FIELD OF THE INVENTION
This invention relates generally to trace analyzers used with a small computer system interface bus, and more particularly to an apparatus and method for capturing data from a plurality of small computer system interface buses.
BACKGROUND OF THE INVENTION
The small computer system interface (SCSI) is a specification (ANSI std. X3.131-1986) for a peripheral bus and command set. The SCSI interface defines a high performance, peripheral interface that distributes data among peripherals independently of a host computer. SCSI may include an multi-port bus that can accommodate either single or multiple host systems. The use of a multi-port bus generally permits multiple devices, such as disk drives to be coupled to a single SCSI bus. As an example, eight disk drives can be coupled to an eight-port SCSI bus. With the advent of different types of SCSI buses, such as wide and ultra-wide SCSI, even more devices may be coupled to a SCSI bus.
The SCSI bus has a plurality of conductors which utilize a plurality of signals some of which are used for control and some of which are used for data. The data lines are bi-directional and transfer data, commands, status and message information. The control signals and bus phases used in accordance with the conductors determine when and in what direction the data is transferred.
EMC Corporation, assignee of the present invention, manufactures and sells the Symmetrix® family of Integrated Cached Disk Array (ICDA®) storage subsystems. Some models of the Symmetrix family of ICDA storage subsystems can have, for example, one-hundred and twenty-eight (128) different disk drives in a single storage subsystem. Since a SCSI bus is capable of handling multiple peripherals on a single bus, it is a useful way of connecting a host computer or host computers to the ICDA storage subsystem.
In an ICDA storage system connected to a host computer or computers, large amounts of information are regularly being transferred between the host computer(s) and the ICDA storage system. It is often desirable understand different aspects of the information being transferred between the host computer and the ICDA. For example, the host computer may issue a write command to the ICDA. The entire process of the write operation resulting from the write command is commonly called an I/O (input/output operation). The I/O will include the write command from the host computer, the data to actually be written to the ICDA, and a status update indicating that the write to the ICDA was successful. In the I/O just described, if the host computer is considered the initiator and the ICDA is considered the target, and the I/O is analyzed from the perspective of the host computer, the following sequence would hold. The write command would be considered a “message out,” The data to be written to the ICDA would also be considered a “message out,” and the status update returned to the host computer by the ICDA would be considered a “message in.” Thus during the I/O the direction of the I/O changes once.
It should also be understood that the I/O occurs for a certain duration. If the beginning of the write command occurs at T
1
, and the completion of the status occurs at T
2
, the length of the I/O is T
1
-T
2
.
In situations such as those explained, it is desirable to know for example, how many times the direction of the I/O changes, and when such changes occur. It is also useful to know how may of the commands are write commands versus read commands. Lastly, it is also useful to know the length of the I/Os. When this type of information is known it can be used for a variety of purposes, such as performance, modeling and benchmarking analysis, which will indicate how the performance of the ICDA. This type of information is obtained by capturing the information off of the SCSI bus.
Typically, prior art trace analyzers or engines are capable of capturing the data off of only one SCSI bus. For a variety of reasons, a single SCSI analyzer is not useful for capturing data off a plurality of SCSI buses. The amounts of data which have to be captured off a plurality of SCSI buses may be to much for a single device. For example, in what is known in the art as a “deep trace,” data is captured for some predetermined time such as hours, days, weeks or months. Additionally, the connection between the host computer and the ICDA may have a number of SCSI buses. Therefore, in order to is capture data for the system as a whole, a number of SCSI analyzers would be required.
Using a number of discrete SCSI analyzers may be able to capture the data, but the data may be not be useful. If, for example, the wish is to find out many write commands occurred a predetermined time period, use of different discrete SCSI analyzers may not be able to provide such information. Each SCSI analyzer would be capturing data off of a single SCSI bus according to its own clock, but if it is desired to look at performance of the ICDA as a unit during the predetermined time, there is not any way to ensure that all of the clocks on the different SCSI analyzers are in sync with one another. If the data collected is not collected by analyzers on a common clock, then when the data is analyzed, it will not be an accurate reflection of what occurred during the predetermined time period. Thus if one wants to know the how may write commands, over a multi-bus SCSI, took place during the predetermined time period, the different SCSI analyzers will not have a common clock. Therefore, the data collected by the different SCSI analyzers may not show how may write commands actually took place during the predetermined time period. The data collected by the different SCSI analyzers then cannot be analyzed together, as there is not any time consistency among the data. Any analysis that uses the data, such as modeling, benchmarking or performance would not be accurate. It would be useful therefore, to have a device capable of capturing data off a plurality of SCSI buses in a format which will allow all of the data captured off of the plurality of SCSI buses to be analyzed together.
SUMMARY OF THE INVENTION
In accordance with the present invention, an apparatus and a method for capturing data off a plurality of bi-directional communication buses is provided. The apparatus comprises a plurality of trace engines for capturing the data off of the plurality of bi-directional buses. Each one of the trace engines has a trace analyzer and a central processing unit (CPU) connected to the trace analyzer. Each trace analyzer sits passively on one bi-directional communication bus, and contains a clock. The trace analyzer captures data off of The bi-directional bus it is connected to, where it can be read by the CPU. Each one of the trace engines is connected to other trace engines through a communication means which ensures data captured by all of the trace engines is synchronized to a common clock.
In accordance with another aspect of the present invention, the communication means comprises a plurality of pins on each of the trace engines. Each set of the plurality of pins is connected to a jumper. A single communication cable is connected to all of the jumpers. The communication cable is capable of receiving a signal which is originated by one of the clocks on one of the trace engines. The signal is then sent through one set of the plurality of pins and the communication cable transmits the received signal to the clocks contained on the other trace engines to obtain synchronization of all the clocks on all of the trace engines.
In, accordance with another aspect of the present invention a method for capturing data off of a plurality of bi-directional communication buses is provided. The method includes the following steps. The data is captured off of the plurality of bi-directional communication buses by using a plurality of trace engines which are connected together. Each one of the trace engines includes a time stamp and a clock. When the data is captured off of the plurality of bi-directional communication buses it is time stamped wherein
Baderman Scott T.
Beausoleil Robert
EMC Corporation
Fitzgerald Leanne J.
Gunther John M.
LandOfFree
Apparatus and method for capturing information off a... does not yet have a rating. At this time, there are no reviews or comments for this patent.
If you have personal experience with Apparatus and method for capturing information off a..., we encourage you to share that experience with our LandOfFree.com community. Your opinion is very important and Apparatus and method for capturing information off a... will most certainly appreciate the feedback.
Profile ID: LFUS-PAI-O-2469059