本发明涉及计算机,尤其涉及一种网卡功耗调整方法、装置、网卡电子设备及可读存储介质。
背景技术:
1、网卡在服务器中属于数据传输单元,随着服务器性能的不断增加,一台服务器也扮演着越来越多的角色,这就意味着一台服务器中配置多张网卡的场景也越来越多,服务器在运行的过程中,服务器的网卡也进行相应的工作,这些网卡同时工作时会产生较大功耗,不利于服务器节能。
2、相关技术中网卡一般都是处于全功耗模式,只有当系统层面处于空闲状态时,才会给各个网卡设备发送相关指令,让网卡设备进入空闲状态,来降低网卡功耗。
3、然而服务器在正常运行情况下基本不会处于空闲状态,或者只有很少时段才会处于空闲状态,所以通过空闲状态调整网卡设备所节约的功耗非常有限,难以达到更高的节能要求。
技术实现思路
1、鉴于上述问题,提出了本发明实施例以便提供一种克服上述问题或者至少部分地解决上述问题的一种网卡功耗调整方法、装置、电子设备及可读存储介质。
2、第一方面,本技术实施例公开了一种网卡功耗调整方法,所述方法包括:
3、获取第一预设时间周期内网口的历史流量信息;所述历史流量信息包括第一预设时间周期内包括的各个时间点的流量值,以及各个子时间段的最大流量值、最小流量值和平均流量值;
4、根据所述历史流量信息确定第二预设时间周期内的需求流量阈值;
5、根据所述需求流量阈值确定网卡的配置信息;
6、基于所述配置信息调整所述网卡的工作状态;所述工作状态包括:网卡的工作频率和网卡与主机端之间的链路宽度。
7、可选地,所述根据所述历史流量信息确定第二预设时间周期内的需求流量阈值,包括:
8、根据与所述第二预设时间周期对应的目标历史流量信息,确定流量增益系数;
9、根据所述流量增益系数,所述第二预设时间周期对应的累计最大流量以及所述第二预设时间周期的时间长度确定单位时间内的需求流量阈值;所述累计最大流量通过第二预设时间周期对应的各个目标时间点的流量值累加确定。
10、可选地,所述根据与所述第二预设时间周期对应的目标历史流量信息,确定流量增益系数,包括:
11、根据所述第二预设时间周期对应的各个目标时间点的流量值,确定所述第二预设时间周期内的目标最大流量值、目标最小流量值和目标平均流量值;
12、根据所述目标最大流量值、目标最小流量值和目标平均流量值确定流量增益系数。
13、可选地,所述根据所述需求流量阈值确定网卡的配置信息,包括:
14、根据所述需求流量阈值确定网卡所需的目标带宽速率;
15、根据所述目标带宽速率确定网卡的目标工作频率和目标链路宽度;
16、所述基于所述配置信息调整所述网卡的工作状态,包括:
17、将所述网卡的工作频率调整为所述目标工作频率,将所述网卡与主机端之间的链路宽度调整为目标链路宽度。
18、可选地,所述基于所述配置信息调整所述网卡的工作状态之前,所述方法还包括:
19、根据各个子时间段最小流量值,确定最小流量值最小的第一目标时间段;
20、将所述第一目标时间段作为调整网卡工作状态的时间段。
21、可选地,所述方法还包括:
22、根据所述各个子时间段的最大流量值分布情况,确定流量值最大的第二目标时间段;
23、将所述第二目标时间段作为评估需求流量阈值的时间周期。
24、可选地,所述基于所述配置信息调整所述网卡的工作状态,包括:
25、基于所述网卡与所述主机端之间的通信链路,向主机端发送重新协商信号;
26、在所述主机端基于所述重新协商信号释放所述网卡对应的资源的情况下,基于所述配置信息调整所述网卡的工作状态。
27、可选地,所述将所述网卡的工作频率调整为所述目标工作频率,包括:
28、将所述网卡对应的默认传输速率协议切换为目标传输速率协议;所述目标传输速率协议所定义的传输速率小于所述默认传输速率协议所定义的传输速率;
29、所述将所述网卡与主机端之间的链路宽度调整为目标链路宽度,包括:
30、基于所述目标链路宽度,关闭所述网卡与主机端之间空闲的收发对通道。
31、可选地,所述基于所述配置信息调整所述网卡的工作状态,包括:
32、在将所述目标工作频率以及目标链路宽度更新至寄存器之后,重新启动所述网卡;
33、基于所述目标工作频率以及目标链路宽度重新建立所述网卡和主机端之间的数据链路。
34、可选地,所述基于所述目标工作频率以及目标链路宽度重新建立所述网卡和主机端之间的数据链路,包括:
35、基于所述目标工作频率以及目标链路宽度对所述网卡与所述主机端之间进行链路协商;
36、基于所述链路协商的结果,重新配置所述网卡对应的资源。
37、可选地,所述方法还包括:
38、获取所述第二预设时间周期内的实际流量信息,所述实际流量信息包括第二预设时间周期内包括的各个时间点的流量值,以及各个子时间段的最大流量值、最小流量值和平均流量值;
39、根据所述第二预设时间周期的实际流量信息调整下一个时间周期的网卡的配置信息。
40、第二方面,本技术实施例公开了一种网卡功耗调整装置,所述装置包括:
41、获取模块,用于获取第一预设时间周期内网口的历史流量信息;所述历史流量信息包括第一预设时间周期内包括的各个时间点的流量值,以及各个子时间段的最大流量值、最小流量值和平均流量值;
42、第一确定模块,用于根据所述历史流量信息确定第二预设时间周期内的需求流量阈值;
43、第二确定模块,用于根据所述需求流量阈值确定网卡的配置信息;
44、调整模块,用于基于所述配置信息调整所述网卡的工作状态;所述工作状态包括:网卡的工作频率和网卡与主机端之间的链路宽度。
45、第三方面,本技术实施例还公开了一种网卡,所述网卡包括:网口流量监控模块,网卡信号控制模块和寄存器;
46、所述网口流量监控模块用于与所述寄存器之间交互,获取第一预设时间周期内网口的历史流量信息;
47、所述网卡信号控制模块用于根据所述历史流量信息确定第二预设时间周期内的需求流量阈值;
48、所述网卡信号控制模块还用于根据所述需求流量阈值确定网卡的配置信息;
49、所述网卡信号控制模块还用于基于所述配置信息调整所述网卡的工作状态。
50、第四方面,本技术实施例还公开了一种电子设备,包括处理器和存储器、所述存储器存储可在所述处理器上运行的程序或指令,所述程序或指令被所述处理器执行时实现如第一方面所述的方法的步骤。
51、第五方面,本技术实施例还公开了一种可读存储介质,所述可读存储介质上存储有程序或指令,所述程序或指令被处理器执行时实现如第一方面所述的方法的步骤。
52、本技术实施例中,获取第一预设时间周期内网口的历史流量信息;根据所述历史流量信息确定第二预设时间周期内的需求流量阈值;根据所述需求流量阈值确定网卡的配置信息;基于所述配置信息调整所述网卡的工作状态;所述工作状态包括:网卡的工作频率和网卡与服务器之间的链路宽度。本技术的方法获取网卡的历史流量信息,根据历史流量信息来评估第二预设时间周期的需求流量阈值,基于需求流量阈值来确定网卡满足需求流量阈值需求所对应的配置信息,再基于配置信息来调整网卡的工作状态,即本技术在网卡持续有数据流量的情况下,根据网口实际的工作数据流量情况,自动调节网卡功耗,在满足传输数据包带宽的需求下,通过调整网卡的工作频率和网卡与服务器之间的链路宽度,降低网卡功耗,使得网卡功耗的调整不依赖于系统的空闲省电模式,实现基于网卡实际流量情况,自动调整网卡功耗,降低了服务器的整体功耗。