Multiplex communications – Communication techniques for information carried in plural... – Adaptive
Reexamination Certificate
1997-06-25
2001-04-10
Patel, Ajit (Department: 2662)
Multiplex communications
Communication techniques for information carried in plural...
Adaptive
C370S468000, C370S537000, C370S538000
Reexamination Certificate
active
06215795
ABSTRACT:
BACKGROUND OF THE INVENTION
1. Field of the Invention
The present invention relates to packet streams, and more particularly, to spacing of multiple packet streams to provide a single output stream.
2. Description of the Related Art
It is known to provide a transmitter which receives multiple input streams of information and provides a single output stream of information. Often times the input streams and the output stream are divided into packets where each packet includes a certain number of bits of the bit stream. The packets are transmitted in slots, where a slot represents an opportunity to transmit data in the output stream. For example, a server, such as a video server, may serve multiple, simultaneous, constant bit-rate packet streams. Such a server may transmit several video clips simultaneously. In such a server, it is desirable that the packets of each individual stream be spaced equally apart. For example,
FIG. 1
shows an example of distributing 1024 slots across a 1 second cycle time. In this example, a packet of information is transmitted every 0.976 msec
Equally spacing the packets of information is challenging when multiple streams of information are being simultaneously transmitted. For example, if first stream (e.g., stream A) were transmitting 10 packets per second, the packets would desirably be spaced 100 msec apart (i.e., a packet spacing of 100 msec.). If another stream (e.g., Stream B) were transmitting 20 packets per second, the packets would desirably be spaced 50 msec apart. However, the combination of stream A and stream B transmit 30 packets per second; evenly spacing these packets would require that the packets be spaced 33 msec apart.
It is known to provide the transmitter with a packet scheduler that is responsible for transmitting all of these streams. The scheduler sits in a loop, and sleeps for some time (e.g., 33 msec in the above example) after which the scheduler wakes up. When the scheduler wakes up, it determines whether to transmit a packet from stream A or stream B. This determination is challenging as in general, there may be several streams from which the scheduler must choose when determining from which stream to transmit a packet. In this situation it is very difficult to determine from which stream to transmit a packet while maintaining the packets equally spaced from other transmitted packets.
SUMMARY OF THE INVENTION
It has be discovered that packets from multiple packet streams may been transmitted in an output stream having substantially equally spaced packets using a scheduler which spaces the packets based upon the input stream speeds of the various input streams as well as the bandwidth of the transmission channel. Such a scheduler advantageously spaces the packets so that the maximum distance between two successive filled slots is never more than twice the minimum distance between any two successive filled slots. Such a system also advantageously allows the computation of the slot locations to be precomputed when the slots are initially allocated to streams, thereby allowing the scheduler to efficiently compute slot locations while the scheduler is receiving the input streams.
It has also been discovered that such a system may be modified to take into account an accuracy parameter so that the system does not sleep until every packet within a particular cycle is transmitted (so that the system does not sleep after every slot), thereby advantageously increasing the efficiency of the scheduler.
It has also been discovered that the scheduler may be designed to increase the cycle time across which the slots are distributed. For example, in a system that has 4096 slots per second, rather than distributing slots across one second, the cycle time could be increased to allow slots to be distributed across a cycle time of 16 seconds. In this example, rather than having to distribute slots across 4096 slots in one second, the scheduler would distribute the slots across 65536 slots.
More specifically, in a preferred embodiment, the invention relates to a method for transmitting a plurality of input streams as a single output stream having an output stream bandwidth, each input stream having a corresponding input stream speed. The method includes the steps of determining a number of packets required to transmit an input stream of the plurality of input streams based upon the output stream bandwidth and the input stream speed of the input stream; repeating the determining step for each of the plurality of input streams; and evenly spacing the packets of each of the plurality of input streams in the single output stream based upon the number of packets required to transmit all of the plurality of input streams.
In another embodiment, the invention relates to a system for transmitting a plurality of input streams as a single output stream having an output stream bandwidth. Each input stream has a corresponding input stream speed. The system includes means for determining a number of packets required to transmit an input stream of the plurality of input streams based upon the output stream bandwidth and the input stream speed of the input stream; means for repeating the determining step for each of the plurality of input streams; and means for evenly spacing the packets of each of the plurality of input streams in the single output stream based upon the number of packets required to transmit all of the plurality of input streams.
REFERENCES:
patent: 2564419 (1951-08-01), Bown
patent: 3700820 (1972-10-01), Blasbalg et al.
patent: 4833671 (1989-05-01), Beckner et al.
patent: 4891805 (1990-01-01), Fallin
patent: 5227876 (1993-07-01), Cucchi et al.
patent: 5544324 (1996-08-01), Edem et al.
Nguyen Hanh
Patel Ajit
Skjerven Morrill & MacPherson LLP
Sun Microsystems Inc.
LandOfFree
Packet spacing of multiple packet streams does not yet have a rating. At this time, there are no reviews or comments for this patent.
If you have personal experience with Packet spacing of multiple packet streams, we encourage you to share that experience with our LandOfFree.com community. Your opinion is very important and Packet spacing of multiple packet streams will most certainly appreciate the feedback.
Profile ID: LFUS-PAI-O-2465064