掌桥专利:专业的专利平台
掌桥专利
首页

一种车联网异常终端识别方法及装置

文献发布时间:2023-06-19 10:08:35


一种车联网异常终端识别方法及装置

技术领域

本说明书一个或多个实施例涉及车联网数据处理技术领域,尤其涉及一种车联网异常终端识别方法及装置。

背景技术

随着车联网技术的发展,大量汽车信息被接入互联网,以通过互联网获取数据、服务等。与此同时,与之相关的网络安全问题也在不断浮现。作为保障车联网安全的重要一环,及时识别发现接入车联网网络的异常终端(指在身份信息等处与正常终端存在偏离的终端设备)十分重要。

现有技术中,通过对车联网终端的IP登录信息等进行检测,来识别该终端是否属于异常终端,该检测识别方式容易产生漏报、误报等,准确率低下。

IMSI(国际移动用户识别码,International Mobile Subscriber Identity)是区别移动用户的标志。其使用0~9的数字,总长度不超过15位。IMSI结构为MCC(MobileCountry Code)+MNC(Mobile Network Code)+MSIN(移动用户识别码,Mobilesubscription identification number),其中MCC是移动用户所属国家代号,占3位数字,MNC是移动网号码,由两位或者三位数字组成,用于识别移动用户所归属的移动通信网,MSIN用以识别某一移动通信网中的移动用户。

发明内容

有鉴于此,本说明书一个或多个实施例的目的在于提出一种车联网异常终端识别方法及装置,以解决现有技术中车辆网异常终端检测识别准确率低下的问题。

基于上述目的,本说明书一个或多个实施例提供了一种车联网异常终端识别方法,包括:

采集车联网终端的原始数据;

对所述原始数据进行聚类,获取多个数据群组以及不属于所述数据群组的第一异常数据点;

针对每个数据群组,基于所述数据群组内的数据点的MSIN值大小及IMSI值出现次数获得第一疑似异常数据点;

分别对每个数据群组进行聚类,获得第二疑似异常数据点;

若某个数据点同时属于第一疑似异常数据点和第二疑似异常数据点,则该数据点为第二异常数据点;

基于所述第一异常数据点和第二异常数据点,识别异常终端。

作为一种可选的实施方式,所述采集车联网终端的原始数据;对所述原始数据进行聚类,获取多个数据群组以及不属于所述数据群组的第一异常数据点,包括:

采集车联网终端的原始数据;

对所述原始数据进行预处理,获得待处理数据;

对所述待处理数据进行聚类,获取多个数据群组以及不属于所述数据群组的第一异常数据点。

作为一种可选的实施方式,所述对所述原始数据进行预处理,包括:

去掉所述原始数据中值为空的项;

将所述原始数据的IP地址转换为十进制;

将IP地址转换为十进制之后的所述原始数据转换为IP对应的IMSI值的格式。

作为一种可选的实施方式,所述对所述原始数据进行聚类,获取多个数据群组以及不属于所述数据群组的第一异常数据点,包括:

对所述待处理数据中的每个数据点,计算该数据点在预设范围内的局部密度;

将每个数据点的局部密度与预设的局部密度阈值进行比较,若某个数据点的局部密度大于局部密度阈值,且以该数据点为中心的预设范围内不存在局部密度大于该数据点的其他数据点,则将该数据点作为中心点,所述中心点与位于该中心点预设范围内的全部数据点共同形成一个数据群组;

不属于任何数据群组的数据点为第一异常数据点。

作为一种可选的实施方式,所述针对每个数据群组,基于所述数据群组内的数据点的MSIN值大小获得第一疑似异常数据点,包括:

针对每个数据群组,将该数据群组内的全部数据点按照MSIN值大小顺次排列;

计算相邻两个数据点之间的差值、及全部差值的平均值;

若某个数据点与相邻两个数量点之间的差值均大于平均值,则该数据点为第一疑似异常数据点。

作为一种可选的实施方式,所述针对每个数据群组,基于所述数据群组内的数据点的IMSI值出现次数获得第一疑似异常数据点,包括:

针对每个数据群组,计算每个IMSI值的出现次数,并确定IMSI值出现次数的中位数;

若某个数据点的IMSI值的出现次数低于中位数,则该数据点为第一疑似异常数据点。

作为一种可选的实施方式,所述分别对每个数据群组进行聚类,获得第二疑似异常数据点,包括:

针对每个数据群组,从数据群组中任选一个数据点,判断该数据点是否为核心点,若不是核心点,则将该数据点标记为第二疑似异常数据点;若是核心点,则将该数据点以及与该数据点的距离小于预设半径的其他数据点形成一个簇;

判断该簇内的数据点是否为核心点,若是核心点,则将与该核心点的距离小于预设半径的簇外的其他数据点纳入该簇,并返回执行判断该簇内的数据点是否为核心点的步骤,直至该簇无法纳入新的数据点;

从簇外的数据点任选一个数据点,返回执行判断该数据点是否为核心点的步骤,直至数据群组内的全部数据点标记完毕。

作为一种可选的实施方式,所述从数据群组中任选一个数据点,判断该数据点是否为核心点,包括:

从数据群组中任选一个数据点;

以该数据点为圆心,判断距该数据点预设半径内的其他数据点的数量是否大于预设样本数;

若大于预设样本数,则该数据点为核心点;若小于预设样本数,则该数据点不是核心点。

作为一种可选的实施方式,所述判断该簇内的数据点是否为核心点,若是核心点,则将与该核心点的距离小于预设半径的簇外的其他数据点纳入该簇,包括:

从该簇内的数据点中任选一个数据点;

以该数据点为圆心,判断距该数据点预设半径内的其他数据点的数量是否大于预设样本数;

若大于预设样本数,则该数据点为核心点,判断是否有簇外的其他数据点距该核心点的距离小于预设半径,若有,则将与该核心点的距离小于预设半径的簇外的其他数据点纳入该簇;若小于预设样本数,则该数据点不是核心点。

与所述车联网异常终端识别方法相对应的,本发明实施例还提供了一种车联网异常终端识别装置,包括:

采集单元,用于采集车联网终端的原始数据;

第一聚类单元,用于对所述原始数据进行聚类,获取多个数据群组以及不属于所述数据群组的第一异常数据点;

获得单元,用于针对每个数据群组,基于所述数据群组内的数据点的MSIN值大小及IMSI值出现次数获得第一疑似异常数据点;

第二聚类单元,用于分别对每个数据群组进行聚类,获得第二疑似异常数据点;

判断单元,用于若某个数据点同时属于第一疑似异常数据点和第二疑似异常数据点,则该数据点为第二异常数据点;

识别单元,用于基于所述第一异常数据点和第二异常数据点,识别异常终端。

从上面所述可以看出,本说明书一个或多个实施例提供的一种车联网异常终端识别方法及装置,根据IMSI和IP地址对原始数据进行聚类,以IP等为特征将数据划分为若干个数据群组并检测出来自异常IP的终端,得到多个数据群组以及不属于所述数据群组的第一异常数据点;然后以数据群组为单位,基于所述数据群组内的数据点的MSIN值大小及IMSI值出现次数获得第一疑似异常数据点;并分别对每个数据群组进行再次聚类,以MNC值和MSIN值为特征进一步检测IMSI值异常的数据点,获得第二疑似异常数据点;通过第一疑似异常数据点和第二疑似异常数据点获得第二异常数据点,最终通过第一异常数据点和第二异常数据点,识别出异常终端,提高了准确率。

附图说明

为了更清楚地说明本说明书一个或多个实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本说明书一个或多个实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。

图1为本说明书一个或多个实施例的车联网异常终端识别方法的逻辑示意图;

图2为本说明书一个或多个实施例的计算第一异常数据点的逻辑示意图;

图3为本说明书一个或多个实施例的基于MSIN值计算第一疑似异常数据点的逻辑示意图;

图4为本说明书一个或多个实施例的基于IMSI值计算第一疑似异常数据点的逻辑示意图;

图5为本说明书一个或多个实施例的计算第二异常数据点的逻辑示意图;

图6为本说明书一个或多个实施例的计算数据群组内的点是否为核心点的逻辑示意图;

图7为本说明书一个或多个实施例的计算簇内的点是否为核心点的逻辑示意图;

图8为本说明书一个或多个实施例的车联网异常终端识别装置的逻辑示意图。

具体实施方式

为使本公开的目的、技术方案和优点更加清楚明白,以下结合具体实施例,对本公开进一步详细说明。

下面通过对实施例的描述,本发明的具体实施方式如所涉及各部分的作用及工作原理、制造工艺及操作使用方法等,作进一步详细的说明,以帮助本领域技术人员对本发明的发明构思、技术方案有更完整、准确和深入的理解。

为达到上述目的,本发明实施例提供了一种车联网异常终端识别方法及装置,该方法及装置可以应用于终端,或者与终端相连的服务器等,具体不做限定。下面首先对本发明实施例提供的车联网异常终端识别方法进行详细说明。

本发明实施例提供的一种车联网异常终端识别方法,包括:

S100、采集车联网终端的原始数据;

S200、对所述原始数据进行聚类,获取多个数据群组以及不属于所述数据群组的第一异常数据点;

S300、针对每个数据群组,基于所述数据群组内的数据点的MSIN值大小及IMSI值出现次数获得第一疑似异常数据点;

S400、分别对每个数据群组进行聚类,获得第二疑似异常数据点;

S500、若某个数据点同时属于第一疑似异常数据点和第二疑似异常数据点,则该数据点为第二异常数据点;

S600、基于所述第一异常数据点和第二异常数据点,识别异常终端。

本发明实施例中,首先根据IMSI和IP地址对原始数据进行聚类,以IP等为特征将数据划分为若干个数据群组并检测出来自异常IP的终端,得到多个数据群组以及不属于所述数据群组的第一异常数据点;然后以数据群组为单位,基于所述数据群组内的数据点的MSIN值大小及IMSI值出现次数获得第一疑似异常数据点;并分别对每个数据群组进行再次聚类,以MNC值和MSIN值为特征进一步检测IMSI值异常的数据点,获得第二疑似异常数据点;通过第一疑似异常数据点和第二疑似异常数据点获得第二异常数据点,最终通过第一异常数据点和第二异常数据点,识别出异常终端,有效的减少了误报、漏报的发生次数,提高了准确率。

图1为本发明实施例提供的一种车联网异常终端识别方法的流程示意图,包括:

S100、采集车联网终端的原始数据。

S200、对所述原始数据进行聚类,获取多个数据群组以及不属于所述数据群组的第一异常数据点。

可选的,如图2所示,S200包括:

S201、对所述待处理数据中的每个数据点,计算该数据点在预设范围内的局部密度;

S202、将每个数据点的局部密度与预设的局部密度阈值进行比较,若某个数据点的局部密度大于局部密度阈值,且以该数据点为中心的预设范围内不存在局部密度大于该数据点的其他数据点,则将该数据点作为中心点,所述中心点与位于该中心点预设范围内的全部数据点共同形成一个数据群组;

S203、不属于任何数据群组的数据点为第一异常数据点。

本次聚类之后,获得的每个数据群组内部的数据点拥有相同或相近IP地址和MNC值,第一异常数据点为某些数据点样本与其他数据群组具有不同IP地址且来自该IP的样本数量过少不足以视为正常样本,或者某些数据样本的IMSI值与来自同样IP的其他数据样本的IMSI值数值上相差过大且数据样本数量过少不足以视为正常样本。

S300、针对每个数据群组,基于所述数据群组内的数据点的MSIN值大小及IMSI值出现次数获得第一疑似异常数据点。

可选的,所述针对每个数据群组,基于所述数据群组内的数据点的MSIN值大小获得第一疑似异常数据点,如图3所示,包括:

S310、针对每个数据群组,将该数据群组内的全部数据点按照MSIN值大小顺次排列;

S311、计算相邻两个数据点之间的差值、及全部差值的平均值;

S312、若某个数据点与相邻两个数量点之间的差值均大于平均值,则该数据点为第一疑似异常数据点。

由于来自同一IP且具有相同MNC的IMSI值的MSIN部分具有分段数值递增的特征,且平均值具有代表数据整体趋势和平均水平的数学意义,即差值的平均值可被视为不同递增数值分段间的合理差值,因此,若某个数据点与相邻两个数量点之间的差值均大于平均值,则该数据点为第一疑似异常数据点。

可选的,所述针对每个数据群组,基于所述数据群组内的数据点的IMSI值出现次数获得第一疑似异常数据点,如图4所示,包括:

S320、针对每个数据群组,计算每个IMSI值的出现次数,并确定IMSI值出现次数的中位数;

S321、若某个数据点的IMSI值的出现次数低于中位数,则该数据点为第一疑似异常数据点。

由于取样数据中不同IMSI值的出现次数可能差距较大导致出现次数中存在极大值和极小值,可使用出现次数的中位数作为出现次数的一般水平,因此,若某个数据点的IMSI值的出现次数低于中位数,则该数据点为第一疑似异常数据点。

S400、分别对每个数据群组进行聚类,获得第二疑似异常数据点。

可选的,如图5所示,S400包括:

S410、针对每个数据群组,从数据群组中任选一个数据点,判断该数据点是否为核心点,若不是核心点,则将该数据点标记为第二疑似异常数据点;若是核心点,则将该数据点以及与该数据点的距离小于预设半径的其他数据点形成一个簇;

可选的,所述从数据群组中任选一个数据点,判断该数据点是否为核心点,如图6所示,包括:

S411、从数据群组中任选一个数据点;

S412、以该数据点为圆心,判断距该数据点预设半径内的其他数据点的数量是否大于预设样本数;

S413、若大于预设样本数,则该数据点为核心点;若小于预设样本数,则该数据点不是核心点。

S420、判断该簇内的数据点是否为核心点,若是核心点,则将与该核心点的距离小于预设半径的簇外的其他数据点纳入该簇,并返回执行判断该簇内的数据点是否为核心点的步骤,直至该簇无法纳入新的数据点;

可选的,所述判断该簇内的数据点是否为核心点,若是核心点,则将与该核心点的距离小于预设半径的簇外的其他数据点纳入该簇,如图7所示,包括:

S421、从该簇内的数据点中任选一个数据点;

S422、以该数据点为圆心,判断距该数据点预设半径内的其他数据点的数量是否大于预设样本数;

S423、若大于预设样本数,则该数据点为核心点,判断是否有簇外的其他数据点距该核心点的距离小于预设半径,若有,则将与该核心点的距离小于预设半径的簇外的其他数据点纳入该簇;若小于预设样本数,则该数据点不是核心点。

S430、从簇外的数据点任选一个数据点,返回执行判断该数据点是否为核心点的步骤,直至数据群组内的全部数据点标记完毕。

由于每个数据群组具有内部数据点的MNC值相同且各项MSIN值呈线性增长趋势这一特征,第二疑似异常数据点表示某些数据样本的MSIN值与具有相同MNC的其他数据样本的MSIN值相差过大且数据样本数量过少不足以视为正常样本。

S500、若某个数据点同时属于第一疑似异常数据点和第二疑似异常数据点,则该数据点为第二异常数据点。

如此,能够避免因数据取样不足导致的误报。

S600、基于所述第一异常数据点和第二异常数据点,识别异常终端。

作为一种可选的实施方式,所述采集车联网终端的原始数据;对所述原始数据进行聚类,获取多个数据群组以及不属于所述数据群组的第一异常数据点,包括:

采集车联网终端的原始数据;

对所述原始数据进行预处理,获得待处理数据;

对所述待处理数据进行聚类,获取多个数据群组以及不属于所述数据群组的第一异常数据点。

如此,通过对原始数据进行预处理,能够将原始数据中明显异常的数据去除,有助于提高数据处理效率。

可选的,所述对所述原始数据进行预处理,包括:

去掉所述原始数据中值为空的项;

将所述原始数据的IP地址转换为十进制;

将IP地址转换为十进制之后的所述原始数据转换为IP对应的IMSI值的格式。

可以理解,该方法可以通过任何具有计算、处理能力的装置、设备、平台、设备集群来执行。

基于上面所述车联网异常终端识别方法的任意一个实施例,本发明还提供了一种车联网异常终端识别装置,如图8所示,包括:

采集单元100,用于采集车联网终端的原始数据;

第一聚类单元200,用于对所述原始数据进行聚类,获取多个数据群组以及不属于所述数据群组的第一异常数据点;

获得单元300,用于针对每个数据群组,基于所述数据群组内的数据点的MSIN值大小及IMSI值出现次数获得第一疑似异常数据点;

第二聚类单元400,用于分别对每个数据群组进行聚类,获得第二疑似异常数据点;

判断单元500,用于若某个数据点同时属于第一疑似异常数据点和第二疑似异常数据点,则该数据点为第二异常数据点;

识别单元600,用于基于所述第一异常数据点和第二异常数据点,识别异常终端。

本发明实施例中,首先根据IMSI和IP地址对原始数据进行聚类,以IP等为特征将数据划分为若干个数据群组并检测出来自异常IP的终端,得到多个数据群组以及不属于所述数据群组的第一异常数据点;然后以数据群组为单位,基于所述数据群组内的数据点的MSIN值大小及IMSI值出现次数获得第一疑似异常数据点;并分别对每个数据群组进行再次聚类,以MNC值和MSIN值为特征进一步检测IMSI值异常的数据点,获得第二疑似异常数据点;通过第一疑似异常数据点和第二疑似异常数据点获得第二异常数据点,最终通过第一异常数据点和第二异常数据点,识别出异常终端,有效的减少了误报、漏报的发生次数,提高了准确率。

为了描述的方便,描述以上装置时以功能分为各种模块分别描述。当然,在实施本说明书一个或多个实施例时可以把各模块的功能在同一个或多个软件和/或硬件中实现。

上述实施例的装置用于实现前述实施例中相应的方法,并且具有相应的方法实施例的有益效果,在此不再赘述。

实施例

下面结合表一中数据说明本检测方法。

表一

采集一段时间内的数据,如表一所示,对数据进行预处理,获得待处理数据,即将表一中的数据转换为如下格式:

['3232238341' '460040000000724'],['3232238341' '460040000000725'],

['3232238341' '460070000001023'],['3232238341' '460070000001024'],

['2015070263' '460020111117665'],['2015070263' '460020111117665'],

['2015070263' '460020111117665'],['2015070263' '460020111117667'],

['2015070263' '460020111117667'],['2015070263' '460020111117668'],

['2015070263' '460020111117668'],['2015070263' '460020111117668'],

['2015070263' '460020111117669'],['2015070263' '460020111117669'],

['2015070263' '460020111117669'],['2015070263' '460020153258932'],

['2015070263' '460020153258932'],['2015070263' '460020153258932'],

['2015070263' '460020153258933'],['2015070263' '460020243563286'],

['2015070263' '460021235443258'],['2015070263' '460021235443258'],

['2015070263' '460021235443258'],['2015070263' '460033333333333'],

['882397202' '460002222547542']。

对所述待处理数据进行聚类,获取多个数据群组以及不属于所述数据群组的第一异常数据点:

对上述数据进行聚类,聚类结果为:

数据群组[['3232238341' '460040000000724'],['3232238341' '460040000000725']],数据群组[['3232238341' '460070000001023'],['3232238341' '460070000001024']],数据群组[['2015070263' '460020111117665'],['2015070263' '460020111117665'],

['2015070263' '460020111117665'],['2015070263' '460020111117667'],

['2015070263' '460020111117667'],['2015070263' '460020111117668'],

['2015070263' '460020111117668'],['2015070263' '460020111117668'],

['2015070263' '460020111117669'],['2015070263' '460020111117669'],

['2015070263' '460020111117669'],['2015070263' '460020153258932'],

['2015070263' '460020153258932'],['2015070263' '460020153258932'],

['2015070263' '460020153258933'],['2015070263' '460020243563286'],

['2015070263' '460021235443258'],['2015070263' '460021235443258'],

['2015070263' '460021235443258']];

第一异常数据点:['2015070263' '460033333333333'],['882397202' '460002222547542']。

针对每个数据群组,基于所述数据群组内的数据点的MSIN值大小及IMSI值出现次数获得第一疑似异常数据点;

以上一步中所得的第三个数据群组为例进行分析,对该数据群组中的数据点的MSIN值进行排序,排序后全部差值的平均值为62462532,因此将['2015070263' '460020243563286']作为第一疑似异常数据点;各IMSI值出现次数的中数为3,因此将['2015070263' '460020111117667'],['2015070263' '460020153258933'],['2015070263''460020243563286']作为第一疑似异常数据点。

分别对每个数据群组进行聚类,获得第二疑似异常数据点;

对每个数据群组分别聚类后,所得结果为:数据群组[['3232238341' '460040000000724'],['3232238341' '460040000000725']],数据群组[['3232238341' '460070000001023'],['3232238341' '460070000001024']],数据群组[['2015070263' '460020111117665'],['2015070263' '460020111117667'],['2015070263' '460020111117668'],['2015070263' '460020111117669']],数据群组[['2015070263' '460020153258932'],['2015070263' '460020153258933']],第二疑似异常数据点['2015070263' '460020243563286'],第二疑似异常数据点['2015070263' '460021235443258']。

若某个数据点同时属于第一疑似异常数据点和第二疑似异常数据点,则该数据点为第二异常数据点;

比对第二疑似异常数据点与上一步所得的第一疑似异常数据点,交集的['2015070263' '460020243563286']为第二异常数据点。

基于所述第一异常数据点和第二异常数据点,识别异常终端,因此与['2015070263' '460033333333333']、['882397202' '460002222547542']、['2015070263''460020243563286']相对应的终端为异常终端。

需要说明的是,除非另外定义,本说明书一个或多个实施例使用的技术术语或者科学术语应当为本公开所属领域内具有一般技能的人士所理解的通常意义。本说明书一个或多个实施例中使用的“第一”、“第二”以及类似的词语并不表示任何顺序、数量或者重要性,而只是用来区分不同的组成部分。“包括”或者“包含”等类似的词语意指出现该词前面的元件或者物件涵盖出现在该词后面列举的元件或者物件及其等同,而不排除其他元件或者物件。“连接”或者“相连”等类似的词语并非限定于物理的或者机械的连接,而是可以包括电性的连接,不管是直接的还是间接的。

需要说明的是,本说明书一个或多个实施例的方法可以由单个设备执行,例如一台计算机或服务器等。本实施例的方法也可以应用于分布式场景下,由多台设备相互配合来完成。在这种分布式场景的情况下,这多台设备中的一台设备可以只执行本说明书一个或多个实施例的方法中的某一个或多个步骤,这多台设备相互之间会进行交互以完成所述的方法。

上述对本说明书特定实施例进行了描述。其它实施例在所附权利要求书的范围内。在一些情况下,在权利要求书中记载的动作或步骤可以按照不同于实施例中的顺序来执行并且仍然可以实现期望的结果。另外,在附图中描绘的过程不一定要求示出的特定顺序或者连续顺序才能实现期望的结果。在某些实施方式中,多任务处理和并行处理也是可以的或者可能是有利的。

所属领域的普通技术人员应当理解:以上任何实施例的讨论仅为示例性的,并非旨在暗示本公开的范围(包括权利要求)被限于这些例子;在本公开的思路下,以上实施例或者不同实施例中的技术特征之间也可以进行组合,步骤可以以任意顺序实现,并存在如上所述的本说明书一个或多个实施例的不同方面的许多其它变化,为了简明它们没有在细节中提供。

另外,为简化说明和讨论,并且为了不会使本说明书一个或多个实施例难以理解,在所提供的附图中可以示出或可以不示出与集成电路(IC)芯片和其它部件的公知的电源/接地连接。此外,可以以框图的形式示出装置,以便避免使本说明书一个或多个实施例难以理解,并且这也考虑了以下事实,即关于这些框图装置的实施方式的细节是高度取决于将要实施本说明书一个或多个实施例的平台的(即,这些细节应当完全处于本领域技术人员的理解范围内)。在阐述了具体细节(例如,电路)以描述本公开的示例性实施例的情况下,对本领域技术人员来说显而易见的是,可以在没有这些具体细节的情况下或者这些具体细节有变化的情况下实施本说明书一个或多个实施例。因此,这些描述应被认为是说明性的而不是限制性的。

本说明书一个或多个实施例旨在涵盖落入所附权利要求的宽泛范围之内的所有这样的替换、修改和变型。因此,凡在本说明书一个或多个实施例的精神和原则之内,所做的任何省略、修改、等同替换、改进等,均应包含在本公开的保护范围之内。

相关技术
  • 一种车联网异常终端识别方法及装置
  • 车联网终端的识别方法及通信装置
技术分类

06120112436144