一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

网络异常检测方法及装置与流程

2021-11-26 23:59:00 来源:中国专利 TAG:


1.本技术涉及网络安全技术领域,尤其涉及一种网络异常检测方法及装置。


背景技术:

2.网络的稳定性一直是衡量网络好坏的重要指标,尤其是随着近几年云网络规模的迅速增大,如何确保网络的稳定性成为重要的技术难题。基于此,网络异常检测是确保网络的稳定性的重要环节,但是,相关技术中的网络异常检测方式所确定的异常结果不是很准确,经常出现漏报和误报的情况。
3.因此,相关技术中亟需一种更加准确的网络异常检测方式。


技术实现要素:

4.本技术实施例的目的在于提供一种网络异常检测方法及装置,可以提升网络异常检测的准确性。
5.本技术实施例提供的网络异常检测方法及装置是这样实现的:
6.一种网络异常检测方法,所述方法包括:
7.获取网络节点的至少一个网络流量指标的指标数据;
8.分别从所述指标数据中获取所述至少一个网络流量指标的周期信息和趋势信息;
9.根据所述周期信息和所述趋势信息,分别确定所述至少一个网络流量指标的异常结果;
10.根据所述至少一个网络流量指标的异常结果,确定所述网络节点的异常结果。
11.一种网络异常检测装置,其特征在于,包括处理器以及用于存储处理器可执行指令的存储器,所述处理器执行所述指令时实现:
12.获取网络节点的至少一个网络流量指标的指标数据;
13.分别从所述指标数据中获取所述至少一个网络流量指标的周期信息和趋势信息;
14.根据所述周期信息和所述趋势信息,分别确定所述至少一个网络流量指标的异常结果;
15.根据所述至少一个网络流量指标的异常结果,确定所述网络节点的异常结果。
16.一种非临时性计算机可读存储介质,当所述存储介质中的指令由处理器执行时,使得处理器能够执行所述的网络异常检测方法。
17.本技术实施例提供的网络异常检测方法及装置,可以通过网络节点的至少一个网络流量指标的周期信息和趋势信息,分别确定所述至少一个网络流量指标的异常结果,再根据所述至少一个网络流量指标的异常结果确定所述网络节点的异常结果。本技术实施例中,在确定网络流量指标的异常结果的过程中,考虑到所述网络流量指标的短期波动特征和长期波动特征,可以降低网络异常检测的误检测概率。另外,相对于通过单个网络流量指标进行检测的方式而言,通过多个网络流量指标共同检测,可以提升网络异常检测的准确性。
附图说明
18.此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本技术的实施例,并与说明书一起用于解释本技术的原理。
19.图1是根据一示例性实施例示出的一种网络异常检测方法流程示意图。
20.图2是本技术实施例提供的一种应用场景示意图。
21.图3是根据一示例性实施例示出的一种网络异常检测装置的框图。
具体实施方式
22.这里将详细地对示例性实施例进行说明,其示例表示在附图中。下面的描述涉及附图时,除非另有表示,不同附图中的相同数字表示相同或相似的要素。以下示例性实施例中所描述的实施方式并不代表与本技术相一致的所有实施方式。相反,它们仅是与如所附权利要求书中所详述的、本技术的一些方面相一致的装置和方法的例子。
23.下面结合附图对本技术所述的网络异常检测方法进行详细的说明。图1是本技术提供的网络异常检测方法的一种实施例的方法流程示意图。虽然本技术提供了如下述实施例或附图所示的方法操作步骤,但基于常规或者无需创造性的劳动在所述方法中可以包括更多或者更少的操作步骤。在逻辑性上不存在必要因果关系的步骤中,这些步骤的执行顺序不限于本技术实施例提供的执行顺序。所述方法在实际中的产品推荐过程中或者装置执行时,可以按照实施例或者附图所示的方法顺序执行或者并行执行(例如并行处理器或者多线程处理的环境)。
24.具体的,本技术提供的网络异常检测方法的一种实施例如图1所示,所述方法可以包括:
25.s101:获取网络节点的至少一个网络流量指标的指标数据。
26.s103:分别从所述指标数据中获取所述至少一个网络流量指标的周期信息和趋势信息。
27.s105:根据所述周期信息和所述趋势信息,分别确定所述至少一个网络流量指标的异常结果。
28.s107:根据所述至少一个网络流量指标的异常结果,确定所述网络节点的异常结果。
29.本技术实施例中,所述网络节点可以包括网络中能够传输数据的工作节点,在所述网络节点中可以产生进出流量信息。在一个实施例中,所述网络节点可以包括云计算网络中虚拟ip节点,所述虚拟ip节点可以与网关、负载、虚拟机等用户设备相连接,当用户设备与其他设备进行交互时,可以在所述虚拟ip节点上产生数据流量,如进出比特数等等。在另一个实施例中,所述网络节点可以包括分布式网络中的任意节点,这些节点可以是虚拟节点,也可以是实体节点,在此不做限制。
30.本技术实施例中,可以获取到所述网络节点的至少一个网络流量指标的指标数据。所述网络流量指标可以用于表示网络节点在单位时间内数据流量的进出情况。在本技术的一个实施例中,可以综合考虑所述网络节点的多种网络流量指标,考虑的网络流量指标数量越多,获取的信息也更全面,因此,可以获取到更加准确的异常结果。在一个示例中,如表1所示,所述网络流量指标可以包括下述14种指标。
31.指标含义指标1每秒入比特数指标2每秒入丢失比特数指标3每秒出比特数指标4每秒出丢失比特数指标5每秒活跃链接数指标6每秒链接数指标7每秒丢弃链接数指标8每秒失败链接数指标9每秒不活跃链接数指标10每秒最大链接数指标11每秒入数据包数指标12每秒入丢失数据包数指标13每秒出数据包数指标14每秒出丢失数据包数
32.在实际应用中,从所述网络节点的原始流量数据往往是不统一的,尤其对于分布式网络,从不同地域、不同集群的网络节点所获取的数据有可能具有不同的格式。基于此,可以对所述原始流量数据进行处理,以获取到统一的指标数据。在一个实施例中,可以采用流处理工具对所述原始流量数据进行处理,所述流处理工具可以包括apache flink等工具。在一个示例中,可以首先对所述原始流量数据进行信息提取,以获取到需要的信息,具体的信息提取的方式可以包括利用sql语言进行信息自动提取。然后,可以将提取后的信息的时间粒度统一化,这是由于不同地域、不同集群的网络节点所获取的数量在单位时间内的数据量有可能是不相同的,比如,有些网络节点每分钟的数据量可能是100个,有些可能是80个,各不相同。在一个实施例中,可以利用聚合处理的方式对提取后的信息进行时间粒度统一化,在一个示例中,可以将提取后的信息统一成每分钟一个数据,或者每30秒一个数据,具体时间粒度的设置不做限制。其中,所述聚合处理的方式可以包括平均值、最大值、最小值、和值等运算方式,具体的聚合处理的方式可以根据所述网络流量指标的不同而不同,在此不做限制。
33.需要说明的是,本技术实施例在确定所述网络节点的异常结果可以对应于确定的数据点,所述数据点可以是在确定的时刻获取。例如在一个示例性的场景下,可以每隔1分钟执行一次本技术提供的技术方案,即确定一次所述网络节点的异常结果。那么,在确定t时刻对应的异常结果的过程中,需要获取到t时刻及t时刻之前一个时间段内的所述至少一个网络流量指标的指标数据,这是由于在网络运行过程中,网络流量数据可以具有周期性等一段时间内所体现的特征。所述时间段的长度可以根据需求设置,例如,某网络流量指标的周期为一天,那么,在确定某日上午10点所获取的该网络流量指标的数据点的异常结果,可以获取至少前一天上午10点至该日上午10点之间所述网络节点的所述至少一个网络流量指标的指标数据。另外,所述数据点可以是进行聚合处理后的数据点,例如,在上述示例中,可以将从所述原始流量数据提取后的信息进行时间粒度统一化,这样,所述数据点可以包括该时间粒度对应的数据,如1分钟内对应的数据,那么,一段时间内的指标数据可以包
括离散的数据序列。
34.本技术实施例中,在获取到所述网络节点的至少一个网络流量指标的指标数据之后,可以分别从所述指标数据中获取所述至少一个网络流量指标的周期信息和趋势信息。所述周期信息用于表示所述网络流量指标的短期波动信息,所述趋势信息用于表示所述网络流量指标的长期波动信息。在本技术的一个实施例中,可以利用时序序列分解算法从所述指标数据中分别分解得到所述至少一个网络流量指标的周期信息和趋势信息。如图2所示,图中(a)部分是网络流量指标在2019年3月17日至2019年3月24日在时间维度上的指标数据,图中1e12表示10的12次方。图中(b)部分是从图中(a)部分的指标数据分解得到的趋势分量,图中(c)部分是从图中(a)部分的指标数据分解得到的周期分量。在其他实施例中,还可以利用基于局部加权回归(locally weighted regression,loess)的周期趋势分解算法(seasonal and trend decomposition using loess,stl)等算法分解得到所述网络流量指标的周期信息和趋势信息。所述stl算法可以包括内循环部分与外循环部分,其中内循环部分主要用于趋势拟合与周期分量的计算,外层循环部分主要用于调节鲁棒权重,减少离群值对回归的影响。当然,从所述网络流量指标中获取周期信息和趋势信息的方式不限于上述举例,所属领域技术人员在本技术技术精髓的启示下,还可能做出其它变更,但只要其实现的功能和效果与本技术相同或相似,均应涵盖于本技术保护范围内。
35.本技术实施例中,在分别获取所述至少一个网络流量指标的周期信息和趋势信息之后,可以根据所述周期信息和所述趋势信息,分别确定所述至少一个网络流量指标的异常结果。其中,所述异常结果可以包括所述网络流量指标发生异常或者未发生异常。在本技术的一个实施例中,在根据所述周期信息和所述趋势信息确定所述网络流量指标的异常结果的过程中,可以根据所述周期信息和所述趋势信息,确定所述网络流量指标的待检测数据。在一个实施例中,所述待检测数据可以包括所述周期信息和所述趋势信息的信息之和,在一个示例中,时刻t的周期值为a,趋势值为b,那么时刻t对应的待检测值为(a b)。然后,可以分别获取所述至少一个网络流量指标的基准数据,并根据所述待检测数据和所述基准数据之间的差异,确定所述网络流量指标的异常结果。所述基准数据可以作为判断所述待检测数据是否异常的参考数据。在本技术的一个实施例中,所述待检测数据和所述基准数据之间的差异可以包括所述待检测数据和所述基准数据之间的残差信息,所述残差信息用于衡量所述待检测数据与所述基准数据之间的偏离。本技术实施例中,在确定所述残差信息大于第二阈值的情况下,确定所述网络流量指标存在异常。在一个示例中,i时刻对应的网络流量指标的待检测数值与基准数值之间的残差可以表示为:
[0036][0037]
其中x
i
为i时刻的网络流量指标的待检测数值,p
i
为i时刻的所述网络流量指标的基准数值,median表示数据的中位数值,x表示i时刻及之前一段时间内的网络流量指标的待检测序列。
[0038]
在本技术的一个实施例中,在获取所述网络流量指标的基准数据的过程中,可以确定所述网络流量指标的类别信息,其中,所述网络流量指标与其属于相同类别的网络流量指标之间的相关度大于第一阈值。然后,可以根据所述类别信息,确定所述网络流量指标的基准数据。在本技术实施例中,可以将所述至少一个网络流量指标划分成多个类别,且可
以设置各个类别的代表性指标,并将该代表性指标的待检测数据作为所述类别对应的基准数据。在本技术实施例中,可以根据所述网络流量指标的含义以及相关性将所述至少一个网络流量指标划分成多个类别,在一个示例中,可以将表1所示的14种网络流量指标划分成以下6个类别:
[0039]
类别1:指标1、指标3、指标11、指标13。该类指标具有明显的日周期与周周期,也是表征用户使用的流量最直接的指标,包括出入比特率和数据包数。该类别所包含的四个指标在正常情况下具有强正相关性,若这些指标之间的强正相关性被打破,则说明网络节点很有可能出现异常。
[0040]
类别2:指标5、指标6、指标9、指标10。该类指标具有明显的稳定日周期,用于表征网络节点的正常链接数。该类指标在稳定运行的网络中具有相似的特点。该类指标没有周周期性的原因在于,根据通信协议的特点,大多数链接建立完毕一般不会轻易断开,但是链接中的流量却会根据用户行为有升降。
[0041]
类别3:包括指标2和指标12。该类指标用于表征入流量中被丢弃的部分,在不同的集群中的波形区别较大,但是在同一个集群中波形几乎相同。虽然指标数据依旧以天为周期进行变化,但是每天的波形和幅值并不稳定,经常发生随机变化。在不同的集群中,该类指标的特征也是完全不同的,这和集群的服务器配置和拥堵程度有关。但是这两个指标的强正相关性在正常情况下是始终不变的。
[0042]
类别4:包括指标4和指标14。该类指标用于表征出流量中被丢弃的部分,类别3中的指标特征相似,这两个指标互相之间存在强正相关性,但是在不同集群之间,却存在一定差距。
[0043]
类别5:指标7。该指标为链接类型的指标,用于表征网络节点中被丢弃的链接数。
[0044]
类别6:指标8。该指标为链接类型的指标,用于表征网络节点中没有成功建立的链接数。
[0045]
在本技术实施例中,在确定各个类别中的基准网络流量指标的过程中,可以分别确定属于同一类别的多个网络流量指标。然后,可以分别确定所述多个网络流量指标与所述类别中其他网络流量指标的待检测数据之间的相似度之和,将所述相似度之和最大的网络流量指标作为所述类别信息对应的基准网络流量指标。那么,第m个网络流量指标x
m
与其同类别的网络流量指标的相似度之和可以利用公式(2)表示:
[0046][0047][0048]
其中,x1,x2…
x
n
表示同一类别中的n个网络流量指标的指标序列,表示指标序列x
m
和x
n
之间的皮尔森相关系数,cov(x
m
,x
n
)表示指标序列x
m
和x
n
之间的协方差,分别表示指标序列x
m
、x
n
的标准差,分别表示指标序列x
m
、x
n
在i时刻的数值,m表示指标序列的长度,分别表示指标序列x
m
、x
n
的平均值。
[0049]
在确定所述基准网络流量指标之后,可以将所述基准网络流量指标的待检测数据作为该类别中所包含的网络流量指标的基准数据。本技术实施例中,单个网络流量指标的待检测数据存在一定的随机性,但是通过相同类别的多个网络流量指标的待检测数据确定基准数据,可以获取到该类别中网络流量指标的波动规则。另外,在确定不同时刻所述网络流量指标的异常结果的情况下,所述基准网络流量指标需要实时确定,相应地,所述基准数据也会随着基准网络流量指标而实时确定,可以使得所述基准数据随着指标数据的波动而相应调整,增强实施例方法的鲁棒性。
[0050]
需要说明的是,所述基准数据的确定不限于上述实施例,例如还可以确定出同一类别中相似度之和最高的两个网络流量指标,并将这两个网络流量指标的待检测数据的平均数据作为所述基准数据,所属领域技术人员在本技术技术精髓的启示下,还可能做出其它变更,但只要其实现的功能和效果与本技术相同或相似,均应涵盖于本技术保护范围内。
[0051]
在本技术实施例中,可以在确定所述残差信息大于第二阈值的情况下,确定所述网络流量指标存在异常。其中,在本技术的一个实施例中,所述第二阈值包括根据所述残差信息调节的自适应阈值。通过自适应调整阈值的方式,可以使得所述第二阈值随着网络流量的波动而弹性调节,提高对所述网络流量指标异常检测的准确性。在一个示例中,可以利用可变的基于分位数的异常检测方法(scalable median and interquartile deviation method,smiqd)确定所述第二阈值。具体的计算公式如下,并得到所述第二阈值的范围包括(q
1-m*iqd
diff
,q3 m*iqd
diff
)。
[0052]
iqd=q
3-q1=quantile(0.75)-quantile(0.25)
ꢀꢀ
(4)
[0053][0054]
iqd
diff
=w*(iqd
′-
iqd)w∈(0,1)
ꢀꢀ
(6)
[0055]
其中,q1表示指标残差序列的第一分位数,所述指标残差序列可以包括待检测序列和基准序列之间的残差信息,q3表示指标残差序列的第三分位数,表示指标残差序列的分位数,表示指标残差序列的分位数;w和m是smiqd法参数。
[0056]
在一个示例中,若确定i时刻的网络流量指标的待检测数值与基准数值之间的残差d
i
超出所述第二阈值的范围,则可以确定网络流量指标在i时刻出现异常。
[0057]
本技术实施例中,在分别确定所述至少一个网络流量指标的异常结果之后,可以根据所述至少一个网络流量指标的异常结果,确定所述网络节点的异常结果。在本技术的一个实施例中,可以将所述至少一个网络流量指标的异常结果输入至异常检测模型组件中,经所述异常检测模型组件输出所述网络节点的异常结果;其中,所述异常检测模型组件被设置为利用所述至少一个网络流量指标的异常结果和所述网络节点的异常结果之间的对应关系训练得到。在本技术的一个实施例中,所述异常检测模型组件可以利用机器学习的方式训练得到,所述机器学习的方式可以包括随机森林树等等。
[0058]
在实际的应用场景下,已经存在很多人工方式以确定所述网络节点的异常结果的方式,在上述实施例中,例如可以通过人工观察的方式确定网络流量指标的异常结果,还可以根据经验确定所述网络流量指标的异常阈值等等。但是通过人工决策的方式确定所述网络节点的异常结果所需的维护成本较高。但是,在一些场景中,人工决策的方式可能比较成
熟,也可以达到同等的效果,例如上述实施例中的部分中间结果或者数据的获取可以通过人工决策实现,需要说明的是,通过将人工决策的方式与本方案结合使用是本技术实施例保护的范畴。下面通过一个实施例说明将人工决策与本方案结合使用的方式,在一个实施例中,根据所述至少一个网络流量指标的异常结果,确定所述网络节点的第一异常结果。所述第一异常结果的确定方式可以参考上述实施例,本技术在此不做限制。本实施例中,还可以获取所述网络节点的第二异常结果,所述第二异常结果基于人工决策。然后,可以根据所述第一异常结果和所述第二异常结果,确定所述网络节点的异常结果。所述网络节点的异常结果的确定方式可以包括在所述第一异常结果和所述第二异常结果均包括所述网络节点存在异常的情况下,确定所述网络节点存在异常。当然,将所述人工决策与本方案结合使用的方式不限于上述举例,上述任何一个实施例中均可以实现,本身请在此不做限制。
[0059]
在本技术实施例中,在确定出所述网络节点发生异常的异常结果之后,可以发送告警信息。在一个示例中,发送的对象可以包括网络维护人员的客户端,所述告警信息可以包括网络节点的标识信息、发生异常的时刻、异常的网络流量指标、异常程度等多种信息中的至少一种。
[0060]
本技术实施例提供的网络异常检测方法,可以通过网络节点的至少一个网络流量指标的周期信息和趋势信息,分别确定所述至少一个网络流量指标的异常结果,再根据所述至少一个网络流量指标的异常结果确定所述网络节点的异常结果。本技术实施例中,在确定网络流量指标的异常结果的过程中,考虑到所述网络流量指标的短期波动特征和长期波动特征,可以降低网络异常检测的误检测概率。另外,相对于通过单个网络流量指标进行检测的方式而言,通过多个网络流量指标共同检测,可以提升网络异常检测的准确性。
[0061]
对应于上述网络异常检测方法,如图3所示,本技术另一方面还提供一种网络异常检测装置,包括处理器以及用于存储处理器可执行指令的存储器,所述处理器执行所述指令时可以实现:
[0062]
获取网络节点的至少一个网络流量指标的指标数据;
[0063]
分别从所述指标数据中获取所述至少一个网络流量指标的周期信息和趋势信息;
[0064]
根据所述周期信息和所述趋势信息,分别确定所述至少一个网络流量指标的异常结果;
[0065]
根据所述至少一个网络流量指标的异常结果,确定所述网络节点的异常结果。
[0066]
可选的,在本技术的一个实施例中,所述处理器在实现步骤获取网络节点的至少一个网络流量指标的指标数据时包括:
[0067]
获取网络节点的原始流量数据;
[0068]
从所述原始流量数据中提取至少一个网络流量指标的指标数据。
[0069]
可选的,在本技术的一个实施例中,所述处理器在实现步骤分别从所述指标数据中获取所述至少一个网络流量指标的周期信息和趋势信息时包括:
[0070]
利用时序序列分解算法从所述指标数据中分别分解得到所述至少一个网络流量指标的周期信息和趋势信息。
[0071]
可选的,在本技术的一个实施例中,所述处理器在实现步骤根据所述周期信息和所述趋势信息,分别确定所述至少一个网络流量指标的异常结果时包括:
[0072]
根据所述周期信息和所述趋势信息,确定所述网络流量指标的待检测数据;
[0073]
获取所述网络流量指标的基准数据;
[0074]
根据所述待检测数据和所述基准数据之间的差异,确定所述网络流量指标的异常结果。
[0075]
可选的,在本技术的一个实施例中,所述处理器在实现步骤获取所述网络流量指标的基准数据时包括:
[0076]
确定所述网络流量指标的类别信息,其中,所述网络流量指标与其属于相同类别的网络流量指标之间的相关度大于第一阈值;
[0077]
根据所述类别信息,确定所述类别信息对应的基准网络流量指标;
[0078]
将所述基准网络流量指标的待检测数据作为所述网络流量指标的基准数据。
[0079]
可选的,在本技术的一个实施例中,所述处理器在实现步骤根据所述类别信息,确定所述类别信息对应的基准网络流量指标时包括:
[0080]
分别获取所述类别信息对应的多个网络流量指标;
[0081]
分别确定所述多个网络流量指标与所述类别中其他网络流量指标的待检测数据之间的相似度之和;
[0082]
将所述相似度之和最大的网络流量指标作为所述类别信息对应的基准网络流量指标。
[0083]
可选的,在本技术的一个实施例中,所述处理器在实现步骤根据所述待检测数据和所述基准数据之间的差异,确定所述网络流量指标的异常结果时包括:
[0084]
确定所述待检测数据和所述基准数据之间的残差信息;
[0085]
在确定所述残差信息大于第二阈值的情况下,确定所述网络流量指标存在异常。
[0086]
可选的,在本技术的一个实施例中,所述第二阈值包括根据所述残差信息调节的自适应阈值。
[0087]
可选的,在本技术的一个实施例中,所述处理器在实现步骤根据所述至少一个网络流量指标的异常结果,确定所述网络节点的异常结果时包括:
[0088]
将所述至少一个网络流量指标的异常结果输入至异常检测模型组件中,经所述异常检测模型组件输出所述网络节点的异常结果;其中,所述异常检测模型组件被设置为利用所述至少一个网络流量指标的异常结果和所述网络节点的异常结果之间的对应关系训练得到。
[0089]
可选的,在本技术的一个实施例中,所述处理器在实现步骤根据所述至少一个网络流量指标的异常结果,确定所述网络节点的异常结果时包括:
[0090]
根据所述至少一个网络流量指标的异常结果,确定所述网络节点的第一异常结果;
[0091]
获取所述网络节点的第二异常结果,所述第二异常结果基于人工决策;
[0092]
根据所述第一异常结果和所述第二异常结果,确定所述网络节点的异常结果。
[0093]
可选的,在本技术的一个实施例中,所述处理器在实现步骤确定所述网络节点的异常结果之后,还包括:
[0094]
在确定所述异常结果包括所述网络节点存在异常的情况下,发送告警信息。
[0095]
本技术另一方面还提供一种计算机可读存储介质,其上存储有计算机指令,所述指令被执行时实现上述任一实施例所述方法的步骤。
[0096]
所述计算机可读存储介质可以包括用于存储信息的物理装置,通常是将信息数字化后再以利用电、磁或者光学等方式的媒体加以存储。本实施例所述的计算机可读存储介质有可以包括:利用电能方式存储信息的装置如,各式存储器,如ram、rom等;利用磁能方式存储信息的装置如,硬盘、软盘、磁带、磁芯存储器、磁泡存储器、u盘;利用光学方式存储信息的装置如,cd或dvd。当然,还有其他方式的可读存储介质,例如量子存储器、石墨烯存储器等等。
[0097]
在20世纪90年代,对于一个技术的改进可以很明显地区分是硬件上的改进(例如,对二极管、晶体管、开关等电路结构的改进)还是软件上的改进(对于方法流程的改进)。然而,随着技术的发展,当今的很多方法流程的改进已经可以视为硬件电路结构的直接改进。设计人员几乎都通过将改进的方法流程编程到硬件电路中来得到相应的硬件电路结构。因此,不能说一个方法流程的改进就不能用硬件实体模块来实现。例如,可编程逻辑器件(programmable logic device,pld)(例如现场可编程门阵列(field programmable gate array,fpga))就是这样一种集成电路,其逻辑功能由用户对器件编程来确定。由设计人员自行编程来把一个数字系统“集成”在一片pld上,而不需要请芯片制造厂商来设计和制作专用的集成电路芯片。而且,如今,取代手工地制作集成电路芯片,这种编程也多半改用“逻辑编译器(logic compiler)”软件来实现,它与程序开发撰写时所用的软件编译器相类似,而要编译之前的原始代码也得用特定的编程语言来撰写,此称之为硬件描述语言(hardware description language,hdl),而hdl也并非仅有一种,而是有许多种,如abel(advanced boolean expression language)、ahdl(altera hardware description language)、confluence、cupl(cornell university programming language)、hdcal、jhdl(java hardware description language)、lava、lola、myhdl、palasm、rhdl(ruby hardware description language)等,目前最普遍使用的是vhdl(very-high-speed integrated circuit hardware description language)与verilog。本领域技术人员也应该清楚,只需要将方法流程用上述几种硬件描述语言稍作逻辑编程并编程到集成电路中,就可以很容易得到实现该逻辑方法流程的硬件电路。
[0098]
控制器可以按任何适当的方式实现,例如,控制器可以采取例如微处理器或处理器以及存储可由该(微)处理器执行的计算机可读程序代码(例如软件或固件)的计算机可读介质、逻辑门、开关、专用集成电路(application specific integrated circuit,asic)、可编程逻辑控制器和嵌入微控制器的形式,控制器的例子包括但不限于以下微控制器:arc625d、atmel at91sam、microchip pic18f26k20以及silicone labs c8051f320,存储器控制器还可以被实现为存储器的控制逻辑的一部分。本领域技术人员也知道,除了以纯计算机可读程序代码方式实现控制器以外,完全可以通过将方法步骤进行逻辑编程来使得控制器以逻辑门、开关、专用集成电路、可编程逻辑控制器和嵌入微控制器等的形式来实现相同功能。因此这种控制器可以被认为是一种硬件部件,而对其内包括的用于实现各种功能的装置也可以视为硬件部件内的结构。或者甚至,可以将用于实现各种功能的装置视为既可以是实现方法的软件模块又可以是硬件部件内的结构。
[0099]
上述实施例阐明的系统、装置、模块或单元,具体可以由计算机芯片或实体实现,或者由具有某种功能的产品来实现。一种典型的实现设备为计算机。具体的,计算机例如可以为个人计算机、膝上型计算机、蜂窝电话、相机电话、智能电话、个人数字助理、媒体播放
器、导航设备、电子邮件设备、游戏控制台、平板计算机、可穿戴设备或者这些设备中的任何设备的组合。
[0100]
为了描述的方便,描述以上装置时以功能分为各种单元分别描述。当然,在实施本技术时可以把各单元的功能在同一个或多个软件和/或硬件中实现。
[0101]
本领域内的技术人员应明白,本发明的实施例可提供为方法、系统、或计算机程序产品。因此,本发明可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本发明可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、cd-rom、光学存储器等)上实施的计算机程序产品的形式。
[0102]
本发明是参照根据本发明实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
[0103]
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
[0104]
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
[0105]
在一个典型的配置中,计算设备包括一个或多个处理器(cpu)、输入/输出接口、网络接口和内存。内存可能包括计算机可读介质中的非永久性存储器,随机存取存储器(ram)和/或非易失性内存等形式,如只读存储器(rom)或闪存(flash ram)。内存是计算机可读介质的示例。
[0106]
计算机可读介质包括永久性和非永久性、可移动和非可移动媒体可以由任何方法或技术来实现信息存储。信息可以是计算机可读指令、数据结构、程序的模块或其他数据。计算机的存储介质的例子包括,但不限于相变内存(pram)、静态随机存取存储器(sram)、动态随机存取存储器(dram)、其他类型的随机存取存储器(ram)、只读存储器(rom)、电可擦除可编程只读存储器(eeprom)、快闪记忆体或其他内存技术、只读光盘只读存储器(cd-rom)、数字多功能光盘(dvd)或其他光学存储、磁盒式磁带,磁带磁磁盘存储或其他磁性存储设备或任何其他非传输介质,可用于存储可以被计算设备访问的信息。按照本文中的界定,计算机可读介质不包括暂存电脑可读媒体(transitory media),如调制的数据信号和载波。
[0107]
还需要说明的是,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、商品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、商品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个
……”
限定的要素,并不排除在包括所述要
素的过程、方法、商品或者设备中还存在另外的相同要素。
[0108]
本领域技术人员应明白,本技术的实施例可提供为方法、系统或计算机程序产品。因此,本技术可采用完全硬件实施例、完全软件实施例或结合软件和硬件方面的实施例的形式。而且,本技术可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、cd-rom、光学存储器等)上实施的计算机程序产品的形式。
[0109]
本技术可以在由计算机执行的计算机可执行指令的一般上下文中描述,例如程序模块。一般地,程序模块包括执行特定任务或实现特定抽象数据类型的例程、程序、对象、组件、数据结构等等。也可以在分布式计算环境中实践本技术,在这些分布式计算环境中,由通过通信网络而被连接的远程处理设备来执行任务。在分布式计算环境中,程序模块可以位于包括存储设备在内的本地和远程计算机存储介质中。
[0110]
本说明书中的各个实施例均采用递进的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于系统实施例而言,由于其基本相似于方法实施例,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
[0111]
以上所述仅为本技术的实施例而已,并不用于限制本技术。对于本领域技术人员来说,本技术可以有各种更改和变化。凡在本技术的精神和原理之内所作的任何修改、等同替换、改进等,均应包含在本技术的权利要求范围之内。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献