为了正常的体验网站,请在浏览器设置里面开启Javascript功能!

AGnutella_一种基于匿名的P2P文件共享机制 (1)

2013-01-28 6页 pdf 359KB 20阅读

用户头像

is_592957

暂无简介

举报
AGnutella_一种基于匿名的P2P文件共享机制 (1) 计算机研究与发展 ISSN1000.1239/CN11.1777/TP JournalofComputerResearchandDevelopment 43(Suppl.):34~38,2006 ■================;=;====================================================================================================================t===一 AGnutella:一种基于匿名的P2P文件共...
AGnutella_一种基于匿名的P2P文件共享机制 (1)
计算机研究与发展 ISSN1000.1239/CN11.1777/TP JournalofComputerResearchandDevelopment 43(Suppl.):34~38,2006 ■================;=;====================================================================================================================t===一 AGnutella:一种基于匿名的P2P文件共享机制 王伟平 罗 熹 王建新 (中南大学信息科学与工程学院长沙410083) (wpwang@mail.csu.edu.an) AGnutella:AnAnonymousP2PFileSharingMechanism WangWeiping,LuoXi,andWangJianxin (SchoolofInformationScience&Engineering,CentralSouthUniversity,Changsha410083) AbstractGnutellaisatypicaldecentralizedP2Pfilesharingsystem,butitcannotprovidetheprotectionof theidentityoffilerequesterandfileprovider.BasedonGnutella,ananonymousP2Pfilesharing mechanism--AGnutellaisproposedinthispaper.InAGnutella,filerequesterandfileprovidercanuse reroutingschemetobuildanonymousroutetoimplementbothunidirectionalandbidirectionalanonymous filetransmission.ThesimulationandanalysisfortheanonymityandperformanceofAGnutellaarealso given,whichshowsthatwiththeincreaseofforwardprobabilityPf,theanonymitywillbeimprovedand thedelayandthenetworkpayloadwillalsobeincreased.SoinAGnutella,theuserscanbalance anonymity,delayandnetworkpayloadbychoosingthevalueofPtreasonably. KeywordsGnutella;anonymouscommunication;rerouting 摘要Gnutella是一种典型的纯分布式P2P文件共享网络系统,但在Gnutella中并没有考虑文件请求 者和提供者的匿名需求.基于Gnutella提出了一种匿名的P2P文件共享机制AGnutella,文件请求者和 文件提供者可以通过重路由的方式建立匿名路径,实现文件传输中的单向或双向匿名.对AGnutella的 匿名性能以及传输性能进行了分析与测试,结果明,AGnutella能够提供文件传输的双向匿名性,转发 概率Pf越大,匿名性越好.同时匿名文件传输的时延和重路由造成的网络负载也随Pf增加而增加.匿 名用户可以选取合适的Pf值,在匿名性和延迟、网络负载之间进行平衡. 关键词Gnutella;匿名通信;重路由 中圈法分类号TP393.08 随着P2P文件共享系统【l-2J的广泛应用,广大 的用户也开始越来越关心文件传输过程中的个人隐 私和安全问.如何保证用户匿名地发布文件和获 取文件已经成为P2P文件共享系统的一个研究热 点.目前,虽然已经出现了一些基于P2P架构的匿 名通信系统,例如:Herbivore⋯和Crowds[4J,但是还 缺乏与实际的P2P文件共享系统相结合的匿名通 信协议. 本文基于典型的P2P文件共享系统Gnutella[2] 提出了一种匿名的文件共享机制AGnutella,文件请 求者和文件提供者可以根据自己的匿名需求,利用 重路由方式建立匿名路径,实现文件传输的单向或 双向匿名. 1 Gnuteila工作原理介绍 Gnutella是典型的纯分布式P2P文件共享系 统,Gnutella中的各个节点通过与相邻节点之间的 收稿日期:2006-07-07 基金项目:国家自然科学基金项目(60403032);新世纪优秀人才支持基金项目(NCET-05.0683) 王伟平等:AGnutella:一种基于匿名的P2P文件共享机制 35 连接遍历整个网络,从而定位并最终获取文件.当 网络中的某个节点想要获取某文件时,首先向自己 所有的邻居活动节点广播一个“查询请求”(Query). 收到该请求的各节点检查本地是否有符合查询请求 的文件内容.若有,则沿着“查询请求”的广播路径 回溯,返回“查询响应”(QueryHit)给文件请求者.无 论本地是否有与该“查询请求”相符的文件,各个节 点都会把该请求通过向邻居节点扩散的方式继续在 网络中传递,同时将“查询请求”中的1vrL值减1, 当1vrL值递减为0时节点停止继续转发.文件请 求者收到“查询响应”后,便可选择与某个响应节点 建立TCP连接,通过HTTP协议从该节点处下载 自己所查询的文件. Gnutella作为一种分布式文件共享系统被广泛 使用,但系统中对于用户的隐私性、匿名性没有考虑. 而在这种完全自主、纯分布式的系统中,使用者往往 有很强的隐私需求,例如:文件拥有者愿意提供资 源,但不希望让别人知道他是谁;同样出于个人隐私 的,许多文件请求者也不希望在请求获取某个 文件时被他人知晓自己的身份. 2 AGnutella匿名机制的 2.1 AGnuteila协议扩展 AGnutella的基本思想是不改变Gnutella的文 件查询以及查询响应过程,而是通过建立匿名路径 来完成匿名文件传输.即用户可以根据自己的匿名 需求,建立匿名路径,利用匿名路径来传输文件,隐 藏自己与对方的文件传输关系. 在设计实现中,AGnutella扩展了Gnutella协 议,首先是保留了Gnutella协议中原有的5种通信 命令与响应(Ping,Pong,Query,QueryHit,Push),用 于文件资源的查找和直接推送.同时利用原 Gnutella协议头中的PayloadDescriptor域扩展了匿 名路径建路请求、匿名路径确认、匿名路径撤销、匿 名文件传输请求、匿名文件传输5种命令和响应,用 于建立匿名路径和在匿名路径上传输文件. 如图1所示,扩展的类型中保留了原协议头中 的16B的DescriptorID作为匿名路径连接符,用于 匿名路径记录和查找.匿名路径建路请求中,P,为 转发概率值,Keyseed是密钥协商种子,用于与下一 节点协商密钥.Type为0和1分别表示文件请求者 建路和文件提供者建路.Type为1时包含了选项 域,用于文件提供者在建立匿名路径请求中携带文 件名,以及路径确认时路径上最后一个点将自己地 址返回. 匿名文件传输请求用于文件请求者通过匿名路 径请求文件传输,其中IPAddress和Port分别为文 件请求者得到的QueryHit中的文件提供者的地址 和可用端口.FileIndex和FileName为所要获取文 件索引号和名称. ID Descriptor0x08= I⋯。I~I (a)匿名路径建路请求 ID Descriptor=0x09 — 。 ‘ (b)匿名路径确认 (c)匿名路径撤销 ID Descriptor=0xllAddress IndexName (d)匿名文件传输请求 (e)匿名文件传输 图1扩展的AGnutella命令和响应 2.2匿名路径的建立和保存 匿名路径建立过程采用随机转发的重路由策 略,即当某节点发送匿名路径建路请求时,它以等概 率将请求随机发送给任一邻居节点.之后,收到请 求的节点以概率P.继续将请求转发给它的任一邻 居节点;以概率1一P,不再转发,结束匿名路径. 匿名路径的保存:在路径建立过程中,路径上的 每个节点在进行转发时都会产生一个16B的随机 数DescriptorID,作为自己与下一节点路径上的匿 名连接符.每个节点通过保存一张匿名路径表,采 用类似于虚电路保存的方式来记录路径.路径表中 保存有经过该节点的所有匿名路径上的前一跳节点 和后一跳节点以及相应的前后两个连接上的匿名连 接符.当某数据包需要沿匿名路径回传时,路径上 的任意节点收到该数据包,将会根据数据包中的匿 名连接符和上一跳节点查找匿名路径表,从而确定 下一跳节点以及下一连接的匿名连接符,并修改数 据包中的匿名连接符后转发.匿名连接符是路径上 前后两个节点之间的连接表示,采用节点局部产生 的方式. 匿名路径建立后,路径上的每个点参与转发文 计算机研究与发展2006,43(增刊) 件.当匿名传输文件结束后,由文件获取方发出匿 名路径撤销请求,该路径上的所有节点删除匿名路 径表中的该路径信息. 在AGnutella中,为了防止窃听者通过信息内 容关联来发现匿名传输关系,各节点在建立匿名路 径过程中还将采用密钥交换算法与路径上下一节点 协商会话密钥,从而对信息在每个节点进行解密和 重新加密传输. 2.3 AGnuteilaY作过程 1)文件请求者匿名 当文件请求者要求实现匿名文件获取时,首先 根据自己的匿名需求确定某个转发概率值P,,同时 确定密钥种子,建立匿名路径.路径建立后,路径上 相邻节点间的共享密钥也就协商完成了,共享密钥 同匿名路径信息一起保存. 然后文件请求者利用原Gnutella的查找机制, 广播文件查询请求,得到文件提供者的地址.为了 隐藏自己,文件请求者不是直接与提供者建立TCP 连接,而是沿匿名路径发送匿名文件传输请求,请求 中包含了所请求的文件名和文件提供者地址.当请 求到达匿名路径的最后一个节点Pi时,P;直接与 文件提供者建立TCP连接并获取文件.之后,文件 将沿匿名路径返回给文件提供者. 图2表示的是文件请求者I实现匿名的过程: ①j建立匿名路径,匿名路径上的最后一点记做Pi; ②工利用广播进行文件查询;③文件提供者R返回 查询响应;④I沿匿名路径发送匿名文件传输请求; ⑤P;与R建立连接,获取所需文件,并沿匿名路径 将获取文件返回给j. 2)文件提供者匿名 若文件提供者需要实现匿名,当某Query请求 到来时,文件提供者不会将自己的IP地址作为 QueryHit响应进行回复,而是建立匿名路径,将路径 oPeer’ ·一一'建立匿名路径 ———}Query●———'Download ——夸QueIyHit①~⑤执行步骤 图2文件请求者实现匿名过程 上最后一个节点P,的地址和端口作为QueryHit响 应,之后,文件请求者与P,建立连接,由P,通过匿名 路径从文件提供者处获取文件,并传送给请求者. 文件提供者建立匿名路径过程与文件请求者建 立匿名路径过程的不同点在于: ①P,在路径确认中必须携带自己的IP地址 和端口,从而使得文件提供者可将P,的地址作为响 应传给请求者. ②匿名路径建路请求中必须携带文件名.这是 因为节点P,可能成为多条匿名路径上的节点,当 P,收到文件传输请求命令时,可以根据文件名找到 其对应相关的匿名路径. 图3表示的是文件提供者R实现匿名的过程: ①文件请求者J广播文件查询请求;②文件提供者 R建立匿名路径,匿名路径上的最后一个点是P,; ③R将P,的IP地址作为查询响应返回给J;④j收 到查询响应后,与P,直接建立连接;⑤P,通过匿名 路径向R发送文件请求并获取文件并传输给I. oPeer ·~+建立匿名路径 ———’|Query●———。}Download —吣QueryHit①~⑤执行步骤 图3文件提供者实现匿名过程 ’ 当文件请求者和文件提供者同时有匿名请求 时,它们分别建立匿名路径.这时,文件请求者通过 QueryHit所得到的地址是文件提供者匿名路径上 的最后一点P,的地址,由文件请求者所建匿名路径 上的最后一点P;与P。直接建立连接,文件经过两 段匿名路径进行匿名传输,从而实现双向匿名. 3 AGnutella性能测试与分析 3.1模拟测试的系统模型 假设AGnutella满足一般P2P网络的结构特 点【5石]:网络拓扑服从Power.1aw分布,即网络中只 有少数节点的连通度高.假设任意节点邻居数为 3~128.图4给出了系统邻居数、延时、传输速率分 别服从的分布. 王伟平等:AGnutella:--种基于匿名的P2P文件共享机制 任意节点邻 节点所占 居数f个 百分比(%) 3~9 20 10~29 45 30~59 30 60~99 4.9 100~128 0.1 任意两节点间 所占百分比(%) 延时(m5) 20~70 20 70~280 60 80~500 20 (a)节点邻居数分布情况 (b)任意两节点问延时分布情况 传输速率 节点所占百分比(%) 64——512Kbps 30 1Mbps. 60 3~10Mbps 10 (c)节点传输速率分布情况 图4系统模型假设 3.2 AGnutella的匿名性能分析 1)路径跟踪攻击 路径跟踪是指当攻击者窃听到某个令他感兴趣 的文件在传送,尝试沿着匿名路径回溯或跟踪的方 法去寻找文件请求者或文件提供者.设攻击者能观 测到某个节点的邻居,采用随机猜测的方式来回溯 或往前跟踪,并且当到达了被跟踪对象时能准确识 别.若攻击者的观察点离真正的文件请求者或文件 提供者的距离为i跳,任意节点的邻居数平均为m 个,则攻击者可以正确推测到真实发送者的概率 P=(1/仇)‘.显然回溯或跟踪的成功概率是随着攻 击者与目标之间距离的增大而成指数下降的,同时, 匿名路径上各节点的平均邻居数增大,跟踪成功率 也下降.按照图4假设的P2P结构的一般结构特 点,我们可以得到仇约为27.3.所以当攻击者离文 件请求者或文件提供者的距离超过3跳时,用随机 跟踪推测出文件请求者或提供者的概率约为 0.00005.因此可以看到攻击者通过随机路径跟踪 成功破坏匿名性的概率是很低的. 2)前驱攻击 前驱攻击是基于重路由转发的匿名系统比较容 易遭受的一种攻击.P(JH,+)用于表示前驱攻击 成功的概率HJ.P(JIHl+)越大,匿名性就越差.文 献[7]给出了分组匿名机制下的P(JH,+)的理论 分析值,即当每个节点在某个邻居组中随机选择转 发时,若邻居组成员数为m,非泄密节点比例为P. P(IH】+):—堕坐{华. 咒[1_Pf(去一吉)] 表1给出了AGnuteUa中的P(JIH】+)的模拟 测试值和理论计算值.模拟中节点总数为10000,任 意节点的邻居数服从如图4(a)所示的分布.测试的 总请求数为10000次,非泄密节点比例分别为95% 和90%,泄密节点在所有节点中随机产生.理论计 算中的m取值为邻居数的统计平均值27.3.从表 1可以看出在前驱攻击中,随着转发概率Pf值的增 大,P(JlH,+)的值是明显减小的,即攻击者前驱攻 击成功的概率降低,系统匿名性能增强.但Pf值的 增大,显然增加了转发路径长度,增加了系统的开销 和时延.另外很显然的是泄密者比例越高匿名性能 越差.测试值与理论计算结果基本是一致的.一般 认为当P(JH1+)<0.5时,可以达到基本的匿名 需求¨J,所以Pf一般应选取大于0.5的值. 表1 AGnutella中的P(11Hl+)测试值和理论值 3.3AGnutella系统传输性能分析 由于AGnutella保留了原Gnutella的文件查询 和查询响应部分,因此不会影响文件的查询成功率. 但匿名路径的建立会使得文件请求和文件传输要经 过多次转发,因此会增加系统的时延开销和网络负 载.以下将分别对这两方面的性能进行模拟测试. 1)时延开销 系统的时延开销是指从开始查询到最终获取文 件所需花费的时间.模拟中选择最早的查询响应节 点作为文件提供者. 模拟中采用第3.1节所假设的系统模型,同时 假设系统总节点数为10000,文件复制率为1%,即 系统中1%的节点拥有所要查找文件.假设传输的 文件大小均为3.7MB[5】,且每个节点都在完全接收 文件后才进行转发.我们分别针对不需要匿名、文 件请求者匿名、文件提供者匿名和双向匿名的情况 计算机研究与发展2006,43(增刊) 进行了测试,且模拟了10000次文件请求,得到时延 的平均值. 表2给出了不同转发概率情况下的时间延迟测 试值.测试结果表明,P,增大,转发路径长度增加, 时延增加.其中文件提供者匿名的时延高于文件请 求者匿名的时延,这主要是因为文件请求者匿名中, 可以在建立匿名路径的同时发起文件查询,而在文 件提供者匿名中,必须先建立匿名路径、确定匿名代 理P,后才可以回复查询响应给文件提供者.双向 匿名所需付出的时延代价要明显高于单向匿名,这 显然是因为文件传输经过了两条匿名路径,增加了 转发路径长度. 表2转发概率pf值对时间延迟的影响 2)网络负荷开销 网络负载用匿名路径上的转发节点数来衡量. 按照转发概率理论推导旧J,转发节点数为1/(1一 p,).图5给出了匿名路径上转发节点数的测试值. 可以看出,测试结果与理论值是一致的.由于采用 了同样的转发概率进行测试,所以双向匿名的转发 点数是单向匿名的两倍. 暑 富 图5 转发概率Pf值对节点负载的影响 4 结 论 Gnutella是目前十分流行的纯分布式P2P文件 共享系统,本文在不改变Gnutella原有的文件查询 机制的前提下,提出了一种能够动态实现匿名文件 传送的通信机制——AGnutella.通过对AGnutella的 匿名性能和传输性能的分析与测试,表明AGnutella 能够提供P2P匿名文件传输,能够抵抗一定程度的路 径追踪和前驱攻击,并且转发概率P,越大,匿名性越 好,同时匿名文件传输的时延和由此造成的网络负载 也随P,增加而增加.匿名用户可以选取Pf值,在匿 名性和执行效率、网络负载之间平衡. 参 考文 献 [1]Napster.TheNapsterHomePage.http://www.napster.com/, 2001 [2]mGnuteUaProtocolSpecification、】o.4.http://www.ch02.colTl [3]SharadGoel,MarkRobson,MiloPolte,eta1.Herbivore:A sealableandefficientprotocolforanonymouscommunication. CorneUUniversity,TechRep:TR2003—1890,2003 [4]MKReiter。ADRubin.Crowds:Anonymityforweb transactions.ACMTransonInformationandSystemSecurity。 1998,1(1):62—92 [5]StefanSaroiu,PKrishnaGummadi,StevenDGribble.A measurementstudyofpeer—to-peerfilesharingsystems.The MultimediaComputingandNetworking2002(MMCN’02), SanJose,CA,2002 [6】MRipeanu,IFoster,Alanmitehi.Mappingthegnutella network:Propertiesoflarge—scalepeer—t小peersystemsand implicationforsystemdesign.IEEEInternetComputing Journal,2002,6(1):50—57 [7]王伟平,陈建二,陈松乔.匿名通信中短距离优先分组重路 由方法的研究.软件学报,2004,15(4):561—570 [8]SuiHongfei,WangJianxin,ChenJianer,eta1.Ananalysisof forwardingmechanismincrowds.IEEE2003Int’1Confon Communications(IC003)。Anchorage,2003 王伟平女,1969年生,博士,副教授,主要研究方向为 网络信息安全、匿名通信. 罗熹女,1980年生,硕士研究生,主要研究方向为 匿名通信. 王建新男,1969年生,博士,教授,主要研究方向为计 算机网络、网络信息安全. 毖∞捕垢H屹m 8 6 4 2 00 AGnutella:一种基于匿名的P2P文件共享机制 作者: 王伟平, 罗熹, 王建新 作者单位: 中南大学信息科学与工程学院,长沙,410083 本文链接:http://d.g.wanfangdata.com.cn/Conference_6280290.aspx
/
本文档为【AGnutella_一种基于匿名的P2P文件共享机制 (1)】,请使用软件OFFICE或WPS软件打开。作品中的文字与图均可以修改和编辑, 图片更改请在作品中右键图片并更换,文字修改请直接点击文字进行修改,也可以新增和删除文档中的内容。
[版权声明] 本站所有资料为用户分享产生,若发现您的权利被侵害,请联系客服邮件isharekefu@iask.cn,我们尽快处理。 本作品所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用。 网站提供的党政主题相关内容(国旗、国徽、党徽..)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。

历史搜索

    清空历史搜索