CN102413570A - Base station in wireless communication system and resource scheduling method - Google Patents

Base station in wireless communication system and resource scheduling method Download PDF

Info

Publication number
CN102413570A
CN102413570A CN2010102908179A CN201010290817A CN102413570A CN 102413570 A CN102413570 A CN 102413570A CN 2010102908179 A CN2010102908179 A CN 2010102908179A CN 201010290817 A CN201010290817 A CN 201010290817A CN 102413570 A CN102413570 A CN 102413570A
Authority
CN
China
Prior art keywords
user
scheduling priority
resource block
mrow
base station
Prior art date
Legal status (The legal status 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 status listed.)
Granted
Application number
CN2010102908179A
Other languages
Chinese (zh)
Other versions
CN102413570B (en
Inventor
周珏嘉
陈岚
朱剑驰
刘柳
云翔
佘小明
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
NTT Docomo Inc
Original Assignee
NTT Docomo Inc
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 NTT Docomo Inc filed Critical NTT Docomo Inc
Priority to CN201010290817.9A priority Critical patent/CN102413570B/en
Publication of CN102413570A publication Critical patent/CN102413570A/en
Application granted granted Critical
Publication of CN102413570B publication Critical patent/CN102413570B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Mobile Radio Communication Systems (AREA)

Abstract

The invention provides a base station in a wireless communication system and a resource scheduling method. The base station comprises a logical link control module and a media access control module, wherein the logical link control module is used for updating the number of rest tokens of each user i managed by the base station and providing the number of the rest tokens of the user i to the media access control module; and the media access control module is used for confirming factor(s) of scheduling priority according to the number of the rest tokens of the user i and allocating a resource block k which is not scheduled to the corresponding user according to the confirmed one or more factor(s) of the scheduling priority. The base station and the method provided by the invention can be used for better optimizing resource allocation to a certain degree.

Description

Base station in wireless communication system and resource scheduling method
Technical Field
The present invention relates to wireless communication technologies, and in particular, to a base station and a resource scheduling method in a wireless communication system.
Background
In a wireless communication system, Quality of Service (QoS) in a broad sense refers to a commitment of a network to a class of Service (Service class) provided. It should be noted that the definition of the quality of service may be a relative concept (e.g., a definition based on priority) or an absolute concept (e.g., based on specific performance parameters of the network service).
In the present invention, quality of service may refer to a requirement of data throughput for each User (UE) in wireless communication. Specifically, the requirement may be described as: on the premise of meeting the data throughput requirements of all users as much as possible, the average throughput of the system is maximized, and the mathematical expression is as follows:
1. an objective function:
Figure BSA00000282607600011
2. constraint conditions are as follows:
<math> <mrow> <mrow> <mo>(</mo> <mn>1</mn> <mo>)</mo> </mrow> <mo>-</mo> <mo>-</mo> <mo>-</mo> <munderover> <mi>&Sigma;</mi> <mrow> <mi>n</mi> <mo>=</mo> <mn>1</mn> </mrow> <mi>N</mi> </munderover> <munderover> <mi>&Sigma;</mi> <mrow> <mi>i</mi> <mo>=</mo> <mn>1</mn> </mrow> <msub> <mi>T</mi> <mi>w</mi> </msub> </munderover> <msub> <mi>r</mi> <mrow> <mi>k</mi> <mo>,</mo> <mi>n</mi> </mrow> </msub> <mrow> <mo>[</mo> <mi>i</mi> <mo>]</mo> </mrow> <mo>&CenterDot;</mo> <msub> <mi>a</mi> <mrow> <mi>k</mi> <mo>,</mo> <mi>n</mi> </mrow> </msub> <mrow> <mo>[</mo> <mi>i</mi> <mo>]</mo> </mrow> <mo>&GreaterEqual;</mo> <msub> <mi>R</mi> <mi>QoS</mi> </msub> <mrow> <mo>[</mo> <mi>k</mi> <mo>]</mo> </mrow> <mo>,</mo> <mo>&ForAll;</mo> <mi>k</mi> <mo>&Element;</mo> <mi>K</mi> </mrow> </math>
<math> <mrow> <mrow> <mo>(</mo> <mn>2</mn> <mo>)</mo> </mrow> <mo>-</mo> <mo>-</mo> <mo>-</mo> <munderover> <mi>&Sigma;</mi> <mrow> <mi>k</mi> <mo>=</mo> <mn>1</mn> </mrow> <mi>K</mi> </munderover> <msub> <mi>a</mi> <mrow> <mi>k</mi> <mo>,</mo> <mi>n</mi> </mrow> </msub> <mrow> <mo>[</mo> <mi>i</mi> <mo>]</mo> </mrow> <mo>=</mo> <mn>1</mn> <mo>,</mo> <mo>&ForAll;</mo> <mi>n</mi> <mo>,</mo> <mi>i s</mi> <mo>.</mo> <mi>t</mi> <mo>.</mo> <mn>1</mn> <mo>&le;</mo> <mi>n</mi> <mo>&le;</mo> <mi>N</mi> <mo>,</mo> <mn>1</mn> <mo>&le;</mo> <mi>i</mi> <mo>&le;</mo> <msub> <mi>T</mi> <mi>w</mi> </msub> </mrow> </math>
Figure BSA00000282607600014
wherein, <math> <mrow> <msub> <mi>r</mi> <mrow> <mi>k</mi> <mo>,</mo> <mi>n</mi> </mrow> </msub> <mrow> <mo>[</mo> <mi>i</mi> <mo>]</mo> </mrow> <mo>=</mo> <msubsup> <mi>r</mi> <mrow> <mi>k</mi> <mo>,</mo> <mi>n</mi> </mrow> <mo>&prime;</mo> </msubsup> <mrow> <mo>[</mo> <mi>i</mi> <mo>]</mo> </mrow> <mo>&CenterDot;</mo> <msub> <mi>F</mi> <mi>signal</mi> </msub> <mo>&CenterDot;</mo> <msub> <mi>F</mi> <mi>payload</mi> </msub> <mo>&CenterDot;</mo> <mrow> <mo>(</mo> <mn>1</mn> <mo>-</mo> <mi>BLER</mi> <mo>)</mo> </mrow> <mo>.</mo> </mrow> </math>
in the above mathematical expression, N is a subchannel set, K is a user set, and T iswIs the scheduling window size; r isk,n[i]The equivalent data throughput for user k at a higher Layer (such as Layer 3) on subchannel n of the ith frame (or slot); a isk,n[i]Representing whether the subchannel n is allocated to a user k in the ith frame or not for Boolean variables; rQoS[k]For average throughput of user kA QoS requirement;
Figure BSA00000282607600021
the actual data throughput of the physical layer of the user k on the subchannel n of the ith frame; fsignalIs a packet ratio parameter in the system, typically 70%; fpayloadThe proportionality coefficient of the real data load in the higher layer data packet is usually 96%; BLER is the average block error rate for the user.
The requirement described above is a problem for quality of service to be solved in a wireless communication system. Typically, this problem is solved by optimization of the scheduling method, and the Token Bucket Algorithm (TBA) is a conventional scheduling method.
In particular, the token bucket algorithm is an application to the concept of tokens, which is defined by corresponding specifications in 3GPP standardization (such as 3GPP TS 23.107). The TBA realization process comprises the following steps: the tokens reach the user according to a certain rate, and the user adds the number of the original tokens to the number of the newly added tokens to obtain the number of the current tokens (or the number of the remaining tokens). When the user needs to transmit the data packet, the number of tokens required by the data packet to be transmitted is compared with the current number of tokens of the user, and whether the data packet is transmitted or not is determined according to the comparison result. Specifically, there are two implementations of TBA:
1. maximum rate Token (Maximum bit Token). In this way, the token represents the maximum amount of data (or referred to as quota) that can be transmitted by the user, and therefore the number of tokens required for the data packet to be transmitted cannot be greater than the remaining number of tokens of the user. If so, rejecting the transmission request of the data packet; if it is less than or equal to the threshold, the packet is transmitted, and accordingly the number of tokens used by the transmitted packet needs to be deducted from the token bucket of the user.
2. Guaranteed rate (GBR) tokens. In this way, the token represents the amount of data that the user needs to transmit at least, i.e. the guaranteed rate requirement of the user, and the remaining number of tokens in the token bucket of the user is mainly used to represent the completion condition of the system on the user guaranteed rate currently, and the system should consume all the user guaranteed rate tokens as much as possible. Therefore, even if the number of remaining tokens of the user is 0 or even less than 0, there is a possibility of transmitting the packet.
Fig. 1 is a simple schematic diagram of a TBA implementation process. The method comprises the steps that L1, L2 and L3 are respectively the number of tokens required by data packages to be transmitted by a user at time points t1, t2 and t 3; b is the size of the token bucket, namely the upper limit of the number of stored tokens; v is the token rate, and common token rates are "maximum rate", "guaranteed rate", and the like. Note that the token arrives continuously, and the arrival of the packet is uncertain.
It can be seen that at time t1, since L1 < TBC, the user's request for this packet transmission can be satisfied, and the TBC is reduced to b-L1 through the above transmission. At time T2, the TBC increases to b-L1+ v Δ T, at which time the user again has a packet transmission request that can still be satisfied because L2 < TBC. However, at time t3, since L3 > TBC, the packet transmission requirement at this time cannot be satisfied for the maximum rate token mode.
In addition, other conventional scheduling methods, such as a maximum carrier-to-interference (MaxCI) algorithm, Round-Robin (RR) algorithm, Proportional Fair (PF) algorithm, etc., may also be used.
In the maximum carrier-to-interference ratio algorithm, the system allocates the resource block with the maximum carrier-to-interference ratio to the corresponding user. The method can maximize the throughput of the system, but has no consideration on fairness.
In the round-robin scheduling algorithm, the system allocates resource blocks to each user in sequence according to a certain fixed sequence, and the number of resources obtained by different users is equal. This method guarantees absolute fairness in terms of the number of resources allocated (not fairness of the throughput), but the throughput of the system is generally low since no information of any channel quality is taken into account.
In the proportional fairness algorithm, the system
Figure BSA00000282607600031
The priority of each user in each resource block is calculated, and then the resource block with the highest priority is allocated to the corresponding user. Wherein, Pi,jA Proportional Fair (PF) factor for user i in the jth Transmission Time Interval (TTI); r isi,jEstimated throughput (or estimated data transmission) for user i in the jth TTI; ri,jIs the average throughput (or average data transmission) of user i in the jth TTI. The method has the effect that the resource block with higher throughput is allocated to the corresponding user on the premise of ensuring the fairness of throughput. This is a method between MaxCI and RR, which is often adopted in the engineering field due to its simplicity and practicality.
In practical applications, several conventional scheduling methods may also be used in combination.
For example, in resource scheduling, a proportional fairness algorithm is combined with a token limit and a maximum carrier-to-interference ratio algorithm, and the scheduling is divided into two stages.
Firstly, excluding the users with the token number of 0 or less than 0 and no data in a buffer (buffer) from the whole user-resource block PF factor matrix, searching the users with larger PF factors, and allocating the users according to the user-resource block unit corresponding to the PF factors, namely allocating the resource blocks corresponding to the unit to the users corresponding to the unit. After each allocation, the average throughput R of each user ii,jUpdating and then recalculating the user-resource block PF factor matrix. It should be noted that the PF factor in this method is a conventional PF factor, namely:
Figure BSA00000282607600041
secondly, when the tokens of all users with data in the buffer are consumed, that is, all users with data in the buffer may be excluded from PF scheduling, the method shifts to MaxCI stage, that is, the remaining resource blocks are allocated according to the principle of maximum carrier-to-interference ratio. Of course, the allocation at this time also takes into account the remaining data amount of the buffer.
The problem with this approach is that the token is only used to exclude some users that have reached the guaranteed rate, i.e. only affects the set of users participating in PF scheduling, and is not reflected in the priority calculation of resource allocation. Therefore, this method makes resource allocation less optimal, and thus waste of resources occurs.
In addition, a proportional fairness algorithm considering buffer + token limit + maximum carrier-to-interference ratio algorithm can be adopted for resource scheduling. The method is similar to a proportional fair algorithm, token limitation and a maximum load-to-interference ratio algorithm, and is different in that the residual data amount of a buffer is considered during PF factor calculation, so that resource allocation is better. That is, the PF factor in this method is
Figure BSA00000282607600042
Wherein Bufferi,jThe remaining data amount of the user i in the jth TTI is buffered.
However, since the PF factor adopted in this method does not consider the usage of the token, the resource allocation cannot be optimized, and the resource is wasted.
Disclosure of Invention
The invention provides a base station and a resource scheduling method in a wireless communication system, which are used for optimizing resource allocation.
Specifically, the present invention provides a base station in a wireless communication system, including:
the logical link control module is used for updating the residual token quantity of each user i administered by the base station and providing the residual token quantity of the user i to the media access control module;
and the media access control module is used for determining scheduling priority factors according to the number of the remaining tokens of the user i and allocating the non-scheduled resource block k to the corresponding user according to the determined scheduling priority factor or factors.
Further, the media access control module is configured to:
and determining one or more scheduling priority factors according to the estimated throughput of each user i in each non-scheduled resource block k in the jth transmission time interval and the number of the remaining tokens of the user i.
Further, the media access control module is configured to:
and determining one or more scheduling priority factors according to the estimated throughput of each user i in each non-scheduled resource block k in the jth transmission time interval, the number of the remaining tokens of the user i and the average throughput of each user i in the jth transmission time interval.
Further, the media access control module is configured to:
and determining one or more scheduling priority factors according to the estimated throughput of each user i in each non-scheduled resource block k in the jth transmission time interval, the residual token number of the user i and the cache residual data volume of each user i.
Further, the media access control module is configured to:
and determining one or more scheduling priority factors according to the estimated throughput of each user i in each non-scheduled resource block k and the number of the remaining tokens of the user i in the jth transmission time interval, the average throughput of each user i in the jth transmission time interval and the cache remaining data volume of each user i.
Further, the media access control module is configured to: according to the formulaDetermining the ratioExample fairness factor Pi,j,kAs the scheduling priority factor;
wherein, Tokeni,jThe number of tokens remaining for each user i; bufferi,jCaching the residual data amount for each user i; b isBucket_sizeIs the token bucket size; r isi,j,kEstimating the throughput of each user i in each non-scheduled resource block k for the jth transmission time interval; ri,jAverage throughput for each user i in the jth transmission time interval; u is a set of non-scheduled resource blocks.
The media access control module is further to: and determining the scheduling priority factor according to the size of the token bucket.
The media access control module is further to:
finding a maximum scheduling priority factor from the determined one or more scheduling priority factors, judging whether the maximum scheduling priority factor is greater than 0, if so, allocating a first resource block k 'corresponding to the maximum scheduling priority factor to a first user i' corresponding to the maximum scheduling priority factor, updating the number of remaining tokens of the first user i ', updating an unscheduled resource block set, and deleting the first resource block k' from the unscheduled resource block set.
The media access control module is further to:
and judging whether the non-scheduled resource block set is empty or not, if not, re-determining the scheduling priority factor according to the updated residual token number, and allocating the non-scheduled resource block k contained in the updated non-scheduled resource block set to a corresponding user according to one or more re-determined scheduling priority factors.
The media access control module is further to:
when the first resource block k ' corresponding to the maximum scheduling priority factor is allocated to the first user i ' corresponding to the maximum scheduling priority factor, updating the cache residual data volume of the first user i ', and re-determining the scheduling priority factor according to the updated cache residual data volume.
The media access control module is further to:
when the maximum scheduling priority factor is not greater than 0, allocating the first resource block k' to a corresponding user according to a maximum carrier-to-interference ratio algorithm or a round robin scheduling algorithm; or according to a formula
Figure BSA00000282607600061
Determining a second proportional fairness factor
Figure BSA00000282607600062
And according to the determined second proportional fairness factor
Figure BSA00000282607600063
Allocating the first resource block k' to a corresponding user;
wherein, r isi,jAn estimated throughput in the first resource block k' for each user i in the jth transmission time interval; ri,jThe average throughput per user i in the jth transmission time interval.
The media access control module is further to:
and when the non-scheduled resource block set is empty, determining the actual throughput of each user i in the jth transmission time interval, providing the actual throughput to the logic link control module, and determining the average throughput of each user i in the (j + 1) th transmission time interval.
The logical link control module is further configured to: updating the number of the remaining tokens of each user i administered by the base station at the beginning of the jth transmission time interval;
and after the actual throughput of each user i is received and before the jth transmission time interval is ended, updating the number of the remaining tokens of the user i according to the actual throughput of each user i.
Specifically, the present invention provides a resource scheduling method in wireless communication, including:
the base station determines the number of the remaining tokens of each managed user i;
and the base station determines a scheduling priority factor according to the number of the remaining tokens of the user i, and allocates the non-scheduled resource block k to the corresponding user according to one or more determined scheduling priority factors.
The base station determining a scheduling priority factor according to the number of the remaining tokens of the user i comprises:
and determining one or more scheduling priority factors according to the estimated throughput of each user i in each non-scheduled resource block k in the jth transmission time interval and the number of the remaining tokens of the user i.
The base station determining a scheduling priority factor according to the number of the remaining tokens of the user i comprises:
and determining one or more scheduling priority factors according to the estimated throughput of each user i in each non-scheduled resource block k in the jth transmission time interval, the number of the remaining tokens of the user i and the average throughput of each user i in the jth transmission time interval.
The base station determining a scheduling priority factor according to the number of the remaining tokens of the user i comprises:
and determining one or more scheduling priority factors according to the estimated throughput of each user i in each non-scheduled resource block k in the jth transmission time interval, the residual token number of the user i and the cache residual data volume of each user i.
The base station determining a scheduling priority factor according to the number of the remaining tokens of the user i comprises:
and determining one or more scheduling priority factors according to the estimated throughput of each user i in each non-scheduled resource block k and the number of the remaining tokens of the user i in the jth transmission time interval, the average throughput of each user i in the jth transmission time interval and the cache remaining data volume of each user i.
The base station determining a scheduling priority factor according to the number of the remaining tokens of the user i comprises: according to the formula
Figure BSA00000282607600081
Determining a proportional fairness factor Pi,j,kAs the scheduling priority factor;
wherein, Tokeni,jThe number of tokens remaining for each user i; bufferi,jCaching the residual data amount for each user i; b isBucket_sizeIs the token bucket size; r isi,j,kEstimating the throughput of each user i in each non-scheduled resource block k for the jth transmission time interval; ri,jAverage throughput for each user i in the jth transmission time interval; u is a set of non-scheduled resource blocks.
The base station determines a scheduling priority factor according to the estimated throughput of each user i in each non-scheduled resource block k and the number of remaining tokens of the user i, and further comprises: and determining the scheduling priority factor according to the size of the token bucket.
The method further comprises the following steps:
finding a maximum scheduling priority factor from the determined one or more scheduling priority factors;
and judging whether the maximum scheduling priority factor is greater than 0, if so, allocating a first resource block k 'corresponding to the maximum scheduling priority factor to a first user i' corresponding to the maximum scheduling priority factor, updating the number of the remaining tokens of the first user i ', updating an unscheduled resource block set, and deleting the first resource block k' from the unscheduled resource block set.
The method further comprises the following steps:
and judging whether the non-scheduled resource block set is empty or not, if not, re-determining the scheduling priority factor according to the updated residual token number, and allocating the non-scheduled resource block k contained in the updated non-scheduled resource block set to a corresponding user according to one or more re-determined scheduling priority factors.
The method further comprises the following steps:
when a first resource block k ' corresponding to the maximum scheduling priority factor is allocated to a first user i ' corresponding to the maximum scheduling priority factor, updating the cache residual data volume of the first user i ';
and re-determining the scheduling priority factor according to the updated cache residual data volume.
The method further comprises the following steps:
when the maximum scheduling priority factor is not greater than 0, allocating the first resource block k' to a corresponding user according to a maximum carrier-to-interference ratio algorithm or a round robin scheduling algorithm; or according to a formula
Figure BSA00000282607600091
Determining a second proportional fairness factor
Figure BSA00000282607600092
And according to the determined second proportional fairness factorAllocating the first resource block k' to a corresponding user; wherein, r isi,jAn estimated throughput in the first resource block k' for each user i in the jth transmission time interval; ri,jThe average throughput per user i in the jth transmission time interval.
The method further comprises the following steps:
and when the non-scheduled resource block set is empty, determining the actual throughput of each user i in the jth transmission time interval, and determining the average throughput of each user i in the (j + 1) th transmission time interval.
The base station determining the number of the remaining tokens of each managed user i comprises: updating the number of the remaining tokens of each user i administered by the base station at the beginning of the jth transmission time interval;
the method further comprises the following steps:
and after the actual throughput of each user i in the jth transmission time interval is determined and before the jth transmission time interval is ended, updating the number of the remaining tokens of the user i according to the actual throughput of each user i.
By adopting the base station and the method provided by the invention, the number of the residual tokens is considered during the priority calculation of the wireless resource allocation, thereby realizing the service quality guarantee based on the tokens and optimizing the resource allocation to a certain extent.
Drawings
FIG. 1 is a simplified diagram of a token bucket algorithm implementation flow;
FIG. 2 is a flow chart of an implementation of resource scheduling in one embodiment of the present invention;
FIG. 3 is a diagram illustrating a comparison between a satisfactory user ratio and a conventional method according to the present invention, which increases with the number of users;
fig. 4 is a schematic diagram comparing throughput with the number of users in the scheduling method of the present invention and the conventional method.
Detailed Description
In order to make the objects, technical solutions and advantages of the present invention more apparent, the present invention is further described in detail below with reference to the accompanying drawings and examples.
The invention provides a resource scheduling method in wireless communication, which comprises the following steps:
the base station determines the number of the remaining tokens of each managed user i;
and the base station determines a scheduling priority factor according to the number of the remaining tokens of the user i, and allocates the non-scheduled resource block k to the corresponding user according to one or more determined scheduling priority factors.
Fig. 2 is a flowchart of an implementation of resource scheduling in a specific example of the present invention, including:
step 201: starting from the jth TTI, the base station updates the Token bucket of each user i administered by the base station according to the arrival condition of the new Token, and determines the number Token of the rest of each user ii,j
In a specific implementation, this step may be performed by a Logical Link Control (LLC) layer in the base station, or by a Media Access Control (MAC) layer in the base station. It should be noted that the LLC layer and the MAC layer are two independent logical modules disposed in the base station, and therefore, the LLC layer may also be referred to as a logical link control module, and the MAC layer may also be referred to as a medium access control module.
Furthermore, the updating described in step 201 may be to add the number of the original tokens to the number of the newly added tokens to obtain the current token number of a certain user.
Step 202: the scheduled set of resource blocks S is set to null (null) and the unscheduled set of resource blocks U is set to contain all resource blocks. This step may be accomplished by a media access control module in the base station.
It should be noted that step 201 and step 202 are initial settings of the base station before performing resource scheduling.
Step 203:determining the scheduling priority factor P of the user i in the non-scheduled resource block k in the jth TTIi,j,k. In one particular implementation, the formula may be based on
Figure BSA00000282607600111
Determining the Pi,j,kAt this time, the Pi,j,kIs a Proportional Fair (PF) factor, but is different from the conventional PF factor.
Wherein, Tokeni,jThe current remaining token number in the token bucket for the user i; bufferi,jThe current residual data volume in the cache for the user i; r isi,j,kEstimating the throughput of the user i in the jth TTI on the non-scheduled resource block k; ri,jThe average throughput of the user i in the jth TTI is calculated by a media access control module after the resource scheduling of the jth-1 TTI is finished; b isBucket_sizeIs the token bucket size, typically a constant. Note that in the normal case all users 'B' sBucket_sizeThe same is true, but there are exceptions, such as for 2G and 4G handsets, B is the greater difference in handset capabilitiesBucket_sizeThe values of (a) will vary. Furthermore, in different TTIs, Ri,j、ri,j,kMay be different.
Step 204: one or more P determined from any user i on any one unscheduled resource block k in the unscheduled resource block set Ui,j,kThe scheduling priority factor with the maximum value is selected, namely according to a formula
Figure BSA00000282607600112
Determining a maximum scheduling priority factor Pi′,j,k′. Wherein i 'represents a specific user corresponding to the maximum scheduling priority factor, and k' represents a specific non-scheduled resource block corresponding to the maximum scheduling priority factor.
The selection of the scheduling priority factor with the largest value in this step may be implemented by a conventional method, for example, by a one-dimensional search, a two-dimensional search, and the like, which is not described herein again.
Step 205: judgment of Pi′,j,k′Whether greater than 0. If the resource block is larger than 0, the non-scheduled resource block k ' is allocated to the user i ', and the Token is paired according to the data transmission capability of the user i ' on the non-scheduled resource block ki′,jAnd/or Bufferi′,jMaking updates, e.g. in Tokeni′,jAnd/or Bufferi′jThe amount of data expected to be transmitted is subtracted. Thus, when entering the next round of scheduling of this TTI (i.e. when U is not empty in step 207, the procedure returns to step 203), the updated Token is usedi′jAnd/or Bufferi′,jA scheduling priority factor for user i' is determined.
Further, if not greater than 0 (i.e., less than or equal to 0), then conventional scheduling methods are employed, such as allocating unscheduled resource blocks k' according to the maximum carrier-to-interference ratio algorithm considering buffer, or using RR algorithm, or using conventional PF factor (i.e., using the RR algorithm), for example
Figure BSA00000282607600121
) And the like.
In a specific implementation of this step, only the case greater than 0 may be considered for processing, and the case not greater than 0 is ignored, i.e., no processing is performed for the case not greater than 0, and the process proceeds directly to step 206.
Step 206: updating S to S + k 'and updating U to U-k'. That is, resource block k' is added to scheduled resource block set S and deleted from non-scheduled resource block set U.
Step 207: and judging whether U is empty, and if U is not empty, returning to execute the step 203. Further, if U is empty, step 208 is performed.
It should be noted that step 203-.
Step 208: the actual throughput of one or more users administered by the base station is determined.
Step 209: and updating the token bucket of each user i according to the actual throughput of the user i, and ending the jth TTI.
Specifically, the updating in step 209 may be to subtract the number of tokens corresponding to the actual throughput from the current number of tokens of the user i, and this step may be completed by the logical link control module in the base station.
It should be noted that the jth TTI mentioned in the process shown in fig. 2 may be understood as any TTI of the base station during normal operation, where the user i is any user or each user governed by the base station, and the unscheduled resource block k is any resource block that can be allocated by the base station to the user or any resource block that is not allocated. Furthermore, the parameter Tokeni,jAre dynamically updated in different TTIs (see steps 201 and 209) and are also dynamically updated as resource scheduling is performed in one TTI (see step 205).
In particular implementation, the manner for determining the scheduling priority factor in step 203 is various, such as:
1. according to the number of the remaining tokens Tokeni,jEstimating the throughput ri,jAverage throughput Ri,jBuffer for buffering residual data volumei,jToken bucket size BBucket_sizeOne or more scheduling priority factors are determined. The following equations (a) - (F) are only specific examples of determining the scheduling priority factor according to this manner, and other modifications of the following equations, such as changing the exponent into a coefficient and/or the product into a sum, etc., are also applicable to the resource scheduling method of the present invention.
<math> <mrow> <mrow> <mo>(</mo> <mi>A</mi> <mo>)</mo> </mrow> <mo>-</mo> <mo>-</mo> <mo>-</mo> <msub> <mi>P</mi> <mrow> <mi>i</mi> <mo>,</mo> <mi>j</mi> </mrow> </msub> <mo>=</mo> <mfrac> <mrow> <mi>min</mi> <mrow> <mo>(</mo> <msub> <mi>Token</mi> <mrow> <mi>i</mi> <mo>,</mo> <mi>j</mi> </mrow> </msub> <mo>,</mo> <msub> <mi>Buffer</mi> <mrow> <mi>i</mi> <mo>,</mo> <mi>j</mi> </mrow> </msub> <mo>)</mo> </mrow> <mo>&CenterDot;</mo> <msub> <mi>r</mi> <mrow> <mi>i</mi> <mo>,</mo> <mi>j</mi> </mrow> </msub> </mrow> <mrow> <msub> <mi>B</mi> <mrow> <mi>Bucket</mi> <mo>_</mo> <mi>size</mi> </mrow> </msub> <mo>&CenterDot;</mo> <msub> <mi>R</mi> <mrow> <mi>i</mi> <mo>,</mo> <mi>j</mi> </mrow> </msub> </mrow> </mfrac> </mrow> </math>
<math> <mrow> <mrow> <mo>(</mo> <mi>B</mi> <mo>)</mo> </mrow> <mo>-</mo> <mo>-</mo> <mo>-</mo> <msub> <mi>P</mi> <mrow> <mi>i</mi> <mo>,</mo> <mi>j</mi> </mrow> </msub> <mo>=</mo> <mfrac> <mrow> <msup> <mrow> <mo>[</mo> <mi>min</mi> <mrow> <mo>(</mo> <msub> <mi>Token</mi> <mrow> <mi>i</mi> <mo>,</mo> <mi>j</mi> </mrow> </msub> <mo>,</mo> <msub> <mi>Buffer</mi> <mrow> <mi>i</mi> <mo>,</mo> <mi>j</mi> </mrow> </msub> <mo>)</mo> </mrow> <mo>]</mo> </mrow> <mi>&alpha;</mi> </msup> <mo>&CenterDot;</mo> <msup> <msub> <mi>r</mi> <mrow> <mi>i</mi> <mo>,</mo> <mi>j</mi> </mrow> </msub> <mi>&beta;</mi> </msup> </mrow> <mrow> <msup> <msub> <mi>B</mi> <mrow> <mi>Bucket</mi> <mo>_</mo> <mi>size</mi> </mrow> </msub> <mi>&theta;</mi> </msup> <mo>&CenterDot;</mo> <msup> <msub> <mi>R</mi> <mrow> <mi>i</mi> <mo>,</mo> <mi>j</mi> </mrow> </msub> <mi>&gamma;</mi> </msup> </mrow> </mfrac> </mrow> </math>
<math> <mrow> <mrow> <mo>(</mo> <mi>C</mi> <mo>)</mo> </mrow> <msub> <mrow> <mo>-</mo> <mo>-</mo> <mo>-</mo> <mi>P</mi> </mrow> <mrow> <mi>i</mi> <mo>,</mo> <mi>j</mi> </mrow> </msub> <mo>=</mo> <mfrac> <mrow> <msup> <msub> <mi>Token</mi> <mrow> <mi>i</mi> <mo>,</mo> <mi>j</mi> </mrow> </msub> <mi>&alpha;</mi> </msup> <mo>&CenterDot;</mo> <msup> <msub> <mi>Buffer</mi> <mrow> <mi>i</mi> <mo>,</mo> <mi>j</mi> </mrow> </msub> <mi>&delta;</mi> </msup> <mo>&CenterDot;</mo> <msup> <msub> <mi>r</mi> <mrow> <mi>i</mi> <mo>,</mo> <mi>j</mi> </mrow> </msub> <mi>&beta;</mi> </msup> </mrow> <mrow> <msup> <msub> <mi>B</mi> <mrow> <mi>Bucket</mi> <mo>_</mo> <mi>size</mi> </mrow> </msub> <mi>&theta;</mi> </msup> <mo>&CenterDot;</mo> <msup> <msub> <mi>R</mi> <mrow> <mi>i</mi> <mo>,</mo> <mi>j</mi> </mrow> </msub> <mi>&gamma;</mi> </msup> </mrow> </mfrac> </mrow> </math>
<math> <mrow> <mrow> <mo>(</mo> <mi>D</mi> <mo>)</mo> </mrow> <mo>-</mo> <mo>-</mo> <mo>-</mo> <msub> <mi>P</mi> <mrow> <mi>i</mi> <mo>,</mo> <mi>j</mi> </mrow> </msub> <mo>=</mo> <mfrac> <mrow> <mo>[</mo> <msup> <mrow> <mi>min</mi> <mrow> <mo>(</mo> <msub> <mi>Token</mi> <mrow> <mi>i</mi> <mo>,</mo> <mi>j</mi> </mrow> </msub> <mo>,</mo> <msub> <mi>Buffer</mi> <mrow> <mi>i</mi> <mo>,</mo> <mi>j</mi> </mrow> </msub> <mo>,</mo> <msub> <mi>r</mi> <mrow> <mi>i</mi> <mo>,</mo> <mi>j</mi> </mrow> </msub> <mo>)</mo> </mrow> <mo>]</mo> </mrow> <mi>&alpha;</mi> </msup> </mrow> <mrow> <msup> <msub> <mi>B</mi> <mrow> <mi>Bucket</mi> <mo>_</mo> <mi>size</mi> </mrow> </msub> <mi>&theta;</mi> </msup> <mo>&CenterDot;</mo> <msup> <msub> <mi>R</mi> <mrow> <mi>i</mi> <mo>,</mo> <mi>j</mi> </mrow> </msub> <mi>&gamma;</mi> </msup> </mrow> </mfrac> </mrow> </math>
<math> <mrow> <mrow> <mo>(</mo> <mi>E</mi> <mo>)</mo> </mrow> <mo>-</mo> <mo>-</mo> <mo>-</mo> <msub> <mi>P</mi> <mrow> <mi>i</mi> <mo>,</mo> <mi>j</mi> </mrow> </msub> <mo>=</mo> <mfrac> <mrow> <msup> <msub> <mi>Token</mi> <mrow> <mi>i</mi> <mo>,</mo> <mi>j</mi> </mrow> </msub> <mi>&alpha;</mi> </msup> <mo>&CenterDot;</mo> <mi>min</mi> <msup> <mrow> <mo>[</mo> <msub> <mi>Buffer</mi> <mrow> <mi>i</mi> <mo>,</mo> <mi>j</mi> </mrow> </msub> <mo>,</mo> <msub> <mi>r</mi> <mrow> <mi>i</mi> <mo>,</mo> <mi>j</mi> </mrow> </msub> <mo>]</mo> </mrow> <mi>&beta;</mi> </msup> </mrow> <mrow> <msup> <msub> <mi>B</mi> <mrow> <mi>Bucket</mi> <mo>_</mo> <mi>size</mi> </mrow> </msub> <mi>&theta;</mi> </msup> <mo>&CenterDot;</mo> <msup> <msub> <mi>R</mi> <mrow> <mi>i</mi> <mo>,</mo> <mi>j</mi> </mrow> </msub> <mi>&gamma;</mi> </msup> </mrow> </mfrac> </mrow> </math>
<math> <mrow> <mrow> <mo>(</mo> <mi>F</mi> <mo>)</mo> </mrow> <mo>-</mo> <mo>-</mo> <mo>-</mo> <msub> <mi>P</mi> <mrow> <mi>i</mi> <mo>,</mo> <mi>j</mi> </mrow> </msub> <mo>=</mo> <mfrac> <mrow> <msup> <msub> <mi>Buffer</mi> <mrow> <mi>i</mi> <mo>,</mo> <mi>j</mi> </mrow> </msub> <mi>&alpha;</mi> </msup> <mo>&CenterDot;</mo> <mi>min</mi> <msup> <mrow> <mo>[</mo> <msub> <mi>Token</mi> <mrow> <mi>i</mi> <mo>,</mo> <mi>j</mi> </mrow> </msub> <mo>,</mo> <msub> <mi>r</mi> <mrow> <mi>i</mi> <mo>,</mo> <mi>j</mi> </mrow> </msub> <mo>]</mo> </mrow> <mi>&beta;</mi> </msup> </mrow> <mrow> <msup> <msub> <mi>B</mi> <mrow> <mi>Bucket</mi> <mo>_</mo> <mi>size</mi> </mrow> </msub> <mi>&theta;</mi> </msup> <mo>&CenterDot;</mo> <msup> <msub> <mi>R</mi> <mrow> <mi>i</mi> <mo>,</mo> <mi>j</mi> </mrow> </msub> <mi>&gamma;</mi> </msup> </mrow> </mfrac> </mrow> </math>
2. According to the number of the remaining tokens Tokeni,jEstimating the throughput ri,jOne or more scheduling priority factors are determined.
3. According to the number of the remaining tokens Tokeni,jEstimating the throughput ri,jAverage throughput Ri,jOne or more scheduling priority factors are determined.
4. According to the number of the remaining tokens Tokeni,jEstimating the throughput ri,jBuffer for buffering residual data volumei,jOne or more scheduling priority factors are determined.
5. According to the number of the remaining tokens Tokeni,jEstimating the throughput ri,jAverage throughput Ri,jToken bucket size BBucket_sizeOne or more scheduling priority factors are determined.
6. According to the number of the remaining tokens Tokeni,jEstimating the throughput ri,jBuffer for buffering residual data volumei,jToken bucket size BBucket_sizeOne or more scheduling priority factors are determined.
7. According to the number of the remaining tokens Toketi,jDetermining one or more scheduling priority factors, such as Pi,j=Tokeni,j
Alternatively, in determining the scheduling priority factor in step 203, the number of remaining tokens Token is consideredi,jOn the basis of this parameter, canTo further consider the estimated throughput ri,jAverage throughput Ri,jBuffer for buffering residual data volumei,jToken bucket size BBucket_sizeOf the one or more parameters. Moreover, the operation form of the above parameters may be determined according to the actual application scenario, for example, an operation form similar to equations (a) - (F) or a further modification may be adopted.
In addition, the above-mentioned remaining Token number Tokeni,jThe rate token mode may be determined according to a guaranteed rate token mode, or may be determined according to a maximum rate token mode. For the number of remaining tokens Tokeni,jIn the case of the maximum rate token, the resource scheduling is performed according to the scheduling priority factor determined by the method, which indicates that the system tends to make all users close to the maximum rate, i.e., the user farther from the maximum rate has higher priority. In this way, in a high-speed data transmission service considering fairness, data transmission can be as close to the maximum rate as possible by all users on the premise of satisfying fairness.
Of course, Token is used for the number of remaining tokensi,jFor the case of maximum rate tokens, the scheduling priority factor may also be determined according to equations (G) - (J) or variations thereof. In this case, the system tends to make the user close to the maximum rate reach the maximum rate quickly, i.e. the user closer to the maximum rate has higher priority, and is mainly applied to the high-speed data transmission service without considering fairness, so that it is expected to meet the maximum rate transmission requirement of more users by using limited resources.
<math> <mrow> <mrow> <mo>(</mo> <mi>G</mi> <mo>)</mo> </mrow> <mo>-</mo> <mo>-</mo> <mo>-</mo> <msub> <mi>P</mi> <mrow> <mi>i</mi> <mo>,</mo> <mi>j</mi> </mrow> </msub> <mo>=</mo> <mfrac> <mrow> <msup> <msub> <mi>Buffer</mi> <mrow> <mi>i</mi> <mo>,</mo> <mi>j</mi> </mrow> </msub> <mi>&delta;</mi> </msup> <mo>&CenterDot;</mo> <msup> <msub> <mi>r</mi> <mrow> <mi>i</mi> <mo>,</mo> <mi>j</mi> </mrow> </msub> <mi>&beta;</mi> </msup> </mrow> <mrow> <msup> <msub> <mi>Token</mi> <mrow> <mi>i</mi> <mo>,</mo> <mi>j</mi> </mrow> </msub> <mi>&alpha;</mi> </msup> <mo>&CenterDot;</mo> <msup> <msub> <mi>B</mi> <mrow> <mi>Bucket</mi> <mo>_</mo> <mi>size</mi> </mrow> </msub> <mi>&theta;</mi> </msup> <mo>&CenterDot;</mo> <msup> <msub> <mi>R</mi> <mrow> <mi>i</mi> <mo>,</mo> <mi>j</mi> </mrow> </msub> <mi>&gamma;</mi> </msup> </mrow> </mfrac> </mrow> </math>
<math> <mrow> <mrow> <mo>(</mo> <mi>H</mi> <mo>)</mo> </mrow> <mo>-</mo> <mo>-</mo> <mo>-</mo> <msub> <mi>P</mi> <mrow> <mi>i</mi> <mo>,</mo> <mi>j</mi> </mrow> </msub> <mo>=</mo> <mfrac> <mrow> <mi>min</mi> <msup> <mrow> <mo>[</mo> <msub> <mi>Buffer</mi> <mrow> <mi>i</mi> <mo>,</mo> <mi>j</mi> </mrow> </msub> <mo>,</mo> <msub> <mi>r</mi> <mrow> <mi>i</mi> <mo>,</mo> <mi>j</mi> </mrow> </msub> <mo>]</mo> </mrow> <mi>&beta;</mi> </msup> </mrow> <mrow> <msup> <msub> <mi>Token</mi> <mrow> <mi>i</mi> <mo>,</mo> <mi>j</mi> </mrow> </msub> <mi>&alpha;</mi> </msup> <mo>&CenterDot;</mo> <msup> <msub> <mi>B</mi> <mrow> <mi>Bucket</mi> <mo>_</mo> <mi>Size</mi> </mrow> </msub> <mi>&theta;</mi> </msup> <mo>&CenterDot;</mo> <msup> <msub> <mi>R</mi> <mrow> <mi>i</mi> <mo>,</mo> <mi>j</mi> </mrow> </msub> <mi>&gamma;</mi> </msup> </mrow> </mfrac> </mrow> </math>
<math> <mrow> <mrow> <mo>(</mo> <mi>I</mi> <mo>)</mo> </mrow> <mo>-</mo> <mo>-</mo> <mo>-</mo> <msub> <mi>P</mi> <mrow> <mi>i</mi> <mo>,</mo> <mi>j</mi> </mrow> </msub> <mo>=</mo> <mfrac> <mrow> <msup> <mrow> <mo>(</mo> <msub> <mi>B</mi> <mrow> <mi>Bucket</mi> <mo>_</mo> <mi>size</mi> </mrow> </msub> <mo>-</mo> <msub> <mi>Token</mi> <mrow> <mi>i</mi> <mo>,</mo> <mi>j</mi> </mrow> </msub> <mo>)</mo> </mrow> <mi>&alpha;</mi> </msup> <mo>&CenterDot;</mo> <msup> <msub> <mi>Buffer</mi> <mrow> <mi>i</mi> <mo>,</mo> <mi>j</mi> </mrow> </msub> <mi>&delta;</mi> </msup> <mo>&CenterDot;</mo> <msup> <msub> <mi>r</mi> <mrow> <mi>i</mi> <mo>,</mo> <mi>j</mi> </mrow> </msub> <mi>&beta;</mi> </msup> </mrow> <mrow> <msup> <msub> <mi>B</mi> <mrow> <mi>Bucket</mi> <mo>_</mo> <mi>size</mi> </mrow> </msub> <mi>&theta;</mi> </msup> <mo>&CenterDot;</mo> <msup> <msub> <mi>R</mi> <mrow> <mi>i</mi> <mo>,</mo> <mi>j</mi> </mrow> </msub> <mi>&gamma;</mi> </msup> </mrow> </mfrac> </mrow> </math>
<math> <mrow> <mrow> <mo>(</mo> <mi>J</mi> <mo>)</mo> </mrow> <mo>-</mo> <mo>-</mo> <mo>-</mo> <msub> <mi>P</mi> <mrow> <mi>i</mi> <mo>,</mo> <mi>j</mi> </mrow> </msub> <mo>=</mo> <mfrac> <mrow> <msup> <mrow> <mo>(</mo> <msub> <mi>B</mi> <mrow> <mi>Bucket</mi> <mo>_</mo> <mi>size</mi> </mrow> </msub> <mo>-</mo> <msub> <mi>Token</mi> <mrow> <mi>i</mi> <mo>,</mo> <mi>j</mi> </mrow> </msub> <mo>)</mo> </mrow> <mi>&alpha;</mi> </msup> <mo>&CenterDot;</mo> <mi>min</mi> <msup> <mrow> <mo>[</mo> <msub> <mi>Buffer</mi> <mrow> <mi>i</mi> <mo>,</mo> <mi>j</mi> </mrow> </msub> <mo>,</mo> <msub> <mi>r</mi> <mrow> <mi>i</mi> <mo>,</mo> <mi>j</mi> </mrow> </msub> <mo>]</mo> </mrow> <mi>&beta;</mi> </msup> </mrow> <mrow> <msup> <msub> <mi>B</mi> <mrow> <mi>Bucket</mi> <mo>_</mo> <mi>size</mi> </mrow> </msub> <mi>&theta;</mi> </msup> <mo>&CenterDot;</mo> <msup> <msub> <mi>R</mi> <mrow> <mi>i</mi> <mo>,</mo> <mi>j</mi> </mrow> </msub> <mi>&gamma;</mi> </msup> </mrow> </mfrac> </mrow> </math>
It should be noted that, since one TTI is the minimum time interval for scheduling, the resource scheduling method of the present invention can be performed every TTI. Of course, it is also possible to schedule once for a plurality of TTIs, for example, once for 2 TTIs. Accordingly, the TTI without the scheduling indication may follow the scheduling result of the last TTI with the scheduling indication.
The present invention also provides a base station in a wireless communication system, comprising: a logic link control module and a media access control module.
The logical link control module is used for updating the remaining token quantity of each user i administered by the base station and providing the remaining token quantity of the user i to the media access control module.
And the media access control module is used for determining scheduling priority factors according to the number of the remaining tokens of the user i and allocating the non-scheduled resource block k to the corresponding user according to one or more determined scheduling priority factors.
In a specific example of the present invention, the media access control module is configured to:
and determining one or more scheduling priority factors according to the estimated throughput of each user i in each non-scheduled resource block k in the jth transmission time interval and the number of the remaining tokens of the user i. The operation form of determining the scheduling priority factor according to the estimated throughput and the number of remaining tokens may be various.
In a specific example of the present invention, the media access control module is configured to:
and determining one or more scheduling priority factors according to the estimated throughput of each user i in each non-scheduled resource block k in the jth transmission time interval, the number of the remaining tokens of the user i and the average throughput of each user i in the jth transmission time interval. The operation form of determining the scheduling priority factor according to the estimated throughput, the number of remaining tokens, and the average throughput may be various.
In another specific example of the present invention, the media access control module is configured to:
and determining one or more scheduling priority factors according to the estimated throughput of each user i in each non-scheduled resource block k in the jth transmission time interval, the residual token number of the user i and the cache residual data volume of each user i. The operation form of determining the scheduling priority factor according to the estimated throughput, the number of remaining tokens, and the amount of remaining data in the cache may be various.
In another specific example of the present invention, the media access control module is configured to:
and determining one or more scheduling priority factors according to the estimated throughput of each user i in each non-scheduled resource block k and the number of the remaining tokens of the user i in the jth transmission time interval, the average throughput of each user i in the jth transmission time interval and the cache remaining data volume of each user i. The operation form of determining the scheduling priority factor according to the estimated throughput, the number of remaining tokens, the average throughput, and the remaining data amount of the buffer may be various, such as an operation form similar to equations (a) - (J), except that the token bucket size B in the above equation is usedBucket_sizeAnd (5) removing.
Specifically, the media access control module is configured to: according to the formula
Figure BSA00000282607600161
Determining a proportional fairness factor Pi,j,kAs the scheduling priority factor. Wherein, Tokeni,jThe number of tokens remaining for each user i; bufferi,jCaching the residual data amount for each user i; b isBucket_sizeIs the token bucket size; r isi,j,kEstimating the throughput of each user i in each non-scheduled resource block k for the jth transmission time interval; ri,jAverage throughput for each user i in the jth transmission time interval; u is a set of non-scheduled resource blocks.
Of course, the mac module is further configured to: and determining the scheduling priority factor according to the size of the token bucket. I.e. the parameter token bucket size is further taken into account when determining the scheduling priority factor.
Further, the media access control module is configured to:
finding a maximum scheduling priority factor from the determined one or more scheduling priority factors, judging whether the maximum scheduling priority factor is greater than 0, if so, allocating a first resource block k 'corresponding to the maximum scheduling priority factor to a first user i' corresponding to the maximum scheduling priority factor, updating the number of remaining tokens of the first user i ', updating an unscheduled resource block set, and deleting the first resource block k' from the unscheduled resource block set.
The media access control module is further to:
and judging whether the non-scheduled resource block set is empty or not, if not, re-determining the scheduling priority factor according to the updated residual token number, and allocating the non-scheduled resource block k contained in the updated non-scheduled resource block set to a corresponding user according to one or more re-determined scheduling priority factors.
The media access control module is further to:
when the first resource block k ' corresponding to the maximum scheduling priority factor is allocated to the first user i ' corresponding to the maximum scheduling priority factor, updating the cache residual data volume of the first user i ', and re-determining the scheduling priority factor according to the updated cache residual data volume.
The media access control module is further to:
when the maximum scheduling priority factor is not greater than 0, allocating the first resource block k' to a corresponding user according to a maximum carrier-to-interference ratio algorithm or a round robin scheduling algorithm; or according to a formula
Figure BSA00000282607600171
Determining a second proportional fairness factor
Figure BSA00000282607600172
And according to the determined second proportional fairness factor
Figure BSA00000282607600173
Allocating the first resource block k' to a corresponding user;
wherein, r isi,jFor the jth transmissionAn estimated throughput per user i in a time interval in a first resource block k'; ri,jThe average throughput per user i in the jth transmission time interval.
The media access control module is further to:
and when the non-scheduled resource block set is empty, determining the actual throughput of each user i in the jth transmission time interval, providing the actual throughput to the logic link control module, and determining the average throughput of each user i in the (j + 1) th transmission time interval.
The logical link control module is further configured to: updating the number of the remaining tokens of each user i administered by the base station at the beginning of the jth transmission time interval;
and after the actual throughput of each user i is received and before the jth transmission time interval is ended, updating the number of the remaining tokens of the user i according to the actual throughput of each user i.
Note that the token belongs to data related to a QoS bearer, and is generated by a base station according to QoS parameters (including a maximum rate and a guaranteed rate of the bearer, etc.) provided when the base station establishes a QoS bearer (bearer) according to an upper layer (EPS). And, the base station maintains token buckets for the policed users according to these parameters. Specifically, the base station is responsible for maintaining the token and is a logical link control layer, and the LLC layer is mainly responsible for QoS-related operations such as flow control, and is independent of the physical medium.
Although the scheduling method of the present invention is also completed by the base station, the resource scheduling belongs to the operation of the medium access control layer of the base station, and mainly deals with the control related to the physical medium, for example, the problem of the allocation of the physical resources is solved. In the traditional method, the media access control layer of the base station does not utilize the token, so the resource scheduling method in the invention needs the base station to transfer the parameters related to the token from the logic link control layer to the media access control layer, namely, needs to transfer the cross-layer parameters among the modules in the base station.
Fig. 3 shows the case where the satisfactory user ratio increases with the number of users, and fig. 4 shows the case where the throughput increases with the number of users, and the simulation parameters used are as shown in table 1. As can be seen from fig. 3 and 4, compared with the conventional method, the resource scheduling method and the base station for resource scheduling provided by the present invention can allocate resources more optimally to meet the rate requirement of the user. Accordingly, the base station and the method of the present invention can reserve more resources for maximum carrier-to-interference ratio scheduling, thereby having advantages in throughput.
Figure BSA00000282607600181
TABLE 1
The above description is only for the purpose of illustrating the preferred embodiments of the present invention and is not to be construed as limiting the invention, and any modifications, equivalents, improvements and the like made within the spirit and principle of the present invention should be included in the scope of the present invention.

Claims (26)

1. A base station in a wireless communication system, comprising:
the logical link control module is used for updating the residual token quantity of each user i administered by the base station and providing the residual token quantity of the user i to the media access control module;
and the media access control module is used for determining scheduling priority factors according to the number of the remaining tokens of the user i and allocating the non-scheduled resource block k to the corresponding user according to the determined scheduling priority factor or factors.
2. The base station of claim 1, wherein the media access control module is configured to:
and determining one or more scheduling priority factors according to the estimated throughput of each user i in each non-scheduled resource block k in the jth transmission time interval and the number of the remaining tokens of the user i.
3. The base station of claim 1, wherein the media access control module is configured to:
and determining one or more scheduling priority factors according to the estimated throughput of each user i in each non-scheduled resource block k in the jth transmission time interval, the number of the remaining tokens of the user i and the average throughput of each user i in the jth transmission time interval.
4. The base station of claim 1, wherein the media access control module is configured to:
and determining one or more scheduling priority factors according to the estimated throughput of each user i in each non-scheduled resource block k in the jth transmission time interval, the residual token number of the user i and the cache residual data volume of each user i.
5. The base station of claim 1, wherein the media access control module is configured to:
and determining one or more scheduling priority factors according to the estimated throughput of each user i in each non-scheduled resource block k and the number of the remaining tokens of the user i in the jth transmission time interval, the average throughput of each user i in the jth transmission time interval and the cache remaining data volume of each user i.
6. The base station of claim 5, wherein the medium accessThe control module is used for: according to the formulaDetermining a proportional fairness factor Pi,j,kAs the scheduling priority factor;
wherein, Tokeni,jThe number of tokens remaining for each user i; bufferi,jCaching the residual data amount for each user i; b isBucket_sizeIs the token bucket size; r isi,j,kEstimating the throughput of each user i in each non-scheduled resource block k for the jth transmission time interval; ri,jAverage throughput for each user i in the jth transmission time interval; u is a set of non-scheduled resource blocks.
7. The base station of any of claims 1-6, wherein the media access control module is further configured to: and determining the scheduling priority factor according to the size of the token bucket.
8. The base station of any of claims 1-6, wherein the media access control module is further configured to:
finding a maximum scheduling priority factor from the determined one or more scheduling priority factors, judging whether the maximum scheduling priority factor is greater than 0, if so, allocating a first resource block k 'corresponding to the maximum scheduling priority factor to a first user i' corresponding to the maximum scheduling priority factor, updating the number of remaining tokens of the first user i ', updating an unscheduled resource block set, and deleting the first resource block k' from the unscheduled resource block set.
9. The base station of claim 8, wherein the media access control module is further configured to:
and judging whether the non-scheduled resource block set is empty or not, if not, re-determining the scheduling priority factor according to the updated residual token number, and allocating the non-scheduled resource block k contained in the updated non-scheduled resource block set to a corresponding user according to one or more re-determined scheduling priority factors.
10. The base station of claim 9, wherein the media access control module is further configured to:
when the first resource block k ' corresponding to the maximum scheduling priority factor is allocated to the first user i ' corresponding to the maximum scheduling priority factor, updating the cache residual data volume of the first user i ', and re-determining the scheduling priority factor according to the updated cache residual data volume.
11. The base station of claim 8, wherein the media access control module is further configured to: when the maximum scheduling priority factor is not greater than 0, allocating the first resource block k' to a corresponding user according to a maximum carrier-to-interference ratio algorithm or a round robin scheduling algorithm; or according to a formula
Figure FSA00000282607500031
Determining a second proportional fairness factor
Figure FSA00000282607500032
And according to the determined second proportional fairness factor
Figure FSA00000282607500033
Allocating the first resource block k' to a corresponding user;
wherein, r isi,jAn estimated throughput in the first resource block k' for each user i in the jth transmission time interval; ri,jThe average throughput per user i in the jth transmission time interval.
12. The base station of claim 8, wherein the media access control module is further configured to:
and when the non-scheduled resource block set is empty, determining the actual throughput of each user i in the jth transmission time interval, providing the actual throughput to the logic link control module, and determining the average throughput of each user i in the (j + 1) th transmission time interval.
13. The base station of claim 12, wherein the logical link control module is further configured to: updating the number of the remaining tokens of each user i administered by the base station at the beginning of the jth transmission time interval;
and after the actual throughput of each user i is received and before the jth transmission time interval is ended, updating the number of the remaining tokens of the user i according to the actual throughput of each user i.
14. A method for scheduling resources in wireless communication, comprising:
the base station determines the number of the remaining tokens of each managed user i;
and the base station determines a scheduling priority factor according to the number of the remaining tokens of the user i, and allocates the non-scheduled resource block k to the corresponding user according to one or more determined scheduling priority factors.
15. The method of claim 14, wherein the base station determining a scheduling priority factor according to the number of remaining tokens for the user i comprises:
and determining one or more scheduling priority factors according to the estimated throughput of each user i in each non-scheduled resource block k in the jth transmission time interval and the number of the remaining tokens of the user i.
16. The method of claim 14, wherein the base station determining a scheduling priority factor according to the number of remaining tokens for the user i comprises:
and determining one or more scheduling priority factors according to the estimated throughput of each user i in each non-scheduled resource block k in the jth transmission time interval, the number of the remaining tokens of the user i and the average throughput of each user i in the jth transmission time interval.
17. The method of claim 14, wherein the base station determining a scheduling priority factor according to the number of remaining tokens for the user i comprises:
and determining one or more scheduling priority factors according to the estimated throughput of each user i in each non-scheduled resource block k in the jth transmission time interval, the residual token number of the user i and the cache residual data volume of each user i.
18. The method of claim 14, wherein the base station determining a scheduling priority factor according to the number of remaining tokens for the user i comprises:
and determining one or more scheduling priority factors according to the estimated throughput of each user i in each non-scheduled resource block k and the number of the remaining tokens of the user i in the jth transmission time interval, the average throughput of each user i in the jth transmission time interval and the cache remaining data volume of each user i.
19. The method of claim 18, wherein the base station determining a scheduling priority factor according to the number of remaining tokens for the user i comprises: according to the formula
Figure FSA00000282607500041
Determining a proportional fairness factor Pi,j,kAs the scheduling priority factor;
wherein, Tokeni,jThe number of tokens remaining for each user i; bufferi,jCaching remaining data for each user iAn amount; b isBucket_sizeIs the token bucket size; r isi,j,kEstimating the throughput of each user i in each non-scheduled resource block k for the jth transmission time interval; ri,jAverage throughput for each user i in the jth transmission time interval; u is a set of non-scheduled resource blocks.
20. The method of any of claims 14-19, wherein the base station determining a scheduling priority factor based on the estimated throughput per user i per non-scheduled resource block k and the number of remaining tokens for user i further comprises: and determining the scheduling priority factor according to the size of the token bucket.
21. The method of any one of claims 14-19, further comprising:
finding a maximum scheduling priority factor from the determined one or more scheduling priority factors;
and judging whether the maximum scheduling priority factor is greater than 0, if so, allocating a first resource block k 'corresponding to the maximum scheduling priority factor to a first user i' corresponding to the maximum scheduling priority factor, updating the number of the remaining tokens of the first user i ', updating an unscheduled resource block set, and deleting the first resource block k' from the unscheduled resource block set.
22. The method of claim 21, further comprising:
and judging whether the non-scheduled resource block set is empty or not, if not, re-determining the scheduling priority factor according to the updated residual token number, and allocating the non-scheduled resource block k contained in the updated non-scheduled resource block set to a corresponding user according to one or more re-determined scheduling priority factors.
23. The method of claim 22, further comprising:
when a first resource block k ' corresponding to the maximum scheduling priority factor is allocated to a first user i ' corresponding to the maximum scheduling priority factor, updating the cache residual data volume of the first user i ';
and re-determining the scheduling priority factor according to the updated cache residual data volume.
24. The method of claim 21, further comprising:
when the maximum scheduling priority factor is not greater than 0, allocating the first resource block k' to a corresponding user according to a maximum carrier-to-interference ratio algorithm or a round robin scheduling algorithm; or according to a formula
Figure FSA00000282607500051
Determining a second proportional fairness factor
Figure FSA00000282607500052
And according to the determined second proportional fairness factorAllocating the first resource block k' to a corresponding user; wherein, r isi,jAn estimated throughput in the first resource block k' for each user i in the jth transmission time interval; ri,jThe average throughput per user i in the jth transmission time interval.
25. The method of claim 21, further comprising:
and when the non-scheduled resource block set is empty, determining the actual throughput of each user i in the jth transmission time interval, and determining the average throughput of each user i in the (j + 1) th transmission time interval.
26. The method of claim 25, wherein the base station determining the number of tokens remaining per user i under jurisdiction comprises: updating the number of the remaining tokens of each user i administered by the base station at the beginning of the jth transmission time interval;
the method further comprises the following steps:
and after the actual throughput of each user i in the jth transmission time interval is determined and before the jth transmission time interval is ended, updating the number of the remaining tokens of the user i according to the actual throughput of each user i.
CN201010290817.9A 2010-09-20 2010-09-20 Base station in a kind of wireless communication system and resource regulating method Active CN102413570B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201010290817.9A CN102413570B (en) 2010-09-20 2010-09-20 Base station in a kind of wireless communication system and resource regulating method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201010290817.9A CN102413570B (en) 2010-09-20 2010-09-20 Base station in a kind of wireless communication system and resource regulating method

Publications (2)

Publication Number Publication Date
CN102413570A true CN102413570A (en) 2012-04-11
CN102413570B CN102413570B (en) 2016-05-11

Family

ID=45915334

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201010290817.9A Active CN102413570B (en) 2010-09-20 2010-09-20 Base station in a kind of wireless communication system and resource regulating method

Country Status (1)

Country Link
CN (1) CN102413570B (en)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103945540A (en) * 2014-03-14 2014-07-23 电信科学技术研究院 Processing method and device for logical channel priority
CN104981014A (en) * 2014-04-02 2015-10-14 成都鼎桥通信技术有限公司 Downlink resource distribution method and base station
EP3062574A4 (en) * 2013-10-21 2016-10-12 Zte Corp Hsdpa resource scheduling method and apparatus

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP2134133A1 (en) * 2008-06-09 2009-12-16 Nec Corporation Wireless communication system, base station, scheduling method, and program
CN101754387A (en) * 2008-12-12 2010-06-23 株式会社Ntt都科摩 Method for scheduling resources in wireless communication system and base station
CN101827391A (en) * 2009-03-04 2010-09-08 中国移动通信集团公司 Method and device for allocating uplink resources and sending status reports

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP2134133A1 (en) * 2008-06-09 2009-12-16 Nec Corporation Wireless communication system, base station, scheduling method, and program
CN101754387A (en) * 2008-12-12 2010-06-23 株式会社Ntt都科摩 Method for scheduling resources in wireless communication system and base station
CN101827391A (en) * 2009-03-04 2010-09-08 中国移动通信集团公司 Method and device for allocating uplink resources and sending status reports

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP3062574A4 (en) * 2013-10-21 2016-10-12 Zte Corp Hsdpa resource scheduling method and apparatus
CN103945540A (en) * 2014-03-14 2014-07-23 电信科学技术研究院 Processing method and device for logical channel priority
CN104981014A (en) * 2014-04-02 2015-10-14 成都鼎桥通信技术有限公司 Downlink resource distribution method and base station
CN104981014B (en) * 2014-04-02 2018-09-25 成都鼎桥通信技术有限公司 Descending resource allocation method and base station

Also Published As

Publication number Publication date
CN102413570B (en) 2016-05-11

Similar Documents

Publication Publication Date Title
CN101621457B (en) Multi-service scheduling method and system
CN101754387B (en) Method for scheduling resources in wireless communication system and base station
US8059531B2 (en) Packet scheduling method for real-time traffic transmission in mobile telecommunication system
US8130709B2 (en) Apparatus and method for transmitting and receiving control information for uplink data in a mobile communication system and system thereof
CN110808920B (en) Satellite communication flow control method with coexistence of CCSDS frame and IP message
US8289852B2 (en) Setting token bucket parameters for scheduling of air-interface resources
JP2014507097A (en) LTE scheduling
Zhang et al. Cross-layer resource allocation for mixed services in multiuser OFDM-based cognitive radio systems
EP3338499B1 (en) Decreasing free-riding data traffic in uplink scheduling
CN104969648A (en) Method and system for scheduling radio resources in cellular networks
CN101227695A (en) Apparatus and method for distributing district communication resource
CN105517179B (en) A kind of method and scheduler of wireless resource scheduling
US7835394B2 (en) Dynamic setting of transmission scheduler algorithms
CN104981014B (en) Descending resource allocation method and base station
CN104640227A (en) Downlink resource scheduling method for hybrid service in LTE (long term evolution) system
US9025446B2 (en) Carrier selection policy for joint scheduling for carrier aggregation in an LTE-advanced system
CN102413570A (en) Base station in wireless communication system and resource scheduling method
CN104936234B (en) A kind of joint dynamic resource allocation method optimized for efficiency in LTE system
CN102652451B (en) Multi-carrier communication method
CN102970757B (en) Long-term evolution (LTE) downlink filling resource distribution method based on real-time service
CN110493824B (en) Data scheduling method and device based on QoS, access network equipment and storage medium
EP2912798B1 (en) Queue splitting for parallel carrier aggregation scheduling
García-Morales et al. Latency-Based 5G RAN slicing descriptor to support deterministic industry 4.0 applications
CN113300973B (en) Scheduling method and device for multi-queue transmission, electronic equipment and storage medium
Al-Dulaimi et al. Construction and Analysis of Dynamic Distribution for Resource Blocks of Real-Time and Data Elastic Traffic in IMS/LTE networks

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant