CN110417621B - 一种轻量级嵌入式***异常运行状态检测方法 - Google Patents
一种轻量级嵌入式***异常运行状态检测方法 Download PDFInfo
- Publication number
- CN110417621B CN110417621B CN201910677912.5A CN201910677912A CN110417621B CN 110417621 B CN110417621 B CN 110417621B CN 201910677912 A CN201910677912 A CN 201910677912A CN 110417621 B CN110417621 B CN 110417621B
- Authority
- CN
- China
- Prior art keywords
- abnormal
- value
- task
- frequency
- calculating
- 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
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L43/00—Arrangements for monitoring or testing data switching networks
- H04L43/08—Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters
- H04L43/0805—Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters by checking availability
- H04L43/0817—Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters by checking availability by checking functioning
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L43/00—Arrangements for monitoring or testing data switching networks
- H04L43/16—Threshold monitoring
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W24/00—Supervisory, monitoring or testing arrangements
- H04W24/06—Testing, supervising or monitoring using simulated traffic
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W84/00—Network topologies
- H04W84/18—Self-organising networks, e.g. ad-hoc networks or sensor networks
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Environmental & Geological Engineering (AREA)
- Complex Calculations (AREA)
- Debugging And Monitoring (AREA)
Abstract
Description
技术领域
本发明涉及在无线传感器网络环境下的嵌入式***检测领域,尤其涉及一种轻量级嵌入式***异常运行状态检测方法,检测程序执行过程中出现的异常行为。
背景技术
无线传感器网络是物联网的重要组成部分,无线传感器网络被部署在真实的物理世界中以获取物理世界的信息,这种紧密的嵌入到物理世界的部署方式,使得无线传感器网络的大范围应用面临众多挑战。通常,无线传感器网络的部署的环境较为恶劣,为了提高无线传感器网络的可用性,人们需要更加有效、便捷的无线传感器网络状态监测与异常诊断工具,而无线传感器网络部署后的状态监测和异常诊断目前而言是十分困难的。
无线传感器网络运行异常可以分为两类:当节点因为某些程序缺陷或者硬件固有缺陷导致节点的行为与预期不符合,这种异常通常需要无线传感器网络开发设计人员提高其软件质量或者完善其硬件的可靠性;无线传感器网络在部署后,由于外界环境不可抗力的影响,使无线传感器网络表现出与预期不符合的行为,这种异常的根本原因与软件或者硬件本身无关,而是与节点所处环境的变化有关系,这种异常的检测和诊断更为复杂。
目前,关于传感器网络异常检测和诊断的方法有:利用感知节点的测量值,从邻居节点与诊断节点在正常情况下的差异与异常情况下的不同来进行故障分析,该方法从网络整体上来进行故障预测,用于检测故障节点。建立故障特征与故障之间的映射关系,通过子网表决获得诊断结果,其从节点行为上来诊断节点故障是否为故障节点。另外,还有从静态代码中提取程序的执行模型并检查程序可能存在的异常行为的方法。
以上所述的这些现有技术当中,感知节点异常检测方法不能够准确定位故障在源代码中的位置,或者无法发现源代码在执行状态下的异常,存在较为明显的缺陷。
发明内容
针对上述现有技术当中存在的问题,本发明的目的在于:提供一种轻量级嵌入式***异常运行状态检测方法,这种异常运行状态检测方法根据节点执行程序的信息对节点进行异常检测,能够有效地检测到在程序执行过程中出现的异常行为,且该方法操作方便,能准确定位异常序列,提高了异常处理的有效性,并且对任务程序的入侵性较小。
为实现上述目的,本发明有如下技术方案:
包括以下步骤:
获取正常状态下节点任务执行序列;
统计所有任务的一步转移频数Mij,选择得到高频次任务转移组合的集合M;
建立假设检验的方法;
设定任务窗口值w和u检验统计的样本数量n0,计算所有窗口w内每组高频次任务转移的均值μ0;设定期望的异常检测置信概率α,根据α查询标准正态分布函数表得到计算异常值l;根据l与异常判别式对应的异常检测代码一并插装到应用源代码相应位置,从而检测应用运行是否出现异常;其中,M,w,μ0,采用硬编码的方式编入异常检测代码。
优选的,在感知节点部署前进行测试,将最终测试结果作为期望的正常状态下节点任务执行序列。
优选的,统计所有任务的一步转移频数Mij具体如下:
在节点任务执行序列中,节点从处于执行任务ti状态,经过N次任务转移处于执行任务ti+N状态的频数称为从ti到ti+N的N步转移频数,其中,当从ti到ti+N的N=1时称为一步转移频数;简化表示方式为,当ti=Ti,ti+1=Tj,Mij表示Ti到Tj的一步转移频数。
优选的,建立假设检验的方法具体如下:
3-1.建立假设检验模型;
3-2.假设条件H0:μ=μ0,μ0指计算所有窗口w内每组高频次任务转移的均值;
3-3.计算异常值l;
3-4.阈值的选取;
3-5.评判:
优选的,上述步骤3-1当中假设检验是对母体做某项假设,从母体随机抽取子样,用该子样检验假设是否成立。
优选的,计算A的值的方法如下:
与现有技术相比,本发明具有如下的有益效果:
本发明通过计算待检测任务序列的一步任务转移概率,并基于u检验理论,定义任务转移异常值,进而依据异常值对节点任务转移异常进行检验;本发明只关心那些少数的任务转移组合,因为它们的执行频次较高,且其频次之和占据了***在正常运行时绝大部分的执行时间,具有代表性。计算异常值l时,选择取值范围较大的无符号long类型作为计算A的变量类型,构造了迭代式,有效为嵌入式***中在计算时间和空间的维度上节省了资源,防止计算溢出。上述技术方案能够有效地检测到在程序执行过程中出现的异常行为,对于异常行为的定位和修复提供代码级的帮助,且能完整的运行在低端嵌入式并具有较低的资源开销。
进一步的,建立假设检验模型时,假设检验是对母体做某项假设,从母体随机抽取子样,用该子样检验假设是否成立。本发明的假设检验方法是基于u检验改进的一种方法。u检验可对母体均值的参数假设检验,其是对t检验在大子样场景下的近似,根据中心极限定理,大子样近似正态分布。u检验使用样本标准差的有偏估计代替t检验中标准差的无偏估计。
进一步的,计算A的值时,计算涉及累加与乘法,在计算时间上,微控制器内置硬件乘法器,所以其乘法运算速度较快,不需要额外优化;在计算空间上,由于A本身是一个求和值,其难以再优化,且其值总为非负整数,故选择取值范围较大的无符号long类型作为计算A的变量类型。
附图说明
为了更清楚地说明本发明实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1本发明的方法流程图;
图2是本发明的节点位置变化异常实验环境;
图3(a)T2PAD.U在节点上检测到的计算异常值界面图:
图3(b)T2PAD.U在节点上的异常检测界面图:
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明的一部分实施例,而不是全部的实施例。
基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提还可以进行若干简单的修改和润饰,所获得的所有其他实施例,都属于本发明保护的范围。
本发明的说明书和权利要求书及所述附图中的术语“第一”、“第二”、“第三”和“第四”等是用于区别不同对象,而不是用于描述特定顺序。此外,术语“包括”和“具有”以及它们任何变形,意图在于覆盖不排他的包含。例如,包含了一系列步骤或单元的过程、方法、***、产品或设备没有限定于已列出的步骤或单元,而是可选地还包括没有列出的步骤或单元,或可选地还包括对于这些过程、方法、产品或设备固有的其它步骤或单元。
在本文中提及“实施例”意味着,结合实施例描述的特定特征、结构或特性可以包含在本发明的至少一个实施例中。在说明书中的各个位置展示该短语并不一定均是指相同的实施例,也不是与其它实施例互斥的独立的或备选的实施例。本领域技术人员显式地和隐式地理解的是,在本文所描述的实施例可以与其它实施例相结合。
参见图1,本发明给出一种轻量级嵌入式***异常运行状态检测方法,包括以下步骤:
步骤1:在感知节点部署前进行测试,将最终测试的结果作为期望的正常状态下节点任务执行序列。
步骤2:统计所有任务一步转移频数Mij,选择出占任务一步转移频数比例较高的高频次转移任务从而得到高频次任务转移组合的集合M。具体如下:
在节点任务执行序列中,节点从处于执行任务ti状态,经过n次任务转移处于执行任务ti+n状态的频数称为从ti到ti+n的n步转移频数,其中当从ti到ti+n的n=1时称为一步转移频数。为了方便表示,当ti=Ti,ti+1=Tj,Mij表示Ti到Tj的一步转移频数。
步骤3:建立假设检验的方法,设定任务窗口值w和u检验统计的样本数量n0,即每次计算异常值的窗口数量,计算所有窗口w内每组高频次任务转移的均值μ0;设定期望的异常检测置信概率α,根据α查询标准正态分布函数表得到计算异常值l。根据l与异常判别式对应的异常检测代码一并插装到应用源代码相应位置,从而检测应用运行是否出现异常。
具体如下:
3-1、建立假设检验模型;
假设检验方法的基本原理:假设检验是对母体做某项假设,从母体随机抽取子样,用该子样检验假设是否成立。本发明的假设检验方法是基于u检验改进的一种方法。u检验可对母体均值的参数假设检验,其是对t检验在大子样场景下的近似,根据中心极限定理,大子样近似正态分布。u检验使用样本标准差的有偏估计代替t检验中标准差的无偏估计。
3-2、假设条件H0:μ=μ0;
μ0为正态分布中的母体平均数,在本发明中μ0指计算所有窗口w内每组高频次任务转移的均值;
3-3、计算异常值l;
3-3-1、计算A;
计算涉及累加与乘法,在计算时间上,微控制器内置硬件乘法器,所以其乘法运算速度较快,不需要额外优化;在计算空间上,由于A本身是一个求和值,其难以再优化,且其值总为非负整数,故选择取值范围较大的无符号long类型作为计算A的变量类型,则计算A如下:由于A的计算过程中不涉及浮点类型,则其数值计算不会产生误差。
3-4、阈值的选取:
3-5、评判标准:
实施验证
本实施例用于验证本发明方法的有效性。
实施例中使用的嵌入式操作***是TinyOS 2.1.x和Telosb节点。使用Cooja仿真器运行网络程序,Cooja是一款具有指令级精度的传感器网络仿真器。通过修改TinyOS内核代码在调度器调度任务前捕获任务ID实现在运行时获取任务执行序列并通过修改Cooja提供的接口实现节点运行任务信息的提取与记录。
本发明采用真实节点测试实验,参见图2,在实验室内建立真实节点实验环境,在实验室部署节点以建立测试网络环境,建立802.15.4抓包器根据空中数据包包头信息查看网络拓扑结构。如表1,通过选取部署前仿真实验并选择占任务执行比例77%的高频次任务得到8个高频次任务转移,并计算得到如下转移均值参数,其中,本发明设置置信概率a=0.05。
表1任务转移参数(w=2000,n=16)
依据参数生成T2PAD.U节点异常检测程序,将该程序注入源代码并运行节点,当检测到节点异常使红色LED点亮。在实验进行中,关闭2号节点,此时4号节点丢失父节点,节点进入不符合预期的异常状态。如图3(a)和图3(b)所示,从图中可以看到T2PAD.U检测到了异常行为并点LED指示灯。在本实例分析中,任务转移集合M包含表1所示8个任务转移组合,每个任务转移组合的计算都需要定义总共8字节的变量,另外总体需要额外定义两个计数器变量占3个,其分别分配空间2字节与1字节。
TinyOS应用在大部分的时间处于CPU停止的睡眠状态,因此统计一定时间内活跃的CPU机器周期数可以得到程序对节点造成的CPU负载即CPU利用率。本发明统计了一定时间内使用T2PAD.U与未使用T2PAD.U的机器周期数量计算得到程序的CPU利用率,如表2节点使用T2PAD.U与未使用T2PAD.U对比可以看出节点在使用T2PAD.U之后CPU占用有少量增长。综上,T2PAD.U方法具有明显的低开销优越性,可以将异常检测算法运行于节点。
表2 T2PAD.U在节点上的CPU占用率
尽管在此结合各实施例对本发明进行了描述,然而,在实施所要求保护的本发明过程中,本领域技术人员通过查看所述附图、公开内容、以及所附权利要求书,可理解并实现所述公开实施例的其他变化。在权利要求中,“包括”(comprising)一词不排除其他组成部分或步骤,“一”或“一个”不排除多个的情况。相互不同的从属权利要求中记载了某些措施,但这并不表示这些措施不能组合起来产生良好的效果。
本领域技术人员应明白,本发明的实施例可提供为方法、装置(设备)或计算机程序产品。因此,本发明可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本发明可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。计算机程序存储/分布在合适的介质中,与其它硬件一起提供或作为硬件的一部分,也可以采用其他分布形式,如通过Internet或其它有线或无线电信***。
以上内容是参照本发明实施例的方法、装置(设备)和计算机程序产品的流程图和/或方框图来描述的。应理解为可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程指定功能的步骤。
尽管结合具体特征及其实施例对本发明进行了描述,显而易见的,在不脱离本发明的精神和范围的情况下,可对其进行各种修改和组合。相应地,本说明书和附图仅仅是所附权利要求所界定的本发明的示例性说明,且视为已覆盖本发明范围内的任意和所有修改、变化、组合或等同物。显然,本领域技术人员可以对本发明进行各种改动和变型而不脱离本发明的精神和范围,这些修改和变型也属于本发明权利要求及其等同技术的范围之内。
Claims (8)
2.根据权利要求1所述轻量级嵌入式***异常运行状态检测方法,其特征在于:在感知节点部署前进行测试,将最终测试的结果作为期望的正常状态下节点任务执行序列。
3.根据权利要求1所述轻量级嵌入式***异常运行状态检测方法,其特征在于:
统计所有任务的一步转移频数Mij具体如下:
在节点任务执行序列中,节点从处于执行任务ti状态,经过N次任务转移处于执行任务ti+N状态的频数称为从ti到ti+N的N步转移频数,其中,当从ti到ti+N的N=1时称为一步转移频数;简化表示方式为,当ti=Ti,ti+1=Tj,Mij表示Ti到Tj的一步转移频数。
5.根据权利要求4所述轻量级嵌入式***异常运行状态检测方法,其特征在于:步骤3-1当中假设检验是对母体做某项假设,从母体随机抽取子样,用该子样检验假设是否成立。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910677912.5A CN110417621B (zh) | 2019-07-25 | 2019-07-25 | 一种轻量级嵌入式***异常运行状态检测方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910677912.5A CN110417621B (zh) | 2019-07-25 | 2019-07-25 | 一种轻量级嵌入式***异常运行状态检测方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN110417621A CN110417621A (zh) | 2019-11-05 |
CN110417621B true CN110417621B (zh) | 2021-01-12 |
Family
ID=68363139
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910677912.5A Active CN110417621B (zh) | 2019-07-25 | 2019-07-25 | 一种轻量级嵌入式***异常运行状态检测方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN110417621B (zh) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US11132342B2 (en) * | 2019-12-02 | 2021-09-28 | Alibaba Group Holding Limited | Periodicity detection and period length estimation in time series |
CN112381110A (zh) * | 2020-10-10 | 2021-02-19 | 神华北电胜利能源有限公司 | 基于模糊规则的煤矿生产多维度数据异常概率预测方法 |
Family Cites Families (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2004030172A (ja) * | 2002-06-25 | 2004-01-29 | Matsushita Electric Ind Co Ltd | Usb規格通信機能の検査方法および検査装置 |
CN107092582B (zh) * | 2017-03-31 | 2021-04-27 | 江苏方天电力技术有限公司 | 一种基于残差后验的异常值在线检测及置信度评估方法 |
CN107947972B (zh) * | 2017-11-16 | 2021-01-15 | 长安大学 | 一种感知节点异常运行状态检测方法及检测装置 |
-
2019
- 2019-07-25 CN CN201910677912.5A patent/CN110417621B/zh active Active
Non-Patent Citations (1)
Title |
---|
A Survey of Recent Achievements for Wireless Sensor Networks Testbeds;ma junyan等;《IEEE》;20171014;全文 * |
Also Published As
Publication number | Publication date |
---|---|
CN110417621A (zh) | 2019-11-05 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109587008B (zh) | 检测异常流量数据的方法、装置及存储介质 | |
US10324989B2 (en) | Microblog-based event context acquiring method and system | |
US8473789B2 (en) | Memory leak monitoring system and associated methods | |
US8140911B2 (en) | Dynamic software tracing | |
US20140281726A1 (en) | Bottleneck Detector Application Programming Interface | |
CN110417621B (zh) | 一种轻量级嵌入式***异常运行状态检测方法 | |
CN107193732B (zh) | 一种基于路径比对的校验函数定位方法 | |
CN106997316B (zh) | 内存异常增长的检测***及方法 | |
WO2016114794A1 (en) | Root cause analysis of non-deterministic tests | |
US9098652B2 (en) | Partitioning and parallel processing of a virtual prototype simulation of a hardware design | |
WO2015080742A1 (en) | Production sampling for determining code coverage | |
JP2016045556A (ja) | ログ間因果推定装置、システム異常検知装置、ログ分析システム、及びログ分析方法 | |
CN112905370A (zh) | 拓扑图生成方法、异常检测方法、装置、设备及存储介质 | |
CN110347572B (zh) | 一种性能日志输出方法、装置、***、设备及介质 | |
CN116136950A (zh) | 芯片验证方法、装置、***、电子设备及存储介质 | |
CN107342917B (zh) | 用于检测网络设备性能的方法和装置 | |
CN115828244A (zh) | 一种内存泄露检测方法、装置及相关设备 | |
CN111309584A (zh) | 数据处理方法、装置、电子设备及存储介质 | |
CN111382052A (zh) | 代码质量评价方法、装置及电子设备 | |
CN110442508B (zh) | 测试任务处理方法、装置、设备和介质 | |
CN114676047A (zh) | 一种基于故障模式库的无人机软件安全性质分析验证方法 | |
CN110225025B (zh) | 异常网络数据行为模型的获取方法、装置、电子设备及存储介质 | |
CN112799911A (zh) | 一种节点健康状态检测方法、装置、设备及存储介质 | |
US7831879B2 (en) | Generating test coverage bin based on simulation result | |
CN117493127B (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 |