Detailed description of the invention
For making the object, technical solutions and advantages of the present invention clearly, 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, when dispatching preferentially for time delay and transfer rate two kinds of business demands, the business being badly in need of scheduling being assigned to the first priority scheduling set, carries out the scheduling of first priority, and the demand of this kind of user can be made to obtain maximum meeting; Provide a kind of multi-priority services aligning method in addition, prioritization can be carried out in conjunction with time delay and speed characteristic and corresponding QoS demand to different user; For the user being badly in need of scheduling, to meet qos requirement for target, after completing the Resourse Distribute being badly in need of dispatched users, the user meeting qos requirement is dispatched to maximize transfer rate for target, can under the condition of guarantee business demand optimization system capacity.Like this, the present invention can improve transfer rate in conjunction with MU-MIMO transmission scheme in the process of multi-business scheduling, meets business demand and capacity better.
Fig. 1 is main flow schematic diagram of the present invention, and as shown in Figure 1, the present invention mainly comprises the following steps:
Step 101, calculating respectively treat time delay and the business Mean Speed of the miscellaneous service of dispatched users, described time delay is the stand-by period after the packet of service queue head enters this service queue, and described business Mean Speed is the average transmission rate of a kind of business in a time window; According to described time delay and described business Mean Speed, determining the priority factors of described often kind of business, for respectively treating dispatched users, selecting the maximum described priority factors in its business as the priority factors of this user.
Here, determine that the method for the priority factors of described often kind of business can be:
For GBR traffic, according to
Determine the priority factors ω of this GBR traffic
k, i,
For non-GBR traffic, according to
determine the priority factors ω of this non-GBR traffic
k, i;
Wherein, α is weighted factor, α ∈ [0,1], d
k, ifor the time delay of a kth user i-th kind of business, D
ibe the time delay thresholding of i-th kind of business, GBR
ibe the minimum transmission rate request of i-th kind of GBR traffic,
for the Mean Speed of kth user i-th business, u () is jump function,
Step 102-103, according to described time delay and described business Mean Speed, and the priority scheduling condition preset, needed dispatched users is divided priority scheduling user group and non-preferential dispatched users group, if have user in described priority scheduling user group, then perform step 104, otherwise perform step 107.
Here, described priority scheduling condition is: user has at least a kind of business to meet: the described time delay of this business exceedes the time delay thresholding of this kind of business or the described Mean Speed rate threshold lower than this kind of business.The user namely meeting this condition will be divided in priority scheduling user organizes.
Step 104-106, the unit resource of an optional free time, according to the priority factors of described user, the user of this unit resource of choice for use from described priority scheduling user group, calculating configures to after selected user by this unit resource, the described time delay of the miscellaneous service of each user and described business Mean Speed in current described priority scheduling user group, and according to this result of calculation, the user not meeting described priority scheduling condition is transferred in described non-preferential dispatched users group from described priority scheduling user group, if have user and current available free resource in current described priority scheduling user group, then repeated execution of steps 104, otherwise, judge current whether available free resource and have user in described non-preferential dispatched users group, if, then perform step 107, otherwise perform step 109.
Here, according to the priority factors of described user, from described priority scheduling user group, user's detailed process of this unit resource of choice for use can be:
From described priority scheduling user group, the user selecting described priority factors maximum is as this unit resource n of current use
*primary user, according to this primary user at this unit resource n
*on speed and the described priority factors of this primary user, determine the pairing preferred value of this primary user;
According to user at this unit resource n
*on speed, within the scope of the maximum configured number of users of the unit resource preset, maximum combined priority factors can be obtained when selecting and match with this primary user from described priority scheduling user group and this maximum combined priority factors is greater than the user of described pairing preferred value, and using selected go out user as the pairing user of described primary user;
If there is the pairing user of described primary user, then determine that described primary user and described pairing user use this unit resource n jointly
*, otherwise, determine that described primary user uses this unit resource n
*.
It should be noted that, in actual applications, multiple method can be adopted to determine the pairing preferred value of primary user, and associating priority factors.Provide two kinds of preferably methods below, but be not limited thereto:
Method one:
According to
Determine the pairing preferred value of described primary user
Wherein,
for primary user k
*single user mode under momentary rate,
for primary user k
*mean Speed;
Accordingly, the defining method of described associating priority factors can be:
Calculating utilizes unit resource n
*when carrying out multi-user transmission, carry out the transfer rate R of each user l transmitted
l_MU;
For each user l carrying out described multi-user transmission, according to
determine the pairing preferred value μ of this user l
l_MU, wherein, ω
l_MAXfor the priority factors of user l;
To the pairing preferred value summation carrying out the user of multi-user transmission described in all, summed result is defined as utilizing unit resource n
*carry out associating priority factors during described multi-user transmission.
Method two:
According to
determine described primary user k
*pairing preferred value
wherein,
for primary user k
*single user mode under momentary rate.
Accordingly, the defining method of described associating priority factors can be:
Calculating utilizes unit resource n
*when carrying out multi-user transmission, carry out the transfer rate of each user l transmitted;
For each user l carrying out described multi-user transmission, according to μ
l_MU=R
l_MU, determine the pairing preferred value μ of this user l
l_MU;
To the pairing preferred value summation carrying out the user of multi-user transmission described in all, summed result is defined as utilizing unit resource n
*carry out associating priority factors during described multi-user transmission.
Step 107-108, the unit resource of an optional free time, for each user in described non-preferential dispatched users group, determine the queue length sum of all business of the instantaneous throughput of this user in this unit resource and this user, described instantaneous throughput is the transmitted bit number in Subscriber Unit resource, according to the queue length sum of described instantaneous throughput and described all business, the user of this unit resource of choice for use from described non-preferential dispatched users group, calculate and this unit resource is configured to the queue length sum of all business of each user selected after selected user, judge current whether available free resource and have user in described non-preferential dispatched users group, if, then repeated execution of steps 107, otherwise, perform step 109.
Here, according to the queue length sum of described instantaneous throughput and described all business in this step, from described non-preferential dispatched users group, the concrete grammar of the user of this unit resource of choice for use can be:
According to described instantaneous throughput B
lwith the queue length sum Q of described all business
tot_l, according to B
eff_l=min (Q
tot_l.B
l) to calculate in described non-preferential dispatched users 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 n of current use
*primary user;
Within the scope of the maximum configured number of users of the unit resource preset, maximum combined effective speed can be obtained when selecting and match with described primary user from described priority scheduling user group and this maximum combined effective speed is greater than described primary user at this unit resource n
*on the user of effective speed, as the pairing user of described primary user;
If there is the pairing user of described primary user, then determine that 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, can be according in said method
Determine described associating effective speed B
mU_eff, wherein, user's set when Γ is multi-user transmission, B
mfor the momentary rate of user m under multi-user transmission pattern, Q
tot_mfor the queue length sum of all business of user m.
Preferably, can according to Q
tot_m=Q
tot_m-min (B
m, Q
tot_m), calculate and this unit resource is configured to the queue length sum Q of all business of each user selected after selected user
tot_m; Wherein, m ∈ Γ, Γ are selected user's set, B
mfor user m carries out the momentary rate transmitted under multi-user transmission pattern in this unit resource.
Step 109, the user profile for constituent parts resource selection is informed to corresponding user.
Specific implementation below by embodiments of the invention a pair such scheme further illustrates.
Step 201, initialization.
All resources, user's set and priority parameters are initialized, all available bandwidth resources of system are initialized as resource collection, Lv1 and Lv2 user set is initialized as empty set.
Step 202, service priority calculate.
Calculate time delay and business Mean Speed that each user often plants business.The packet that service delay is expressed as certain service queue head enters the time of queue; Business Mean Speed is expressed as the average transmission rate of certain business in a time window, and for ensureing GBR demand, length and the Mean Speed computational methods of concrete time window belong to known technology, no longer elaborate here.Time delay and average transmission rate is utilized to calculate the service priority factor ω of often kind of business
k, i, wherein k represents a kth user, and i represents i-th kind of business; The priority of different service types can calculate with formula (1), ω
k, ilarger then priority is higher.For GBR traffic, priority factors comprises time delay part and service rate part; For non-GBR traffic, priority factors comprises time delay part.
Wherein:
α is weighted factor, α ∈ [0,1], and the value of adjustment α can regulate the weight to time delay and GBR demand in scheduling process, and α is larger then more responsive to time delay, otherwise then more responsive to service rate.
D
k, irepresent the time delay of a kth user i-th kind of business
D
irepresent the time delay thresholding of i-th kind of 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, thus 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-th kind of GBR traffic, different business is different to the requirement of GBR, corresponding different thresholdings;
represent the Mean Speed of kth user i-th business.U () is jump function,
When business Mean Speed is more than GBR thresholding speed, the GBR part in priority factors is 0, and after representing that meeting GBR requires, service rate no longer affects priority.When Mean Speed is lower than GBR thresholding, the span of priority factors GBR part is (1-α) [1, e].
Formula (1) can be used for doing the priority ratio of different service types comparatively, the target realized comprises: for GBR traffic, the queue factor affecting priority comprises time delay and business Mean Speed, and for non-GBR traffic, queue factor only has time delay; Service priority improves with the rising of time delay and the decline of Mean Speed, and improves in accelerating; When business meets GBR demand, the Mean Speed of GBR traffic no longer affects the priority of this business, compares priority between GBR traffic and non-GBR traffic by time delay; In GBR traffic, time delay and speed are embodied by a weight factor the influence degree of priority, so that base station is according to the weight of both result adjustment.
After priority factors calculates and terminates between business, formula (2) can be passed through and obtain User Priority factor ω
k max, equal the priority factors of the highest business of this user all business medium priority.
Step 203, user grouping.
Often plant queue heads time delay and the Mean Speed of business according to each user obtained in previous step, judged whether that service delay exceedes time delay thresholding α
i, or Mean Speed is lower than rate threshold β
iuser, the user these being exceeded thresholding is classified as the user being badly in need of scheduling, adds in Lv1 user's set omega.This kind of user has the highest priority, needs priority scheduling before other users, and Lv1 user scheduling target guarantees time delay and the GBR demand of user, and scheduling strategy is for user resource allocation.All the other users add Lv2 user to and gather in Ψ, and Lv2 user scheduling target is maximum system throughput, and scheduling strategy is for resource selection user.
Step 204, judge whether have user in Lv1 user's group, if there is this kind of qualified user being badly in need of scheduling, then perform step 205, enter Lv1 scheduling, if Lv1 user's set omega is empty set, perform step 211, enter Lv2 scheduling of resource.
Step 205, Lv1 primary user select.
In scheduling process, first for the user in Lv1 set carries out prioritization, sequencer procedure only considers the queue characteristics of user, does not consider the characteristic of channel, the User Priority factor calculated according to formula (2) sorts, and the larger then priority of priority factors is higher.Selected user k
*as primary user, the resource n selecting speed maximum in available resource collection Λ
*distribute to user k
*.
Step 206, Lv1 user's pairing.
In Lv1 user's pairing process, the user in order to ensure Lv1 set 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 handling capacity and business demand, the user selecting associating priority factors maximum is as best pairing user, and the pairing user after then this user is added in contrast gathers with the priority factors of the pairing user set not adding this user thus judges whether this user to be added in pairing user set.Concrete steps following (as shown in Figure 3):
Step 2061, initialising subscriber set Γ={ k
*, and the primary user k will selected in step 205
*add pairing user to gather in Γ.
Step 2062, according to primary user k
*at resource n
*on rate calculations User Priority
(i.e. the pairing preferred value of aforesaid primary user), this priority is also the initialization priority that user gathers Γ.
All the other users of step 2063, poll, select alternative pairing user l from remaining user's set omega-Γ, calculate and to be added to by l after set Γ at resource n
*on associating speed R
Γ ∪ { l}, and obtain associating priority factors F (R according to certain associating priority formulae discovery
Γ ∪ { l}).The user l that associating priority factors is maximum is selected after end of polling(EOP)
*as best pairing user,
Step 2064, judgement add l
*the rear Γ ∪ { priority factors F (R of the associating priority factors of l} and before Γ
Γ), if the latter is greater than the former, stops pairing process, and perform step 2066, and do not add this user in pairing user set; If the former is greater than latter perform step 2064-1), this best pairing user is added in user's set, upgrade set Γ=Γ ∪ { l}.
Step 2065, judge that pairing user gathers number of users in Γ and whether reaches the maximum number of user of pairing, if reach maximum number of user, then perform step 2066, otherwise perform step 2063, then select next pairing user to match.
Step 2066, end pairing process, by resource n
*distribute to user and gather Γ.
Step 207, more new resources and Lv1 user.
Be that a pairing user gathers distribution resource units at every turn, just upgrade the queue heads time delay of all users in this user set, Mean Speed calculate the User Priority factor ω of this user
k max.By resource n
*delete from resource collection Λ.
User profile after step 208, utilization upgrade judges whether the user in current Lv1 user set meets time delay and the GBR requirement of Lv1 set, if the time delay of all business i is lower than thresholding α after in active user's set, certain user upgrades queuing message
iand Mean Speed is higher than thresholding β
i, then step 209 is performed.
Step 209, the user not meeting Lv1 thresholding in step 208 removed from Lv1 set omega, add in Lv2 set, be no longer this user resource allocation in follow-up Lv1 dispatches.
Step 210, to judge in Lv1 set omega whether also have user, if there is no user in Lv1 set, then perform step 210-1, if still have user, then perform step 210-2.
Step 210-1, to judge in resource collection Λ whether also have resource, if there is resource, then performs step 211, enter Lv2 scheduling of resource, if there is no resource, then perform step 216.
Step 210-2, to judge in resource collection Λ whether also have resource, if system also has surplus resources, then perform step 5, if there is no surplus resources, then perform step 16.
Step 211, Lv2 initialize.
It is maximum system throughput that Lv2 dispatches the target that will meet, and only considers the characteristic of channel of user, and do not consider the traffic performance of user in resource allocation process.Due in Lv1 scheduling, the user meeting business demand thresholding is divided into the set of Lv2, and therefore the user of Lv2 gathers Ψ and comprises all users in community, and available resources are the surplus resources after Lv1 scheduling.A resource units n is selected arbitrarily in the resource that residue is available
*, obtain user and to gather in Ψ all users at resource n
*on instantaneous throughput B
kwith the queue length Q of all business of user
tot_k.
Step 212, Lv2 primary user select.
Be that all users on Current resource sort according to subscriber channel information, principle of ordering is maximum rate principle.Cause the wasting of resources in order to the user preventing queue length shorter assigns to larger resource, in conjunction with the queue length of user in Lv2 scheduling process, utilize effective speed to represent user rate in certain resource.Momentary rate can be expressed as user k at resource n
*on transmitted bit number B
k(bit), the queue length sum of all business of user k is expressed as Q
tot_k(bit), so the effective speed of user k can be expressed as B
eff_k=min (Q
tot_k, B
k).At resource units n
*upper selection B
eff_kmaximum user k
*as primary user.
Step 213, Lv2 user's pairing.
Whether successfully the process of pairing still adopts effective speed as measurement pairing criterion.Consider that the algorithm of traversal can cause the lifting of computation complexity, adopt greedy algorithm to select pairing user here.Concrete steps following (as shown in Figure 4):
Step 2131, initialising subscriber set Γ={ k
*, and the primary user k will selected in step 208
*add pairing user to gather in Γ.Calculate user k
*at n
*on effective speed B
eff_ Γ.
All the other users of step 2132, poll.Gather in Ψ-Γ user and select alternative pairing user l, added in set Γ, and obtain the set Γ ∪ { momentary rate of each user in l}
wherein B
mrepresent the Γ ∪ { momentary rate of l} under 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 in Ψ-Γ, and utilize the user l that formula (5) selects effective speed maximum
*as best pairing user.
Step 2133, judgement add best pairing user l
*effective speed afterwards
with the effective speed B of former set Γ
eff_ Γif the latter is greater than the former, then stop pairing process, perform step 2135, and do not add this user in pairing user set; If the former is greater than the latter, then perform 2133-1), by l
*adding pairing user to gathers in Γ, upgrades set Γ=Γ ∪ { l}.
Step 2134, judge that pairing user gathers number of users in Γ and whether reaches the maximum number of user of pairing, if reach maximum number of user, then perform step 2135, otherwise perform step 2133, then select next candidate to match user to match.
Step 2135, end pairing process, by resource n
*distribute to user and gather Γ.
Step 214, more new resources and Subscriber Queue.By resource n
*distribute to user and gather Γ, more new resources Λ=Λ-{ n
*, and be that all users gathered in Γ 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 perform Resourse Distribute, if do not have surplus resources, then perform step 216.
Step 216, end of packet resource allocation process, inform user by PDCCH channel by scheduling result.
In sum, these are only preferred embodiment of the present invention, be not intended to limit protection scope of the present invention.Within the spirit and principles in the present invention all, any amendment done, equivalent replacement, improvement etc., all should be included within protection scope of the present invention.