CN113840358B - 报文过滤方法、移动终端及计算机可读存储介质 - Google Patents
报文过滤方法、移动终端及计算机可读存储介质 Download PDFInfo
- Publication number
- CN113840358B CN113840358B CN202010591632.5A CN202010591632A CN113840358B CN 113840358 B CN113840358 B CN 113840358B CN 202010591632 A CN202010591632 A CN 202010591632A CN 113840358 B CN113840358 B CN 113840358B
- Authority
- CN
- China
- Prior art keywords
- mobile terminal
- message
- message information
- filtering
- standby state
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
- 238000001914 filtration Methods 0.000 title claims abstract description 79
- 238000000034 method Methods 0.000 title claims abstract description 47
- 238000013515 script Methods 0.000 claims description 28
- 238000004590 computer program Methods 0.000 claims description 10
- 238000012544 monitoring process Methods 0.000 claims description 9
- 230000001960 triggered effect Effects 0.000 claims description 9
- 230000007246 mechanism Effects 0.000 claims description 8
- 238000012549 training Methods 0.000 claims description 6
- 230000008859 change Effects 0.000 claims description 5
- 238000013135 deep learning Methods 0.000 claims description 5
- 238000010586 diagram Methods 0.000 description 11
- 230000006870 function Effects 0.000 description 10
- 238000013136 deep learning model Methods 0.000 description 7
- 230000008569 process Effects 0.000 description 7
- 230000002618 waking effect Effects 0.000 description 6
- 238000004891 communication Methods 0.000 description 5
- 238000005516 engineering process Methods 0.000 description 5
- 101001121408 Homo sapiens L-amino-acid oxidase Proteins 0.000 description 4
- 102100026388 L-amino-acid oxidase Human genes 0.000 description 4
- 230000005540 biological transmission Effects 0.000 description 4
- 230000004044 response Effects 0.000 description 4
- 230000000737 periodic effect Effects 0.000 description 3
- 101100233916 Saccharomyces cerevisiae (strain ATCC 204508 / S288c) KAR5 gene Proteins 0.000 description 2
- 230000015572 biosynthetic process Effects 0.000 description 2
- 238000011161 development Methods 0.000 description 2
- 230000001788 irregular Effects 0.000 description 2
- 101000827703 Homo sapiens Polyphosphoinositide phosphatase Proteins 0.000 description 1
- 102100023591 Polyphosphoinositide phosphatase Human genes 0.000 description 1
- 101100012902 Saccharomyces cerevisiae (strain ATCC 204508 / S288c) FIG2 gene Proteins 0.000 description 1
- 238000013459 approach Methods 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 238000001514 detection method Methods 0.000 description 1
- 238000002474 experimental method Methods 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 230000005236 sound signal Effects 0.000 description 1
- 238000012360 testing method Methods 0.000 description 1
- 230000009466 transformation Effects 0.000 description 1
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W52/00—Power management, e.g. Transmission Power Control [TPC] or power classes
- H04W52/02—Power saving arrangements
- H04W52/0209—Power saving arrangements in terminal devices
- H04W52/0225—Power saving arrangements in terminal devices using monitoring of external events, e.g. the presence of a signal
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W52/00—Power management, e.g. Transmission Power Control [TPC] or power classes
- H04W52/02—Power saving arrangements
- H04W52/0209—Power saving arrangements in terminal devices
- H04W52/0261—Power saving arrangements in terminal devices managing power supply demand, e.g. depending on battery level
- H04W52/0274—Power saving arrangements in terminal devices managing power supply demand, e.g. depending on battery level by switching on or off the equipment or parts thereof
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D30/00—Reducing energy consumption in communication networks
- Y02D30/70—Reducing energy consumption in communication networks in wireless communication networks
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Mobile Radio Communication Systems (AREA)
- Telephone Function (AREA)
Abstract
本申请公开了一种移动终端的报文过滤方法、移动终端及计算机存储介质,该方法包括:获取报文信息;若移动终端处于待机状态,则判断报文信息是否会中断移动终端的待机状态;若是,则对报文信息进行过滤。通过上述方式,本申请能够降低移动终端功耗。
Description
技术领域
本申请涉及通信技术领域,特别是涉及一种移动终端的报文过滤方法、移动终端及计算机存储介质。
背景技术
随着通信技术的发展,网络传输信息越来越发达。报文未做网络传输的单位,传输过程中会不断的封装成分组、包、帧来传输。也即报文是网络中交换与传输的数据单元,即站点一次性要发送的数据块。
在移动终端处于待机过程中,往往通过接收报文来触发移动终端唤醒事件。由于报文的不定期发送等情况,使得移动终端的待机状态被中断,从而唤醒移动终端,进而使得处于待机状态的移动终端无法进入真正的待机状态,导致移动终端的高功耗问题。
发明内容
本申请实施例的第一方面提供了一种移动终端的报文过滤方法,该方法包括:获取报文信息;若移动终端处于待机状态,则判断报文信息是否会中断移动终端的待机状态;若是,则对报文信息进行过滤。
本申请实施例的第二方面提供了一种移动终端,包括:获取模块,用于获取报文信息;判断模块,连接获取模块,在移动终端处于待机状态时,用于判断报文信息是否会中断移动终端的待机状态;过滤模块,连接判断模块,在报文信息会中断移动终端的待机状态时,用于对报文信息进行过滤。
本申请实施例的第三方面提供了一种计算机可读存储介质,该计算机可读存储介质存储有计算机程序,其计算机程序能够被处理器执行时实现本申请实施例第一方面提供的方法。
本申请的有益效果是:区别于现有技术的情况,本申请针对移动终端待机状态下,对会中断移动终端的待机状态的报文信息进行过滤。由于移动终端在待机状态下一般处于低功耗工作状态,在这种低功耗状态下,一般的蓝牙、WiFi功能都处于开启状态,一些功能被禁止,但是报文的接收功能仍然有效,而蓝牙、WiFi等在开启状态下会接收到一些由路由器或其他网络设备或蓝牙设备发送的报文,而其中的部分报文会唤醒移动终端,中断移动终端的待机状态,即中断移动终端的低功耗工作状态。因此,通过上述方式,将那些会将移动终端从待机状态唤醒的报文过滤掉,能够有效避免移动终端待机状态下被唤醒,使移动终端在灭屏时能够保持低功耗状态,从而降低移动终端的功耗。
附图说明
为了更清楚地说明本申请实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本申请移动终端的报文过滤方法一实施例的流程示意图;
图2是图1所示的步骤S12的一具体实施方式的流程示意图;
图3是图1所示的步骤S11之前的一具体实施方式的流程示意图;
图4是图3所示的步骤S31之前的一具体实施方式的流程示意图;
图5是图1所示的步骤S12的另一具体实施方式的流程示意图;
图6是为移动终端配置过滤报文表格的流程示意图;
图7是本申请的移动终端一实施例的示意框图;
图8是本申请的移动终端另一实施例的示意框图;
图9是本申请的计算机可读存储介质一实施例的示意框图;
图10是本申请移动终端的一硬件架构的示意框图。
具体实施方式
以下描述中,为了说明而不是为了限定,提出了诸如特定系统结构、技术之类的具体细节,以便透彻理解本申请实施例。然而,本领域的技术人员应当清楚,在没有这些具体细节的其它实施例中也可以实现本申请。在其它情况中,省略对众所周知的系统、装置、电路以及方法的详细说明,以免不必要的细节妨碍本申请的描述。
应当理解,当在本说明书和所附权利要求书中使用时,术语“包括”指示所描述特征、整体、步骤、操作、元素和/或组件的存在,但并不排除一个或多个其它特征、整体、步骤、操作、元素、组件和/或其集合的存在或添加。
还应当理解,在此本申请说明书中所使用的术语仅仅是出于描述特定实施例的目的而并不意在限制本申请。如在本申请说明书和所附权利要求书中所使用的那样,除非上下文清楚地指明其它情况,否则单数形式的“一”、“一个”及“该”意在包括复数形式。
还应当进一步理解,在本申请说明书和所附权利要求书中使用的术语“和/或”是指相关联列出的项中的一个或多个的任何组合以及所有可能组合,并且包括这些组合。
如在本说明书和所附权利要求书中所使用的那样,术语“如果”可以依据上下文被解释为“当...时”或“一旦”或“响应于确定”或“响应于检测到”。类似地,短语“如果确定”或“如果检测到[所描述条件或事件]”可以依据上下文被解释为意指“一旦确定”或“响应于确定”或“一旦检测到[所描述条件或事件]”或“响应于检测到[所描述条件或事件]”。
为了说明本申请所述的技术方案,下面通过具体实施例来进行说明。
请参见图1,图1是申请移动终端的报文过滤方法第一实施例的流程示意图。本实施例提供的方法具体包括以下步骤:
S11:获取报文信息;
一般来说,移动终端都设置有报文信息接收协议,当报文信息发送到移动终端上时,可以获取到报文信息的版本、报头、标识、数据长度以及协议等。移动终端连接的设备不同,移动终端所获得的报文信息也相应不同。以连接WiFi(wireless fidelity)热点为例,移动终端可以获取的报文信息至少包括互联网协议第四版本多射(Internet ProtocolVersion 4 multicast,IPv4 multicast)报文信息、互联网协议第六版本多射(InternetProtocol Version 6multicast,IPv6 multicast)报文信息以及)互联网组管理协议第三版本组播(Internet Group Management Protocol Version 3 Membership Query,IGMPv3Membership Query)报文信息中的一种。
此外,当移动终端连接路由器时,比如荣耀WS83路由器,可以按照该荣耀WS83路由器的协议来获取报文信息。当然,本领域技术人员可以通过本领域公知的其他方式来获取报文信息。
S12:若移动终端处于待机状态,则判断报文信息是否会中断移动终端的待机状态;
移动终端预设有待机状态,用于动终端从亮屏切换为睡眠时,执行待机模式。移动终端如何从亮屏状态切换为待机状态将在下文进行过详细描述。当然本领域技术人员在本申请的技术启示下完全可以想到根据实际需要设置移动终端的切换状态。
若移动终端处于待机状态,则判断报文信息是否会中断移动终端的待机状态,若确定会中断移动终端的待机状态,则进入步骤S13,若确定不会中断移动终端的待机状态,则返回步骤S11。进一步,在确定会中断移动终端的待机状态后还可以产生相应的控制信号,以通知移动终端执行相应的操作。
S13:对报文信息进行过滤。
对于会中断移动终端的待机状态的报文信息,可以通过过滤的方式将报文信息屏蔽,也可以通过删除的方式对报文信息进行过滤,还可以通过其它方式进行过滤,具体此处不做限定。
通过上述方式,本申请针对移动终端待机状态下,对会中断移动终端的待机状态的报文信息进行过滤。通过上述方式,能够有效避免移动终端待机状态下报文信息唤醒移动终端的频繁触发,从而降低移动终端的功耗。
区别于现有技术的情况,本申请针对移动终端待机状态下,对会中断移动终端的待机状态的报文信息进行过滤。由于移动终端在待机状态下一般处于低功耗工作状态,在这种低功耗状态下,一般的蓝牙、WiFi功能都处于开启状态,一些功能被禁止,但是报文的接收功能仍然有效,而蓝牙、WiFi等在开启状态下会接收到一些由路由器或其他网络设备或蓝牙设备发送的报文,而其中的部分报文会唤醒移动终端,中断移动终端的待机状态,即中断移动终端的低功耗工作状态。因此,通过上述方式,将那些会将移动终端从待机状态唤醒的报文过滤掉,能够有效避免移动终端待机状态下被唤醒,使移动终端在灭屏时能够保持低功耗状态,从而降低移动终端的功耗。
请参见图2,图2是图1所示的步骤S12的一具体实施方式的流程示意图,具体包括以下步骤:
S21:监听报文信息的标识;
在图1所示的步骤S11中可知,移动终端因为连接的设备不同以及接收报文信息的协议不同,所监听到的报文信息的标识就不同。因此监听报文信息的标识尤为重要,报文信息的标识不同,意味着唤醒移动终端的层次也不同。
S22:根据标识,判断报文信息是否会唤醒移动终端的kernel底层;
对于监听获取的报文信息的标识,不一定均会唤醒处于待机状态的移动终端,唤醒移动终端需要报文信息的标识可以到达移动终端的内核层,也即移动终端的kernel底层。
经过实际的检验,当监听到标识至少包括连接操作(CONNECTIVITY_ACTION)标识、WiFi状态已启用(WIFI_STATE_ENABLED)标识以及WiFi状态已禁用(WIFI_STATE_DISABLED)标识中的任意一种时,则可判定移动终端会被唤醒,使得移动终端无法真正处于待机状态。
若确定报文信息会唤醒移动终端的kernel底层,则进入步骤S23;若确定报文信息不会唤醒移动终端的kernel底层,则返回步骤S21,继续监听获取的报文信息的标识。
S23:确定报文信息会中断移动终端的待机状态。
因此,通过报文信息的标识判断报文信息是否会唤醒移动终端的kernel底层,则确定报文信息会中断移动终端的待机状态,可以提升方案的实现性。当然,本领域技术人员可以通过本领域公知的其他方式来判断报文信息是否会唤醒移动终端的kernel底层。
请参见图3,图3是图1所示的步骤S11之前的一具体实施方式的流程示意图,包括以下步骤:
S31:监控移动终端是否从亮屏状态切换为待机状态;
通常来说,移动终端有开机状态、待机状态、亮屏状态、休眠状态以及工作状态等状态。其中,待机状态指移动开机但是不进行任何实质性工作的状态,也即不对文件和程序的进行各种操作。
待机状态是将当前处于运行状态的数据保存在内存中,移动终端只对内存供电,而硬盘、屏幕和CPU等部件则停止供电。由于数据存储在速度快的内存中,因此进入等待状态和唤醒的速度比较快。
在获取报文信息之前,移动终端是否为待机状态,对于确定报文信息是否会中断移动终端的待机状态尤为重要。因此,需要监控移动终端是否从亮屏状态切换为待机状态;其中,待机状态至少包括灭屏状态或睡眠状态。
S32:修改报文过滤脚本的状态属性值,并配置报文过滤脚本,以使报文过滤脚本开始运行。
若移动终端从亮屏状态切换为待机状态,可以修改报文过滤脚本的状态属性值,并配置报文过滤脚本,以使报文过滤脚本开始运行。
若移动终端处于亮屏状态,则进入步骤S33。
S33:判定为不满足修改报文过滤脚本的触发条件。
当移动终端处于亮屏状态,说明不需要触发修改报文过滤脚本的条件,可以继续执行亮屏状态下可执行的操作。
请参见图4,图4是图3所示的步骤S31之前的一具体实施方式的流程示意图,包括以下步骤:
S41:在移动终端灭屏时,触发广播机制;
当移动终端从亮屏状态切换为待机状态,也即移动终端灭屏时,触发广播机制。移动终端会即使通知内部其他运行器件进行相应操作,比如将当前状态的数据保存于内存中,从而使得移动终端快速进入到睡眠状态。
S42:监听基于广播机制播出的广播;
基于监听广播机制播出的广播,各个运行器件接收到灭屏信号。
S43:基于监听到的广播,改变init.rc脚本中的设置属性为待机属性;
当移动终端init.rc脚本接收到灭屏信号时,可以通过改变init.rc脚本中的设置属性为待机属性。
S44:基于待机属性切换移动终端为待机状态。
当通过改变init.rc脚本中的设置属性为待机属性,移动终端灭屏切换成待机状态。
请参见图5,图5是图1所示的步骤S12的另一具体实施方式的流程示意图,包括以下步骤:
S51:基于报文过滤脚本判断报文信息类别;
基于图4运行的过滤脚本,说明移动终端此时对不定期的会中断移动终端待机状态的报文信息可以进行过滤,在上文图1所示的步骤S11可知,基于接收协议的不同,报文信息的报头以及标识不同,同样报文信息类别也不同,因此,基于报文过滤脚本可以判断并确定报文信息类别。
S52:若报文信息会唤醒kernel底层,则基于报文信息类别查询预先设置的过滤报文表格;
若报文信息会唤醒kernel底层,则认为该报文信息的类型满足过滤脚本中的报文信息,需要被过滤,对于报文信息是否需要过滤,还需要进行比对和检索,在获取报文信息之前,移动终端配置有过滤报文表格,该表格记录了大部分在移动终端处于待机状态下需要过滤的报文信息。
所以基于报文信息类别查询可以预先设置的过滤报文表格,以判断获取的报文信息是否与过滤报文表格的报文信息重合,也即查询获取的报文信息是否满足需要过滤的需求。
S53:判断获取的报文信息是否与过滤报文表格的报文信息重合;
通过查询预先设置的过滤报文表格,检索和比对获取的报文信息,可以判断获取的报文信息是否与过滤报文表格的报文信息重合,若重合,则进入步骤S54,若不重合,则确定报文信息不会中断移动终端的待机状态。
S54:确定报文信息会中断移动终端的待机状态。
请参见图6,图6是为移动终端配置过滤报文表格的流程示意图,包括以下步骤:
S61:基于协议规定的过滤报文表格获取多个报文信息;其中,协议至少包括路由器协议或WiFi热点协议中的一种,多个报文信息至少包括IPv4、IPv6以及IGMPv3组播报文中的至少一种;
在如图5所示的步骤S52中可知,在获取报文信息之前,移动终端配置有过滤报文表格。对于过滤报文表格的形成,是基于以前获取的多个报文信息的基础上统一归纳总结得来的。
因为连接的设备不同,协议不同,基于协议规定所获取的报文信息也就不同,因此对于过滤报文表格的形成,可以基于协议规定的过滤报文表格获取多个报文信息;其中,协议至少包括路由器协议或WiFi热点协议中的一种,多个报文信息至少包括IPv4、IPv6以及IGMPv3组播报文中的至少一种。
此外,当移动终端连接其它设备时,比如客户前置设备(Customer PremiseEquipment,CPE),可以按照该CPE的协议来获取多个报文信息,以统一归纳形成过滤报文表格。当然,本领域技术人员可以通过本领域公知的其他协议或方式来获取多个报文信息。
S62:将多个报文信息以枚举的方式放入过滤报文表格;
对于获取的多个报文信息,可以将多个报文信息以枚举的方式放入过滤报文表格,还可以以比对匹配的方式放入过滤报文表格,还可以以检索置换的方式放入过滤报文表格,具体此处不做限定。
S63:通过深度学习和训练更新过滤报文表格。
随着网络通信的技术发展,通信协议的更新和推进,报文的形式也会越来越呈现多样性和个性化,所以通过深度学习和训练更新过滤报文表格就显得尤为重要。对于如何深度学习和训练更新过滤报文表格,以下进行详细说明,包括以下步骤:
1、预先建立一个深度学习模型;
根据过滤报文表格的通用模板,预先建立一个深度学习模型,该深度学习模型具备过滤报文表格通用模板所表达的数据和逻辑,还具备个性化学习的学习能力,以满足日益发展的报文通信技术。
2、将过滤报文表格中的报文输入到深度学习模型中进行学习训练;
基于预先建立的深度学习模型,可以将过滤报文表格中的报文输入到深度学习模型中,让模型学习到什么类型的报文可以屏蔽,什么类型的报文不可以屏蔽。
3、当有新的报文来时,输入至该深度学习模型,模型根据之前的学习可以自行判断该报文是否需要屏蔽,如需要,则加入到过滤报文表格中,以完成对过滤报文表格的更新。
下文将结合具体的应用场景对本申请的报文过滤方法进行详细描述。
目前,选取连接WiFi路由热点来获取报文信息,并基于Kernel底层来进行唤醒待机状态的移动终端等操作。因wifi路由热点某类报文不定期发送,假如WiFi待机8小时耗电23%,则平均耗电2.875%。从日志分析入手发现kernel底层经常性中断唤醒,如下:
02-13 03:57:01.381 0 0 W gic_show_resume_irq:178 triggered wcnss_wlan。
再分析上层安卓(android)日志:WiFi两分钟一次类似log,如下:
02-13 03:57:01.500 704 762 I WifiService:requestActivityInfo uid=1000
02-13 03:57:01.500 704 762 I WifiService:reportActivityInfo uid=1000
02-13 03:57:01.501 704 762 I WifiService:getSupportedFeatures uid=1000
经过进一步分析,定位是因为连接了荣耀WS83荣耀路由器导致的,而手机热点没有复现,2台手表(W3/W5)连路由有问题,连热点没有问题。进一步抓日志定位问题:发现Membership Query在WLAN侧是单播报文(目的地址就是DUT的MAC地址),而且它确实会唤醒整个系统。kernel log://SN是sequence number,kernel log显示被sn是26的报文唤醒,其中SN=[26]的代码以及附近内核日志如下:
02-18 13:39:29.704 0 0 W gic_show_resume_irq:178triggered wcnss_wlan
02-18 13:39:29.718 0 0 I:[qca]>>>WDTS_RxPacket:type 2subtype8SN=[26]
…
02-18 13:41:34.750 0 0 W gic_show_resume_irq:178 triggered wcnss_wlan
02-18 13:41:34.765 0 0 I:[qca]>>>WDTS_RxPacket:type 2 subtype8SN=[27]
…
02-18 13:43:39.788 0 0 W gic_show_resume_irq:178 triggered wcnss_wlan
02-18 13:43:39.805 0 0 I:[qca]>>>WDTS_RxPacket:type 2 subtype8SN=[36]
…
02-18 13:45:44.798 0 0W gic_show_resume_irq:178 triggered wcnss_wlan
02-18 13:45:44.813 0 0 I:[qca]>>>WDTS_RxPacket:type 2 subtype8SN=[37]
…
02-18 14:00:19.713 0 0W gic_show_resume_irq:178 triggered wcnss_wlan
02-18 14:00:19.727 0 0 I:[qca]>>>WDTS_RxPacket:type 2 subtype8SN=[44]
结合空口sniff日志,如下:
223684 2020-02-18 13:39:33.611870 192.168.3.1 224.0.0.1 IGMPv3 12026Membership Query,general
261935 2020-02-18 13:41:38.654821 192.168.3.1 224.0.0.1 IGMPv3 12027Membership Query,general
…
302872 2020-02-18 13:43:43.689287 192.168.3.1 224.0.0.1 IGMPv3 12036Membership Query,general
338801 2020-02-18 13:45:48.696723 192.168.3.1 224.0.0.1 IGMPv3 12037Membership Query,general
…
575619 2020-02-18 14:00:23.588175 192.168.3.1 224.0.0.1 IGMPv3 12044Membership Query,general
因此,因为存在批量的IGMPv3 Membership Query报文周期的拉起设备,唤醒移动终端,从而无法真正的睡眠下去。
对于过滤IPv4、IPv6、IGMPv3组播报文的命令,如下:
1.IPv6 multicast
iwpriv wlan0 setPktFilter 1 1 3 1 5 0 1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 00 2 3 6 2 134 221 0 0 0 0 0 0 0 0 0 0 0 0 0 0 3 4 24 2 255 0 0 0 0 0 0 0 2550 0 0 0 0 0 0
2.IPv4 multicast
iwpriv wlan0 setPktFilter 1 2 3 1 5 0 1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 00 2 3 6 2 8 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 3 4 16 1 224 0 0 0 0 0 0 0 240 0 00 0 0 0 0
3.IGMPV3
iwpriv wlan0 setPktFilter 1 6 3 1 5 0 1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 00 3 3 9 1 2 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 3 3 24 1 17 0 0 0 0 0 0 0 0 0 0 0 00 0 0
理解过滤报文命令的分析:
iwpriv wlan0 setPktFilter 1(filterAction)6(filterId,该设置不设限制,设置为1也可)3(numParams)
1(protocolLayer,1for MAC header)5(cmpFlag)0(dataOffset)1(datalength)10 0 0 0 0 0 0(compareData)0 0 0 0 0 0 0 0(dataMask)//过滤单播报文
3(protocolLayer,3for IPV4 header)3(cmpFlag)9(dataOffset,偏移9个字节,正好是IPV4报文头的Protocol字段)1(datalength)2 0 0 0 0 0 0 0(compareData,2代表IGMP报文)0 0 0 0 0 0 0 0(dataMask)//过滤单播IGMP报文
3(protocolLayer,3for IPV4 header)3(cmpFlag)24(dataOffset,从IPV4报文头偏移24个字节,正好是IGMP报文头的Type字段)1(datalength)17 0 0 0 0 0 0 0(compareData,17代表Membership Query)0 0 0 0 0 0 0 0(dataMask)//过滤单播Membership Query报文。
在现实工程上,使用上述命令并不能很好地屏蔽报文信息。经过反复的试验,在连接热点之后,输入此类过滤报文的命令才能真正地屏蔽这些报文,从而在移动终端在睡眠状态下、连接WiFi的情况下,不定时的报文信息不会唤醒移动终端,从而达到降低功耗,提高电池的利用效率。于是在代码中当实现了当监听到CONNECTIVITY_ACTION和WIFI_STATE_ENABLED、WIFI_STATE_DISABLED做相应的属性改变,从而通过init.rc脚本文件因为属性改变,而调用另外一个autochmod进程进行命令设置,从而达到过滤报文的目的。
具体地,首先通过移动终端相关的操作,动态监控到手机的亮屏、灭屏、睡眠等状态的改变,当状态改变时,通过属性值的修改动态执行相关配置脚本的执行,也即灭屏触发广播机制,监听基于广播机制播出的广播,基于监听到的广播,改变init.rc脚本的设置属性为待机属性,移动终端切换为待机状态,该待机属性基于待机状态连带改变过滤脚本。
类似iwpriv命令带数字的操作,iwpriv命令里设置相对应操作找到报文后再做自适配,通过属性的改变触发相关自适配的脚本运行再调整已有的方法,如下:
lo no private ioctls.----lo无私有命令
eth2 no private ioctls..----eth2无私有命令
eth3 no private ioctls..----eth3无私有命令
ra0 Available private ioctls:.----ra0有私有命令
另外,iwpriv命令设置如下:
set(8BE2):set 1024char&get 0
ipv4_matinfo(0001):set 1024 char&get 2047 char
ipv6_matinfo(0002):set 1024 char&get 2047 char
cloneMAC(0003):set 1024 char&get 2047 char
connStatus(0004):set 1024 char&get 2047 char
driverVer(0005):set 1024 char&get 2047 char
bainfo(0006):set 1024 char&get 2047 char
descinfo(0007):set 1024 char&get 2047 char
get_wps_pin_ap(0008):set 1024 char&get 2047 char
在执行时,找到获取的报文,通过执行脚本,在获取之前配置过滤报文表格,该过滤报文表格可以处理的无用且需要过滤的报文。查询获取的报文。当过滤报文表格中的报文和获取的报文重合时,则开始过滤。
这样能通过动态配置过滤报文信息,达到屏蔽因为连接某些路由器而出现的周期性的报文。从而实现设备快速进入睡眠,真正的进入到低功耗待机状态。
此外,还需要改变相关的selinux权限问题,对udp_socket、socket的ioctl权限操作命令如下:
allowxperm autochmod self:udp_socket ioctl priv_sock_ioctls;
allowxperm autochmod self:udp_socket ioctl SIOCIWFIRSTPRIV_17;
allow autochmod autochmod:udp_socket{create ioctl};
allow autochmod autochmod:socket{create ioctl};
allow autochmod autochmod:appletalk_socket{create ioctl};
也正是通过这样的设置方法,达到了动态过滤报文的目的,即在连接热点或路由器时,可以执行过滤报文信息,而当断链热点时,又恢复会正常状态。
在连接WiFi进入待机的情况下,降低功耗使用3%以上。因此,通过命令动态设置Wifi报文的过滤,过滤不需要的热点报文,尤其是周期性的唤醒报文。这样能更好的达到电池使用效率,移动终端也能快速进入到睡眠状态,不会因为WiFi路由设备不定期的发送一些不需要的报文信息,比如周期性报文、热点报文而唤醒移动终端。此外还能提高电池的使用寿命,以及移动终端的寿命,不至于因为连接某些热点的情况下,无法进入真正的睡眠低功耗情况。
请参见图7,图7是本申请实施例一种移动终端的结构示意图。本申请实施例提供了一种移动终端7,包括:
获取模块71,用于获取报文信息;
判断模块72,连接获取模块71,在移动终端7处于待机状态时,用于判断报文信息是否会中断移动终端7的待机状态;
过滤模块73,连接判断模块72,在报文信息会中断移动终端7的待机状态时,用于对报文信息进行过滤。
通过上述方式,针对移动终端7待机状态下,对会中断移动终端7的待机状态的报文信息进行过滤。由于移动终端7在待机状态下一般处于低功耗工作状态,在这种低功耗状态下,一般的蓝牙、WiFi功能都处于开启状态,一些功能被禁止,但是报文的接收功能仍然有效,而蓝牙、WiFi等在开启状态下会接收到一些由路由器或其他网络设备或蓝牙设备发送的报文,而其中的部分报文会唤醒移动终端7,中断移动终端7的待机状态,即中断移动终端7的低功耗工作状态。因此,通过上述方式,将那些会将移动终端7从待机状态唤醒的报文过滤掉,能够有效避免移动终端7待机状态下被唤醒,使移动终端7在灭屏时能够保持低功耗状态,从而降低移动终端7的功耗。
进一步地,请参见图8,图8是本申请实施例另一种移动终端的结构示意图。本申请实施例提供一种移动终端8,包括:处理器81、存储器82以及存储在存储器中并在处理器上运行的计算机程821,处理器81用于执行计算机程序821以实现本申请实施例第一方面提供的方法的步骤,在此不再赘述。
参阅图9,图9是本申请的计算机可读存储介质一实施例的示意框图。如果以软件功能单元的形式实现并作为独立的产品销售或使用时,计算机程序201可以存储在计算机可读存储介质200中。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储装置中,包括若干指令(计算机程序201)用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)或处理器(processor)执行本申请各个实施方式方法的全部或部分步骤。而前述的存储装置包括:U盘、移动硬盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种介质以及具有上述存储介质的电脑、手机、笔记本电脑、平板电脑、相机等电子设备。
关于具有存储功能的装置中的程序数据的执行过程的阐述可以参照上述本申请移动终端的报文过滤方法实施例中阐述,在此不再赘述。
请参阅图10,图10是本申请移动终端的一硬件架构的示意框图,该移动终端设备可以为智能手表、手机、平板电脑、笔记本电脑以及可穿戴设备等,本实施例图示以智能手表为例。该终端设备900的结构可以包括射频(radio frequency,RF)电路910、存储器920、输入单元930、显示单元940、传感器950、音频电路960、WiFi(wireless fidelity)模块970、处理器180以及电源190等。其中,RF电路910、存储器920、输入单元930、显示单元940、传感器950、音频电路960以及WiFi模块970分别与处理器980连接;电源990用于为整个终端设备900提供电能。
具体而言,RF电路910用于接发信号;存储器920用于存储数据指令信息;输入单元930用于输入信息,具体可以包括触控屏931以及操作按键等其他输入设备932;显示单元940则可以包括显示面板等;传感器950包括红外传感器、激光传感器等,用于检测用户接近信号、距离信号等;扬声器961以及传声器(或者麦克风)962通过音频电路960与处理器980连接,用于接发声音信号;WiFi模块970则用于接收和发射WiFi信号,处理器980用于处理移动终端设备的数据信息。
以上所述仅为本申请的部分实施例,并非因此限制本申请的保护范围,凡是利用本申请说明书及附图内容所作的等效装置或等效流程变换,或直接或间接运用在其他相关的技术领域,均同理包括在本申请的专利保护范围内。
Claims (6)
1.一种移动终端的报文过滤方法,其特征在于,所述方法包括:
获取报文信息;
若所述移动终端处于待机状态,则判断所述报文信息是否会中断所述移动终端的待机状态;包括:基于报文过滤脚本判断所述报文信息类别;若所述报文信息会唤醒kernel底层,则基于所述报文信息类别查询预先设置的过滤报文表格;判断获取的所述报文信息是否与所述过滤报文表格的报文信息重合;若是,则确定所述报文信息会中断所述移动终端的待机状态;
在所述获取报文信息之前,所述方法还包括:
基于协议规定的过滤报文表格获取多个报文信息;其中,所述协议至少包括路由器协议或WiFi热点协议中的一种,所述多个报文信息至少包括IPv4、IPv6以及IGMPv3组播报文中的至少一种;将所述多个报文信息以枚举的方式放入所述过滤报文表格;通过深度学习和训练更新所述过滤报文表格;
若是,则对所述报文信息进行过滤。
2.根据权利要求1所述的方法,其特征在于,在所述获取报文信息之前,还包括:
监控所述移动终端是否从亮屏状态切换为待机状态;
若是,则修改报文过滤脚本的状态属性值,并配置所述报文过滤脚本,以使所述报文过滤脚本开始运行。
3.根据权利要求2所述的方法,其特征在于,所述监控所述移动终端是否从亮屏状态切换为待机状态之前,还包括:
在所述移动终端灭屏时,触发广播机制;
监听基于所述广播机制播出的广播;
基于监听到的所述广播,改变init.rc脚本中的设置属性为待机属性;
基于所述待机属性切换所述移动终端为待机状态。
4.一种移动终端,其特征在于,包括:
获取模块,用于获取报文信息;
判断模块,连接所述获取模块,在所述移动终端处于待机状态时,用于判断所述报文信息是否会中断所述移动终端的待机状态;具体包括:基于报文过滤脚本判断所述报文信息类别;若所述报文信息会唤醒kernel底层,则基于所述报文信息类别查询预先设置的过滤报文表格;判断获取的所述报文信息是否与所述过滤报文表格的报文信息重合;若是,则确定所述报文信息会中断所述移动终端的待机状态;
在所述获取报文信息之前,还包括:
基于协议规定的过滤报文表格获取多个报文信息;其中,所述协议至少包括路由器协议或WiFi热点协议中的一种,所述多个报文信息至少包括IPv4、IPv6以及IGMPv3组播报文中的至少一种;将所述多个报文信息以枚举的方式放入所述过滤报文表格;通过深度学习和训练更新所述过滤报文表格;
过滤模块,连接所述判断模块,在所述报文信息会中断所述移动终端的待机状态时,用于对所述报文信息进行过滤。
5.一种移动终端,其特征在于,包括:处理器和存储器,所述存储器中存储有计算机程序,所述处理器用于执行所述计算机程序以实现权利要求1-3中任一项所述的报文过滤方法。
6.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质存储有计算机程序,所述计算机程序能够被处理器执行时实现如权利要求1-3中任一项所述的报文过滤方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010591632.5A CN113840358B (zh) | 2020-06-24 | 2020-06-24 | 报文过滤方法、移动终端及计算机可读存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010591632.5A CN113840358B (zh) | 2020-06-24 | 2020-06-24 | 报文过滤方法、移动终端及计算机可读存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN113840358A CN113840358A (zh) | 2021-12-24 |
CN113840358B true CN113840358B (zh) | 2024-10-29 |
Family
ID=78964766
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010591632.5A Active CN113840358B (zh) | 2020-06-24 | 2020-06-24 | 报文过滤方法、移动终端及计算机可读存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113840358B (zh) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115063946A (zh) * | 2022-03-28 | 2022-09-16 | 北京小米移动软件有限公司 | 地震信息提醒方法、装置、路由器、电子设备及存储介质 |
CN118075847A (zh) * | 2022-11-24 | 2024-05-24 | 荣耀终端有限公司 | 一种降低功耗的方法及电子设备 |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106055073A (zh) * | 2016-05-31 | 2016-10-26 | 广东欧珀移动通信有限公司 | 一种基于亮屏锁的处理方法和装置 |
Family Cites Families (16)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102624566A (zh) * | 2012-03-20 | 2012-08-01 | 华为技术有限公司 | 唤醒呼叫类终端的方法、装置及系统 |
CN102841674B (zh) * | 2012-07-25 | 2015-02-04 | 中国科学院上海微系统与信息技术研究所 | 基于新型存储器的嵌入式系统及其进程的休眠与唤醒方法 |
JP5836491B2 (ja) * | 2012-08-24 | 2015-12-24 | ▲華▼▲為▼終端有限公司Huawei Device Co., Ltd. | 端末の立ち上がり周期を調整する方法、装置、端末、コンピュータプログラム及び記憶媒体 |
CN109803359B (zh) * | 2013-11-15 | 2022-05-31 | 华为终端有限公司 | 一种唤醒终端系统的方法及终端 |
US9648564B1 (en) * | 2014-03-26 | 2017-05-09 | Amazon Technologies, Inc. | Wake-up management for mobile devices |
CN105183352B (zh) * | 2015-09-01 | 2018-12-11 | 广东欧珀移动通信有限公司 | 一种在终端黑屏状态下实现更多手势识别的方法及装置 |
CN105338177B (zh) * | 2015-09-30 | 2018-10-19 | 小米科技有限责任公司 | 信息延迟广播方法及装置 |
CN105979088B (zh) * | 2016-05-06 | 2020-02-04 | 北京小米移动软件有限公司 | 消息推送方法及装置 |
CN107231679B (zh) * | 2017-06-20 | 2020-04-14 | 维沃移动通信有限公司 | 一种数据包处理方法及移动终端 |
CN107395889B (zh) * | 2017-07-28 | 2020-01-21 | Oppo广东移动通信有限公司 | 降低移动终端功耗的方法、装置、存储介质及移动终端 |
CN107734610B (zh) * | 2017-09-15 | 2020-11-13 | 维沃移动通信有限公司 | 消息处理方法、移动终端及计算机可读存储介质 |
WO2019109557A1 (zh) * | 2017-12-06 | 2019-06-13 | 华为技术有限公司 | 一种降低耗电的方法和设备 |
CN109219116B (zh) * | 2018-08-09 | 2022-05-31 | 华为技术有限公司 | 一种终端设备的休眠方法及装置 |
CN110881212B (zh) * | 2019-12-09 | 2023-08-25 | Oppo广东移动通信有限公司 | 设备省电的方法、装置、电子设备及介质 |
CN111314372A (zh) * | 2020-03-04 | 2020-06-19 | 海信视像科技股份有限公司 | 一种显示设备唤醒的方法、控制终端、服务器及显示设备 |
CN113453321A (zh) * | 2020-03-27 | 2021-09-28 | 北京小米移动软件有限公司 | 一种终端唤醒处理方法、装置及介质 |
-
2020
- 2020-06-24 CN CN202010591632.5A patent/CN113840358B/zh active Active
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106055073A (zh) * | 2016-05-31 | 2016-10-26 | 广东欧珀移动通信有限公司 | 一种基于亮屏锁的处理方法和装置 |
Also Published As
Publication number | Publication date |
---|---|
CN113840358A (zh) | 2021-12-24 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10285128B2 (en) | Method and apparatus for waking up devices in batches, and device | |
WO2021093598A1 (zh) | 一种功耗控制方法及设备 | |
WO2021047390A1 (zh) | 一种降低功耗的方法及移动终端 | |
US20150215863A1 (en) | Network card device, routing device, system and method for realizing dynamic sleep and wakeup | |
JP2015043225A (ja) | ネットワークアクセスモジュールの電源管理方法及び装置 | |
CN113840358B (zh) | 报文过滤方法、移动终端及计算机可读存储介质 | |
US8407332B1 (en) | System and method for in-network power management | |
CN110636597A (zh) | 设备的无线接口的管理方法和相应的无线设备 | |
WO2021103893A1 (zh) | 一种无线保真wifi芯片控制方法及其相关设备 | |
CN111935517B (zh) | 一种智能机顶盒的唤醒方法、装置、电子设备及存储介质 | |
US10945207B2 (en) | Beacon signal processing system and filtering method of reducing wake-up frequency | |
US20200288403A1 (en) | Smart power saving method for terminal, terminal, and device having memory function | |
CN110022596B (zh) | 一种终端待机状态的配置方法、装置及管理平台 | |
CN112272332B (zh) | 一种智能机顶盒的唤醒方法、装置、电子设备及存储介质 | |
CN112616176B (zh) | 设备的唤醒方法及装置、控制方法及装置 | |
US10772041B2 (en) | Beacon signal processing system | |
CN113014898A (zh) | 投影仪唤醒控制方法、投影仪及可读存储介质 | |
WO2014169647A1 (zh) | 移动设备省电控制方法、装置及移动设备、主机终端 | |
WO2019024173A1 (zh) | 一种批量管理物联网终端设备省电的方法、及中继设备 | |
CN118075847A (zh) | 一种降低功耗的方法及电子设备 | |
CN109379449B (zh) | 数据连接方法、装置、终端及存储介质 | |
CN107645405A (zh) | 用来进行唤醒管理的方法与装置 | |
CN106714281A (zh) | 设备唤醒方法、系统和设备 | |
US20210157384A1 (en) | Assigning power sources | |
WO2024140383A1 (zh) | 信号检测结果处理方法、装置及终端 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |