




已阅读5页,还剩42页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
韭塞銮适占堂亟堂位i 金毫虫奎撞翌 中文摘要 摘要:本文简单介绍了几种常用的p 2 p 协议,并针对其特点进行了比较。目前, b t 是最受欢迎的p 2 p 应用之一。根据p 2 p 特点和发展趋势,在当今信息社会中, 研究b t 显得尤为重要。它的数据覆盖率更高,管理更方便。b t 用户数已经超过 了其他p 2 p 用户,b t 流量也在当今网络流量中占主要地位。准确识别网络中的 b t 流,对分析b t 网络特征有十分重要的作用。为此,本文在深入分析b t 协议, 研究b t 用户问信息交互的基础上,对现有的b t 流识别方法进行了改进。通过 b t 流分析b t 用户行为和网络特征。 本文主要工作如下: ( 1 )对现有b t 协议进行深入研究,分析b t 客户端问信息交互和b t 和 t r a c k e r 之问的报文交互 ( 2 )验证了常用b t 握手报文的准确度,分析了误识别和漏识别率 ( 3 ) 根据b t 原理,改进了识别b t 流的方法,并从流量和用户数的角度出 发进行了误识别率和漏识别的比较 关键词:b t ;t r a c k e r ;关键字;流量提取; 分类号: e 塞变i 亟厶堂蘧堂缱监塞垦s 至b ! a b s t r a c t a b s t r a c t :i ti sb r i e f l yi n t r o d u c e ds e v e r a lc o m m o np 2 pp r o t o c o la n dc o m p a r e dw i t h e a c ho t h e r a c c o r d i n gt op 2 pc h a r a c t e ra n di t sd e v e l o p m e n tt r e n d ,i ti sc o n c l u d e dt h a ti t i sn e c e s s a r yt or e s e a r c ho nb ti no u rc o m m u n i c a t i o ns o c i e t y i ni m e r n a li n t e m e t ,b ti s o n eo ft h em o s tp o p u l a ra p p l i c a t i o n s i ti sh i g h e rd a t an e t w o r kc o v e r i n gr a t ec o m p a r e d w i t ho t h e r s i ti sm o r ec o n v e n i e n tt oa d m i n i s t r a t e b tp e e r sa r em o r et h a no t h e rp 2 p p e e r s b tt r a f f i ci sm o r et h a no t h e r s i ti sv e r yi m p o r t a n tt oa n a l y z eb tn e t w o r k c h a r a c t e r i s t i c s ot h em e t h o do f i d e n t i 助n gb tf l o wi si m p r o v e db a s e do na n a l y z i n gb t p r o t o c o la n dr e s e a r c ho nc o m m u n i c a t i o nw i t hp e e r s b tp e e r a c t i o na n dn e t w o r k c h a r a c t e r i s t i ca r ea n a l y z e db yb tf l o w o u rm a i nr e s e a r c ha sf o l l o w s : ( 1 ) b a s e do nb tp r o t o c o l ,a n a l y z i n gc o m m u n i c a t i o na m o n gb tp e e r sa n d c o r r e s p o n d e n c eb e t w e e nt r a c k e ra n dp e e r s ( 2 ) e x a c td e g r e eo ff o r m e rb th a n d s h a k ef l o wi sv a l i d a t e da n df a l s ei d e n t i f 弘n g r a t ei sa n a l y z e d ( 3 ) a c c o r d i n g t ob tp r o t o c o l ,t h ew a yo fi d e n t i f y i n gb tf l o wi si m p r o v e da n d f a l s ei d e n t i 聊n gi sc o m p a r e di nt h ea s p e c t so f f l o wa n dp e e r s k e y w o r d s ;b t ;t r a c k e r ;b i t s t r i n g ;l d e n t i 助n g f l o w c l a s s n o : 致谢 本论文的工作是在我的导师陈常嘉教授的悉心指导下完成的,陈常嘉教授严 谨的治学态度和科学的工作方法给了我极大的帮助和影响。在此衷心感谢三年来 陈常嘉老师对我的关心和指导。 陈常嘉教授悉心指导我们完成了实验室的科研工作,在学习上和生活上都给 予了我很大的关心和帮助,在此向陈常嘉老师表示衷心的谢意。 陈常嘉教授,胡师舜老师、李纯喜老师和郑宏云老师对于我的科研工作和论 文都提出了许多的宝贵意见,在此表示衷心的感谢。 在实验室工作及撰写论文期间,贾晋康、高贺,刘斯伟等同学对我的科研工 作和论文给予了热情帮助,在此向他们表达我的感激之情。 另外也感谢我的家人和朋友,他们的理解和支持使我能够在学校专心完成我 的学业。 韭塞变道厶堂鲤堂位盈塞匣 序 互联网能够发展至今,根本原因在于其布建的任何一根血脉都是为人与人之 间的交流而设置的。而现在能够引起互联网震动的,无非也只有交流方式的变革 本身。 根据中国互联网实验室对2 0 0 5 年度中国p 2 p 业界的分析,中国p 2 p 在2 0 0 5 年获得了更好的发展,具体表现在b i t t o r r e n t 技术的迅速扩张,从原本的b i t t o r r e n t 下载系列软件应用发展到了p 2 p 网络电视应用领域,k a z a a 也获得了充分的发展, 但总体上比不上b i t t o r r e n t 技术。 可见,现在b i t t o r r e n t 使用的普及性。由于b t 连接的持续变化,b t 拓扑具 有天生的动态性,这些动态性会对整个b t 网络的性能造成显著的影响。准确描述 拓扑动态特性并分析它们对b t 网络性能的影响,对于b t 协议开发者和使用者来 说都具有重要的参考价值。 当然,由于条件有限,原始数据是从本校教学楼获取进出数据,结论可能有 些局限性,需要进一步验证。本文主要改进了前人提出识别b t 握手报文的方法, 改进了b t 流的识别方法,进行了误识别和漏识别的比较,观察b t 流和其他流的 特征。 可以跟踪用户到达、离开网络的时问以及用户在网络中停留的时f ;自j 来观察b t 网络特性,分析网络中的无贡献型用户是否较多,分析网络的共享性能。 e塞奎煎厶堂毯土茔逭论塞缝途 1 绪论 1 1 选题意义及背景 目前,人类社会正处在一个信息时代,i n t e m e t 作为全球最大的内容发布系统, 是信息社会中人们获取各种资讯不可缺少的工具。与此同时,虽然i n t e r n e t 中的信 息量和用户数量与r 俱增,但i n t e r n e t 中内容发布的基本方式并没有发生太大的变 化。在传统的内容发稚模式中,内容的发布由i c p ( i n t e m c tc o n t e n tp r o v i d e r ,i n t e r n e t 内容提供商) 的应用服务器完成,应用服务器通常处于网络的中心,客户端主机处 于网络的边缘,客户端需要登录到应用服务器下载或浏览各种内容。在这种发布 模式下,网络只表现为一个透明的数据传输通道,客户端也只是一个浏览工具。 网络访问对于带宽的要求呈现出端对端的形式,某段网络带宽瓶颈的限制将造成 整个网络的拥塞,尤其当大量用户同时访问同一台服务器时,对连接服务器的链 路带宽要求更高,不仅大量宝贵的骨干带宽被占用,i c p 的应用服务器的负载也变 得非常重,而且不可预计。当发生一些热点事件或出现浪涌流量时,会产生f l a s h c r o w d s 效应,可能出现应用服务器过载退出服务。 为了满足开益增加的访问请求并提高服务质量,服务器必须保证其可靠性且 足够强大,服务器的处理能力逐渐成为网络发展的瓶颈,为此必须对服务器进行 升级来提高性能,或采用多台服务器组成服务器集群来共同处理用户请求,但是, 单纯地升级服务器性能的代价非常昂贵,而采用服务器集群的方法也难以进一步 扩展。 那能不能抛开服务器,自由、实时而廉价地共享、发布自己感兴趣的内容昵? p 2 p 技术就实现了这种构想。p 2 p 直接将人们联系起来,让人们通过互联网直接交 互,消除中闽环节。p 2 p 使用户可以直接连接到其他用户计算机,而不是像过去那 样必须先连接到服务器去浏览与下载。p 2 p 另一个重要特点是改变互联网现在的大 网站为中心的状态,重返“非中心化”,把主动权交给用户 目前已经出现了很多流行的p 2 p 内容共享和发布软件。更重要的是p 2 p 内容发 布和共享系统可以通过p 2 p 节点之间的协作,实现内容的快速分发,大大减轻了应 用服务器的负载。目前因特网上流行的p 2 p 文件传输协议有b i t t o r r e n t ,k a z a a , e d o n k e ) ,等。其中b i t t o r r o n t 以飞快的发展速度迅速成为p 2 p 世界的霸主,在2 0 0 4 年 6 月,b i t t o r r e n t 流量已经达到所有p 2 p 网络流量的5 3 【”。目前在p c 和普通网络环 境( 宽带1 0 m ba d s l 情况) 下,使用b i t t o r r e n t 下载,速度能够达至l j i m b p m 而通过 e 立 交逋厶 堂亟 堂位盈塞绪论 传统的f 1 甲或者h r r p 方式下载速度一般不超过1 0 0 k b p s 。因此有必要对b i f r o n 珊t 的流量特性进行研究。 1 2 论文组织结构 本文主要研究了一下内容: l 、详细分析了p 2 p 网络和传统c s 模式的网络特点 2 、简单介绍了几种常用的p 2 p 协议以及三种常见的p 2 p 结构 3 、详细剖析了b t 协议,并详细分析了其通信过程 4 ,基于对k c 文章的研究,改进了其用关键字提取b t 握手报文的方法,提 出扩展b t 流量提取的方法 5 ,通过一天的数据观察,认为分析b t 用户到达是服从泊松分布的 全文共分章,各章组织结构如下: 第一章为绪论部分,只要介绍了课题研究背景和本文主要研究内容。 第二章介绍了p 2 p 网络和传统c s 模式的网络特点,并对两者特点进行了比 较,简要介绍了常用的几种p 2 p 协议。 第三章主要介绍了b t 用户之间的交互过程。 第四章首先研究k c 文章对b t 握手报文的提取,通过自己抓报观察得出改进 方法,使其更准确,同时说明k c 方法的误码率和漏报率。 第五章主要根据k c 扩展提取p 2 p 流方法,提出一种识别b t 流的扩展方法, 并对b t 流量进行网络分析。 第六章为结束语,总结了本文的工作和不足,并对未来的研究工作进行了规 划。 2 e 塞銮遥厶堂殛堂位谂塞2 简企 2p 2 p 简介 p 2 p 即p e e r - t o - p e e r 。而p e e r 在英语羁是“( 地位、能力等) 同等者”、“同事” 和“伙伴”的意思,p 2 p 也就可以理解为“伙伴对伙伴”的意思,或称为对等联网。在 这种网络中所有的节点是对等的,各节点具有相同的责任与能力协同完成任务1 2 1 。 p 2 p 被美国财富杂志称为改变因特网发展的四大新技术之一,甚至被认为 是无线宽带互联网的未来技术。p 2 p 技术不仅为个人用户提供了前所未有的自由和 便利,同时也试图有效地整合互联网的潜在资源,将基于网页的互联网转变成动 态存取、自由交互的海量信息网络。p 2 p 技术的发展以及p 2 p 与网格技术的结合, 将影响整个计算机网络的概念和人们的信息获取模式,真j 下实现“网络就是计算 机。计算机就是网络”的梦想。 2 1p 2 p 网络结构的特点 p 2 p 网络是种具有较高扩展性的分布式系统结构,其对等概念是指网络中的 物理节点在逻辑上具有相同的地位,而并非处理能力的对等。以n a p s t e r 软件为代 表的p 2 p 技术其实质在于将互联网的集中管理模式引向分散管理模式,将内容从 中央单一节点引向网络的边缘,从而充分利用互联网中众多终端节点所蕴涵的处 理能力和潜在资源。相对于传统的集中式客户服务器( c s ) 模型,p 2 p 弱化了服务 器的概念,系统中的各个节点不再区分服务器和客户端的角色关系,每个节点既 可请求服务,也可提供服务,节点之间可以直接交换资源和服务两不必通过服务 器【3 1 其网络结构图如下: 图2 - 1p 2 p 网络架构图 f i g u r e2 - 1p 2 pn e t w o r ks t r u 咖r e 3 拙塞銮道厶堂亟堂位论塞2 筮盒 p 2 p 是一种分布式网络,网络的参与者共享他们所拥有的一部分硬件资源( 处 理能力、存储能力、网络连接能力、打印机等) ,这些共享资源需要由网络提供服 务和内容,能被其它对等节点( p e e r ) 直接访问而无需经过中间实体。在此网络中的 参与者既是资源( 服务和内容) 提供者s ( s e r v e r ) ,又是资源( 服务和内容) 获取 者c ( c l i e n t ) 。p 2 p 技术的特点体现在以下几个方面: 非中心化( d e c e n t r a l i z a t i o i l ) :网络中的资源和服务分散在所有结点上,信息 的传输和服务的实现都直接在结点之问进行,可以无需中问环节和服务器的介入, 避免了可能的网络瓶颈。 可扩展性:在p 2 p 网络中,随着用户的加入,不仅服务的需求增加了,系统 整体的资源和服务能力也在同步地扩充,始终能较容易地满足用户的需要。 健壮性:p 2 p 架构天生具有耐攻击、高容错的优点。 商性能价格比:性能优势是p 2 p 被广泛关注的一个重要原因。采用p 2 p 架构 可以有效地利用互联网中散布的大量普通结点,将计算任务或存储资料分布到所 有结点上。 隐私保护:在p 2 p 网络中,由于信息的传输分散在各节点之间进行而无需经 过某个集中环节,用户的隐私信息被窃听和泄漏的可能性大大缩小。 负载均衡:p 2 p 网络环境下由于每个节点既是服务器又是客户机,减少了对 传统c s 结构服务器计算能力、存储能力的要求,同时因为资源分稚在多个节点, 更好的实现了整个网络的负载均衡。 2 2 p 2 p 与传统c s 网络特点比较 圈2 - 2c s 网络架构图 f i g u r e2 - 2c ,sn e t w o r ks l r u e t u r e 4 业峦銮煎厶堂亟堂位猃塞2 两企 如图2 2 ,信息和数据都保存在服务器端。只有服务器具有控制能力,客户端 基本上只是一个高性能的终端设备。服务器及网络的带宽决定了网络的性能。每 台服务器所能提供的信息数量受到自身存储空问的限制,而任意时刻它所能支持 的客户端访问数量既受到自身处理能力的限制,也受到服务器所在网络吞吐量的 限制。p 2 p 技术弥补了c s 的不足,得到了大力推广和发展。从下表可以看出为什 么p 2 p 如此受欢迎,他有什么独特的优势: 表2 1p 2 p 与c s 特点比较 t a b l e2 - 1c h a r a c t e r i s t i cc o m p a r i s o nb e t w e e np 2 pa n dc s 性能 p 2 pc s 数据分布 好差 数据接收 中 好 数据互动性( 传输速度) 好差 数据即时性( 传输速度) 好差 数据安全性差 好 数据更新( 价值)好差 数据覆盖率和数量( 价值) 中好 数据成本控制好差 数据管理方便性 差好 2 3 p 2 p 常用协议 p 2 p 在网络中的应用已经越来越普遍,流量测试显示p 2 p 流量在某段网络中 开始占支配地位。在p 2 p 应用中,最为流行可能当属文件的共享了。 p 2 p 系统一般要构造一个非集中式的拓扑结构,在构造过程中需要解决系统中 所包含的大量结点如何命名、组织以及确定结点的加入离开方式,出错恢复等问 题。p 2 p 研究分为4 种形式:中心化拓扑;全分布式非结构化拓扑:全分布式结构 化拓扑( 也称作d h t 网络) 和半分布式拓 b 1 4 。下面介绍几种典型的p 2 p 协议。 2 3 1g n u t e l l a c m u t e l l a 肛个p 2 p 文件共享系统,它f f , 口n a p s t e r 最大的区别在t c m u t e l l a 是纯粹 的p 2 p 系统,没有索引服务器,它采用了基于完全随机图的洪泛( f l o o d i n g ) 发现 和随机转发( r a n d o mw a l k e r ) 机制,是全分布非结构化网络。 g n u t e l l a 是一份关于发布检索的协议。虽然g n u t e l l a 影3 , 议也支持传统的c s 检索 规范,但g m n e i l a 协议主要是支持点对点的,没有中心的检索。在这个模型中,所 5 监塞变通厶堂亟堂位逾毫2 筐盆 有的客户端也是一个服务器,反之亦然。 这些所谓的g n u t e l l a 客户机在正常情况下执行联系服务器和客户端的任务。它 们提供客户端的接口使用户可以发出查询请求和查看检索结果:同时它们也接收 来自其他客户机的请求,检查它们自己的数据中匹配的部分,返回可用的结果【5 】。 因为具有天然的分布性,一个执行c m u t e | l a 协议的网络是具有高度容错性能,如: 当部分客户机离线,网络服务不会被中断。 图2 - 3c m u t e l l a 网络通信拓扑图 f i g u r e2 - 3c m u t e l l an e t w o r kc o m m u n i c a t i o n 运行如下:若运行g n u t d l a , 贝j j 随机选取4 7 人连接,设为a b c d e ,我想查 找比如“b l o g ”,键入“b l o g ”,则g n u t e l l a 客户端将“b l ( ) g ”传递给a b c d e , 协议如“谁有b l o g ”,a b c d e 在自己的电脑中查找“b l o g ”,有则回传给请求者, 协议如“我这里有b l o g ”,a b c d e 又分别连接若干用户,a b c d e 又传递“小甜甜 问谁有b l o g ,收到请回答”,a b c d e 的连接者又按照a b c d e 的方式回答,并 且进一步传递,乃至于无穷。现实中,这个传递并非无穷,它会有一个生存周期, 假设2 5 5 ,则一个消息被传递了2 5 5 层。即被丢弃睁】。 从这种通信方式可以看出g n u t e l l a 在查询过程中具有较大的灵活性,但由于 查询方式的限制,带来以下缺点: 1 、容易导致网络拥塞,对大型网络应用并不适合 2 、查询时带来严重的延时,占用开销较大 2 3 2k a z a a k a z a r 是现在全世界流行的几款p 2 p 软件之一。吸取了中心化结构和全分布 式非结构化拓扑的优点,选择性能较高( 处理、存储、带宽等方面性能) 的结点 作为超级点,是半分布式结构。从结构上来说,它使用了g n u t d l a 的全分布式的 6 韭毫銮遵厶堂强坐位论毫2 篮企 结构,这样可以是系统更好的扩展,因为它无需中央索引服务器存储文件名,它 是自动的把性能好的机器成为s u p e r n o d e ,它存储着离它最近的叶子节点的文件信 息,这些s u p e r n o d e ,再连通起来形成一个o v e r l a yn e t w o r k 由于s u p e r n o d e 的索 引功能,使搜索效率大大提高嘲。拓扑结构图如下: 2 3 3b i t t b r r e n t 湖 图2 4k a z a a 结构拓扑图 f i g u r e2 - 4k a z a as t r u c t u r e b i t t o r r e n t ( 简称b t ) 是目前流行的几个p 2 p 软件中人气最眨的一个,它简洁、 高效,而且提供源码。国内许多流媒体软件都是以b t 基础做的。b t 是一种分发 文件的协议。它通过u r l 来识别内容,并且可以无缝的和w e b 进行交互它基 于h 1 t r p 协议,它的优势是:如果有多个下载者并发的下载同一个文件,那么, 每个下载者也同时为其它下载者上传文件,这样,文件源可以支持大量的用户进 行下载,而只带来适当的负载的增长。在第二章中将会对b t 协议进行详细的讲解。 2 3 4 几种常用p 2 p 协议比较 7 丘峦奎邋厶堂亟堂缱论毫2 筮金 g n u t e i l a 、k a z a a 和b i t t o r r e n t 是目l i 网络上较为常用的p 2 p 协议。那他们之 白j 又各自有什么优缺点呢? 如何根据自己的需要来选择合适的应用昵? 下表将对 这几种常用的p 2 p 协议进行了比较: 袭2 - 2 常用协议比较 比较标准 g n u t e l l ab i t l o r r e n tk a z a a 可扩展性差好 中 可靠性好好中 可维护性最好好 中 搜索效率中高 中 复杂查询支持不支持支持 如表2 2 ,b i t t o r r e n t 只能查询到有人做种的文件,其他文件无法获得,但其 他性能较好,最重要的是搜索效率高,下载很快,迅速成为目前最流行的p 2 p 软 件之一。为更好的探测网络性能,了解b i t t o r r e n t 特征,对b t 系统进行网络测量 显得尤为重要。 8 业塞窑适叁堂亟堂位i 金塞旦!垃这筮赶 3b t 协议分析 b t 全名为b i t t o r r e n t ,( 中文全称“比特流”,简称“盯,) ,是一种多点共享协议 和软件,为美国加州一名程序员所开发,它是一个p 2 p ( p e e r - t o p e e r ,点对点) 下载 软件,克服了传统下载方式的局限性,具有下载的人越多,文件下载速度就越快 的特点。它的出现曾一度使网民们欣喜若狂,甚至号称“开创了互联网的新时代”。 p 2 p 共享系统的在日常生活中使用的越来越频繁,尤其是b t 文件共享流量已 经超过全局数据流量的1 3 ,事实上,2 0 0 4 年6 月显示p 2 p 流量的5 3 是b t 流量, 可见b t 的流行性【”。比起其它的p 2 p 软件,b t 有个独特的地方,它存在一个中问的 w e b 服务器,就是我们在发布的时所填写的a n n o u n c e 。该服务器提供了发布的统一 管理,不像其它p 2 p 软件那样到处去找哪些非常不稳定的个人服务器,减少了很多不 必要的开销,节省了搜索时问,提高了效率。 当我们有许多文件要向众多客户发布时,发现网络带宽总是有限的,在提高 带宽的同时,费用也大幅上升,这几乎是一个恶性循环。b i t t o r r e n t 是一个能解决 这一问题的软件,其中的关键就是充分利用下载者的上传能力,而这是免费的。 b i t t o r r e n t 是现今互联网上最流行的p 2 p 软件,但又与之静的p 2 p 软件有很大 不同,突破性的工作原理使其在占用文件发布者极少的带宽资源的情况下,快速 发布文件。事实上所有遵守b t 协议编写的软件是通用的。 3 1b t 系统组成 b t 是一种用于文件发布的p 2 p 软件,同时也是一种应用层协议。主要解决了 负载平衡的问题。一个完整的b t 文件系统由以下5 部分组成。 l 、一个w e b 服务器,用于种子文件的发布 2 、静态的源文件( t o r r e n t 种子) ,包含文件的分隔信息和h a s h 表等 3 、t r a c k e r 服务器,与客户端通信,提供下载文件的p e e r 信息,定时更新p e e r 列表 4 、终端用户的w 曲浏览器 5 、终端下载者 b t 协议特点在于把一个文件分成很多p i e c 鹳,用户可以从不同的用户那下载 所需文件的不同p i e c e s ,这样即解决了负载平衡的问题,又缩短了下载时间。理想 的情况是多个终端用户在下载同一个文件 8 1 。 3 2 b t 下载机制 9 北立交堑太堂堪坐位i 金塞旦!垃送筮蚯 3 2 1 选择下载文件片 b i t t o r r e n t 是一种专门为大容量文件的共享而设计的p 2 p 协议。在b i t t o r r e n t 系统中,文件被分割为小片,下载者之间互相交换已经下载好的块。当一个节点( 用 户1 下载完成之后,它可以继续共享文件,成为一个种子,无偿给其他节点提供文 件块。 把一个刚进入b t 网络的用户称为新用户。一个新用户是没有所需的文件片 的,他没有能力上传,只能下载( 依靠所下载的文件给其他用户上传获得整个文件) 。 这时,系统会随机分给新用户一个文件片,用户就拥有了上传资源,可以和其他 b t 用户进行文件片交互。用户下载完第一片文件后,会下载系统中用户拥有的最 少的一片开始下载,这样可以保证该文件持续的下载和上传,使用户尽可能的下 载到完整的文件。当然,上传的流量越多,在下载时就获得更大的优先级。这点, 可以从文件下载的优先级列表中看出。这也可以更大范围的遏制非贡献用户的下 载。非贡献型用户是指不向他人提供自己的资源,却从系统中他人资源的自私用 户,这种用户一般在完成下载后,不会在系统中停留太长时间。具体行为将在下 面的激励机制中介绍。 3 2 ,2b t 激励机制 每个用户都想尽量得到更快的下载速度,b i t t o r r e n t 用一种激励机制保证上传 速度较快的节点会更有可能得到较快的下载速度,鼓励节点多上传,保证整个系 统的稳定性。 在b i t t o r r e n t 的实现中,文献 9 】给出了一种保证系统公平性的方法,叫做 b i t t o r r e n t 激励机制,虽然不是b i t t o r r e n t 协议的一部分,但是很好地保证了下载 公平性,从而保证了系统的稳定性,因而得到了广泛应用。他的核心思想在于, 每个节点优先给那些为自己下载的节点上传,也就是说,从哪些节点那里下载得 多,就优先给哪些节点上传【l o l 。 通信中,任意两个节点之白j 建立连接后,互相通知对方自己已经有哪些数据 块。任意一个节点都有所有已经与之建立连接的其他节点的数据块地图,要下载 哪一块,只要给已经有这一块的节点发送一个下载请求,对方就会传送数据过来。 b i t t o r r e n t 中限制了总上传连接数,默认为四个,允许上传的连接称为通畅的,不 允许上传的连接称为阻塞的,连接的状态可以在两者之间转换。只有当连接属性 为畅通时,才能给对方节点传送数据。当客户端程序阻塞某一节点的连接时,除 了在本地标记,还会给对方发消息说“你已经被我阻塞,不要再发下载请求了”。 1 0 e 塞交道厶堂亟土堂位:| 金毫垦!垃i 5 :筮捱 直到对该连接解除阻塞,对方都不会请求下载。对客户端程序来说,所有连接的 阻塞状态每1 0 s 更新一次,更新时按照连接下载速度排序,速度最快的连接优先级 最高,程序找到优先级最高的四个连接,把这四个连接的状态变为通畅,其他所 有连接的状态为阻塞。 在实际报文传输中,连接的任何一端都包含两比特的状态信息:是否c h o k e d , 是否感兴趣。c h o k i n g 是通知对方,没有数据可以发送,除非u n c h o k i n g 发生。一 旦一端状态变为i n t e r e s t e d ,而另一端变为u n c h o k i n g ,那么数据传输就开始了。( 也 就是说,一个p e e r ,如果想从它的某个p e e r 那罩得到数据,那么,它首先必须将 其连接设置为i n t e r e s t e d ,也就是发一个消息过去,而另一个p e e r ,要检查它是否 应该给这个p e e r 发送数据,如果它对这个p e e r 是u n c h o k i n g ,那么就可以给它发 数据,否则还是不能给它数据) 它使得下载者能够立刻知道哪些p e e r s 将开始下载。 目i ; ,在实际应用中,尤其在国内的网络环境下,一些客户端实现对b i t t o r r e n t 的激励思想做了一些改进,普遍使用了快速b t 算法。快速b t 算法与b i t t o r r c n t 激励机制的主要区别在于对于某一用户,他总是给其他用户上传,不管从对方那 里下载过多少数据。快速b t 算法是对b i t t o r r e n t 激励机制进行的一种改进,改进 之后用户可以得到更快的下载速度。使用快速b t 算法的节点在通信过程中,与其 他所有节点的连接都是通畅的,而不存在阻塞,不同于b i t t o r r c n t 激励机制中最多 四个上传连接。因此,使用快速b t 算法的节点( 记为,其他节点不断请求下载, y 节点上传的流量很多,相对于使用b i t t o r r e n t 激励机制的节点,y 节点的上传流 量更多。由于y 节点上传流量很多。所以从其他节点看来,更愿意给y 节点上传, 换句话说,y 给更多节点上传数据,因此可以从更多节点得到下载。于是y 节点 的下载速度会比用b i t t o r r e n t 激励机制的节点下载速度快【l o 】。 3 3 b t 工作原理 3 3 1客户端问交互 业立塞煎厶堂埂堂位j 金塞旦!迹邀岔蚯 图3 lb t 通信网络拓扑幽 f i g u r e3 一ib tc o m m u n i c a t i o nn e t w o r kt o p o l o g y b t 将文件分成z 块( 每块0 2 5 m b lm b 的块) ,将文件大小,文件分割情况, t r a c k e r ( t r a c k e r 是主要负责帮助下载者互相寻找对方的服务器,只占用极少的带宽 和机器资源) 的u r l 地址等所要下载文件的基本文件信息,生成扩展名为t o r r e n t 的种子文件。 甲在服务器随机下载了第n 部分,乙在服务器随机下载了第m 部分,这样甲 的b t 就会根据情况到乙的电脑上,去取乙已经下载好的m 部分,乙的b t 就会 根据情况去到甲的电脑上去取甲已经下载好的n 部分,这样就不但减轻了服务器 端得负荷,也加快了用户方( 甲乙) 的下载速度,效率也提高了,还减少了地域 之间的限制。比如说丙要连到服务器去下载的话可能才几k ,但是要是到甲和乙 的电脑上去取就快得多了。所以说用的人越多,下载的人越多,大家也就越快, b t 的优越性就在这里。而且,在你下载的同时,你也在上传( 别人从你的电脑上 拿那个文件的某个部分) ,所以说在享受别人提供的下载的同时,你也在贡献。当 一个下载者下载完毕后,如果不关闭b t ( 这j 下是b t 所鼓励的) ,他将成为另一个 s e e d 为其他下载者服务。 3 3 2b t 客户端和t r a c k e r s 交互 网站负责提供一个静态的文件,而把b t 辅助程序( 客户端) 放在客户端机器 上。拥有完整下载文件的客户称为s e e d ,拥有不完整下载文件的客户称为 d o w n l o a d e r 。 t r a c k e r 从所有下载者处接收信息,并返回给它们一个随机的p e e r s 的列表。这 种交互是通过m t p 协议来完成的。下载者周期性的向t r a c k e r 登记,使得t r a c k e r 1 2 l 塞銮堑厶堂亟主堂位:i 金塞旦!垃这盆垣 能了解它们的进度;下载者之问通过获取的p e e r s 的列表直接连接进行数据的上传 和下载。这种连接使用的是b t 对等协议,b t 传输的9 0 以上流量都是基于t c p 的。s e e d 负责上传,从不下载,因为它已经拥有了完整的文件。 月日尸 一一一一一一一一一一一。t a c k e r 服务器 图3 - 2 客户端与t r a c k e r 交互 f i g u r e3 - 2c o m m u n i c a t i o n b e t w e e np e e r sa n dt r a c k e r b t 客户端刚进入b t 系统,会先向t r a c k e r 发送g e t 请求报文,以期获得所 需文件的随机p e e r s 列表。该请求报文格式包含如下关键字: l n f oh a s h :2 0 字节长的s h a l 验证码 p e e ri d :用户i d ,一个2 0 字节长的字符串。每个用户在开始第一次下载之i ; , 需要随机创建这个i d ,用户一旦进入b t 网络,无论下载多少文件,它的i d 不变, 若退出网络后再次进入网络则i d 号就发生改变了。 i p :一个可选的参数,给出了下载p e e r 的i p 地址。 p o r t :b t 用户所监听的端口。第一代p 2 p 网络中的端口号一般是 6 8 8 1 6 8 8 9 ,但为了防止通过端口对p 2 p 网络进行遏制,现在p 2 p 使用随机端口号。 u p l o a d e d :已经上传的数据大小,十进制表示。 d o w n l o a d e d :已经下载的数据大小,十进制表示 l e f t :该p e e r 还有多少数据没有下载完,十进制表示。注意,这个值不能根据 文件长度和已下载数据大小计算出来,因为很可能是断点续传,如果因为检查文 件完整性失败而必须重新下载的时候,会很方便。 e v e n t :一个可选的关键字,值是s t a r t e d 、c o m p l e t e d 或者s t o p p e d 之一( 也可 以为空,不做处理) 。如果不出现该关键字,在发起下载请求的时候,该值被设置 为s t a r t e d ,在下载完成之后,设置为c o m p l e t e d 。如果用户停止了下载或退出网络, 那么该值设置为s t o p p e d 。 对等协议由一个握手开始,后面是循环的消息流,每个消息的前面,都有一 个数字来表示消息的长度。握手的过程首先是先发送1 9 ,然后发送 b i t t o r r e n t p r o t o c o l ”。1 9 就是“b i t t o r r c n tp r o t o c o l ”的长度( 第四章中就是根据这个关键字获得 的b t 客户端握手) 。后续的所有的整数,都采用b e n c o d i n g 来编码为4 个字节。 塞窑通厶堂亟堂位i 金皇旦!拔这盆盈 在协议名称之后,是8 个保留的字节,这些字节当前都设置为0 。 接下来对元文件中的i n f o 信息,通过s h a l 计算后得到的h a s h 值,2 0 个 字节长。接收消息方,也会对i n f o 进行一个h a s h 运算,如果这两个结果不一样, 那么说明对方要的文件,并不是自己所要提供的,所以切断连接。接下来是2 0 个字节的p e e ri d 。这就是握手过程。握手完毕。之后是长度固定的交互信息流。 零长度信息用来保持连接,被忽略。这种信息一般2 分钟发出一次,但是在等待 数据期间很容易超时。 t r a c k e r 通过h 兀p 的g e t 命令的参数来接收信息,而响应给对方( 也就是下 载者) 的是经过b e n c o d i n g 编码的消息。 b t 种子文件使用了一种叫b e n c o d i n g 的编码方法来保存数据。b e n c o d i n g 有字 符、整数、列表和字典四种类型。 lj 三:ir j j j : j 三匡习垂。i 习 图3 - 3 报文结构框i 鳘i f i g u r e3 - 3s t r u c t u r eo f p a c k e t 如图3 3 可知,包含如下关键字: r n n o u n c e :t r a c k e r 服务器的u r u 字符串) a n n o u n c e - l i s t ( 可选) :备用t r a c k e r 服务器列表( 列表) c r e a t i o nd a t e ( 可选) :种子创建的时问,u n i x 标准时间格式,从1 9 7 01 月1 同 0 0 :0 0 :0 0 到创建时间的秒数( 整数) c o m m e n t ( 口7 选) :备注( 字符串) c r e a t e db y ( 可选) :创建人或创建程序的信息( 字符串) i n 如:一个字典结构,包含文件的主要信息,为分二种情况:单文件结构或多文 件结构。 单文件结构如下: l e n g t h :文件长度,单位字节( 整数) m d s s u m ( 可选1 :长3 2 个字符的文件的m d 5 校验和,b t 不使用这个值, 只是为了兼容一些程序所保留 n a i v e :文件名( 字符串) p i e c el e n g t h :每个块的大小,单位字节( 整数) p i e c e s 每个块的2 0 个字节的s h a lh a s h 的值( 二进制格式) 多文件结构如下: f i l e s :一个字典结构 l e n g t h , 文件长度,单位字节( 整数) 1 4 e 塞銮堑厶堂亟堂位j 金塞旦至垃这筮伍 m d 5 s u m ( 可选1 :和单文件结构中相同 p a t h :文件的路径和名字,是一个列表结构 n a m e :最上层的目录名字( 字符串) p i e c el e n g t h :和单文件结构中相同 p i e c e s :和单文件结构中相同 接下来就是以消息长度开始的消息流,这是可选的。长度为0 的消息,用于 保持连接的活动状态,被忽略。通常每隔2 分钟发送一个这样的消息。也可以通 过b t 的这一特点推断用户是否掉线了。在6 1 中可以用此方法推测用户在b t 网 络中的滞留时问。 1 5 4 关键字提取b t 数据流 随着b t 应用上的不断发展和网络规模的持续扩大,其性能成为关注热点。这就 需要对网络的性能指标进行提取与分析,对网络性能进行改善和提高。因此网络 性能测量便应运而生。发现网络瓶颈,优化网络配置,并进一步发现网络中可能存在 的潜在危险,更加有效地进行网络性能管理,提供网络服务质量的验证和控制, 是网络性能测量的主要目的。目前,b t 文件共享流量超过全局数据流量的i 3 ,p 2 p 用户比w c b 用户1 0 倍还要多【7 l 。l 0 r dk e l v i n 在一次著名的演讲中说过,“当我们可 以测量并且用数字表达我们谈论的东西的时候,我们才算得上对此有所了解;如 果我们不能测量或者是不能用数字表达所谈论的东西,那么我们对此的了解就是 贫乏不足的”【l “。只有用真实的数据了解网络,才能有助于改进其性能,更好的 为更多的用户服务。 由于b t 连接的持续变化,b t 拓扑具有天生的动态性,这些动态性会对整个 b t 网络的性能造成显著的影响。准确描述拓扑动态特性并分析它们对b t 网络性 能的影响,对于b t 协议开发者和使用者来说都具有重要的参考价值。b t 应用的 流量特征通常是采用被动监听网络数据包的方式来获取。但是,随着b t 流量隐藏 技术的发展以及p e e r 分布的不均匀性,如何确保b t 流量统计数据的准确性和代表 性已经成为b t 流量测量的首要问题。 第四章和第五章的分析和结论都是依据于4 1 的平台完成的。 4 1 搭建网络测量平台 b i t t o r r e n t 属于混合型系统,优点是实现简单,定位文件快;缺点是抗审查能 力弱,这些优点和缺点恰好使它适合于用在校园网中。所以我们选择在校园网中 进行b t 网络测量。 本文所获取的网络数据是通过e n d a c e 公司的d a g 4 3 g e 数据采集卡采集的。 d a g4 3 g e 支持千兆以太网线速分析,不会漏包。d a g4 3 g e 把数据以零c p u 利用率直接传送到主机存储器,能同时用两个独立的端口进行全线发送和接收, 效率很高。 由于计算机中心是学校校园网对外网的出口,所有的数据设备都放在计算机 中心,所以把d a g 4 3 g e 数据卡放在计算机中心,监测从电信学院进出的所有网 络数据。也就是说,采集的是电信学院进出的数据。学校网络简图如下: 1 6 b 躯窑逼厶堂亟堂位i 金室羞毽主埕躯垦! 熬握速 图4 - 1 校同网络架构 f i g u r e4 - 1n e t w o r ks t r u c t u r ei nc a m p u s 但是从上图中我们可以看到,这样抓取的数据并不全面。采集电信教学楼进 出的数据只能观察到电信楼的网络连接情况,不能观察到校园网内其他楼之日j 的 网络连接情况,也无法观察到校内其他楼和外网的连接,更无法观察到电信楼内 部的网络情况,因此,在第四章中对所抓取的数据进行过滤和分析后,在第五章 对第四章中的方法进行了扩展
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025浙江北辰集团面向社会公开招聘中层管理人员4人笔试参考题库附带答案详解
- 哺乳期内离婚协议中子女抚养权及监护权分配
- 旅游产业私人合伙股权分配与旅游产品开发合同
- 智能交通系统公司股权转让与城市交通优化合同
- 绿色生态住宅区物业经营权及环保服务转让协议
- 离婚前夫妻债务分担与财产权益协调协议
- 夫妻感情破裂男方出轨致女方怀孕期间协议离婚合同
- 离婚时夫妻共同债权债务合并清偿协议范本
- 高端离婚协议书:共同财产分配与子女监护权合同
- 夫妻双方自愿离婚协议模板:财产分配及子女抚养明确
- 设计经理招聘笔试题与参考答案(某大型央企)2024年
- 人美版(北京)美术一年级上册第5课《设计好看的盘子》课件
- 2002版干部履历表(贵州省)
- DL∕T 1396-2014 水电建设项目文件收集与档案整 理规范
- 行路难课件8省公开课一等奖新名师比赛一等奖课件
- 博士高校面试答辩模板
- 《国家心力衰竭指南2023》(完整版)解读课件
- 深圳市劳动法律法规参考手册模板
- 班组长质量管理意识培训
- 陈旭大卫不可以 省赛一等奖
- 治疗方式―戏剧治疗之历史及治疗性因子
评论
0/150
提交评论