具体实施方式
下面结合附图对本发明的具体实施方式进行说明。
首先对实施环境进行说明。
图3为终端设备的数据处理环境示意图,图3的部分结构以及具体实施细节可以参见图1、图2的实施,如图所示,蜂窝模组集成到终端设备中,实施例中,此处用以说明的集成仅仅表明物理位置,即蜂窝模组设置于终端设备内,以下为了便于说明,两者仍然作为独立装置做一说明。蜂窝模组设置有对外的连接接口,该连接接口作为终端设备的wan侧上行接口,配置有蜂窝模组对外的IP地址,典型的,该连接接口可以设置为cellular接口。gobinet或者cdc网络设备驱动程序用于在终端设备内部与蜂窝模组进行数据交互。
另外,实施中,在图3中,蜂窝模组的对外接口cellular接入外部网络,用于业务报文和状态log报文的传输。为保障业务报文的安全传输,可以将蜂窝模组设置两个对外接口记做cellular1、cellular2,配置不同的鉴权方式,获取不同的IP地址。使用蜂窝模组其中一个对外接口cellular1将该对外接口配置为VPDN(Virtual Private Dial-up Network,虚拟专用拨号网)网络,具体实现由本领域普通技术人员所已知的方法来实现,此处不再赘述。该接口作为传输终端设备的业务数据报文,保障业务数据带宽的同时也增加其安全性。
也可以使用另一个对外接口cellular2,配置为普通网络拨号,作为终端设备状态监控的状态log报文的传输通道。这样云平台根据不同的网络接收其业务报文和log报文,可以快速响应业务报文,并有效的分析log报文。
下面对该环境下的业务数据传输实施进行说明。
图4为传输业务数据流程示意图,如图所示,包括:
步骤401:蜂窝模组接入外部网络。
具体的,集成SIM卡的终端设备在上电时给蜂窝模组供电、蜂窝模组给SIM卡供电,终端设备通过AT通道用AT命令给蜂窝模组下发拨号指令,蜂窝模组正常拨号接入外部网络。
其中,SIM卡由运营商提供,蜂窝模组可以使用SIM卡的流量与外部网络互通。
此处的外部网络为将蜂窝模组接入云平台的数据传输网络,可以是运营商的专用网络、VPDN(Virtual Private Dial-up Network,虚拟专用拨号网)网络、或者其他宽带接入网络,实施中对于外部网络并不做出具体限定,只要是符合系统传输要求带宽网速的网络均可选用。
步骤402:下行设备报文通过蜂窝模组转发到外部网络。
具体的,终端设备的VLAN侧接收到由下行设备发送的以太网业务报文后,按照预定网络协议封装成TCP(Transmission Control Protocol,传输控制协议)或UDP(UserDatagram Protocol,用户数据报协议)格式的业务报文,该业务报文继续被转发到蜂窝模组;在TCP或者UDP报文被转发到蜂窝模组之前还可以按照预先的系统设计设置进行NAT(Network Address Translation,网络地址转换),当然也可以就是单纯的路由转发;
此处的下行设备为:利用终端设备进行上行数据交互且接收来自终端设备的下行数据的设备。
步骤403:网络将下行设备上报的报文转发到网络侧云平台。
具体的,蜂窝模组通过对外的连接接口将接收到的该业务报文发送到外部网络中,进而传送到网络侧云平台。
步骤404:安全模块进行安全检查。
具体的,云平台中的安全模块对接收到的业务报文进行安全检查,包括DDOS(Distributed Denial of Service,分布式拒绝服务)攻击、分片报文攻击、半连接数攻击等,具体安全业务可以根据实际情况而定,具体实施中不做要求,其检查的具体技术方案也可以采用本领域普通技术人员所已知的方法来实现,此处不再赘述,未通过安全检查的业务报文则可以直接转发至云平台中的数据分析器中由其进行后续处理。
步骤405:安全处理后通过本地报文转发到数据采集器进行解析。
具体的,将安全模块检测过的业务报文通过本地路由发送到数据采集器,由数据采集器进行协议解析,采集获取其中的业务数据。
步骤406:数据采集器将响应报文通过原路发送到下行设备。
具体的,云平台中的数据处理器对数据采集器获取的业务数据按照预设的规则进行处理后,将处理后的响应报文通过原路发送到下行设备,完成报文交互。
上述实施中,在云平台,安全模块还可以设置为主安全模块和从安全模块,在云平台中需要进行安全检查的业务报文首先被送入主安全模块进行安全检查,当判断主安全模块的负载高于预设的可承载负载时,将待进行安全检查的业务报文送入从安全模块进行报文的安全检查,以实现安全检查过程中的负载分担;当判断主安全模块无法正常工作时(例如,已经崩溃时),将待进行安全检查的业务报文送入从安全模块进行报文的安全检查,有效保障系统的安全性。
在云平台,数据采集器可以设置有多个,分别为主数据采集器和从数据采集器,在云平台中需要进行业务数据采集的业务报文首先被送入主数据采集器进行业务数据采集,当判断主数据采集器的负载高于预设的可承载负载时,将待进行数据采集的业务报文送入从数据采集器进行报文的业务数据采集,以实现数据采集过程中的负载分担;当判断主数据采集器无法正常工作时(例如,已经崩溃时),将待进行数据采集的业务报文送入从数据采集器进行报文的数据采集,有效保障系统的安全性。
进一步地,还可以将从数据采集器设置为多个,按照设定顺序(例如,数据采集器序号)在需要进行负载分担时,依次选用。
在云平台,大数据处理器可以设置有多个,分别为主数据处理器和从数据处理器,在云平台中需要进行业务数据处理的业务报文首先被送入主数据处理器进行业务数据处理,当判断主数据处理器的负载高于预设的可承载负载时,将待进行数据处理的业务报文送入从数据处理器进行报文的业务数据采集,以实现数据处理过程中的负载分担;当判断主数据处理器无法正常工作时(例如,已经崩溃时),将待进行数据处理的业务报文送入从数据处理器进行报文的数据处理,有效保障系统的安全性。
进一步地,从数据处理器也可以设置有多个,按照设定顺序(例如,数据处理器序号,数据处理器优先级等)在需要进行负载分担时,依次选用。
对于上述各模块是否负载过高的判断可以是由本模块进行判断,由此减少各模块被外部访问以及进行数据读写的频次,提高执行效率;而对于上述的各模块之间的报文传输是按照各模块本地存储的预设路由信息来实现转发,具体地路由信息设置过程和转发过程可采用本领域普通技术人员已知的任何方式,此处不再赘述。
在上述实施例中,业务数据报文在进入到云平台时首先进行安全检查能够确保进入云平台的业务数据是安全的,避免云平台受到网络攻击,提高整个系统应用的安全性;而在同样功能的模块具有多个时,由当前数据接收模块判断是否由本模块处理,在本模块无法处理时根据各模块本地存储的路由信息进行自动转发,实现了系统负载的自动分担,提高了整个系统的数据传输和处理能力,增强了系统的鲁棒性。
上述步骤401、步骤402、步骤403、步骤404中说明了数据发送到网络侧云平台的通路建立和报文安全检测的过程。在将业务数据上报网络侧云平台的同时,本发明实施例提供的技术方案中,还由蜂窝模组同时向网络侧云平台上报用于自身异常状态监控的状态log报文,供云平台对状态log报文进行处理、分析,从而可以据此了解蜂窝模组在实际应用场景的使用情况,达到对蜂窝模组状态监控和对蜂窝模组的使用寿命预判的效果。其中,状态log包括:终端设备的温度值、信号强度值。
下面对终端设备的数据处理方法的具体实施进行说明。
图5为终端设备的数据处理方法实施流程示意图,如图所示,可以包括:
步骤501、在终端设备上获取蜂窝模组的异常中断信息,以及,终端设备的温度值和/或信号强度值;
步骤502、当出现异常事件后,若在预定的异常采集周期内出现的异常事件满足预设的上报条件时,通过终端设备上的蜂窝模组的连接接口向网络侧上报状态log报文,所述连接接口是蜂窝模组发送业务报文的对外的连接接口,所述状态log报文中携带有蜂窝模组的异常中断信息,以及,终端设备的温度值和/或信号强度值,所述异常事件是指温度值高于预设范围的温度值的温度值异常,和/或,信号强度值低于预设范围的信号强度值的信号强度值异常;
步骤503、在网络侧从所述状态log报文中获取蜂窝模组的异常中断信息和终端设备的温度值和/或信号强度值,以及根据获取的终端设备的温度值和/或信号强度值进行终端设备的生命周期预判。
其中,步骤503具体实施中可以包括:
在接收到所述状态log报文后通过云平台将所述状态log报文发送至数据采集器;
在数据采集器上从所述状态log报文中获取蜂窝模组的异常中断信息,以及,终端设备的温度值和/或信号强度值;
将获取的蜂窝模组的异常中断信息,以及,终端设备的温度值和/或信号强度值转发至大数据处理器;
在大数据处理器上根据蜂窝模组的异常中断信息进行蜂窝模组的性能评估,以及,根据终端设备的温度值和/或信号强度值进行终端设备的生命周期预判。
下面再以实例来对状态log报文的数据处理进行说明,图6为状态log报文的数据处理上报流程示意图,如图所示,可以包括以下步骤:
步骤601:终端设备周期采集并在本地记录终端设备的温度值,以及信号强度值,并将其记录本地的log文件中。
具体的,可以按照预定的采集周期采集并在本地记录终端设备的温度值,以及信号强度值。
步骤602:根据所采集的终端设备的温度值和信号强度值确定异常事件。
具体的,判断所采集的终端设备的温度值和信号强度值是否为异常事件,如果是,执行步骤603,否则,不做处理。
具体的,异常事件可以按如下方式确定:预先设置终端设备的正常温度值区间以及正常的信号强度值区间,当终端设备的温度值高于设定的正常温度值区间值的最大值,或者信号强度值低于设定的正常信号强度值区间的最小值时被判定出现异常事件;
实施中,当终端设备的温度值低于设定的正常温度值,或者信号强度值高于设定的正常信号强度值时,可以不认为是出现了异常事件,因为这样的数据采集值通常不会出现,且即使偶尔出现,对于设备而言也不是不利的,仅仅在本地记录数据即可。
步骤603:启动异常采集周期。
具体的,异常采集周期用于判断是否将本地存储的状态log文件上报,其周期时间可以为多个采集周期时长,具体实施中可以根据系统容错的精度由本领域普通技术人员确定,例如,典型的,至少大于10个采集周期时长,且一般的以日为周期。
也即,实施中,在终端设备上获取终端设备的温度值和/或信号强度值时,可以是按照预定的采集周期获取的;
一个所述异常采集周期至少包括一个采集周期;
所述状态log报文中携带有至少一个所述异常采集周期内的终端设备的温度值和/或信号强度值。
步骤604:确定当前异常采集周期内是否存在连续个采集到的异常事件。
具体的,判断当前异常采集周期内是否存在连续个采集到的异常事件,如果否,则不进行处理,如果是,则执行步骤605;
步骤605:在当前异常采集周期结束时,终端设备将本异常采集周期内的温度值,以及信号强度值封装成状态log报文由蜂窝模组发送到外部网络中,进而传送到网络侧云平台。
具体的,在当前异常采集周期结束时将本地存储的状态log文件按照预定网络协议封装成状态log报文,该状态log报文通过本地路由转发到蜂窝模组,蜂窝模组通过外部接口将接收到的状态log报文发送到外部网络中,进而传送到网络侧云平台。
步骤606:云平台的安全模块检测过的状态log报文发送到数据采集器,由数据采集器采集获取其中的设备温度值和信号强度值的数据。
具体的,云平台的安全模块将通过安全检测的状态log报文通过本地路由发送到数据采集器,由数据采集器的网络协议栈解析状态log报文,采集获取其中的设备温度值和信号强度值的数据。实施中,云平台的安全模块对状态log报文进行安全检测的过程与对业务报文类似,不再赘述。
步骤607:将状态log报文中获取的信号强度值、终端设备温度值的信息转发到大数据处理器进行处理,以做出生命周期预判。
由此,通过上述方案,云平台中每次接收到的状态log报文中包括了在整个异常采集周期内出现的所有异常事件,即,包括多个采集周期中所产生的异常事件;从另一方面来说,终端设备并不是在每次采集后就进行上报,而是在异常事件达到一定频次后再上报减少了与网络侧的信息交互量。
具体的,数据采集器将从状态log报文中获取的终端设备温度值、信号强度值的信息通过本地路由转发到大数据处理器进行分析处理,以做出生命周期预判。
实施中,log意即日志,通常以时间点是终端设备记录其运行过程中发生的某些指定事件,而且log中通常包括设备的序列号值。
实施中,终端设备的温度值是通过设置在蜂窝模组表面的温度传感器来获取的;和/或,信号强度值是通过由终端设备向蜂窝模组发送AT命令进行查询获取的。
具体的,终端设备温度值可以通过设置在终端设备内部蜂窝模组表面的温度传感器来采集;信号强度值可以由终端设备向蜂窝模组发送AT命令进行查询。终端设备的采集周期可以由本领域普通技术人员按照产品需求进行设定,为保证较实时的监控模组的状态,一般设置为20~30s。
云平台中数据采集器将从状态log报文中获取的终端设备温度值、信号强度值的信息,并提供给大数据处理器,由大数据处理器进行分析处理,其中,在大数据处理器中预先设置有终端设备的温度值的正常温度值区间以及正常的信号强度值区间,当终端设备的温度值高于设定的正常温度值区间值的最大值,或者信号强度值低于设定的正常信号强度值区间的最小值时被判定出现异常事件;具体实施中,当终端设备的温度值低于设定的正常温度值,或者信号强度值高于设定的正常信号强度值并不认为是出现异常事件,因为这样的数据采集值通常不会出现,且即使偶尔出现,对于设备而言也不是不利的。关于异常事件的处理下面实施例中将进行说明。
实施中,在终端设备上获取终端设备的温度值和/或信号强度值,是按照预定的采集周期获取的;
在网络侧根据终端设备的温度值和/或信号强度值进行终端设备的生命周期预判,是按照预定的分析周期进行预判的;
在网络侧按照统计周期来确定用以进行生命周期预判的终端设备的温度值和/或信号强度值的数量;
其中,采集周期与统计周期相同,一个分析周期包括至少一个统计周期,每一个统计周期的起始时间为在网络侧接收到上报的状态log报文的时间。
具体的,云平台中数据采集器将从状态log报文中获取的终端设备温度值、信号强度值的异常事件,并提供给大数据处理器,由大数据处理器进行分析处理,其中,在大数据处理器中也预先设置有终端设备的正常温度值区间以及正常信号强度值区间。
对于每一个终端设备设定分析周期,分析周期可以由维护人员根据系统设计需求确定,通常云平台分析周期可以包括多个异常采集周期时长,以使得数据分析有足够的样本数据,通常来说,异常采集周期可以以日为单位,而分析周期选择为月。在一个分析周期内,云平台在接收到该终端设备的第一次的状态log报文时(以log报文中的终端设备序列号为判据),以该接收时间作为该台终端设备的分析周期的起始时间。当达到预定分析周期时间时,重启新的分析周期。当每个分析周期结束时,生成例如下表1的数据报表。
实施中,在网络侧根据终端设备的温度值和/或信号强度值进行终端设备的生命周期预判时,根据以下信息之一或者其组合进行生命周期预判:
分析周期的起止时间、终端设备的序列号、分析周期内终端设备的温度平均值、信号强度的平均值、温度标准差、信号强度标准差、与预设温度值区间中值的标准差、与预设信号强度值区间中值标准差。
具体的,当达到预定分析周期时间时,重启新的分析周期。当每个分析周期结束时,生成例如下表1的数据报表,该数据报表至少包括以下信息:
该分析周期的起止时间、终端设备的序列号、该分析周期内终端设备的温度平均值、信号强度的平均值、温度标准差、信号强度标准差、与预设温度值区间中值的标准差、与预设信号强度值区间中值标准差;以及该分析周期内发生异常事件的统计周期的起止时间,说明一点,此处的中值指的是区间内最大值和最小值的平均值。详见表1如下:
表1中每行表示一个分析周期,其中Time(n)、Time(n+1)指一个分析周期的起止时间、time(n)、time(n+1)指一个统计周期的起止时间。分别表示终端设备的温度和信号强度在该分析周期内的平均值;σTn、σQn分别表示分析周期内的终端设备温度和信号强度的标准差。sTn、sQn分别表示分析周期内与预设温度值区间中值的标准差和信号强度与与预设温度值区间中值的标准差,异常信息的起止时间表示该分析周期内出现异常信息的统计周期时间,Tn、Qn代表该分析周期内出现异常情况时的统计周期的温度值和信号强度值。
实施中,还可以进一步包括:
在大数据处理器上根据终端设备的温度值和/或信号强度值获取终端设备的异常事件,所述异常事件是指温度值高于预设范围的温度值的温度异常,和/或,信号强度值低于预设范围的信号强度值的信号强度异常。
具体的,异常事件指该分析周期内,仅仅温度值异常、仅仅信号强度值异常或者两者均异常。
在一个分析周期内,当连续设定个采集周期内没有出现异常情况,记做普通事件例如(Time1-Time4)。当连续设定个采集周期内只出现温度异常情况时,记做温度异常事件(例如Time5-Time6)。当连续设定个采集周期只出现信号强度异常情况时,记做信号强度异常事件(例如Time7-Time8)。当连续几个采集周期出现温度异常情况和信号强度异常事件时,记做温度、信号强度异常事件(例如Time9-Time10)。
实施中,在网络侧根据终端设备的温度值和/或信号强度值进行终端设备的生命周期预判时,包括:
在当前分析周期内未出现异常事件,则此时为该蜂窝模组的生命周期为P1=T×S0;
在当前分析周期内仅出现温度异常的情况时,该蜂窝模组的生命周期为:P=P1×ST;
在当前分析周期内仅出现信号强度值异常的情况时,该蜂窝模组的生命周期为:P=P1×SQ;
在当前分析周期内同时出现温度异常的情况时,该蜂窝模组的生命周期为:P=P1×ST×SQ;
其中,T为蜂窝模组在理想的温度和信号强度条件下的生命周期,S0为正常状态修正参数,ST为温度正常状态修正参数,SQ为信号强度正常状态修正参数。
具体的,以表1为例,基于上述表1中所记录的信息,对于该终端设备的蜂窝模组进行进一步地生命周期分析过程可以如下:
已知蜂窝模组在理想的温度和信号强度条件下的生命周期为T,这是根据蜂窝模组在设计过程中所能够确定的理论值。
在当前分析周期内未出现异常事件,则此时为该蜂窝模组的生命周期为P1=T×S0;S0为正常状态修正参数,具体实施中,虽然蜂窝模组未出现异常参数,但是对于模组而言,生命周期T通常是根据最优的温度值和信号强度值(通常为区间中值)确定,但是在实际的应用场景中,即使在预定的正常温度值区间以及正常的信号强度值区间,模组也不可能持续运行在最优状态,因此通常实际的生命周期要小于理想生命周期。
在当前分析周期内仅出现温度异常的情况时,该蜂窝模组的生命周期为:P=P1×ST,出现信号强度值异常的情况时,该蜂窝模组的生命周期为:P=P1×SQ,而当前分析周期内同时出现温度异常的情况时,该蜂窝模组的生命周期为:P=P1×ST×SQ。
根据上述的计算结果以及蜂窝模组的启用时间就可以预先判断出蜂窝模块还能够使用的时间。
对于上述Si的说明:Si可以为经验值,但是更为典型的是对相同型号的蜂窝模组进行老化实验时所确定的值;
典型的确定S0的过程为:蜂窝模组在正常温度值区间和正常信号强度值区间中确定至少包括两个区间极值,以及若干(根据实际要求精度确定,通常符合正态分布的3个即可)区间值的随机变化值作为老化测试参数值,在所选定的老化测试参数值的环境中进行连续随机的实验,确定蜂窝模组的实际生命周期T实际,如果此蜂窝模组的理论生命周期为T理论,则修正值S0=T实际/T理论。
类似的,对于ST的典型确定过程为:蜂窝模组在正常信号强度值区间中值作为老化测试的信号强度参数值,并且确定自正常温度值区间最大值开始至超出最大值一定范围(通常为超出20%的范围)内的设定个数温度值(设定个数均可以根据实际要求精度确定,通常符合正态分布的3个即可)作为老化测试参数值,在此环境中进行连续随机的实验,确定蜂窝模组的实际生命周期T实际/T,如果此蜂窝模组的理论生命周期为T理论,则修正值ST=T实际/T/T理论。
类似的,对于SQ的典型确定过程为:蜂窝模组在正常温度值区间中值作为老化测试的温度信号参数值,并且确定自正常信号强度值区间最小值开始至低于最小值一定范围(通常为低于20%的范围)内的设定个数信号强度值(设定个数均可以根据实际要求精度确定,通常符合正态分布的3个即可)作为老化测试参数值,在此环境中进行连续随机的实验,确定蜂窝模组的实际生命周期T实际/Q,如果此蜂窝模组的理论生命周期为T理论,则修正值SQ=T实际/Q/T理论。
进一步地,在一个分析周期内,当出现异常事件时,如果与预设温度值区间中值的标准差sTn超出(该标准差与该周期内温度平均值的差值)与该周期内温度平均值的比例大于系统设计容忍值,通常可设为10%时,可确定该信号模组并不适于上述具体实施例,则可以根据需要重新规划该型号终端host的应用场景使用范围,或者对蜂窝模组进行硬件设计优化,改善其散热设计。具体优化技术本领域普通技术人员已知,此处不做规定。
进一步地,在一个分析周期内,当出现异常事件时,如果与预设信号强度值区间中值的标准差sQn超出(该标准差与该周期内信号强度平均值的差值)与该周期内信号强度平均值的比例大于系统设计容忍值,通常为10%时,可确定该蜂窝模组处于网络信号较差的环境中,需要运营商改善该地区的网络信号。
由此,通过本发明上述的实施例还可以进一步地对设备用户及运营商提出设计改进的明确指向。
下面对异常中断信息的实施进行说明。异常中断信息可以包括以下信息之一或者其组合:蜂窝模组不能正常上电、蜂窝模组上电后驱动加载不正常、蜂窝模组在运行中不能够正常加载、蜂窝模组的AT接口枚举不正常、蜂窝模组拨号不成功、当蜂窝模组拨号成功后获取IP地址不成功、当蜂窝模组与外部网络建立连接后底层链路断开、终端设备向蜂窝模组发送查看网络相关的AT命令蜂窝模组返回错误。下面用以说明的实例涉及到了上述全部异常中断信息。
图7为记录异常中断信息实施流程示意图,如图所示,还可以利用log文件记录并上报蜂窝模组的异常中断信息,具体的如下图7所示,可以包括以下步骤:
步骤701:判断蜂窝模组是否正常上电,如果是,不做处理转入步骤702,如果否,在本地状态log文件中记录此次上电异常信息,例如,记做0200;
实施中,蜂窝模组可以在终端设备上电完成后再上电启动;具体的,可以在终端设备系统引导文件BOOT启动时不向蜂窝模组供电,而当操作系统(例如:kernel)启动后,才向蜂窝模组供电。
实施中,蜂窝模组是否上电正常,可以由智能监控模块通过检测蜂窝模组上电后的电压、电流、休眠信号等是否符合要求来确定其是否上电正常,检测方法均为本领域普通技术人员已知,此处不赘述。
步骤702:判断蜂窝模组上电后驱动加载是否正常,如果是,不做处理转入步骤703,如果否,在log文件中记录此次系统上电阶段驱动加载异常信息,例如,记做0201;并且重启reset蜂窝模组,继续执行步骤702;
实施中,可以由智能监控模块判断蜂窝模组启动后是否出现模组异常标识VID(供应商ID),是否创建驱动加载接口,是否加载驱动的标识(典型的,硬件的PID(产品识别码)和VID)及有效外部接口来确定是否驱动加载正常,检测方法均为本领域普通技术人员已知,此处不赘述。
步骤703:判断加载的驱动标识(PID和VID)是否与本蜂窝模组所预定的硬件驱动标识PID和VID一致,如果一致,执行步骤704,如果否,在log文件中记录初始化阶段驱动加载异常信息,例如,记做0202;并且重启reset蜂窝模组,继续执行步骤702;
实施中,蜂窝模组完成初始化过程,启动进程通过netlink创建与kernel的通道,判断加载的驱动标识(PID和VID)是否与本蜂窝模组所预定的硬件驱动标识PID和VID一致;
实施中,初始化阶段驱动加载信息异常,即PID和VID与所预定的不一致时的具体原因是蜂窝模组本身异常,上报VID可以为某个具体值,例如:9008。
在蜂窝模组进行初始化的过程中,netlink需要监听上报模组的状态,本领域普通技术人员已知,此处不赘述。
步骤704:判断运行中驱动丢失后在预定时长内能否正常加载,如果能,执行步骤705,如果否,在log文件中记录运行阶段驱动丢失异常信息,例如,记做0203;并且重启reset蜂窝模组,继续执行步骤702;
实施中,当蜂窝模组在运行中,netlink检测到模组驱动丢失后在预定时长(该预定时长的设置可以由本领域普通技术人员根据不对整个系统运行造成影响的时长来设置,例如,60s)内是否能够正常加载,如果是,执行步骤705;如果否,表示无法正常加载,需要关闭当前终端设备进程开启的任务,具体实现本领域普通技术人员已知,此处不赘述,在log文件中记录运行阶段驱动丢失异常信息,例如,记做0203;并且重启reset模组,重新进入步骤702。
实施中,无法正常加载通常是由于模组异常休眠或者死机导致驱动丢失。
步骤705:判断蜂窝模组的AT接口枚举是否正常,如果与预定的模组的接口信息一致则正常,执行步骤706;如果否,在log文件中记录AT接口异常信息,例如,记做0204,并且重启reset模组,重新进入步骤702。
实施中,AT接口枚举可以是根据所选蜂窝模组的具体型号产品确定;通常情况下。AT接口枚举的信息和蜂窝模组的接口信息一致。
步骤706:判断蜂窝模组是否拨号成功,如果成功,则执行步骤707;如果不成功,在log文件中记录拨号未成功异常信息,包括:拨号阶段reset的次数和reboot的次数,例如,记做0205,reboot重启终端设备,进入步骤701;
实施中,可以在进行设定次数(例如,三次)拨号不成功后才认为蜂窝模组拨号不成功;在设定次数内拨号不成功只重启模组,重新执行步骤702,此时拨号未成功异常信息还可以包括:拨号阶段reset的次数和reboot的次数。
在上述步骤705和步骤706之间通常为了拨号成功还需要进行获取模组信息、配置下发及匹配、网络附着和网络注册等本领域普通技术人员已知的步骤,为简化说明,本实施例中对于上述为了正常完成蜂窝模组网络接入过程不赘述。
步骤707:判断是否获取IP地址成功,如果是,执行步骤708,如果否,在log文件中记录获取IP地址异常信息,并且reset蜂窝模组,进入步骤702;
实施中,当拨号成功后,终端设备开启dhcp客户端获取IP地址,判断是否获取IP地址成功,如果是,执行步骤708,如果否,在log文件中记录获取IP地址异常信息,例如,记做0206,并且reset蜂窝模组,进入步骤702;
实施中,IP地址异常信息可以包括获取IP地址阶段重启reset模组的次数。
步骤708:判断蜂窝模组底层链路是否断开,如果是,执行步骤709,如果否,在log文件中记录蜂窝模组底层链路断开异常信息,并重新拨号,进入步骤706;
实施中,当蜂窝模组与外部网络建立连接后,检测并判断蜂窝模组底层链路是否断开,如果是,执行步骤709,如果否,在log文件中记录蜂窝模组底层链路断开异常信息,例如,记做0207,并重新拨号,进入步骤706。
实施中,蜂窝模组获取IP地址,配置路由后,蜂窝模组可以连接到外部网络;
实施中,链路断开异常信息可以包括蜂窝模组底层链路断开的次数;
实施中,当蜂窝模组连接到外部网络后,需要对蜂窝模组与外部网络的链路进行保活检测,典型的,终端设备循环下发AT命令查询蜂窝模组的状态,根据其AT的返回值进行状态判断,具体AT命令本领域普通技术人员已知,此处不再赘述。
实施中,当终端设备所处的网络环境与蜂窝模组的兼容性较差时,AT命令无法正常查询到真实的网络状态,可以使用以下的保活检测机制:终端设备开启ping探测,其探测具体技术方案也可以采用本领域普通技术人员所已知的方法来实现,此处不再赘述,当探测失败时确定为当前网络和蜂窝模组兼容性较差。
步骤709:发送查看网络相关的AT命令蜂窝模组返回是否错误,如果否,按其他现有技术处理,如果是,则确定为SIM卡、终端host、蜂窝模组的兼容性问题,在log文件中记录SIM卡异常信息,并reset蜂窝模组,进入步骤702;
实施中,判断终端设备向蜂窝模组发送查看网络相关的AT命令蜂窝模组返回是否错误,错误次数是否大于预设值,(该预设值可以根据网络状况确定,通常可以选择为三次),如果否,本申请不涉及,如果是,则确定为SIM卡、终端host、蜂窝模组的兼容性问题,在log文件中记录SIM卡异常信息,例如,记做0208,并reset蜂窝模组,进入步骤702。
由此,通过上述流程便可以在log文件中记录蜂窝模组各阶段状态的异常信息,并在异常信息发生时记录并保持到本地,下次网络重新连接后终端设备再上报的网络侧云平台。
通过以上方案可以将蜂窝模组异常状态记录到本地状态log文件中,然后将该信息包含在向网络侧上报的包含温度值、信号强度值的状态log报文中,以期通过状态log报文上报到云平台。这样在网络侧就可以利用任何大数据处理方法对接收到的状态log报文进行处理,例如,将log抽取到云平台的hdfs文件系统,用sparkStreaming进行实时计算处理,并且利用spark机器学习对结果进行人工智能分析生成数据报表等,在此并不赘述。
下面对异常中断信息的上报实施进行说明。
图8为上报异常中断信息实施流程示意图,如图所示,包含了异常中断信息的log报文的数据处理上报流程可以包括以下步骤:
步骤801:终端设备按照预定的采集周期采集并在本地状态log文件中记录终端设备的温度值和信号强度值。
步骤802:当终端设备建立连接时,将本地存储的状态log文件按照预定网络协议封装成状态log报文,该状态log报文通过本地路由转发到蜂窝模组,蜂窝模组通过外部接口将接收到云平台。
具体的,建立连接包括初次建立连接和断网后重新建立,可以包括:
如果为初次建立连接,则本地状态log文件仅仅保存本次连接建立之前蜂窝模组各阶段状态的异常信息,或者为空(表明启动状态正常);
如果为断网后重新建立连接,则本地状态log文件不仅保存本次连接建立之前蜂窝模组各阶段状态的异常信息,还可能包括在断网之前已经生成但未上报的包括温度值和信号强度值的信息。
步骤803:云平台的安全模块将通过安全检测的状态log报文通过本地路由发送到数据采集器,由数据采集器的网络协议栈解析状态log报文,采集获取其中的设备温度值和信号强度值以及的蜂窝模组各阶段状态的异常信息数据。
实施中,云平台的安全模块对状态log报文进行安全检测的过程与对业务报文类似,不赘述。
步骤804:数据采集器将从状态log报文中获取的终端设备温度值、信号强度值以及蜂窝模块各阶段异常信息值的信息通过本地路由转发到大数据处理器进行分析处理,以做出生命周期预判。
下面对云平台中获取到状态log文件后的分析实施进行说明,其中关于温度值和信号强度值预测生命周期的方案可以参见前述实施,实际上异常信息的上报只是发生在每次建立连接时,而无需等待任何采样周期。此处只描述关于异常中断信息的实施。
对于每一个终端设备设定分析周期,在一个分析周期内,云平台在接收到该终端设备的第一次的状态log报文时(以状态log报文中的终端设备序列号为判据),以该接收时刻作为分析周期的起点。
当多台终端设备在其各自的分析周期内,在之前已经有联网信息(以是否接收过该终端设备的状态log报文为判断依据)的情况下,收到在超过设定次数值的上电异常信息0200,则表明终端设备和该类型蜂窝模组的硬件兼容性较差,需要优化该终端设备的硬件设计或者蜂窝模组选型;
当多台终端设备在其各自的分析周期内,在之前已经有联网信息(以是否接收过该终端设备的状态log报文为判断依据)的情况下,收到在超过设定次数值的上电阶段驱动加载异常信息0201、运行阶段驱动丢失异常信息0203、SIM卡异常信息0208,则表明终端设备和该类型蜂窝模组的硬件兼容性较差,需要优化该终端设备的硬件设计;
当多台终端设备在其各自的分析周期内,在之前已经有联网信息(以是否接收过该终端设备的状态log报文为判断依据)的情况下,收到在超过设定次数值的驱动信息出现初始化阶段驱动加载异常信息0202、AT接口异常信息0204以及获取IP地址异常信息0206则表明蜂窝模组设计鲁棒性较差,需要优化蜂窝模组;
当多台终端设备在其各自的分析周期内,在之前已经有联网信息(以是否接收过该终端设备的状态log报文为判断依据)的情况下,收到在超过设定次数值的拨号未成功异常信息0205则表明当前网络覆盖交差,需要优化网络环境。
由上述分析容易看出,在保障链路正常运行为前提,对蜂窝模组进行reset操作,收集、分析、统计log信息进而做出合理的预判。维护人员即可根据统计结果在出现问题之前将模组提前更换掉,从而可以保证较小客户的损失和模组的维护成本。本方案可以较快度定位出问题的原因并可以快速推进客户业务进而推动蜂窝模组在通信行业的推广。
基于同一发明构思,本发明实施例中还提供了一种终端设备的数据处理系统、一种计算机设备、一种计算机可读存储介质,由于这些设备解决问题的原理与一种终端设备的数据处理方法相似,因此这些设备的实施可以参见方法的实施,重复之处不再赘述。
本发明实施例中提供的终端设备的数据处理系统包括:
终端设备,用于获取蜂窝模组的异常中断信息,以及,终端设备的温度值和/或信号强度值后,当出现异常事件后,若在预定的异常采集周期内出现的异常事件满足预设的上报条件时,通过终端设备上的蜂窝模组的连接接口向网络侧上报状态log报文,所述连接接口是蜂窝模组发送业务报文的对外的连接接口,所述状态log报文中携带有蜂窝模组的异常中断信息,以及,终端设备的温度值和/或信号强度值,所述异常事件是指温度值高于预设范围的温度值的温度异常,和/或,信号强度值低于预设范围的信号强度值的信号强度异常;
网络侧设备,用于从所述状态log报文中获取蜂窝模组的异常中断信息和终端设备的温度值和/或信号强度值,以及根据终端设备的温度值和/或信号强度值进行终端设备的生命周期预判。
为了描述的方便,以上所述装置的各部分以功能分为各种模块或单元分别描述。当然,在实施本发明时可以把各模块或单元的功能在同一个或多个软件或硬件中实现。
在实施本发明实施例提供的技术方案时,可以按如下方式实施。
一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现如下所述方法:
在终端设备上获取蜂窝模组的异常中断信息,以及,终端设备的温度值和/或信号强度值;
当出现异常事件后,若在预定的异常采集周期内出现的异常情况满足预设的上报条件时,通过终端设备上的蜂窝模组的连接接口向网络侧上报状态log报文,所述连接接口是蜂窝模组发送业务报文的对外的连接接口,所述状态log报文中携带有蜂窝模组的异常中断信息,以及,终端设备的温度值和/或信号强度值,所述异常事件是指温度值高于预设范围的温度值的温度异常,和/或,信号强度值低于预设范围的信号强度值的信号强度异常;
在网络侧从所述状态log报文中获取蜂窝模组的异常中断信息和终端设备的温度值和/或信号强度值,以及根据获取的终端设备的温度值和/或信号强度值进行终端设备的生命周期预判。
实施中,在终端设备上获取蜂窝模组的异常中断信息,以及,终端设备的温度值和/或信号强度值时,是按照预定的采集周期获取的;
一个所述异常采集周期至少包括一个采集周期;
所述状态log报文中携带有至少一个所述异常采集周期内的蜂窝模组的异常中断信息,以及,终端设备的温度值和/或信号强度值。
实施中,在终端设备上获取终端设备的温度值和/或信号强度值,是按照预定的采集周期获取的;
在网络侧根据终端设备的温度值和/或信号强度值进行终端设备的生命周期预判,是按照预定的分析周期进行预判的;
该方法包括:在网络侧按照统计周期来确定用以进行生命周期预判的终端设备的温度值和/或信号强度值的数量;
其中,采集周期与统计周期相同,一个分析周期包括至少一个统计周期,每一个统计周期的起始时间为在网络侧接收到上报的状态log报文的时间。
实施中,所述终端设备的温度值是通过设置在蜂窝模组表面的温度传感器来获取的;和/或,
信号强度值是通过由终端设备向蜂窝模组发送AT命令进行查询获取的。
实施中,在网络侧根据终端设备的温度值和/或信号强度值进行终端设备的生命周期预判时,根据以下信息之一或者其组合进行生命周期预判:
分析周期的起止时间、终端设备的序列号、分析周期内终端设备的温度平均值、信号强度的平均值、温度标准差、信号强度标准差、与预设温度值区间中值的标准差、与预设信号强度值区间中值标准差。
实施中,所述异常中断信息包括以下信息之一或者其组合:
蜂窝模组不能正常上电、蜂窝模组上电后驱动加载不正常、蜂窝模组在运行中不能够正常加载、蜂窝模组的AT接口枚举不正常、蜂窝模组拨号不成功、当蜂窝模组拨号成功后获取IP地址不成功、当蜂窝模组与外部网络建立连接后底层链路断开、终端设备向蜂窝模组发送查看网络相关的AT命令蜂窝模组返回错误。
实施中,在大网络侧根据终端设备的温度值和/或信号强度值进行终端设备的生命周期预判时,包括:
在当前分析周期内未出现异常事件,则此时为该蜂窝模组的生命周期为P1=T×S0;
在当前分析周期内仅出现温度异常的情况时,该蜂窝模组的生命周期为:P=P1×ST;
在当前分析周期内仅出现信号强度值异常的情况时,该蜂窝模组的生命周期为:P=P1×SQ;
在当前分析周期内同时出现温度异常的情况时,该蜂窝模组的生命周期为:P=P1×ST×SQ;
其中,T为蜂窝模组在理想的温度和信号强度条件下的生命周期,S0为正常状态修正参数,ST为温度正常状态修正参数,SQ为信号强度正常状态修正参数。
本发明实施例中还提供了一种计算机可读存储介质,所述计算机可读存储介质存储有执行终端设备的数据处理方法的计算机程序。具体可参见计算机设备中处理器执行所述计算机程序时实现的方式。
综上所述,采用上述实施方案,实现了对终端设备环境温度和蜂窝模组进行状态监控-处理-监控-上报-云分析到达反馈的闭环系统。进一步的,能够对蜂窝模组的异常状态利用云服务进行大数据分析,到达定位、维护进而预判的效果。
本领域内的技术人员应明白,本发明的实施例可提供为方法、系统、或计算机程序产品。因此,本发明可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本发明可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器和光学存储器等)上实施的计算机程序产品的形式。
本发明是参照根据本发明实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
显然,本领域的技术人员可以对本发明进行各种改动和变型而不脱离本发明的精神和范围。这样,倘若本发明的这些修改和变型属于本发明权利要求及其等同技术的范围之内,则本发明也意图包含这些改动和变型在内。