Patent ID: 7207055

Claim:
A method of allocating bandwidth to a plurality of programs, each of said programs corresponding to one of a plurality of categories, said method comprising the steps of: prioritizing each of said programs by assigning to each of said programs one of a plurality of priority levels, said plurality of priority levels including a high priority level and progressively lower priority levels; dividing said bandwidth so that each program category receives a segment of said bandwidth; allocating a portion of said segments of bandwidth to high priority level programs in each category; and continuing said allocating step with progressively lower priority levels programs until at least one of the following conditions occurs: all of said programs are allocated, and all of said bandwidth is allocated, wherein each priority level includes a different set of programs from a variety of categories, and wherein the high priority level includes a first finite number of programs from each of the plurality of categories and a lower priority level includes a second finite number of different programs from each of the plurality of categories.