CN110995887B - 一种id关联方法和装置 - Google Patents
一种id关联方法和装置 Download PDFInfo
- Publication number
- CN110995887B CN110995887B CN201911300739.3A CN201911300739A CN110995887B CN 110995887 B CN110995887 B CN 110995887B CN 201911300739 A CN201911300739 A CN 201911300739A CN 110995887 B CN110995887 B CN 110995887B
- Authority
- CN
- China
- Prior art keywords
- key
- host
- same
- value
- score
- 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
- 238000000034 method Methods 0.000 title claims abstract description 67
- 238000001914 filtration Methods 0.000 claims abstract description 3
- 230000015654 memory Effects 0.000 claims description 15
- 238000007405 data analysis Methods 0.000 claims description 11
- 230000008569 process Effects 0.000 claims description 10
- 238000004364 calculation method Methods 0.000 claims description 6
- 238000012216 screening Methods 0.000 claims description 5
- 238000012163 sequencing technique Methods 0.000 claims description 3
- 238000004458 analytical method Methods 0.000 abstract description 6
- 230000000875 corresponding effect Effects 0.000 abstract 4
- 230000002596 correlated effect Effects 0.000 abstract 1
- 241000720945 Hosta Species 0.000 description 29
- 235000014510 cooky Nutrition 0.000 description 6
- 238000001514 detection method Methods 0.000 description 5
- 239000000463 material Substances 0.000 description 5
- 238000005070 sampling Methods 0.000 description 5
- 238000010586 diagram Methods 0.000 description 3
- 230000004927 fusion Effects 0.000 description 3
- 238000012360 testing method Methods 0.000 description 2
- 230000008859 change Effects 0.000 description 1
- 238000010276 construction Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 230000007613 environmental effect Effects 0.000 description 1
- 230000003993 interaction Effects 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 230000007246 mechanism Effects 0.000 description 1
- 238000010295 mobile communication Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 238000003672 processing method Methods 0.000 description 1
- 238000011160 research Methods 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
- 239000007787 solid Substances 0.000 description 1
- 239000002699 waste material Substances 0.000 description 1
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L61/00—Network arrangements, protocols or services for addressing or naming
- H04L61/30—Managing network names, e.g. use of aliases or nicknames
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/90—Details of database functions independent of the retrieved data types
- G06F16/95—Retrieval from the web
- G06F16/951—Indexing; Web crawling techniques
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/90—Details of database functions independent of the retrieved data types
- G06F16/95—Retrieval from the web
- G06F16/955—Retrieval from the web using information identifiers, e.g. uniform resource locators [URL]
- G06F16/9566—URL specific, e.g. using aliases, detecting broken or misspelled links
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L41/00—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
- H04L41/14—Network analysis or design
Landscapes
- Engineering & Computer Science (AREA)
- Databases & Information Systems (AREA)
- Theoretical Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Data Mining & Analysis (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本发明涉及互联网技术领域,提供了一种ID关联方法和装置。其中方法包括将对应IP相同且Host‑Key相同且Host‑Key的value值相同情况的标识设定为IV;将对应IP相同且Host‑Key相同且Host‑Key的value值不同情况的标识设定为Iv;将对应IP不同且Host‑Key相同且Host‑Key的value值相同情况的标识设定为iV;将对应IP不同且Host‑Key相同且Host‑Key的value值不同情况的标识设定为iv;给每一组Host‑Key计算得分,从而筛选出ID。本发明通过将独立的设备ID进行关联,从而能够更精确的检测出设备的数量,以及提高对同一对象的分析准确性。
Description
【技术领域】
本发明涉及互联网技术领域,特别是涉及一种ID关联方法和装置。
【背景技术】
由于网络共享检测等技术需要一种能够唯一标识设备的ID,使用这种ID就能够匹配出一个IP用户的流量是由几个设备发出的。通过将某IP发出的流量与唯一标识设备的ID进行匹配,如果匹配出N个不同值,则能够检测出这个IP的流量是由N个设备组成的。传统的设备ID检测方法对于ID项是独立处理的,无法进行关联。例如一个IP用户的流量里面使用MAC地址这个ID检测到了5个不同值,表明这个IP流量是由5个不同设备组成。又使用手机号这个ID检测到了3个不同值,表明这个IP流量是由3个不同设备组成。那么这个IP地址流量里面5个不同MAC地址的设备和3个不同手机号的设备之间是什么关系,无法判断,可能3个不同手机号的设备就在那5个不同MAC设备里面,但是也可能是另外的3个设备,例如5台PC和3台手机,由于缺少判断条件,因此最终只能取最大值,表示这个IP的流量最多是由5个设备组成。
鉴于此,克服该现有技术所存在的缺陷是本技术领域亟待解决的问题。
【发明内容】
本发明要解决的技术问题是现有技术中因为环境复杂性的原因,无法有效的识别出同一IP下可能关联的多个设备情况。
本发明采用如下技术方案:
第一方面,本发明提供了一种ID关联方法,设定对应IP相同情况的标识为I、对应IP不同情况的标识为i、对应Host-Key相同且Host-Key的value值相同情况的标识为V、对应Host-Key相同且Host-Key的value值不同情况的标识为v,方法包括:
将对应IP相同且Host-Key相同且Host-Key的value值相同情况的标识设定为IV;将对应IP相同且Host-Key相同且Host-Key的value值不同情况的标识设定为Iv;将对应IP不同且Host-Key相同且Host-Key的value值相同情况的标识设定为iV;将对应IP不同且Host-Key相同且Host-Key的value值不同情况的标识设定为iv;
依据IV和iv的参数值越大越优、Iv和iV的参数值越小越优的对应关系,根据对应每一组Host-Key统计的IV、iv、Iv和iV,计算每一组Host-Key的得分;
根据每一组Host-Key的得分,动态的筛选出当前数据分析场景中的多个用于标识待分析对象的ID;
根据筛选出的多个待分析对象的ID,进行流量的遍历,对于同一流量中包含有至少两个待分析对象的ID的,建立相应至少两个待分析对象的ID的关联关系。
优选的,在分析流量数据时,方法还包括:
对于两条流量数据中,若各自包含的ID之间建立有关联关系,并且,两条流量数据中没有所述建立有关联关系ID之外的其它ID;则将所述两条流量数据作为关联流量数据;
其中,在进行所述建立有关联关系ID中任一对象的分析过程中,所述两条流量数据均作为被分析流量数据存在。
优选的,所述根据对应每一组Host-Key统计的IV、iv、Iv和iV,计算每一组Host-Key的得分,具体包括:
根据公式Score=(IV*iv)/(Iv*iV)来计算每一组Host-key的得分;或者,
根据公式Score=(IV-Iv)*(iv-iV)来计算每一组Host-key的得分;或者,
根据公式Score=(IV+iv)/(IV+iv+Iv+iV)*100来计算每一组Host-key的得分。
优选的,所述根据每一组Host-Key的得分,动态的筛选出当前数据分析场景中的多个ID,具体包括:
取Host-Key计算得分位于预设第一排名值之前的Host-Key作为当前数据分析场景动态生成的ID。
优选的,所述根据每一组Host-Key的得分,动态的筛选出当前数据分析场景中的多个ID中,具体为针对同一IP地址,需要确定相应IP地址的ID时,方法包括:
针对同一IP地址下,将对应的多个Host-Key计算得分进行排序,取其中排名位于第二预设排名之前的Host-Key作为所述IP地址对应的ID。
优选的,所述预设第一排名值为200-500或者排名位于总的前10%作为所述预设第一排名值。
优选的,在根据对应每一组Host-Key统计的IV、iv、Iv和iV,计算每一组Host-Key的得分之前,所述方法还包括:
根据所述Iv和/或iV的参数值在总的统计数量中的占比,确定相应占比是否超过第一预设阈值;
若所述Iv和/或iV在总的统计数量中的占比超过所述第一预设阈值,则跳过相应Host-Key组合的得分计算。
优选的,若所述Iv和/或iV在总的统计数量中的占比超过所述第一预设阈值,所述方法还包括:
对于Iv在总的统计数量中的占比超过所述第一预设阈值,进一步分析IP相同情况下出现Iv情况的各Key名称;确定其中Key为用户名或者其中Key为设备MAC地址,则在日志中记录相应IP为潜在的工作室。
优选的,所述Host-Key中的Key包括设备MAC地址、手机号、用户名、应用ID、IMEI号、位置信息中的任意一种。
优选的,对于获取到数据,按照统计出的Host(i)-Key(i),根据公式:
Host(i)-Key(i):[IP(1),Value(1),IV(1),Iv(1),iV(1),iv(1)],[IP(2),Value(2),IV(2),Iv(2),iV(2),iv(2)],…,[IP(j),Value(j),IV(j),Iv(j),iV(j),iv(j)]进行数据梳理;其中,i为Host-Key组合的标志号,j为对应各Host-Key组合下具体的IP数量。
第二方面,本发明还提供了一种ID关联装置,用于实现第一方面所述的ID关联方法,所述装置包括:
至少一个处理器;以及,与所述至少一个处理器通信连接的存储器;其中,所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述处理器执行,用于执行第一方面所述的ID关联方法。
第三方面,本发明还提供了一种非易失性计算机存储介质,所述计算机存储介质存储有计算机可执行指令,该计算机可执行指令被一个或多个处理器执行,用于完成第一方面所述的ID关联方法。
本发明对ID的发现是通过现场数据学习到的,而非预先设置好的,具有现场自适应性。通过现场数据能够学习到全量唯一标识设备的ID,因此数量较人为定义更全面、客观、准确。进一步的,通过将独立的设备ID进行关联,从而能够更精确的检测出设备的数量,以及提高对同一对象的分析准确性。
【附图说明】
为了更清楚地说明本发明实施例的技术方案,下面将对本发明实施例中所需要使用的附图作简单地介绍。显而易见地,下面所描述的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本发明实施例提供的一种ID关联方法的流程示意图;
图2是本发明实施例提供的一种ID关联关系使用方法的流程示意图;
图3是本发明实施例提供的一种ID关联方法的分析流程示意图;
图4是本发明实施例提供的一种ID发现方法的流程示意图;
图5是本发明实施例提供的一种ID发现方法的实例中表现的数据内容;
图6是本发明实施例提供的一种ID发现方法的实例中表现的数据内容;
图7是本发明实施例提供的一种ID关联方法的装置结构示意图。
【具体实施方式】
为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。
在本发明的描述中,术语“内”、“外”、“纵向”、“横向”、“上”、“下”、“顶”、“底”等指示的方位或位置关系为基于附图所示的方位或位置关系,仅是为了便于描述本发明而不是要求本发明必须以特定的方位构造和操作,因此不应当理解为对本发明的限制。
目前运营商产生的HTTP协议流量日志里面可供使用的信息有[流量源IP地址、流量目的IP地址、流量源端口号、流量目的端口号、Host、URI、User-Agent、日志时间戳]这些必要的字段信息。发明人发现在寻找一个能够唯一标识设备的ID的过程中,由于ID唯一性的要求,需要使用[流量源IP地址]作为被标识的对象,因此[流量源IP地址]这个字段是有用的,而像[流量目的IP地址]、[流量源端口号]、[流量目的端口号]、[日志时间戳]这些字段信息,不论从某个IP发出的流量是单个设备,还是多个设备,其值都会有多个,因此不存在区别性,因此无法利用。而像[User-Agent]字段,相同种类的设备它的值是相同的,不存在区分性,因此作为唯一标识设备的ID不够充分。
综上分析Host信息代表流量访问的目标服务器,而URI里面又包含用户查询参数,类似key=value这样的多个键值对,携带出设备、应用、用户等信息。因此通过进一步分析[Host:key=value](代表Host相同情况下的key参数名下的参数值value)的内容,可以用于进一步挖掘和分析出ID的信息。接下来,将进一步阐述其实现机制。
在本发明中统一资源标识符(Uniform Resource Identifier,简写为:URI)字段内容以“&”符号分割每一对参数对,又以“=”符号分割参数名(Key)和参数值(Value);通过上述分析可知悉,一条有效的网络消息中,其可以具有多个key=value这样的键值对,用于携带出设备、应用、用户等信息。由于某些参数名Key在不同的应用中含义或名称不同,如key表现为“u”时,在A应用代表“user”,但在“B”应用中代表“url”,这样单以Key作为索引不够唯一,故在本发明各实施例中以“Host-Key”共同作为索引,然后把每一条流量日志数据中出现的源IP、Value和以下4个计数器(对应IV的计数器、对应Iv的计数器、对应iV的计数器、对应iv的计数器初始值为1)追加到对应的索引之后,这样就构成一个字典集合。构造的结构如下表一所示。
表一:
在每个“Host-Key”内作统计时,相同IP内、不同IP之间Value都可能会有相同或不同的值。作为一个唯一标识设备的ID,理想情况是对于大量不同的IP,在相同的“Host-Key”内出现的不同值要多,这说明大量的用户在使用设备时经常会出现这个Key,并且Value值也不同,代表唯一性,同时不同IP间相同值要少,否则这个Key对于不同的设备不具有辨识度;
同时,IP相同时在指定的“Host-Key”内相同值的出现次数要高,以确保在有限的采样时间内能够采集到这个key,也就是作为一个唯一标识设备的ID还要能够复现。
对IV、Iv、iV、iv的说明:
(1)IV:相同IP内相同Host-Key的Value出现相同值的个数计数。
(2)Iv:相同IP内相同Host-Key的Value出现不同值的个数计数。该值越小越好。因为一个用户若是在使用设备时某个Key的值一直变化,那么它就无法作为ID去区别设备,比如随机数和当前时间类的Key等,都是一直在变化的。
(3)iV:不同IP间相同Host-Key的Value出现相同值的个数计数。因为不同用户在使用设备时产生的值尽可能不同才会有大的区分度。
(4)iv:不同IP间相同Host-Key的Value出现不同值的个数计数。该值越大越能体现这个“Host-Key”在不同的设备上是高频出现的,具有最大的参考价值。
此外,下面所描述的本发明各个实施方式中所涉及到的技术特征只要彼此之间未构成冲突就可以相互组合。
实施例1:
本发明实施例1提供了一种ID关联方法,设定对应IP相同情况的标识为I、对应IP不同情况的标识为i、对应Host-Key相同且Host-Key的value值相同情况的标识为V、对应Host-Key相同且Host-Key的value值不同情况的标识为v,如图1所示,方法包括:
在步骤201中,将对应IP相同且Host-Key相同且Host-Key的value值相同情况的标识设定为IV;将对应IP相同且Host-Key相同且Host-Key的value值不同情况的标识设定为Iv;将对应IP不同且Host-Key相同且Host-Key的value值相同情况的标识设定为iV;将对应IP不同且Host-Key相同且Host-Key的value值不同情况的标识设定为iv。
在步骤202中,依据IV和iv的参数值越大越优、Iv和iV的参数值越小越优的对应关系,根据对应每一组Host-Key统计的IV、iv、Iv和iV,计算每一组Host-Key的得分。
在步骤203中,根据每一组Host-Key的得分,动态的筛选出当前数据分析场景中的多个用于标识待分析对象的ID。
在本发明实施例中,所述待分析对象可以是一个更为宏观的概念,相对于流量数据中直接表征的设备标识符、手机号、MAC地址等等含义而言,所述分析对象可以包括他们,但是,更高层面的可以用于保证用户、企业等等。
在步骤204中,根据筛选出的多个待分析对象的ID,进行流量的遍历,对于同一流量中包含有至少两个待分析对象的ID的,建立相应至少两个待分析对象的ID的关联关系。
上述的建立关联关系可以是用于表征同一IP下的用户对象,也可以用于表征不同IP下的企业对象,具体根据实际的关联方式而定。
本发明实施例中对ID的发现是通过现场数据学习到的,而非预先设置好的,具有现场自适应性。通过现场数据能够学习到全量唯一标识设备的ID,因此数量较人为定义更全面、客观、准确。进一步的,通过将独立的设备ID进行关联,从而能够更精确的检测出设备的数量,以及提高对同一对象的分析准确性。
对于本发明实施例的关联方式的应用,即如何根据关联方式确定参与共同分析的数据内容,存在一种优选的操作规则,如图2所示,具体在分析流量数据时,方法还包括:
在步骤205中,对于两条流量数据中,若各自包含的ID之间建立有关联关系,并且,两条流量数据中没有所述建立有关联关系ID之外的其它ID;则将所述两条流量数据作为关联流量数据;
其中,在进行所述建立有关联关系ID中任一对象的分析过程中,所述两条流量数据均作为被分析流量数据存在。
在本发明实施例中,所述根据对应每一组Host-Key统计的IV、iv、Iv和iV,计算每一组Host-Key的得分,具体包括:
根据公式一、Score=(IV*iv)/(Iv*iV)来计算每一组Host-key的得分;或者,
根据公式二、Score=(IV-Iv)*(iv-iV)来计算每一组Host-key的得分;或者,
根据公式三、Score=(IV+iv)/(IV+iv+Iv+iV)*100来计算每一组Host-key的得分。
上述三个公式各有特点,其中,公式一的分差最大,适合于当前分析的数据量较大的场景,从而能够拉开不同Host-Key组合的分差;而公式三属于三个公式中计算最为准确的,但是其劣势也在于计算的结果会比较高概率出现计算分值重叠的情况。具体采用哪一种公式,则根据实际情况中所涉及的数据量的多少、已经数据中的复杂情况而定。
在本发明实施例中,所涉及的从而动态的筛选出当前数据分析场景中的多个ID,在实际实现过程中,至少也可以区分为以下两种情况。
情况一、
取Host-Key计算得分位于预设第一排名值之前的Host-Key作为当前数据分析场景动态生成的ID。其中,所述预设第一排名值为200-500或者排名位于总的前10%作为所述预设第一排名值,优选的,还要综合考虑所述第一排名值之前的ID,其所对应的流量数据或者数据大小能够覆盖整个当前场景下数据量的80%以上。在具体实现过程中,若覆盖量低于70%则可以考虑调整所述第一排名值,即调高所述第一排名值,使得更多的Host-Key组合被筛选出作为ID。
情况二:
具体为针对同一IP地址,需要确定其ID时,方法包括:
针对同一IP地址下,将对应的多个Host-Key计算得分进行排序,取其中排名位于第二预设排名之前的Host-Key作为所述IP地址对应的ID。其中,第二预设排名包括但不限于10-50之间任一值,还可以根据具体情况进行调整,通常要保证第二预设排名所指定的Host-Key所标定的数据占总数据的百分比达到80%(这里在互联网领域则可指代的是消息条数,其他领域还可以指代的是数据大小)以上为优,即保证了所选择出来的ID在总数据量中的覆盖特性,表明没有遗漏必要的ID。
上述两种情况差异在于,情况一是基于数据中IP作为数据标识,并未被所有的携带在各数据中;此时,就需要根据本发明实施例提出的方法,通过直接计算各Host-Key分值,来得到ID。而情况二则是在确保IP被有效携带在数据中,而需要明确出一个可以代替IP成为ID的或者是一个在局域网环境下,多终端共用一个IP场景下,如何快速确定出一个Host-Key,可以用于表征该局域网环境下各个终端的ID。
结合本发明实施例,考虑到更为复杂的应用场景,在根据对应每一组Host-Key统计的IV、iv、Iv和iV,计算每一组Host-Key的得分之前,如图3所示,所述方法还包括:
在步骤301中,根据所述Iv和/或iV的参数值在总的统计数量中的占比,确定相应占比是否超过第一预设阈值。此处的第一预设阈值属于经验值,可以是50%,或者更高一些。
在步骤302中,若所述Iv和/或iV在总的统计数量中的占比超过所述第一预设阈值,则跳过相应Host-Key组合的得分计算。其原理是做一轮筛选,对于上述述Iv和/或iV在总的统计数量中的占比超过所述第一预设阈值,则认定为即便通过后续手段生成ID,也属于不可靠的的ID,因此,提前做过滤处理,避免后面计算过程中浪费计算资源。
相应的,若所述Iv和/或iV在总的统计数量中的占比超过所述第一预设阈值,所述方法还包括:
在步骤303中,对于Iv在总的统计数量中的占比超过所述第一预设阈值,进一步分析IP相同情况下出现Iv情况的各Key名称;确定其中Key为用户名或者其中Key为设备MAC地址,则在日志中记录相应IP为潜在的工作室。
上述步骤301-303已经涉及对生成ID过程中的附带分析结构展示,即本发明所提出的方法不仅仅能够发现ID,而且,能够在相应的发现ID的过程中,发现更多有效的信息。
在本发明实施例中,所述Host-Key中的Key包括但不局限于设备MAC地址、手机号、用户名、应用ID、IMEI号、位置信息中的任意一种。
在本发明实施例中,为了便于数据的统计,对于获取到数据,按照统计出的Host(i)-Key(i),根据公式:
Host(i)-Key(i):[IP(1),Value(1),IV(1),Iv(1),iV(1),iv(1)],[IP(2),Value(2),IV(2),Iv(2),iV(2),iv(2)],…,[IP(j),Value(j),IV(j),Iv(j),iV(j),iv(j)]进行数据梳理;其中,i为Host-Key组合的标志号,j为对应各Host-Key组合下具体的IP数量。上述公式尤其适用于针对IP分析出可替代所述IP作为设备或者用户标识的ID。
实施例2:
在本发明实施例中,在使用实施例1所阐述的方法进行测试时,尤其是在实施例1的情况二中进一步寻找唯一ID时,发现一问题,参考如下表二示例:
表二:
Host | Key | value | IV | Iv | iV | iv |
dns.weixin.qq.com | uin | 1305491620 | 50 | 3 | 1188 | 24332 |
表二中“uin”这个Key经过验证是微信号,可以看到,当iV取最大值时,竟然出现1188个不同IP下的相同微信号,这与实际不符,经查看这1188个出现在不同IP间的相同的微信号是“0”,显然不是一个真正的微信号,是一种特殊值。所以,为避免在其他Key中出现类似的统计偏差,对4个计数都选取了以次大计数值作为最终统计结果,且经检验效果很好。
(1)IV:相同IP内相同Host-Key的Value出现相同值的个数计数,对这些计数值按大小排列,取次大值作为最终结果。取次大值的原因:由于该值越大表明用户在使用设备时都会产生这个值,但当取最大值时可能会导致一些特殊值引入的偏差。
(2)Iv:相同IP内相同Host-Key的Value出现不同值的个数计数,对这些计数值按大小排列,取次大值作为最终结果。
(3)iV:不同IP间相同Host-Key的Value出现相同值的个数计数,对这些计数值按大小排列,取次大值作为最终结果。
(4)iv:不同IP间相同Host-Key的Value出现不同值的个数计数,对这些计数值按大小排列,取次大值作为最终结果。
相应的方法过程如图4所示,包括以下步骤:
在步骤401中,输入上述构造好的数据进行对比。
构造方式具体如实施例1中所展示的,按照统计出的Host(i)-Key(i),根据公式:
Host(i)-Key(i):[IP(1),Value(1),IV(1),Iv(1),iV(1),iv(1)],[IP(2),Value(2),IV(2),Iv(2),iV(2),iv(2)],…,[IP(j),Value(j),IV(j),Iv(j),iV(j),iv(j)]进行数据梳理;其中,i为Host-Key组合的标志号,j为对应各Host-Key组合下具体的IP数量。上述公式尤其适用于针对IP分析出可替代所述IP作为设备或者用户标识的ID。
在步骤402中,IP相同且Host-Key相同,统计Value值相同的个数赋值给IV。
在步骤403中,IP不同且Host-Key相同,统计Value值相同的个数赋值给iV。
在步骤404中,IP相同且Host-Key相同,统计Value值不同的个数赋值给Iv。
在步骤405中,IP不同且Host-Key相同,统计Value值不同的个数赋值给iv。
在步骤406中,IV、Iv、iV、iv计数进行运算后筛选出最终ID。
实施例3:
在本发明实施例中,通过实例展现关联关系建立的可能遇到情况,相比较实施例1而言,还新增了在出现key不同而value相同时,如何建立关联关系的方式。
使用设备的流量做为学习素材,对以上方法得出的唯一标识设备的ID列表进行匹配,如果发现某些个ID出现在同一条流量中,那么这些个ID就属于硬关联,或者物理关联。既如果有HostA:KeyA、HostA:KeyB……HostA:KeyN在同一条设备流量中出现,当在学习素材中匹配到HostA:KeyA=ValueA,HostA:KeyB=ValueB,HostA:KeyN=ValueN,那么就可以得出这N个Value都是同一个用户的,因此这不同ID之间就产生了一种关联。既X设备的ID-Value集合[HostA:KeyA=ValueXA,HostA:KeyB=ValueXB,……HostA:KeyN=ValueXN]。同理,对于Y设备也会得到它的ID-Value集合[HostA:KeyA=ValueYA,HostA:KeyB=ValueYB,……HostA:KeyN=ValueYN]。
有了以上经过学习素材产生的关联集合,就可以对设备流量进行检测。例如当在采样时间间隔内,匹配到了(HostA:KeyB=ValueXB,HostA:KeyN=ValueYN),如果没有关联关系,是不能对这两个匹配项进行操作的,但由于有之前学习到的关联关系,因为ID-Value集合里有[HostA:KeyB=ValueXB,HostA:KeyN=ValueXN],因此存在(HostA:KeyN=ValueXN,HostA:KeyN=ValueYN),既存在两个不同的设备。这种方法能够关联一些同一个目标服务的ID,但是不能关联不同服务的ID。
另外还存在一种关联方法,既一个设备不同服务携带出的唯一标识设备的ID,虽然名称可能不一样例如有的是HostA:KeyA(例如m)=MAC地址,HostB:KeyB(例如MA)=MAC地址,HostC:KeyC(例如mac)=MAC地址等等。但由于携带出的ID值都是同一个内容,因此存在同值不同Key的关联关系,既[HostA-KeyA,HostB-KeyB,HostC-KeyC……]都是一种ID类型。同样在学习素材中,如果匹配学习到了X设备的[HostA:KeyA=ValueXA,HostB:KeyB=ValueXB,……HostN:KeyN=ValueXN]关联集合。那么在之后的设备检测当中,如果匹配到了(HostB:KeyB=ValueXB,HostN:KeyN=ValueYN),则由于有学习到的关联关系[HostB:KeyB=ValueXB,HostN:KeyN=ValueXN](ValueXB=ValueXN)的存在,因此可得(HostN:KeyN=ValueXN,HostN:KeyN=ValueYN)存在两台不同的设备。
以上两种ID关联方法“硬关联”和“同值不同key”的关联链还存在融合的关系,既当“硬关联”存在[HostA:KeyA,HostA:KeyB,……HostN:KeyN]时,且“同值不同key”的关联链存在[HostN:KeyN,HostM:KeyM,……]时,就会得到“硬关联”加“同值不同Key”的融合链,既[HostA:KeyA,HostA:KeyB,……HostN:KeyN,HostM:KeyM,……]。这样当进行设备检测时,如果匹配到[HostA:KeyB=ValueXB,HostM:KeyYM]时,由于前期由融合关联链学习到[HostA:KeyB=ValueXB,HostM:KeyXM]的关系,因此存在[HostM:KeyXM,HostM:KeyYM],因此可以检测到两台设备。
当有了这种ID关联的方法之后,可以解决之前提到的ID匹配结果之间无法操作的问题。例如,如果经过学习素材学习到关联链X链[HostA:MAC地址=ValueXA,HostA:手机号=ValueXB,HostB:手机号=ValueXB],Y链[HostA:MAC地址=ValueYA,HostA:手机号=ValueYB,HostB:手机号=ValueYB]。Z链[HostB:手机号=ValueZB]。那么单独使用HostA:MAC地址这个ID匹配到了X、Y两台设备,而HostB:手机号这个ID匹配到了Z一台设备。如果没有ID关联链,则最终只能得出此IP地址的流量由最多两台设备组成。而如果使用了如上的关联链,则因为有[HostA:MAC地址=ValueXA,HostB:手机号=ValueXB]和[HostA:MAC地址=ValueYA,HostB:手机号=ValueYB]的集合,因此有(HostB:手机号=ValueXB,HostB:手机号=ValueYB,HostB:手机号=ValueZB)的结果,因此可以检测出三台设备。
实施例4:
本发明实施例进一步完善了针对于实施例1所提出方法的理论研究,具体的,发明人发现不同ID之间有一定的关联关系,目前发现5种普遍的ID关联关系:
第一种,同值不同Key:
既在一个IP内,不同的Key名所对应的值是相同的,例如MAC地址(mc=,Mac=),IMEI号(I=,imei=),QQ号(uin=,qq=),IP地址(ip=,i=)等等,这些Key可能属于相同的Host(同一个应用),或者不同Host(不同应用),当找到这种对应关系,既例如Host1:key1=Host2:key2=Host3:key3这种属于某一种Key关系链时(这些key的value相同),当采样到Host1:key1时,即可得知Host3:key3的值,因此当检测到目标IP出现Host1:key1=A值,Host3:key3=B值时,即可检测出2个。
如图5所示,357143048701996是后面:
mcgi.v.qq.com:device_id;
btrace.qq.com:userId;
btrace.qq.com:devid;
btrace.qq.com:imei;
这些key都是等效的。
第二种,“硬关联”:
属于同一条XDR记录的key,既Host1:key1,key2,key3。当采样时获取到Host1:key1=A用户key1值,key3=A用户key3值时。如果后续采样到Host1:key1=A用户key1值,Host1:key3=B用户key3值,然后查找之前记录过的关联关系,发现还有A用户key3值,所以存在A、B用户key3值。即可发现2个用户。
如图6所示,第一列是key所属host,第二列是host能够关联上的key的集合。
第三种,Cookie,Referer,User-agent关联表:
这三种关联表同属于,用第三方信息进行关联的关联表。
后面三种,同一IP的一个Cookie,或者一个Referer,或者一种UA的key具有关联性。
cookie1:{host1[key11,key12,key13,…],host2[key21,key22,key23,…]}
referer1:{host1[key11,key12,key13,…],host2[key21,key22,key23,…]}
ua1:{host1[key11,key12,key13,…],host2[key21,key22,key23,…]}
其中关联性的强弱按cookie->referrer->ua依次减弱,因为cookie内可能因为含有唯一ID等内容而使得cookie值唯一,而referer因可能不含有唯一信息而无法区分是否是不同设备发出的相同referer,ua亦同。
采样期间,当cookie/referer/ua相同时,将key值对应的value记录下来。那么每一种cookie/referrer/ua都会学习到一个各自的key-value集合。可以采用多次采样,去除掉噪声(可能非同一台设备发出)。
那么当检测时即可发现集合内值如果发生变化,那么就产生了一个新的集合或者说新的设备。
实施例5:
如图7所示,是本发明实施例的ID关联装置的架构示意图。本实施例的ID关联装置包括一个或多个处理器21以及存储器22。其中,图7中以一个处理器21为例。
处理器21和存储器22可以通过总线或者其他方式连接,图7中以通过总线连接为例。
存储器22作为一种非易失性计算机可读存储介质,可用于存储非易失性软件程序和非易失性计算机可执行程序,如实施例1中的ID关联方法。处理器21通过运行存储在存储器22中的非易失性软件程序和指令,从而执行ID关联方法。
存储器22可以包括高速随机存取存储器,还可以包括非易失性存储器,例如至少一个磁盘存储器件、闪存器件、或其他非易失性固态存储器件。在一些实施例中,存储器22可选包括相对于处理器21远程设置的存储器,这些远程存储器可以通过网络连接至处理器21。上述网络的实例包括但不限于互联网、企业内部网、局域网、移动通信网及其组合。
所述程序指令/模块存储在所述存储器22中,当被所述一个或者多个处理器21执行时,执行上述实施例1中的ID关联方法,例如,执行以上描述的图1-图4所示的各个步骤。
值得说明的是,上述装置和系统内的模块、单元之间的信息交互、执行过程等内容,由于与本发明的处理方法实施例基于同一构思,具体内容可参见本发明方法实施例中的叙述,此处不再赘述。
本领域普通技术人员可以理解实施例的各种方法中的全部或部分步骤是可以通过程序来指令相关的硬件来完成,该程序可以存储于一计算机可读存储介质中,存储介质可以包括:只读存储器(ROM,Read Only Memory)、随机存取存储器(RAM,Random AccessMemory)、磁盘或光盘等。
以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内所作的任何修改、等同替换和改进等,均应包含在本发明的保护范围之内。
Claims (10)
1.一种ID关联方法,其特征在于,设定对应IP相同情况的标识为I、对应IP不同情况的标识为i、对应Host-Key相同且Host-Key的value值相同情况的标识为V、对应Host-Key相同且Host-Key的value值不同情况的标识为v,方法包括:
将对应IP相同且Host-Key相同且Host-Key的value值相同情况的标识设定为IV;将对应IP相同且Host-Key相同且Host-Key的value值不同情况的标识设定为Iv;将对应IP不同且Host-Key相同且Host-Key的value值相同情况的标识设定为iV;将对应IP不同且Host-Key相同且Host-Key的value值不同情况的标识设定为iv;
依据IV和iv的参数值越大越优、Iv和iV的参数值越小越优的对应关系,根据对应每一组Host-Key统计的IV、iv、Iv和iV,计算每一组Host-Key的得分;
根据每一组Host-Key的得分,动态的筛选出当前数据分析场景中的多个用于标识待分析对象的ID;
根据筛选出的多个待分析对象的ID,进行流量的遍历,对于同一流量中包含有至少两个待分析对象的ID的,建立相应至少两个待分析对象的ID的关联关系。
2.根据权利要求1所述的ID关联方法,其特征在于,在分析流量数据时,方法还包括:
对于两条流量数据中,若各自包含的ID之间建立有关联关系,并且,两条流量数据中没有所述建立有关联关系ID之外的其它ID;则将所述两条流量数据作为关联流量数据;
其中,在进行所述建立有关联关系ID中任一对象的分析过程中,所述两条流量数据均作为被分析流量数据存在。
3.根据权利要求1所述的ID关联方法,其特征在于,所述根据对应每一组Host-Key统计的IV、iv、Iv和iV,计算每一组Host-Key的得分,具体包括:
根据公式Score=(IV*iv)/(Iv*iV)来计算每一组Host-key的得分;或者,
根据公式Score=(IV-Iv)*(iv-iV)来计算每一组Host-key的得分;或者,
根据公式Score=(IV+iv)/(IV+iv+Iv+iV)*100来计算每一组Host-key的得分。
4.根据权利要求3所述的ID关联方法,其特征在于,所述根据每一组Host-Key的得分,动态的筛选出当前数据分析场景中的多个ID,具体包括:
取Host-Key计算得分位于预设第一排名值之前的Host-Key作为当前数据分析场景动态生成的ID;其中,所述预设第一排名值为200-500或者排名位于总的前10%作为所述预设第一排名值。
5.根据权利要求3所述的ID关联方法,其特征在于,所述根据每一组Host-Key的得分,动态的筛选出当前数据分析场景中的多个ID中,具体为针对同一IP地址,需要确定相应IP地址的ID时,方法包括:
针对同一IP地址下,将对应的多个Host-Key计算得分进行排序,取其中排名位于第二预设排名之前的Host-Key作为所述IP地址对应的ID。
6.根据权利要求1所述的ID关联方法,其特征在于,在根据对应每一组Host-Key统计的IV、iv、Iv和iV,计算每一组Host-Key的得分之前,所述方法还包括:
根据所述Iv和/或iV的参数值在总的统计数量中的占比,确定相应占比是否超过第一预设阈值;
若所述Iv和/或iV在总的统计数量中的占比超过所述第一预设阈值,则跳过相应Host-Key组合的得分计算。
7.根据权利要求6所述的ID关联方法,其特征在于,若所述Iv和/或iV在总的统计数量中的占比超过所述第一预设阈值,所述方法还包括:
对于Iv在总的统计数量中的占比超过所述第一预设阈值,进一步分析IP相同情况下出现Iv情况的各Key名称;确定其中Key为用户名或者其中Key为设备MAC地址,则在日志中记录相应IP的使用主体为潜在的工作室。
8.根据权利要求1-7任一所述的ID关联方法,其特征在于,所述Host-Key中的Key包括设备MAC地址、手机号、用户名、应用ID、IMEI号、位置信息中的任意一种。
9.根据权利要求1-7任一所述的ID关联方法,其特征在于,对于获取到数据,按照统计出的Host(i)-Key(i),根据公式:
Host(i)-Key(i):[IP(1),Value(1),IV(1),Iv(1),iV(1),iv(1)],[IP(2),Value(2),IV(2),Iv(2),iV(2),iv(2)],…,[IP(j),Value(j),IV(j),Iv(j),iV(j),iv(j)]进行数据梳理;其中,i为Host-Key组合的标志号,j为对应各Host-Key组合下具体的IP数量。
10.一种ID关联装置,其特征在于,所述装置包括:
至少一个处理器;以及,与所述至少一个处理器通信连接的存储器;其中,所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述处理器执行,用于执行权利要求1-9任一所述的ID关联方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201911300739.3A CN110995887B (zh) | 2019-12-17 | 2019-12-17 | 一种id关联方法和装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201911300739.3A CN110995887B (zh) | 2019-12-17 | 2019-12-17 | 一种id关联方法和装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN110995887A CN110995887A (zh) | 2020-04-10 |
CN110995887B true CN110995887B (zh) | 2021-09-24 |
Family
ID=70094699
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201911300739.3A Active CN110995887B (zh) | 2019-12-17 | 2019-12-17 | 一种id关联方法和装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN110995887B (zh) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115757396B (zh) * | 2022-10-25 | 2023-07-18 | 杭州比智科技有限公司 | 一种oneid项目实现方法及系统 |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108199878A (zh) * | 2017-12-29 | 2018-06-22 | 北京理工大学 | 高性能ip网络中个人标识信息识别系统及方法 |
Family Cites Families (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8869303B2 (en) * | 2013-02-16 | 2014-10-21 | Mikhail Fleysher | Method and system for generation of dynamic password |
CN103237094B (zh) * | 2013-04-17 | 2016-04-13 | 北京亿赞普网络技术有限公司 | 一种识别用户的方法及装置 |
CN105227352B (zh) * | 2015-09-02 | 2019-03-19 | 新浪网技术(中国)有限公司 | 一种用户标识集的更新方法及装置 |
-
2019
- 2019-12-17 CN CN201911300739.3A patent/CN110995887B/zh active Active
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108199878A (zh) * | 2017-12-29 | 2018-06-22 | 北京理工大学 | 高性能ip网络中个人标识信息识别系统及方法 |
Also Published As
Publication number | Publication date |
---|---|
CN110995887A (zh) | 2020-04-10 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110855576B (zh) | 应用识别方法及装置 | |
EP3905622A1 (en) | Botnet detection method and system, and storage medium | |
US20160191549A1 (en) | Rich metadata-based network security monitoring and analysis | |
AU2016262640B2 (en) | Node de-duplication in a network monitoring system | |
US20220174008A1 (en) | System and method for identifying devices behind network address translators | |
CN111953552B (zh) | 数据流的分类方法和报文转发设备 | |
US20100290353A1 (en) | Apparatus and method for classifying network packet data | |
CN110995887B (zh) | 一种id关联方法和装置 | |
US11245712B2 (en) | Method and apparatus for generating virtual malicious traffic template for terminal group including device infected with malicious code | |
AU2021351515A1 (en) | System and method for classifying and handling voice over ip traffic | |
CN111106980B (zh) | 一种带宽捆绑检测方法和装置 | |
CN111079044B (zh) | 一种共享检测方法和装置 | |
Cukier et al. | A statistical analysis of attack data to separate attacks | |
CN114760216B (zh) | 一种扫描探测事件确定方法、装置及电子设备 | |
CN111163184B (zh) | 一种报文特征的提取方法和装置 | |
CN111049944B (zh) | 一种id发现方法和装置 | |
Castiglione et al. | Device tracking in private networks via napt log analysis | |
Pa et al. | Detecting malicious domains and authoritative name servers based on their distinct mappings to IP addresses | |
KR100621996B1 (ko) | 인터넷 서비스 트래픽의 분석방법 및 시스템 | |
CN111625807A (zh) | 一种设备类型识别方法与装置 | |
Adler et al. | How Polynomial Regression Improves DeNATing | |
CN115589362B (zh) | 设备类型指纹的生成方法及识别方法、设备及介质 | |
US12126618B1 (en) | System and method for identifying an application initiating a communication in a computing environment | |
KR102089417B1 (ko) | 악성코드에 감염된 디바이스를 포함하는 단말그룹에 대한 가상의 악성 트래픽 템플릿 생성 방법 및 그 장치 | |
CN116389416A (zh) | 海量IPv6地址识别方法、系统、电子设备及存储介质 |
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 |