CN108460044B - 数据的处理方法和装置 - Google Patents
数据的处理方法和装置 Download PDFInfo
- Publication number
- CN108460044B CN108460044B CN201710091632.7A CN201710091632A CN108460044B CN 108460044 B CN108460044 B CN 108460044B CN 201710091632 A CN201710091632 A CN 201710091632A CN 108460044 B CN108460044 B CN 108460044B
- Authority
- CN
- China
- Prior art keywords
- data
- current
- historical
- current data
- processing
- 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
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/23—Updating
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/22—Indexing; Data structures therefor; Storage structures
- G06F16/2228—Indexing structures
- G06F16/2255—Hash tables
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/50—Allocation of resources, e.g. of the central processing unit [CPU]
- G06F9/5005—Allocation of resources, e.g. of the central processing unit [CPU] to service a request
- G06F9/5011—Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resources being hardware resources other than CPUs, Servers and Terminals
- G06F9/5016—Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resources being hardware resources other than CPUs, Servers and Terminals the resource being the memory
Abstract
本申请公开了一种数据的处理方法和装置。其中,该方法包括:获取采集到的当前数据,其中,所述当前数据至少用于记录执行业务操作过程中的网络状态;检测是否存在与所述当前数据相匹配的历史数据;若检测出存在与所述当前数据相匹配的历史数据,则在用于处理所述历史数据的内存区域中,根据所述当前数据更新所述历史数据的历史处理结果,得到所述当前数据对应的当前处理结果。本申请解决了处理大量数据占用资源多、耗时长的技术问题。
Description
技术领域
本申请涉及数据处理领域,具体而言,涉及一种数据的处理方法和装置。
背景技术
虚拟机是通过软件模拟的具有完整硬件系统功能的运行在一个完全隔离环境中的计算机系统,现有技术中,在虚拟机系统中,每个虚拟机有时需承载大量的业务流量,该业务流量可以为每秒百万级别的TCP数据流。在监控全量的TCP五元组、流量、丢包和延迟的过程中,需对该每秒百万级别的TCP数据流进行采集、处理和输出。
具体地,从服务器的内核中采集该每秒百万级别的TCP数据流(在该种情况下,数据流是内核态)之后,按照字符串的形式一行一行的记录该采集的信息(此时将内核态的数据流进行拷贝,得到用户态的数据流),在服务器上对该字符串形式的数据进行处理后,得到输出数据包,输出数据包通过输出通道输出至分析系统,通过分析系统对输出数据包进行网络质量、网络流量拓扑等的分析。
现有技术中,在上述的该字符串形式的数据进行处理的过程中,逐条处理该字符串形式的数据,在处理每条数据时,申请用于处理该条数据的内存,将待处理的数据存入申请到的内存,在该内存中对该条字符串格式的数据进行解析,并转换格式或者按照预定规则进行处理,在处理完成后,得到与该条数据对应的输出数据包,该输出数据包通过输出通道输出并释放该内存。
由上述内容可知,在处理每条字符串格式的数据时,均需执行申请内存、解析字符串、按预定格式处理、输出数据包以及释放内存的操作,对于每秒百万级别的TCP数据流来讲,执行上述操作需耗费大量的时间和资源,有些情况会占用单核80%的CPU时间,这样会造成业务波动。
针对上述处理大量数据占用资源多、耗时长的问题,目前尚未提出有效的解决方案。
发明内容
本申请实施例提供了一种数据的处理方法和装置,以至少解决处理大量数据占用资源多、耗时长的技术问题。
根据本申请实施例的一个方面,提供了一种数据的处理方法,包括:获取采集到的当前数据,其中,所述当前数据至少用于记录执行业务操作过程中的网络状态;检测是否存在与所述当前数据相匹配的历史数据;若检测出存在与所述当前数据相匹配的历史数据,则在用于处理所述历史数据的内存区域中,根据所述当前数据更新所述历史数据的历史处理结果,得到所述当前数据对应的当前处理结果。
根据本申请实施例的另一方面,还提供了一种数据的处理装置,包括:第一获取单元,用于获取采集到的当前数据,其中,所述当前数据至少用于记录执行业务操作过程中的网络状态;检测单元,用于检测是否存在与所述当前数据相匹配的历史数据;处理单元,用于若检测出存在与所述当前数据相匹配的历史数据,则在用于处理所述历史数据的内存区域中,根据所述当前数据更新所述历史数据的历史处理结果,得到所述当前数据对应的当前处理结果。
根据本申请实施例的另一方面,还提供了一种数据的处理方法,包括:获取采集到的当前数据;根据所述当前数据的属性参数检测是否存在与所述当前数据相匹配的历史数据;若检测出存在与所述当前数据相匹配的历史数据,则确定用于处理所述历史数据的内存区域;在用于处理所述历史数据的内存区域中,对所述当前数据进行处理。
根据本申请,在检测出存在与该当前数据相匹配的历史数据(如,与当前数据具有相同源的目的的数据)之后,无需释放该历史数据的内存,也无需获取与该当前数据对应的内存区域,在用于处理历史数据的内存区域中,对历史数据的历史处理结果进行更新,得到该当前数据对应的当前处理结果,减少了处理器需执行的操作,同时也减少了内存占用,解决了现有技术中处理大量数据占用资源多、耗时长的技术问题,实现了在处理大量数据过中减少资源占用和减少时间消耗的效果。
附图说明
此处所说明的附图用来提供对本申请的进一步理解,构成本申请的一部分,本申请的示意性实施例及其说明用于解释本申请,并不构成对本申请的不当限定。在附图中:
图1是根据本申请实施例的一种应用数据的处理方法的网络环境示意图;
图2是根据本申请实施例的一种可选的数据的处理方法的流程图;
图3是根据现有技术中的一种可选的字符串格式的数据的示意图;
图4是根据本申请实施例的一种可选的二进制格式的数据的示意图;
图5是根据本申请实施例的一种可选的数据的处理方法的流程图二;
图6是根据本申请实施例的一种可选的数据的处理方法的流程图三;
图7是根据本申请实施例的一种可选的数据的处理方法的流程图四;
图8是根据本申请实施例的一种可选的应用数据的处理方法的计算机终端的结构示意图;
图9是根据本申请实施例的一种可选的数据的处理装置的示意图;
图10是根据本申请实施例的一种用于实现数据的处理方法的计算机终端的硬件结构框图。
具体实施方式
为了使本技术领域的人员更好地理解本申请方案,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分的实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都应当属于本申请保护的范围。
需要说明的是,本申请的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本申请的实施例能够以除了在这里图示或描述的那些以外的顺序实施。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、系统、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。
首先,在对本申请实施例进行描述的过程中出现的部分名词或术语适用于如下解释:
IDC:互联网数据中心。数据中心是网络基础资源的一部分,用于提供数据传输服务和高速接入服务。互联网数据中心具备大规模的机房设置、高速可靠的内外部网络环境以及系统化的监控支持手段。数据中心用于提供快速安全的网络,还用于提供对服务器监管、流量监控等网络管理方面的服务。
TCP:是一种面向连接的、可靠的、基于字节流的传输层通信协议,由IETF的RFC793定义。
TCP五元组,将源IP地址、源端口、目的IP地址、目的端口和传输层协议这五个量组成的集合称为TCP五元组。基于TCP协议的五元组为TCP五元组,例如,192.168.1.1100000TCP 121.14.88.76 80构成了一个TCP五元组,其含义为:一个IP地址为192.168.1.1的终端通过端口100000,利用TCP协议和IP地址为121.14.88.76,端口为80的终端进行连接。利用五元组可以区分不同的会话,并且一个五元组对应的会话是唯一的。
KO:核心模块kernel module利用插入模块insert module技术把一段代码插入到内核地址空间,此段代码用于访问内核的其他数据接口。
HASH:中文名称为散列或哈希,就是把任意长度的输入,通过散列算法,变换成固定长度的输出,该输出值就是散列值,简单说就是一种将任意长度的消息压缩到某一固定长度的消息摘要的函数。
虚拟机,是通过软件模拟的具有硬件系统功能的、运行在一个完全隔离环境中的计算机系统。
丢包:在通信中是指通信数据包丢失。
异步通讯,是一种由消息传送机制或消息队列模式组成的最典型的中间件技术。通过消息中间件,应用程序或组件之间可以进行可靠的异步通讯来降低系统之间的耦合度,从而提高整个系统的可扩展性和可用性。
bic,Binary Increase Congestion,一种TCP拥塞控制算法。
挂钩函数hook(又称为钩子函数),通过该函数可以监视指定窗口的消息,当消息达到后,在该消息未到达目标窗口之前,捕获并处理该消息。在实际应用中,在对特定的系统事件进行挂钩后,一旦该系统事件发生,对该系统事件进行挂钩的程序可以接收到系统的通知。
Ack:acknowledgement,即确认字符,在数据通信中,接收站发给发送站的一种传输类控制字符,用于表示发送站发来的数据已确认接收无误。
实施例1
根据本申请实施例,还提供了一种数据的处理方法的实施例,需要说明的是,在附图的流程图示出的步骤可以在诸如一组计算机可执行指令的计算机系统中执行,并且,虽然在流程图中示出了逻辑顺序,但是在某些情况下,可以以不同于此处的顺序执行所示出或描述的步骤。
本申请实施例一所提供的方法实施例可以在移动终端、计算机终端或者类似的运算装置中执行。
一种可选实施例中,该数据处理方法可以应用于数据中心IDC,如图1所示,主机20用于获取记录网络状态的业务流量,将获取到的业务流量通过网络发送到数据中心,该数据中心可以包括多个服务器10。服务器10可以为用于处理业务流量的服务器,每台服务器上均可以执行该数据的处理方法。其中,网络连接可以是局域网连接、广域网连接、因特网连接,或其他类型的数据网络连接。
可选地,服务器10为通过软件模拟的具有硬件系统功能的运行在一个隔离环境中的虚拟机,或者服务器10为实体的物理机。
具体地,终端执行业务的过程中,会产生大量的业务流量,业务流量的数据中包括用于表示执行业务操作过程中的网络状态(如网络中延时以及网络丢包的状态)的信息,其中,业务操作可以包括:虚拟资源交换操作、视频播放操作等。
在监控全量的TCP五元组、流量、丢包和延迟的应用场景中,主机20将业务流量(包括多个数据)发往数据中心。
可选地,该业务流量分发至数据中心的不同服务器10,服务器10接收到的业务流量在执行系统调用(如接收数据)而陷入内核代码中执行时,该业务流程被称之为内核态数据,此时处理器处于特权级最高的(0级)内核代码中执行。
在服务器对业务流量进行处理时,也即,当数据处理进程在执行用户自己的代码(如本申请实施例中用于执行数据的处理方法的代码)时,该业务流量被称之为用户运行态(用户态)。在该实施例中,用户态数据为每秒百万级别的TCP数据流。
可选地,在对采集到的业务流量中的数据按照预定的处理规则进行处理后,得到输出数据包,输出数据包通过输出通道输出至分析系统,利用分析系统对输出数据包进行网络质量、网络流量拓扑等的分析。其中,分析系统可以通过安装在一台计算机终端或服务器集群上的分析软件实现分析功能。
可选的,在服务器接收到业务流量之后,利用bic拥塞控制算法从计算机终端的内核中抓取TCP五元组、流量、以及丢包等数据。
具体地,通过在该拥塞算法中插入一个挂钩函数hook,此挂钩函数hook会在业务流量的处理窗口发出确认字符ack时,抓取TCP五元组,流量和丢包等信息。
在一种可选的实施例中,在利用挂钩函数采集到计算机内核中的数据之后,对采集到的数据进行处理,本申请提供了如图2所示的数据的处理方法,需要说明的是,数据中心每台计算机终端上均可以执行该数据的处理方法,本申请实施例中以在一台计算机终端为例,详述计算机终端执行该数据的处理方法的具体实现方式。
图2是根据本申请实施例的一种可选的数据的处理方法的流程图,如图2所示,该实施例可以包括如下步骤:
步骤S202:获取采集到的当前数据,其中,当前数据至少用于记录执行业务操作过程中的网络状态。
其中,网络状态可以通过网络流量、网络丢包信息以及网络延迟信息中的至少之一来反映。网络流量用于表示网络上传输的数据量,网络丢包信息为用于记录在通信过程中丢失通信数据包的信息,可选地,数据在通信网络上是以数据包为单位传输的,每个数据包中有表示数据信息和提供数据路由的帧,由于数据不是以线性的方式连续传输,因此,数据包的传输因物理线路故障、物理设备故障、病毒攻击、路由信息错误等原因,会有一定的损失,即发生通信数据包的丢失,丢包信息也可以反映在执行业务的过程中的网络状态。网络延时是指一个数据包从用户的计算机发送到网站服务器,然后从网站服务器返回用户计算机的来回时间。
可选地,采集到的数据以字符串形式来表示。如图3所示,服务器的处理器获取内核态的数据之后,服务器的处理器需对字符串格式表示的数据进行解析,在得到解析后的数据之后,执行后续的处理操作,在对字符串格式表示的数据进行解析的过程中,需要按照预定的规则,逐一确定各个字节表示的信息,对字符串进行解析耗时较长。
为了减少对数据的处理时间,在一个可选的实施例中,处理器将获取到的数据进行二进制编码,将编码后的数据放入循环缓冲区。其中,缓冲区用于暂时存储数据。
如图4所示,对字符串格式的数据进行二进制编码之后,可以得到二进制格式的数据,二进制是由1和0两个数字组成的,二进制编码是用预先规定的方法将文字、数字或其他对象编程二进制的数码,在该实施例中,将获取到的字符串格式表示的数据进行二进制编码,得到二进制格式的数据,由于二进制只有1和0两个数字,与字符串相比,计算机处理二进制的速度更快,而且二进制格式的数据,数据类型相同,占用的物理内存大小固定,在从数据中获取信息时,无需执行解析操作,对二进制格式的数据执行位操作即可获取数据的信息。
由于位操作是程序中对位模式按位或二进制数的一元和二元操作,位运算的处理速度比加减运算的操作速度还要快,利用位操作从数据中获取信息,可以大大提高对数据的处理速度。
通过上述实施例,在将二进制格式的数据放入循环缓冲区之后,处理器对该循环缓冲区中的数据执行下述步骤S204,以对该数据进行进一步的处理。在该实施例中将当前正在处理的数据记作当前数据,将已经处理过的数据记作历史数据。
步骤S204:检测是否存在与当前数据相匹配的历史数据。
其中,若检测出存在与当前数据相匹配的历史数据,则执行步骤S206;若检测出不存在与当前数据相匹配的历史数据,则执行步骤S208。
通过检测是否存在与当前数据相匹配的历史数据,来确定是否可以将当前数据与历史数据合并处理,若存在与该当前数据相匹配的历史数据,则可以将该当前数据与历史数据进行合并处理,而无需对其执行申请内存、按照预定规则处理、输出数据包以及释放内存的完整处理流程,从而减少了处理器执行的操作,对于海量数据来讲,每个数据减少一个或多个执行步骤,可以大大缩短对大量数据的处理而带来的时间消耗,进一步地,处理器执行的操作减少,执行操作所占用的资源也会减少。
在一个可选的实施例中,可以将相同源和目的的数据进行合并处理,进一步地,可以通过执行图5所示的如下步骤,以检测是否存在与当前数据相匹配的历史数据:
步骤S501:从当前数据中获取当前数据的当前属性参数。
可选地,当前数据的当前属性参数表示当前数据的会话属性,具体地,该当前属性数据可以至少用于表示该当前数据的源和目的,其中,源可以使用源IP和源端口来表示,目的可以使用目的IP和目的端口来表示。
由于TCP五元组可以唯一标识会话,可以使用TCP五元组表示当前数据的会话属性,其中,TCP五元组包括:当前数据的源端口、源IP地址、目的端口、目的IP地址以及传输协议,也即,在该实施例中,可以使用TCP五元组作为当前数据的当前属性参数。
另一种可选地,可以直接使用当前数据的会话标识作为当前数据的当前属性参数。
步骤S503:检测是否存在与当前属性参数相匹配的历史属性参数。
其中,若检测出存在与当前属性参数相匹配的历史属性参数,则执行步骤S505:确定检测出存在与当前数据相匹配的历史数据;若检测出不存在与当前属性参数相匹配的历史属性参数,则执行步骤S507:确定检测出不存在与当前数据相匹配的历史数据。
可选地,通过检测是否存在与当前数据的会话属性一致的属性参数,来确定与当前数据的源和目的相同的历史数据。
在一个可选的实施例中,在获取当前数据的当前属性参数之后,利用预定转换算法,可以对当前数据的会话属性进行转换,得到第一转换数据。进一步地,检测是否存在与当前属性参数相匹配的历史属性参数包括:利用第一转换数据检测是否存在与当前属性参数相匹配的历史属性参数。
其中,预定转换算法用于将第一长度的数据转换为第二长度的数据,第一长度长于第二长度。在该实施例中,将第一长度的当前数据的会话属性转换为第二长度的第一转换数据,可以减少检测的处理量。
可选地,利用第一转换数据检测是否存在与当前属性参数相匹配的历史属性参数可以通过如下步骤实现:
检测是否存在与第一转换数据一致的第二转换数据,其中,第二转换数据为利用预定转换算法,对历史数据的会话属性进行转换而得到的数据。
其中,若存在与第一转换数据一致的第二转换数据,则确定检测出存在与当前属性参数相匹配的历史属性数据;若不存在与第一转换数据一致的第二转换数据,则确定检测出不存在与当前属性参数相匹配的历史属性数据。
在一个可选的实施例中,预定转换算法可以为长度转换算法,也可以为加密算法,例如,预定转换算法为哈希算法。
在预定转换算法为哈希算法的情况下,利用哈希算法对当前数据的会话属性进行加密操作,得到当前数据的会话属性的哈希值;并获取存储的利用哈希算法对历史数据的会话属性进行加密操作,得到历史数据的会话属性的哈希值;比较该两个哈希值是否一致,以检测是否存在与第一转换数据一致的第二转换数据。
需要说明的是,在对当前数据进行处理之后,将该当前数据对应的哈希值存储至预定空间,在获取到新的数据之后,该当前数据对应的哈希值称为历史数据的哈希值,该新的数据被记为当前数据,在检测是否存在与当前数据相匹配的历史数据时,将当前数据的会话属性进行哈希计算得到当前数据对应的哈希值,在预定空间存储的哈希值中查找是否存在与该当前数据对应的哈希值,若查找到与该当前数据对应的哈希值,则确定检测出存在与该当前数据相匹配的历史数据;若未查找到与该当前数据对应的哈希值,则确定检测出不存在与该当前数据相匹配的历史数据。
步骤S206:在用于处理历史数据的内存区域中,根据当前数据更新历史数据,得到当前数据对应的当前处理结果。
通过上述实施例,在检测出存在与该当前数据对应的历史数据(也即,与当前数据具有相同源的目的的数据)之后,无需释放该历史数据的内存,也无需获取与该当前数据对应的内存区域,在该历史数据所在的内存区域中,对历史数据的历史处理结果进行更新,得到该当前数据对应的当前处理结果,减少了处理器需执行的操作,同时也减少了内存占用。
在一个可选的实施例中,数据的处理结果中包括属性内容和网络状态的内容,其中,属性内容与数据的属性参数对应,例如,若使用TCP五元组表示数据,则数据的结果中包含该TCP五元组的信息;该网络状态的内容用于记录网络流量、网络丢包信息以及网络延时中的至少之一,不同的数据包含的网络状态的信息不一致,在上述实施例中,利用数据的会话属性来进行数据的匹配,也即,若匹配到历史数据,则历史数据的处理结果中属性内容与当前数据的处理结果中属性内容也是一致的,在一个可选的实施例中,利用当前数据更新历史数据的历史处理结果中部分内容,即可得到当前数据对应的当前处理结果,在该处理过程中,无需对当前数据执行完整的处理流程,同时可以保证处理结果的准确性,提高了处理效率。
根据本申请实施例,获取采集到的当前数据;根据当前数据的属性参数检测是否存在与当前数据相匹配的历史数据;若检测出存在与当前数据相匹配的历史数据,则确定用于处理历史数据的内存区域;在用于处理历史数据的内存区域中,对当前数据进行处理。
通过上述实施例,在检测出存在与该当前数据相匹配的历史数据(如,与当前数据具有相同源的目的的数据)之后,无需释放该历史数据的内存,也无需获取与该当前数据对应的内存区域,在用于处理历史数据的内存区域中,对历史数据的历史处理结果进行更新,得到该当前数据对应的当前处理结果,减少了处理器需执行的操作,同时也减少了内存占用,解决了现有技术中处理大量数据占用资源多、耗时长的技术问题,实现了在处理大量数据过中减少资源占用和减少时间消耗的效果。
进一步可选地,根据当前数据更新历史数据的历史处理结果可以通过如图6所示的步骤实现:
步骤S602:从当前数据中获取当前状态数据,其中,当前状态数据用于表示执行业务的网络状态。
步骤S604:在用于处理历史数据的内存区域中,将历史处理结果中的历史状态数据修改为当前状态数据。
通过上述实施例,在构建当前数据的当前处理结果(如数据包)时,若检测出存在与该当前数据相匹配的历史数据,则获取该历史数据的历史处理结果,将历史处理结果中的数据直接挂在当前数据的新数据包里,并修改该新数据包中的网络状态的数值部分,得到当前数据的当前处理结果。
步骤S208:获取用于处理当前数据的内存区域。
在检测是否存在与当前数据相匹配的历史数据之后,若检测出不存在与当前数据相匹配的历史数据,则获取用于处理当前数据的内存区域。
步骤S210:在获取到的内存区域中,对当前数据执行预定操作,得到当前数据对应的当前处理结果。
在上述实施例中,通过将字符串格式的数据转换为二进制格式的数据,使原来的字符串解析转换为位操作,提高了操作速度;并且由于数据中心IDC内部机器交互的业务方相对固定,因此在预定时间段内,将源和目的相同的数据在同一内存中进行处理,具体地,利用TCP五元组建立hash,hash命中则直接复用上分钟的数据,只更改流量,丢包和延迟的数据值,减少了处理时长和处理资源。
下面结合图7和图8对本申请的一种可选的实现方式进行详细说明。
如图7所示,该实施例可以包括如下步骤:
步骤S701:从计算机终端的内核中采集数据。
其中,该操作可以通过图8所示的核心模块81在内核地址空间82中执行,其中,该计算机终端可以运行Linux的操作系统,该内核地址空间可以为Linux内核地址空间,TCP/IP协议栈都可以在此空间运行。
可选地,核心模块通过插入模块的技术进入内核地址空间运行,以达到直接访问TCP窗口数据的目的,具体地,在bic的拥塞控制算法中插入一个挂钩函数hook,此挂钩函数hook会在窗口的确认字符ack应答时抓取TCP五元组,流量和丢包,以采集到数据。
步骤S702:将采集到的数据进行二进制编码,将编码后的数据存入环形缓冲区(或称之为循环缓冲区83)。
可选地,将核心模块KO采集的数据由原来字符串重新以二进制格式编排,将编排后的二进制格式的数据放入循环缓冲区。
步骤S703:对二进制格式的当前数据进行按位解析,并生成解析数据的哈希值。通过解析模块84对二进制格式的当前数据进行按位解析。
需要说明的是,二进制的数据类型相同,占用的物理内存大小就固定,根据这个原理,在对二进制格式的数据做数据解析时只要设置偏移量,就可以直接获取相应的数据,而无需执行耗时的字符串解析。
通过上述实施例,在TCP窗口中采集的数据,是以二进制格式映射到用户态,用户态在进行后续处理时,可以按位或偏移量操作,极大的提高了消息,降低了损耗。
步骤S704:检测当前数据的哈希值是否命中历史存储的哈希值。
可选地,历史存储的哈希值可以存储在哈希列表HASH LIST中。
若是,则执行步骤S705;若否,则执行步骤S706。
步骤S705:修改命中的历史数据的数据包中网络状态数据的值。
通过哈希命中模块85生成命中的新数据的数据包。
在该实施例中,每一分钟都会有一个数据包(数据的处理结果),输入到输出通道上,数据包就是一条一条流数据,在该数据包中包括TCP五元组,流量,丢包和延迟。在生成数据包之后,根据生成的数据包的TCP五元组建立哈希HASH,挂在哈希列表HASH LIST上。在处理新数据时,如果HASH命中,则直接把上一分钟的数据挂在新数据包里,修改流量,丢包和延迟的数值部分,避免内存的销毁和重新申请。
步骤S706:重新申请内存。
通过哈希分配内存模块86重新申请用于处理新数据的内存。
步骤S707:填充TCP五元组,流量,丢包和延迟内容,生成新的数据包。
可选地,通过数据填充模块87,填充新数据的数据包中的数据。
步骤S708:新生成的数据包同样建立HASH LIST,为新数据包做准备。
可选地,通过哈希列表建立模块88建立新的数据包的哈希列表。
步骤S709:新数据包通过网卡输出。
可选地,通过输出通道89将新数据包通过网卡输出计算机终端,以将新数据包输入分析系统。
通过上述实施例,由于每台计算机终端(如服务器)交互的业务相对固定,所以TCP五元组相对稳定,在上述实施例中,根据TCP五元组建立HASH,数据复用度达到90%,避免频繁的内容申请和拷贝,以把用户态耗时从单核80%降低到0.4%。
需要说明的是,对于前述的各方法实施例,为了简单描述,故将其都表述为一系列的动作组合,但是本领域技术人员应该知悉,本申请并不受所描述的动作顺序的限制,因为依据本申请,某些步骤可以采用其他顺序或者同时进行。其次,本领域技术人员也应该知悉,说明书中所描述的实施例均属于优选实施例,所涉及的动作和模块并不一定是本申请所必须的。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到根据上述实施例的方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质(如ROM/RAM、磁碟、光盘)中,包括若干指令用以使得一台终端设备(可以是手机,计算机,服务器,或者网络设备等)执行本申请各个实施例所述的方法。
实施例2
根据本申请实施例,还提供了一种用于实施上述数据的处理方法的处理装置,如图9所示,该装置包括:
第一获取单元91,用于获取采集到的当前数据,其中,当前数据至少用于记录执行业务操作过程中的网络状态;
检测单元93,用于检测是否存在与当前数据相匹配的历史数据;
处理单元95,用于若检测出存在与当前数据相匹配的历史数据,则在用于处理历史数据的内存区域中,根据当前数据更新历史数据的历史处理结果,得到当前数据对应的当前处理结果。
通过检测是否存在与当前数据相匹配的历史数据,来确定是否可以将当前数据与历史数据合并处理,若存在与该当前数据相匹配的历史数据,则可以在用于处理历史数据的内存区域中,将该当前数据与历史数据进行合并处理,而无需对其执行申请内存、按照预定规则处理、输出数据包以及释放内存的完整处理流程,从而减少了处理器执行的操作,对于海量数据来讲,每个数据减少一个或多个执行步骤,可以大大缩短对大量数据的处理而带来的时间消耗,进一步地,处理器执行的操作减少,执行操作所占用的资源也会减少。
进一步地,在检测出存在与该当前数据对应的历史数据(也即,与当前数据具有相同源的目的的数据)之后,无需释放该历史数据的内存,也无需获取与该当前数据对应的内存区域,在该历史数据所在的内存区域中,对历史数据的历史处理结果进行更新,得到该当前数据对应的当前处理结果,减少了处理器需执行的操作,同时也减少了内存占用。
可选地,检测单元包括:第一获取模块,用于从当前数据中获取当前数据的当前属性参数;检测子单元,用于检测是否存在与当前属性参数相匹配的历史属性参数;第一确定模块,用于若检测出存在与当前属性参数相匹配的历史属性参数,则确定存在与当前数据相匹配的历史数据。
根据上述实施例,当前属性参数用于表示当前数据的会话属性,其中,装置还包括:转换单元,用于在获取当前数据的当前属性参数之后,利用预定转换算法,对当前数据的会话属性进行转换,得到第一转换数据;检测子单元包括:检测模块,用于利用第一转换数据检测是否存在与当前属性参数相匹配的历史属性参数。
在一个可选的实施例中,检测模块可以包括:检测子模块,用于检测是否存在与第一转换数据一致的第二转换数据,其中,若存在与第一转换数据一致的第二转换数据,则确定检测出存在与当前属性参数相匹配的历史属性数据,其中,第二转换数据为利用预定转换算法,对历史数据的会话属性进行转换而得到的数据。
可选地,预定转换算法为哈希算法,第一转换数据表示当前数据的会话属性的哈希值,第二转换数据表示历史数据的会话属性的哈希值。
其中,当前数据的会话属性包括:当前数据的源端口、源IP地址、目的端口、目的IP地址以及传输协议。
进一步可选地,装置还包括:编码单元,用于在获取采集到的当前数据之后、且在检测是否存在与当前数据相匹配的历史数据之前,将以字符串格式表示的当前数据进行二进制编码,得到以二进制形式表示的当前数据。
可选地,处理单元包括:第二获取模块,用于从当前数据中获取当前状态数据,其中,当前状态数据用于表示执行业务的网络状态;修改模块,用于在用于处理历史数据的内存区域中,将历史处理结果中的历史状态数据修改为当前状态数据。
其中,网络状态包括:网络流量、网络丢包信息以及网络延迟信息中的至少之一。
进一步地,装置还可以包括:第二获取单元,用于在检测是否存在与当前数据相匹配的历史数据之后,若检测出不存在与当前数据相匹配的历史数据,获取用于处理当前数据的内存区域;执行单元,用于在获取到的内存区域中,对当前数据执行预定操作,得到当前数据对应的当前处理结果。
此处需要说明的是,上述模块与对应的步骤所实现的示例和应用场景相同,但不限于上述实施例所公开的内容。需要说明的是,上述模块作为装置的一部分可以运行在上述实施例所示的硬件环境中,可以通过软件实现,也可以通过硬件实现,其中,硬件环境包括网络环境。
实施例3
本申请的实施例可以提供一种计算机终端,该计算机终端可以是计算机终端群中的任意一个计算机终端设备。可选地,在本实施例中,上述计算机终端也可以替换为移动终端等终端设备。
图10示出了一种用于实现数据的处理方法的计算机终端(或移动设备)的硬件结构。如图10所示,计算机终端可以包括一个或多个(图中采用102a、102b,……,102n来示出)处理器102(处理器102可以包括但不限于微处理器MCU或可编程逻辑器件FPGA等的处理装置)、用于存储数据的存储器104、以及用于通信功能的传输模块106。除此以外,还可以包括:显示器、输入/输出接口(I/O接口)、通用串行总线(USB)端口(可以作为I/O接口的端口中的一个端口被包括)、网络接口、电源和/或相机。本领域普通技术人员可以理解,图10所示的结构仅为示意,其并不对上述电子装置的结构造成限定。例如,计算机终端还可包括比图10中所示更多或者更少的组件,或者具有与图10所示不同的配置。
应当注意到的是上述一个或多个处理器102和/或其他数据处理电路在本文中通常可以被称为“数据处理电路”。该数据处理电路可以全部或部分的体现为软件、硬件、固件或其他任意组合。此外,数据处理电路可为单个独立的处理模块,或全部或部分的结合到计算机终端10(或移动设备)中的其他元件中的任意一个内。如本申请实施例中所涉及到的,该数据处理电路作为一种处理器控制(例如与接口连接的可变电阻终端路径的选择)。
存储器104可用于存储应用软件的软件程序以及模块,如本申请实施例中的数据的处理方法对应的程序指令/数据存储装置,处理器102通过运行存储在存储器104内的软件程序以及模块,从而执行各种功能应用以及数据处理,即实现上述的数据的处理方法。存储器104可包括高速随机存储器,还可包括非易失性存储器,如一个或者多个磁性存储装置、闪存、或者其他非易失性固态存储器。在一些实例中,存储器104可进一步包括相对于处理器102远程设置的存储器,这些远程存储器可以通过网络连接至计算机终端10。上述网络的实例包括但不限于互联网、企业内部网、局域网、移动通信网及其组合。
传输装置106用于经由一个网络接收或者发送数据。上述的网络具体实例可包括计算机终端10的通信供应商提供的无线网络。在一个实例中,传输装置106包括一个网络适配器(Network Interface Controller,NIC),其可通过基站与其他网络设备相连从而可与互联网进行通讯。在一个实例中,传输装置106可以为射频(Radio Frequency,RF)模块,其用于通过无线方式与互联网进行通讯。
显示器可以例如触摸屏式的液晶显示器(LCD),该液晶显示器可使得用户能够与计算机终端10(或移动设备)的用户界面进行交互。
可选地,在本实施例中,上述计算机终端可以位于图1所示的计算机网络的多个网络设备中的至少一个网络设备。
处理器可以通过传输装置调用存储器存储的信息及应用程序,以执行下述步骤:
获取采集到的当前数据,其中,当前数据至少用于记录执行业务操作过程中的网络状态;检测是否存在与当前数据相匹配的历史数据;若检测出存在与当前数据相匹配的历史数据,则在用于处理历史数据的内存区域中,根据当前数据更新历史数据的历史处理结果,得到当前数据对应的当前处理结果。
处理器可以通过传输装置调用存储器存储的信息及应用程序,以执行下述步骤,以检测是否存在与当前数据相匹配的历史数据:从当前数据中获取当前数据的当前属性参数;检测是否存在与当前属性参数相匹配的历史属性参数;若检测出存在与当前属性参数相匹配的历史属性参数,则确定存在与当前数据相匹配的历史数据。
可选地,当前属性参数用于表示当前数据的会话属性。
处理器可以通过传输装置调用存储器存储的信息及应用程序,以执行下述步骤:在获取当前数据的当前属性参数之后,利用预定转换算法,对当前数据的会话属性进行转换,得到第一转换数据;检测是否存在与当前属性参数相匹配的历史属性参数包括:利用第一转换数据检测是否存在与当前属性参数相匹配的历史属性参数。
处理器可以通过传输装置调用存储器存储的信息及应用程序,以执行下述步骤,以利用第一转换数据检测是否存在与当前属性参数相匹配的历史属性参数:检测是否存在与第一转换数据一致的第二转换数据,其中,若存在与第一转换数据一致的第二转换数据,则确定检测出存在与当前属性参数相匹配的历史属性数据,其中,第二转换数据为利用预定转换算法,对历史数据的会话属性进行转换而得到的数据。
可选地,预定转换算法为哈希算法,第一转换数据表示当前数据的会话属性的哈希值,第二转换数据表示历史数据的会话属性的哈希值。
可选地,当前数据的会话属性包括:当前数据的源端口、源IP地址、目的端口、目的IP地址以及传输协议。
处理器可以通过传输装置调用存储器存储的信息及应用程序,以执行下述步骤,在获取采集到的当前数据之后、且在检测是否存在与当前数据相匹配的历史数据之前,将以字符串格式表示的当前数据进行二进制编码,得到以二进制形式表示的当前数据。
处理器可以通过传输装置调用存储器存储的信息及应用程序,以执行下述步骤,以根据当前数据更新历史数据的历史处理结果:从当前数据中获取当前状态数据,其中,当前状态数据用于表示执行业务的网络状态;在用于处理历史数据的内存区域中,将历史处理结果中的历史状态数据修改为当前状态数据。
其中,网络状态包括:网络流量、网络丢包信息以及网络延迟信息中的至少之一。
处理器可以通过传输装置调用存储器存储的信息及应用程序,以执行下述步骤:若检测出不存在与当前数据相匹配的历史数据,获取用于处理当前数据的内存区域;在获取到的内存区域中,对当前数据执行预定操作,得到当前数据对应的当前处理结果。
本领域普通技术人员可以理解,图10所示的结构仅为示意,计算机终端也可以是智能手机(如Android手机、iOS手机等)、平板电脑、掌上电脑以及移动互联网设备(MobileInternet Devices,MID)、PAD等终端设备。图10其并不对上述电子装置的结构造成限定。例如,计算机终端10还可包括比图10中所示更多或者更少的组件(如网络接口、显示装置等),或者具有与图10所示不同的配置。
本领域普通技术人员可以理解上述实施例的各种方法中的全部或部分步骤是可以通过程序来指令终端设备相关的硬件来完成,该程序可以存储于一计算机可读存储介质中,存储介质可以包括:闪存盘、只读存储器(Read-Only Memory,ROM)、随机存取器(RandomAccess Memory,RAM)、磁盘或光盘等。
本申请的实施例还提供了一种存储介质。可选地,在本实施例中,上述存储介质可以用于保存上述实施例所提供的数据的处理方法所执行的程序代码。
可选地,在本实施例中,上述存储介质可以位于计算机网络中计算机终端群中的任意一个计算机终端中,或者位于移动终端群中的任意一个移动终端中。
可选地,在本实施例中,存储介质被设置为存储用于执行以下步骤的程序代码:
获取采集到的当前数据,其中,当前数据至少用于记录执行业务操作过程中的网络状态;检测是否存在与当前数据相匹配的历史数据;若检测出存在与当前数据相匹配的历史数据,则在用于处理历史数据的内存区域中,根据当前数据更新历史数据的历史处理结果,得到当前数据对应的当前处理结果。
存储介质被设置为存储用于执行以下步骤的程序代码,获取采集到的当前数据,其中,当前数据至少用于记录执行业务操作,以检测是否存在与当前数据相匹配的历史数据:从当前数据中获取当前数据的当前属性参数;检测是否存在与当前属性参数相匹配的历史属性参数;若检测出存在与当前属性参数相匹配的历史属性参数,则确定存在与当前数据相匹配的历史数据。
可选地,当前属性参数用于表示当前数据的会话属性。
存储介质被设置为存储用于执行以下步骤的程序代码:在获取当前数据的当前属性参数之后,利用预定转换算法,对当前数据的会话属性进行转换,得到第一转换数据;检测是否存在与当前属性参数相匹配的历史属性参数包括:利用第一转换数据检测是否存在与当前属性参数相匹配的历史属性参数。
存储介质被设置为存储用于执行以下步骤的程序代码,以利用第一转换数据检测是否存在与当前属性参数相匹配的历史属性参数:检测是否存在与第一转换数据一致的第二转换数据,其中,若存在与第一转换数据一致的第二转换数据,则确定检测出存在与当前属性参数相匹配的历史属性数据,其中,第二转换数据为利用预定转换算法,对历史数据的会话属性进行转换而得到的数据。
可选地,预定转换算法为哈希算法,第一转换数据表示当前数据的会话属性的哈希值,第二转换数据表示历史数据的会话属性的哈希值。
可选地,当前数据的会话属性包括:当前数据的源端口、源IP地址、目的端口、目的IP地址以及传输协议。
存储介质被设置为存储用于执行以下步骤的程序代码,在获取采集到的当前数据之后、且在检测是否存在与当前数据相匹配的历史数据之前,将以字符串格式表示的当前数据进行二进制编码,得到以二进制形式表示的当前数据。
存储介质被设置为存储用于执行以下步骤的程序代码,以根据当前数据更新历史数据的历史处理结果:从当前数据中获取当前状态数据,其中,当前状态数据用于表示执行业务的网络状态;在用于处理历史数据的内存区域中,将历史处理结果中的历史状态数据修改为当前状态数据。
其中,网络状态包括:网络流量、网络丢包信息以及网络延迟信息中的至少之一。
存储介质被设置为存储用于执行以下步骤的程序代码:若检测出不存在与当前数据相匹配的历史数据,获取用于处理当前数据的内存区域;在获取到的内存区域中,对当前数据执行预定操作,得到当前数据对应的当前处理结果。
上述本申请实施例序号仅仅为了描述,不代表实施例的优劣。
在本申请的上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述的部分,可以参见其他实施例的相关描述。
在本申请所提供的几个实施例中,应该理解到,所揭露的技术内容,可通过其它的方式实现。其中,以上所描述的装置实施例仅仅是示意性的,例如所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,单元或模块的间接耦合或通信连接,可以是电性或其它的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本申请各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
所述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可为个人计算机、服务器或者网络设备等)执行本申请各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、移动硬盘、磁碟或者光盘等各种可以存储程序代码的介质。
以上所述仅是本申请的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本申请原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也应视为本申请的保护范围。
Claims (10)
1.一种数据的处理方法,其特征在于,包括:
获取采集到的当前数据,其中,所述当前数据至少用于记录执行业务操作过程中的网络状态;
检测是否存在与所述当前数据相匹配的历史数据;
若检测出存在与所述当前数据相匹配的历史数据,则在用于处理所述历史数据的内存区域中,根据所述当前数据更新所述历史数据的历史处理结果,得到所述当前数据对应的当前处理结果;
其中,在检测是否存在与所述当前数据相匹配的历史数据之后,所述方法还包括:若检测出不存在与所述当前数据相匹配的历史数据,获取用于处理所述当前数据的内存区域;在获取到的内存区域中,对所述当前数据执行预定操作,得到所述当前数据对应的当前处理结果。
2.根据权利要求1所述的处理方法,其特征在于,在获取采集到的当前数据之后、且在检测是否存在与所述当前数据相匹配的历史数据之前,所述方法还包括:
将以字符串格式表示的当前数据进行二进制编码,得到以二进制形式表示的当前数据。
3.根据权利要求1所述的处理方法,其特征在于,在用于处理所述历史数据的内存区域中,根据所述当前数据更新所述历史数据的历史处理结果包括:
从所述当前数据中获取当前状态数据,其中,所述当前状态数据用于表示执行业务的网络状态;
在用于处理所述历史数据的内存区域中,将所述历史处理结果中的历史状态数据修改为当前状态数据。
4.根据权利要求3所述的处理方法,其特征在于,所述网络状态包括:网络流量、网络丢包信息以及网络延迟信息中的至少之一。
5.根据权利要求1所述的处理方法,其特征在于,检测是否存在与所述当前数据相匹配的历史数据包括:
从所述当前数据中获取所述当前数据的当前属性参数;
检测是否存在与所述当前属性参数相匹配的历史属性参数;
若检测出存在与所述当前属性参数相匹配的历史属性参数,则确定存在与所述当前数据相匹配的历史数据。
6.根据权利要求5所述的处理方法,其特征在于,所述当前属性参数用于表示所述当前数据的会话属性,其中,
在获取所述当前数据的当前属性参数之后,所述方法还包括:利用预定转换算法,对所述当前数据的会话属性进行转换,得到第一转换数据;
检测是否存在与所述当前属性参数相匹配的历史属性参数包括:利用所述第一转换数据检测是否存在与所述当前属性参数相匹配的历史属性参数。
7.根据权利要求6所述的处理方法,其特征在于,利用所述第一转换数据检测是否存在与所述当前属性参数相匹配的历史属性参数包括:
检测是否存在与所述第一转换数据一致的第二转换数据,其中,若所述存在与所述第一转换数据一致的第二转换数据,则确定检测出存在与所述当前属性参数相匹配的历史属性数据,
其中,所述第二转换数据为利用所述预定转换算法,对所述历史数据的会话属性进行转换而得到的数据。
8.根据权利要求7所述的处理方法,其特征在于,所述预定转换算法为哈希算法,所述第一转换数据表示所述当前数据的会话属性的哈希值,所述第二转换数据表示所述历史数据的会话属性的哈希值。
9.根据权利要求6所述的处理方法,其特征在于,所述当前数据的会话属性包括:所述当前数据的源端口、源IP地址、目的端口、目的IP地址以及传输协议。
10.一种数据的处理装置,其特征在于,包括:
第一获取单元,用于获取采集到的当前数据,其中,所述当前数据至少用于记录执行业务操作过程中的网络状态;
检测单元,用于检测是否存在与所述当前数据相匹配的历史数据;
处理单元,用于若检测出存在与所述当前数据相匹配的历史数据,则在用于处理所述历史数据的内存区域中,根据所述当前数据更新所述历史数据的历史处理结果,得到所述当前数据对应的当前处理结果;
其中,所述装置还用于在检测是否存在与所述当前数据相匹配的历史数据之后,若检测出不存在与所述当前数据相匹配的历史数据,获取用于处理所述当前数据的内存区域;在获取到的内存区域中,对所述当前数据执行预定操作,得到所述当前数据对应的当前处理结果。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710091632.7A CN108460044B (zh) | 2017-02-20 | 2017-02-20 | 数据的处理方法和装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710091632.7A CN108460044B (zh) | 2017-02-20 | 2017-02-20 | 数据的处理方法和装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN108460044A CN108460044A (zh) | 2018-08-28 |
CN108460044B true CN108460044B (zh) | 2022-06-14 |
Family
ID=63221695
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201710091632.7A Active CN108460044B (zh) | 2017-02-20 | 2017-02-20 | 数据的处理方法和装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN108460044B (zh) |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112880201B (zh) * | 2021-01-28 | 2022-03-18 | 珠海格力电器股份有限公司 | 热水器参数调节方法、装置、设备及存储介质 |
CN114038187B (zh) * | 2021-11-02 | 2022-09-30 | 北京红山信息科技研究院有限公司 | 一种路段状态更新方法、装置、设备及介质 |
CN117215500B (zh) * | 2023-11-09 | 2024-01-23 | 北京友友天宇系统技术有限公司 | 一种突破LMDB Key长度的方法及系统 |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101344893A (zh) * | 2008-07-17 | 2009-01-14 | 中兴通讯股份有限公司 | 一种历史数据的存取方法和装置 |
CN101499026A (zh) * | 2008-02-01 | 2009-08-05 | 凯迈(洛阳)测控有限公司 | 基于flash rom的数据采集系统小型数据备份方法 |
Family Cites Families (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101996139B (zh) * | 2009-08-28 | 2015-11-25 | 百度在线网络技术(北京)有限公司 | 数据匹配方法和数据匹配装置 |
US20110066496A1 (en) * | 2009-09-11 | 2011-03-17 | Zengyan Zhang | Combining Historical CTR and Bid Amount in Search Message Selection |
US20150332414A1 (en) * | 2014-05-13 | 2015-11-19 | Mastercard International Incorporated | System and method for predicting items purchased based on transaction data |
-
2017
- 2017-02-20 CN CN201710091632.7A patent/CN108460044B/zh active Active
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101499026A (zh) * | 2008-02-01 | 2009-08-05 | 凯迈(洛阳)测控有限公司 | 基于flash rom的数据采集系统小型数据备份方法 |
CN101344893A (zh) * | 2008-07-17 | 2009-01-14 | 中兴通讯股份有限公司 | 一种历史数据的存取方法和装置 |
Non-Patent Citations (1)
Title |
---|
"基于粒计算的大数据处理";徐计 等;《计算机学报》;20150831;第38卷(第8期);第1497-1517页 * |
Also Published As
Publication number | Publication date |
---|---|
CN108460044A (zh) | 2018-08-28 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US20170300595A1 (en) | Data packet extraction method and apparatus | |
WO2022088779A1 (zh) | 深度报文处理方法、装置、电子设备及存储介质 | |
CN108460044B (zh) | 数据的处理方法和装置 | |
CN112954045B (zh) | 节点中的数据传输方法、装置、介质及电子设备 | |
CN109525495B (zh) | 一种数据处理装置、方法和fpga板卡 | |
CN107579920B (zh) | 数据流的传输方法、装置、存储介质及处理器 | |
US7961614B2 (en) | Information processing device, information processing method, and recording medium for reducing consumption of memory capacity | |
CN110545230B (zh) | 用于转发vxlan报文的方法和装置 | |
CN109417507A (zh) | 部分延迟的报文访问 | |
CN108462590B (zh) | 网络流量的监控方法及装置、计算机终端 | |
CN113220481A (zh) | 请求处理及反馈方法、装置、计算机设备及可读存储介质 | |
CN115801927A (zh) | 报文解析方法及装置 | |
CN102594611B (zh) | 一种网管代理更新Trap会话链表的方法 | |
CN114785805A (zh) | 一种数据传输方法、装置、电子设备以及存储介质 | |
CN115348333A (zh) | 基于udp双端通信交互的数据传输方法、系统及设备 | |
WO2020220986A1 (zh) | 一种报文处理方法、装置及设备 | |
CN112335203B (zh) | 处理局域网诊断数据 | |
CN111314184B (zh) | 基于透传机制的控制方法及系统 | |
CN112788078A (zh) | 数据传输方法、接收装置、发送装置和计算机设备 | |
CN114553730B (zh) | 一种应用识别方法、装置、电子设备及存储介质 | |
EP4319094A1 (en) | Control method and apparatus, and computing device | |
CN114828140B (zh) | 业务流量报文转发方法及装置、存储介质及电子设备 | |
CN108667566B (zh) | Tcp流数据匹配装置 | |
CN114189565A (zh) | 一种头域还原系统、方法及相关设备 | |
CN116032853A (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 |