可降低功耗的个人智能终端应用程序网络数据接收方法技术

技术编号:34519030 阅读:37 留言:0更新日期:2022-08-13 21:07
本发明专利技术公开了一种可降低功耗的个人智能终端应用程序网络数据接收方法,包括以下步骤:步骤1、获取接收网络数据包的协议接口;步骤2、获取网络数据包的有效包长,并判断是否需要向所述应用程序推送网络数据包;步骤3、当判断需要推送时,预测得到网络数据包的种类;步骤4、基于系统信息、步骤3得到的种类得到延迟时间;步骤5、根据延迟时间与网络数据包存续于协议接口中的时间是否对齐,判断是否向应用程序交付网络数据包。本发明专利技术可有效降低个人智能终端设备功耗。终端设备功耗。终端设备功耗。

【技术实现步骤摘要】
可降低功耗的个人智能终端应用程序网络数据接收方法


[0001]本专利技术涉及网络数据传输方法领域,具体是可降低功耗的个人智能终端应用程序网络数据接收方法。

技术介绍

[0002]个人智能终端如手机、个人平板电脑等,在待机状态下的设备仍然存在较大的功耗,主要是因为个人智能终端在待机状态下其应用程序(APP)仍然会带来较大的功耗,其中主要是APP使用网络时带来的功耗。网络在手机待机能耗占相当大的一部分比例,个人智能终端的应用程序(APP)在待机时,会与服务器一直保持连接,以便及时收发数据,每个个人智能终端用户所必备的软件,其在待机时往往与服务器保持连接,当应用程序接收到服务器传来的消息时,需要对数据包中内容进行解码分析等一系列操作,此时CPU会增加频率来处理这些事件,同时数据包的到来是不固定,并且这些数据包处理的时间极短,会造成CPU处于一种低效率的状态,并可能唤醒设备的其他高能耗硬件(屏幕)。这种情况会导致设备在待机时频繁唤醒从而导致个人智能终端能耗的提高。
[0003]为了降低个人智能终端待机状态下的功耗,可从应用的角度上采用对alarm进行对齐的策略,进而减少alarm工作以减少硬件的调用次数,达到减少能耗的目的,但是存在收益过低的问题。也有从硬件的角度出发,通过切换待机时处理器降低功耗,将处理IO和存储信息的设备从高能耗硬件上转移至低能耗硬件上,这类方案对功耗的降低最为明显,但是成本过高,同时实施也过于困难。还有一种方法是从网络角度做优化来降低功耗,但从网络角度的上做的优化工作往往对用户对体验造成很大影响

技术实现思路

[0004]本专利技术的目的是提供一种可降低功耗的个人智能终端应用程序网络数据接收方法,以解决现有技术个人智能终端中APP由网络唤起带来的高耗电的问题。
[0005]为了达到上述目的,本专利技术所采用的技术方案为:可降低功耗的个人智能终端应用程序网络数据接收方法,包括以下步骤:步骤1、从个人智能终端设备操作系统中获取所述应用程序用于接收网络数据包的对应协议接口;步骤2、通过步骤1得到所述协议接口获取网络数据包的有效包长,并判断是否需要向所述应用程序推送网络数据包;步骤3、当判断需要向应用程序推送网络数据包时,基于步骤2得到的有效包长预测得到所述网络数据包的种类;步骤4、获取个人智能终端的系统信息,并基于人智能终端的系统信息、步骤3得到的种类得到延迟时间;步骤5、由所述协议接口获取步骤4得到的延迟时间,并判断所述网络数据包存续于协议接口中的时间与所述延迟时间是否对齐,若对齐则由协议接口向应用程序交付网络
数据包。
[0006]进一步的,步骤2中,由协议接口监测得到网络数据包的有效包长。
[0007]进一步的,步骤2中,基于网络数据包的推送标志位判断是否需要向所述应用程序推送网络数据包。
[0008]进一步的,步骤3中,采用查表分析的算法,以步骤2得到的有效包长作为的输入,通过查表分析的算法预测得到所述网络数据包的种类。
[0009]进一步的,步骤4中,个人智能终端的系统信息至少包括系统时间信息、网络状态信息、电量信息、休眠时间信息、充电状态信息。
[0010]进一步的,步骤4中,采用Q

learning算法模型,以个人智能终端的系统信息、、步骤3得到的种类作为Q

learning算法模型的输入,通过Q

learning算法模型处理得到所述延迟时间。
[0011]进一步的,步骤5中,当所述网络数据包存续于协议接口中的时间大于或等于所述延迟时间时,则判断结果为对齐。
[0012]本专利技术中,通过预测应用程序对应的协议接收的网络数据包内容,判断该网络数据包对设备使用者的重要程度,从而对网络数据包进行存续,最后对存续时间到达本专利技术计算得到的延迟时间的数据包统一进行交付,减少了硬件的IO次数和设备的唤醒次数,以达到低功耗的效果。
[0013]本专利技术中,通过查表分析的算法对应用程序的网络数据包进行预测分类,依据不同类型的网络数据包对用户对重要程度,利用Q

learning算法模型计算时延时间,进行动态延迟操作,并采用对齐机制选择合适的时间将所有网络数据包统一交付,使得需要多次上传至应用程序的网络数据包能够一次性交付给应用程序,从而达到降低设备功耗的目的。本专利技术适用于任何应用,并可以对主流APP做特殊优化。
[0014]与现有技术相比,本专利技术的优点为:1、本专利技术方法能应用于任意一种个人智能终端中,适用性广。
[0015]2、本专利技术方法可对个人智能终端中各种应用程序进行特殊优化,尤其是应用频繁的应用程序,如微信、qq等用户使用频率高的软件做优化。
[0016]3、依据不同类型的网络数据包对用户对重要程度计算时延时间,进行动态延迟操作,并采用对齐机制选择合适的时间将所有网络数据包统一交付,使得需要多次上传至应用程序的网络数据包能够一次性交付给应用程序,从而达到降低设备功耗的目的。因此能够在不降低用户体验的同时,增加了个人智能终端的续航时间。
附图说明
[0017]图1是本专利技术实施例方法流程框图。
[0018]图2是本专利技术实施例网络数据包传输原理图。
具体实施方式
[0019]下面结合附图和实施例对本专利技术进一步说明。
[0020]本实施例以手机中Android操作系统,以及微信应用程序为例进行说明。如图1所示,本实施例方法包括以下步骤:
步骤1、获取网络数据包:如图2所示,在Android操作系统中的微信应用程序(以下简称微信),通过TCP协议与服务器通讯连接,因此个人智能终端中Android操作系统的设备底层以套接字(socket)作为协议接口,由套接字从服务器接收TCP网络数据包,并由套接字将TCP网络数据包传输至微信应用程序。
[0021]本实施例中,首先从Android操作系统的底层获取微信注册的网络端口号,进而获取微信绑定对应的套接字。
[0022]由于微信的网络端口号随着网络的连接断开,会重新分配端口号,因此微信的端口号不是静态的,而是动态存储,本专利技术中需要从Android操作系统的底层中获取微信注册的网络端口号,从而获得微信绑定的套接字。套接字接收到TCP网络数据包时,将TCP网络数据包暂存至套接字的缓冲区中。
[0023]步骤2、获取网络数据包的有效包长和判断推送信息:传统的Android操作系统中,当TCP网络数据包进入运输层时,会将TCP网络数据包暂存至套接字缓冲区中,套接字会依据TCP网络数据包中的TCP推送标志位(PSH)是否为1判断是否将缓冲层刷新,当TCP推送标志位为1时则刷新缓冲层将缓冲层刷新并将TCP网络数据包交付至微信。同时,缓冲区满时,套接字也同时会刷新缓冲区,将缓冲区中所有的数据包交付至应用层。
[0024]与传统的Android操作系统不同的是,本实施例通过在套接字层进行修改,通过修改套接字(socket)中数据包存储的数据结构形式本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.可降低功耗的个人智能终端应用程序网络数据接收方法,其特征在于,包括以下步骤:步骤1、从个人智能终端设备操作系统中获取所述应用程序用于接收网络数据包的对应协议接口;步骤2、通过步骤1得到所述协议接口获取网络数据包的有效包长,并判断是否需要向所述应用程序推送网络数据包;步骤3、当判断需要向应用程序推送网络数据包时,基于步骤2得到的有效包长预测得到所述网络数据包的种类;步骤4、获取个人智能终端的系统信息,并基于人智能终端的系统信息、步骤3得到的种类得到延迟时间;步骤5、由所述协议接口获取步骤4得到的延迟时间,并判断所述网络数据包存续于协议接口中的时间与所述延迟时间是否对齐,若对齐则由协议接口向应用程序交付网络数据包。2.根据权利要求1所述的可降低功耗的个人智能终端应用程序网络数据接收方法,其特征在于,步骤2中,由协议接口监测得到网络数据包的有效包长。3.根据权利要求1所述的可降低功耗的个人智能终端应用程序网络数据接收方法,其特征在于,步骤2中,基于网络数据包的推送标志位判断是否需要向所述应用程序推送网络数据包。4....

【专利技术属性】
技术研发人员:吴琪吴云志曾涛乐毅张友华余克健胡楠
申请(专利权)人:安徽农业大学
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1