本发明实施例涉及通信技术领域,尤其涉及一种资源分配方法及装置。
背景技术:
云无线接入网络(cloudradioaccessnetwork,简称c-ran)是5g通信系统中的一种体系架构,通过结合云计算,使得c-ran具有强大的集中处理能力。
为了保证c-ran中各终端设备可以正常通信,需要为各终端设备分配合理的资源。在现有技术中,通常使用组稀疏度、联合射频拉远头(remoteradiohead,简称rrh)选择和功率最小化波束形成问题,为各终端设备分配资源,但是,通过上述方法仅与传输功率相关,因此仅能为终端设备确定合理的传输功率,而无法为终端设备分配合理的中央处理器(centralprocessingunit,简称cpu)资源和带宽资源,导致cpu资源和带宽资源分配的合理性较差。
技术实现要素:
本发明实施例提供一种资源分配方法及装置,提高了cpu资源和带宽资源分配的合理性。
第一方面,本发明实施例提供一种资源分配方法,包括:
根据总带宽容量和每一个终端设备发送一个数据包的带宽容量需求量,确定每一个终端设备的带宽需求比;
根据总中央处理器cpu资源量和处理每一个终端设备的一个数据包的cpu资源需求量,确定每一个终端设备的cpu资源需求比;
根据每一个终端设备的带宽需求比和每一个终端设备的cpu资源需求比,确定每一个终端设备的瓶颈资源需求比;
根据每一个终端设备的带宽容量需求量、cpu资源需求量、瓶颈资源需求比、总带宽容量、及总cpu资源量,确定为每一个终端设备分配的cpu资源和带宽资源。
在一种可能的实施方式中,根据总带宽容量和每一个终端设备发送一个数据包的带宽容量需求量,确定每一个终端设备的带宽需求比之前,还包括:
根据每一个终端设备的质量要求、每一个终端设备的计算能力、及基站的传输功率阈值,确定所述基站与每一个终端设备通信时的传输功率;
根据所述基站与每一个终端设备通信时的传输功率,计算每一个终端设备的干扰加噪声比sinr;
根据每一个终端设备的sinr和系统总带宽,确定总带宽容量。
在另一种可能的实施方式中,所述根据每一个终端设备sinr和系统总带宽,确定总带宽容量,包括:
根据如下公式一,确定所述总带宽容量b:
其中,m为通信系统中终端设备的总数,所述b1为所述系统总带宽,所述
在另一种可能的实施方式中,针对任意一个第一终端设备,根据所述第一终端设备的带宽需求比和所述第一终端设备的cpu资源需求比,确定所述第一终端设备的瓶颈资源需求比,包括:
将所述第一终端设备的带宽需求比和cpu资源需求比中数值最大的需求比确定为所述第一终端设备的瓶颈资源需求比。
在另一种可能的实施方式中,根据每一个终端设备的带宽容量需求量、cpu资源需求量、瓶颈资源需求比、总带宽容量、及总cpu资源量,确定为每一个终端设备分配的cpu资源和带宽资源,包括:
根据每一个终端设备的带宽容量需求量、cpu资源需求量、总带宽容量、及总cpu资源量,确定每一个终端设备对应的数据包个数;
根据每一个终端设备的带宽容量需求量、cpu资源需求量、及对应的数据包个数,确定为每一个终端设备分配的cpu资源和带宽资源。
在另一种可能的实施方式中,根据每一个终端设备的带宽容量需求量、cpu资源需求量、总带宽容量、及总cpu资源量,确定每一个终端设备对应的数据包个数,包括:
通过计算如下公式二,确定每一个终端设备对应的数据包个数:
其中,m为所述通信系统中的终端设备的总数,ck为第k个终端设备发送一个数据包的cpu资源需求量,xk为第k个终端设备对应的数据包个数,所述c为所述总cpu资源量,所述bk为第k个终端设备发送一个数据包的带宽容量需求量,所述b为所述总带宽容量,所述dk为k个终端设备的瓶颈资源需求比,所述qk为第k个终端设备的权重值;
相应的,根据每一个终端设备的带宽容量需求量、cpu资源需求量、及对应的数据包个数,确定为每一个终端设备分配的cpu资源和带宽资源,包括:
确定为第k个终端设备分配的cpu资源为xk×ck,确定为第k个终端设备分配的带宽资源为xk×bk。
第二方面,本发明实施例提供一种资源分配装置,包括第一确定模块、第二确定模块、第三确定模块和资源分配模块,其中,
所述第一确定模块用于,根据总带宽容量和每一个终端设备发送一个数据包的带宽容量需求量,确定每一个终端设备的带宽需求比;
所述第二确定模块用于,根据总中央处理器cpu资源量和处理每一个终端设备的一个数据包的cpu资源需求量,确定每一个终端设备的cpu资源需求比;
所述第三确定模块用于,根据每一个终端设备的带宽需求比和每一个终端设备的cpu资源需求比,确定每一个终端设备的瓶颈资源需求比;
所述资源分配模块用于,根据每一个终端设备的带宽容量需求量、cpu资源需求量、瓶颈资源需求比、总带宽容量、及总cpu资源量,确定为每一个终端设备分配的cpu资源和带宽资源。
在一种可能的实施方式中,所述装置还包括第四确定模块、计算模块和第五确定模块,其中,
所述第四确定模块用于,在所述第一确定模块根据总带宽容量和每一个终端设备发送一个数据包的带宽容量需求量,确定每一个终端设备的带宽需求比之前,根据每一个终端设备的质量要求、每一个终端设备的计算能力、及基站的传输功率阈值,确定所述基站与每一个终端设备通信时的传输功率;
所述计算模块用于,根据所述基站与每一个终端设备通信时的传输功率,计算每一个终端设备的干扰加噪声比sinr;
所述第五确定模块用于,根据每一个终端设备的sinr和系统总带宽,确定总带宽容量。
在另一种可能的实施方式中,所述第五确定模块具体用于:
根据如下公式一,确定所述总带宽容量b:
其中,m为通信系统中终端设备的总数,所述b1为所述系统总带宽,所述
在另一种可能的实施方式中,针对任意一个第一终端设备,所述第三确定模块具体用于:
将所述第一终端设备的带宽需求比和cpu资源需求比中数值最大的需求比确定为所述第一终端设备的瓶颈资源需求比。
在另一种可能的实施方式中,所述分配模块具体用于:
根据每一个终端设备的带宽容量需求量、cpu资源需求量、总带宽容量、及总cpu资源量,确定每一个终端设备对应的数据包个数;
根据每一个终端设备的带宽容量需求量、cpu资源需求量、及对应的数据包个数,确定为每一个终端设备分配的cpu资源和带宽资源。
在另一种可能的实施方式中,所述分配模块具体用于:
通过计算如下公式二,确定每一个终端设备对应的数据包个数:
其中,m为所述通信系统中的终端设备的总数,ck为第k个终端设备发送一个数据包的cpu资源需求量,xk为第k个终端设备对应的数据包个数,所述c为所述总cpu资源量,所述bk为第k个终端设备发送一个数据包的带宽容量需求量,所述b为所述总带宽容量,所述dk为k个终端设备的瓶颈资源需求比,所述qk为第k个终端设备的权重值;
确定为第k个终端设备分配的cpu资源为xk×ck,确定为第k个终端设备分配的带宽资源为xk×bk。
本发明实施例提供的资源分配方法及装置,在为终端设备分配cpu资源和带宽资源时,确定每一个终端设备的带宽需求比和cpu资源需求比,并根据每一个终端设备的带宽需求比和cpu资源需求比,确定每一个终端设备的瓶颈资源需求比,根据每一个终端设备的带宽容量需求量、cpu资源需求量、瓶颈资源需求比、总带宽容量、及总cpu资源量,确定为每一个终端设备分配的cpu资源和带宽资源。由于在为终端设备分配cpu资源和带宽资源时,考虑了终端设备的瓶颈资源需求,避免向终端设备分配的资源出现瓶颈,进而提高cpu资源和带宽资源分配的合理性。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作一简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1为本发明实施例提供的资源分配方法的应用场景示意图;
图2为本发明实施例提供的资源分配方法的流程示意图;
图3为本发明实施例提供的确定总带宽容量方法的流程示意图;
图4为本发明实施例提供的资源分配装置的结构示意图一;
图5为本发明实施例提供的资源分配装置的结构示意图二。
具体实施方式
为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
图1为本发明实施例提供的资源分配方法的应用场景示意图。请参见图1,包括基站101和多个终端设备102,该多个终端设备102均位于基站101的覆盖范围内,且每一个终端设备102均可以与基站101进行无线通信。基站101可提供的cpu资源和带宽资源通常为固定的,在基站101和终端设备102通信的过程中,为了保证基站101与每一个终端设备102之间的良好通信,需要为每一个终端设备102分配合理的cpu资源和带宽资源。
在本申请中,在为终端设备102分配cpu资源和带宽资源时,先确定每一个终端设备102的瓶颈资源需求比,根据每一个终端设备的瓶颈资源需求比为终端设备分配合适的cpu资源和带宽资源。由于在为终端设备分配cpu资源和带宽资源时,考虑了终端设备的瓶颈资源需求,避免向终端设备分配的资源出现瓶颈,进而提高资源分配的合理性。
下面,通过具体实施例,对本申请所示的技术方案进行详细说明。需要说明的是,下面几个具体实施例可以相互结合,对于相同或相似的内容,在不同的实施例中不再进行赘述。
图2为本发明实施例提供的资源分配方法的流程示意图。请参见图2,该方法可以包括:
s201、根据总带宽容量和每一个终端设备发送一个数据包的带宽容量需求量,确定每一个终端设备的带宽需求比。
本发明实施例的执行主体可以为资源分配装置,该资源分配装置可以设置在基站内,也可以设置在基站外。可选的,该资源分配装置可以通过软件实现,或者,该资源分配装置也可以通过软件和硬件的结合实现。
可选的,本发明实施例中所示的每一个终端设备是指基站覆盖范围内的每一个终端设备。
可选的,带宽容量需求量为终端设备发送一个数据包时需要的带宽量。总带宽容量是指系统所能提供的系统总容量。
一个终端设备的带宽容量需求量通常与该终端设备发送的数据包的长度、及终端设备的信号与干扰加噪声比(signaltointerferenceplusnoiseratio,简称sinr)相关。例如,第k个终端设备的带宽容量需求量可以如下公式所示:
其中,pk为k个终端设备的数据包长度,
可选的,终端设备的带宽需求比为,终端设备的带宽容量需求量和总带宽容量的比值。
s202、根据总中央处理器cpu资源量和处理每一个终端设备的一个数据包的cpu资源需求量,确定每一个终端设备的cpu资源需求比。
可选的,cpu资源需求量为处理终端设备的一个数据包时需要的cpu资源量。总cpu资源量是指基站可提供的总cpu资源的量。
可选的,终端设备的cpu资源需求量通常与终端设备的属性相关,例如,终端设备的属性可以包括终端设备的网络制式、终端设备的性能、为终端设备提供服务的rrh的个数等。
可选的,终端设备的额cpu资源需求比为,终端设备的cpu资源需求量和总cpu资源量的比值。
s203、根据每一个终端设备的带宽需求比和每一个终端设备的cpu资源需求比,确定每一个终端设备的瓶颈资源需求比。
可选的,可以将终端设备的带宽需求比和cpu资源需求比中数值最大的需求比确定为终端设备的瓶颈资源需求比。
例如,假设终端设备的带宽需求比为1/10,终端设备的cpu资源需求比为1/16,由于1/10大于1/16,因此,该终端设备的瓶颈资源需求比为1/10。
s204、根据每一个终端设备的带宽容量需求量、cpu资源需求量、瓶颈资源需求比、总带宽容量、及总cpu资源量,确定为每一个终端设备分配的cpu资源和带宽资源。
可选的,可以通过如下步骤a和步骤b,确定为每一个终端设备分配的cpu资源和带宽资源:
步骤a、根据每一个终端设备的带宽容量需求量、cpu资源需求量、总带宽容量、及总cpu资源量,确定每一个终端设备对应的数据包个数。
可选的,可以通过计算如下公式二,确定每一个终端设备对应的数据包个数:
其中,m为通信系统中的终端设备的总数,ck为第k个终端设备发送一个数据包的cpu资源需求量,xk为第k个终端设备对应的数据包个数,c为总cpu资源量,bk为第k个终端设备发送一个数据包的带宽容量需求量,b为总带宽容量,dk为k个终端设备的瓶颈资源需求比,qk为第k个终端设备的权重值。可选的,qk可以为第k个终端设备的sinr值的倒数。需要说明的是,在图3所示的实施例中对确定终端设备的sinr值的方法进行说明,此处不再进行赘述。
需要说明的是,通过计算上述公式二中的
步骤b、根据每一个终端设备的带宽容量需求量、cpu资源需求量、及对应的数据包个数,确定为每一个终端设备分配的cpu资源和带宽资源。
可选的,可以确定为第k个终端设备分配的cpu资源为xk×ck。确定为第k个终端设备分配的带宽资源为xk×bk。
本发明实施例提供的资源分配方法,在为终端设备分配cpu资源和带宽资源时,确定每一个终端设备的带宽需求比和cpu资源需求比,并根据每一个终端设备的带宽需求比和cpu资源需求比,确定每一个终端设备的瓶颈资源需求比,根据每一个终端设备的带宽容量需求量、cpu资源需求量、瓶颈资源需求比、总带宽容量、及总cpu资源量,确定为每一个终端设备分配的cpu资源和带宽资源。由于在为终端设备分配cpu资源和带宽资源时,考虑了终端设备的瓶颈资源需求,避免向终端设备分配的资源出现瓶颈,进而提高cpu资源和带宽资源分配的合理性。
需要说明的是,在执行图2所示的实施例之前,需要先确定总带宽容量,可选的,可以通过如下可行的实现方式确定总带宽容量,具体的,请参见图3所示的实施例。
图3为本发明实施例提供的确定总带宽容量方法的流程示意图。请参见图3,该方法可以包括:
s301、根据每一个终端设备的质量要求、每一个终端设备的计算能力、及基站的传输功率阈值,确定基站与每一个终端设备通信时的传输功率。
可选的,终端设备的质量要求越高,基站与终端设备通信时的传输功率越大。终端设备的计算能力越强,基站与终端设备通信时的传输功率越大。基站与终端设备通信时的传输功率小于基站的传输功率阈值,其中,基站的传输功率阈值是指基站的最大传输功率。
s302、根据基站与每一个终端设备通信时的传输功率,确定每一个终端设备的sinr。
可选的,可以通过如下可行的实现方式确定每一个终端设备sinr:
假设l个rrh共同向k个终端设备发送独立消息。第l个rrh具有nl个天线,每个终端设备都有一个天线。
第l个rrh的基带信号表示为:
其中,wl,是第k终端设备在第l个rrh处的波束成形向量,sk是具有单位功率的第k个终端设备的数据符号,即e[|sk|2]=1。那么,第k个终端设备处的接收基带信号可以写成:
其中,
s303、根据每一个终端设备的sinr和系统总带宽,确定总带宽容量。
可选的,可以根据如下公式一,确定总带宽容量b:
其中,m为的终端设备的总数,b1为系统总带宽,
下面,通过具体示例,对上述方法实施例所示的技术方案进行详细说明。
示例性的,考虑具有假设总cpu资源为16个,总带宽容量为20mbps。再假设通信系统中包括两个终端设备,分别记为终端设备1和终端设备2。
假设终端设备1发送一个数据包需要的cpu资源为1个,需要的传输带宽容量为2mbps。因此,终端设备1的cpu资源需求比为1/16,终端设备1的带宽需求比为2/20=1/10,相应的,终端设备1的瓶颈资源为带宽资源,且瓶颈资源需求比为1/10。
假设终端设备2发送一个数据需要的cpu资源为4个,需要的传输带宽容量为3mbps。因此,终端设备2的cpu资源需求比为4/16=1/4,终端设备2的带宽需求比为3/20,相应的,终端设备2的瓶颈资源为cpu资源,且瓶颈资源需求比为1/4,再假设终端设备1的权重值为0.2,终端设备2的权重值为0.8。
假设终端设备1对应的数据包个数为x1,终端设备1对应的数据包个数为x2,根据上述公式二可得:
其中,根据
因此,可以确定为终端设备1分配的cpu资源为1×x1=5个,为终端设备1分配的带宽容量为2×x1=2×5=10mbps。
确定为终端设备2分配的cpu资源为4×x2=4×2=8个,为终端设备2分配的带宽容量为3×x2=3×2=6mbps。
由于在为终端设备分配cpu资源和带宽资源时,考虑了终端设备的瓶颈资源需求,避免向终端设备分配的资源出现瓶颈,进而提高资源分配的合理性。
图4为本发明实施例提供的资源分配装置的结构示意图一。请参见图4,该装置可以包括第一确定模块11、第二确定模块12、第三确定模块13和资源分配模块14,其中,
所述第一确定模块11用于,根据总带宽容量和每一个终端设备发送一个数据包的带宽容量需求量,确定每一个终端设备的带宽需求比;
所述第二确定模块12用于,根据总中央处理器cpu资源量和处理每一个终端设备的一个数据包的cpu资源需求量,确定每一个终端设备的cpu资源需求比;
所述第三确定模块13用于,根据每一个终端设备的带宽需求比和每一个终端设备的cpu资源需求比,确定每一个终端设备的瓶颈资源需求比;
所述资源分配模块14用于,根据每一个终端设备的带宽容量需求量、cpu资源需求量、瓶颈资源需求比、总带宽容量、及总cpu资源量,确定为每一个终端设备分配的cpu资源和带宽资源。
本发明实施例提供的资源分配装置可以执行上述方法实施例所示的技术方案,其实现原理以及有益效果类似,此处不再进行赘述。
图5为本发明实施例提供的资源分配装置的结构示意图二。在图4所示实施例的基础上,请参见图5,所述装置还包括第四确定模块15、计算模块16和第五确定模块17,其中,
所述第四确定模块15用于,在所述第一确定模块根据总带宽容量和每一个终端设备发送一个数据包的带宽容量需求量,确定每一个终端设备的带宽需求比之前,根据每一个终端设备的质量要求、每一个终端设备的计算能力、及基站的传输功率阈值,确定所述基站与每一个终端设备通信时的传输功率;
所述计算模块16用于,根据所述基站与每一个终端设备通信时的传输功率,计算每一个终端设备的干扰加噪声比sinr;
所述第五确定模块17用于,根据每一个终端设备的sinr和系统总带宽,确定总带宽容量。
在一种可能的实施方式中,所述第五确定模块17具体用于:
根据如下公式一,确定所述总带宽容量b:
其中,m为通信系统中终端设备的总数,所述b1为所述系统总带宽,所述
在另一种可能的实施方式中,针对任意一个第一终端设备,所述第三确定模块13具体用于:
将所述第一终端设备的带宽需求比和cpu资源需求比中数值最大的需求比确定为所述第一终端设备的瓶颈资源需求比。
在另一种可能的实施方式中,所述分配模块14具体用于:
根据每一个终端设备的带宽容量需求量、cpu资源需求量、总带宽容量、及总cpu资源量,确定每一个终端设备对应的数据包个数;
根据每一个终端设备的带宽容量需求量、cpu资源需求量、及对应的数据包个数,确定为每一个终端设备分配的cpu资源和带宽资源。
在另一种可能的实施方式中,所述分配模块14具体用于:
通过计算如下公式二,确定每一个终端设备对应的数据包个数:
其中,m为所述通信系统中的终端设备的总数,ck为第k个终端设备发送一个数据包的cpu资源需求量,xk为第k个终端设备对应的数据包个数,所述c为所述总cpu资源量,所述bk为第k个终端设备发送一个数据包的带宽容量需求量,所述b为所述总带宽容量,所述dk为k个终端设备的瓶颈资源需求比,所述qk为第k个终端设备的权重值;
确定为第k个终端设备分配的cpu资源为xk×ck,确定为第k个终端设备分配的带宽资源为xk×bk。
本发明实施例提供的资源分配装置可以执行上述方法实施例所示的技术方案,其实现原理以及有益效果类似,此处不再进行赘述。
本领域普通技术人员可以理解:实现上述各方法实施例的全部或部分步骤可以通过程序指令相关的硬件来完成。前述的程序可以存储于一计算机可读取存储介质中。该程序在执行时,执行包括上述各方法实施例的步骤;而前述的存储介质包括:rom、ram、磁碟或者光盘等各种可以存储程序代码的介质。
最后应说明的是:以上各实施例仅用以说明本发明实施例的技术方案,而非对其限制;尽管参照前述各实施例对本发明实施例进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分或者全部技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明实施例方案的范围。