普通会员

深圳市奥纳科技有限公公司

贴片电容、安规电容、可调电容、钽电容、贴片电感(高频绕线电感、高频薄膜电感、...

产品分类
正文
腾讯技术团队:IP库建设从IPv6数据聚合说起

来源:本站原创  作者:admin  更新时间:2019-09-07  

  接下来,查找有哪些IP段是相邻比较近的,这些段可以尽量合并,从而减少IP段的数量。然后,再把计算得到的不同粒度的IP段合并到一个数组中;最后,再把当次计算的IP段与历史数据中的IP段合并,就能得到最终的IPv6地址段。剩下那些未能归入某个IP段内的单个IPv6地址,会放入累计池中,酷派炫影s8720智闪福建移动3G订货会,参与下一周期的计算。

  由于IP库客户端查询ip是采用二分查找的方式,在一个ip段数组中查询ip所处的段,因此ipv6的段也需要“铺平”为数组的形式,在计算之后将不同粒度的ip段合并起来。合并过程中会遇到ip段重叠的情况,这时候就需要根据一些指标,保留一些段和删除一些段。首先,新的ip段优先覆盖旧的ip段,例如本周期计算的ip段会覆盖上一个周期计算得到的ip段;其次,地理级别越高的ip段,会覆盖级别低的ip段,例如深圳市已知的ip段会优先覆盖仅广东省已知的ip段;最后,若地理级别相同,则会比较ip段的精度,精度越高,说明该ip段越可靠,能够优先覆盖精度低的ip段。

  实际计算中发现,ipv6的数据比想象中要稀疏,大概有30%~40%左右的ip段只是包含了一条ip记录,换言之仅仅是根据一条ip记录就能得到该ip段,这样无法排除偶然性。为了清洗一些可能不可靠的ip段,每次计算时,都会统计有哪些ip段是有新数据“命中”的,若长时间没有数据记录落到这个ip段中,则说明该段不可靠或者是已经“过期”了,该数据则会被清洗掉。

  目前IPv6地址库共有ip段96万个,省份的精确度在95%左右,城市的精确度在75%左右。这里的精确度指的是:每次计算前,会用当前的ip库查询数据源的每条记录,若一条ipv6-ipv4的记录中,ipv6的查询结果与ipv4的查询结果是一致的,则可以判断是准确的。目前城市级别的精确度不高,老鸭汤整支炖的做法,是因为按照城市粒度划分的ipv6数据过于稀疏,无法像省份已知的数据那样快速地聚合成一个大段,这方面会在以后进一步改进。