本發明涉及通信領域,尤其涉及一種資源調度方法及裝置。
背景技術:
在長期演進(longtermevolution,lte)無線通信網絡中,物理資源塊(physicalresourceblock,prb)資源是最寶貴的無線資源之一,lte系統中采用了共享信道的機制,為了更加有效地利用和分配共享資源,需要在不同用戶終端(userequipment,ue)之間或者不同ue的數據無線承載(dataradiobearer,drb)之間進行調度,調度的主要目的是為用戶面和控制面的分組數據分配和回收資源。如何充分利用好有限的prb資源(如20m帶寬對應100個prb資源)直接決定了系統的吞吐量大小及用戶感知的好壞。但是,在現有技術下,由于受到系統處理能力即每子幀調度用戶數的限制以及用戶間數據量大小差異的影響,很難充分利用所有的prb資源,造成了prb資源的浪費,影響系統吞吐量和用戶感知。例如:系統帶寬20m,可用prb資源為100個,系統每子幀可調度用戶數為3個,當前在線ue為10個,按照調度算法對ue排隊后,第一個ue的數據量可占用10個prb,第二個ue的數據量可占用30個prb,第三個ue的數據量可占用4個prb。已經達到了調度處理能力,但是當前子幀被使用的prb只有10+30+4=44個,其他100-44=56個prb資源被浪費。
現有的媒體訪問控制(mediaaccesscontrol,mac)調度算法有如下三種:
1)最大載干比算法:在每個子幀選擇被調度用戶時,只選擇載干比最大的用戶,即讓信道條件最好的用戶占用資源進行傳輸數據,如果該用戶信道條件變差,則選擇其他信道條件更好的用戶進行調度,系統始終為當前時刻信道條件最好的用戶服務。
2)輪循算法:考慮到用戶之間的公平性,輪循算法循環的調度每個用戶,每個用戶占用服務資源的概率相同。
3)正比公平算法:是對系統吞吐量和用戶公平性綜合考慮的一種調度算法,它采用時間滑窗的概念作為度量調度算法的參數,假設時刻t用戶k的平均傳輸速率為rk(t),k=1,...,k,其請求基站(evolvednodeb,enodeb)傳輸的實時速率為drck(t),則enodeb在時刻t選擇服務的ue為
由此可見,以上三種調度算法,在每一個子幀進行調度時,僅考慮了ue的排隊方法,都沒有考慮enodeb處理性能,即每一個子幀能夠調度的ue數目的限制,而實際上每個系統都不可避免的會受到處理性能的限制。如果使用上述三種算法時,排在前面的n個ue都為小數據業務,那么就無法保證能夠充分利用prb資源,會導致系統的prb資源浪費,影響系統吞吐量和大數據量業務的用戶感知。
技術實現要素:
本發明實施例提供一種資源調度方法及裝置,以解決現有技術中無法充分利用prb資源,造成prb資源的浪費,影響系統吞吐量和用戶感知的問題。
本發明實施例提供的具體技術方案如下:
一種資源調度的方法,包括:
當在一個子幀上進行ue調度時,根據預設的mac調度算法,計算獲得當前每一個待調度ue的調度優先級;
判斷當前待調度ue的數目是否大于n,當確定大于時,根據上述每一個待調度ue的調度優先級,對前n-1個ue依次進行調度,并在前n-1個ue調度結束后,進一步根據上述一個子幀當前剩余的prb資源、除上述前n-1個ue之外的其它每一個待調度ue所需的prb資源以及調度編碼方式(modulationandcodingscheme,mcs)值,確定當前第n個待調度ue,并為上述當前第n個待調度ue分配prb資源,其中,n表示上述一個子幀能 夠調度的最大ue數目。
本發明實施例中,使用預設的mac調度算法,且在當前待調度ue的數目大于n時,對于一個子幀的最后一個被調度ue,并不是直接調度根據調度優先級確定的第n個待調度ue,而是從除上述前n-1個ue之外的其它每一個待調度ue中選擇出一個最佳的待調度ue作為當前第n個待調度ue,使得系統prb資源利用率或效能最大化,提高了系統吞吐量和用戶感知,并且對于一個子幀最多只改變了一個ue的調度優先級,對ue業務的qos不會造成影響。
較佳的,上述mac調度算法,至少包括以下任意一種:最大載干比算法、輪詢算法和正比公平算法。
較佳的,判斷當前待調度ue的數目是否大于n時,進一步包括:
當確定不大于時,直接根據上述每一個待調度ue的調度優先級,對每一個待調度ue依次進行調度。
較佳的,根據上述一個子幀當前剩余的prb資源、除上述前n-1個ue之外的其它每一個待調度ue所需的prb資源以及mcs值,確定當前第n個待調度ue,具體包括:
根據當前每一個待調度ue的調度優先級,確定出第n個待調度ue;
判斷上述第n個待調度ue所需的prb資源是否不小于上述一個子幀當前剩余的prb資源,當確定小于時,進一步從除上述前n-1個ue之外的其它每一個待調度ue中篩選出所需的prb資源不小于上述一個子幀當前剩余的prb資源的待調度ue;
分別比較篩選出的所需的prb資源不小于上述一個子幀當前剩余的prb資源的待調度ue的mcs值,并將mcs值最大的待調度ue作為當前第n個待調度ue。
較佳的,進一步包括:
若從除上述前n-1個ue之外的其它每一個待調度ue中沒有篩選出所需 的prb資源不小于上述一個子幀當前剩余的prb資源的待調度ue,則將除上述前n-1個ue之外的其它每一個待調度ue所需的prb資源最大的待調度ue作為當前第n個待調度ue。
較佳的,根據上述一個子幀當前剩余的prb資源、除上述前n-1個ue之外的其它每一個待調度ue所需的prb資源以及mcs值,確定當前第n個待調度ue,具體包括:
根據當前每一個待調度ue的調度優先級,確定出第n個待調度ue;
判斷上述第n個待調度ue所需的prb資源是否不小于上述一個子幀當前剩余的prb資源,當確定小于時,根據除上述前n-1個ue之外的其它每一個待調度ue的mcs值和上述一個子幀當前剩余的prb資源,分別計算獲得上述一個子幀針對上述每一個待調度ue的當前剩余的可傳輸數據量;
分別比較上述一個子幀針對上述每一個待調度ue的當前剩余的可傳輸數據量和相應的待調度ue需傳輸的數據量,獲得兩者的最小值;
分別將獲得的每一個最小值兩兩進行比較,并將最小值中的最大的值對應的待調度ue作為當前第n個待調度ue。
較佳的,判斷第n個待調度ue所需的prb資源是否不小于上述一個子幀當前剩余的prb資源時,進一步包括:
當確定不小于時,直接將上述第n個待調度ue作為當前第n個待調度ue。
一種資源調度的裝置,包括:
計算單元,用于當在一個子幀上進行ue調度時,根據預設的mac調度算法,計算獲得當前每一個待調度ue的調度優先級;
處理單元,用于判斷當前待調度ue的數目是否大于n,當確定大于時,根據上述每一個待調度ue的調度優先級,對前n-1個ue依次進行調度,并在前n-1個ue調度結束后,進一步根據上述一個子幀當前剩余的prb資源、除上述前n-1個ue之外的其它每一個待調度ue所需的prb資源以及mcs 值,確定當前第n個待調度ue,并為上述當前第n個待調度ue分配prb資源,其中,n表示上述一個子幀能夠調度的最大ue數目。
本發明實施例中,使用預設的mac調度算法,且在當前待調度ue的數目大于n時,對于一個子幀的最后一個被調度ue,并不是直接調度根據調度優先級確定的第n個待調度ue,而是從除上述前n-1個ue之外的其它每一個待調度ue中選擇出一個最佳的待調度ue作為當前第n個待調度ue,使得系統prb資源利用率或效能最大化,提高了系統吞吐量和用戶感知,并且對于一個子幀最多只改變了一個ue的調度優先級,對ue業務的qos不會造成影響。
較佳的,上述mac調度算法,至少包括以下任意一種:最大載干比算法、輪詢算法和正比公平算法。
較佳的,判斷當前待調度ue的數目是否大于n時,處理單元進一步用于:
當確定不大于時,直接根據上述每一個待調度ue的調度優先級,對每一個待調度ue依次進行調度。
較佳的,根據上述一個子幀當前剩余的prb資源、除上述前n-1個ue之外的其它每一個待調度ue所需的prb資源以及mcs值,確定當前第n個待調度ue時,處理單元具體用于:
根據當前每一個待調度ue的調度優先級,確定出第n個待調度ue;
判斷上述第n個待調度ue所需的prb資源是否不小于上述一個子幀當前剩余的prb資源,當確定小于時,進一步從除上述前n-1個ue之外的其它每一個待調度ue中篩選出所需的prb資源不小于上述一個子幀當前剩余的prb資源的待調度ue;
分別比較篩選出的所需的prb資源不小于上述一個子幀當前剩余的prb資源的待調度ue的mcs值,并將mcs值最大的待調度ue作為當前第n個待調度ue。
較佳的,處理單元進一步用于:
若從除上述前n-1個ue之外的其它每一個待調度ue中沒有篩選出所需的prb資源不小于上述一個子幀當前剩余的prb資源的待調度ue,則將除上述前n-1個ue之外的其它每一個待調度ue所需的prb資源最大的待調度ue作為當前第n個待調度ue。
較佳的,根據上述一個子幀當前剩余的prb資源、除上述前n-1個ue之外的其它每一個待調度ue所需的prb資源以及mcs值,確定當前第n個待調度ue時,處理單元具體用于:
根據當前每一個待調度ue的調度優先級,確定出第n個待調度ue;
判斷上述第n個待調度ue所需的prb資源是否不小于上述一個子幀當前剩余的prb資源,當確定小于時,根據除上述前n-1個ue之外的其它每一個待調度ue的mcs值和上述一個子幀當前剩余的prb資源,分別計算獲得上述一個子幀針對上述每一個待調度ue的當前剩余的可傳輸數據量;
分別比較上述一個子幀針對上述每一個待調度ue的當前剩余的可傳輸數據量和相應的待調度ue需傳輸的數據量,獲得兩者的最小值;
分別將獲得的每一個最小值兩兩進行比較,并將最小值中的最大的值對應的待調度ue作為當前第n個待調度ue。
較佳的,判斷第n個待調度ue所需的prb資源是否不小于上述一個子幀當前剩余的prb資源時,處理單元進一步用于:
當確定不小于時,直接將上述第n個待調度ue作為當前第n個待調度ue。
附圖說明
圖1為本發明實施例中,資源調度方法的流程圖;
圖2為本發明實施例中,資源調度裝置的結構示意圖。
具體實施方式
下面將結合本發明實施例中的附圖,對本發明實施例中的技術方案進行清 楚、完整地描述,顯然,所描述的實施例僅僅是本發明一部分實施例,并不是全部的實施例。基于本發明中的實施例,本領域普通技術人員在沒有做出創造性勞動前提下所獲得的所有其他實施例,都屬于本發明保護的范圍。
為了充分利用prb資源,提高系統吞吐量和用戶感知,本發明實施例中,先根據預設的mac調度算法,獲得當前每一個待調度ue的調度優先級,確定當前待調度ue的數目大于n時,根據調度優先級先依次調度前n-1個ue,然后從上述前n-1個ue之外的其它每一個待調度ue中選擇出最佳的ue作為當前第n個待調度ue,使得prb資源利用率最大或prb資源效能最大,其中,n表示一個子幀能夠調度的最大ue數目。
下面通過具體實施例對本發明方案進行詳細描述,當然,本發明并不限于以下實施例。
參閱圖1所示,本發明實施例中,資源調度方法的具體流程如下:
步驟100:當在一個子幀上進行ue調度時,根據預設的mac調度算法,計算獲得當前每一個待調度ue的調度優先級。
其中,上述mac調度算法,至少包括以下任意一種:最大載干比算法、輪詢算法和正比公平算法。
在執行步驟100時,使用預設的mac調度算法,這里的mac調度算法并不進行限制,使用現有的任意一種mac調度算法都可以,例如上述的最大載干比算法、輪詢算法,計算獲得當前每一個待調度ue的調度優先級,也就對當前每一個待調度ue進行了排隊,調度優先級高的排在前面,調度優先級低的排在后面。
本發明實施例中,由于預設的mac調度算法為現有的算法,因此計算獲得調度優先級的具體過程就不再詳述了。
步驟110:判斷當前待調度ue的數目是否大于n,當確定大于時,根據上述每一個待調度ue的調度優先級,對前n-1個ue依次進行調度,并在前n-1個ue調度結束后,進一步根據上述一個子幀當前剩余的prb資源、除上 述前n-1個ue之外的其它每一個待調度ue所需的prb資源以及mcs值,確定當前第n個待調度ue,并為上述當前第n個待調度ue分配prb資源,其中,n表示上述一個子幀能夠調度的最大ue數目。
這里的n的取值和enodeb系統處理性能有關。
執行步驟110時,具體包括:
首先,判斷當前待調度ue的數目是否大于n,當確定大于時,根據上述每一個待調度ue的調度優先級,對前n-1個ue依次進行調度。
也就是說,在執行完步驟100后,每一個待調度ue都會有一個調度優先級,且每一個調度ue根據調度優先級進行了排隊,這樣,在進行調度時,按照調度優先級從高到低,即排隊的先后順序,依次調度前n-1個ue,分別為其分配prb資源。例如,當前待調度ue的數目為m(假設m>n),進行排隊后的順序為1,2,…,n-1,n,n+1,…,m,則對第1,2,…,n-1個待調度ue按照順序依次進行調度。
進一步地,當確定當前待調度ue的數目不大于n時,直接根據上述每一個待調度ue的調度優先級,對每一個待調度ue依次進行調度,不需要進行調整。這是因為,若當前待調度ue的數目不大于上述一個子幀能夠調度的最大ue數目時,則所有待調度ue都能被調度,即都可以為待調度ue需傳輸的數據分配prb資源,也就不存在prb資源浪費的問題。
然后,根據上述一個子幀當前剩余的prb資源、除上述前n-1個ue之外的其它每一個待調度ue所需的prb資源以及mcs值,確定當前第n個待調度ue,具體包括:
a)根據當前每一個待調度ue的調度優先級,確定出第n個待調度ue。也就是說,先找到按照調度優先級排隊的第n個待調度ue。
b)判斷上述第n個待調度ue所需的prb資源是否不小于上述一個子幀當前剩余的prb資源,若是,則直接將上述第n個待調度ue作為當前第n個待調度ue,否則進一步確定當前第n個待調度ue。
其中,當確定不小于時,不需要對根據調度優先級確定出的第n個待調度ue進行調整,直接調度該第n個待調度ue即可,這是因為,當使用上述一個子幀當前剩余的prb資源調度上述第n個待調度ue時,不會造成prb資源的浪費。
最后,調度上述確定的當前第n個待調度ue,為其分配prb資源。
其中,上述在確定當前第n個待調度ue時,具體可以分為以下兩種方式:
第一種方式:
首先,從除上述前n-1個ue之外的其它每一個待調度ue中篩選出所需的prb資源不小于上述一個子幀當前剩余的prb資源的待調度ue。
進一步地,若從除上述前n-1個ue之外的其它每一個待調度ue中沒有篩選出所需的prb資源不小于上述一個子幀當前剩余的prb資源的待調度ue,則將除上述前n-1個ue之外的其它每一個待調度ue所需的prb資源最大的待調度ue作為當前第n個待調度ue。
然后,分別比較篩選出的所需的prb資源不小于上述一個子幀當前剩余的prb資源的待調度ue的mcs值,并將mcs值最大的待調度ue作為當前第n個待調度ue。
下面舉一個具體實施例對第一種方式進行詳細說明:
1)如果
2)如果集合s為空,即沒有篩選出符合
3)如果集合s不為空,則在集合s中選擇mcs值最大的待調度ue作為當前第n個待調度ue,ueselected為
這樣,最終第n個被調度ue為ueselected,上述一個子幀被調度的ue仍為n個,但是采用第一種方式使得prb資源得到了最大化利用,提升了系統的吞吐量。
第二種方式:
首先,根據除上述前n-1個ue之外的其它每一個待調度ue的mcs值和上述一個子幀當前剩余的prb資源,分別計算獲得上述一個子幀針對上述每一個待調度ue的當前剩余的可傳輸數據量。
然后,分別比較上述一個子幀針對上述每一個待調度ue的當前剩余的可傳輸數據量和相應的待調度ue需傳輸的數據量,獲得兩者的最小值。
最后,分別將獲得的每一個最小值兩兩進行比較,并將最小值中的最大的值對應的待調度ue作為當前第n個待調度ue。
下面舉一個具體實施例對第二種方式進行詳細說明:
1)計算
其中,
2)將集合k中的每一個ki兩兩進行比較,并將其中最大的值對應的待調度ue作為當前第n個待調度ue,即ueselected為
同樣地,最終第n個被調度ue為ueselected,上述一個子幀被調度的ue仍為n個,但是采用第二種方式使得prb資源效能得到了最大化,提升了系統的吞吐量。
這樣,本發明實施例中,執行步驟100和步驟200來進行資源調度,不僅僅只使用mac調度算法對待調度ue進行調度,同時考慮了enodeb的處理性能,即一個子幀能夠調度的最大ue數目的限制,選擇最佳的待調度ue作為一個子幀的最后一個被調度ue,使得prb資源利用率或效能最大化,提高了系統吞吐量和用戶感知,并且對于一個子幀最多只改變了一個ue的調度優先級,對ue業務的服務質量(qualityofservice,qos)不會造成影響。
基于上述實施例,參閱圖2所示,本發明實施例中,資源調度的裝置,具體包括:
計算單元20,用于當在一個子幀上進行ue調度時,根據預設的mac調度算法,計算獲得當前每一個待調度ue的調度優先級;
處理單元21,用于判斷當前待調度ue的數目是否大于n,當確定大于時,根據上述每一個待調度ue的調度優先級,對前n-1個ue依次進行調度,并在前n-1個ue調度結束后,進一步根據上述一個子幀當前剩余的prb資源、除上述前n-1個ue之外的其它每一個待調度ue所需的prb資源以及mcs值,確定當前第n個待調度ue,并為上述當前第n個待調度ue分配prb資源,其中,n表示上述一個子幀能夠調度的最大ue數目。
較佳的,上述mac調度算法,至少包括以下任意一種:最大載干比算法、 輪詢算法和正比公平算法。
較佳的,判斷當前待調度ue的數目是否大于n時,處理單元21進一步用于:
當確定不大于時,直接根據上述每一個待調度ue的調度優先級,對每一個待調度ue依次進行調度。
較佳的,根據上述一個子幀當前剩余的prb資源、除上述前n-1個ue之外的其它每一個待調度ue所需的prb資源以及mcs值,確定當前第n個待調度ue時,處理單元21具體用于:
根據當前每一個待調度ue的調度優先級,確定出第n個待調度ue;
判斷上述第n個待調度ue所需的prb資源是否不小于上述一個子幀當前剩余的prb資源,當確定小于時,進一步從除上述前n-1個ue之外的其它每一個待調度ue中篩選出所需的prb資源不小于上述一個子幀當前剩余的prb資源的待調度ue;
分別比較篩選出的所需的prb資源不小于上述一個子幀當前剩余的prb資源的待調度ue的mcs值,并將mcs值最大的待調度ue作為當前第n個待調度ue。
較佳的,處理單元21進一步用于:
若從除上述前n-1個ue之外的其它每一個待調度ue中沒有篩選出所需的prb資源不小于上述一個子幀當前剩余的prb資源的待調度ue,則將除上述前n-1個ue之外的其它每一個待調度ue所需的prb資源最大的待調度ue作為當前第n個待調度ue。
較佳的,根據上述一個子幀當前剩余的prb資源、除上述前n-1個ue之外的其它每一個待調度ue所需的prb資源以及mcs值,確定當前第n個待調度ue時,處理單元21具體用于:
根據當前每一個待調度ue的調度優先級,確定出第n個待調度ue;
判斷上述第n個待調度ue所需的prb資源是否不小于上述一個子幀當 前剩余的prb資源,當確定小于時,根據除上述前n-1個ue之外的其它每一個待調度ue的mcs值和上述一個子幀當前剩余的prb資源,分別計算獲得上述一個子幀針對上述每一個待調度ue的當前剩余的可傳輸數據量;
分別比較上述一個子幀針對上述每一個待調度ue的當前剩余的可傳輸數據量和相應的待調度ue需傳輸的數據量,獲得兩者的最小值;
分別將獲得的每一個最小值兩兩進行比較,并將最小值中的最大的值對應的待調度ue作為當前第n個待調度ue。
較佳的,判斷第n個待調度ue所需的prb資源是否不小于上述一個子幀當前剩余的prb資源時,處理單元21進一步用于:
當確定不小于時,直接將上述第n個待調度ue作為當前第n個待調度ue。
綜上所述,本發明實施例中,當在一個子幀上進行ue調度時,根據預設的mac調度算法,計算獲得當前每一個待調度ue的調度優先級;判斷當前待調度ue的數目是否大于n,當確定大于時,根據上述每一個待調度ue的調度優先級,對前n-1個ue依次進行調度,并在前n-1個ue調度結束后,進一步根據上述一個子幀當前剩余的prb資源、除上述前n-1個ue之外的其它每一個待調度ue所需的prb資源以及mcs值,確定當前第n個待調度ue,并為上述當前第n個待調度ue分配prb資源,其中,n表示上述一個子幀能夠調度的最大ue數目,這樣,使用預設的mac調度算法,且在當前待調度ue的數目大于n時,對于一個子幀的最后一個被調度ue,并不是直接調度根據調度優先級確定的第n個待調度ue,而是從除上述前n-1個ue之外的其它每一個待調度ue中選擇出一個最佳的待調度ue作為當前第n個待調度ue,使得系統prb資源利用率或效能最大化,提高了系統吞吐量和用戶感知,并且對于一個子幀最多只改變了一個ue的調度優先級,對ue業務的qos不會造成影響。
本領域內的技術人員應明白,本發明的實施例可提供為方法、系統、或計 算機程序產品。因此,本發明可采用完全硬件實施例、完全軟件實施例、或結合軟件和硬件方面的實施例的形式。而且,本發明可采用在一個或多個其中包含有計算機可用程序代碼的計算機可用存儲介質(包括但不限于磁盤存儲器、cd-rom、光學存儲器等)上實施的計算機程序產品的形式。
本發明是參照根據本發明實施例的方法、設備(系統)、和計算機程序產品的流程圖和/或方框圖來描述的。應理解可由計算機程序指令實現流程圖和/或方框圖中的每一流程和/或方框、以及流程圖和/或方框圖中的流程和/或方框的結合。可提供這些計算機程序指令到通用計算機、專用計算機、嵌入式處理機或其他可編程數據處理設備的處理器以產生一個機器,使得通過計算機或其他可編程數據處理設備的處理器執行的指令產生用于實現在流程圖一個流程或多個流程和/或方框圖一個方框或多個方框中指定的功能的裝置。
這些計算機程序指令也可存儲在能引導計算機或其他可編程數據處理設備以特定方式工作的計算機可讀存儲器中,使得存儲在該計算機可讀存儲器中的指令產生包括指令裝置的制造品,該指令裝置實現在流程圖一個流程或多個流程和/或方框圖一個方框或多個方框中指定的功能。
這些計算機程序指令也可裝載到計算機或其他可編程數據處理設備上,使得在計算機或其他可編程設備上執行一系列操作步驟以產生計算機實現的處理,從而在計算機或其他可編程設備上執行的指令提供用于實現在流程圖一個流程或多個流程和/或方框圖一個方框或多個方框中指定的功能的步驟。
盡管已描述了本發明的優選實施例,但本領域內的技術人員一旦得知了基本創造性概念,則可對這些實施例作出另外的變更和修改。所以,所附權利要求意欲解釋為包括優選實施例以及落入本發明范圍的所有變更和修改。
顯然,本領域的技術人員可以對本發明實施例進行各種改動和變型而不脫離本發明實施例的精神和范圍。這樣,倘若本發明實施例的這些修改和變型屬于本發明權利要求及其等同技術的范圍之內,則本發明也意圖包含這些改動和變型在內。