一种检测ixp结构在traceroute路径中哪个跃点被交叉的工具。
traixroute的Python项目详细描述
简介
traIXroute是一个工具,用于检测traceroute路径是否和在何处穿过ixp结构。它使用多个标准,根据第三方接口的回复或有关分配给ixp的ip地址的可用数据的不精确性来验证ixp交叉。这些差异误导了仅仅基于分配给ixp的ip地址前缀的简单启发式方法。检测使用来自peeringdb、数据包交换所和routeviews的数据。此外,traIXroute在后台使用标准的traceroute工具或scamper工具,该工具实现了paris traceroute技术,以处理由于负载平衡器[1]而导致的不准确路径。它是gplv3下的开源。
traixroute使用的启发式方法及其评估在下面的文章中介绍:
- G.Nomikos和X.Dimitropoulos。“traixroute:检测traceroute路径中的ixp”。《被动和主动测量会议记录》(PAM'16),2016年3月31日至4月1日,希腊赫拉克利翁。
- G.Nomikos和X.Dimitropoulos。“Detecting IXPs in Traceroute Paths Using traIXroute”。成熟实验室,2016年8月3日。
traIXroute首次增强了它与Remote Peering Jedi tool的互操作功能。目前,仅包括de-cix(法兰克福)、any2(洛杉矶)、ams-ix、france ix、linx和msk-ix的数据。
安装
该程序已经在Linux和MacOSX上进行了测试。详细的安装说明可以在存储库的安装文件中找到。您可以安装所有必要的软件包,运行:
最新版本可在pypi上找到,python包索引:
$ pip3 install traixroute $ scamper-install (To enable probes using scamper) $ traixroute (To build the configuration files in the home directory) $ traixroute --help
还可以从github下载最新的存档文件:
$ curl -L https://github.com/gnomikos/traIXroute/archive/v2.3.tar.gz | tar zx $ sh traIXroute-2.3/setup/install.sh $ ./traIXroute-2.3/bin/traixroute
如果使用git:
$ git clone https://github.com/gnomikos/traIXroute.git $ sh traIXroute/setup/install.sh $ ./traIXroute/bin/traixroute
重要
如果您运行MacOSX,请确保您以前安装过Xcode命令行开发工具。要安装,请运行:
$ xcode-select --install
将出现一个软件更新弹出窗口。您只需要通过单击“安装”按钮安装命令行开发人员工具,然后同意服务条款。此过程将下载并安装命令行工具包。
如果您有问题,请联系George Nomikos(gnomikos[at]ics.forth.gr)。
依赖关系
- Python 3-traIXroute需要python 3.5或更高版本。
- Scamper-caida提供的一种工具,用于并行探测互联网,以便及时收集大量数据。
- Traceroute-一种用于测量Internet路径及其每跳延迟的诊断工具。
- Click here for other dependencies.
文档
文档可以找到here。文档包括可用的命令行选项、如何使用用户提供的数据扩展或覆盖来自peeringdb和数据包交换所的数据、如何自定义或扩展traixroute检测规则,以及其模块图。
许可证
traIXroute的源代码是在GNU通用公共许可证第3版下发布的。可以在许可证文件中找到副本。
版权所有©TraixRoute,2016年。
致谢
导致traIXroute的研究得到了欧洲研究理事会(erc)338402-netvo的资助。解决方案项目(www.netvolution.eu)。
参考文献
[1] | Augustin, B., Friedman, T. and Teixeira, R., “Multipath tracing with Paris traceroute.” In End-to-End Monitoring Techniques and Services, 2007. Workshop on, pp. 1-8. IEEE, 2007. |