Protecting data transactions on an integrated circuit bus
First Claim
Patent Images
1. A method comprising:
- initiating communication between a remote management module and an agent within a network storage system, wherein the remote management module and the agent cooperatively implement an abstraction layer through which protected data is communicated over an integrated circuit bus to allow the remote management module to be platform independent and compatible with a plurality of different network storage systems, andwherein the agent is positioned between control circuitry of the network storage system and the remote management module within the network storage system, and wherein the agent is configured to monitor system events in the network storage system and act as an intermediary between the remote management module and the control circuitry of the network storage system, wherein the agent includes a buffer to implement the abstraction layer using a packet protocol in which data is queued in the buffer upon a system event and de-queued upon request by the Remote Management Module in response to an interrupt asserted by the agent, the network storage system for servicing a plurality of storage clients over a network;
wherein the remote management module is coupled with a remote administrative console connected to a communications port of the network storage system to allow communication between the remote administrative console and the remote management module over a network to permit a user of the remote administrative console to access and manage the network storage system from a remote location,communicating protected data between the remote management module and the agent, wherein the remote management module and the agent are configured to prevent errors by communicating protected data over the integrated circuit bus, wherein the protected data includes a first data chunk and a second data chunk, the second data chunk being a complement of the first data chunk, the second data chunk for use in verification of the protected data; and
detecting an error by comparing data in the first data chunk with data in the second data chunk after concurrently storing the first data chunk and the second data chunk in a buffer.
2 Assignments
0 Petitions
Accused Products
Abstract
Provided is a method and system for protecting data transactions transmitted on an integrated circuit bus. Specifically, by transmitting data along with the complement of the data from one component to another component that are connected by the integrated circuit bus, the data and complemented data can be compared for errors. Exemplary errors include bit flips. Comparisons include logical operations, such as XOR, that determine if an error has occurred during the transmission of the data or complemented data on the integrated circuit bus.
81 Citations
37 Claims
-
1. A method comprising:
-
initiating communication between a remote management module and an agent within a network storage system, wherein the remote management module and the agent cooperatively implement an abstraction layer through which protected data is communicated over an integrated circuit bus to allow the remote management module to be platform independent and compatible with a plurality of different network storage systems, and wherein the agent is positioned between control circuitry of the network storage system and the remote management module within the network storage system, and wherein the agent is configured to monitor system events in the network storage system and act as an intermediary between the remote management module and the control circuitry of the network storage system, wherein the agent includes a buffer to implement the abstraction layer using a packet protocol in which data is queued in the buffer upon a system event and de-queued upon request by the Remote Management Module in response to an interrupt asserted by the agent, the network storage system for servicing a plurality of storage clients over a network; wherein the remote management module is coupled with a remote administrative console connected to a communications port of the network storage system to allow communication between the remote administrative console and the remote management module over a network to permit a user of the remote administrative console to access and manage the network storage system from a remote location, communicating protected data between the remote management module and the agent, wherein the remote management module and the agent are configured to prevent errors by communicating protected data over the integrated circuit bus, wherein the protected data includes a first data chunk and a second data chunk, the second data chunk being a complement of the first data chunk, the second data chunk for use in verification of the protected data; and detecting an error by comparing data in the first data chunk with data in the second data chunk after concurrently storing the first data chunk and the second data chunk in a buffer. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13)
-
-
14. An article of manufacture comprising:
-
a computer readable storage medium, having encoded and stored thereon, instructions, capable of being executed by a computer system, the instructions comprising; instructions for communicating a first data chunk in a packet using a data integrity protocol over an integrated circuit bus within a storage server from a remote management module to an agent, wherein the remote management module and the agent cooperatively implement an abstraction layer through which protected data is communicated over the integrated circuit bus to allow the remote management module to be platform independent and compatible with a plurality of different storage servers, and wherein the agent is positioned between control circuitry of the storage server and the remote management module, and wherein the agent is configured to monitor system events in the storage server and act as an intermediary between the remote management module and the control circuitry of the storage server, wherein the agent includes a buffer to implement the abstraction layer using a packet protocol in which data is queued in the buffer upon a system event and de-queued upon request by the Remote Management Module in response to an interrupt asserted by the agent, the network storage system for servicing a plurality of storage clients over a first network, and wherein the remote management module is coupled with a remote administrative console connected to a communications port of the storage server to allow direct communication between the remote administrative console and the remote management module over a second network to permit a user of the remote administrative console to access and manage the storage server from a remote location; and instructions for communicating a second data chunk that is a complement of the first data chunk in the same packet with the first data chunk using the data protection protocol over the integrated circuit bus from the remote management module to the agent, wherein the communicating of the second data chunk is not performed until an acknowledgement of the first data chunk is received, wherein the second data chunk is compared with first data chunk after concurrently storing the first data chunk and the second data chunk in a buffer to determine whether an error occurred during the communication. - View Dependent Claims (15, 16)
-
-
17. A system for protecting data communicated over an integrated circuit bus, comprising:
-
a storage server coupled locally to a storage subsystem which includes a set of mass storage devices and is coupled to a set of storage clients through a first network; a remote administrative console coupled to a communication port of the storage server to allow communication between the remote administrative console and the storage server through a second network, the remote administrative console to enable a user of the remote administrative console to perform management functions on the storage server, wherein the storage server operates on behalf of the clients to store and manage shared data in the set of mass storage devices, the storage server including; a remote management module within the storage server operating as a master for transmitting data and complemented data as part of a protected data transaction, the remote management module configured to; delay the transmitting of the complemented data until an acknowledgement of the data is received; and cancel the data transaction if the acknowledgement of the data is not received within a predetermined period of time; and an agent coupled with the remote management module via the integrated circuit bus, wherein the agent and the remote management module cooperatively implement an abstraction layer through which the agent and the remote management module communicate protected data over the integrated circuit bus to allow the remote management module to be platform independent and compatible with a plurality of different storage servers, wherein the agent is positioned between control circuitry of the storage server and the remote management module, and wherein the agent operates as a slave for receiving the data and the complemented data and acknowledging receipt of the data and complemented data, and wherein the remote management module and the agent are configured to prevent errors by communicating protected data over the integrated circuit bus, wherein the data and the complemented data are compared to detect errors during transmission, and wherein the agent is used to monitor events in the network storage system and act as an intermediary between the remote management module and control circuitry of the network storage system, and wherein the agent includes a buffer to implement the abstraction layer using a packet protocol in which data is queued in the buffer upon a system event and de-queued upon request by the Remote Management Module in response to an interrupt asserted by the agent. - View Dependent Claims (18, 19, 20, 21, 22, 23)
-
-
24. A method comprising:
-
initiating communication within a network storage system between a remote management module and an agent to begin a data transaction over an integrated circuit bus, wherein the remote management module and the agent cooperatively implement an abstraction layer through which protected data is communicated over the integrated circuit bus to allow the remote management module to be platform independent and compatible with a plurality of different network storage systems, wherein the agent is located between control circuitry of the network storage system and the remote management module, and wherein the agent is configured to monitor system events in the network storage system and act as an intermediary between the remote management module and the control circuitry of the network storage system, wherein the agent includes a buffer to implement the abstraction layer using a packet protocol in which data is queued in the buffer upon a system event and de-queued upon request by the Remote Management Module in response to an interrupt asserted by the agent, the network storage system for servicing a plurality of storage clients via a first network, and wherein the remote management module is coupled with a remote administrative console connected to a communications port of the network storage system to allow communication between the remote administrative console and the remote management module through a second network to permit a user of the remote administrative console to access and manage the network storage system from a remote location; transmitting a command and a complement of the command in a single packet over the integrated circuit bus from the remote management module to the agent using a data integrity protocol, wherein the command is user-definable to permit user access to, and control of, components of the network storage system from the remote administrative console, and wherein the transmitting of the complement of the command from the remote management module to the agent is performed after an acknowledgement indicating that the command is received from the agent, wherein the command and the complement of the command are compared by the agent to determine an error after concurrently storing the command and the complement of the command in a buffer; and canceling the data transaction if the acknowledgement of the data is not received within a predetermined period of time. - View Dependent Claims (25, 26, 27, 28, 29)
-
-
30. A system comprising:
-
means for initiating communication within a storage server between a remote management module and an agent, wherein the remote management module is coupled with a remote administrative console connected to a communications port of the storage server to allow communication between the remote administrative console and the remote management module through a first network to permit a user of the remote administrative console to access and manage the storage server from a remote location, wherein the remote management module and the agent cooperatively implement an abstraction layer through which protected data is communicated over an integrated circuit bus to allow the remote management module to be platform independent and compatible with a plurality of different storage servers, and wherein the agent is positioned between control circuitry of the storage server and the remote management module, and wherein the agent is configured to monitor system events in the storage server and act as an intermediary between the remote management module and the control circuitry of the storage server, the storage server for servicing a plurality of storage clients via a second network, and wherein the remote management module and the agent cooperatively implement an abstraction layer through which protected data is communicated over an integrated circuit bus to allow the remote management module to be platform independent and compatible with a plurality of different network storage systems, wherein the agent includes a buffer to implement the abstraction layer using a packet protocol in which data is queued in the buffer upon a system event and de-queued upon request by the Remote Management Module in response to an interrupt asserted by the agent; and means for communicating protected data between the remote management module and the agent, wherein the remote management module and the agent communicate the protected data by using a data integrity protocol to transmit a command and a complement of the command in a single packet over the integrated circuit bus from the remote management module to the agent, wherein the command is user-definable to permit the user access to components of the storage server from a remote location via the agent using the remote management module; and means for detecting an error by comparing the command with the complement of the command after storing the command and the complement of the command in a buffer. - View Dependent Claims (31, 32)
-
-
33. A network storage system comprising:
-
a storage server coupled locally to a storage subsystem which includes a set of mass storage devices and coupled to a set of storage clients through a first network; a remote administrative console coupled to a communication port of the storage server to allow direct communication between the remote administrative console and the storage server through a second network, the remote administrative console to enable a user of the remote administrative console to perform management functions on the storage server, wherein the storage server operates on behalf of the clients to store and manage shared data in the set of mass storage devices, the storage server including; control circuitry to control components of the storage server; a remote management module coupled with the remote administrative console over the second network to permit the remote user of the remote administrative console to access and manage the system storage server from a remote location; an integrated circuit bus; and an agent coupled with the remote management module over the integrated circuit bus, wherein the agent is positioned between the control circuitry and the remote management module, and wherein the agent and the remote management module cooperatively implement an abstraction layer through which protected data is communicated over the integrated circuit bus to allow the remote management module to be platform independent and compatible with a plurality of different storage servers, and wherein the agent is configured to monitor the storage server and to act as an intermediary between the control circuitry of the storage server and the remote management module, and wherein the agent and the remote management module cooperatively implement the abstraction layer to permit users of the remote administrative console to obtain access to, and control of, the control circuitry of the network storage server via the remote management module and the agent, wherein the remote management module and the agent are configured to prevent errors by communicating protected data over the integrated circuit bus including transmitting a first data chunk and a second data chunk, the second data chunk being a complement of the first data chunk, wherein comparison logic in the agent detects an error by comparing data in the first data chunk with data in the second data chunk only after concurrently storing the first data chunk and its complement, the second data chunk in a buffer. - View Dependent Claims (34, 35, 36, 37)
-
Specification