Linux多协议多线程下载技术的研究与实现

被引量 : 10次 | 上传用户:lichiuyun13
下载到本地 , 更方便阅读
声明 : 本文档内容版权归属内容提供方 , 如果您对本文有版权争议 , 可与客服联系进行内容授权或下架
论文部分内容阅读
网络文件下载(Network file download),其发展过程经历了HTTP、FTP多线程文件下载、P2P多源文件下载以及支持多种协议的多源多线程文件下载三个阶段。尽管Linux系统的下载工具简洁、高速、移植性强,但也存在着命令行操作相对不便,支持协议种类不多等缺陷,能同时支持HTTP、FTP、BitTorrent三种常见协议的下载工具更是稀少。因此,本文针对当前Linux下载工具存在的不足,主要完成如下几个方面的工作:1)对比当前Linux主要下载工具的优缺点,详细分析了HTTP、FTP、BitTorrent协议的工作原理、实现方法以及Linux多线程编程技术。2)针对随机邻居节点选择策略的缺陷,提出BitTorrent协议实现的邻居节点选择策略的改进算法。该算法既充分利用了邻居节点带宽,又最大限度地保证了从邻居节点处获得新文件片段的概率,提高了系统文件的交换速率。3)针对BitTorrent实现的激励机制无法在大量种子节点存在的网络中抑制贪婪节点搭便车行为的缺陷,提出根据节点贡献量分配种子上载带宽的分配机制。该机制能优化种子带宽的合理分配,有效地抑制贪婪节点搭便车行为的产生,缩短贡献节点的平均下载时间,提高系统运行的公正性。4)针对大量节点频繁的更新操作对Tracker服务器造成的负载过重以及随机选择连接节点造成的带宽损耗等缺陷,本文基于Cluster拓扑模型,提出基于邻居节点聚簇的文件分发系统模型,并给出节点加入策略、超级节点选择策略、节点离线策略的具体实现方法。5)结合本文对于协议实现方法的改进,构建了一种能同时支持HTTP、FTP、BitTorrent三种协议的基于命令行操作的多线程下载工具。其中,对于HTTP/FTP下载,详细描述了文件分块、断点续传与多线程同步的实现;对于BitTorrent下载,重点描述了种子解析模块、策略选择模块以及peer管理模块的实现。在系统测试中,通过对比wget、d4x、lftp、bittorrent等Linux主要下载工具的下载用时、平均速度以及内存使用情况,验证本文下载系统的稳定性与高速性。在仿真试验中,通过对比节点平均下载用时,验证算法和模型的可行性。
其他文献
本文从唐代仕女画名作《簪花仕女图》入手,揭示这件作品在眼神、体态和环境中心理刻画方面杰出的表达方法,并从中梳理中国传统人物画创作经验和体会。在周昉的《簪花仕女图》
集团企业通过财务控制手段来达到控制集团的目的,对集团企业来说,如何利用财务控制,加强对子公司的财务管理和控制是当务之急。目前,集团企业内部子公司的财务管理与其他独立
面向3G和4G的下一代无线通信系统复杂性远高于传统系统,基于经验法则的传统设计方法具有较大的局限性,理论仿真支撑的网络规划和系统仿真显得尤为重要。近年来计算机软件仿真
日本民法规定了特留份制度,但2008年制定的旨在保护中小企业经营的法律中规定了有关特留份的民法特例,试图减缓特留份制度对中小企业的妨害。具有调整继承人之间和继承人与非
用户生成内容(UGC)正成为网站的新宠,众多网站争先恐后地推出新的开发利用策略。当前,学者们的研究既体现在用户生成内容的类型、动机、质量、法律问题等基本理论方面,也体现
对咖啡核桃乳饮料的生产工艺进行研究,通过单因素及正交试验法对影响产品品质的因素进行探讨,确定了咖啡核桃乳饮料的最佳工艺配方为乳粉14%,核桃浆10%,咖啡6%,柠檬酸0.1%,最
作为琵琶艺术的传承者,传统音乐的传承与发展对于我辈来说,是必须承担的使命。在这一点上,琵琶大师刘德海先生作为当代琵琶艺术发展的领军人物,作出了极其重要的贡献,为我们
目的研究中风疼痛汤对缺血性脑卒中后躯体疼痛的治疗效果。方法选取2017年4~12月我院收治的缺血性脑卒中后躯体疼痛患者88例,随机分为两组,其中观察组44例,采取我院自拟中风
以花生为主要原料,对咖啡花生乳的生产工艺和配方进行了研究。对乳化稳定剂的乳化稳定效果进行了考察。结果表明,复合乳化稳定剂用量0.20%可以达到较好的乳化稳定效果。采用