CN109089301A - 网络数据处理系统及方法 - Google Patents
网络数据处理系统及方法 Download PDFInfo
- Publication number
- CN109089301A CN109089301A CN201810798348.8A CN201810798348A CN109089301A CN 109089301 A CN109089301 A CN 109089301A CN 201810798348 A CN201810798348 A CN 201810798348A CN 109089301 A CN109089301 A CN 109089301A
- Authority
- CN
- China
- Prior art keywords
- probe
- data
- probe data
- module
- distribution module
- 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.)
- Granted
Links
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W48/00—Access restriction; Network selection; Access point selection
- H04W48/16—Discovering, processing access restriction or access information
-
- 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/10—Active monitoring, e.g. heartbeat, ping or trace-route
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W28/00—Network traffic management; Network resource management
- H04W28/02—Traffic management, e.g. flow control or congestion control
- H04W28/06—Optimizing the usage of the radio link, e.g. header compression, information sizing, discarding information
- H04W28/065—Optimizing the usage of the radio link, e.g. header compression, information sizing, discarding information using assembly or disassembly of packets
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W28/00—Network traffic management; Network resource management
- H04W28/02—Traffic management, e.g. flow control or congestion control
- H04W28/10—Flow control between communication endpoints
- H04W28/14—Flow control between communication endpoints using intermediate storage
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Health & Medical Sciences (AREA)
- Cardiology (AREA)
- General Health & Medical Sciences (AREA)
- Computer Security & Cryptography (AREA)
- Mobile Radio Communication Systems (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明公开了一种网络数据处理系统及方法,系统包括探针设备和云端探针服务器,探针设备包括探针数据收集模块、探针数据整理模块和探针客户端模块,探针数据收集模块通过分析无线报文来收集周围无线设备的相关信息得到探针数据,并将探针数据存储在内存中;探针数据分发模块与探针数据收集模块连接;探针客户端模块与探针数据分发模块连接,通过注册探针数据分发模块获取探针数据,按照上报协议组装数据报文,并将组装后的数据报文上报给云端探针服务器。本发明能保证设备的质量、减少设备的后期维护、满足不同用户在不同场景的需求、保证设备满足公安对网络安全的要求、能节约数据上传需要的宽带资源和云端存储的服务器资源。
Description
技术领域
本发明涉及无线数据通信领域,特别涉及一种网络数据处理系统及方法。
背景技术
WiFi为IEEE定义的一个无线网络通信的工业标准(IEEE802.11)。WiFi第一个版本发表于1997年,其中定义了介质访问接入控制层(MAC层)和物理层。物理层定义了工作在2.4GHz的ISM频段上的两种无线调频方式和一种红外传输的方式,总数据传输速率设计为2Mbits。两个设备之间的通信可以自由直接(ad hoc)的方式进行,也可以在基站(BaseStation,BS)或者访问点(Access Point,AP)的协调下进行。
当一个设备给另外一个设备通过无线传输技术发送信息时,周围的其他同类设备都是能够收到这些信息的,无线探针单元技术就是基于这个原理。具体来说,只要一个无线设备在无线探针的侦听范围内,当这个无线设备(无论是终端、路由器或者其他无线设备)发送任何一帧(Frame)时,不管是发给谁,探针都能截获,并分析出此帧MAC层与物理层的一些信息,比如发送与接收设备的MAC地址、帧类型、信号强度等。对于周围的无线设备来说,探针是透明的。探针不需要与周围的设备有任何交互,其本身不需要发出任何无线信号。
主动扫描是指无线客户端工作过程中,会定期地搜索周围的无线网络,也就是主动扫描周围的无线网络。根据Probe Request帧(探测请求帧)是否携带SSID,可以将主动扫描分为两种:
客户端发送Probe Request帧(SSID为空,也就是SSID IE的长度为0):客户端会定期地在其支持的信道列表中,发送探查请求帧(Probe Request)扫描无线网络。当AP收到探查请求帧后,会回应探查响应帧(Probe Response)通告可以提供的无线网络信息。无线客户端通过主动扫描,可以主动获知可使用的无线服务,之后无线客户端可以根据需要选择适当的无线网络接入。
客户端发送Probe Request(Probe Request携带指定的SSID):当无线客户端配置希望连接的无线网络或者已经成功连接到一个无线网络情况下,客户端也会定期发送探查请求帧(Probe Request)(该报文携带已经配置或者已经连接的无线网络的SSID),当能够提供指定SSID无线服务的AP接收到探测请求后回复探查响应。通过这种方法,无线客户端可以主动扫描指定的无线网络。
被动扫描是指客户端通过侦听AP定期发送的Beacon帧发现周围的无线网络。提供无线网络服务的AP设备都会周期性发送Beacon帧,所以无线客户端可以定期在支持的信道列表监听信标帧获取周围的无线网络信息。当用户需要节省电量时,可以使用被动扫描。
探针设备可以扫描周围的无线信号,并记录每一条所解析出的记录,在一个上传周期内,将数据传输到指定的服务器,这种操作方法冗余数据多,导致传输过程中带宽资源的浪费和云端原始数据存储资源的浪费。
发明内容
本发明要解决的技术问题在于,针对现有技术的上述缺陷,提供一种能保证设备的质量、减少设备的后期维护、满足不同用户在不同场景的需求、保证设备满足公安对网络安全的要求、能节约数据上传需要的宽带资源和云端存储的服务器资源的网络数据处理系统及方法。
本发明解决其技术问题所采用的技术方案是:构造一种网络数据处理系统,包括探针设备和云端探针服务器,所述探针设备包括探针数据收集模块、探针数据分发模块和探针客户端模块,所述探针数据收集模块工作在无线驱动模块、通过分析无线报文来收集周围无线设备的相关信息得到探针数据,并将所述探针数据存储在内存中;所述探针数据分发模块与所述探针数据收集模块连接,工作在用户态,用于分发探针数据;所述探针客户端模块与所述探针数据分发模块连接,通过注册所述探针数据分发模块获取探针数据,按照上报协议组装数据报文,并将组装后的数据报文上报给所述云端探针服务器。
在本发明所述的网络数据处理系统中,所述探针数据收集模块通过使能开关控制,当功能使能时,持续进行收集工作,并把终端MAC和射频ID作为唯一标识进行去重处理;当功能关闭时,清空所有缓存信息,并不再收集。
在本发明所述的网络数据处理系统中,所述探针数据分发模块通过IOCTL机制从所述探针数据收集模块获取探针数据,每隔第一设定时间获取一次,获取后,所述探针数据收集模块把已缓存的数据进行清空操作;所述探针数据分发模块提供注册机制,支持多个业务模块进行注册,注册时提供过滤类型和时间间隔,当有业务模块进行注册时,所述探针数据分发模块使能所述探针数据收集模块,若所有业务都注册完成,所述探针数据分发模块关闭所述探针数据收集模块;所述探针数据分发模块根据注册内容,定时提供探针数据,在所述业务模块注册时指定时间间隔,并根据所述时间间隔对所述探针数据进行去重处理。
本发明还涉及一种网络数据处理方法,应用于上述网络数据处理系统,包括初始化流程、主线程流程、缓存线程流程、发送线程流程和定时器流程,所述初始化流程包括如下步骤:
A)通过配置文件获取探针设备的相关配置信息;所述相关配置信息包括上报周期、平均值时间间隔、终端类型以及云端探针服务器的相关信息;
B)根据所述平均值时间间隔注册探针数据分发模块;
C)初始化定时器模块,用于发送心跳报文;
D)进行数据结构相关内容的初始化;
E)获取已保存数据的目录索引;
F)初始化完毕后,分别创建缓存线程和发送线程;
G)创建完成后,采用主线程处理从探针数据分发模块发送过来的探针数据。
在本发明所述的网络数据处理系统中,所述主线程流程包括如下步骤:
A1)接收所述探针数据分发模块发送过来的探针数据,并对HASH链中的信息进行更新操作;
B1)判断当前时间间隔是否达到上报间隔,如是,执行步骤C1);否则,返回步骤A1);
C1)遍历所述HASH链,根据上报协议组装报文,执行步骤D1);
D1)将组装完成的报文存储到单向链表中。
在本发明所述的网络数据处理系统中,所述缓存线程流程包括如下步骤:
A2)判断系统时间是否同步成功,如是,执行步骤B2);否则,等待第二设定时间后继续进行本步骤中的判断;
B2)从所述单向链表中获取组装完成的数据包;
C2)判断所述单向链表中是否有数据,如是,修改获取到的数据包中的时间戳,执行步骤D2);否则,等待第三设定时间后返回步骤B2);
D2)判断系统是否存在SD卡,如是,则保存目录选择为SD卡,执行步骤E2);否则,则保存目录选择为内存空间,执行步骤E2);
E2)将所述数据包以二进制形式写入指定文件;
F2)对所述指定文件进行压缩处理,并保存到指定目录。
在本发明所述的网络数据处理系统中,所述发送线程流程包括如下步骤:
A3)获取文件;
B3)判断所述内存空间下是否存在文件,如是,执行步骤D3);否则,执行步骤C3);
C3)判断所述SD卡中是否存在文件,如是,执行步骤D3);否则,等待第四设定时间后返回步骤A3);
D3)读取文件并将所述文件中的内容存储到缓存中;
E3)读取完成后,则删除对应文件,如果对应目录下无任何文件,则删除对应目录;
F3)判断与所述云端探针服务器的连接是否正常,如是,执行步骤G3);否则,暂缓发送并等待第五设定时间后继续进行本步骤的判断;
G3)组装数据报文并发送给所述云端探针服务器;
H3)判断是否发送成功,如是,返回步骤A3);否则,等待第六设定时间后返回步骤F3)。
在本发明所述的网络数据处理系统中,所述定时器流程包括:所述定时器模块触发时,向指定的云端探针服务器发送心跳报文,如果正常收到回应报文,则表明与所述云端探针服务器连接正常,如果连续n次未收到回应,且n大于最大超时次数,则认为与所述云端探针服务器断开连接。
实施本发明的网络数据处理系统及方法,具有以下有益效果:由于设有探针设备和云端探针服务器,探针设备包括探针数据收集模块、探针数据分发模块和探针客户端模块,探针数据收集模块通过分析无线报文来收集周围无线设备的相关信息得到探针数据,并将探针数据存储在内存中;探针数据分发模块工作在用户态,用于分发探针数据;探针客户端模块通过注册探针数据分发模块获取探针数据,按照上报协议组装数据报文,并将组装后的数据报文上报给云端探针服务器,本发明能保证设备的质量、减少设备的后期维护、满足不同用户在不同场景的需求、保证设备满足公安对网络安全的要求、能节约数据上传需要的宽带资源和云端存储的服务器资源。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本发明网络数据处理系统及方法一个实施例中系统的结构示意图;
图2为所述实施例中多线程处理方式的示意图;
图3为所述实施例中初始化流程的流程图;
图4为所述实施例中主线程流程的流程图;
图5为所述实施例中缓存线程流程的流程图;
图6为所述实施例中发送线程流程的流程图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
在本发明网络数据处理系统及方法实施例中,其网络数据处理系统的结构示意图如图1所示。图1中,该网络数据处理系统包括探针设备和云端探针服务器Cloudserver,探针设备包括探针数据收集模块MACINFO、探针数据分发模块WP_SERVER和探针客户端模块cloudclient,探针数据收集模块MACINFO工作在无线驱动模块、通过分析无线报文来收集周围无线设备的相关信息得到探针数据,并将探针数据存储在内存中。探针数据收集模块MACINFO通过使能开关控制,当功能使能时,持续进行收集工作,并把终端MAC和射频ID作为唯一标识进行去重处理;当功能关闭时,清空所有缓存信息,并不再收集。为方便时间更新,终端的采集时间填写的是系统运行时间,即设备从启动到采集到信息一共运行多久。
探针数据分发模块WP_SERVER与探针数据收集模块MACINFO连接,工作在用户态,用于分发探针数据。该探针数据分发模块WP_SERVER的业务分为三部分,具体而言,
探针数据分发模块WP_SERVER通过IOCTL机制从探针数据收集模块MACINFO获取探针数据,每隔第一设定时间获取一次,获取后,探针数据收集模块MACINFO会把已缓存的数据进行清空操作。本实施例中,第一设定时间为一秒钟,当然,在实际应用中,第一设定时间的大小可以根据具体情况进行相应调整。
探针数据分发模块WP_SERVER提供注册机制,支持多个其他业务模块进行注册,注册时需提供过滤类型和时间间隔,当有其他业务模块进行注册时,探针数据分发模块WP_SERVER使能探针数据收集模块MACINFO,若所有业务都注册完成,探针数据分发模块WP_SERVER关闭探针数据收集模块MACINFO。
探针数据分发模块WP_SERVER根据注册内容,定时提供探针数据,在其他业务模块注册时,需要指定时间间隔,并根据该时间间隔对探针数据进行去重处理。
探针客户端模块Cloudclient与探针数据分发模块WP_SERVER连接,探针客户端模块Cloudclient通过注册探针数据分发模块WP_SERVER获取探针数据,并按照上报协议组装数据报文,将组装后的数据报文上报给云端探针服务器Cloudserver,最终完后上报云端探针服务器Cloudserver的工作。本发明的网络数据处理系统能保证设备的质量、减少设备的后期维护、满足不同用户在不同场景的需求、保证设备满足公安对网络安全的要求、能节约数据上传需要的宽带资源和云端存储的服务器资源。
该探针采用多线程的处理方式,该多线程处理方式的示意图如图2所示。
本实施例还涉及一种网络数据处理方法,该网络数据处理方法应用于本实施例中的上述网络数据处理系统,该网络数据处理方法包括初始化流程、主线程流程、缓存线程流程、发送线程流程和定时器流程。该初始化流程的流程图如图3所示,图3中,该初始化流程包括如下步骤:
步骤S01通过配置文件获取探针设备的相关配置信息:本步骤中,通过配置文件获取探针设备的相关配置信息,该相关配置信息包括上报周期、平均值时间间隔、终端类型以及云端探针服务器的相关信息。
步骤S02根据平均值时间间隔注册探针数据分发模块:本步骤中,根据平均值时间间隔注册探针数据分发模块WP_SERVER。
步骤S03初始化定时器模块,用于发送心跳报文:本步骤中,初始化定时器模块,用于发送心跳报文。
步骤S04进行数据结构相关内容的初始化:本步骤中,进行数据结构相关内容的初始化。
步骤S05获取已保存数据的目录索引:本步骤中,获取已保存数据的目录索引。
步骤S06初始化完毕后,分别创建缓存线程和发送线程:本步骤中,初始化完毕后,分别创建缓存线程和发送线程。缓存线程用以保存数据到SD卡,发送线程用以发送数据到云端探针服务器Cloudserver。
步骤S07创建完成后,采用主线程处理从探针数据分发模块发送过来的探针数据:本步骤中,创建完成后,采用主线程处理从探针数据分发模块WP_SERVER发送过来的探针数据。
图4为本实施例中主线程流程的流程图,主线程主要负责探针数据的组装工作。组装按照上报协议格式进行处理。该主线程涉及到两个数据结构:其中一个数据结构是HASH表,用于存储平均值时间间隔内的探针信息,该HASH表以终端的MAC作为唯一标识进行处理,HASH表的索引最大为128。另一个数据结构是单向链表,用于存储根据探针数据进行协议转换的数据报。根据上报周期配置,每隔一次,存储一个,最大容量8000个。
图4中,该主线程流程包括如下步骤:
步骤S11接收探针数据分发模块发送过来的探针数据,并对HASH链中的信息进行更新操作:本步骤中,接收探针数据分发模块WP_SERVER发送过来的探针数据,并对HASH链中的信息进行更新操作。其中RSSI采用追加处理,其他信息则进行覆盖处理。
步骤S12判断当前时间间隔是否达到上报间隔:本步骤中,判断当前时间间隔是否达到上报间隔,如果判断的结果为是,则执行步骤S13;否则,返回步骤S11继续接收探针数据。
步骤S13遍历HASH链,根据上报协议组装报文:如果上述步骤S12的判断结果为是,则执行本步骤。本步骤中,遍历HASH链,根据上报协议组装报文,其中报文中的时间戳为当前系统的运行时间(系统从启动到此时运行的时间)。执行完本步骤,执行步骤S14。
步骤S14将组装完成的报文存储到单向链表中:本步骤中,将组装完成的报文存储到单向链表中。存储时,如果当前系统的剩余内存小于15M,则对该信息进行丢弃处理。另外,如果单向链表中已经存储报文的个数达到8000条,则同样进行丢弃处理,目的是为了防止占用系统内存过大。通过步骤S11至步骤S14就可以实现主线程流程。
图5为本实施例中缓存线程流程的流程图,缓存线程主要负责将要发送的报文以文件方式缓存到SD卡或者内存中。图5中,该缓存线程流程包括如下步骤:
步骤S201判断系统时间是否同步成功:本步骤中,启动缓存线程,首先判断系统时间是否同步成功,如果判断的结果为是,则执行步骤S203;否则,执行步骤S202。
步骤S202等待第二设定时间:如果上述步骤S201的判断结果为否,则执行本步骤。本步骤中,等待第二设定时间后返回步骤S201继续进行判断。本实施例中,第二设定时间为10秒,也就是每隔10秒检测一次,直到检测结果是同步成功。值得一提的是,在实际应用中,第二设定时间的大小可以根据具体情况进行相应调整。
步骤S203从单向链表中获取组装完成的数据包:如果上述步骤S201的判断结果为否,则执行本步骤。本步骤中,从单向链表中获取组装完成的数据包。执行完本步骤,执行步骤S204。
步骤S204判断单向链表中是否有数据:本步骤中,判断单向链表中是否有数据,如果判断的结果为是,则执行步骤S206;否则,执行步骤S205。
步骤S205等待第三设定时间:如果上述步骤S204的判断结果为否,即单向链表为空,则执行本步骤。本步骤中,等待第三设定时间后返回步骤S203继续获取,第三设定时间是小段时间,比如:5秒。当然,在实际应用中,第三设定时间的大小可以根据具体情况进行相应调整。
步骤S206修改获取到的数据包中的时间戳:如果上述步骤S204的判断结果为是,即获取到数据包,则执行本步骤。本步骤中,修改获取到的数据包中的时间戳,修改方式如下:时间戳=当前系统时间-(当前系统运行时间–探针数据中扫描时间)。执行本步骤,执行步骤S207。
步骤S207判断系统是否存在SD卡:本步骤中,判断系统是否存在SD卡,如果判断的结果为是,则执行步骤S209;否则,执行步骤S208。
步骤S208保存目录选择为内存空间:如果上述步骤S207的判断结果为否即不存在SD卡,则执行本步骤。本步骤中,保存目录选择为内存空间,即/tmp目录,这里不再对剩余内存做判断,因在数据包存放单向链表前已经判断过。执行完本步骤,执行步骤S210。
步骤S209保存目录选择为SD卡:如果上述步骤S207的判断结果为是,即存在SD卡,则执行本步骤。本步骤中,保存目录选择为SD卡,并检查SD卡的剩余容量是否大于15M,如果空间过小,则放弃保存,并丢弃该数据包。
同时确定需要保存的文件名,格式如下:cy_MAC_TIME_index;其中,MAC表示设备MAC地址的后三个字节,TIME表示当前系统时间,index表示文件序号,从0开启,不超过8000。执行完本步骤,执行步骤S210。
步骤S210将数据包以二进制形式写入指定文件:本步骤中,将数据包以二进制形式写入指定文件。如果数据过大,超过1463(按照接口MTU为1500计算,UDP协议的数据部分最大为1472,再减去上报协议HEAD字节9),则对数据进行分割存储。目的是为了保证发送的UDP报文不会被分片,减少UDP丢包对业务的影响。对于分割存储方式来讲,所有片段存储在同一个文件中。通过特定字符(LCYL)标识,每一个分片字节数不超过1463,并且保证每个分片的探针数据是完整的。执行完本步骤,执行步骤S211。
步骤S211对指定文件进行压缩处理,并保存到指定目录:本步骤中,指定文件保存后,对指定文件进行压缩处理,并保存到指定目录。目的是尽可能减少对空间的消耗。保存的目录结构如下:
其中,每个子目录下的文件个数是有限制的。对于SD卡,每个目录限制最大文件个数为10000个;对于/tmp目录,每个目录限制文件个数为100个。主要是两方面原因,一是防止文件过多,导致查询文件卡死;另外是系统对目录下的文件个数有限定,防止过多导致最终无法保存。通过上述步骤S201至步骤S211就可以实现缓存线程流程。
图6为本实施例中发送线程流程的流程图,发送线程主要负责将数据发送给云端探针服务器Cloudserver。图6中,该发送线程流程包括如下步骤:
步骤S301获取文件:本步骤中,获取文件。
步骤S302判断内存空间下是否存在文件:本步骤中,判断内存空间下是否存在文件,即判断/tmp目录下是否存在文件,如果判断的结果为是,则执行步骤S305;否则,执行步骤S303。
步骤S303判断SD卡中是否存在文件:如果上述步骤S302的判断结果为否,即内存空间下不存在文件,则执行本步骤。本步骤中,判断SD卡中是否存在文件,如果判断的结果为是,则执行步骤S305;否则,执行步骤S304。
步骤S304等待第四设定时间:如果上述步骤S303的判断结果为否,即两个目录中都不存在文件,则执行本步骤。本步骤中,等待第四设定时间后返回步骤S301。该第四设定时间为一小段时间,例如:3秒。当然,在实际应用中,第四设定时间的大小可以根据具体情况进行相应调整。
步骤S305读取文件并将文件中的内容存储到缓存中:如果上述步骤S302的判断结果为是,或者上述步骤S303的判断结果为是,则执行本步骤。本步骤中,读取文件并将文件中的内容存储到缓存中。执行完本步骤后,执行步骤S306。
步骤S306读取完成后,则删除对应文件,如果对应目录下无任何文件,则删除对应目录:本步骤中,读取完成后,则删除对应文件,如果对应目录下无任何文件,则删除对应目录。执行完本步骤,执行步骤S307。
步骤S307判断与云端探针服务器的连接是否正常:本步骤中,判断与云端探针服务器的连接是否正常,连接状态通过心跳保活机制判断,如果判断的结果为是,则执行步骤S309;否则,执行步骤S308。
步骤S308暂缓发送并等待第五设定时间:如果上述步骤S307的判断结果为否,即处于断开状态,则执行本步骤。本步骤中,暂缓发送并等待第五设定时间返回步骤S307,也就是暂缓发送,等待连接正常后,再发送。第五设定时间的大小可以根据具体情况进行相应调整。
步骤S309组装数据报文并发送给云端探针服务器:如果上述步骤S307的判断结果为是,则执行本步骤。本步骤中,组装数据报文并发送给云端探针服务器Cloudserver。组装时,判断数据报文中是否存在分片标识。如果存在,则分多个报文发送。执行完本步骤,执行步骤S310。
步骤S310判断是否发送成功:本步骤中,判断是否发送成功,如果判断的结果为是,则返回步骤S301;否则,执行步骤S311。
步骤S311等待第六设定时间:如果上述步骤S310的判断结果为否,即发送失败,则执行本步骤。本步骤中,等待第六设定时间后返回步骤S307。本实施例中,第六设定时间为1秒钟,也就是等待1秒钟,继续发送。当然,在实际应用中,第六设定时间的大小可以根据具体情况进行相应调整。通过上述步骤S301至步骤S311可以实现发送线程流程。
对于定时器流程而言,定时器流程包括:定时器模块触发时,向指定的云端探针服务器Cloudserver(即心跳云端探针服务器)发送心跳报文,如果正常收到回应报文,则表明探针设备与云端探针服务器Cloudserver连接正常,如果连续n次未收到回应,且n大于最大超时次数,则认为探针设备与云端探针服务器Cloudserver断开连接。
总之,本发明不同于其他同行业的设备,第一,采用运营商级别的芯片,保证设备的质量,减少设备的后期维护。第二,多种设备形态的存在,满足不同用户在不同场景的需求。第三,集成多种外设,使之成为智能节点,服务大数据。第四,保证设备满足公安对网络安全的要求,为项目未来有序的发展提供保障。
在无线协议层做数据采集和整理,采用定制协议和压缩传输有效处理设备上行的流量问题。达到简化上传数据的量级,节约数据上传需要的宽带资源和云端存储的服务器资源。对数据做完整性和准确性的处理,例如伪MAC的处理,采集优化算法等,保证对应用业务的支撑,避免传统的数据盲目上传、简单平均和异常数据。
以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
Claims (8)
1.一种网络数据处理系统,其特征在于,包括探针设备和云端探针服务器,所述探针设备包括探针数据收集模块、探针数据分发模块和探针客户端模块,所述探针数据收集模块工作在无线驱动模块、通过分析无线报文来收集周围无线设备的相关信息得到探针数据,并将所述探针数据存储在内存中;所述探针数据分发模块与所述探针数据收集模块连接,工作在用户态,用于分发探针数据;所述探针客户端模块与所述探针数据分发模块连接,通过注册所述探针数据分发模块获取探针数据,按照上报协议组装数据报文,并将组装后的数据报文上报给所述云端探针服务器。
2.根据权利要求1所述的网络数据处理系统,其特征在于,所述探针数据收集模块通过使能开关控制,当功能使能时,持续进行收集工作,并把终端MAC和射频ID作为唯一标识进行去重处理;当功能关闭时,清空所有缓存信息,并不再收集。
3.根据权利要求2所述的网络数据处理系统,其特征在于,所述探针数据分发模块通过IOCTL机制从所述探针数据收集模块获取探针数据,每隔第一设定时间获取一次,获取后,所述探针数据收集模块把已缓存的数据进行清空操作;所述探针数据分发模块提供注册机制,支持多个业务模块进行注册,注册时提供过滤类型和时间间隔,当有业务模块进行注册时,所述探针数据分发模块使能所述探针数据收集模块,若所有业务都注册完成,所述探针数据分发模块关闭所述探针数据收集模块;所述探针数据分发模块根据注册内容,定时提供探针数据,在所述业务模块注册时指定时间间隔,并根据所述时间间隔对所述探针数据进行去重处理。
4.一种网络数据处理方法,其特征在于,应用于如权利要求1所述的网络数据处理系统,包括初始化流程、主线程流程、缓存线程流程、发送线程流程和定时器流程,所述初始化流程包括如下步骤:
A)通过配置文件获取探针设备的相关配置信息;所述相关配置信息包括上报周期、平均值时间间隔、终端类型以及云端探针服务器的相关信息;
B)根据所述平均值时间间隔注册探针数据分发模块;
C)初始化定时器模块,用于发送心跳报文;
D)进行数据结构相关内容的初始化;
E)获取已保存数据的目录索引;
F)初始化完毕后,分别创建缓存线程和发送线程;
G)创建完成后,采用主线程处理从探针数据分发模块发送过来的探针数据。
5.根据权利要求4所述的网络数据处理系统,其特征在于,所述主线程流程包括如下步骤:
A1)接收所述探针数据分发模块发送过来的探针数据,并对HASH链中的信息进行更新操作;
B1)判断当前时间间隔是否达到上报间隔,如是,执行步骤C1);否则,返回步骤A1);
C1)遍历所述HASH链,根据上报协议组装报文,执行步骤D1);
D1)将组装完成的报文存储到单向链表中。
6.根据权利要求5所述的网络数据处理系统,其特征在于,所述缓存线程流程包括如下步骤:
A2)判断系统时间是否同步成功,如是,执行步骤B2);否则,等待第二设定时间后继续进行本步骤中的判断;
B2)从所述单向链表中获取组装完成的数据包;
C2)判断所述单向链表中是否有数据,如是,修改获取到的数据包中的时间戳,执行步骤D2);否则,等待第三设定时间后返回步骤B2);
D2)判断系统是否存在SD卡,如是,则保存目录选择为SD卡,执行步骤E2);否则,则保存目录选择为内存空间,执行步骤E2);
E2)将所述数据包以二进制形式写入指定文件;
F2)对所述指定文件进行压缩处理,并保存到指定目录。
7.根据权利要求6所述的网络数据处理系统,其特征在于,所述发送线程流程包括如下步骤:
A3)获取文件;
B3)判断所述内存空间下是否存在文件,如是,执行步骤D3);否则,执行步骤C3);
C3)判断所述SD卡中是否存在文件,如是,执行步骤D3);否则,等待第四设定时间后返回步骤A3);
D3)读取文件并将所述文件中的内容存储到缓存中;
E3)读取完成后,则删除对应文件,如果对应目录下无任何文件,则删除对应目录;
F3)判断与所述云端探针服务器的连接是否正常,如是,执行步骤G3);否则,暂缓发送并等待第五设定时间后继续进行本步骤的判断;
G3)组装数据报文并发送给所述云端探针服务器;
H3)判断是否发送成功,如是,返回步骤A3);否则,等待第六设定时间后返回步骤F3)。
8.根据权利要求4所述的网络数据处理系统,其特征在于,所述定时器流程包括:所述定时器模块触发时,向指定的云端探针服务器发送心跳报文,如果正常收到回应报文,则表明与所述云端探针服务器连接正常,如果连续n次未收到回应,且n大于最大超时次数,则认为与所述云端探针服务器断开连接。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810798348.8A CN109089301B (zh) | 2018-07-19 | 2018-07-19 | 网络数据处理系统及方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810798348.8A CN109089301B (zh) | 2018-07-19 | 2018-07-19 | 网络数据处理系统及方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN109089301A true CN109089301A (zh) | 2018-12-25 |
CN109089301B CN109089301B (zh) | 2021-01-15 |
Family
ID=64837990
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201810798348.8A Active CN109089301B (zh) | 2018-07-19 | 2018-07-19 | 网络数据处理系统及方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN109089301B (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110809026A (zh) * | 2019-09-29 | 2020-02-18 | 视联动力信息技术股份有限公司 | 一种文件处理方法、装置、电子设备及存储介质 |
CN114900341A (zh) * | 2022-04-24 | 2022-08-12 | 京东科技信息技术有限公司 | 混合云环境下的扫描探测方法、装置、系统、设备和介质 |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102426536A (zh) * | 2011-10-26 | 2012-04-25 | 深圳市亚特尔科技有限公司 | 一种多任务间数据通信的实现方法及系统 |
WO2014068757A1 (ja) * | 2012-11-01 | 2014-05-08 | 株式会社日立製作所 | 情報処理システム、データ管理方法及びプログラム |
CN106254246A (zh) * | 2016-09-20 | 2016-12-21 | 上海斐讯数据通信技术有限公司 | 一种嗅探无线终端mac信息的方法和路由器 |
CN106413004A (zh) * | 2016-09-05 | 2017-02-15 | 上海斐讯数据通信技术有限公司 | 一种无线mac嗅探扫描方法及其装置 |
CN106790491A (zh) * | 2016-12-14 | 2017-05-31 | 日照职业技术学院 | 面向数据的物联网可移动终端智能平台的实现方法 |
CN106851719A (zh) * | 2017-04-18 | 2017-06-13 | 云熠信息科技有限公司 | 一种Wifi探针、数据均衡采集系统及方法 |
CN108243067A (zh) * | 2016-12-23 | 2018-07-03 | 上海辰智商务信息咨询有限公司 | 一种基于wifi探测的用户终端数据采集系统 |
-
2018
- 2018-07-19 CN CN201810798348.8A patent/CN109089301B/zh active Active
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102426536A (zh) * | 2011-10-26 | 2012-04-25 | 深圳市亚特尔科技有限公司 | 一种多任务间数据通信的实现方法及系统 |
WO2014068757A1 (ja) * | 2012-11-01 | 2014-05-08 | 株式会社日立製作所 | 情報処理システム、データ管理方法及びプログラム |
CN106413004A (zh) * | 2016-09-05 | 2017-02-15 | 上海斐讯数据通信技术有限公司 | 一种无线mac嗅探扫描方法及其装置 |
CN106254246A (zh) * | 2016-09-20 | 2016-12-21 | 上海斐讯数据通信技术有限公司 | 一种嗅探无线终端mac信息的方法和路由器 |
CN106790491A (zh) * | 2016-12-14 | 2017-05-31 | 日照职业技术学院 | 面向数据的物联网可移动终端智能平台的实现方法 |
CN108243067A (zh) * | 2016-12-23 | 2018-07-03 | 上海辰智商务信息咨询有限公司 | 一种基于wifi探测的用户终端数据采集系统 |
CN106851719A (zh) * | 2017-04-18 | 2017-06-13 | 云熠信息科技有限公司 | 一种Wifi探针、数据均衡采集系统及方法 |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110809026A (zh) * | 2019-09-29 | 2020-02-18 | 视联动力信息技术股份有限公司 | 一种文件处理方法、装置、电子设备及存储介质 |
CN110809026B (zh) * | 2019-09-29 | 2022-11-01 | 视联动力信息技术股份有限公司 | 一种文件处理方法、装置、电子设备及存储介质 |
CN114900341A (zh) * | 2022-04-24 | 2022-08-12 | 京东科技信息技术有限公司 | 混合云环境下的扫描探测方法、装置、系统、设备和介质 |
CN114900341B (zh) * | 2022-04-24 | 2023-11-03 | 京东科技信息技术有限公司 | 混合云环境下的扫描探测方法、装置、系统、设备和介质 |
Also Published As
Publication number | Publication date |
---|---|
CN109089301B (zh) | 2021-01-15 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US20230247388A1 (en) | Communication system, method and device for miniature intelligent sensor | |
JP5727106B2 (ja) | 無線リソース最適化方法、無線リソース最適化装置、及び無線リソース最適化システム | |
US9474101B2 (en) | Apparatus and system for managing a sensor network | |
CN103441939B (zh) | 基于IPv6无线传感器网络的多功能边界路由器 | |
CN111263338B (zh) | 蓝牙Mesh网络的配网方法与相关配网设备及系统 | |
CN103051672B (zh) | 一种异构终端环境中的终端信息获取方法及装置 | |
CN107623752B (zh) | 基于链路层的网络管理方法和装置 | |
CN109089301A (zh) | 网络数据处理系统及方法 | |
US8189459B2 (en) | Method and system for guiding packet data protocol activation | |
WO2016112527A1 (zh) | 能力信息上报方法、装置和设备 | |
CN103052094B (zh) | 一种获取无线移动终端的服务集标识的方法 | |
CN102984681B (zh) | 一种用户数据跟踪方法和系统 | |
CN109246762A (zh) | 一种本地业务分流方法及装置 | |
CN103905226B (zh) | 一种业务平台的自动部署方法和装置 | |
CN101827455B (zh) | 一种自动建立链路连接的方法、装置及一种基站 | |
CN114143741A (zh) | 一种基于LoRa无线通信技术的无线网关系统 | |
US20110131255A1 (en) | Wireless base station device and operation information collection method for the same | |
WO2015077979A1 (zh) | 维护管理方法、设备及设备维护系统 | |
CN106170133A (zh) | 一种传感网络中的多模式通信方法及装置 | |
CN110505648A (zh) | 一种无线设备防掉线方法 | |
CN113300869B (zh) | 带内网络遥感功能通信方法、网络设备及存储介质 | |
KR101673755B1 (ko) | Dds 기반의 사물 인터넷의 네트워크와 지그비 네트워크와의 연동 시스템 및 그 방법 | |
US11592316B2 (en) | Method for reading meters for fluids | |
CN104602309A (zh) | 无线网络切换引导方法与装置 | |
CN113746659A (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 |