WO2000054438A1 - Method of rate allocation in a data communications network - Google Patents

Method of rate allocation in a data communications network Download PDF

Info

Publication number
WO2000054438A1
WO2000054438A1 PCT/US2000/005796 US0005796W WO0054438A1 WO 2000054438 A1 WO2000054438 A1 WO 2000054438A1 US 0005796 W US0005796 W US 0005796W WO 0054438 A1 WO0054438 A1 WO 0054438A1
Authority
WO
WIPO (PCT)
Prior art keywords
capacity
common channel
producers
allocating
subportion
Prior art date
Application number
PCT/US2000/005796
Other languages
French (fr)
Inventor
Rajesh K. Pankaj
Original Assignee
Qualcomm Incorporated
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Qualcomm Incorporated filed Critical Qualcomm Incorporated
Priority to EP00917755A priority Critical patent/EP1157486B1/en
Priority to AU38683/00A priority patent/AU3868300A/en
Priority to DE60036090T priority patent/DE60036090T2/en
Priority to JP2000604553A priority patent/JP4615734B2/en
Publication of WO2000054438A1 publication Critical patent/WO2000054438A1/en
Priority to HK02104334.5A priority patent/HK1042794B/en

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W16/00Network planning, e.g. coverage or traffic planning tools; Network deployment, e.g. resource partitioning or cells structures
    • H04W16/02Resource partitioning among network components, e.g. reuse partitioning
    • H04W16/10Dynamic resource partitioning
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W28/00Network traffic management; Network resource management
    • H04W28/16Central resource management; Negotiation of resources or communication parameters, e.g. negotiating bandwidth or QoS [Quality of Service]
    • H04W28/18Negotiating wireless communication parameters
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04BTRANSMISSION
    • H04B7/00Radio transmission systems, i.e. using radiation field
    • H04B7/24Radio transmission systems, i.e. using radiation field for communication between two or more posts
    • H04B7/26Radio transmission systems, i.e. using radiation field for communication between two or more posts at least one of which is mobile
    • H04B7/2628Radio transmission systems, i.e. using radiation field for communication between two or more posts at least one of which is mobile using code-division multiple access [CDMA] or spread spectrum multiple access [SSMA]
    • H04B7/264Radio transmission systems, i.e. using radiation field for communication between two or more posts at least one of which is mobile using code-division multiple access [CDMA] or spread spectrum multiple access [SSMA] for data rate control

Definitions

  • This invention relates to networks for data communications. More specifically, this invention relates to the allocation of transmission rates among the producers in a data communications network. More specifically, this invention relates to the allocation of transmission rates on the reverse link of a wireless data communications network.
  • Channel capacity a basic limitation of any system for data communications, may be defined as the rate at which information can be passed from one end of a transmission channel to the other, given some mode of transmission and some performance criteria (e.g. binary phase-shift keying modulation of a 1.9-GHz RF carrier using polar NRZ signaling, with a bit-error rate of 10 "5 ).
  • the rate at which information may be transferred from one point to another cannot exceed the ability of the particular method and medium of transmission to convey that information intelligibly. It follows that the rate at which a data producer outputs data into a transmission channel cannot exceed the channel capacity, commonly measured in units of information per units of time (e.g. Kbits/s).
  • Digital data are commonly transmitted in frames of predetermined length.
  • it is also common to calculate and transmit a checksum along with each frame, so that the data may be verified by the receiver.
  • This checksum is typically in the form of a cyclic redundancy check (CRC) value computed with a polynomial algorithm known to both the receiver and the transmitter. If the data in the received frame do not match the received checksum, the frame is rejected and must be re-transmitted or compensated for in another manner.
  • CRC cyclic redundancy check
  • Two or more producers may wish to transmit information over the same channel. If, for example, the producers are also physically separated, then their transmissions may not be coordinated with each other.
  • a data collision occurs when the several transmissions arrive at the consumer having together exceeded the available channel capacity. (Note that in a time-division multiple-access or TDMA wireless system, the channel capacity available to any producer may change over time as a function of the number of producers using the same frequency channel, in that the available capacity will be zero during any period when another producer is using the channel.)
  • Such a collision causes all of the frames being transmitted to become irretrievably corrupted, no matter how complete their transmissions were to that point. If re-transmission is required (i.e. if the system cannot otherwise compensate for the loss of data), then the producers must re-send these frames in their entirety. Therefore, one may clearly see that data collisions directly and dramatically reduce the effective channel capacity.
  • Static allocation schemes are best suited for situations where the data producers' outputs remain relatively constant over time: in systems for voice transmission, for example. (We will assume here that the capacity of the channel itself remains relatively constant.)
  • One characteristic of static allocation schemes is that they may be applied in a similar fashion to either wired or wireless networks. For example, several digitized voice signals may be time-division multiplexed over a single copper or fiber optic cable, or a number of analog voice signals may be time- and /or frequency-division multiplexed over the same radio frequency band, or several digitized voice signals may share the same radio frequency band at the same time by using code-division multiple access techniques.
  • the rates of data production may vary significantly from one moment to the next; i.e. the data traffic may be bursty. Traffic on high speed networks for data communications, for example, tends to be bursty. Static allocation techniques are not well suited for such environments.
  • data transmission applications are usually more tolerant of delays than voice transmission applications, so a producer will not usually require the regulated level of access to the channel which a static scheme provides.
  • backlogged and therefore outdated voice information may simply be discarded by the producer before transmission, discarding data information whose transmission has been delayed is not usually a viable option.
  • a channel has a capacity of 200 Kbits/s; there are four producers A, B, C, and D, each having a maximum output rate of 200
  • each producer produces a steady stream of data at the allocated rate of 50 Kbits/s
  • the allocation scheme may be said to be optimal.
  • the traffic is bursty, with A having a packet of 50 Kbits to output at time 0.25 s, B and C each having a packet of 50 Kbits to output at time 0.5 s, and D having a packet of 50 Kbits to output at time 0.75 s.
  • 1 second is required for each producer to complete its transmission under the static scheme described above, even though it would take only 0.25 second if the producer were allowed to operate at its maximum output rate. It is notable that using a static allocation scheme in this bursty environment also causes much of the channel capacity to remain unused.
  • channel capacity is allocated dynamically according to each producer's ability to use the channel during any given quarter-second.
  • time 0 only producer A has data to transmit. Therefore, we allocate the entire channel capacity of 200 Kbits/s to producer A, and it completes its task in 0.25 s, for a 75% savings over the static allocation scheme.
  • producers B and C each have data to transmit, so we allocate 50% of the channel capacity to each one, and they complete their tasks in 0.5 s, for a savings of 50%. (Note that a more optimal scheme would allow either B or C to use the entire channel, completing transmission in 0.25 s.
  • dynamic allocation schemes may be much more complicated to implement than static ones.
  • static allocation a fixed set of rules is developed and applied, and the only task during operation is to ensure compliance with these rules.
  • dynamic allocation on the other hand, the rules must adapt continually to match a changing environment.
  • An implicit requirement for a dynamic scheme therefore, is a way for the allocation mechanism to acquire knowledge about the environment: i.e. which of the producers has data to transmit, and how much.
  • the signals of two producers may collide at the consumer, but be prevented from reaching each other. Detecting no conflict, each producer will believe that its transmission was successful, when in fact no data was actually received by the consumer.
  • This example illustrates the problem that in a wireless system, the producers typically have no direct way to obtain meaningful feedback information concerning current channel use. Such information can typically only be obtained indirectly from a unit at the other end of the channel. Consequently, data collisions caused by channel overuse become more costly in a wireless network because of the feedback delay.
  • ALOHA One conventional approach to dynamic allocation in wireless networks is the well-known ALOHA scheme.
  • ALOHA transmissions are divided into frames, and any producer may transmit a data frame at any time. If the frame is acknowledged by the channel control unit, then the producer assumes that it was transferred successfully. If the frame is not acknowledged, then the producer assumes that it collided with a transmission by another producer, and it re-transmits the frame at a future time according to some delay protocol.
  • ALOHA is extremely susceptible to data collisions, and it can be demonstrated that the maximum channel utilization for a pure ALOHA scheme is only 18%.
  • An improved version, called slotted ALOHA requires transmissions to be initiated only on slot boundaries, where the time between adjacent slot boundaries corresponds to the time required to transmit one frame. Slotted ALOHA thus doubles the maximum utilization to 37% by reducing the collision interval from two slots to only one. However, over 60% of the channel capacity is still lost due to collision or inactivity. (In this case, 37% of the slots are used for successful transmissions, 37% remain idle, and 26% are lost to collisions. Trying to reduce the number of idle slots increases the rate of collision and thus reduces the number of successful transmissions.)
  • each producer transmits a request for a certain portion of the channel capacity, and a control unit considers the various requests and transmits allocation grants back to the producers.
  • a producer may not know in advance how much of the channel capacity it will need.
  • a producer made up of a buffer memory unit connected to a wireless telephone through, e.g., a PCMCIA interface.
  • the telephone will remain off-the-air until the buffer is full, at which time it will request permission to transmit the contents of the buffer at maximum rate in a single burst.
  • the capacity of the buffer will generally not be known to the telephone.
  • a novel method for the efficient allocation of the capacity of a common channel among a set of data producers.
  • a control unit issues an allocation grant (i.e. a maximum permissible transmission rate) to each producer which is based on the extent to which that producer has used a previous allocation grant.
  • the method is applicable to any system wherein the simultaneous use of a common allocation grant (i.e. a maximum permissible transmission rate) to each producer which is based on the extent to which that producer has used a previous allocation grant.
  • FIG. 1 is a block diagram illustrating a static allocation.
  • FIG. 2 is a block diagram illustrating a dynamic allocation.
  • FIG. 3 is a block diagram showing a system having a number of data producers sharing a common transmission channel.
  • FIG. 4 is a graphic illustration of a limit-based capacity estimation scheme.
  • FIG. 5 is a graphic illustration of a current-use-based capacity estimation scheme.
  • FIG. 6 is a graphic illustration of another current-use-based capacity estimation scheme.
  • FIG. 7 is a graphic illustration of a capacity estimation scheme for a system having different basic rates for different producers.
  • FIG. 8 is a graphic illustration of parameters from which an eligibility list may be constructed.
  • FIG. 9 is a flowchart for a method for generating an eligibility list.
  • FIG. 10 is a flowchart for an equitable sharing method.
  • FIG. 11 is a flowchart for a method for handling a potential overload
  • FIG. 12 is a flowchart for a method for receiving a new allocation grant.
  • FIG. 13 is a flowchart for a method for receiving a new allocation grant, wherein the producers are divided into two groups.
  • FIG. 14 is an illustration of time being divided into frames, each frame having 16 slots.
  • FIG. 15A is a flowchart for a method for restricting rate changes.
  • FIG. 15B is a flowchart for a method for restricting channel capacity usage.
  • FIG. 16 is a flowchart for a method for receiving a new allocation grant that incorporates a restriction on rate changes.
  • FIG. 17 is a flowchart for a method for receiving a new allocation grant that incorporates a restriction on channel capacity usage.
  • the novel method disclosed herein supposes a system having a number of data producers, a common transmission channel, and a control unit which issues allocation grants to the data producers, an example of which is shown in FIG. 3.
  • the control unit In order to issue appropriate allocation grants, the control unit must know 1) the total capacity of the channel, 2) the approximate number of producers, and 3) something of the history of the individual producers' uses of previous allocation grants.
  • the method assumes that a suitable value or estimate for the present capacity of the channel is already available.
  • this method may be implemented in any system that fits the model of FIG. 3, an exemplary application is on the reverse link of a CDMA telecommunications system.
  • Each producer in such a system may comprise 1) a transmitter, such as a mobile telephone or a WLL (wireless local loop) station, connected to 2) a data-producing device, such as a laptop computer or a point-of-sale terminal, through a PCMCIA card or a similar interface, and outputting data encapsulated in packets under TCP or any other suitable protocol.
  • a transmitter such as a mobile telephone or a WLL (wireless local loop) station
  • a data-producing device such as a laptop computer or a point-of-sale terminal
  • PCMCIA card PCMCIA card or a similar interface
  • each of the known producers transmits at least at some basic rate, even if no explicit allocation grant has been issued to that producer and whether or not it has previously been active. So that data collisions may be avoided, this basic rate would visually be chosen to be no more than the total channel capacity divided by the number of producers (note again that we assume that the actual channel capacity does not drop below a predetermined level).
  • the first step in the allocation process is for the control unit to reserve some minimum portion of the channel capacity for each producer.
  • the remaining channel capacity may be estimated using a 'current-use-based' scheme instead, such as illustrated in FIG. 5.
  • the basic rate is reserved only for those producers currently using at least that rate. For other producers, a rate less than the basic rate is reserved.
  • FIG. 5 One possibility shown in FIG. 5 is that for each producer not currently active or currently using less than the basic rate, only a sub-basic rate is reserved.
  • FIG. 6 only the actual rate being used is reserved for each producer who is active but currently using less than the basic rate. Note that although the capacity reserved for some producers is lower than the basic rate, all producers are permitted to transmit at the basic rate. Therefore, while a current-use-based scheme results in a higher estimate of the remaining capacity, it also introduces the possibility of data collisions.
  • Either of these schemes may be further modified by incorporating distinctions between various groups of producers. For example, some identifiable group of producers may be expected to use a lower rate on average than other producers, whether because these producers are unable to produce and /or transmit data above a certain rate, or because the particular application in which they are used is generally less transmission- intensive (e.g. POS terminals). In such cases, as illustrated in FIG. 7, different basic rates may be used in reserving channel capacity for different producers.
  • the capacity estimation scheme may therefore also be modified to reserve channel capacity for such new arrivals. Without such allowance, a new producer must either suffer a delay waiting to receive an explicit allocation, or may begin transmitting into a fully allocated channel and thereby increase the probability of a data collision.
  • FIG. 8 shows an example of the data from which an eligibility list may be generated. In this example, the eligibility list would include producers Nos. 3, 4, 8, 11, and 16.
  • control unit 9 shows one method by which an eligibility list may be generated. Once the control unit has generated the eligibility list, it distributes the remaining channel capacity by increasing the allocation grants that will be sent at least to the eligible producers. The distribution may be performed according to a number of different variations such as the following:
  • FIG. 10 shows one way to implement an equitable sharing method.
  • each eligible producer in order is allocated the highest possible rate without exhausting the available capacity.
  • the producer who was first in the previous cycle is moved to the bottom of the list.
  • Any such method can be further modified by granting a priority to certain producers, whether by modifying the list order or increment amount or by some other preference. Such priority may be granted based on the nature of the producer or its application or, in the alternative, on a difference in customer pricing schemes.
  • available channel capacity may remain even after the eligibility list has been processed.
  • the remaining capacity may be distributed, for example, among the ineligible producers or, alternatively, among the entire set of those producers who have not already been allocated the maximum possible rate.
  • the remaining capacity is distributed among the producers who otherwise would be allocated only the basic rate. This latter scheme prevents higher- rate producers from being penalized back to the basic rate as a result of receiving a higher allocation grant than they can use.
  • Adjustment of the basic rate may occur every time that allocation grants are made, or less frequently (e.g., every time the number of producers changes), or even not at all (e.g., some constant value may be adopted as part of the system design). If basic rate adjustment occurs infrequently or not at all, then it is possible for a 'potential overload' situation to arise.
  • a potential overload situation is one in which channel capacity would be exceeded if all producers transmitted at the basic rate. In cases where the control unit knows the number of producers, it is possible to foresee such a situation.
  • One way for the control unit to handle a potential overload situation would be to temporarily allocate a subbasic rate or even a null rate to some predetermined group of producers, or to all or some portion of the ineligible or low-priority producers.
  • An example of such a method is illustrated in FIG. 11. Such action would free up capacity for the other producers by effectively quieting or even silencing this group for some period of time.
  • Allocation grants need only be transmitted to those producers whose new grants are different than the basic rate. It is preferred to transmit all of the allocation grants periodically and simultaneously via an update signal whose timing is known to the producers. The time between updates should be short enough to reflect changing conditions but not so frequent to disrupt channel activity. In an exemplary application, updates are issued every 400 or 800 ms. If a producer does not receive a new allocation grant at the time when the update signal is due, then it knows that it cannot transmit at a rate above the basic rate at least until the next update signal is due.
  • FIG. 12 One method of allocation grant reception is illustrated in FIG. 12, and a variation that accounts for two different groups of producers is shown in FIG. 13.
  • each producer In order to minimize variations in channel quality and thus reduce the possibility of data collisions, it is preferable for each producer to wait to increase its rate until all issued decreases have been implemented, and it is also preferable that different producers implement their rate increases at different times.
  • the producers are synchronized to a system clock, system time is divided into frames which are further divided into slots, and a slot offset is assigned to each producer. For example, each frame is divided into 16 slots
  • the slot offsets 1-16 are distributed evenly among
  • the various producers and no more than 32 producers may be active in one channel.
  • the maximum length of a transmission burst is 2 frame durations, or 32 slots.
  • a producer may reduce its rate to comply with a new allocation grant immediately after its current transmission has finished, but it may increase its rate 1) only at a slot whose number corresponds to the producer's assigned slot offset, and 2) only when two such slots have passed after the new allocation grant is received. In this way, it is ensured that no increases are performed until all ongoing transmissions have finished, thus guarding against data collisions. In this exemplary application, therefore, producers are forbidden to increase their rate until at least 32 slot durations after the update signal.
  • a 'slow-start' restriction may be imposed on the producers. This restriction requires any producer that is becoming active to begin transmitting at a low rate, regardless of its allocation grant. The starting rate may even be set to be lower than the basic rate.
  • a similar restriction may be used to limit the extent to which a producer may increase its rate at any one time, regardless of how high its current allocation grant is.
  • a power control mechanism is usually implemented whereby power in the channel is constantly adjusted to prevent collisions. Unless 'slow-start' and rate change restrictions are also imposed, however, a producer initiating a significant increase in transmission rate may corrupt the channel before the power control mechanism can compensate for the load, thus causing a collision and forcing a large amount of traffic to be retransmitted.
  • a producer may not increase its rate by more than twice from one burst to the next.
  • FIG. 15A shows a more generic example in which the current rate is limited to no more than the previous rate multiplied by a predetermined allowable rate increase factor, and FIG. 16 shows how this example may be combined into the method for receiving a new allocation grant illustrated in FIG. 12.
  • a producer may be restricted to transmitting at a rate no higher than is justified by the data which is immediately available, regardless of that producer's current allocation grant.
  • FIG. 15B shows an example of such a restriction
  • FIG. 17 shows how this example may be combined into the method for receiving a new allocation grant illustrated in FIG. 12.
  • the structure of available rates may be designed to increment in powers of two. Because a doubling in rate requires a doubling in power to maintain the same ratio of energy per bit to noise power spectral density (E b /N 0 ), each such rate step corresponds to a power step of 3 dB.
  • the starting rate is set at 9600 bits/s
  • the basic rate is 19,200 bits/s
  • the higher rates are 38,400, 76,800, 153,600, and 307,200 bits/s.

Abstract

A novel method is disclosed for the allocation of the capacity of a common channel among a number of data producers. In this method, a producer's future allocation grant is based on the extent to which the producer has used a previous allocation grant. The method is applicable to any system wherein the simultaneous use of a common channel by more than one producer may course a data collision, and an exemplary application to the reverse link of a CDMA telecommunications system is described. Also disclosed are numerous variations and refinements concerning the estimation of remaining channel capacity, the distribution of such capacity among the various producers, and the use of its allocation grant by each producer.

Description

METHOD OF RATE ALLOCATION IN A DATA COMMUNICATIONS
NETWORK
BACKGROUND OF THE INVENTION Field of the Invention
This invention relates to networks for data communications. More specifically, this invention relates to the allocation of transmission rates among the producers in a data communications network. More specifically, this invention relates to the allocation of transmission rates on the reverse link of a wireless data communications network.
Description of Related Art and General Background
Channel capacity, a basic limitation of any system for data communications, may be defined as the rate at which information can be passed from one end of a transmission channel to the other, given some mode of transmission and some performance criteria (e.g. binary phase-shift keying modulation of a 1.9-GHz RF carrier using polar NRZ signaling, with a bit-error rate of 10"5). The rate at which information may be transferred from one point to another cannot exceed the ability of the particular method and medium of transmission to convey that information intelligibly. It follows that the rate at which a data producer outputs data into a transmission channel cannot exceed the channel capacity, commonly measured in units of information per units of time (e.g. Kbits/s).
Digital data are commonly transmitted in frames of predetermined length. In order to allow for error detection, it is also common to calculate and transmit a checksum along with each frame, so that the data may be verified by the receiver. This checksum is typically in the form of a cyclic redundancy check (CRC) value computed with a polynomial algorithm known to both the receiver and the transmitter. If the data in the received frame do not match the received checksum, the frame is rejected and must be re-transmitted or compensated for in another manner.
Two or more producers may wish to transmit information over the same channel. If, for example, the producers are also physically separated, then their transmissions may not be coordinated with each other. A data collision occurs when the several transmissions arrive at the consumer having together exceeded the available channel capacity. (Note that in a time-division multiple-access or TDMA wireless system, the channel capacity available to any producer may change over time as a function of the number of producers using the same frequency channel, in that the available capacity will be zero during any period when another producer is using the channel.) Such a collision causes all of the frames being transmitted to become irretrievably corrupted, no matter how complete their transmissions were to that point. If re-transmission is required (i.e. if the system cannot otherwise compensate for the loss of data), then the producers must re-send these frames in their entirety. Therefore, one may clearly see that data collisions directly and dramatically reduce the effective channel capacity.
When the sum of the producers' output rates may exceed the channel capacity, then the producers are competing for the same limited resource and some method of allocating the channel capacity among them becomes necessary. Such allocation methods may be static, dynamic, or some combination of the two.
Static allocation schemes are best suited for situations where the data producers' outputs remain relatively constant over time: in systems for voice transmission, for example. (We will assume here that the capacity of the channel itself remains relatively constant.) One characteristic of static allocation schemes is that they may be applied in a similar fashion to either wired or wireless networks. For example, several digitized voice signals may be time-division multiplexed over a single copper or fiber optic cable, or a number of analog voice signals may be time- and /or frequency-division multiplexed over the same radio frequency band, or several digitized voice signals may share the same radio frequency band at the same time by using code-division multiple access techniques.
Alternatively, the rates of data production may vary significantly from one moment to the next; i.e. the data traffic may be bursty. Traffic on high speed networks for data communications, for example, tends to be bursty. Static allocation techniques are not well suited for such environments. On one hand, data transmission applications are usually more tolerant of delays than voice transmission applications, so a producer will not usually require the regulated level of access to the channel which a static scheme provides. On the other hand, while backlogged and therefore outdated voice information may simply be discarded by the producer before transmission, discarding data information whose transmission has been delayed is not usually a viable option. Therefore, if a producer's store of data information should begin to accumulate faster than its buffering capacity can handle, the producer will temporarily need to use more of the channel capacity than it has been assigned. Even if other producers are currently idle, however, and plenty of channel capacity is presently available, a static scheme will not accommodate the temporary redistribution of capacity needed in this situation.
Suppose that a channel has a capacity of 200 Kbits/s; there are four producers A, B, C, and D, each having a maximum output rate of 200
Kbits/s; and 50 Kbits/s of the capacity as statically allocated to each producer.
If each producer produces a steady stream of data at the allocated rate of 50 Kbits/s, then the allocation scheme may be said to be optimal. However, if instead, the traffic is bursty, with A having a packet of 50 Kbits to output at time 0.25 s, B and C each having a packet of 50 Kbits to output at time 0.5 s, and D having a packet of 50 Kbits to output at time 0.75 s. As shown in FIG. 1, 1 second is required for each producer to complete its transmission under the static scheme described above, even though it would take only 0.25 second if the producer were allowed to operate at its maximum output rate. It is notable that using a static allocation scheme in this bursty environment also causes much of the channel capacity to remain unused.
Now consider FIG. 2, in which channel capacity is allocated dynamically according to each producer's ability to use the channel during any given quarter-second. At time 0, only producer A has data to transmit. Therefore, we allocate the entire channel capacity of 200 Kbits/s to producer A, and it completes its task in 0.25 s, for a 75% savings over the static allocation scheme. At time 0.5 s, producers B and C each have data to transmit, so we allocate 50% of the channel capacity to each one, and they complete their tasks in 0.5 s, for a savings of 50%. (Note that a more optimal scheme would allow either B or C to use the entire channel, completing transmission in 0.25 s. The other producer would still complete in 0.5 s, using the entire channel between times 0.75 and 1.0 s.) At time 0.75 s, producer D has also data to transmit. We will assume that the scheme requires D to wait until producers B and C have finished, so that D begins transmission at 200 Kbits/s at time 1.0 s and finishes at 1.25 s, for a savings of 50%. Therefore, it is clear that in this bursty environment dynamic allocation can achieve an average savings in time with respect to each producer of greater than 50%.
As noted above, we have assumed that the capacity of the channel remains relatively constant. This assumption will not always hold in the real world, especially in cases where the channel is wireless. When the total capacity drops, a system that is using the full capacity of the channel under a purely static scheme will fail. A dynamic scheme, on the other hand, can usually be adapted to base its allocations on an updated report of the total capacity rather than on some fixed value.
For all of their advantages, however, dynamic allocation schemes may be much more complicated to implement than static ones. In static allocation, a fixed set of rules is developed and applied, and the only task during operation is to ensure compliance with these rules. In dynamic allocation, on the other hand, the rules must adapt continually to match a changing environment. An implicit requirement for a dynamic scheme, therefore, is a way for the allocation mechanism to acquire knowledge about the environment: i.e. which of the producers has data to transmit, and how much.
Note that in the discussion of FIG. 2 above, we have assumed that the allocation mechanism has perfect knowledge of when each producer has data to transmit and how much data it has to transmit. In many applications, however, it may not be possible for the allocation mechanism to obtain or otherwise determine any of this information directly. We have also assumed that the amount of data that each producer has to transmit is not changing, and that each producer has enough power to transmit at the allocated rate. In many situations, one or both of these assumptions may not hold.
Also note that under a static allocation scheme, data collisions cannot occur, assuming that the actual channel capacity does not decrease and that the rules are chosen so that the sum of all allocated rates does not exceed that capacity. In dynamic schemes, however, the rules are based on a necessarily imperfect model of the future behavior of the producers. Collisions become possible, and this possibility must be considered in any evaluation of dynamic allocation schemes.
Mainly because of the requirement for knowledge of the environment, implementations of dynamic allocation schemes on wired links differ significantly from implementations on wireless links. In a wired service such as Ethernet, for example, the producers can monitor the channel at the same time they are transmitting over it; no particular problem is caused by creating voltage fluctuations on a wire on one hand, and monitoring the voltage fluctuations on that wire on the other hand. This immediate availability of feedback information to all users of a wire channel allows for distributed control of the channel. Not only can each producer listen to the channel before transmission to make sure it is clear, but the producer can also monitor its own ongoing transmission to make sure that it is not colliding with a simultaneous transmission by another producer. When a collision occurs, the relevant producers know about it and can react without delay.
In wireless systems, however, simultaneous transmission and reception over the same channel is not commonly implemented. One reason is the significant problem of monitoring the channel for remote activity being masked by a simultaneous and much stronger local signal. Even if this difficulty is overcome, however, it may still be impossible for a producer to determine when a collision has occurred at the consumer.
In one simple example, the signals of two producers may collide at the consumer, but be prevented from reaching each other. Detecting no conflict, each producer will believe that its transmission was successful, when in fact no data was actually received by the consumer. This example illustrates the problem that in a wireless system, the producers typically have no direct way to obtain meaningful feedback information concerning current channel use. Such information can typically only be obtained indirectly from a unit at the other end of the channel. Consequently, data collisions caused by channel overuse become more costly in a wireless network because of the feedback delay.
One conventional approach to dynamic allocation in wireless networks is the well-known ALOHA scheme. In ALOHA, transmissions are divided into frames, and any producer may transmit a data frame at any time. If the frame is acknowledged by the channel control unit, then the producer assumes that it was transferred successfully. If the frame is not acknowledged, then the producer assumes that it collided with a transmission by another producer, and it re-transmits the frame at a future time according to some delay protocol.
Unfortunately, ALOHA is extremely susceptible to data collisions, and it can be demonstrated that the maximum channel utilization for a pure ALOHA scheme is only 18%. An improved version, called slotted ALOHA, requires transmissions to be initiated only on slot boundaries, where the time between adjacent slot boundaries corresponds to the time required to transmit one frame. Slotted ALOHA thus doubles the maximum utilization to 37% by reducing the collision interval from two slots to only one. However, over 60% of the channel capacity is still lost due to collision or inactivity. (In this case, 37% of the slots are used for successful transmissions, 37% remain idle, and 26% are lost to collisions. Trying to reduce the number of idle slots increases the rate of collision and thus reduces the number of successful transmissions.)
Another type of dynamic allocation scheme is the request-grant method, several variations of which exist in practice. In a request-grant system, each producer transmits a request for a certain portion of the channel capacity, and a control unit considers the various requests and transmits allocation grants back to the producers.
One problem with using a request-grant system is that a producer may not know in advance how much of the channel capacity it will need. Consider a producer made up of a buffer memory unit connected to a wireless telephone through, e.g., a PCMCIA interface. Ideally, the telephone will remain off-the-air until the buffer is full, at which time it will request permission to transmit the contents of the buffer at maximum rate in a single burst. Unfortunately, unless the buffer unit and the telephone are purchased as a single device, the capacity of the buffer will generally not be known to the telephone. Also, there may be an additional store of data ready for transmission and waiting on the other side of the buffer. Therefore the telephone typically will not know how much data is actually available for transmission, and consequently it will not know what rate to request.
Other problems associated with request-grant systems are the extra traffic required to send the requests (which necessarily reduces the available channel capacity) and the delays incurred in waiting for requests to be received, processed, and acknowledged. Transmission over a common channel is also susceptible to the abrupt changes in channel quality that may occur when another producer suddenly begins to use a large allocation grant.
SUMMARY OF THE INVENTION
A novel method is disclosed for the efficient allocation of the capacity of a common channel among a set of data producers. In this method, a control unit issues an allocation grant (i.e. a maximum permissible transmission rate) to each producer which is based on the extent to which that producer has used a previous allocation grant. The method is applicable to any system wherein the simultaneous use of a common
channel by more than one producer may cause a data collision. Several
variations of the method, using alternate methods of capacity estimation and distribution, are also disclosed.
BRIEF DESCRIPTION OF THE DRAWINGS
FIG. 1 is a block diagram illustrating a static allocation.
FIG. 2 is a block diagram illustrating a dynamic allocation.
FIG. 3 is a block diagram showing a system having a number of data producers sharing a common transmission channel.
FIG. 4 is a graphic illustration of a limit-based capacity estimation scheme.
FIG. 5 is a graphic illustration of a current-use-based capacity estimation scheme. FIG. 6 is a graphic illustration of another current-use-based capacity estimation scheme.
FIG. 7 is a graphic illustration of a capacity estimation scheme for a system having different basic rates for different producers.
FIG. 8 is a graphic illustration of parameters from which an eligibility list may be constructed.
FIG. 9 is a flowchart for a method for generating an eligibility list.
FIG. 10 is a flowchart for an equitable sharing method.
FIG. 11 is a flowchart for a method for handling a potential overload
situation. FIG. 12 is a flowchart for a method for receiving a new allocation grant.
FIG. 13 is a flowchart for a method for receiving a new allocation grant, wherein the producers are divided into two groups. FIG. 14 is an illustration of time being divided into frames, each frame having 16 slots.
FIG. 15A is a flowchart for a method for restricting rate changes.
FIG. 15B is a flowchart for a method for restricting channel capacity usage. FIG. 16 is a flowchart for a method for receiving a new allocation grant that incorporates a restriction on rate changes.
FIG. 17 is a flowchart for a method for receiving a new allocation grant that incorporates a restriction on channel capacity usage.
DETAILED DESCRIPTION OF THE INVENTION
The novel method disclosed herein supposes a system having a number of data producers, a common transmission channel, and a control unit which issues allocation grants to the data producers, an example of which is shown in FIG. 3. In order to issue appropriate allocation grants, the control unit must know 1) the total capacity of the channel, 2) the approximate number of producers, and 3) something of the history of the individual producers' uses of previous allocation grants. The method assumes that a suitable value or estimate for the present capacity of the channel is already available. Although this method may be implemented in any system that fits the model of FIG. 3, an exemplary application is on the reverse link of a CDMA telecommunications system. Each producer in such a system may comprise 1) a transmitter, such as a mobile telephone or a WLL (wireless local loop) station, connected to 2) a data-producing device, such as a laptop computer or a point-of-sale terminal, through a PCMCIA card or a similar interface, and outputting data encapsulated in packets under TCP or any other suitable protocol. Several generations and versions of CDMA telecommunications systems have already been implemented and are known in the art. While most of these CDMA systems have been designed to carry digitized voice communications, however, the method herein described is better suited to a network serving producers with widely varying transmission rates, such as a data-only network or a mixed voice- data network.
Estimation of capacity available for allocation
In order to avoid the delays associated with, e.g., a request-grant system, we normally allow each of the known producers to transmit at least at some basic rate, even if no explicit allocation grant has been issued to that producer and whether or not it has previously been active. So that data collisions may be avoided, this basic rate would visually be chosen to be no more than the total channel capacity divided by the number of producers (note again that we assume that the actual channel capacity does not drop below a predetermined level). The first step in the allocation process is for the control unit to reserve some minimum portion of the channel capacity for each producer.
Under a Timit-based' scheme, the basic rate is reserved for each producer, regardless of that producer's recent level of activity. That part of the channel capacity which remains is then distributed into allocation grants according to the producers' recent levels of activity as described below. An example of a limit-based scheme which has the advantage of avoiding the possibility of data collisions is illustrated in FIG. 4.
Alternatively, the remaining channel capacity may be estimated using a 'current-use-based' scheme instead, such as illustrated in FIG. 5. Under this scheme, the basic rate is reserved only for those producers currently using at least that rate. For other producers, a rate less than the basic rate is reserved. One possibility shown in FIG. 5 is that for each producer not currently active or currently using less than the basic rate, only a sub-basic rate is reserved. In another variation, illustrated in FIG. 6, only the actual rate being used is reserved for each producer who is active but currently using less than the basic rate. Note that although the capacity reserved for some producers is lower than the basic rate, all producers are permitted to transmit at the basic rate. Therefore, while a current-use-based scheme results in a higher estimate of the remaining capacity, it also introduces the possibility of data collisions.
Either of these schemes may be further modified by incorporating distinctions between various groups of producers. For example, some identifiable group of producers may be expected to use a lower rate on average than other producers, whether because these producers are unable to produce and /or transmit data above a certain rate, or because the particular application in which they are used is generally less transmission- intensive (e.g. POS terminals). In such cases, as illustrated in FIG. 7, different basic rates may be used in reserving channel capacity for different producers.
In some situations, it may be possible for new producers to arrive after the allocation grants have already been distributed. The capacity estimation scheme may therefore also be modified to reserve channel capacity for such new arrivals. Without such allowance, a new producer must either suffer a delay waiting to receive an explicit allocation, or may begin transmitting into a fully allocated channel and thereby increase the probability of a data collision.
Allocation of available capacity If it is determined that a producer is not using all of its allocation grant, then we may assume that the producer is out of data for the moment and is therefore less likely to require an allocation grant above the basic rate at this time. After estimating how much channel capacity is available for distribution, the control unit generates an 'eligibility list' identifying those producers who have used all of their previous allocation grants and are therefore eligible to receive allocation grants beyond the basic rate. In determining usage history, it is preferable to consider only the most recent transmissions; it is also preferable to choose the highest transmission rate among them in order to account for the possibility of lost or corrupted transmissions. FIG. 8 shows an example of the data from which an eligibility list may be generated. In this example, the eligibility list would include producers Nos. 3, 4, 8, 11, and 16. FIG. 9 shows one method by which an eligibility list may be generated. Once the control unit has generated the eligibility list, it distributes the remaining channel capacity by increasing the allocation grants that will be sent at least to the eligible producers. The distribution may be performed according to a number of different variations such as the following:
• Under an 'equitable sharing' method, the allocation grant for each eligible producer is increased to the next rate, beginning with the first producer on the list. This process continues in a round-robin fashion until all of the available capacity has been distributed. At the next allocation cycle, the process begins with the producer next in line when the previous cycle ended. FIG. 10 shows one way to implement an equitable sharing method.
• Under a 'modified equitable sharing' method, every producer is included in the eligibility list. Those producers who were active but using less than their allocated rates, however, are allocated rates no higher than the rates they were actually using.
• Under a 'winner-takes-all' method, each eligible producer in order is allocated the highest possible rate without exhausting the available capacity. In the next allocation cycle, the producer who was first in the previous cycle is moved to the bottom of the list. Any such method can be further modified by granting a priority to certain producers, whether by modifying the list order or increment amount or by some other preference. Such priority may be granted based on the nature of the producer or its application or, in the alternative, on a difference in customer pricing schemes.
It is possible that available channel capacity may remain even after the eligibility list has been processed. In this case the remaining capacity may be distributed, for example, among the ineligible producers or, alternatively, among the entire set of those producers who have not already been allocated the maximum possible rate. Under another alternative, the remaining capacity is distributed among the producers who otherwise would be allocated only the basic rate. This latter scheme prevents higher- rate producers from being penalized back to the basic rate as a result of receiving a higher allocation grant than they can use.
Adjustment of the basic rate may occur every time that allocation grants are made, or less frequently (e.g., every time the number of producers changes), or even not at all (e.g., some constant value may be adopted as part of the system design). If basic rate adjustment occurs infrequently or not at all, then it is possible for a 'potential overload' situation to arise. A potential overload situation is one in which channel capacity would be exceeded if all producers transmitted at the basic rate. In cases where the control unit knows the number of producers, it is possible to foresee such a situation.
One way for the control unit to handle a potential overload situation would be to temporarily allocate a subbasic rate or even a null rate to some predetermined group of producers, or to all or some portion of the ineligible or low-priority producers. An example of such a method is illustrated in FIG. 11. Such action would free up capacity for the other producers by effectively quieting or even silencing this group for some period of time.
Issuance of allocation grants When the control unit has completed the new allocation grants, it is ready to transmit them to the corresponding producers. Allocation grants need only be transmitted to those producers whose new grants are different than the basic rate. It is preferred to transmit all of the allocation grants periodically and simultaneously via an update signal whose timing is known to the producers. The time between updates should be short enough to reflect changing conditions but not so frequent to disrupt channel activity. In an exemplary application, updates are issued every 400 or 800 ms. If a producer does not receive a new allocation grant at the time when the update signal is due, then it knows that it cannot transmit at a rate above the basic rate at least until the next update signal is due. One method of allocation grant reception is illustrated in FIG. 12, and a variation that accounts for two different groups of producers is shown in FIG. 13.
Use of allocation grants Once the allocation grants are issued by the control unit, control passes to the individual producers. In order to minimize variations in channel quality and thus reduce the possibility of data collisions, it is preferable for each producer to wait to increase its rate until all issued decreases have been implemented, and it is also preferable that different producers implement their rate increases at different times. These conditions are implemented in an exemplary application as follows:
The producers are synchronized to a system clock, system time is divided into frames which are further divided into slots, and a slot offset is assigned to each producer. For example, each frame is divided into 16 slots
as illustrated in FIG. 14, the slot offsets 1-16 are distributed evenly among
the various producers, and no more than 32 producers may be active in one channel. The maximum length of a transmission burst is 2 frame durations, or 32 slots. A producer may reduce its rate to comply with a new allocation grant immediately after its current transmission has finished, but it may increase its rate 1) only at a slot whose number corresponds to the producer's assigned slot offset, and 2) only when two such slots have passed after the new allocation grant is received. In this way, it is ensured that no increases are performed until all ongoing transmissions have finished, thus guarding against data collisions. In this exemplary application, therefore, producers are forbidden to increase their rate until at least 32 slot durations after the update signal.
For similar reasons, a 'slow-start' restriction may be imposed on the producers. This restriction requires any producer that is becoming active to begin transmitting at a low rate, regardless of its allocation grant. The starting rate may even be set to be lower than the basic rate. A similar restriction may be used to limit the extent to which a producer may increase its rate at any one time, regardless of how high its current allocation grant is. In CDMA applications, a power control mechanism is usually implemented whereby power in the channel is constantly adjusted to prevent collisions. Unless 'slow-start' and rate change restrictions are also imposed, however, a producer initiating a significant increase in transmission rate may corrupt the channel before the power control mechanism can compensate for the load, thus causing a collision and forcing a large amount of traffic to be retransmitted. In an exemplary implementation, a producer may not increase its rate by more than twice from one burst to the next. FIG. 15A shows a more generic example in which the current rate is limited to no more than the previous rate multiplied by a predetermined allowable rate increase factor, and FIG. 16 shows how this example may be combined into the method for receiving a new allocation grant illustrated in FIG. 12.
In order to provide the control unit with an accurate indication of each producer's requirements, a producer may be restricted to transmitting at a rate no higher than is justified by the data which is immediately available, regardless of that producer's current allocation grant. FIG. 15B shows an example of such a restriction, and FIG. 17 shows how this example may be combined into the method for receiving a new allocation grant illustrated in FIG. 12.
For ease of implementation, the structure of available rates may be designed to increment in powers of two. Because a doubling in rate requires a doubling in power to maintain the same ratio of energy per bit to noise power spectral density (Eb/N0), each such rate step corresponds to a power step of 3 dB. In an exemplary application, the starting rate is set at 9600 bits/s, the basic rate is 19,200 bits/s, and the higher rates are 38,400, 76,800, 153,600, and 307,200 bits/s. The foregoing description of the preferred embodiments is provided to enable any person skilled in the art to make or use the present invention. Various modifications to these embodiments will be readily apparent to those skilled in the art, and the generic principles presented herein may be applied to other embodiments without use of the inventive faculty. Thus, the present invention is not intended to be limited to the embodiments shown above but rather is to be accorded the widest scope consistent with the principles and novel features disclosed in any fashion herein.

Claims

CLAIMSWe claim:
1. A method for allocating a capacity of a common channel among a plurality of producers, each of the plurality of producers being allocated a first portion of the capacity of the common channel and a second portion of the capacity of the common channel, wherein the second portion of the capacity of the common channel allocated to each of the plurality of producers is based at least in part on the extent to which the corresponding producer is determined to have used the corresponding first portion of the capacity of the common channel.
2. The method for allocating a capacity of a common channel among a plurality of producers according to claim 1, wherein each of the first and second portions of the capacity of the common channel is at least a basic rate.
3. The method for allocating a capacity of a common channel among a plurality of producers according to claim 2, frames of equal duration in time are divided into a number N of slots of equal duration, each slot of a frame being numbered in order of time from 1 to N, and each of the plurality of producers being assigned a number from 1 to N, wherein for each number i assigned to one of the plurality of producers, a moment at which a producer i commences producing has a fixed relation in time to the start of a slot having the number i.
4. The method for allocating a capacity of a common channel among
a plurality of producers according to claim 3, wherein the common channel
is the reverse link of a code-division multiple access system for wireless
communications.
5. The method for allocating a capacity of a common channel among a plurality of producers according to claim 4, wherein each of said plurality of producers uses no more than a subportion of the corresponding second portion of the capacity of the common channel, said subportion not exceeding a corresponding used portion of the capacity of the common channel multiplied by an allowable rate increase factor, said corresponding used portion of the capacity of the common channel being a part of the corresponding first portion of the capacity of the common channel used by the corresponding one of said plurality of producers.
6. The method for allocating a capacity of a common channel among a plurality of producers according to claim 3, wherein each of said plurality of producers uses no more than a subportion of the corresponding second portion of the capacity of the common channel, said subportion not exceeding a corresponding used portion of the capacity of the common channel multiplied by an allowable rate increase factor, said corresponding
used portion of the capacity of the common channel being a part of the corresponding first portion of the capacity of the common channel used by
the corresponding one of said plurality of producers.
7. The method for allocating a capacity of a common channel among a plurality of producers according to claim 2, wherein the common channel is the reverse link of a code-division multiple access system for wireless communications.
8. The method for allocating a capacity of a common channel among a plurality of producers according to claim 7, wherein each of said plurality of producers uses no more than a subportion of the corresponding second portion of the capacity of the common channel, said subportion not exceeding a corresponding used portion of the capacity of the common channel multiplied by an allowable rate increase factor, said corresponding used portion of the capacity of the common channel being a part of the corresponding first portion of the capacity of the common channel used by the corresponding one of said plurality of producers.
9. The method for allocating a capacity of a common channel among a plurality of producers according to claim 2, wherein each of said plurality of producers uses no more than a subportion of the corresponding second portion of the capacity of the common channel, said subportion not exceeding a corresponding used portion of the capacity of the common channel multiplied by an allowable rate increase factor, said corresponding used portion of the capacity of the common channel being a part of the corresponding first portion of the capacity of the common channel used by the corresponding one of said plurality of producers.
10. The method for allocating a capacity of a common channel among a plurality of producers according to claim 2, the basic rate being no greater than the capacity of the common channel divided by the number of the plurality of producers.
11. The method for allocating a capacity of a common channel among a plurality of producers according to claim 2, wherein each of the first and second portions of the capacity of the common channel is equal to the product of the basic rate and an integer power of two.
12. The method for allocating a capacity of a common channel among a plurality of producers according to claim 11, a passing of time being divided into frames of equal length, each frame being further divided into a number N of slots of equal length being numbered in order of time from 1 to N, and each of the plurality of producers being assigned a number from 1 to N, wherein for each number i assigned to one of the plurality of producers, a moment at which a producer i commences producing has a fixed relation in time to the start of a slot having the number i.
13. The method for allocating a capacity of a common channel among a plurality of producers according to claim 12, wherein the common channel is the reverse link of a code-division multiple access system for wireless communications.
14. The method for allocating a capacity of a common channel among a plurality of producers according to claim 13, wherein each of said plurality of producers uses no more than a subportion of the corresponding second portion of the capacity of the common channel, said subportion not exceeding a corresponding used portion of the capacity of the common channel multiplied by an allowable rate increase factor, said corresponding used portion of the capacity of the common channel being a part of the corresponding first portion of the capacity of the common channel used by the corresponding one of said plurality of producers.
15. The method for allocating a capacity of a common channel among a plurality of producers according to claim 12, wherein each of said plurality of producers uses no more than a subportion of the corresponding second portion of the capacity of the common channel, said subportion not exceeding a corresponding used portion of the capacity of the common channel multiplied by an allowable rate increase factor, said corresponding used portion of the capacity of the common channel being a part of the corresponding first portion of the capacity of the common channel used by the corresponding one of said plurality of producers.
16. The method for allocating a capacity of a common channel among a plurality of producers according to claim 11, wherein the common channel is the reverse link of a code-division multiple access system for wireless communications.
17. The method for allocating a capacity of a common channel among a plurality of producers according to claim 16, wherein each of said plurality of producers uses no more than a subportion of the corresponding second portion of the capacity of the common channel, said subportion not exceeding a corresponding used portion of the capacity of the common channel multiplied by an allowable rate increase factor, said corresponding used portion of the capacity of the common channel being a part of the corresponding first portion of the capacity of the common channel used by the corresponding one of said plurality of prodLicers.
18. The method for allocating a capacity of a common channel among a plurality of producers according to claim 11, wherein each of said plurality of producers uses no more than a subportion of the corresponding second portion of the capacity of the common channel, said subportion not exceeding a corresponding used portion of the capacity of the common channel multiplied by an allowable rate increase factor, said corresponding used portion of the capacity of the common channel being a part of the corresponding first portion of the capacity of the common channel used by the corresponding one of said plurality of producers.
19. The method for allocating a capacity of a common channel among a plurality of producers according to claim 1, wherein for each of the plurality of producers the corresponding second portion of the capacity of the common channel exceeds a basic rate only if the corresponding producer is determined to have used all of the corresponding first portion of the capacity of the common channel.
20. The method for allocating a capacity of a common channel among a plurality of producers according to claim 19, a passing of time being divided into frames of equal length, each frame being further divided into a number N of slots of equal length being numbered in order of time from 1 to N, and each of the plurality of producers being assigned a number from 1 to N, wherein for each number i assigned to one of the plurality of producers, a moment at which a producer i commences producing has a fixed relation in time to the start of a slot having the number i.
21. The method for allocating a capacity of a common channel among a plurality of producers according to claim 20, wherein the common channel is the reverse link of a code-division multiple access system for wireless communications.
22. The method for allocating a capacity of a common channel among a plurality of producers according to claim 21, wherein each of said plurality of producers uses no more than a subportion of the corresponding second portion of the capacity of the common channel, said subportion not exceeding a corresponding used portion of the capacity of the common channel multiplied by an allowable rate increase factor, said corresponding used portion of the capacity of the common channel being a part of the corresponding first portion of the capacity of the common channel used by
the corresponding one of said plurality of producers.
23. The method for allocating a capacity of a common channel among a plurality of producers according to claim 20, wherein each of said plurality
of producers uses no more than a subportion of the corresponding second portion of the capacity of the common channel, said subportion not exceeding a corresponding used portion of the capacity of the common channel multiplied by an allowable rate increase factor, said corresponding used portion of the capacity of the common channel being a part of the corresponding first portion of the capacity of the common channel used by the corresponding one of said plurality of producers.
24. The method for allocating a capacity of a common channel among a plurality of producers according to claim 19, wherein the common channel is the reverse link of a code-division multiple access system for wireless communications.
25. The method for allocating a capacity of a common channel among a plurality of producers according to claim 24, wherein each of said plurality of producers uses no more than a subportion of the corresponding second portion of the capacity of the common channel, said subportion not exceeding a corresponding used portion of the capacity of the common
channel multiplied by an allowable rate increase factor, said corresponding used portion of the capacity of the common channel being a part of the corresponding first portion of the capacity of the common channel used by the corresponding one of said plurality of producers.
26. The method for allocating a capacity of a common channel among a plurality of producers according to claim 19, wherein each of said plurality of producers uses no more than a subportion of the corresponding second portion of the capacity of the common channel, said subportion not exceeding a corresponding used portion of the capacity of the common channel multiplied by an allowable rate increase factor, said corresponding used portion of the capacity of the common channel being a part of the corresponding first portion of the capacity of the common channel used by the corresponding one of said plurality of producers.
27. The method for allocating a capacity of a common channel among a plurality of prodLicers according to claim 1, wherein for each producer that is determined to have used all of the corresponding first portion of the capacity of the common channel, the corresponding second portion of the capacity of the common channel is at least a basic rate, and wherein for each producer that is determined to have used a portion less than all of the corresponding first portion of the capacity of the common channel, the corresponding second portion of the capacity of the common channel is at least a subbasic rate, the subbasic rate being less than the basic rate.
28. The method for allocating a capacity of a common channel among
a plurality of producers according to claim 27, the subbasic rate being a null
rate.
29. The method for allocating a capacity of a common channel among
a plurality of producers according to claim 27, the subbasic rate being a null rate if the basic rate is greater than the capacity of the common channel divided by the number of the plurality of producers.
30. The method for allocating a capacity of a common channel among a plurality of producers according to claim 1, the plurality of producers being divided into a first group and a second group, wherein for each of the plurality of producers in the first group, each of the first and second portions of the capacity of the common channel is at least a first basic rate, and wherein for each of the plurality of producers in the second group, each of the first and second portions of the capacity of the common channel is at least a second basic rate, the second basic rate being less than the first
basic rate.
31. The method for allocating a capacity of a common channel among a plurality of producers according to claim 30, the second basic rate being a
null rate.
32. The method for allocating a capacity of a common channel among a plurality of producers according to claim 1, a passing of time being divided into frames of equal length, each frame being further divided into a number N of slots of equal length being numbered in order of time from 1 to N, and each of the plurality of producers being assigned a number from 1 to N, wherein for each number i assigned to one of the plurality of producers, a moment at which a producer i commences producing has a fixed relation in time to the start of a slot having the number i.
33. The method for allocating a capacity of a common channel among a plurality of producers according to claim 1, wherein the common channel is the reverse link of a multiple access system for wireless communications.
34. The method for allocating a capacity of a common channel among a plurality of producers according to claim 33, wherein the common channel is the reverse link of a code-division multiple access system for wireless communications.
35. The method for allocating a capacity of a common channel among a plurality of producers according to claim 1, wherein each of said plurality of producers uses no more than a subportion of the corresponding second portion of the capacity of the common channel, said subportion not exceeding a corresponding used portion of the capacity of the common channel multiplied by an allowable rate increase factor, said corresponding used portion of the capacity of the common channel being a part of the corresponding first portion of the capacity of the common channel used by the corresponding one of said plurality of producers.
36. The method for allocating a capacity of a common channel among a plurality of producers according to claim 1, wherein each of said plurality of producers has an amount of data to be produced and uses no more than a subportion of the corresponding second portion of the capacity of the common channel, said subportion being based on the amount of data to be produced.
PCT/US2000/005796 1999-03-08 2000-03-06 Method of rate allocation in a data communications network WO2000054438A1 (en)

Priority Applications (5)

Application Number Priority Date Filing Date Title
EP00917755A EP1157486B1 (en) 1999-03-08 2000-03-06 Method of rate allocation in a data communications network
AU38683/00A AU3868300A (en) 1999-03-08 2000-03-06 Method of rate allocation in a data communications network
DE60036090T DE60036090T2 (en) 1999-03-08 2000-03-06 METHOD OF DATA DISTRIBUTION IN DATA COMMUNICATION NETWORK
JP2000604553A JP4615734B2 (en) 1999-03-08 2000-03-06 Rate allocation method in data communication network
HK02104334.5A HK1042794B (en) 1999-03-08 2002-06-10 Method of rate allocation in a data communications network

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US09/264,297 US6324172B1 (en) 1999-03-08 1999-03-08 Method of rate allocation in a data communications network
US09/264,297 1999-03-08

Publications (1)

Publication Number Publication Date
WO2000054438A1 true WO2000054438A1 (en) 2000-09-14

Family

ID=23005420

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/US2000/005796 WO2000054438A1 (en) 1999-03-08 2000-03-06 Method of rate allocation in a data communications network

Country Status (10)

Country Link
US (2) US6324172B1 (en)
EP (2) EP1865628A2 (en)
JP (1) JP4615734B2 (en)
KR (1) KR100683457B1 (en)
CN (1) CN1241338C (en)
AT (1) ATE371306T1 (en)
AU (1) AU3868300A (en)
DE (1) DE60036090T2 (en)
HK (1) HK1042794B (en)
WO (1) WO2000054438A1 (en)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2002065666A1 (en) * 2001-02-12 2002-08-22 Telefonaktiebolaget L M Ericsson (Publ) Method and system of throughput control of shared channels
WO2003037025A1 (en) * 2001-10-24 2003-05-01 Ipwireless, Inc. Method and arrangement for allocation of resources in a radio communication system
JP2008514082A (en) * 2004-09-16 2008-05-01 ノキア コーポレイション Scheduling data transmission in wireless communication networks
WO2019024075A1 (en) * 2017-08-04 2019-02-07 Zte Corporation System and method for scheduling communication resources

Families Citing this family (22)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100341794B1 (en) * 1997-09-16 2002-06-26 다치카와 게이지 Packet transmission method, packet transmission device, radio frame transmission method, mobile communication method, mobile communication system, and switching center
US6636497B1 (en) * 1998-11-30 2003-10-21 Nokia Networks Oy Air interface capacity scheduling method
US6324172B1 (en) * 1999-03-08 2001-11-27 Qualcomm Incorporated Method of rate allocation in a data communications network
US7596098B2 (en) 1999-09-30 2009-09-29 Qualcomm Incorporated System and method for persistence-vector-based rate assignment
US7933249B2 (en) 2000-02-08 2011-04-26 Ipr Licensing, Inc. Grade of service and fairness policy for bandwidth reservation system
US20020118643A1 (en) * 2000-11-20 2002-08-29 Ofir Shalvi Method and system for digital communications over a fragmented channel
JP2002171572A (en) * 2000-12-01 2002-06-14 Hitachi Ltd Wireless base station, packet repeater, and wireless communication system
US6983153B2 (en) * 2001-06-07 2006-01-03 Qualcomm Incorporated Method and apparatus for congestion control in a wireless communication system
US7961616B2 (en) 2001-06-07 2011-06-14 Qualcomm Incorporated Method and apparatus for congestion control in a wireless communication system
EP1420603A1 (en) * 2002-11-18 2004-05-19 Siemens Aktiengesellschaft Method for dynamic channel allocation
CN100539732C (en) * 2003-08-12 2009-09-09 艾利森电话股份有限公司 The rate controlled that is used for the per user of reverse link in the cdma network
US7554954B2 (en) * 2003-08-12 2009-06-30 Telefonaktiebolaget Lm Ericsson (Publ) Per user rate control for the reverse link in CDMA networks
US8463282B2 (en) * 2003-12-03 2013-06-11 Qualcomm Incorporated Overload detection in a wireless communication system
US20050131978A1 (en) * 2003-12-10 2005-06-16 Microsoft Corporation Systems and methods that employ process algebra to specify contracts and utilize performance prediction implementations thereof to measure the specifications
US7257376B2 (en) 2005-06-30 2007-08-14 Adaptix, Inc. Systems and methods for making channel assignments to reduce interference and increase capacity of wireless networks
US7873017B2 (en) * 2006-06-26 2011-01-18 Research In Motion Limited Limited-use data rates in a wireless local area network
US8559514B2 (en) * 2006-07-27 2013-10-15 Qualcomm Incorporated Efficient fetching for motion compensation video decoding process
US8169946B2 (en) * 2007-03-30 2012-05-01 Livetv, Llc Aircraft communications system with hard handoff and associated methods
FR2926937A1 (en) * 2008-01-24 2009-07-31 Canon Kk METHODS FOR SYNCHRONIZING APPLICATION TIMES IN A SYNCHRONOUS COMMUNICATION NETWORK, TRANSMITTING AND RECEIVING DEVICES, COMPUTER PROGRAM PRODUCT, AND CORRESPONDING STORAGE MEDIUM.
US20150137416A1 (en) * 2013-11-14 2015-05-21 The Board Of Trustees Of The University Of Illinois Advanced Thermal Processing Techniques of "Sacrificial" Polylactic Acid
US9749254B2 (en) * 2014-05-19 2017-08-29 Cisco Technology, Inc. Hierarchical scheduler for deterministic networking
CN110427336B (en) * 2019-06-18 2022-11-18 苏州浪潮智能科技有限公司 CPU link rate configuration method, system, equipment and computer medium

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO1997000565A1 (en) * 1995-06-16 1997-01-03 Unisys Corporation Cdma communication system in which bit rates are dynamically allocated
WO1997046044A1 (en) * 1996-05-31 1997-12-04 Qualcomm Incorporated Method and apparatus for high rate data transmission in a spread spectrum communication system
EP0844800A2 (en) * 1996-11-22 1998-05-27 Sony Corporation Resource allocation in a cellular communication system
US5857147A (en) * 1993-09-08 1999-01-05 Qualcom Incorporated Method and apparatus for determining the transmission data rate in a multi-user communication system

Family Cites Families (28)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
GB2144310A (en) * 1983-08-01 1985-02-27 Philips Electronic Associated Multiple-access communications system
DE3527329A1 (en) 1985-07-31 1987-02-05 Philips Patentverwaltung DIGITAL RADIO TRANSMISSION SYSTEM WITH VARIABLE TIME SLOT DURATION OF TIME SLOTS IN TIME MULTIPLEX FRAME
US5224120A (en) 1990-12-05 1993-06-29 Interdigital Technology Corporation Dynamic capacity allocation CDMA spread spectrum communications
US5369637A (en) * 1991-04-03 1994-11-29 U.S. Philips Corporation Signal transmission system
WO1994001975A1 (en) 1992-07-13 1994-01-20 Motorola Inc. A method and apparatus for performing handoffs in a wireless communication system
IT1270938B (en) 1993-05-14 1997-05-16 Cselt Centro Studi Lab Telecom PROCEDURE FOR THE CONTROL OF THE TRANSMISSION ON A SAME CHANNEL OF INFORMATION FLOWS AT VARIABLE SPEED IN COMMUNICATION SYSTEMS BETWEEN MOBILE VEHICLES, AND A SYSTEM USING SUCH PROCEDURE
US5515379A (en) * 1993-10-18 1996-05-07 Motorola, Inc. Time slot allocation method
US5594738A (en) * 1993-10-18 1997-01-14 Motorola, Inc. Time slot allocation method
US6088590A (en) 1993-11-01 2000-07-11 Omnipoint Corporation Method and system for mobile controlled handoff and link maintenance in spread spectrum communication
US5420851A (en) * 1993-11-24 1995-05-30 At&T Corp. Method of multiple access
US5539730A (en) * 1994-01-11 1996-07-23 Ericsson Ge Mobile Communications Inc. TDMA/FDMA/CDMA hybrid radio access methods
US5442625A (en) 1994-05-13 1995-08-15 At&T Ipm Corp Code division multiple access system providing variable data rate access to a user
US5537410A (en) 1994-09-15 1996-07-16 Oki Telecom Subsequent frame variable data rate indication method
FI96558C (en) 1994-09-27 1996-07-10 Nokia Telecommunications Oy Method for data transmission in a TDMA mobile radio system and a mobile radio system for carrying out the method
US5583869A (en) * 1994-09-30 1996-12-10 Motorola, Inc. Method for dynamically allocating wireless communication resources
FI114178B (en) 1995-01-09 2004-08-31 Nokia Corp Dynamic allocation of radio capacity in a TDMA system
US5625628A (en) * 1995-03-15 1997-04-29 Hughes Electronics Aloha optimization
US5598417A (en) * 1995-04-28 1997-01-28 Motorola, Inc. Dynamic control of a data channel in a TDM wireless communication system
GB9509921D0 (en) 1995-05-17 1995-07-12 Roke Manor Research Improvements in or relating to mobile radio systems
US5615212A (en) * 1995-09-11 1997-03-25 Motorola Inc. Method, device and router for providing a contention-based reservation mechanism within a mini-slotted dynamic entry polling slot supporting multiple service classes
US5734646A (en) 1995-10-05 1998-03-31 Lucent Technologies Inc. Code division multiple access system providing load and interference based demand assignment service to users
AU708348B2 (en) * 1996-03-18 1999-08-05 General Instrument Corporation Dynamic bandwidth allocation for a communication network
JP2968717B2 (en) * 1996-04-25 1999-11-02 静岡日本電気株式会社 Time division multiplex transmission equipment
US6128500A (en) * 1997-12-19 2000-10-03 Us West, Inc. Method and system to optimize capacity of a CDMA cellular communication system
US6266330B1 (en) * 1998-01-22 2001-07-24 Nokia Mobile Phones Limited Dynamic allocation of radio capacity in TDMA system
US6721278B1 (en) * 1998-04-30 2004-04-13 Telefonaktiebolaget Lm Ericsson (Publ) Dynamic allocation of packet data channels
KR100413419B1 (en) * 1998-08-04 2004-02-14 엘지전자 주식회사 Method for performing random access in Mobile Communication System
US6324172B1 (en) * 1999-03-08 2001-11-27 Qualcomm Incorporated Method of rate allocation in a data communications network

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5857147A (en) * 1993-09-08 1999-01-05 Qualcom Incorporated Method and apparatus for determining the transmission data rate in a multi-user communication system
WO1997000565A1 (en) * 1995-06-16 1997-01-03 Unisys Corporation Cdma communication system in which bit rates are dynamically allocated
WO1997046044A1 (en) * 1996-05-31 1997-12-04 Qualcomm Incorporated Method and apparatus for high rate data transmission in a spread spectrum communication system
EP0844800A2 (en) * 1996-11-22 1998-05-27 Sony Corporation Resource allocation in a cellular communication system

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
COMER D E ET AL: "A RATE-BASED CONGESTION AVOIDANCE AND CONTROL SCHEME FOR PACKET SWITCHED NETWORKS", PROCEEDINGS OF THE INTERNATIONAL CONFERENCE ON DISTRIBUTED COMPUTING SYSTEMS,US,LOS ALAMITOS, IEEE COMP. SOC. PRESS, vol. CONF. 10, 1990, pages 390 - 397, XP000166240, ISBN: 0-8186-2048-X *

Cited By (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2002065666A1 (en) * 2001-02-12 2002-08-22 Telefonaktiebolaget L M Ericsson (Publ) Method and system of throughput control of shared channels
WO2003037025A1 (en) * 2001-10-24 2003-05-01 Ipwireless, Inc. Method and arrangement for allocation of resources in a radio communication system
US7062278B2 (en) 2001-10-24 2006-06-13 Ipwireless, Inc. Method and arrangement for allocation of resources in a radio communication system
US7286832B2 (en) 2001-10-24 2007-10-23 Ipwireless, Inc. Method and arrangement for allocation of resources in a radio communication system
JP2008514082A (en) * 2004-09-16 2008-05-01 ノキア コーポレイション Scheduling data transmission in wireless communication networks
US8787158B2 (en) 2004-09-16 2014-07-22 Sisvel International S.A. Scheduling data transmissions in a wireless communications network
US9019829B2 (en) 2004-09-16 2015-04-28 Sisvel International S.A. Scheduling data transmissions in a wireless communications network
WO2019024075A1 (en) * 2017-08-04 2019-02-07 Zte Corporation System and method for scheduling communication resources
US11432282B2 (en) 2017-08-04 2022-08-30 Zte Corporation System and method for scheduling communication resources

Also Published As

Publication number Publication date
AU3868300A (en) 2000-09-28
US6324172B1 (en) 2001-11-27
HK1042794A1 (en) 2002-08-23
JP2002539673A (en) 2002-11-19
EP1157486B1 (en) 2007-08-22
US7106713B2 (en) 2006-09-12
HK1042794B (en) 2006-09-29
DE60036090D1 (en) 2007-10-04
KR20010113702A (en) 2001-12-28
CN1241338C (en) 2006-02-08
CN1343405A (en) 2002-04-03
DE60036090T2 (en) 2008-05-15
KR100683457B1 (en) 2007-02-20
US20020012357A1 (en) 2002-01-31
EP1865628A2 (en) 2007-12-12
ATE371306T1 (en) 2007-09-15
EP1157486A1 (en) 2001-11-28
JP4615734B2 (en) 2011-01-19

Similar Documents

Publication Publication Date Title
US6324172B1 (en) Method of rate allocation in a data communications network
US5594738A (en) Time slot allocation method
CA2341250C (en) Method and apparatus for multiple access in a communication system
CA2351971C (en) Apparatus and method for acquiring an uplink traffic channel in wireless communications systems
US5515379A (en) Time slot allocation method
US6603747B2 (en) Communication control method and communication control apparatus
US6829227B1 (en) Dual polling media access control protocol for packet data in fixed wireless communication systems
JP3450196B2 (en) TDMA wireless communication system
US6999441B2 (en) Method and apparatus for contention management in a radio-based packet network
CA2171978C (en) Method and system for providing uplink/downlink collision avoidance in a wireless communication system
KR20000034996A (en) Methods and apparatus for retransmission based access priority in a communications system
KR20000029041A (en) Methods and apparatus for random backoff based access priority in a communications system
JPH06506579A (en) Multi-purpose use of resources in communication systems
KR20010098952A (en) A method for assigning resources in a shared channel, a corresponding mobile terminal and a corresponding base station
US7468972B2 (en) Method and system for providing efficient data transmission based upon a contention protocol
US6788659B1 (en) Transmission control without limitation of the number of users
JPH07135502A (en) Method and device for controlling allocation of time slot
KR20000057118A (en) Transmission control without limitation by the number of users
JP2000244535A (en) Method and equipment for multiaccess in communication system
JPH07288497A (en) Satellite communication method/device
KR20000040268A (en) Medium access control method for voice and data integrated service in cdma network
EP1365524B1 (en) Data transmission on a shared communication channel based upon a contention protocol
KR100347732B1 (en) Method for controlling traffic of wireless mobile communications
Chan Introduction to Local Area Networks

Legal Events

Date Code Title Description
WWE Wipo information: entry into national phase

Ref document number: 00804693.X

Country of ref document: CN

AK Designated states

Kind code of ref document: A1

Designated state(s): AE AL AM AT AU AZ BA BB BG BR BY CA CH CN CR CU CZ DE DK DM EE ES FI GB GD GE GH GM HR HU ID IL IN IS JP KE KG KP KR KZ LC LK LR LS LT LU LV MA MD MG MK MN MW MX NO NZ PL PT RO RU SD SE SG SI SK SL TJ TM TR TT TZ UA UG UZ VN YU ZA ZW

AL Designated countries for regional patents

Kind code of ref document: A1

Designated state(s): GH GM KE LS MW SD SL SZ TZ UG ZW AM AZ BY KG KZ MD RU TJ TM AT BE CH CY DE DK ES FI FR GB GR IE IT LU MC NL PT SE BF BJ CF CG CI CM GA GN GW ML MR NE SN TD TG

121 Ep: the epo has been informed by wipo that ep was designated in this application
DFPE Request for preliminary examination filed prior to expiration of 19th month from priority date (pct application filed before 20040101)
WWE Wipo information: entry into national phase

Ref document number: 2000917755

Country of ref document: EP

WWE Wipo information: entry into national phase

Ref document number: 1020017010570

Country of ref document: KR

ENP Entry into the national phase

Ref document number: 2000 604553

Country of ref document: JP

Kind code of ref document: A

WWP Wipo information: published in national office

Ref document number: 2000917755

Country of ref document: EP

WWP Wipo information: published in national office

Ref document number: 1020017010570

Country of ref document: KR

REG Reference to national code

Ref country code: DE

Ref legal event code: 8642

WWR Wipo information: refused in national office

Ref document number: 1020017010570

Country of ref document: KR

WWG Wipo information: grant in national office

Ref document number: 2000917755

Country of ref document: EP