基于P2P的网络数据传输的研究与实现
详细信息    本馆镜像全文|  推荐本文 |  |   获取CNKI官网全文
摘要
随着网络教学平台应用的发展,原来的浏览器/服务器(B/S)和客户端/服务器(C/S)结构设计方法对服务器性能的依赖所产生的弊端日益显现。P2P技术以其具有的非中心化基本特点,带来了在可扩展性、鲁棒性等方面的优势,它的蓬勃发展为网络教学平台带来更广阔的发展空间。本课题主要研究了如何实现基于P2P技术的网上数据传输。
     在P2P技术的应用过程中,需要考虑的问题甚多,包括网络中共享文件的发现机制,数据传输的完整性和传输过程中的效率和安全性问题,还包括网络中节点的负载均衡问题等等。本文主要完成了下面几个工作:
     1)采用基于超节点的混合型P2P网络拓扑结构,列出常见的资源定位搜索算法,进行比较,并选择Chord算法作为本系统资源定位搜索算法的基础,做出改进。
     2)设计系统框架。将P2P应用系统的结构分为拥有设置和显示功能的用户应用层,拥有文件共享机制和节点发现及超节点选择机制的通知层和拥有文件上传和下载功能的网络传输层。从功能上大致描述了各个层的设计思想。
     3)根据设计的文件传输系统的体系框架,对使用到的关键技术的详细设计和实现做出说明,包括系统结构中超级节点的选择,节点间网络的连接以及文件在节点间的传输,并附带部分代码展示了关键技术的实现细节。
     本课题采用了基于套接字的网络通信技术、动态链接库技术、多线程技术、网络并发控制、内存有效管理以及多种数据结构。为将来网络教学平台的系统开发提供了必要的技术支持。
With the development of the Network teaching platform, the disadvantage of the traditional designment based on Browser-Server and Client-Server structure appear. P2P has the advantage in expandability and robustness for its structure. The development of peer-to-peer technique provides the desigment of the platform more extensive development space. This project mainly investigates the design and exploration of how to transmit data using p2p technique.
     In the course of using p2p technique, we should take many problems into consideration, such as how to find the files shared on network, how to make sure the data transmitted is unabridged and the course is safe. We also should take the load-balancing into consideration. This thesis mainly includes the following contents:
     1) Use the super-node based P2P network topology structure. List some familiar source-searching algorithms. Compare these algorithms and choose Chord as the base algorithms in this system.
     2) Design the frame of the system. According to the problems refered in previous segment. This thesis partition the whole system into three layers. The first is the user application layer which provides the setting and displaying function. The second is the notify layer which provides the file-sharing、node-discovering and super node choosing mechanism. And the third is the network transport layer which provides the function of file submitting and downloading. And then describes designment of all the three layers in general.
     3) Introduce some key-techniques involved in the p2p data transport system. Include the choosing of super node, the file sharing and searching method, the link between nodes and the data transport among nodes. This thesis also includes some codes in order to describe the implement of the key- techniques.
     This project adopts network communication technologies based on socket, dynamic link library technologies, multi-threading processor technique, the controlling of network intercurrent, effective memory management and some data structures, providing effectual technical support for the development of the Network teaching platform in the future.
引文
[1]罗杰文.Peer-to-Peer(P2P)综述[Z].中科院计算机研究所.2005.11
    [2]K Kant,R Iyer,V Tewari.A Framework for Classifying Peer-to-Peer Technologies.Proc.of 2nd IEEE/ACM International Symposium on ClusterComputing and the Grid(CCGRID'02),IEEE Society Press,May2002,368-376.
    [3]MorHarchol-alter,TOM Leighton,Daniel Lwein.Resource discovery in distributed netorks[C].18~(th) Annual ACMSIG ACT/SIGOPS Symposium on Principles of Distributed Computing Atlanta.May 1999,229-238
    [4]KDT.点对点文件传输软件横向比较[J].计算机与网络,2003(21)
    [5]互联网实验室.P2P的现状及发展趋势[Z].2004.8
    [6]程黎艳.P2P网络模型研究[J].软件导刊,2008,7(3):39-41
    [7]赖坤锋.基于DHT的P2P复杂搜索机制的设计与实现[D]:[硕士学位论文].成都:电子科技大学计算机学院,2008
    [8]B.Yang and H.Garcia-Molina.Designing a Super-peer Network[R].Technical report,stanford university,2002.
    [9]万仲保,王宝荣,蔡俊.典型DHT拓扑结构的研究[J].华东交通大学学报,2008,25(1):57-60
    [10]Stoica I,Morris R,Karger D,et al.Chord:A scalable Peer-to—Peer lookup service for Internet applications[A].Proceedings of ACM SIGCOMM'01[C].San Diego,CA,USA,2001
    [11]Maymounkov P,Mazieres D.A peer-to-peer information system based on the XOR metric[C].New York:ACM press,2002:53-65
    [12]Rainasamy S,Francis P,Handley M,et al.A scalable content-addressable network[A].Proceedings of ACM SIGCOMM'01[C].USA,2001
    [13]庄雷,潘春建,邦永强等.Gnutella网络的连接管理[J].软件学报,2005,16(1):158-164
    [14]秦镜,姜建国.基于无线传感器网络的电机运行状态监测系统设计[J].电子技术应用,2008(2):102-105
    [15]James F.Kurose Keith W.Ross Computer Networking A TOP-DOWN APPROACH FEATURING THE INTERNET[C].Pearson Education,2005.
    [16]李敏,徐林.BT通信中数据下载的分析和实现[J].计算机与信息技术,2008(12):81-83
    [17]李浩松.分布式GIS应用服务器负载平衡研究[D]:[硕士学位论文].武汉:武汉大学,2005
    [18]黄曦.Web服务器集群负载均衡技术的应用研究[D]:[硕士学位论文]. 重庆:重庆大学计算机学院,2004
    [19]李辉.网络服务器的负载均衡的研究与实现[D]:[硕士学位论文].大连:大连海事大学管理与科学工程学院,2003.
    [20]张书奎.基于主动队列管理的集群计算负载平衡系统[J].计算机工程与应用.2007,43(23):132-133.
    [21]林闯,单志广,任丰原.计算机网络的服务质量(QoS).清华大学出版社.2004
    [22]Shenker S,Wroclawski J.Network Element Service Specification Template.RFC2216,IETF,September 1997
    [23]姚玉坤,刘合武.IntServ与DiffServ在VoIP QoS中的应用分析[J].计算机与数字工程,2007,35(4):55-58
    [24]常璐璐,禹继国.基于P2P网络安全问题的研究[J].电脑知识与技术,2008(5):819-820
    [25]贾钊,王蕊楠,陶波.P2P网络安全综述[J].网络安全技术与应用,2008(3):28-30
    [26]周继,贺秦禄,董丽丽.点对点网络安全机制的研究[J].计算机安全,2007(10):31-33
    [27]刘云,马义忠,负秋峰.Chord算法性能及优化策略分析[J].计算机工程与设计,2008,29(21):5454-5456
    [28]刘蜀豫,李之棠,黎耀.内容寻址网络CAN研究[J].计算机应用,2005,25(12):2885-2891
    [29]B.Zhao,J.D.Kubiatowicz,A.D.Joseph.Tapestry:An Infrastructure for Fault-Tolerant Wid-area Location and Routing.Technical report UCB/CSD-01-1141.UC Berkeley,April 2001
    [30]A.Rowstron and R.Druschel.Pstry:Scalable,distributed object location and routing for large scale peer-to-peer systems.In IFIP/ACM Middleware,November 2001.329-350
    [31]邵波,王其和著.计算机网络安全技术及应用[M].北京:电子工业出版社.2005.11.56-66
    [32]陈广山 等编著.网络与信息安全技术[M].北京:机械工业出版社,2008.9.91-92
    [33]网络签名.http://baike.baidu.com/view/1118923.htm
    [34]S.Kamvar,M.Schlosser,and H.Garcia-Molina.The eigentrust algorithm for reputation management in P2P networks.In:proc.of 12~(th) international world wide web conference.Budapest:ACM press,2003
    [35]Sonja Buchegger,Jean Yves Le Boudec.A robust reputation system for P2P and mobile Adhoc networks.In:Proceedings of the second workshop on the Economics of Peer-to-Peer systems.2004
    [36](美)Anthony Jones,Jim Ohlund著;京京工作室译.Windows网络编程技术[M].北京:机械工业出版社,2000.3.172-242
    [37]陈坚,陈伟等.Visual C++网络高级编程[M].人民邮电出版社.2002.12
    [38]Peer-to-Peer working group.NAT/Firewall Working committee.Bidirectinal peer-to-peer communication with interposing firewalls and NATs[J/OL].August 2001
    [39]David J.Kruglinski.Visual C++技术内幕(第五版)[M].北京希望电子出版社.1999
    [40]Ray Rankins,Paul Jensen,Paul Bertucci.SQL Server2000实用全书[M].电子工业出版社.2002.213-267
    [41]郭良敏,杨寿保,郭磊涛等.P2P网络中基于区域划分的超节点选取机制[J].小型微型计算机系统,2008,29(2):208-231
    [42]庞傲枫,李克清.P2P通信之NAT穿透方法研究[J].网络通讯与安全,2007(8):389-420
    [43](美)William S.Davis,T.M.Rajkmar著,陈向群译.操作系统基础教程(第五版)[M].北京电子工业出版社,2003.77-78
    [44](美)Jeffrey Richter著,王建华,张焕生,侯丽坤 等译.Windows核心编程[M].北京:机械工业出版社,2000.5.172-226

© 2004-2018 中国地质图书馆版权所有 京ICP备05064691号 京公网安备11010802017129号

地址:北京市海淀区学院路29号 邮编:100083

电话:办公室:(+86 10)66554848;文献借阅、咨询服务、科技查新:66554700