Patent ID: 7240151

Claim:
A method of processing input/output (I/O) requests in a computer system comprising at least one host, at least one content addressable storage (CAS) system that performs a plurality of operations on content units for the at least one host, and an appliance that is separate from the at least one host and the CAS system, wherein the at least one host identifies a content unit on the at least one CAS system using a content address generated based, at least in part, on the content of the content unit that is to be provided when the content unit is read from the CAS system, the method comprising acts, performed by the appliance, of: (A) receiving a first I/O from the at least one host, wherein the first I/O is a request to perform an operation that accesses a first content unit and involves the transmission of the first content unit between the at least one host and the at least one CAS system; (B) examining information relating to the first I/O request; (C) when it is determined, based on the information relating to the first I/O request, that at least one first condition is met, sending an instruction, to the at least one host that issued the first I/O request and/or the at least one CAS system, that causes the path for transmission of the first content unit between the at least one host and the at least one CAS system to not pass through the appliance; and (D) when it is determined, based on the information relating to the first I/O request, that the at least one first condition is not met, sending an instruction to the at least one host and/or to the at least one CAS system that causes the path for transmission of the first content unit between the at least one host and the at least one CAS system to pass through the appliance.