This invention is a method of and apparatus for implementing a service scheduling discipline to enable data devices efficient access to data resources. According to the invention, information identifying one or more data packets of each data batch is sorted into one or more of a plurality (N) of epoch queues, such that for each data batch, no information identifying more than a predetermined number (P) of data packets from a particular channel is inputted into each epoch queue. Each epoch queue is then cyclically served exhaustively by outputting the identified data packets to the facility. Data that cannot be placed in the epoch queues is temporarily placed in an overflow queue. The overflow queue data is subsequently sorted into the epoch queues and transmitted.
In order to obtain a buffer control shift register for an ATM switching unit for transmitting ATM cells which are stored in the unit while controlling the same in response to deadlines thereof, the unit comprises a comparator (53) for comparing dispatch times DPT.sub.0 of inputted ATM cells with those stored in a register (51). Registers (50, 51) are formed to be capable of bidirectional shifting (positive and negative directions along .gamma.). A shift/write control (54) rearwardly shifts data having a larger dispatch time in response to the result of comparison of the comparator (53), to write data of the inputted ATM cells in the vacated portion. It is possible to sequence data of the shift register from the frontmost stage in order of the dispatch times.
A network transmitter schedules packets so that packets are transmitted to a host or group of hosts so as not to overload any particular part of the network. In an embodiment, the transmitter uses packet data structures with a schedule indication for packets placed in the queue so that an independently running adaptor may know when to remove packets from the queue and transmit them. In an alternative embodiment, packets are scheduled by setting a future interrupt for transmitting a packet or group of packets. In a further embodiment, packets are placed in temporal sets where a temporal set is a group of packets that can be transmitted in succession without violating the bandwidth limitations of any network segment.
A switch for digital communication networks includes a queuing system cape of implementing a broad class of scheduling algorithms for many different applications and purposes, with the queuing system including both a tag-based primary queue which contain ATM cells organized by priority and a secondary queue which contains ATM cells which are not yet scheduled for transmission and which are organized by virtual channel. A queuing decision module is provided to determine in which queue an incoming ATM cell should be deposited. A requeuing module operates when an event occurs that unblocks a particular virtual channel. The requeuing module, on occurrence of such an event, accesses the secondary queue to obtain another cell, to assign it priority and to move it to the primary queue. The queuing decision module, along with a virtual channel table, can be used easily to block virtual channels when necessary. The combination of queues also allows for round robin scheduling.
A method adapts the amount of messages with a number of various identities transferred between a transmitter and a receiver. The transfer is accomplished in such a way that no essential information is lost even if the message rate from the transmitter exceeds the possible transfer rate. A data area is created in which each message with a certain identity is stored while awaiting to be transferred. When a new message with the same identity as an earlier stored message is supplied to the data area, the new message replaces the earlier stored message. The messages stored in the data area are scanned and are transferred to the receiver at a rate which is adapted to the rate possible for the transfer.
The system consists of a receiver which receives an input signal and first and second compressors. The compressors compress first and second portions of the input signal forming first and second compressed signals. A storage device is provided to store the compressed signals and a transfer device for directing the storage of the first and second compressed signals in first and second time slot areas of the storage device. A controller is used to sequentially read the first and second time slot areas of the storage device thereby forming a serial signal which is then transmitted by a transmitter.