Towards Geolocation of Millions of IP Addresses(2012年)

news2024/11/28 8:45:26

下载地址: Towards geolocation of millions of IP addresses | Proceedings of the 2012 Internet Measurement Conference

被引用次数:70

 Hu Z, Heidemann J, Pradkin Y. Towards geolocation of millions of IP addresses[C]//Proceedings of the 2012 Internet Measurement Conference. 2012: 123-130.

ABSTRACT

以前基于测量的IP地理定位算法都集中在精度上,用越来越复杂的算法从数十个有利位置(vantage points,VPs)进行测量。在本文中,我们研究了如何扩大现有的基于测量的地理定位算法,如最短的Ping和CBG,以覆盖整个互联网。我们表明,在许多有利位置下,VP接近目标是影响精度的最重要因素。这一观察结果表明,我们的新算法可以从许多候选目标中为每个目标选择最好的几个vp。这种方法解决了地理位置可伸缩性的主要瓶颈:在保持准确性的同时,最小化进入每个目标(以及每个VP)的流量。使用这种方法,我们目前已经对已分配的约35%的单播、IPv4地址空间进行了地理定位(互联网上约85%的地址可以直接进行地理定位)。我们在一个基于web的地址空间浏览器上可视化我们的地理定位结果。

Categories and Subject Descriptors

C.2.1 [Computer-Communication Networks]: Network Architecture and Design—Network topology;    [计算机通信网络]:网络体系结构与设计—网络拓扑结构

C.2.5 [Computer-Communication Networks]: Local and Wide-Area Networks—Internet;  [计算机通信网络]:局域网和广域网-因特网

C.2.6 [Computer-Communication Networks]: Internetworking General Terms: Experimentation, Measurement  计算机-通信网络]:互联网通用术语:实验,测量

Keywords

IP geolocation(IP地理定位), IPv4

1. INTRODUCTION

IP地址定位是查找Internet协议地址的地理位置的过程。IP地理定位技术在当今得到了广泛的应用。例如,公司使用IP地理定位将内容限制在某些国家(例如,电视和电影,通常根据观众的国家获得不同的授权),并根据位置定制广告。互联网研究人员使用IP地理定位来将网络现象与国家联系起来,比如研究文化对社交网络的影响,或按国家和政策划分的计算机犯罪率。此外,知识产权地理定位在执法中至关重要,以确定处理计算机犯罪法规执行的适当管辖权。

一些研究和商业地理定位系统的存在,探索了许多不同的方法。它们形成了三个粗略的类别(第3节):由数据库([11,15])驱动的系统、基于测量的地理定位(如Geoping[15]、CBG [4]等)和目标辅助地理定位(如Skyhook[17])。我们在这里关注的是基于测量的系统,因为它们比数据库方法提供更好的覆盖范围和准确性,并且独立于目标。基于测量的算法都依赖于有利位置(VPs)来主动探测地理定位目标。我们研究了几何类算法和CBG类算法。

[11] David Moore, Ram Periakaruppan, and Jim Donohoe. Where in the world is netgeo.caida.org?, July 2000.

[15] Venkata N. Padmanabhan and Lakshminarayanan Subramanian. An investigation of geographic mapping techniques for Internet hosts. In Proceedings of the ACM SIGCOMM Conference, pages 173–185, San Diego, California, USA, August 2001. ACM.

[4] Bamba Gueye, Artur Ziviani, Mark Crovella, and Serge Fdida. Constraint-based geolocation of Internet hosts. ACM/IEEE Transactions on Networking, 14(6):1219–1232, December 2006.

[17] Skyhook. web page http://www.skyhookwireless.com/.

我们的目标不是发明一个新的地理定位算法,而是了解现有的算法如何可以扩展到数百万个目标和整个IPv4地址空间。我们在将现有的算法扩展到整个互联网时遇到了几个问题。

首先,所有现有的工作都使用相对较小的[4,9],通常是几十个[4,9]。

其次,现有的工作是在一个相对较小的目标集上进行测试的,通常是数百个目标。

选择已知真实值的典型目标来评估算法的精度。目前的算法有数十个vp和数百个目标,每个算法都有所有的vp向每个目标发送许多探针。虽然这个产品都是小的,是合理的,有数百个vp和10亿目标,但产品是大的。其结果是每个VP的大量流量,进入每个目标的繁重流量,其中数百个探测到达目标块中的每个IP地址,以及将这些数据的沉重负荷放在一起。

[9] Ethan Katz-Bassett, John P. John, Arvind Krishnamurthy, David Wetherall, Thomas Anderson, and Yatin Chawathe. Towards IP geolocation using delay and topology measurements. In Proceedings of the ACM Internet Measurement Conference, pages 71–84, Rio de Janeiro, Brazil, October 2006. ACM.

为了将地理位置扩展到整个互联网,我们的第一个贡献是研究了哪些因素影响了基于测量的地理位置协议的地理位置的可伸缩性和准确性。我们表明,流量,包括从vp出站还是入站到目标,都是全互联网地理定位的一个重大限制,并表明更少的vp可以使入站流量易于管理。

然后我们表明,大多数VPs对地理定位没有什么好处,这表明人们只能选择几个VPs来定位每个IP地址,在合理的同时获得合理的准确性,同时大大减少流量。我们对影响准确性的因素提出了三个猜想,并表明使用一些VPs的良好的准确性是可能的(第4.1节)。

我们的第二个贡献是定义新的算法来选择正确的几个VPs(第4.2节)。我们的想法是选择离目标最近的VPs,因为越近的VPs对位置的约束越强。通过对每个/24地址块进行试验测量,VP选择效果很好(第4.2节)。我们的实验结果表明,代表能够识别接近的副总裁,并提供几乎与许多副总裁一样好的准确性。对于最短的Ping,与所有400个VPs相比,10个接近VPs的中值误差相同,而CBG的中位数误差仅差11%

通过本文中概述的方法,我们正在对所有响应性的公共IPv4地址进行地理定位。研究人员[7]可以免费获得这些数据。

[7] Zi Hu, John Heidemann, and Yuri Pradkin. LANDER geolocation datasets. http://www.isi.edu/ant/traces/geolocation, August 2012. Also available through PREDICT (www.predict.org).

2. PROBLEM STATEMENT

我们的目标是对每个分配的单播IPv4地址进行地理定位,具有与基本最短Ping和CBG相似的精度。虽然地理定位算法是众所周知的,但将它们扩展到覆盖整个互联网的主要限制是探测流量。接下来,我们将回顾地理定位元素和这些约束条件。

2.1 Geolocation terminology

基于测量的地理定位系统将探测器从有利的位置发送到互联网上的地理定位目标。一些系统还可以在已知的参考位置上探测地标。图1显示了这些实体:

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1587054.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

利用Python实现可视化交互界面:Dash

Dash是一个低代码数据框架,用Python实现可视化交互界面,不用写Javascript,开源,支持回调、HTML组件等功能。 安装 pip install dash使用 # Import packages from dash import Dash, html, dash_table, dcc, callback, Output, …

[BT]BUUCTF刷题第14天(4.10)

第14天&#xff08;共5题&#xff09; Web [BJDCTF2020]ZJCTF&#xff0c;不过如此 打开网站直接显示源代码&#xff1a; <?php error_reporting(0); //关闭报错 $text $_GET["text"]; $file $_GET["file"]; if(isset($text)&&(file…

C#如何用NPOI创建、读取、更新Excel文件

一.获取引用NPOI VS2017&#xff0c;通过Nuget工具包下载NPOI到指定的项目中&#xff0c;如下 二.添加如下命名空间,其中HSSF是操作*.xls文件&#xff0c;XSSF操作*.xlsx文件. using NPOI; using NPOI.SS.UserModel; using NPOI.XSSF.UserModel; using NPOI.HSSF.UserModel; …

Debian 安装 Docker

Debian 安装 Docker。 这是官方安装文档 Install Docker Engine on Debian | Docker DocsLearn how to install Docker Engine on Debian. These instructions cover the different installation methods, how to uninstall, and next steps.https://docs.docker.com/engine/i…

如何将普通maven项目转为maven-web项目

文件-项目结构&#xff08;File-->Project Structure &#xff09; 模块-->learn&#xff08;moudle-->learn&#xff09; 选中需要添加web的moudle&#xff0c;点击加号&#xff0c;我得是learn&#xff0c;单击选中后进行下如图操作&#xff1a; 编辑路径 结果如下…

【网站项目】英语学习激励系统小程序

&#x1f64a;作者简介&#xff1a;拥有多年开发工作经验&#xff0c;分享技术代码帮助学生学习&#xff0c;独立完成自己的项目或者毕业设计。 代码可以私聊博主获取。&#x1f339;赠送计算机毕业设计600个选题excel文件&#xff0c;帮助大学选题。赠送开题报告模板&#xff…

神经网络背后的数学原理

原文地址&#xff1a;The Math Behind Neural Networks 2024 年 3 月 29 日 深入研究现代人工智能的支柱——神经网络&#xff0c;了解其数学原理&#xff0c;从头开始实现它&#xff0c;并探索其应用。 神经网络是人工智能 &#xff08;AI&#xff09; 的核心&#xff0c;为…

性能优化“万金油”:缓存Cache

1、首次请求数据时,先从缓存中获取,如果没有,则继续向数据库中获取。获取到数据后,将数据保存到缓存中。再次请求数据,一样先从缓存中获取,成功获取,“缓存命中”。多次请求中,命中次数占全部请求次数的比例,叫“命中率”。如果数据源的数据发生变化,而缓存中的数据没…

【RV1106的ISP使用记录之一】基础环境搭建

公司缺少ISP工程师&#xff0c;做为图像算法工程师的我这就不就给顶上来了么&#xff0c;也没给发两份工资&#xff0c;唉~ 先写个标题&#xff0c;占一个新坑&#xff0c;记录RK平台的传统ISP工作。 一、基础环境的硬件包括三部分&#xff1a; 1、相机环境&#xff0c;用于采…

3D开发工具HOOPS:推动汽车行业CAD可视化发展

在最近的行业对话中&#xff0c;Tech Soft 3D&#xff08;HOOPS厂商&#xff09;的Jonathan Girroir和Actify的Peter West探讨了CAD可视化在当代企业中的重要性和挑战。作为CAD可视化领域的佼佼者&#xff0c;Actify通过其广受欢迎的Spinfire应用&#xff0c;赋能了全球40多个国…

单链表总结提升

这篇博客讲解数据结构中的单链表&#xff0c;包括单链表的基础知识和我对链表实现的总结理解&#xff0c;希望可以帮助到正在学习的小伙伴&#xff0c;也希望得到小伙伴们的关注和支持哦~ 目录 1.单链表的概念 1.2顺序表和链表的对比 顺序表&#xff1a; 链表&#xff1a;…

【牛客SQL快速入门】SQL基础(三)

一、条件函数 IF 条件函数 IF函数是最常用到的条件函数&#xff0c;写法为 if(xn,a,b)&#xff0c;xn代表判断条件&#xff0c;如果xn时&#xff0c;那么结果返回a&#xff0c;否则返回b。 -- 把非北京大学的用户统一归为其他大学 Select device_id,if(university ‘北京大…

C++设计模式:享元模式(十一)

1、定义与动机 概述&#xff1a;享元模式和单例模式一样&#xff0c;都是为了解决程序的性能问题。面向对象很好地解决了"抽象"的问题&#xff0c;但是必不可免得要付出一定的代价。对于通常情况来讲&#xff0c;面向对象的成本大豆可以忽略不计。但是某些情况&#…

T2.数据库原理

2.1 关系模型概述 1.域 域&#xff1a; 一组有相同数据类型的值得集合 2.笛卡尔积 笛卡尔积&#xff1a; 设任意的N个域D1,D2,…,Dn。 3、关系的定义和性质 &#xff08;1&#xff09;关系的数学定义&#xff1a; 在笛卡儿积中取出有实际意义的元组来构造关系。 关系也是…

R语言绘制一次和二次相关性热图

在数据探索的过程中&#xff0c;我们往往会对数据与数据的相关性进行分析&#xff0c;例如我们常用的corrplot包&#xff0c;或者psych包中的corr.test函数&#xff0c;对两两变量间的相关性进行分析。我们常常会看到这样的相关性热图&#xff1a; 但有时变量间的关系并非线性…

new mars3d.thing.Sightline({ 实现航线穿透山体/模型部分的虚线效果且不随视角变化而变化

摘要&#xff1a;new mars3d.thing.Sightline({ 实现航线穿透山体/模型部分的虚线效果且不随视角变化而变化&#xff0c;避免depthFailMaterial材质随着视角变化遮挡部分也会虚线效果。 前置说明&#xff1a; 1.不可视区域颜色hiddenColor支持设置材质&#xff0c;实现穿过山…

【spring】@PostConstruct和@PreDestroy注解学习

PostConstruct和PreDestroy介绍 PostConstruct和PreDestroy是Java EE&#xff08;Enterprise Edition&#xff09;和Java SE&#xff08;Standard Edition&#xff09;中的注解&#xff0c;它们用于指定一个bean在其生命周期的特定点应该执行的方法。 这两个注解是JSR250规范中…

【高端电流检测IC储能产品应用方案】耐压28V侧轨的电流检测芯片FP130A 应用于电脑电源,开关电源以及多口快充充电器,户外移动电源,适配器,电池充电器等

电流检测技术常用于高压短路保护、电机控制、DC/DC换流器、系统功耗管理、二次电池的电流管理、蓄电池管理等电流侦测等场景。对于大多数应用而言&#xff0c;都是间接测量电阻两端的跨压差来获取待测电流。 如下面的高端电流检测芯片FP130A&#xff0c;丝印是FC915。电路原理图…

MySQL 全文检索

不是所有的数据表都支持全文检索 MySQL支持多种底层数据库引擎&#xff0c;但是并非所有的引擎支持全文检索 &#xff0c;目前最常用引擎是是MyISAM和InnoDB&#xff1b;前者支持全文检索&#xff0c;后者不支持。 booolean模式操作符 操作符含义必须有-必须不包含>包含对应…

Unity 中画线

前言&#xff1a; 在Unity项目中&#xff0c;调试和可视化是开发过程中不可或缺的部分。其中&#xff0c;绘制线条是一种常见的手段&#xff0c;可以用于在Scene场景和Game视图中进行调试和展示。本篇博客将为你介绍多种不同的绘制线条方法&#xff0c;帮助你轻松应对各种调试…