CPU动态分配提升WiFi性能的方法、WiFi通讯设备及存储介质与流程

文档序号:28162958发布日期:2021-12-24 20:53阅读:226来源:国知局
CPU动态分配提升WiFi性能的方法、WiFi通讯设备及存储介质与流程
cpu动态分配提升wifi性能的方法、wifi通讯设备及存储介质
技术领域
1.本发明属于智能wifi通讯技术领域,具体涉及一种cpu动态分配提升wifi性能的方法、wifi通讯设备及存储介质。


背景技术:

2.随着数字生态概念的飞速普及,智能机顶盒,路由器等wifi终端产品被人们广泛使用。其中wifi性能即吞吐量是衡量各wifi产品性能的重要标志,影响wifi吞吐量的因素有很多,包括cpu处理能力,wifi处理芯片最大协商速率,天线性能等;
3.现有技术中对于多核cpu处理器,以太网卡,wifi芯片驱动初始化后,绑定在了固定的cpu核,当单核的cpu满载时,吞吐量达到了极限,与此同时,不参与处理的cpu核处于空闲状态,导致了cpu处理资源的浪费的同时还存在无法提升wifi性能的问题。


技术实现要素:

4.为了克服现有技术的上述缺点,本发明的目的在于提供一种cpu动态分配提升wifi性能的方法、wifi通讯设备及存储介质,旨在解决现有cpu处理资源的浪费的同时还存在无法提升wifi性能的技术问题。
5.本发明为达到其目的,所采用的技术方案如下:
6.一种cpu动态分配提升wifi性能的方法,包括以下步骤:
7.获取流量模式,所述流量模式包括发送模式和接收模式;
8.根据所述发送模式或者接收模式对多核cpu进行动态分配。
9.进一步地,所述根据所述流量模式对多核cpu进行动态分配的步骤中,还包括步骤:
10.当所述流量模式为发射模式时,确定当前负载最轻的第一处理cpu,所述第一处理cpu用于对数据包进行上半部处理;确定当前主频最快的第二处理cpu,所述第二处理cpu用于对数据包进行下半部处理;
11.当所述流量模式为接收模式时,确定当前主频最快的第二处理cpu,所述第二处理cpu用于对数据包进行上半部处理;确定当前负载最轻的第一处理cpu,所述第一处理cpu用于对数据包进行下半部处理。
12.进一步地,
13.当所述发送流量大于所述接收流量时,所述流量模式为发送模式;
14.当所述发送流量小于所述接收流量时,所述流量模式为接收模式。
15.进一步地,所述获取流量模式的步骤中,还包括步骤:
16.根据预设周期定期获取流量模式。
17.进一步地,所述多核cpu包括cpu1、cpu2、cpu3;
18.当所述流量模式为接收模式时,cpu1为当前主频最快的cpu,确定cpu1为第二处理cpu;
19.数据包经过第二处理cpu处理后,判断数据包发送至wan口还是lan口;
20.根据数据包发送至wan口还是lan口确定对应的第一处理cpu。
21.进一步地,所述根据数据包发送至wan口还是lan口确定对应的第一处理cpu的步骤中,包括如下步骤:
22.当数据包发往wan口时,cpu2为当前负载量最轻,确定cpu2为第一处理cpu;
23.当数据包发往lan口时,cpu3为当前负载量最轻,确定cpu3为第一处理cpu。
24.进一步地,所述获取流量模式的步骤中,还包括步骤:
25.根据预设周期定期获取流量模式。
26.进一步地,当前主频最快的所述第二处理cpu由系统设定
27.进一步地,所述预设周期为100毫秒。
28.对应地,本发明还公开一种wifi通讯设备,包括存储器、处理器以及存储在所述存储器上并可在所述处理器上运行的cpu动态分配提升wifi性能的程序,所述cpu动态分配提升wifi性能的程序配置为实现如上述的cpu动态分配提升wifi性能的方法的步骤。
29.对应地,本发明还公开一种存储介质,其上存储有cpu动态分配提升wifi性能的程序,所述cpu动态分配提升wifi性能的程序被处理器执行时实现如上述的cpu动态分配提升wifi性能的方法的步骤。
30.与现有技术相比,本发明的有益效果是:
31.本发明提出的cpu动态分配提升wifi性能的方法,首先,获取流量模式,其中,流量模式用于判断当前是处于发送模式还是接收模式,因为发送模式和接收模式所对应的cpu处理需求是不同的;接着,根据不同的流量模式对多核cpu进行动态分配,以此根据不同的情况将数据包的上半部和下半部分配至不同的cpu进行处理,采用不同的cpu进行处理实现了cpu资源的充分利用,且提升了wifi性能的效果。
附图说明
32.为了更清楚地说明本发明实施例技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
33.图1为本发明实施例方案涉及的硬件运行环境的wifi通讯设备结构示意图;
34.图2为本发明一实施例中cpu动态分配提升wifi性能的方法的流程示意图;
35.图3为本发明一实施例中cpu动态分配提升wifi性能的装置的结构示意图。
36.本发明目的的实现、功能特点及优点将结合实施例,参照附图做进一步说明。
具体实施方式
37.为了能够更清楚地理解本发明的上述目的、特征和优点,下面结合附图和具体实施方式对本发明进行详细描述。需要说明的是,在不冲突的情况下,本发明的实施方式及实施方式中的特征可以相互组合。在下面的描述中阐述了很多具体细节以便于充分理解本发明,所描述的实施方式仅仅是本发明一部分实施方式,而不是全部的实施方式。基于本发明中的实施方式,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施方式,都属于本发明保护的范围。
38.除非另有定义,本文所使用的所有的技术和科学术语与属于本发明的技术领域的技术人员通常理解的含义相同。本文中在本发明的说明书中所使用的术语只是为了描述具体的实施方式的目的,不是旨在于限制本发明。
39.如图1所示,图1是本发明实施例方案涉及的硬件运行环境的wifi通讯设备的结构示意图。
40.本发明实施例的wifi通讯设备可以是具有存储功能的终端设备。
41.如图1所示,该wifi通讯设备可以包括:处理器1001,例如cpu,通信总线1002,用户接口1003,网络接口1004,存储器1005。其中,通信总线1002用于实现这些组件之间的连接通信。用户接口1003可以包括显示屏(display)、输入单元比如键盘(keyboard),可选的用户接口1003还可以包括标准的有线接口、无线接口。网络接口1004可选的可以包括标准的有线接口、无线接口(如wi

fi接口)。存储器1005可以是高速ram存储器,也可以是稳定的存储器(non

volatilememory),例如磁盘存储器。存储器1005可选的还可以是独立于前述处理器1001的存储装置。
42.本领域技术人员可以理解,图1中示出的wifi通讯设备并不构成对终端的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件布置。
43.如图1所示,作为一种计算机存储介质的存储器1005中可以包括操作系统、网络通信模块、用户接口模块以及cpu动态分配提升wifi性能的程序。
44.在如图1所示的wifi通讯设备中,网络接口1004主要用于连接后台服务器,与后台服务器进行数据通信;用户接口1003主要包括输入单元比如键盘,键盘包括无线键盘和有线键盘,用于连接客户端,与客户端进行数据通信;而处理器1001可以用于调用存储器1005中存储的cpu动态分配提升wifi性能的程序,并执行下述任一实施例中的cpu动态分配提升wifi性能的方法中的操作。
45.基于上述硬件结构,提出本发明cpu动态分配提升wifi性能的方法实施例。
46.参照图2,本发明一实施例提供
47.一种cpu动态分配提升wifi性能的方法,包括以下步骤:
48.步骤s100,获取流量模式,流量模式包括发送模式和接收模式;
49.步骤s200,根据发送模式或者接收模式对多核cpu进行动态分配。
50.进一步地,根据流量模式对多核cpu进行动态分配的步骤中,还包括步骤:
51.当流量模式为发射模式时,确定当前负载最轻的第一处理cpu,第一处理cpu用于对数据包进行上半部处理;确定当前主频最快的第二处理cpu,第二处理cpu用于对数据包进行下半部处理;
52.当流量模式为接收模式时,确定当前主频最快的第二处理cpu,第二处理cpu用于对数据包进行上半部处理;确定当前负载最轻的第一处理cpu,第一处理cpu用于对数据包进行下半部处理。
53.具体地,本实施例应用于wifi发射设备,例如路由器等,其中均是配备多核cpu的,即拥有多个cpu可以用于处理数据;首先获取无线芯片的流量模式,其中,流量模式用于判断当前是处于发送模式还是接收模式,对于无线芯片来说的,无线芯片的接收流量远大于发送流量则为接收模式,反之就是发送模式,因为发送模式和接收模式所对应的cpu处理需求是不同的;接着,
54.对于发送模式的下半部和接收模式的上半部而言主要进行的处理均是进行中断处理,其中中断处理主要是中断收包的任务,因此需要以较快的速度完成中断处理,所以需要选择主频最快的cpu进行处理;另外对于发送模式的上半部和接收模式的下半部的处理任务则比较占用cpu的空间,对数据包的数据处理量通常较大,因此需要分配负载较轻资源占用较少的cpu进行处理,因此需要选择最为空闲及负载量最轻的第一处理cpu进行处理,以此完成了数据包的有效处理,通过本实施例的方法对数据包的前半段处理进行按需分配,有利于cpu的资源充分利用,以此实现了提升wifi性能的效果。
55.综上得出的根据流量模式对多核cpu进行动态分配过程如下:
56.当流量模式为发射模式时,确定当前负载最轻的第一处理cpu,第一处理cpu用于对数据包进行上半部处理;确定当前主频最快的第二处理cpu,第二处理cpu用于对数据包进行下半部处理;
57.当流量模式为接收模式时,确定当前主频最快的第二处理cpu,第二处理cpu用于对数据包进行上半部处理;确定当前负载最轻的第一处理cpu,第一处理cpu用于对数据包进行下半部处理。
58.本实施例中第一处理cpu仅是当前负载最轻的cpu,第二处理cpu仅是当前主频最快的cpu;以上会根据cpu的具体运行情况进行具体的变换,并且第一处理cpu和第二处理cpu不能为同一个cpu,现有的wifi发射设备通常都是多核cpu处理的,因此,通过本实施例可以解决现有技术中,将wifi信号处理绑定于固定的cpu,当该cpu满载时,wifi吞吐量达到了极限,但是其他不参与处理wifi信号的cpu处于较为空闲状态,导致了cpu处理资源的浪费的同时还存在无法提升wifi性能的问题;本实施例通过检查当前的流量模式,并根据流量模式分配不同的cpu处理wifi信号,实现了cpu资源的充分利用,且提升了wifi性能的效果。
59.另外地,运行中的无线驱动芯片始终需要占用一个cpu的,可以表示为驱动cpu,然后对于数据包上半部或者下半部的处理第一处理cpu和第二处理cpu同样不能与驱动cpu为相同的cpu。
60.进一步地,获取流量模式的步骤中,还包括步骤:
61.当发送流量大于接收流量时,流量模式为发送模式;
62.当发送流量小于接收流量时,流量模式为接收模式。
63.具体的,流量模式为wifi通讯设备的当前主要模式特征,用于判断当前是发送流量较大或者是接收流量较大,以此确定当前是处理哪种类型的数据包较多,根据确定的主要处理数据类型以此判断分配哪个cpu进行适应性的加快数据处理,解决了现有技术中心绑定cpu处理存在的处理效率不高及资料利用不充分的问题,实现了cpu资源充分利用的效果。
64.进一步地,获取流量模式的步骤中,还包括步骤:
65.根据预设周期定期获取流量模式。
66.具体的,根据预设的周期,定期获取流量模式;以此防止cpu绑定处理某项数据后,难以根据实际情况,切换其他更空闲或者更适合处理该数据的cpu进行处理。
67.进一步地,所述多核cpu包括cpu1、cpu2、cpu3;
68.当所述流量模式为接收模式时,cpu1为当前主频最快的cpu,确定cpu1为第二处理
cpu;
69.数据包经过第二处理cpu处理后,判断数据包发送至wan口还是lan口;
70.根据数据包发送至wan口还是lan口确定对应的第一处理cpu。
71.具体地,本实施例中的应用场景为双核cpu,两个物理核,四个逻辑核,cpu0,cpu1,cpu2,cpu3,逻辑核的实现是通过超线程技术,对用户和实际分配使用而言即相当于四核,相当于拥有cpu0,cpu1,cpu2,cpu3四个cpu,首先根据流量模式判断当前为接收模式还是发送模式;当判断为接收模式时根据选择主频最快的cpu并确定为第二处理cpu,当前主频最快的cpu为cpu1,因此确定cpu1为第二处理cpu处理处理数据包的上半部,接着进一步判断数据包是发送至wan口还是lan口的,进而确定数据包下半部由哪个cpu进行处理。
72.进一步地,所述根据数据包发送至wan口还是lan口确定对应的第一处理cpu的步骤中,包括如下步骤:
73.当数据包发往wan口时,cpu2为当前负载量最轻,确定cpu2为第一处理cpu;
74.当数据包发往lan口时,cpu3为当前负载量最轻,确定cpu3为第一处理cpu。
75.具体地,由于lan和wan口交换芯片收到数据包并进行发送也需要占用cpu资源,因此数据是发送至lan口还是wan是会改变某些cpu的负载状态的,例如,当数据包是发送至wan口时是cpu2的负载量最轻,因此确定cpu2为第一处理cpu;当数据包发往lan口时则是cpu3的负载量最轻,确定cpu3为第一处理cpu,因此即使同样是处于接收模式下,选取第一处理cpu时也会由于数据包的发送方向不同,而使得对应的第一处理cpu不一致。
76.进一步地,当前主频最快的第二处理cpu由系统设定;
77.具体地,主频最快的第二处理cpu也可以是有系统提前设定完成,因为cpu的主频参数一般较为稳定,所以通过提前设定主频最快的第二处理cpu可以节省部分判断选择的过程,加快了cpu分配的效率,使得可以更快的根据当前模式确定对应的处理cpu,实现了cpu资源的快速利用,且提升了wifi性能的效果。
78.进一步地,所述获取流量模式的步骤中,还包括步骤:
79.根据预设周期定期获取流量模式。
80.进一步地,所述预设周期为100毫秒。
81.具体地,通过预设周期不断的检测获取流量模式,以此实现了实施判断当前的wif状态是处于发送模式还是接收模式,本实施例中预设周期设为100毫秒,因此每间隔100毫秒就会检测获取一次流量模式,再进行第一处理cpu和第二处理cpu的确定,实现了cpu的快速有效带动,高效利用cpu的效果。
82.对应地,本发明还公开一种wifi通讯设备,包括存储器、处理器以及存储在存储器上并可在处理器上运行的cpu动态分配提升wifi性能的程序,cpu动态分配提升wifi性能的程序配置为实现如上述的cpu动态分配提升wifi性能的方法的步骤。
83.对应地,本发明还公开一种存储介质,其上存储有cpu动态分配提升wifi性能的程序,cpu动态分配提升wifi性能的程序被处理器执行时实现如上述的cpu动态分配提升wifi性能的方法的步骤。
84.需要说明的是,关于上述实施例中的cpu动态分配提升wifi性能的装置,其中各个模块或单元执行操作的具体方式已经在有关该方法的实施例中进行了详细描述,本领域技术人员可以理解,此处不再赘述。
85.对应地,本发明一实施例还提供一种存储介质,其为计算机可读的存储介质,其上存储有cpu动态分配提升wifi性能的程序,cpu动态分配提升wifi性能的程序被处理器执行时实现上述任一实施例中的cpu动态分配提升wifi性能的方法的步骤。
86.在本实施例中,上述存储介质可以包括但不限于任何类型的盘(包括软盘、硬盘、光盘、cd

rom、和磁光盘)、rom(read

only memory,只读存储器)、ram(random accessmemory,随机存储器)、eprom(erasable programmable read

only memory,可擦写可编程只读存储器)、eeprom(electrically erasable programmable read

only memory,电可擦可编程只读存储器)、闪存、磁性卡片或光线卡片等各种可以存储程序代码的介质。
87.显然,本领域的技术人员应当理解,上述的本发明的各模块或各步骤可以用通用的计算装置来实现,它们可以集中在单个的计算装置上,或者分布在多个计算装置所组成的网络上,可选地,它们可以用计算装置可执行的程序代码来实现,从而,可以将它们存储在存储装置中由计算装置来执行,并且在某些情况下,可以以不同于此处的顺序执行所示出或描述的步骤,或者将它们分别制作成各个集成电路模块,或者将它们中的多个模块或步骤制作成单个集成电路模块来实现。这样,本发明不限制于任何特定的硬件和软件结合。
88.需要说明的是,本发明公开的cpu动态分配提升wifi性能的方法、wifi通讯设备及存储介质的其它内容可参见现有技术,在此不再赘述。
89.以上所述,仅是本发明的可选实施例而已,并非对本发明作任何形式上的限制,故凡是未脱离本发明技术方案内容,依据本发明的技术实质对以上实施例所作的任何修改、等同变化与修饰,均仍属于本发明技术方案的范围内。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1