网站大量收购独家精品文档,联系QQ:2885784924

eMule网络文件系统开发毕业设计.docVIP

  1. 1、本文档共42页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  5. 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  6. 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  7. 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  8. 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
目 录 引言 1 1 P2P概述 1 1.1 P2P文件传输系统产生的背景 2 1.2 P2P文件传输系统国内外的研究现状 2 1.3 P2P文件传输系统的研究意义 2 1.4 本课题研究的内容 3 2 P2P相关理论 3 2.1 P2P与C/S的比较 3 2.2 P2P的特点 3 2.3 各种P2P模型 3 2.3.1纯P2P模型 4 2.3.2 带有一个简单发现服务器的P2P模型 4 2.3.3 带有发现和查找服务器的P2P模型 4 2.3.4 带有发现、查找和内容服务器的P2P模型 4 2.4 对等点的发现 4 2.4.1 显式点到点配置 5 2.4.2 动态发现模型 5 2.4.3 目录发现模型 5 2.4.4 网状模型 5 2.4.5 多播模型 6 2.4.6 主动搜索模型 6 3 关键技术 7 3.1 P2P穿越 7 3.1.1 当今Internet体系结构 7 3.1.2 NAT 8 3.1.3 UDP打洞 8 3.2 多线程技术 10 3.2.1 线程的组成 10 3.2.2 创建一个线程 11 3.2.3 线程的终止 11 3.2.4 线程的调度 11 3.3 流 12 3.4 文件的分块 12 3.5 多线程文件传输与断点续传 13 3.6 文件MD5校验 13 4 系统总体设计 14 4.1 系统采用的P2P模型 14 4.1.1 客户端与客户端之间的发现 15 4.1.2 客户端向服务端查询数据 15 4.1.3 客户端搜索和下载共享文件 15 4.2 P2P文件传输系统的工作流程 16 4.2.1 客户端上传下载功能的工作流程 16 4.2.2 服务器功能的工作流程 16 4.2.3 客户端指令监视模块的工作流程 18 4.3 系统各组件的联系 20 4.3.1 客户端上传下载模块到服务器的联系 20 4.3.2 客户端上传下载模块到客户端指令监视模块的联系 20 4.3.3 客户端指令监视模块到服务器的联系 20 5 P2P文件传输系统的实现 21 5.1 服务端数据库设计 21 5.2 系统界面设计 22 5.3 客户端各模块设计 24 5.3.1 本地文件信息搜集线程模块 24 文件搜索算法 24 5.4 本地共享文件上传线程模块 25 5.4.1在线程中发送数据 25 5.5 数据库操作模块 26 5.5.1数据封装成流 26 5.5.2 解包 27 5.6 上传下载模块 28 5.6.1 文件下载 28 5.6.2 文件上传 30 6 系统安全与测试 31 6.1 系统的威胁评估 31 6.2 系统测试 32 6.2.1 测试方法 32 6.2.3 测试内容 32 6.2.4 测试结果 32 6.2.5 测试数据 32 结论 34 谢辞 36 参考文献 37 摘 要 随着计算机和网络的普及,单独工作、不需要和其他用户交互的软件越来越少,作为一项新兴的网络技术,P2P以其无与伦比的可伸缩性和对资源的利用率吸引着大众的注意。传统C/S或B/S结构,服务器极易成为网络中的瓶颈,当客户端达到一定数量后,系统会无法提供服务。而基于P2P的网络中,每个节点既可以为其它节点提供服务,也可以享受其它节点提供的服务,服务器瓶颈被消除,整个系统的性能得到较大程度的改善。 在这样的背景下,本文设计开发了eMule网络文件系统。系统采用P2P网络模型,在整个文件上传与下载过程中客户端不需要任何服务器的支持,并可同时从当前在线的其他多个客户端中下载所需的不同文件数据块,实现了多点上传与下载并行,极大提高了速度。 系统分三个模块:本地共享文件信息收集模块,远程数据库操作模块,文件上传下载模块。客户端提供的功能主要包括:文件上传与下载、共享文件模糊查询、文件指纹识别、错误数据恢复、断点续传、流量监控、自动穿透内网、IP和端口探测、单点错误处理等功能。 本系统使用了文件指纹识别技术,能有效地监控下载过程中发生的数据错误,并能够检测错误数据恢复是否成功。在进行共享文件查找时,利用文件指纹可以精确的查找到所需的文件,避免文件同名而内容不同的情况。在上传下载过程中,系统使用了自动穿透内网、自动申请端口和磁盘空间、动态调整文件传输包大小、多线程上传下载文件、文件分块、利用内存作下载数据缓存等多种技术。 关键词:P2P;NAT;UDP打洞;文件传输 Abstract With the popularization of computer and network, work alone and need not other users interaction software are fewer and fewer, as one new developing network technology, P2P

文档评论(0)

tt7090 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档