CN115277823A - 定位方法、装置、电子设备及存储介质 - Google Patents

定位方法、装置、电子设备及存储介质 Download PDF

Info

Publication number
CN115277823A
CN115277823A CN202210801156.4A CN202210801156A CN115277823A CN 115277823 A CN115277823 A CN 115277823A CN 202210801156 A CN202210801156 A CN 202210801156A CN 115277823 A CN115277823 A CN 115277823A
Authority
CN
China
Prior art keywords
target
address
candidate
area
time period
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.)
Pending
Application number
CN202210801156.4A
Other languages
English (en)
Inventor
刘纯彰
张伟利
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Beijing Dajia Internet Information Technology Co Ltd
Original Assignee
Beijing Dajia Internet Information Technology Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Beijing Dajia Internet Information Technology Co Ltd filed Critical Beijing Dajia Internet Information Technology Co Ltd
Priority to CN202210801156.4A priority Critical patent/CN115277823A/zh
Publication of CN115277823A publication Critical patent/CN115277823A/zh
Pending legal-status Critical Current

Links

Images

Landscapes

  • Mobile Radio Communication Systems (AREA)

Abstract

本公开关于一种定位方法、装置、电子设备及存储介质,涉及计算机技术领域。本公开能够解决如何提高网际互联协议IP地址定位的精度的问题。该方法包括:响应于对目标网际互联协议IP地址在目标时刻进行定位的定位请求消息,确定目标IP地址在至少一个历史时间段对应的至少一个候选区域。各历史时间段中任意时刻与目标时刻之间的时间间隔小于预设时间间隔。获取各候选区域的位置上报次数。根据至少一个候选区域以及各候选区域的位置上报次数,确定目标区域,并从目标区域内确定目标IP地址在目标时刻所在的目标位置。目标区域上报目标IP地址位置的总次数大于或者等于各候选区域的位置上报次数中的最大值。

Description

定位方法、装置、电子设备及存储介质
技术领域
本公开涉及计算机技术领域,尤其涉及一种定位方法、装置、电子设备及存储介质。
背景技术
网际互联协议(internet trotocol,IP)地址是网络节点的标识,IP地址具有唯一性,且是一种符合协议的地址格式,通过IP地址定位用户的地理位置是互联网环境下最常见的定位方式之一。
当前,进行IP定位的方法是查询IP地址数据库。其中,数据库为用户提供了国家、省、市等相关信息,可以通过现有的几个数据库进行比对,寻找出正确的IP定位信息。
但是,现有的IP地址数据库虽然为用户提供了相关信息,但是IP地址数据库中IP地址定位精度有街道、城市、甚至是省份,没有办法满足用户对IP定位的精度要求。因此,如何提高IP地址定位的精度是当前亟需要解决的技术问题。
发明内容
本公开提供一种定位方法、装置、电子设备及存储介质,以解决如何提高IP地址定位的精度的问题。本公开的技术方案如下:
根据本公开实施例的第一方面,提供一种数据处理方法,该方法包括:响应于对目标网际互联协议IP地址在目标时刻进行定位的定位请求消息,确定目标IP地址在至少一个历史时间段对应的至少一个候选区域。一个候选区域为目标IP地址的在一个历史时间段所在区域。各历史时间段中任意时刻与目标时刻之间的时间间隔小于预设时间间隔。获取各候选区域的位置上报次数。位置上报次数为在同一区域、同一历史时间段内上报目标IP地址位置的次数。根据至少一个候选区域以及各候选区域的位置上报次数,确定目标区域,并从目标区域内确定目标IP地址在目标时刻所在的目标位置。目标区域上报目标IP地址位置的总次数大于或者等于各候选区域的位置上报次数中的最大值。
可选的,确定目标IP地址在至少一个历史时间段对应的至少一个候选区域,包括:基于目标时刻以及预设时间间隔,确定至少一个历史时间段。针对第一历史时间段,基于目标IP以及第一历史时间段从预设的映射关系中查询目标IP地址在第一历史时间段对应的区域,并将查询到的区域确定为目标IP地址在第一历史时间段对应的候选区域,得到至少一个候选区域;第一历史时间段为至少一个时间段中的任一个。映射关系包括多条映射数据,每条映射数据包括IP地址、历史时间段以及区域。
可选的,每条映射数据还包括位置上报次数;获取各候选区域的位置上报次数,包括:
针对第一候选区域,根据目标IP地址、第一候选区域以及第一候选区域对应的第一历史时间段,从映射关系中查询目标映射数据,并从目标映射数据中获取第一候选区域的位置上报次数;第一候选区域为至少一个候选区域中的任意一个;目标映射数据的IP地址与目标IP地址相同,目标映射数据的时间段与第一历史时间段相同,目标映射数据的位置与第一候选区域相同。
可选的,方法还包括:接收电子设备发送的IP地址数据消息;IP地址数据包括第一IP地址、当前时间戳以及第一IP地址在当前时间戳所在的位置。响应于IP地址数据消息,基于当前时间戳和预设周期,确定当前时间戳所在的当前时间段。基于预设位置编码算法对第一IP地址在当前时间戳所在的位置进行处理,得到第一IP地址在当前时间段所在的当前区域。基于第一IP地址、当前时间段以及当前区域,更新映射关系中的映射数据。
可选的,映射关系中的映射数据还包括位置上报次数,基于第一IP地址、当前时间段以及当前区域,更新映射关系中的映射数据,包括:在映射关系中存在历史映射数据的情况下,基于预设增量,更新历史映射数据中的位置上报次数;历史映射数据的IP地址与第一IP地址相同,历史映射数据的时间段与当前时间段相同,历史映射数据的区域与当前区域相同。在映射关系中不存在历史映射数据的情况下,基于第一IP地址、当前时间段以及当前区域,在映射关系中生成当前映射数据;当前映射数据的位置上报次数为预设初始值。
可选的,根据至少一个候选区域以及各候选区域的位置上报次数,确定目标区域,包括:对至少一个候选区域进行聚类,得到至少一个候选聚类区域;候选聚类区域至少包括一个候选区域。获取各候选聚类区域对应的位置上报次数,并从至少一个候选聚类区域中确定目标区域;一个候选聚类区域对应的位置上报次数为一个候选聚类区域所包括的候选区域的位置上报次数之和。
可选的,对至少一个候选区域进行聚类,得到至少一个候选聚类区域,包括:若存在两个候选区域之间的距离大于第一距离,这将两个候选区域分别确定为候选聚类区域。若存在两个候选区域之间的距离小于或者等于第一距离,则将两个候选区域合并为一个候选聚类区域。若存在两个候选聚类区域之间的距离小于或者等于第二距离,则将两个候选聚类区域合并,得到一个候选聚类区域。
根据本公开实施例的第二方面,提供一种定位装置,包括确定单元、获取单元。确定单元,用于响应于对目标网际互联协议IP地址在目标时刻进行定位的定位请求消息,确定目标IP地址在至少一个历史时间段对应的至少一个候选区域;一个候选区域为目标IP地址的在一个历史时间段所在区域;各历史时间段中任意时刻与目标时刻之间的时间间隔小于预设时间间隔。获取单元,用于获取各候选区域的位置上报次数;位置上报次数为在同一区域、同一历史时间段内上报目标IP地址位置的次数。确定单元,还用于根据至少一个候选区域以及各候选区域的位置上报次数,确定目标区域,并从目标区域内确定目标IP地址在目标时刻所在的目标位置;目标区域上报目标IP地址位置的总次数大于或者等于各候选区域的位置上报次数中的最大值。
可选的,确定单元,具体用于:基于目标时刻以及预设时间间隔,确定至少一个历史时间段。针对第一历史时间段,基于目标IP以及第一历史时间段从预设的映射关系中查询目标IP在第一历史时间段对应的区域,并将查询到的区域确定为目标IP地址在第一历史时间段对应的候选区域,得到至少一个候选区域;第一历史时间段为至少一个时间段中的任一个。映射关系包括多条映射数据,每条映射数据包括IP地址、历史时间段以及区域。
可选的,每条映射数据还包括位置上报次数;获取单元,具体用于:针对第一候选区域,根据目标IP地址、第一候选区域以及第一候选区域对应的第一历史时间段,从映射关系中查询目标映射数据,并从目标映射数据中获取第一候选区域的位置上报次数;第一候选区域为至少一个候选区域中的任意一个;目标映射数据的IP地址与目标IP地址相同,目标映射数据的时间段与第一历史时间段相同,目标映射数据的位置与第一候选区域相同。
可选的,定位装置还包括:接收单元、处理单元和更新单元。接收单元,用于接收电子设备发送的IP地址数据消息。IP地址数据包括第一IP地址、当前时间戳以及第一IP地址在当前时间戳所在的位置。确定单元,用于响应于IP地址数据消息,基于当前时间戳和预设周期,确定当前时间戳所在的当前时间段。处理单元,用于基于预设位置编码算法对第一IP地址在当前时间戳所在的位置进行处理,得到第一IP地址在当前时间段所在的当前区域。更新单元,用于基于第一IP地址、当前时间段以及当前区域,更新映射关系中的映射数据。
可选的,映射关系中的映射数据还包括位置上报次数,基于第一IP地址、当前时间段以及当前区域,更新单元,具体用于:在映射关系中存在历史映射数据的情况下,基于预设增量,更新历史映射数据中的位置上报次数;历史映射数据的IP地址与第一IP地址相同,历史映射数据的时间段与当前时间段相同,历史映射数据的区域与当前区域相同。在映射关系中不存在历史映射数据的情况下,基于第一IP地址、当前时间段以及当前区域,在映射关系中生成当前映射数据;当前映射数据的位置上报次数为预设初始值。
可选的,根据至少一个候选区域以及各候选区域的位置上报次数,确定单元,具体用于:对至少一个候选区域进行聚类,得到至少一个候选聚类区域;候选聚类区域至少包括一个候选区域。获取各候选聚类区域对应的位置上报次数,并从至少一个候选聚类区域中确定目标区域;一个候选聚类区域对应的位置上报次数为一个候选聚类区域所包括的候选区域的位置上报次数之和。
可选的,处理单元,具体用于:若存在两个候选区域之间的距离大于第一距离,这将两个候选区域分别确定为候选聚类区域。若存在两个候选区域之间的距离小于或者等于第一距离,则将两个候选区域合并为一个候选聚类区域。若存在两个候选聚类区域之间的距离小于或者等于第二距离,则将两个候选聚类区域合并,得到一个候选聚类区域。
根据本公开实施例的第三方面,提供一种电子设备,包括:处理器、用于存储处理器可执行的指令的存储器;其中,处理器被配置为执行指令,以实现第一方面的定位方法。
根据本公开实施例的第四方面,提供种计算机可读存储介质,计算机可读存储介质上存储有指令,当计算机可读存储介质中的指令由电子设备的处理器执行时,使得电子设备能够执行第一方面的定位方法。
根据本公开实施例的第五方面,提供一种计算机程序产品,计算机程序产品包括计算机指令,当计算机指令被处理器执行时,实现如第一方面的定位方法。
本公开实施例提供的技术方案至少带来以下有益效果:本公开中首先确定目标IP地址在至少一个历史时间段对应的至少一个候选区域。由于,一个候选区域为目标IP地址的在一个历史时间段所在区域;各历史时间段中任意时刻与目标时刻之间的时间间隔小于预设时间间隔。这样,服务器在获取目标IP地址在目标时刻的活动区域同时,还获取目标IP在目标时刻之前活动区域以及在目标时刻之后的活动区域。后续的,服务器获取各候选区域的位置上报次数。这样,服务器获取目标IP地址在每个获取区域的位置上报次数。最后,服务器根据上报目标IP地址位置的总次数确定目标区域。其中,上报目标IP地址位置的总次数越多则表示目标IP地址获得最频繁。也就是说,目标区域为目标IP地址活动最频繁的区域,从而,确定目标IP地址活动最频繁的区域中的位置为目标IP地址在目标时刻所在的位置。即本公开中扩大了时间采样范围,能够得到多个候选区域,并在多个候选区域中确定目标IP地址活动最频繁的区域为目标区域,从而提高了IP地址定位的精度。
应当理解的是,以上的一般描述和后文的细节描述仅是示例性和解释性的,并不能限制本公开。
附图说明
此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本公开的实施例,并与说明书一起用于解释本公开的原理,并不构成对本公开的不当限定。
图1是根据一示例性实施例示出的一种定位系统的结构示意图之一;
图2是根据一示例性实施例示出的一种定位系统的结构示意图之二;
图3是根据一示例性实施例示出的一种定位方法的流程示意图之一;
图4是根据一示例性实施例示出的一种定位方法的流程示意图之二;
图5是根据一示例性实施例示出的一种定位方法的流程示意图之三;
图6是根据一示例性实施例示出的一种定位方法的流程示意图之四;
图7是根据一示例性实施例示出的一种定位方法的流程示意图之五;
图8是根据一示例性实施例示出的一种定位方法的流程示意图之六;
图9是根据一示例性实施例示出的一种定位方法的流程示意图之七;
图10是根据一示例性实施例示出的一种定位装置的结构示意图;
图11是根据一示例性实施例示出的一种服务器的结构示意图。
具体实施方式
为了使本领域普通人员更好地理解本公开的技术方案,下面将结合附图,对本公开实施例中的技术方案进行清楚、完整地描述。
需要说明的是,本公开的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本公开的实施例能够以除了在这里图示或描述的那些以外的顺序实施。以下示例性实施例中所描述的实施方式并不代表与本公开相一致的所有实施方式。相反,它们仅是与如所附权利要求书中所详述的、本公开的一些方面相一致的装置和方法的例子。
另外,在本公开实施例的描述中,除非另有说明,“/”表示或的意思,例如,A/B可以表示A或B。本文中的“和/或”仅仅是一种描述关联对象的关联关系,表示可以存在三种关系,例如,A和/或B,可以表示:单独存在A,同时存在A和B,单独存在B这三种情况。另外,在本公开实施例的描述中,“多个”是指两个或多于两个。
需要说明的,本公开所涉及的用户信息(包括但不限于用户设备信息、用户个人信息、用户行为信息等)和数据(包括但不限于程序代码等),均为经用户授权或者经过各方充分授权的信息和数据。
在对本公开实施例进行详细地解释说明之前,先对本公开实施例涉及到的一些相关技术进行介绍。
IP地址是网络节点的标识,IP地址具有唯一性,且是一种符合协议的地址格式,通过IP地址定位用户的地理位置是互联网环境下最常见的定位方式之一。
当前,进行IP定位的方法是查询IP地址数据库。其中,数据库为用户提供了国家、省、市等相关信息,可以通过现有的几个数据库进行比对,寻找出正确的IP定位信息。
但是,现有的IP地址数据库虽然为用户提供了相关信息,但是IP地址数据库中IP地址定位精度有街道、城市、甚至是省份,没有办法满足用户对IP定位的精度要求。因此,如何提高IP地址定位的精度是当前亟需要解决的技术问题。
本公开实施例提供的定位方法,用于解决如何提高IP地址定位的精度是当前亟需要解决的技术问题。本公开实施例提供的定位方法可以适用于定位系统,图1示出了该定位系统的一种结构示意图。如图1所示,定位系统10包括服务器11、电子设备(图1示出了电子设备12和电子设备13,在实际应用中,可以存在更多的电子设备)以及定位获取设备14。服务器11分别与电子设备和定位获取设备14连接。服务器11与电子设备之间可以采用有线方式连接,也可以采用无线方式连接,本公开实施例对此不作限定。服务器11与定位获取设备14之间可以采用有线方式连接,也可以采用无线方式连接,本公开实施例对此不作限定。
示例性的,本公开中的电子设备和定位获取设备14可以为手机、平板电脑、个人计算机(Personal Computer,PC)、个人数字助理(personal digital assistant,PDA)、智能手表、上网本、可穿戴电子设备、增强现实技术(Augmented Reality,AR)设备、虚拟现实(Virtual Reality,VR)设备、车载设备、智能汽车、智能音响、机器人等,本公开对该电子设备的具体形式不做特殊限制。
本公开中的电子设备可以包括全球卫星定位系统(global navigationsatellite system,GNSS)接收模块、中央处理模块以及通信模块。其中,GNSS接收模块用于接收电子设备的地理位置。中央处理模块用于获取地理位置、电子设备的IP地址以及接收电子设备的地理位置的时间。通信模块用于将地理位置、电子设备的IP地址以及接收电子设备的地理位置的时间发送给服务器11。
本申请所述的GNSS可以包括全球卫星定位系统(global positioning system,GPS)、全球导航卫星系统(global navigation satellite system,GLONASS)、北斗卫星导航系统(beidou navigation satellite system,BDS)、准天顶卫星系统(quasi-zenithsatellite system,QZSS)和/或星基增强系统(satellite based augmentation systems,SBAS)中的任一系统,不予限制。
在实际应用中服务器11可以为单个常规服务器,也可以为云服务器,还可以为服务器集群中的服务器,也可以为常规服务器。服务器11包括数据库,该数据库可以是远程字典服务Redis数据库,可以是伯克利Berkeley(database,DB),还可以是其他类型的数据库,本公开实施例对此不作限定。
在一些实例中,服务器11用于接收电子设备发送的IP地址数据,并对IP地址数据处理,得到IP地址定位数据。进一步的,服务器11将IP地址定位数据以表格的形式存储或者以键值key-value形式存储。
定位获取设备14用于向服务器11发送定位请求消息,并从服务器11获取IP地址的定位数据。
在一些实施例中,如图2示出了该定位系统的另一种结构示意图。如图2所示,定位系统20包括第一服务器21、第二服务器22、数据库设备23电子设备(图2示出了电子设备24和电子设备25,在实际应用中,可以存在更多的电子设备)以及定位获取设备26。第一服务器21分别与电子设备和数据库设备23连接。第二服务器22分别与数据库设备23和定位获取设备26连接。各个设备之间可以采用有线方式连接,也可以采用无线方式连接,本公开实施例对此不作限定。
第一服务器21用于接收电子设备发送IP地址数据,并将IP地址数据存储至数据库设备23中。
第二服务器22设备用于接收定位获取设备26发送的定位请求消息,并基于定位请求消息从数据库设备23中获取至少一个IP地址数据。进一步的,第二服务器22从至少一个IP地址数据中确定IP地址的定位数据。
在本公开实施例提供的以下实施例中,以图1中的架构为例进行说明。
图3是根据一些示例性实施例示出的一种定位方法的流程示意图。在一些实施例中,上述定位方法可以应用到如图1所示的服务器、电子设备以及定位获取设备,也可以应用到其他类似设备。
如图3所示,本公开实施例提供的定位方法,包括下述S301-S304。
S301、服务器响应于对目标网际互联协议IP地址在目标时刻进行定位的定位请求消息,确定目标IP地址在至少一个历史时间段对应的至少一个候选区域。
其中,一个候选区域为目标IP地址的在一个历史时间段所在区域;各历史时间段中任意时刻与目标时刻之间的时间间隔小于预设时间间隔。
作为一种可能实现的方式,定位获取设备向服务器发送定位请求消息,该定位请求消息中包括目标IP地址和目标时刻。定位请求消息用于请求对目标IP地址在目标时刻进行定位。相应的,服务器接收定位请求消息,并响应于定位请求消息,确定目标IP地址在至少一个历史时间段对应的至少一个候选区域。
在一些实施例中,服务器获取定位请求消息中的目标IP地址和目标时刻,并从服务器的数据库中查找包括目标IP地址的第一IP地址定位数据。进一步的,服务器根据目标时刻和预设时间间隔,确定多个历史时间段,并基于多个历史时间段对第一IP地址定位数据进行筛选,得到目标IP地址在至少一个历史时间段对应的至少一个候选区域。
在一些实施例中,服务器获取定位请求消息中的目标IP地址和目标时刻,并根据目标时刻和预设时间间隔,确定多个历史时间段。进一步的,服务器根据多个历史时间段和目标IP地址,从服务器的数据库中查询得到目标IP地址在至少一个历史时间段对应的至少一个候选区域。
在另一些实施例中,服务器获取定位请求消息中的目标IP地址和目标时刻,并基于目标时刻和时间戳规则,确定目标时刻对应的时间戳。进一步的,服务器将目标时刻对应的时间戳除以预设的时间周期,得到目标时刻对应的时间段序列值,并根据时间段序列值以及预设的时间段阈值,确定多个时间段序列值。后续的,服务器根据目标IP以及多个时间段序列值,从服务器的数据库中确定目标IP地址在至少一个历史时间段对应的至少一个候选区域。
其中,时间戳是指格林威治时间1970年01月01日00时00分00秒起至当下的总秒数。
作为另一种可能实现的方式,定位获取设备向服务器发送定位请求消息,该定位请求消息中包括目标IP地址。定位请求消息用于请求对目标IP地址进行定位。相应的,服务器接收定位请求消息,并在获取定位请求消息中只有目标IP地址后,获取当前时刻。进一步的,服务器将当前时刻设置为目标时刻,并基于目标IP地址和目标时刻,确定目标IP地址在至少一个历史时间段对应的至少一个候选区域。
需要说明的,预设时间间隔为运维人员预先设置在服务器中的。
此步骤的具体描述可以参考下述步骤,此次不再赘述。
S302、服务器获取各候选区域的位置上报次数。
其中,位置上报次数为在同一区域、同一历史时间段内上报目标IP地址位置的次数。
作为一种可能实现的方式,服务器同时获取至少一个候选区域以及每个候选区域对应的位置上报次数。
作为一种可能实现的方式,服务器首先根据目标IP地址、第一历史时间段确定目标IP地址在第一历史时间段的第一候选区域。然后,服务器再根据目标IP地址、第一历史时间段、第一候选区域从映射表中获取第一候选区域的对应的位置上报次数。
此步骤的具体描述可以参考下述步骤,此次不再赘述。
S303、服务器根据至少一个候选区域以及各候选区域的位置上报次数,确定目标区域。
其中,目标区域上报目标IP地址位置的总次数大于或者等于各候选区域的位置上报次数中的最大值。
作为一种可能实现的方式,服务器在获取至少一个候选区域以及每个候选区域对应的位置上报次数后之后,确定位置上报次数最大值对应的候选区域为目标区域。
作为另一种可能实现的方式,服务器获取在获取至少一个候选区域以及每个候选区域对应的位置上报次数后之后,对至少一个候选区域进行聚类,得到至少一个聚类簇。其中,每个聚类簇至少包括一个候选区域。进一步的,服务器计算得到每个聚类簇中目标IP地址位置的上报总次数,并确定至少一个聚类簇中目标IP地址位置的上报总次数的最大值对应的聚类簇为目标聚类簇。后续的,服务器获取目标聚类簇对应的区域为目标区域。
此步骤的具体描述可以参考下述步骤,此次不再赘述。
S304、服务器从目标区域内确定目标IP地址在目标时刻所在的目标位置。
作为一种可能实现的方式,服务器在获取目标区域之后,获取目标区域的重心,并将目标区域的重心确定为目标IP地址在目标时刻所在的目标位置。
后续的,服务器向定位获取设备发送定位消息。其中,定位消息包括目标IP、目标位置以及目标时刻。
本公开实施例提供的技术方案至少带来以下有益效果:本公开中首先确定目标IP地址在至少一个历史时间段对应的至少一个候选区域。由于,一个候选区域为目标IP地址的在一个历史时间段所在区域;各历史时间段中任意时刻与目标时刻之间的时间间隔小于预设时间间隔。这样,服务器在获取目标IP地址在目标时刻的活动区域同时,还获取目标IP在目标时刻之前活动区域以及在目标时刻之后的活动区域。后续的,服务器获取各候选区域的位置上报次数。这样,服务器获取目标IP地址在每个获取区域的位置上报次数。
最后,服务器根据上报目标IP地址位置的总次数确定目标区域。其中,上报目标IP地址位置的总次数越多则表示目标IP地址获得最频繁。也就是说,目标区域为目标IP地址活动最频繁的区域,从而,确定目标IP地址活动最频繁的区域中的位置为目标IP地址在目标时刻所在的位置。即本公开中扩大了时间采样范围,能够得到多个候选区域,并在多个候选区域中确定目标IP地址活动最频繁的区域为目标区域,从而提高了IP地址定位的精度。
另外,由于IP地址本身存在漂移的现象,大量的IP地址每隔一段时间就会重新分配,所以在对IP地址进行定位时,不仅要关注IP地址的位置信息,还需要关注IP地址的时间信息。然而,当前对IP地址进行定位时,没有关于IP地址的时间消息,导致目前的IP定位系统仅能提供目标IP地址当前的位置,无法提供目标IP地址在历史时刻的位置。
本公开中能够根据定位请求消息中的目标时刻,获取目标IP地址在任一历史时刻的位置,解决了目前的IP地址定位系统仅能提供目标IP地址当前的位置,无法提供目标IP地址在历史时刻的位置。
在一种设计中,如图4所示,为了确定候选区域,本公开实施例提供的上述S301,具体包括下述S3011-S3013。
S3011、服务器基于目标时刻以及预设时间间隔,确定至少一个历史时间段。
作为一种可能实现的方式,服务器基于目标时刻和时间戳规则,确定目标时刻对应的时间戳。进一步的,服务器将目标时刻对应的时间戳除以预设时间周期,得到目标时刻对应的第一历史时间段序列值,并根据第一历史时间段值以及时间段序列阈值,确定多个历史时间段序列值。其中,时间段序列阈值是根据预设时间间隔和预设时间周期得到的。
示例性的,以目标时刻为2022年2年8日12点30分08秒,预设时间周期为1800秒(30分钟)和预设时间间隔为5400秒(90分钟)为例。服务器获取目标时刻:2022年2年8日12点30分08秒,并计算1970年01月01日00时00分00秒至2022年2年8日12点30分08秒的总秒数,得到第一总秒数。进一步的,服务器将第一总秒数除以1800,得到第一历史时间段序列值912061,并将5400秒除以1800得到时间段序列阈值3。后续的,服务器将第一历史时间序列值加3并将第一历史时间段序列值减3,得到多个历史时间段序列值:912058、912059、912060、912061、912062、912063、912063。
可以理解的,每个时间段序列值对应一个时间段。例如:时间段序列值912061对应2022年2年8日12点30分到2022年2年8日13点00分。
作为一种可能实现的方式,服务器根据目标时刻和预设时间间隔确定目标时刻对应的历史目标时间范围,并基于该历史目标时间范围以及预设时间周期,确定多个历史时间段。
示例性的,以目标时刻为2022年2年8日12点30分、预设时间周期为1800秒(30分钟)以及预设时间间隔为3600秒(1小时)为例。服务器获取2022年2年8日12点30分之后,确定2022年2年8日12点30分前1个小时的时间段:2022年2年8日11点30-2022年2年8日12点00、2022年2年8日12点00-2022年2年8日12点30,以及确定2022年2年8日12点30分后1个小时的时间段:2022年2年8日12点30-2022年2年8日13点00、2022年2年8日13点00-2022年2年8日13点30。
需要说明的,预设时间间隔为运维人员预先设置在服务器中的。
S3012、服务器针对第一历史时间段,基于目标IP地址以及第一历史时间段从预设的映射关系中查询目标IP地址在第一历史时间段对应的区域。
其中,第一历史时间段为至少一个时间段中的任一个;映射关系包括多条映射数据,每条映射数据包括IP地址、历史时间段以及区域。
作为一种可能实现的方式,服务器获取至少一个时间段之后,基于目标IP地址以及第一历史时间段从预设的映射关系中查询目标IP地址在第一历史时间段对应的区域。
示例性的,以目标IP地址:192.168.0.26以及第一历史时间段(192.168.0.26、2022年2年8日11点30-2022年2年8日12点00)为例。服务器从预设的映射关系查询192.168.0.26在192.168.0.26、2022年2年8日11点30-2022年2年8日12点00对应的区域,得到对应的区域wx4gjk32kf32。其中,映射关系如表1所示。
表1
Figure BDA0003737790180000111
Figure BDA0003737790180000121
作为另一种可能实现的方式,服务器获取至少一个时间段序列值之后,基于目标IP地址以及第一时间段序列值从预设的映射关系中查询目标IP地址在第一历史时间段对应的区域。
示例性的,以目标IP地址192.168.0.26、第一时间段序列值912058为例。服务器从预设的映射关系中查询192.168.0.26、912058对应的区域,得到对应的区域wx4gjk32kf32。其中,预设的映射关系如表2所示。
表2
Figure BDA0003737790180000122
Figure BDA0003737790180000131
需要说明的,预设的映射关系为服务器预先生成的。区域的数值为基于GeoHash算法得到的GeoHash值。每一个GeoHash值代表一块矩形区域。
S3013、服务器将查询到的区域确定为目标IP地址在第一历史时间段对应的候选区域,得到至少一个候选区域。
作为一种可能实现的方式,服务器获取目标IP地址在每个第一历史时间段对应的候选区域,得到至少一个候选区域。
可以理解的,本公开实施例中服务器基于目标时刻以及预设时间间隔,确定多个历史时间段。进而根据目标IP地址和每个历史时间段,得到至少一个候选区域。这样,本公开实施例获取目标IP地址在多个时间段的区域,从而增加了采样区域,进而提高目标IP地址的定位精度。
在一种设计中,每条映射数据还包括位置上报次数。如图5所示,为了获取各候选区域的位置上报次数,本公开实施例提供的上述S302,具体包括下述S3021-S3022。
S3021、服务器针对第一候选区域,根据目标IP地址、第一候选区域以及第一候选区域对应的第一历史时间段,从映射关系中查询目标映射数据。
其中,第一候选区域为至少一个候选区域中的任意一个;目标映射数据的IP地址与目标IP地址相同,目标映射数据的时间段与第一历史时间段相同,目标映射数据的位置与第一候选区域相同。
示例性的,以目标IP地址为192.168.0.26、第一候选区域为wx4gjk32kf32以及第一候选区域对应的第一历史时间段为912058为例。服务器基于(192.168.0.26、912058、wx4gjk32kf32)查询得到映射关系中的目标映射数据(192.168.0.26、912058、wx4gjk32kf32、10)。
需要说明的,预设的映射关系为服务器预先生成的。
S3022、服务器从目标映射数据中获取第一候选区域的位置上报次数。
示例性的,以目标映射数据为(192.168.0.26、912058、wx4gjk32kf32、10)为例。服务器从(192.168.0.26、912058、wx4gjk32kf32、10)中获取第一候选区域的位置上报次数为10。
可以理解的,本公开实施例中从目标映射数据直接获取候选区域的位置上报次数,能够使得服务器快速获取每个候选区域的位置上报次数。
在一种设计中,如图6所示,为了减小存储资源消耗、降低存储成本,本公开实施例提供的上述定位方法,还包括下述S305-S308。
S305、服务器接收电子设备发送的IP地址数据消息。
其中,IP地址数据包括第一IP地址、当前时间戳以及第一IP地址在当前时间戳所在的位置。
作为一种可能实现的方式,服务器周期性的接收电子设备发送的IP地址数据消息。
S306、服务器响应于IP地址数据消息,基于当前时间戳和预设周期,确定当前时间戳所在的当前时间段。
作为一种可能实现的方式,服务器在接收到IP地址数据消息之后,获取当前时间戳并基于当前时间戳和预设周期,确定当前时间戳所在的当前时间段。
具体的,服务器将当前时间戳处于预设周期,确定当前时间戳所在的当前时间段序列值。
示例性的,以预设周期为1800秒(30分钟)为例。服务器将当前时间戳除以1800,得到时间段序列值912061。
S307、服务器基于预设位置编码算法对第一IP地址在当前时间戳所在的位置进行处理,得到第一IP地址在当前时间段所在的当前区域。
示例性的,以预设位置编码算法为GeoHash算法、第一IP地址在当前时间戳所在的位置为(146.842813452468,54.9432909847213)为例。服务器GeoHash算法对(146.842813452468,54.9432909847213)计算,得到(146.842813452468,54.9432909847213)对应的GeoHash值为pq0rmmzs。
本公开实施例中的GeoHash(GeoHash本质上是空间索引的一种方式,其基本原理是将地球理解为一个二维平面,将平面递归分解成更小的子块,每个子块在一定经纬度范围内拥有相同的编码)值作为位置聚合判断的基础。通过编码可以将基于位置的服务(Location Based Service,LBS)是经纬度转换GeoHash值,每个GeoHash字符串代表地理位置上的一个矩形区域,GeoHash值越长,其代表的地理位置范围越小也即越精确。
示例性的,如五位长度的GeoHash值包括WX4ER,WX4G2和WX4G3,这三个GeoHash值分别代表一个十平方千米范围的矩形区域。当GeoHash值长度为8位时,精度在19米左右,当GeoHash值长度为9位时,精度在2米左右,本实施例中不对GeoHash字符串的长度作具体限制,可以根据实际数据情况和计算需求的不同自行设置GeoHash值的长度。在两个GeoHash值中,相同的前缀位数(只计算完全相同的位数,当出现不同时不往后计算)越多,表示这两个GeoHash字符串代表的矩形区域再地理位置上距离越近,如WX4ER和WX4EP有四位相同的前缀,WX4G0和WX4P0有三维相同的前缀。
S308、服务器基于第一IP地址、当前时间段以及当前区域,更新映射关系中的映射数据。
作为一种可能实现的方式,服务器在获取第一IP地址、当前时间段以及当前区域之后,生成第一IP地址定位数据。第一IP地址定位数据包括第一IP地址、当前时间段、以及当前区域。进一步的,服务器将第一IP地址定位数据作为映射数据存入映射关系中,并更新映射关系中的映射数据。
作为另一种可能实现的方式,服务器在获取第一IP地址、当前时间段以及当前区域之后,生成第一IP地址定位数据。第一IP地址定位数据包括第一IP地址、当前时间段、以及当前区域。进一步的,服务器查询映射关系中的映射数据是否存在目标历史映射数据,并在映射关系中的映射数据存在目标历史映射数据的情况下,更新目标历史映射数据对应的位置上报次数。
此步骤的具体描述可以参考下述步骤,此次不再赘述。
可以理解的,在本公开实施例中,服务器将IP地址的位置分块处理,减少了空间维度上的数据,并将采集IP地址的时间按照预设周期进行分片处理,减少了时间维度上的数据。这样,服务器减少了存储的数据量,从而减小存储资源消耗、降低存储成本。
在一种设计中,在映射关系中的映射数据还包括位置上报次数的情况下。如图7所示,为了减小存储资源消耗、降低存储成本,本公开实施例提供的上S308,具体包括下述S3081-S3082。
S3081、服务器判断映射关系中是否存在历史映射数据。
其中,历史映射数据的IP地址与第一IP地址相同,历史映射数据的时间段与当前时间段相同,历史映射数据的区域与当前区域相同。
作为一种可能实现的方式,服务器在获取第一IP地址、当前时间段以及当前区域之后,将第一IP地址、当前时间段以及当前区域作为第一查询主键查询服务器中的数据库,从而查看服务器中的数据库中是否存在以第一查询主键作为主键的历史映射数据。
S3082、服务器在映射关系中存在历史映射数据的情况下,基于预设增量,更新历史映射数据中的位置上报次数。
作为一种可能实现的方式,服务器查询到服务器中的数据库中存在以第一查询主键作为主键的历史映射数据之后,确定当前第一生成IP地址定位数据的数量,并基于当前第一生成IP地址定位数据的数量,更新历史映射数据中的位置上报次数。其中,第一生成IP地址定位数据包括第一IP地址、当前时间段以及当前区域。
示例性的,以第一IP地址定位数据包括:192.168.0.26、912063、wx4gjk32kf39为例。服务器在获取192.168.0.26、912063、wx4gjk32kf39之后,遍历映射表(如下表3所示),查询到映射表存在以192.168.0.26、912063和wx4gjk32kf39为主键的数据。
表3
IP地址 时间段值 区域 位置上报次数
192.168.0.26 912058 wx4gjk32kf32 11
192.168.0.26 912062 wx4gjk32kf36 9
192.168.0.26 912063 wx4gjk32kf39 8
进而,服务器将映射表中以192.168.0.26、912063和wx4gjk32kf39为主键的数据的位置上报次数值加1,得到位置上报次数更新后的表4。
表4
IP地址 时间段值 区域 位置上报次数
192.168.0.26 912058 wx4gjk32kf32 11
192.168.0.26 912062 wx4gjk32kf36 9
192.168.0.26 912063 wx4gjk32kf39 9
可以理解的,本公开实施例中,服务器在生成一条IP地址定位数据之后,判断服务器的数据库中是否存在历史映射数据。在服务器的数据库中存在历史映射数据的情况下,服务器增加该历史映射数据的位置上报次数即可,无需将该条IP地址定位数据存储至服务器的数据库中。这样,能够减少存储的数据量,从而减小存储资源消耗、降低存储成本。
在一种设计中,如图8所示,为了确定目标区域,提高IP地址定位的精度,本公开实施例提供的上S303,具体包括下述S3031-S3033。
S3031、服务器对至少一个候选区域进行聚类,得到至少一个候选聚类区域。
其中,候选聚类区域至少包括一个候选区域。
作为一种可能实现的方式,服务器根据预设算法进行聚类,得到至少一个候选聚类区域。
示例性的,预设聚类算法可以为近邻聚类法、核心距离(core-distance)、可达距离(reachability-distance)、基于密度的聚类算法(density-based spatial clusteringof applications with noise,DBSCAN)或者k均值聚类算法(k-means clusteringalgorithm),本公开不做限定。
此步骤的具体描述可以参考下述步骤,此次不再赘述。
S3032、服务器获取各候选聚类区域对应的位置上报次数。
作为一种可能的实现方式,服务器在获取至少一个候选聚类区域之后,获取每个候选聚类区域包括的至少一个候选区域对应的位置上报次数。
示例性的,以至少一个候选聚类区域为候选聚类区域1和候选聚类区域2为例。服务器获取候选聚类区域1包括两个候选区域:候选区域1和候选区域2。其中,候选区域1的位置上报次数为8,候选区域2的位置上报次数为9。进而,服务器获取候选聚类区域1对应的位置上报次数为17(9+8)。服务器获取候选聚类区域2包括1个候选区域:候选区域3。其中,候选区域3的位置上报次数为8。进而,服务器获取候选聚类区域1对应的位置上报次数为8。
S3033、服务器从至少一个候选聚类区域中确定目标区域。
其中,一个候选聚类区域对应的位置上报次数为一个候选聚类区域所包括的候选区域的位置上报次数之和。
作为一种可能的实现方式,服务器在获取各候选聚类区域对应的位置上报次数后,确定每个候选聚类区域对应的位置上报次数中的最大值,并将位置上报次数的最大值对应的候选聚类区域确定为目标区域。
示例性的,以至少一个候选聚类区域为候选聚类区域1和候选聚类区域2,候选聚类区域1的位置上报次数为17,候选聚类区域2的位置上报次数为8为例。服务器确定候选聚类区域1的位置上报次数最多,进而确定候选聚类区域1为目标区域。
在另一种情况下,服务器获取每个候选区域对应的位置上报次数,并确定每个候选区域对应的位置上报次数中的最大值,并将位置上报次数的最大值对应的候选区域确定为目标区域。
可以理解的,本公开实施例中,服务器对多个候选区域进行聚类,得到至少一个候选聚类区域。进一步的,服务器确定各候选聚类区域对应的位置上报次数中位置上报次数最多的候选聚类区域为目标区域。这样,能够确定目标IP地址在目标时刻最活跃的区域,从而提高了IP地址的定位精度。
在一种设计中,如图9所示,为了确定至少一个候选聚类区域,进而提高IP地址定位的精度,本公开实施例提供的上S3031,具体包括下述S30311-S30315。
S30311、服务器判断两个候选区域之间的距离与第一距离的大小。
作为一种可能实现的方式,服务器获取任意两个候选区域之间的距离,并判断两个候选区域之间的距离与第一距离的大小。
S30312、若存在两个候选区域之间的距离大于第一距离,服务器则将两个候选区域分别确定为候选聚类区域。
S30313、若存在两个候选区域之间的距离小于或者等于第一距离,服务器则将两个候选区域合作为并为一个候选聚类区域。
S30314、服务器判断两个候选聚类区域之间的距离是否小于或者等于第二距离。
S30315、若存在两个候选聚类区域之间的距离小于或者等于第二距离,服务器则将两个候选聚类区域合并,得到一个候选聚类区域。
需要说明的,第一距离和第二距离可以是相同的,也可以是不同的。两个区域之间的距离可以是该两个区域之间的最大距离,也可以是该两个区域之间的最小距离,还可以是该两个区域的重心之间的距离。
在一些实施例中,服务器基于近邻聚类法对至少一个候选区域聚类,得到至少一个候选聚类区域。
具体的,服务器将第一个候选区域作为第一个候选聚类区域,并判断第一个候选聚类区域与第二个候选区域之间的距离是否小于或者等于预设距离。若第一个候选聚类区域与第二个候选区域之间的距离小于或者等于预设距离,则服务器将第一个候选聚类区域与第二个候选区域合并为一个候选聚类区域,并更新合并的候选聚类区域的重心和位置上报次数。若第一个候选聚类区域与第二个候选区域之间的距离大于预设距离,则服务器将第二个候选区域确定为第一个候选聚类区域。这样,依次计算至少一个候选区域中除第一个候选区域和第二个候选区域之外的候选区域,得到至少一个候选聚类区域。
示例性的,以候选区域包括候选区域1、候选区域2、候选区域3、候选区域4,候选区域1对应的位置上报次数为10、候选区域2对应的位置上报次数为9、候选区域3对应的位置上报次数为8、候选区域4对应的位置上报次数为7为例。服务器确定候选区域1为聚类簇1,并确定候选区域1的重心为聚类簇1的重心。进一步的,服务器确定候选区域2的重心至聚类簇1的重心的距离小于或者等于预设的簇间最小距离,并将候选区域2加入聚类簇1。同时,服务器更新聚类簇1的位置上报次数,更新后的位置上报次数为18,并且重新计算聚类簇1的重心P更新后的重心
P更新后的重心=P候选区域1的重心*10+P候选区域2的重心*9。
后续的,服务器确定候选区域3的重心至聚类簇1的重心P更新后的重心的距离大于预设的簇间最小距离,确定候选区域3为聚类簇2,并确定候选区域3的重心为聚类簇2的重心。同时,服务器确定聚类簇2的位置上报次数为8。最后,基于上述聚类算法,对候选区域4进行聚类。
可以理解的,本公开实施例中,对多个候选区域进行聚类,将多个距离较近的候选区域确定为候选聚类区域,增加该候选聚类区域的位置上报次数,使得该候选聚类区域能够被确定为目标区域,从而排除距离较远的孤立候选区域,从而提高IP地址的定位精度。
上述实施例主要从装置(设备)的角度对本公开实施例提供的方案进行了介绍。可以理解的是,为了实现上述方法,装置或设备包含了执行各个方法流程相应的硬件结构和/或软件模块,这些执行各个方法流程相应的硬件结构和/或软件模块可以构成一个电子设备。本领域技术人员应该很容易意识到,结合本文中所公开的实施例描述的各示例的算法步骤,本公开能够以硬件或硬件和计算机软件的结合形式来实现。某个功能究竟以硬件还是计算机软件驱动硬件的方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本公开的范围。
本公开实施例可以根据上述方法示例对装置或设备进行功能模块的划分,例如,装置或设备可以对应各个功能划分各个功能模块,也可以将两个或两个以上的功能集成在一个处理模块中。上述集成的模块既可以采用硬件的形式实现,也可以采用软件功能模块的形式实现。需要说明的是,本公开实施例中对模块的划分是示意性的,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式。
图10是根据一示例性实施例示出的定位装置的结构示意图。参照图10所示,本公开实施例提供的定位装置40,包括确定单元401、获取单元402。
确定单元401,用于响应于对目标网际互联协议IP地址在目标时刻进行定位的定位请求消息,确定目标IP地址在至少一个历史时间段对应的至少一个候选区域;一个候选区域为目标IP地址的在一个历史时间段所在区域;各历史时间段中任意时刻与目标时刻之间的时间间隔小于预设时间间隔。获取单元402,用于获取各候选区域的位置上报次数;位置上报次数为在同一区域、同一历史时间段内上报目标IP地址位置的次数。确定单元,还用于根据至少一个候选区域以及各候选区域的位置上报次数,确定目标区域,并从目标区域内确定目标IP地址在目标时刻所在的目标位置;目标区域上报目标IP地址位置的总次数大于或者等于各候选区域的位置上报次数中的最大值。
可选的,确定单元401,具体用于:基于目标时刻以及预设时间间隔,确定至少一个历史时间段。针对第一历史时间段,基于目标IP地址以及第一历史时间段从预设的映射关系中查询目标IP地址在第一历史时间段对应的区域,并将查询到的区域确定为目标IP地址在第一历史时间段对应的候选区域,得到至少一个候选区域;第一历史时间段为至少一个时间段中的任一个。映射关系包括多条映射数据,每条映射数据包括IP地址、历史时间段以及区域。
可选的,每条映射数据还包括位置上报次数;获取单元402,具体用于:针对第一候选区域,根据目标IP地址、第一候选区域以及第一候选区域对应的第一历史时间段,从映射关系中查询目标映射数据,并从目标映射数据中获取第一候选区域的位置上报次数;第一候选区域为至少一个候选区域中的任意一个;目标映射数据的IP地址与目标IP地址相同,目标映射数据的时间段与第一历史时间段相同,目标映射数据的位置与第一候选区域相同。
可选的,如图10所示,定位装置还包括:接收单元403、处理单元404和更新单元405。接收单元403,用于接收电子设备发送的IP地址数据消息。IP地址数据包括第一IP地址、当前时间戳以及第一IP地址在当前时间戳所在的位置。确定单元401,用于响应于IP地址数据消息,基于当前时间戳和预设周期,确定当前时间戳所在的当前时间段。处理单元404,用于基于预设位置编码算法对第一IP地址在当前时间戳所在的位置进行处理,得到第一IP地址在当前时间段所在的当前区域。更新单元405,用于基于第一IP地址、当前时间段以及当前区域,更新映射关系中的映射数据。
可选的,映射关系中的映射数据还包括位置上报次数,基于第一IP地址、当前时间段以及当前区域,更新单元405,具体用于:在映射关系中存在历史映射数据的情况下,基于预设增量,更新历史映射数据中的位置上报次数;历史映射数据的IP地址与第一IP地址相同,历史映射数据的时间段与当前时间段相同,历史映射数据的区域与当前区域相同。在映射关系中不存在历史映射数据的情况下,基于第一IP地址、当前时间段以及当前区域,在映射关系中生成当前映射数据;当前映射数据的位置上报次数为预设初始值。
可选的,根据至少一个候选区域以及各候选区域的位置上报次数,确定单元401,具体用于:对至少一个候选区域进行聚类,得到至少一个候选聚类区域;候选聚类区域至少包括一个候选区域。获取各候选聚类区域对应的位置上报次数,并从至少一个候选聚类区域中确定目标区域;一个候选聚类区域对应的位置上报次数为一个候选聚类区域所包括的候选区域的位置上报次数之和。
可选的,处理单元401,具体用于:若存在两个候选区域之间的距离大于第一距离,这将两个候选区域分别确定为候选聚类区域。若存在两个候选区域之间的距离小于或者等于第一距离,则将两个候选区域合并为一个候选聚类区域。若存在两个候选聚类区域之间的距离小于或者等于第二距离,则将两个候选聚类区域合并,得到一个候选聚类区域。
图11是本公开提供的一种服务器的结构示意图。如图11,该服务器50可以包括至少一个处理器501以及用于存储处理器可执行指令的存储器502其中,处理器501被配置为执行存储器502中的指令,以实现上述实施例中的数据处理方法。
另外,服务器50还可以包括通信总线503以及至少一个通信接口504。
处理器501可以是一个处理器(central processing units,CPU),微处理单元,ASIC,或一个或多个用于控制本公开方案程序执行的集成电路。
通信总线503可包括一通路,在上述组件之间传送信息。
通信接口504,使用任何收发器一类的装置,用于与其他设备或通信网络通信,如以太网,无线接入网(radio access network,RAN),无线局域网(wireless local areanetworks,WLAN)等。
存储器602可以是只读存储器(read-only memory,ROM)或可存储静态信息和指令的其他类型的静态存储设备,随机存取存储器(random access memory,RAM)或者可存储信息和指令的其他类型的动态存储设备,也可以是电可擦可编程只读存储器(electricallyerasable programmable read-only memory,EEPROM)、只读光盘(compact disc read-only memory,CD-ROM)或其他光盘存储、光碟存储(包括压缩光碟、激光碟、光碟、数字通用光碟、蓝光光碟等)、磁盘存储介质或者其他磁存储设备、或者能够用于携带或存储具有指令或数据结构形式的期望的程序代码并能够由计算机存取的任何其他介质,但不限于此。存储器可以是独立存在,通过总线与处理单元501相连接。存储器也可以和处理单元504集成在一起。
其中,存储器502用于存储执行本公开方案的指令,并由处理器501来控制执行。处理器501用于执行存储器502中存储的指令,从而实现本公开方法中的功能。
作为一个示例,结合图10,定位装置40中的确定单元401、处理单元404以及更新单元405实现的功能与图11中的处理器501的功能相同。
在具体实现中,作为一种实施例,处理器501可以包括一个或多个CPU,例如图11中的CPU0和CPU1。
在具体实现中,作为一种实施例,服务器50可以包括多个处理器,例如图11中的处理器501和处理器507。这些处理器中的每一个可以是一个单核(single-CPU)处理器,也可以是一个多核(multi-CPU)处理器。这里的处理器可以指一个或多个设备、电路、和/或用于处理数据(例如计算机程序指令)的处理核。
在具体实现中,作为一种实施例,服务器50还可以包括输出设备505和输入设备506。输出设备505和处理器501通信,可以以多种方式来显示信息。例如,输出设备505可以是液晶显示器(liquid crystal display,LCD),发光二级管(light emitting diode,LED)显示设备,阴极射线管(cathode ray tube,CRT)显示设备,或投影仪(projector)等。输入设备506和处理器501通信,可以以多种方式接受用户对象的输入。例如,输入设备506可以是鼠标、键盘、触摸屏设备或传感设备等。
本领域技术人员可以理解,图11中示出的结构并不构成对服务器50的限定,可以包括比图示更多或更少的组件,或者组合某些组件,或者采用不同的组件布置。
另外,本公开还提供一种计算机可读存储介质,当计算机可读存储介质中的指令由电子设备的处理器执行时,使得电子设备能够执行如上述实施例所提供的定位方法。
另外,本公开还提供一种计算机程序产品,包括计算机指令,当计算机指令在电子设备上运行时,使得电子设备执行如上述实施例所提供的定位方法。
本领域技术人员在考虑说明书及实践这里公开的公开后,将容易想到本公开的其它实施方案。本公开旨在涵盖本公开的任何变型、用途或者适应性变化,这些变型、用途或者适应性变化遵循本公开的一般性原理并包括本公开未公开的本技术领域中的公知常识或惯用技术手段。说明书和实施例仅被视为示例性的,本公开的真正范围和精神由权利要求指出。

Claims (10)

1.一种定位方法,其特征在于,所述方法包括:
响应于对目标网际互联协议IP地址在目标时刻进行定位的定位请求消息,确定所述目标IP地址在至少一个历史时间段对应的至少一个候选区域;一个候选区域为所述目标IP地址的在一个历史时间段所在区域;各所述历史时间段中任意时刻与所述目标时刻之间的时间间隔小于预设时间间隔;
获取各所述候选区域的位置上报次数;所述位置上报次数为在同一区域、同一历史时间段内上报所述目标IP地址位置的次数;
根据所述至少一个候选区域以及各所述候选区域的位置上报次数,确定目标区域,并从所述目标区域内确定所述目标IP地址在所述目标时刻所在的目标位置;所述目标区域上报所述目标IP地址位置的总次数大于或者等于各所述候选区域的所述位置上报次数中的最大值。
2.根据权利要求1所述的定位方法,其特征在于,所述确定所述目标IP地址在至少一个历史时间段对应的至少一个候选区域,包括:
基于所述目标时刻以及所述预设时间间隔,确定所述至少一个历史时间段;
针对第一历史时间段,基于所述目标IP地址以及所述第一历史时间段从预设的映射关系中查询所述目标IP地址在所述第一历史时间段对应的区域,并将查询到的区域确定为所述目标IP地址在所述第一历史时间段对应的候选区域,得到所述至少一个候选区域;所述第一历史时间段为所述至少一个时间段中的任一个;所述映射关系包括多条映射数据,每条映射数据包括IP地址、历史时间段以及区域。
3.根据权利要求2所述的定位方法,其特征在于,所述每条映射数据还包括所述位置上报次数;所述获取各所述候选区域的位置上报次数,包括:
针对第一候选区域,根据所述目标IP地址、所述第一候选区域以及所述第一候选区域对应的第一历史时间段,从所述映射关系中查询目标映射数据,并从所述目标映射数据中获取所述第一候选区域的所述位置上报次数;所述第一候选区域为所述至少一个候选区域中的任意一个;所述目标映射数据的IP地址与所述目标IP地址相同,所述目标映射数据的时间段与所述第一历史时间段相同,所述目标映射数据的位置与所述第一候选区域相同。
4.根据权利要求2所述的定位方法,其特征在于,所述方法还包括:
接收电子设备发送的IP地址数据消息;所述IP地址数据包括第一IP地址、当前时间戳以及所述第一IP地址在所述当前时间戳所在的位置;
响应于所述IP地址数据消息,基于所述当前时间戳和预设周期,确定所述当前时间戳所在的当前时间段;
基于预设位置编码算法对所述第一IP地址在所述当前时间戳所在的位置进行处理,得到所述第一IP地址在所述当前时间段所在的当前区域;
基于所述第一IP地址、所述当前时间段以及所述当前区域,更新所述映射关系中的映射数据。
5.根据权利要求4所述的定位方法,其特征在于,所述映射关系中的映射数据还包括所述位置上报次数,所述基于所述第一IP地址、所述当前时间段以及所述当前区域,更新所述映射关系中的映射数据,包括:
在所述映射关系中存在历史映射数据的情况下,基于预设增量,更新所述历史映射数据中的所述位置上报次数;所述历史映射数据的IP地址与所述第一IP地址相同,所述历史映射数据的时间段与所述当前时间段相同,所述历史映射数据的区域与所述当前区域相同;
在所述映射关系中不存在所述历史映射数据的情况下,基于所述第一IP地址、所述当前时间段以及所述当前区域,在所述映射关系中生成当前映射数据;所述当前映射数据的所述位置上报次数为预设初始值。
6.根据权利要求1-5中任一项所述的定位方法,其特征在于,所述根据所述至少一个候选区域以及各所述候选区域的位置上报次数,确定目标区域,包括:
对所述至少一个候选区域进行聚类,得到至少一个候选聚类区域;所述候选聚类区域至少包括一个所述候选区域;
获取各所述候选聚类区域对应的所述位置上报次数,并从所述至少一个候选聚类区域中确定所述目标区域;一个候选聚类区域对应的所述位置上报次数为所述一个候选聚类区域所包括的所述候选区域的所述位置上报次数之和。
7.根据权利要求6所述的定位方法,其特征在于,所述对所述至少一个候选区域进行聚类,得到至少一个候选聚类区域,包括:
若存在两个候选区域之间的距离大于第一距离,这将所述两个候选区域分别确定为所述候选聚类区域;
若存在所述两个候选区域之间的距离小于或者等于所述第一距离,则将所述两个候选区域合并为一个所述候选聚类区域;
若存在两个所述候选聚类区域之间的距离小于或者等于第二距离,则将两个所述候选聚类区域合并,得到一个所述候选聚类区域。
8.一种定位装置,其特征在于,包括确定单元、获取单元;
所述确定单元,用于响应于对目标网际互联协议IP地址在目标时刻进行定位的定位请求消息,确定所述目标IP地址在至少一个历史时间段对应的至少一个候选区域;一个候选区域为所述目标IP地址的在一个历史时间段所在区域;各所述历史时间段中任意时刻与所述目标时刻之间的时间间隔小于预设时间间隔;
所述获取单元,用于获取各所述候选区域的位置上报次数;所述位置上报次数为在同一区域、同一历史时间段内上报所述目标IP地址位置的次数;
所述确定单元,还用于根据所述至少一个候选区域以及各所述候选区域的位置上报次数,确定目标区域,并从所述目标区域内确定所述目标IP地址在所述目标时刻所在的目标位置;所述目标区域上报所述目标IP地址位置的总次数大于或者等于各所述候选区域的所述位置上报次数中的最大值。
9.一种电子设备,其特征在于,包括:处理器、用于存储所述处理器可执行的指令的存储器;其中,所述处理器被配置为执行指令,以实现所述权利要求1-7中任一项所述的定位方法。
10.一种计算机可读存储介质,所述计算机可读存储介质上存储有指令,其特征在于,当所述计算机可读存储介质中的指令由电子设备的处理器执行时,使得所述电子设备能够执行如权利要求1-7中任一项所述的定位方法。
CN202210801156.4A 2022-07-08 2022-07-08 定位方法、装置、电子设备及存储介质 Pending CN115277823A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202210801156.4A CN115277823A (zh) 2022-07-08 2022-07-08 定位方法、装置、电子设备及存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202210801156.4A CN115277823A (zh) 2022-07-08 2022-07-08 定位方法、装置、电子设备及存储介质

Publications (1)

Publication Number Publication Date
CN115277823A true CN115277823A (zh) 2022-11-01

Family

ID=83766306

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202210801156.4A Pending CN115277823A (zh) 2022-07-08 2022-07-08 定位方法、装置、电子设备及存储介质

Country Status (1)

Country Link
CN (1) CN115277823A (zh)

Citations (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103220376A (zh) * 2013-03-30 2013-07-24 清华大学 利用移动终端的位置数据来定位ip位置的方法
US20150149091A1 (en) * 2013-11-25 2015-05-28 PlaceIQ, Inc. Apparatus and Method for Determining the Quality or Accuracy of Reported Locations
CN106936887A (zh) * 2015-12-31 2017-07-07 珠海金山办公软件有限公司 一种地理位置定位方法及装置
CN107623945A (zh) * 2017-10-09 2018-01-23 上海连尚网络科技有限公司 定位移动设备所在区域的方法、系统和计算机存储介质
CN108712519A (zh) * 2018-05-31 2018-10-26 康键信息技术(深圳)有限公司 Ip地址的定位方法、装置及存储介质
CN110798543A (zh) * 2019-11-04 2020-02-14 北京数字联盟网络科技有限公司 Ip定位方法及装置、计算机存储介质、计算设备
CN111078818A (zh) * 2019-12-27 2020-04-28 同盾(广州)科技有限公司 地址分析方法、装置、电子设备及存储介质
CN111343301A (zh) * 2020-04-21 2020-06-26 北京字节跳动网络技术有限公司 一种定位方法、定位装置、电子设备及存储介质
CN111405484A (zh) * 2020-03-13 2020-07-10 腾讯科技(深圳)有限公司 一种网络位置挖掘方法、装置、设备及存储介质
CN111898624A (zh) * 2020-01-21 2020-11-06 北京畅行信息技术有限公司 定位信息的处理方法、装置、设备及存储介质
CN112052409A (zh) * 2020-09-28 2020-12-08 中国平安人寿保险股份有限公司 地址解析方法、装置、设备及介质
CN113067913A (zh) * 2021-03-19 2021-07-02 北京达佳互联信息技术有限公司 定位方法、装置、服务器、介质及产品
CN113286260A (zh) * 2020-02-20 2021-08-20 深圳奇迹智慧网络有限公司 人群分布确定方法、系统、计算机设备和存储介质
CN114679680A (zh) * 2022-03-10 2022-06-28 北京字节跳动科技有限公司 基于ip地址的定位方法、装置、可读介质和电子设备

Patent Citations (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103220376A (zh) * 2013-03-30 2013-07-24 清华大学 利用移动终端的位置数据来定位ip位置的方法
US20150149091A1 (en) * 2013-11-25 2015-05-28 PlaceIQ, Inc. Apparatus and Method for Determining the Quality or Accuracy of Reported Locations
CN106936887A (zh) * 2015-12-31 2017-07-07 珠海金山办公软件有限公司 一种地理位置定位方法及装置
CN107623945A (zh) * 2017-10-09 2018-01-23 上海连尚网络科技有限公司 定位移动设备所在区域的方法、系统和计算机存储介质
CN108712519A (zh) * 2018-05-31 2018-10-26 康键信息技术(深圳)有限公司 Ip地址的定位方法、装置及存储介质
CN110798543A (zh) * 2019-11-04 2020-02-14 北京数字联盟网络科技有限公司 Ip定位方法及装置、计算机存储介质、计算设备
CN111078818A (zh) * 2019-12-27 2020-04-28 同盾(广州)科技有限公司 地址分析方法、装置、电子设备及存储介质
CN111898624A (zh) * 2020-01-21 2020-11-06 北京畅行信息技术有限公司 定位信息的处理方法、装置、设备及存储介质
CN113286260A (zh) * 2020-02-20 2021-08-20 深圳奇迹智慧网络有限公司 人群分布确定方法、系统、计算机设备和存储介质
CN111405484A (zh) * 2020-03-13 2020-07-10 腾讯科技(深圳)有限公司 一种网络位置挖掘方法、装置、设备及存储介质
CN111343301A (zh) * 2020-04-21 2020-06-26 北京字节跳动网络技术有限公司 一种定位方法、定位装置、电子设备及存储介质
CN112052409A (zh) * 2020-09-28 2020-12-08 中国平安人寿保险股份有限公司 地址解析方法、装置、设备及介质
CN113067913A (zh) * 2021-03-19 2021-07-02 北京达佳互联信息技术有限公司 定位方法、装置、服务器、介质及产品
CN114679680A (zh) * 2022-03-10 2022-06-28 北京字节跳动科技有限公司 基于ip地址的定位方法、装置、可读介质和电子设备

Similar Documents

Publication Publication Date Title
CN109377329B (zh) 一种房源推荐方法、装置、存储介质及电子设备
US7392247B2 (en) Method and apparatus for fusing context data
CN109995884B (zh) 确定精确地理位置的方法和装置
US9571589B2 (en) Systems and methods for mapping IP-addresses to geolocations
US8996523B1 (en) Forming quality street addresses from multiple providers
US10366113B2 (en) Method and system for generating a geocode trie and facilitating reverse geocode lookups
US7213048B1 (en) Context aware computing devices and methods
US7076243B2 (en) Context aware computing devices having a common interface and related methods
US6327535B1 (en) Location beaconing methods and systems
US7421486B1 (en) Context translation methods and systems
KR20210038859A (ko) 검색 방법, 장치, 전자기기 및 저장매체
US9747304B2 (en) Approximating a user location
US20170068902A1 (en) Modeling of Geospatial Location Over Time
WO2001082143A2 (en) Context aware systems and methods utilizing hierarchical tree structures
US10972862B2 (en) Visitor insights based on hyper-locating places-of-interest
CN113177058B (zh) 基于复合条件的地理位置信息检索方法及系统
CN110781415A (zh) 一种兴趣点推荐方法、装置、设备及介质
CN110888963B (zh) 数据获取方法、装置、电子设备及存储介质
CN111311193B (zh) 公共服务资源的配置方法和装置
CN111641924B (zh) 位置数据生成方法、装置和电子设备
CN113704378A (zh) 一种伴随信息的确定方法、装置、设备及存储介质
CN114153986A (zh) 一种知识图谱构建方法、装置、电子设备及存储介质
US10182307B2 (en) System for providing location-based social networking services to users of mobile devices
CN113961780A (zh) 常驻小区的获取方法、装置、电子设备以及存储介质
US20190005574A1 (en) System and method for matching a service provider to a service requestor

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