CN101741867A - 一种捕获BitTorrent网络中节点信息的方法 - Google Patents

一种捕获BitTorrent网络中节点信息的方法 Download PDF

Info

Publication number
CN101741867A
CN101741867A CN200810046561A CN200810046561A CN101741867A CN 101741867 A CN101741867 A CN 101741867A CN 200810046561 A CN200810046561 A CN 200810046561A CN 200810046561 A CN200810046561 A CN 200810046561A CN 101741867 A CN101741867 A CN 101741867A
Authority
CN
China
Prior art keywords
network
simulation
node
emulation
simulation node
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.)
Granted
Application number
CN200810046561A
Other languages
English (en)
Other versions
CN101741867B (zh
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.)
Electronic Science And Technology Of Sichuan Foundation For Education Development, University of
Original Assignee
University of Electronic Science and Technology of China
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 University of Electronic Science and Technology of China filed Critical University of Electronic Science and Technology of China
Priority to CN200810046561XA priority Critical patent/CN101741867B/zh
Publication of CN101741867A publication Critical patent/CN101741867A/zh
Application granted granted Critical
Publication of CN101741867B publication Critical patent/CN101741867B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

本发明提出了一种利用分布式仿真技术捕获BitTorrent(以下简称BT)网络中节点信息的方法。其特征在于,该方法结合分布式仿真技术,实现了一个BitTorrent仿真系统。利用该仿真系统可实现与真实Tracker服务器和BT网络客户端相兼容的BT仿真客户端,实现了从真实BT网络下载和上传数据的功能。基于此,可以统计出BT网络中节点的各种信息,比如,BT客户端的IP和端口信息、客户端在线时间等。这些信息不但为深层研究BitTorrent协议和BT网络特征提供了有效依据,而且对于基于BitTorrent协议的其他应用方法具有一定的指导作用。

Description

一种捕获BitTorrent网络中节点信息的方法
技术领域
本发明涉及一种利用分布式仿真技术捕获BitTorrent(以下简称BT)网络中节点信息的方法。该方法结合分布式仿真技术,实现了一个BitTorrent仿真系统。利用该仿真系统可实现与真实Tracker服务器和BT网络客户端相兼容的BT仿真客户端,并从真实BT网络下载和上传数据的功能,从而可捕获BT网络中的节点信息。
背景技术
BitTorrent是一种文件分发的协议,它通过URL来识别内容,并且可以无缝的和Web进行交互,它基于HTTP协议,其优势是:如果有多个下载者并发的下载同一个文件,那么,每个下载者也同时为其它下载者上传文件,这样,文件源可以支持大量的用户进行下载,而只带来适当的负载的增长。
BitTorrent协议的基本思想为:把文件分割成文件片;将各文件片迅速地复制到需要下载该文件的不同的节点上;当一个节点获得一个完整的文件片时,它便可以向其他节点进行发送;通过以上策略,节点最终能够获得一个完整的文件。
BitTorrent协议采用博弈论的思想,利用tit-for-tat策略进行大文件的共享与下载。在这种策略下,有效的控制了“免费搭车者”(free rider)现象的发生,节点只有提供资源的下载才能从其他节点处下载自己所需的资源。
虽然BitTorrent协议不像DHTs那样对资源的定位有非常好的保证,但在实际的操作中,BitTorrent协议的运行效果却远远优于DHTs。
BT文件分布系统由四个实体组成:Web服务器、Tracker服务器、种子seed和下载者leecher。Web服务器用于存放静态的.torrent文件,别人可以从此服务器上下载此文件,此文件中的内容以B编码的形式存在。
Tracker服务器主要向节点提供邻居节点列表,并记录各节点的运行状况,其中包括节点上传量、下载量、下载分片信息等。当一个peer刚开始下载时,它需要知道都有哪些peer正在下载这一个文件,以便能与它们建立连接,从它们那里下载文件。这一信息交互是采用HTTP的方式来进行的。首先peer在.torrent文件中找到Tracker服务器的URL,向Tracker提交请求,然后Tracker返回给节点相应的信息。
种子seed是指拥有完整文件并提供下载的节点。
下载者leecher是指正在下载文件,拥有部分文件的节点。
BitTorrent协议的运行过程可以分成四个阶段:请求文件下载;获取邻居列表;文件下载;下载完毕。
当一个节点想要下载某个文件时,首先是从Web服务器上下载.Torrent元信息文件。.Torrent元信息文件中,主要包括有Tracker服务器的IP和Port,并且包括有该文件的分片数。
当节点获取到Tracker服务器信息以及文件分片数后,便向Tracker服务器发送信息,表明自己的存在,并在Tracker服务器中注册。Tracker服务器接收到节点发送的消息后,记录下该节点的信息,并随机返回给该节点一定量的邻居节点的列表。
当节点获取到邻居节点的信息后,并同邻居节点建立连接,进行文件的下载。文件下载的过程可以分成以下几个阶段:当节点获取到邻居节点的信息后,便采用TCP协议进行连接,如果连接成功便在本地记录下来;当一个节点下载的文件分片数小于四个时,便随机地下载四个文件片,当节点下载的文件分片超过四个时,便按照rarest first算法进行文件分片下载;节点定时向Tracker服务器汇报其进程,其中汇报的内容包括以下几部分:节点ID、上传量、下载量,剩余量、状态、拥有的文件分片等。节点之间会定时相互发送消息以维护连接。当节点发现其某个邻居超过一定时间而未发送消息时,便判断与该邻居的连接已经断掉,并将该邻居从自己的邻居列表中删除。当节点的邻居列表所保存的邻居数少于20时,并向Tracker服务器发送消息请求邻居。每个节点的邻居列表的最大长度为80。
当节点下载完文件后,可以选择继续保持在BT网络中,充当种子,提供文件的下载。节点也可以选择退出BT网络,退出时向Tracker服务器发送退出消息。
发明内容
本发明的目的是利用一种分布式仿真技术来捕获BitTorrent网络中的节点信息。该方法结合分布式仿真技术,实现了一个BitTorrent仿真系统。利用该仿真系统可捕获BT网络中的节点信息。
如图1所示,整个仿真系统从逻辑上分为两层。第一层是由五个分布式仿真平台所构成的一个非结构化P2P网络,每一个仿真平台运行有一个或多个仿真节点。每个仿真节点彼此间相互独立,具有高度的自治性,同时彼此间又能够进行信息的交互。仿真平台负责完成本地仿真节点的仿真运行功能,主要包括仿真节点的创建、仿真节点连接关系的建立、BT协议的执行、信息的交互、本地数据的统计等。其中,当从真实BT网络中获取.torrent文件后,仿真节点通过BT协议的执行,可实现与真实Tracker服务器和BT网络客户端兼容性,并从真实BT网络下载和上传数据的功能,从而可捕获BT网络中的节点信息。
第二层是由仿真服务器与已构成的P2P网络所组成,是一个集中式的C/S结构,其中服务器负责完成整个仿真系统和仿真运行的控制管理功能,包括时间同步管理、仿真任务规划、仿真运行控制、仿真数据收集分析等操作,仿真节点间的消息交互则交由节点所在的仿真平台处理。这样的体系结构结合了C/S模式和P2P模式的分布式仿真网络环境体系结构的优点,可扩展性好、实现难度较小。
仿真节点能够与外界真实P2P应用进行网络通信,是通过创建一张用于网络连接的维护和管理的网络连接映射表来实现的。在真实的P2P网络环境中,P2P应用一般采用UDP来发送命令等控制信息,而采用TCP来进行数据的传输。根据P2P应用的这一特征,网络连接映射表设计为如图2所示。其中,Connection Type字段代表网络连接方式,分为UDP和TCP两种方式;Application IP字段是真实P2P应用的IP地址。利用网络连接映射表,仿真节点能够准确地将数据传输到外界某个P2P应用,以及外界数据能够准确地传输到目的仿真节点,从而实现了仿真节点与外界真实P2P应用的通信。而对于外界真实P2P应用而言,只清楚网络仿真平台的IP地址和相关通信的端口号,并不知道与之通信的仿真节点的信息,对仿真系统起了一定的保护作用。
仿真系统中,由于仿真节点消息不通过仿真服务器端进行转发,不受服务器端计算机性能的影响。仿真信息交互所带来的网络通信开销分摊到各个仿真平台,网络通信直接、高效。因此,只要通过增加仿真平台的数量,便可以实现大规模的BT仿真。
借助该分布式仿真系统实现BT网络信息捕获时,仿真节点首先主动从互联网上捕获.torrent文件,解析完torrent文件,便向Tracker服务器发送注册信息并请求邻居列表。因为Tracker服务器已经登记BT仿真节点的注册信息,所以,当互联网上的BT客户端向Tracker服务器发送请求邻居列表消息时,Tracker服务器会向互联网上的真实BT客户端返回仿真系统的仿真节点信息,真实BT客户端会主动向仿真节点发送请求连接消息。当仿真节点接收到请求连接信息时,会记录下基于特定.torrent文件的请求连接数据包的IP地址、网络端口号和接收请求连接数据包的系统时间等信息。通过对大量的网络数据包的IP地址、网络端口号和连接时间差的统计与分析,可以得出如图3所示的基于某.torrent共享文件的BT客户端地域分布情况以及不同时段的BT客户端在线时间长等有效信息。
利用该捕获方法,可以进一步的统计出第一个做种子者的客户端、torrent文件的生命周期、对应Tracker的周期、torrent文件的有效性等数据,从而为深层研究BT协议和BT网络特征提供了一种有效的方法。
附图说明
图1BitTorrent仿真系统结构图;
图2网络连接映射表示意图;
图3基于地域分布的数据捕获统计信息分布图。
具体实施方式
下面结合附图对本发明的技术方案作详细说明。
整个BitTorrent仿真系统的系统结构如图1所示。仿真系统服务端负责完成整个仿真系统和仿真运行的控制管理功能,包括时间同步管理、仿真任务规划、仿真运行控制、仿真数据收集分析等操作;仿真平台负责完成本地仿真节点的仿真运行功能,主要包括仿真节点的创建、仿真节点连接关系的建立、BT协议的执行、信息的交互、本地数据的统计等。
仿真系统开始时,先在仿真服务端配置子网拓扑信息和系统仿真参数,包括仿真平台数、仿真节点数、仿真协议、用于仿真平台同步的仿真标准时间、仿真调度时间等信息,并把仿真参数、子网拓扑信息及其仿真命令下放到各仿真平台。
仿真平台接收服务器传送的仿真参数配置,进行初始化设置,在接收子网拓扑信息后,完成三项操作:确定本地的仿真节点数目,构建相应的仿真节点,同时给每个仿真节点分配一个全局唯一标识;确定本地仿真节点间的连接关系;确定本地仿真节点与其他仿真平台上的仿真节点间的连接关系。通过以上操作,仿真节点和彼此间的连接关系构建完毕,这样才能进行仿真节点的调度管理。同时,仿真平台还要负责实时记录由于网络抖动而造成的仿真节点状态以及彼此间连接关系的动态变化,并将信息发送到仿真服务器端进行汇总处理。
当仿真平台初始化设置完毕后,向服务器端发送等待仿真运行消息,进行仿真就绪状态。然后仿真平台接收服务器端发送的仿真时间消息,决定是否继续推进仿真还是暂停仿真以待所有的仿真平台进行时间同步。如果整个仿真没有结束,则仿真平台运行当前时间的P2P仿真程序,然后向服务器端发送当前时间仿真结束消息和当前时间的仿真统计数据。如果接收到仿真结束消息,则结束当前仿真平台的仿真运行,并发送当前仿真平台仿真结束消息。
仿真平台根据仿真参数配置仿真节点信息并执行仿真命令,开始仿真。在仿真的过程中,仿真节点执行BT协议,当仿真节点需要与外界真实P2P应用进行通信时,仿真系统创建一个UDP或TCP的网络连接,并将连接关系记录到网络连接映射表中。当网络通信结束后,网络连接会被仿真平台撤销,并将连接关系从网络连接映射表中删除,以减少仿真系统的开销。
仿真节点执行BT协议时,仿真节点首先主动从互联网上捕获.torrent文件,解析完torrent文件,便向Tracker服务器发送注册信息并请求邻居列表。因为Tracker服务器已经登记BT仿真节点的注册信息,所以,当互联网上的BT客户端向Tracker服务器发送请求邻居列表消息时,Tracker服务器会向互联网上的真实BT客户端返回仿真系统的仿真节点信息,真实BT客户端会主动向仿真节点发送请求连接消息。当仿真节点接收到请求连接信息时,会记录下基于特定.torrent文件的请求连接数据包的IP地址、网络端口号和接收请求连接数据包的系统时间等信息。通过对大量的网络数据包的IP地址、网络端口号和连接时间差的统计与分析,可以得出如图3所示的基于某.torrent共享文件的BT客户端地域分布情况以及不同时段的BT客户端在线时间长等有效信息。
在该数据捕获方法中,通过对流经该仿真系统的网络流量的数据进行捕获与分析,可以统计出不同地域、不同时段的BT流量信息,比如,IP地址、网络端口、客户端在线时间等信息。通过对该数据捕获方法的合理改善,可以进一步的统计出第一个做种子者的客户端、torrent文件的生命周期、对应Tracker的周期、torrent文件的有效性等数据,从而为深层研究BT协议和BT网络特征提供了一种有效的方法。

Claims (6)

1.一种捕获BitTorrent网络中节点信息的方法,其特征在于,
该捕获方法是基于BitTorrent仿真系统实现的;
该仿真系统是逻辑上分为两层:第一层是由分布式仿真平台所构成的一个非结构化P2P网络;第二层是由仿真服务器与已构成的P2P网络所组成,是一个集中式的C/S结构。
仿真节点通过一种网络连接映射表实现了与真实BT网络的兼容性;
在该捕获方法中,通过对大量的连接数据包的统计与分析,可以建立基于BT网络的外部节点的地域分布和在线时间分布应用图。
2.如权利要求1所述,整个仿真系统从逻辑上分为两层。第一层是由仿真计算机或仿真节点所构成的一个非结构化P2P网络,主要用于仿真的运行、信息交互等操作。第二层是由服务器与已构成的P2P网络所组成,是一个集中式的C/S结构,其中服务器主要进行仿真控制管理的工作,包括时间同步管理、仿真任务规划、仿真运行控制、仿真数据收集分析等操作;而仿真节点间的通信则交由仿真平台处理。
3.如权利要求1所述,为实现与真实BT网络兼容性,仿真平台需要创建一张网络连接映射表用于网络连接的维护和管理,以保证仿真节点能够准确地将数据传输到外界某个P2P应用,以及外界数据能够准确地传输到目的仿真节点。当仿真节点需要与外界真实P2P应用进行通信时,仿真平台才会创建一个UDP或TCP的网络连接,并将连接关系记录到网络连接映射表中。当网络通信结束后,网络连接会被仿真平台撤销,并将连接关系从网络连接映射表中删除,以减少仿真系统的开销。
4.如权利要求3所述,网络连接映射表包含7个字段:Connection Type代表网络连接方式,分为UDP和TCP两种连接方式;Peer ID,仿真节点全局唯一标识;Peer IP,仿真节点IP地址,即仿真节点所在仿真平台的IP地址;PeerPort,仿真节点与真实P2P应用的通信端口号;Application IP,真实P2P应用的IP地址;Application Port,真实P2P应用与仿真节点通信的端口号;Socket,网络连接套接字。
5.如权利要求4所述,仿真节点利用其与真实BT网络的兼容性,仿真节点解析完.torrent文件后,便向Tracker服务器发送注册信息并请求邻居列表。通过Tracker服务器,真实BT客户端会主动向仿真节点发送请求连接消息。通过对大量的BT节点信息的统计分析,可以初步得到给BT网络的信息。利用该捕获方法,可以进一步的统计出第一个做种子者的客户端、torrent文件的生命周期、对应Tracker的周期、torrent文件的有效性等数据,从而为深层研究BT协议和BT网络特征提供了一种有效的方法。
6.如权利要求2所述,由于仿真节点消息不通过仿真服务器端进行转发,不受服务器端计算机性能的影响。仿真信息交互所带来的网络通信开销分摊到各个仿真平台,网络通信直接、高效。因此,只要通过增加仿真平台的数量,便可以实现大规模的BT仿真,从而为捕获完整的BT网络信息提供了一种可能的方法。
CN200810046561XA 2008-11-14 2008-11-14 一种捕获BitTorrent网络中节点信息的方法 Active CN101741867B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN200810046561XA CN101741867B (zh) 2008-11-14 2008-11-14 一种捕获BitTorrent网络中节点信息的方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN200810046561XA CN101741867B (zh) 2008-11-14 2008-11-14 一种捕获BitTorrent网络中节点信息的方法

Publications (2)

Publication Number Publication Date
CN101741867A true CN101741867A (zh) 2010-06-16
CN101741867B CN101741867B (zh) 2012-07-25

Family

ID=42464753

Family Applications (1)

Application Number Title Priority Date Filing Date
CN200810046561XA Active CN101741867B (zh) 2008-11-14 2008-11-14 一种捕获BitTorrent网络中节点信息的方法

Country Status (1)

Country Link
CN (1) CN101741867B (zh)

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102035677A (zh) * 2010-12-10 2011-04-27 哈尔滨工业大学 一种比特流文件共享网络中的主动传播控制方法
CN103716349A (zh) * 2012-09-29 2014-04-09 西门子公司 医学图像文件的传输系统、方法和服务器
CN106897120A (zh) * 2017-02-28 2017-06-27 北京领航里程碑软件技术有限公司 双层动态分布式仿真平台
CN111835573A (zh) * 2020-05-19 2020-10-27 中国电子科技集团公司第三十研究所 一种ZeroNet网络服务站点代理关系测绘方法
US10911337B1 (en) * 2018-10-10 2021-02-02 Benjamin Thaddeus De Kosnik Network activity monitoring service

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20070088622A1 (en) * 2005-10-04 2007-04-19 Tamago Digital media commerce in a peer-to-peer network
CN100493094C (zh) * 2006-08-25 2009-05-27 清华大学 基于特征码的p2p数据报文检测方法

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102035677A (zh) * 2010-12-10 2011-04-27 哈尔滨工业大学 一种比特流文件共享网络中的主动传播控制方法
CN103716349A (zh) * 2012-09-29 2014-04-09 西门子公司 医学图像文件的传输系统、方法和服务器
CN106897120A (zh) * 2017-02-28 2017-06-27 北京领航里程碑软件技术有限公司 双层动态分布式仿真平台
CN106897120B (zh) * 2017-02-28 2021-05-07 北京领航里程碑软件技术有限公司 双层动态分布式仿真平台
US10911337B1 (en) * 2018-10-10 2021-02-02 Benjamin Thaddeus De Kosnik Network activity monitoring service
CN111835573A (zh) * 2020-05-19 2020-10-27 中国电子科技集团公司第三十研究所 一种ZeroNet网络服务站点代理关系测绘方法
CN111835573B (zh) * 2020-05-19 2022-03-18 中国电子科技集团公司第三十研究所 一种ZeroNet网络服务站点代理关系测绘方法

Also Published As

Publication number Publication date
CN101741867B (zh) 2012-07-25

Similar Documents

Publication Publication Date Title
Cao et al. Datacast: A scalable and efficient reliable group data delivery service for data centers
CN101741867B (zh) 一种捕获BitTorrent网络中节点信息的方法
CN105959347B (zh) 一种基于p2p网络的全数字协同仿真系统通信方法
CN102523104B (zh) 一种网络化仿真运行支撑系统及方法
CN102104600A (zh) 分布插件式游戏服务器平台及其协同工作方法
CN101873233B (zh) 一种与PeerCast网络兼容的仿真方法
CN101741627B (zh) 一种双引擎分布式对等网络仿真系统体系结构
CN101094245B (zh) 一种基于对等覆盖网络的游戏平台系统
WO2009076251A2 (en) Accelerating peer-to-peer content distribution
CN101321123A (zh) 嵌入式传输动态数据的系统及其传输方法
Weingärtner et al. Building a modular BitTorrent model for ns-3
CN1937553B (zh) 基于流媒体数据帧的对等网络数据调度方法
CN103297861B (zh) 一种基于PeerSim的P2P视频点播仿真系统
CN102104503B (zh) 一种网络的传输流量仿真方法及设备
CN103179191A (zh) P2p网络管控装置及p2p网络管控架构
Chen et al. Acom: Any-source capacity-constrained overlay multicast in non-dht p2p networks
CN102025622B (zh) 基于认知网络的实现低功耗路由的方法
CN105072162A (zh) 一种基于sdn和云平台的大型网络游戏架构系统及方法
Lin et al. An isp-friendly file distribution protocol: analysis, design, and implementation
D’Alessandro Costa et al. Performance analysis of a locality-aware BitTorrent protocol in enterprise networks
Li et al. Consistency aware update schedule in multi-server Distributed Virtual Environments
Costa-Montenegro et al. Implementation and analysis of the BitTorrent protocol with a multi-agent model
Zhou et al. Pigeon: a framework for testing peer-to-peer massively multiplayer online games over heterogeneous network
Munoz-Gea et al. Simulation of a p2p application using oversim
Çevikbaş et al. Phaneros: Visibility‐based framework for massive peer‐to‐peer virtual environments

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant
ASS Succession or assignment of patent right

Owner name: WUXI UEST SCIENCE + TECHNOLOGY DEVELOPMENT CO., LT

Free format text: FORMER OWNER: UNIVERSITY OF ELECTRONIC SCIENCE AND TECHNOLOGY OF CHINA

Effective date: 20131029

C41 Transfer of patent application or patent right or utility model
COR Change of bibliographic data

Free format text: CORRECT: ADDRESS; FROM: 610054 CHENGDU, SICHUAN PROVINCE TO: 214135 WUXI, JIANGSU PROVINCE

TR01 Transfer of patent right

Effective date of registration: 20131029

Address after: 214135 Jiangsu New District of Wuxi City Branch Park University Chinese sensor network science and Technology Park building A room 402 business district

Patentee after: Wuxi UESTC Technology Development Co., Ltd.

Address before: 610054 No. two, Jianshe North Road, Chengdu, Sichuan, four

Patentee before: University of Electronic Science and Technology of China

TR01 Transfer of patent right
TR01 Transfer of patent right

Effective date of registration: 20210107

Address after: No.2006 Xiyuan Avenue, Chengdu, Sichuan 611731

Patentee after: University of Electronic Science and technology of Sichuan foundation for education development

Address before: Room 402, area a, Liye building, science and Technology Park, China sensor network university, Taike Park, New District, Wuxi City, Jiangsu Province, 214135

Patentee before: WUXI UESTC TECHNOLOGY DEVELOPMENT Co.,Ltd.