Claims Analysis
Total Claims: 28
Claim 1
Independent Claim
327 words
A method for scheduling I/O transactions for a data storage system comprising N d storage units, said data storage system storing data for a plurality of full motion video streams, each of said streams having a bit rate of (A/B)W base where A and B are integers chosen independently for each of said streams, said method comprising the steps of maintaining the continuity of said full motion video streams simultaneously by performing for each of said streams A I/O transactions in each of said N d storage units within each set of B I/O cycles in a sequence of sets of B I/O cycles, each I/O cycle having a duration of N d S/W base , in each of said I/O transactions a segment of S bits is retrieved from one of said storage units or written into one of said storage units, the duration of each I/O transaction being shorter than S/W base , for streams in which segments are retrieved from said storage system, the segments of a stream retrieved from said storage system in each particular set of B I/O cycles being consumed in a particular set of B consumption cycles in a sequence of sets of B consumption cycles, the particular set of B consumption cycles beginning after the first I/O transaction is performed for the stream in the particular set of B I/O cycles, the duration of a consumption cycle being N d S/W base , for streams in which segments are written into said storage system, the segments of a stream written into said storage system in each particular set of B I/O cycles being produced in a particular set of B production cycles in a sequence of sets of B production cycles, the particular set of B production cycles ending prior to performing the last I/O transaction for the stream in the particular set of B I/O cycles; the duration of a production cycle being N d S/W base .
Claim 2
Independent Claim
327 words
A method for scheduling I/O transactions for a data storage system comprising N d storage units, said data storage system storing data for a plurality of full motion video streams, each of said streams having a bit rate of (A/B)W base where A and B are integers chosen independently for each of said streams, said method comprising the steps of maintaining the continuity of said full motion video streams simultaneously by performing for each of said streams A I/O transactions in each of said N d storage units within each set of B I/O cycles in a sequence of sets of B I/O cycles, each I/O cycle having a duration of N d S/W base , in each of said I/O transactions a segment of S bits is retrieved from one of said storage units or written into one of said storage units, the duration of each I/O transaction being shorter than S/W base , for streams in which segments are retrieved from said storage system, the segments of a stream retrieved from said storage system in each particular set of B I/O cycles being consumed in a particular set of B consumption cycles in a sequence of sets of B consumption cycles, the particular set of B consumption cycles beginning after the first I/O transaction is performed for the stream in the particular set of B I/O cycles, the duration of a consumption cycle being N d S/W base , for streams in which segments are written into said storage system, the segments of a stream written into said storage system in each particular set of B I/O cycles being produced in a particular set of B production cycles in a sequence of sets of B production cycles, the particular set of B production cycles ending prior to performing the last I/O transaction for the stream in the particular set of B I/O cycles; the duration of a production cycle being N d S/W base .
Claim 3
Dependent Claim
15 words
The method of claim 1 wherein said storage system is located in a communications network.
Claim 4
Dependent Claim
19 words
The method of claim 1 wherein the network produces or consumes W base bits/sec for each of the streams.
Claim 5
Dependent Claim
15 words
The method of claim 1 wherein said streams share buffer capacity in a local buffer.
Claim 6
Dependent Claim
76 words
The method of claim 1 wherein said streams are divided into G groups, wherein the production or consumption cycles of the streams within each group are aligned with each other, but the production and consumption cycles of successive groups are offset from the production and consumption cycles of the previous group by (1/G) th of an I/O cycle, and wherein each I/O cycle is divided into G I/O subcycles of duration N d S/W base G.
Claim 7
Dependent Claim
36 words
The method of claim 5 wherein in each I/O subcycle there is one I/O transaction performed in each storage unit for each stream in the group whose production or consumption cycle begins immediately after the subcycle.
Claim 8
Dependent Claim
23 words
The method of claim 5 wherein in each subcycle, one I/O transaction is performed for each stream in each of N d groups.
Claim 9
Dependent Claim
29 words
The method of claim 1 wherein the number of I/O transactions performed in each I/O cycle for each storage unit for active streams does not exceed a predetermined number.
Claim 10
Dependent Claim
40 words
The method of claim 8 further comprising the step of activating one or more new streams if the number of I/O transactions performed in each I/O cycle for each storage unit for active streams is less than said predetermined number.
Claim 11
Dependent Claim
25 words
The method of claim 9 wherein excess capacity for I/O transactions in said storage units is used for start-up data for said newly activated streams.
Claim 12
Dependent Claim
16 words
The method of claim 9 wherein new streams are activated according to a predetermined service discipline.
Claim 13
Dependent Claim
24 words
The method of claim 11 wherein the predetermined service discipline is chosen from the group comprising first-come-first-served, round robin, last-come-first-served, and shortest job first.
Claim 14
Dependent Claim
31 words
The method of claim 10 wherein in each I/O cycle, the I/O transactions of previously active streams and I/O transactions for the start-up data of newly activated streams are sorted together.
Claim 15
Dependent Claim
45 words
The method of claim 10 wherein in each I/O cycle, the I/O transactions of previously active streams are sorted and performed in one subcycle and the I/O transactions for the start-up data of newly activated streams are separately sorted and performed in a separate subcycle.
Claim 16
Dependent Claim
13 words
The method of claim 1 wherein said network is a local area network.
Claim 17
Dependent Claim
11 words
The method of claim 1 wherein said streams contain video data.
Claim 18
Dependent Claim
26 words
The method of claim 1 wherein I/O transactions for said streams have a predetermined order which does not change from one I/O cycle to the next.
Claim 19
Dependent Claim
20 words
The method of claim 1 wherein the I/O transactions have an order which is separately determined for each I/O cycle.
Claim 20
Dependent Claim
16 words
The method of claim 1 wherein the storage system is a Redundant Array of Inexpensive Disks.
Claim 21
Dependent Claim
23 words
The method of claim 1 wherein B has a fixed value for all streams N super , where N super is an integer.
Claim 22
Dependent Claim
24 words
The method of claim 1 wherein segments of said streams are allocated to the storage units in said array in a regular cyclic pattern.
Claim 23
Dependent Claim
24 words
The method of claim 1 wherein for each stream the A I/O transactions for each storage unit are uniformly spread in B I/O cycles.
Claim 24
Dependent Claim
75 words
The method of claim 20 wherein N super I/O cycles form a supercycle, wherein in each I/O cycle of a supercycle, for each stream L stripes are fetched from or written into said storage system, wherein each stripe comprises one segment of S bits fetched from or written into each of said N d storage units, and wherein for each stream the variance of the number L over the cycles of a supercycle is minimized.
Claim 25
Dependent Claim
35 words
The method of claim 23 wherein the variance of the total number of stripes fetched from or written into said storage system, for all of said streams in each cycle of a supercycle is minimized.
Claim 26
Dependent Claim
45 words
The method of claim 1 wherein segments are grouped into data stripes of N d consecutive segments, wherein said array is organized into bin stripes comprising locations in each of said N d storage units, and wherein data stripes are randomly allocated to bin stripes.
Claim 27
Independent Claim
394 words
A method for scheduling I/O transactions for a data storage system comprising N d storage units to enable full motion video streams to be written into said data storage system and to be retrieved from said data storage system, said data storage system storing data for a plurality of said full motion video streams, said streams being divided into G groups, said method comprising the steps of: maintaining simultaneously the continuity of said full motion video streams to be written into said data storage system and to be retrieved from said data storage system by performing for each of said streams a predetermined number of I/O transactions in each of said N d data storage units in each of a plurality of successive I/O cycles, each I/O cycle having a duration of N d S/W base , where S is a number of bits and W base is a basic rate, in each of said I/O transactions a segment of S bits is retrieved from one of said storage units or written into one of said storage units, the duration of an I/O transaction being shorter than the duration of an I/O cycle so that multiple I/O transactions can be scheduled for each said data storage unit in an I/O cycle, for streams in which segments are retrieved from said storage system, the segments of a stream being retrieved from the storage system in each particular I/O cycle being consumed in a particular consumption cycle in a sequence of consumption cycles, the particular consumption cycle beginning after a first I/O transaction for the stream in the particular I/O cycle, for streams in which segments are written into said storage system, all of the segments of a stream being written into the storage system in each particular I/O cycle being produced in a particular production cycle in a sequence of production cycles, the particular production cycle ending prior to a last I/O transaction for the stream in the particular I/O cycle, and wherein the production or consumption cycles of the streams within each group are aligned with each other, but the production and consumption cycles of successive groups are offset from the production and consumption cycles of the previous group by (1/G) th of an I/O cycle, and wherein each I/O cycle is divided into G I/O subcycles of duration N d S/W base G.
Claim 28
Independent Claim
394 words
A method for scheduling I/O transactions for a data storage system comprising N d storage units to enable full motion video streams to be written into said data storage system and to be retrieved from said data storage system, said data storage system storing data for a plurality of said full motion video streams, said streams being divided into G groups, said method comprising the steps of: maintaining simultaneously the continuity of said full motion video streams to be written into said data storage system and to be retrieved from said data storage system by performing for each of said streams a predetermined number of I/O transactions in each of said N d data storage units in each of a plurality of successive I/O cycles, each I/O cycle having a duration of N d S/W base , where S is a number of bits and W base is a basic rate, in each of said I/O transactions a segment of S bits is retrieved from one of said storage units or written into one of said storage units, the duration of an I/O transaction being shorter than the duration of an I/O cycle so that multiple I/O transactions can be scheduled for each said data storage unit in an I/O cycle, for streams in which segments are retrieved from said storage system, the segments of a stream being retrieved from the storage system in each particular I/O cycle being consumed in a particular consumption cycle in a sequence of consumption cycles, the particular consumption cycle beginning after a first I/O transaction for the stream in the particular I/O cycle, for streams in which segments are written into said storage system, all of the segments of a stream being written into the storage system in each particular I/O cycle being produced in a particular production cycle in a sequence of production cycles, the particular production cycle ending prior to a last I/O transaction for the stream in the particular I/O cycle, and wherein the production or consumption cycles of the streams within each group are aligned with each other, but the production and consumption cycles of successive groups are offset from the production and consumption cycles of the previous group by (1/G) th of an I/O cycle, and wherein each I/O cycle is divided into G I/O subcycles of duration N d S/W base G.