Patent ID: 7315901
Filing Date: 2008-01-01
Classification: H04L

Abstract:
1. A system for periodically moving information units from a plurality of sources to an output destination of a data transmission network, the system comprising: a time-based calendar which handles scheduling of a first set of the information units with minimum bandwidth and best effort peak rate requirements, said scheduling based on information related to the plurality of sources and provides calculated times for scheduling each of the plurality of sources via queues that contain a flow, wherein the plurality of sources include a plurality of queues representing respective ones of the sources and wherein each queue holds a number of informational units, one or more of which may be dispatched from the respective queue when the queue is in a current time position at which a time pointer points; a time-independent calendar which handles scheduling of a remaining set of the information units that are not within the first set, said time-independent calendar handling the scheduling of the remaining set based on information stored about the plurality of sources and which places each source into a calendar location and moves the source to a different place in the time-independent calendar of lower priority relative to a current calendar location of the source after servicing the source; a mechanism for: (a) when a flow is added to an empty queue of a first source at a current scheduling time, determining whether that first source, was previously assigned a first location in the time-based calendar, and whether the first source would have been assigned a previously-calculated second location of lower time priority than the current scheduling time had the queue not gone empty following completion of information dispatch when the first source was at the first location; and (b) when the source would have been assigned a previously-calculated second location of lower time priority, then (1) preventing the source from being placed at the current scheduling time or a third location that is of higher priority than the previously-calculated second location in the time-based calendar and (2) placing the source at a location selected from among the previously-calculated location and a next location that is of lower priority than the previously-calculated location within the time-based calendar; and means for automatically servicing the source by causing a frame consisting of the informational unit(s) to be transmitted from said source to the output destination when a pointer of the time-based calendar points to the location at which the source is currently located.