CPU通用计算在BitTorrent协议中的应用研究

来源 :浙江理工大学 | 被引量 : 0次 | 上传用户:crosslightning
下载到本地 , 更方便阅读
声明 : 本文档内容版权归属内容提供方 , 如果您对本文有版权争议 , 可与客服联系进行内容授权或下架
论文部分内容阅读
随着网络技术的发展,文件分享系统(BitTorrent)、在线播放系统(PPLive)、视频点播系统(Joost)等通过协作定位和分布共享的对等网文件共享系统已经成为占据当今网络流量最多的系统[6]。在这些系统中有成百上千万用户同时在线分享文件,这些用户随机地加入网络并与其他用户建立连接,形成了一个自组织的随机网络。在经典的BitTorrent文件分享系统中,系统中的大文件被平均地分割成K个文件块,系统通过节点之间文件块的交换最终将所有文件块分布到所有节点,为了达到这个目的,每个节点必须独立的决策哪些节点将作为自己的邻居节点,哪些文件块在给定的时间内被传送给邻居节点。基于以上问题在P2P网络中,文件块选择算法和邻居节点选择算法成为当前P2P网络中研究的热点。   现阶段BitTorrent文件分享协议中文件块选择算法和邻居节点选择算法主要是利用基于CPU的串行算法实现,在大规模的网络状态下,整个系统中要完全分享大文件需要比较长的时间。本文中提出并实现了基于CPU并行加速的P2P算法,这些算法完全适用于BitTorrent协议中节点的并行独立性,从而可以提高文件块在系统中的分享效率。本文的主要研究内容和工作如下:   (1)基于GPU并行加速的RUB算法。此算法采用了三种实现方案,分别为基于全局存储器的单线程单节点RUB算法实现、基于共享存储器的单线程单节点RUB算法实现和基于全局存储器的单线程单文件块RUB算法实现。访问全局存储器会产生较高的延时,因此会导致数据分享效率低从而影响RuB算法的执行效率。为了克服访问全局存储器高延时的缺陷,本文改进并使用了低访问延时的共享存储器,在一定程度上提高了RUB算法的执行效率。但是共享存储器较小无法满足大文件的存储,在一定程度上影响了算法的执行效率。因此本文还对RUB算法进行了进一步的改进,使用了基于全局存储器的单线程单文件块RUB算法。此改进算法大大减轻了每个线程的工作量,使得RUB算法的执行效率得到了较大地提高。   (2)基于GPU并行加速的LRF算法。此算法采用了两种实现方案,分别为基于全局存储器的单线程单节点LRF算法实现和基于全局存储器的单线程单文件块LRF算法实现。这两种实现方式类似于RUB算法的实现。为了得到更高的LRF算法执行效率,改进了基于全局存储器的单线程单节点LRF算法,使用了基于全局存储器的单个线程单文件块LRF算法。较大提高了LRF算法的执行效率。   最后,对本文的研究工作进行了总结,并提出了下一步研究的内容和方向。
其他文献
随着GPU体系结构的发展和GPU编程模型的成熟,越来越多的应用程序采用了高性能GPU架构来开发。NVIDIA公司提出的CUDA编程模型,已经在业界取得了巨大成功,引起了学者们的广泛研究
随着互联网的迅猛发展和普及,宽带流媒体技术的出现,视频点播(Video on Demand,简称VOD)业务已经成为当今互联网的主流业务之一。传统视频点播系统基于客户端/服务器架构,虽然可控
多核处理器是处理器的发展趋势,根据系统的内核结构是否存在差异,多核处理器可分为同构多核和异构多核。同构多核存在一定的局限性:在系统达到极限值之后,性能就无法随着内核
随着万维网快速发展,深层网络中蕴含的信息日益增加。由于深层网络具有规模大、异构性、自治性等特点,如何使用户高效、快捷地获取自己满意的信息面临挑战。为了解决这一问题,需
无线传感器网络的诸多应用中,节点定位技术作为无线传感器网络的核心支撑技术之一,越来越受到重视,已经成为研究领域的一个热点。传感器节点之间位置的确定成为无线传感器网络应
主流的JavaScript引擎(如V8)都使用了类型特化技术来优化程序性能,这种技术需要在运行时预测各个程序点的变量的类型集合。但JavaScript语言的动态性会降低程序的类型可预测
视频人脸的检测与跟踪是计算机视觉与模式识别领域中一个核心课题,在视频监控、人机交互、视频会议、身份认证以及多媒体领域等方面有着广泛的应用价值。视频中人脸的处理主要
高性能计算机的发展促使了高效能程序设计环境的产生与发展,尤其是并行编程模式的发展。一方面,由于并行机体系结构的多样性给并行程序的开发带来了很多困难,因此怎样简化并