Patent ID: 8898351
Filing Date: 2014-11-25
Classification: G06F

Abstract:
1. A method of compressing data comprising: obtaining an input/output request (I/O) from an upper layer I/O queue; determine if compression is enabled; putting the I/O in a lower layer I/O queue if compression is not enabled; splitting the I/O into smaller I/Os if compression is enabled, the compression being enabled based on an I/O throughput, the size of the smaller I/Os being equal or less than a set block size; asynchronously compressing the smaller I/Os if compression is enabled; if compression is enabled: obtaining the I/O from the beginning of the lower layer I/O queue; determining if the I/O is a write I/O; encrypting the I/O data if the I/O is a write I/O; updating C-metadata if the I/O is a write I/O; and sending the I/O down an I/O stack.