Embodiment
For making the purpose, technical solutions and advantages of the present invention clearer, the present invention is described in further detail below in conjunction with the accompanying drawings and the specific embodiments.
Core concept of the present invention is, preferentially for time delay and two kinds of business demands of transmission rate, the business of being badly in need of scheduling assigned to the set of the first priority scheduling when dispatching, and carries out the scheduling of first priority, can make this class user's demand obtain maximum satisfying; A kind of multi-priority services aligning method is provided in addition, can have carried out prioritization to different user in conjunction with time delay and speed characteristic and corresponding QoS demand; For the user of being badly in need of scheduling, to satisfy qos requirement as target, finish after the resource of being badly in need of dispatched users distributes, the user who satisfies qos requirement dispatched take the maximization transmission rate as target, can be under the condition that ensures business demand the optimization system capacity.Like this, the present invention can improve transmission rate in conjunction with the MU-MIMO transmission plan in the process of multi-business scheduling, satisfies better business demand and capacity.
Fig. 1 is main schematic flow sheet of the present invention, and as shown in Figure 1, the present invention mainly may further comprise the steps:
Time delay and the professional Mean Speed of the miscellaneous service of dispatched users respectively treated in step 101, calculating, described time delay is the stand-by period after the packet of service queue head enters this service queue, and described professional Mean Speed is the average transmission rate of a kind of business in a time window; According to described time delay and described professional Mean Speed, determine the priority factors of described every kind of business, for respectively treating dispatched users, select maximum described priority factors in its business as this user's priority factors.
Here, determine described every kind of business priority factors method can for:
Professional for GBR, according to
Determine the priority factors ω of this GBR business
K, i,
Professional for non-GBR, according to
Determine the priority factors ω of this non-GBR business
K, i
Wherein, α is weighted factor, α ∈ [0,1], d
K, iBe the time delay of k user i kind business, D
iBe the time delay thresholding of i kind business, GBR
iBe the minimum transmission rate request of i kind GBR business,
Be the Mean Speed of k user i business, u () is step function,
Step 102-103, according to described time delay and described professional Mean Speed, and default priority scheduling condition, remaining dispatched users is divided priority scheduling user group and non-priority scheduling user group, if in described priority scheduling user's group the user is arranged, then execution in step 104, otherwise execution in step 107.
Here, described priority scheduling condition is: the user has at least a kind of business to satisfy: the described time delay of this business surpasses the time delay thresholding of this kind business or the speed thresholding that described Mean Speed is lower than this kind business.The user who namely satisfies this condition will be divided in the priority scheduling user organizes.
Step 104-106, the unit resource of an optional free time, priority factors according to described user, the user of this unit resource of choice for use from described priority scheduling user's group, calculating configures this unit resource to behind the selected user, described time delay and the described professional Mean Speed of each user's miscellaneous service in current described priority scheduling user's group, and according to this result of calculation, the user who does not satisfy described priority scheduling condition is transferred to from described priority scheduling user's group in described non-priority scheduling user's group, if in current described priority scheduling user's group user and current available free resource are arranged, then repeated execution of steps 104, otherwise, judge in current whether available free resource and the described non-priority scheduling user's group user is arranged, if so, then execution in step 107, otherwise execution in step 109.
Here, according to described user's priority factors, from described priority scheduling user group user's detailed process of this unit resource of choice for use can for:
From described priority scheduling user's group, select the user of described priority factors maximum as this unit resource of current use n
*The primary user, according to this primary user at this unit resource n
*On speed and this primary user's described priority factors, determine this primary user's pairing preferred value;
According to the user at this unit resource n
*On speed, in the maximum configured number of users scope of default unit resource, from described priority scheduling user group, select and can obtain maximum combined priority factors and this maximum combined priority factors when matching with this primary user greater than the user of described pairing preferred value, and with the pairing user of the selected user who goes out as described primary user;
If there is described primary user's pairing user, determine that then described primary user and described pairing user use this unit resource n jointly
*, otherwise, determine that described primary user uses this unit resource n
*
Need to prove, in actual applications, can adopt several different methods to determine primary user's pairing preferred value, and the associating priority factors.The below provides two kinds of better methods, but is not limited to this:
Method one:
According to
Determine described primary user's pairing preferred value
Wherein,
Be primary user k
*Single user mode under momentary rate,
Be primary user k
*Mean Speed;
Accordingly, definite method of described associating priority factors can for:
Calculating utilizes unit resource n
*When carrying out multi-user transmission, the transmission rate R of each the user l that transmits
L_MU
For each the user l that carries out described multi-user transmission, according to
Determine the pairing preferred value μ of this user l
L_MU, wherein, ω
L_MAXPriority factors for user l;
To all described pairing preferred value summations of carrying out the user of multi-user transmission, summed result is defined as utilizing unit resource n
*Associating priority factors when carrying out described multi-user transmission.
Method two:
According to
Determine described primary user k
*The pairing preferred value
Wherein,
Be primary user k
*Single user mode under momentary rate.
Accordingly, definite method of described associating priority factors can for:
Calculating utilizes unit resource n
*When carrying out multi-user transmission, the transmission rate of each the user l that transmits;
For each the user l that carries out described multi-user transmission, according to μ
L_MU=R
L_MU, determine the pairing preferred value μ of this user l
L_MU
To all described pairing preferred value summations of carrying out the user of multi-user transmission, summed result is defined as utilizing unit resource n
*Associating priority factors when carrying out described multi-user transmission.
Step 107-108, the unit resource of an optional free time, for each user in described non-priority scheduling user's group, determine all professional queue length sums of the instantaneous throughput of this user on this unit resource and this user, described instantaneous throughput is the transmitted bit number on the Subscriber Unit resource, according to described instantaneous throughput and described all professional queue length sums, the user of this unit resource of choice for use from described non-priority scheduling user's group, calculating configures all professional queue length sums to selected each user behind the selected user with this unit resource, judge in current whether available free resource and the described non-priority scheduling user's group user is arranged, if, then repeated execution of steps 107, otherwise, execution in step 109.
Here, in this step according to described instantaneous throughput and described all professional queue length sums, from described non-priority scheduling user group the user's of this unit resource of choice for use concrete grammar can for:
According to described instantaneous throughput B
lWith described all professional queue length sum Q
Tot_l, according to B
Eff_l=min (Q
Tot_lB
l) calculate in described non-priority scheduling user's group each user l at this unit resource n
*On effective speed B
Eff_l, select effective speed B
Eff_lMaximum user is as this unit resource of current use n
*The primary user;
In the maximum configured number of users scope of default unit resource, from described priority scheduling user's group, select can obtain when matching with described primary user maximum combined effective speed and this maximum combined effective speed greater than described primary user at this unit resource n
*On the user of effective speed, as described primary user's pairing user;
If there is described primary user's pairing user, determine that then described primary user and described pairing user use this unit resource n jointly
*, otherwise determine that described primary user uses this unit resource n
*
Preferably, in the said method can according to
Determine described associating effective speed B
MU_eff, wherein, the user's set when Γ is multi-user transmission, B
mBe the momentary rate of user m under the multi-user transmission pattern, Q
Tot_mAll professional queue length sums for user m.
Preferably, can be according to Q
Tot_m=Q
Tot_m-min (B
m, Q
Tot_m), calculating configures all professional queue length sum Q to selected each user behind the selected user with this unit resource
Tot_mWherein, m ∈ Γ, Γ are selected user's set, B
mThe momentary rate of under the multi-user transmission pattern, transmitting in this unit resource for user m.
Step 109, will notify to corresponding user for the user profile of constituent parts resource selection.
Specific implementation below by a pair of such scheme of embodiments of the invention further specifies.
Step 201, initialization.
All resources, user's set and priority parameters are carried out initialization, and all available bandwidth resources of system are initialized as resource collection, and Lv1 and Lv2 user's set are initialized as empty set.
Step 202, service priority calculate.
Calculate time delay and the professional Mean Speed of every kind of business of each user.The packet that service delay is expressed as certain service queue head enters the time of formation; Professional Mean Speed is expressed as certain professional average transmission rate in a time window, is used for ensureing the GBR demand, and the length of concrete time window and Mean Speed computational methods belong to known technology, no longer elaborate here.Utilize time delay and average transmission rate to calculate the service priority factor ω of every kind of business
K, i, wherein k represents k user, i represents that the i kind is professional; The priority of different service types can be calculated ω with formula (1)
K, iLarger then priority is higher.Professional for GBR, priority factors comprises time delay part and service rate part; Professional for non-GBR, priority factors comprises the time delay part.
Wherein:
α is weighted factor, α ∈ [0,1], and the value of regulating α can be regulated in the scheduling process the weight of time delay and GBR demand, and α is larger then more responsive to time delay, otherwise then more responsive to service rate.
d
K, iThe time delay that represents k user i kind business
D
iThe time delay thresholding that represents i kind business, different types of service is different to the susceptibility of time delay, and the time delay thresholding of non-real time service is higher than the thresholding of real time business, thereby higher to the patience of time delay.The span of priority factors time delay part is α [1, e].
GBR
iBe the minimum transmission rate request of i kind GBR business, the thresholding that different business is different, corresponding different to the requirement of GBR;
The Mean Speed that represents k user i business.U () is step function,
When professional Mean Speed surpassed GBR thresholding speed, the GBR in the priority factors partly was 0, and expression is satisfied after the GBR requirement, and service rate no longer affects priority.When Mean Speed was lower than the GBR thresholding, the span of priority factors GBR part was (1-α) [1, e].
The priority ratio that formula (1) can be used for doing different service types, the target that realize comprises: professional for GBR, the formation factor that affect priority comprises time delay and professional Mean Speed, and for non-GBR business, the formation factor only has time delay; Service priority improves with the rising of time delay and the decline of Mean Speed, and is the acceleration raising; When business satisfied the GBR demand, the Mean Speed of GBR business no longer affected this professional priority, came comparison priority by time delay between GBR business and the non-GBR business; In the GBR business, time delay and speed embody by a weight factor the influence degree of priority, so that both weights are adjusted in the base station according to the result.
After priority factors is calculated and finished between business, can obtain User Priority factor ω by formula (2)
K max, equal the priority factors of the highest business of all professional medium priorities of this user.
Step 203, user grouping.
According to queue heads time delay and the Mean Speed of every kind of business of each user of obtaining in the previous step, judged whether that service delay surpasses time delay thresholding α
i, or Mean Speed is lower than speed thresholding β
iThe user, classify these users that surpass thresholding as be badly in need of scheduling user, add in Lv1 user's set omega.This class user has the highest priority, need to be before other users priority scheduling, Lv1 user's regulation goal is time delay and the GBR demand of guaranteeing the user, scheduling strategy is for user resource allocation.All the other user adds are gathered among the Ψ to Lv2 user, and Lv2 user's regulation goal is maximum system throughput, and scheduling strategy is for the resource selection user.
Step 204, judge in the Lv1 user group whether the user is arranged, if there is the user of the qualified urgent need scheduling of this class, then execution in step 205, enter the Lv1 scheduling, if Lv1 user's set omega is empty set then execution in step 211 enters the Lv2 scheduling of resource.
Step 205, Lv1 primary user select.
In scheduling process, at first for the user in the Lv1 set carries out prioritization, sequencer procedure is only considered user's formation characteristic, does not consider the characteristic of channel, the User Priority factor that calculates according to formula (2) sorts, and the larger then priority of priority factors is higher.Selected user k
*As the primary user, in available resource collection Λ, select the resource n of speed maximum
*Distribute to user k
*
Step 206, Lv1 user's pairing.
In Lv1 user's pairing process, the user who gathers in order to ensure Lv1 can obtain priority scheduling, and the user of candidate's pairing can only select from the set of Lv1.User's pairing is according to greedy criterion, in conjunction with throughput and business demand, select the user of associating priority factors maximum as the best pairing user, thereby during then the contrast priority factors of adding the pairing user set behind this user and not adding this user's pairing user set judges whether this user add to be gathered to the pairing user.Concrete steps following (as shown in Figure 3):
Step 2061, initialization user gather Γ={ k
*, and with the primary user k that selects in the step 205
*Adding the pairing user to gathers among the Γ.
Step 2062, according to primary user k
*At resource n
*On the rate calculations User Priority
(being aforesaid primary user's pairing preferred value), this priority also is the initialization priority that the user gathers Γ.
Step 2063, all the other users of poll select alternative pairing user l from remaining user set omega-Γ, calculate l added to and gather behind the Γ at resource n
*On associating speed R
Γ ∪ { l}, and calculate associating priority factors F (R according to certain associating priority formula
Γ ∪ { l}).Select the user l of associating priority factors maximum behind the end of polling(EOP)
*As the best pairing user,
L is added in step 2064, judgement
*Rear Γ ∪ { the associating priority factors of l} and the priority factors F (R of Γ before
Γ), if the latter then stops the pairing process greater than the former, and execution in step 2066, and do not add this user in the pairing user set; If the former is greater than latter execution in step 2064-1), this best pairing user add in user's set, is upgraded set Γ=Γ ∪ { l}.
Step 2065, judgement pairing user gather whether number of users reaches the maximum number of user of pairing among the Γ, if reach maximum number of user, then execution in step 2066, otherwise execution in step 2063 selects next pairing user to match again.
Step 2066, end pairing process are with resource n
*Distribute to the user and gather Γ.
Step 207, more new resources and Lv1 user.
Be that a pairing user gathers and distributes a resource units at every turn, just upgrade queue heads time delay, the Mean Speed of all users in this user's set and calculate this user's User Priority factor ω
K maxWith resource n
*From resource collection Λ, delete.
Step 208, the user profile after utilize upgrading judge whether the user in current Lv1 user's set satisfies time delay and the GBR requirement of Lv1 set, if certain user upgrades that the time delay of all professional i is lower than thresholding α behind the queuing message in active user's set
iAnd Mean Speed is higher than thresholding β
i, then execution in step 209.
Step 209, the user who does not satisfy the Lv1 thresholding in the step 208 being removed from the Lv1 set omega, add in the Lv2 set, no longer is this user resource allocation in follow-up Lv1 scheduling.
Step 210, judge in the Lv1 set omega whether to also have the user, if do not have the user in the Lv1 set, execution in step 210-1 then, if still have the user, execution in step 210-2 then.
Step 210-1, judge among the resource collection Λ whether to also have resource, if resource is arranged, then execution in step 211, enter the Lv2 scheduling of resource, if there is not resource, then execution in step 216.
Step 210-2, judge among the resource collection Λ whether to also have resource, if system also has surplus resources, then execution in step 5, if there is not surplus resources, then execution in step 16.
Step 211, Lv2 initialization.
The target that the Lv2 scheduling will be satisfied is maximum system throughput, only considers user's the characteristic of channel in resource allocation process, and does not consider user's traffic performance.Because in Lv1 scheduling, the user who satisfies the business demand thresholding is divided into the set of Lv2, so the user of Lv2 gathers Ψ and comprises all users residential quarter in, and available resources are the surplus resources after Lv1 dispatches.In the available resource of residue, select arbitrarily a resource units n
*, obtain the user and gather among the Ψ all users at resource n
*On instantaneous throughput B
kWith all professional queue length Q of user
Tot_k
Step 212, Lv2 primary user select.
Be that all users on the current resource sort according to subscriber channel information, principle of ordering is the maximum rate principle.In order to prevent that the shorter user of queue length from assigning to larger resource and causing the wasting of resources, in the Lv2 scheduling process, in conjunction with user's queue length, utilize effective speed to represent user rate on certain resource.Momentary rate can be expressed as user k at resource n
*On transmitted bit number B
k(bit), all professional queue length sums of user k are expressed as Q
Tot_k(bit), the effective speed of user k can be expressed as B so
Eff_k=min (Q
Tot_k, B
k).At resource units n
*Upper selection B
Eff_kMaximum user k
*As the primary user.
Step 213, Lv2 user's pairing.
The process of pairing still adopts effective speed as weighing whether successful criterion of pairing.The algorithm of considering traversal can cause the lifting of computation complexity, adopts greedy algorithm to select the pairing user here.Concrete steps following (as shown in Figure 4):
Step 2131, initialization user gather Γ={ k
*, and with the primary user k that selects in the step 208
*Adding the pairing user to gathers among the Γ.Calculate user k
*At n
*On effective speed B
Eff_ Γ
Step 2132, all the other users of poll.Gather the alternative pairing user l of selection among Ψ-Γ the user, it is added among the set Γ, and obtain set Γ ∪ { each user's momentary rate among the l}
B wherein
mThe expression Γ ∪ { momentary rate of l} under the MU transmission mode.Utilize formula (4) set of computations Γ ∪ { the associating effective speed B of l}
Eff_ Γ ∪ { l}, as the weighing criteria of pairing.
Travel through alternative pairing user and gather all users among Ψ-Γ, and utilize formula (5) to select the user l of effective speed maximum
*As the best pairing user.
Best pairing user l is added in step 2133, judgement
*Effective speed afterwards
Effective speed B with former set Γ
Eff_ ΓIf the latter then stops the pairing process greater than the former, execution in step 2135, and do not add this user in the pairing user set; If the former is greater than the latter, then carry out 2133-1), with l
*Add the pairing user to and gather among the Γ, upgrade set Γ=Γ ∪ { l}.
Step 2134, judge the pairing user gathers whether number of users reaches the maximum number of user of pairing among the Γ, if reach maximum number of user, then execution in step 2135, otherwise execution in step 2133, select again next candidate to match the user and match.
Step 2135, end pairing process are with resource n
*Distribute to the user and gather Γ.
Step 214, more new resources and Subscriber Queue.With resource n
*Distribute to the user and gather Γ, more new resources Λ=Λ-{ n
*, and be that all users that gather among the Γ upgrade queue length, Q
Tot_m=Q
Tot_m-min (B
m, Q
Tot_m), m ∈ Γ.
Step 215, inspection surplus resources if also have surplus resources, then enter step 211 and continue to carry out the resource distribution, if there is not surplus resources, then execution in step 216.
Step 216, end of packet resource allocation process are informed the user by the PDCCH channel with scheduling result.
In sum, above is preferred embodiment of the present invention only, is not for limiting protection scope of the present invention.Within the spirit and principles in the present invention all, any modification of doing, be equal to replacement, improvement etc., all should be included within protection scope of the present invention.