欢迎来到天天文库
浏览记录
ID:24696269
大小:60.50 KB
页数:7页
时间:2018-11-16
《p2p文件共享系统的实现分析论文》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库。
1、P2P文件共享系统的实现分析论文摘要:系统QtP2Pfile-sharingSystem(QPS)是利用Qt开发的P2P文件共享系统。QPS采用P2P中的混合模式,此模式结合了集中目录式和纯分布式两者的优点,在实现上具有简易性,在共享度上具有很强的扩展性。QPS的最大特点是加入了策略。这种策略能限制一些用户只而不共享资源的行为。策略的引入是为了鼓励用户与其他人分享自己的资源,而不仅仅是索取。入策略的QPS不仅能比较有效的限制只不分享的行为,而且对系统的寿命也有相当程度的提高。关键词:文件共享;P2P;策略;QtC/
2、S式架构造就了一批著名的门户网站,如雅虎,新浪等。这些网站容易受到黑客的亲睐后果是服务崩溃。C/S式架构只有一个服务器或服务机群.freelessage:文件搜索信息,包括文件名及搜索跳数;Searchresult:返回的搜索结果,包括文件名和文件所在IP;Otherleadermsg:其他leaderpeer上的信息,包括连接ordinarypeer数目和文件数量等;Localsharemsg:和otherleadermsg一样。(1)数据结构定义。为了实现以上三个通信协议,首先规定了一些数据结构,以区别不同
3、的通信信息。个种数据结构如下:#defineFILEINFO1//文件信息#defineSHAREINFO2//共享列表信息#defineDOAX_SIZE(2048*10)//文件数据的大小typedefstruct{inttype;//表示是何种信息,下同ULONGsize;//文件大小ULONGdoes;//文件次数charname[100];//文件名}FileMsg;//文件信息结构体typedefstruct{inttype;ULONGsize;//文件大小ULONGdoes;/
4、/文件次数charip[20];//文件所在IPcharname[100];//文件名}ShareMsg;//共享信息列表结构体typedefstruct{inttype;ULONGsize;//文件大小ULONGseek;//文件数据块在文件中的位置charname[100];//文件名}Doe[100];//文件名}SearchMsg;//文件搜索结构体typedefstruct{inttype;ULONGconnectedNumber;//连接数量ULONGfileNumber;//文
5、件数目charip[20];//Group-leaderpeer的IP}LeaderMsg;//Group-leaderpeer信息结构体typedefstruct{inttype;ULONGseek;//文件数据块在文件中的位置ULONGbytes;//buff中的实际字节数ULONGsize;//文件大小charname[100];//文件名charbuff[MAX_SIZE];//文件数据}FileData;//文件数据结构体(2)信息传输函数的声明。voiduploadShareList
6、(constFileMsgfile);//uploadlocalsharelisttoleadervoiddosg);//doe,.freelleadervoidotherLeadersInfo();//getotherleaders'infothroughtheconnectedleadervoidsearchBack();//seachresultback,readitvoiduploadFile(intsock);//uploadthefiledatathatdoeleadervoidsearch(int
7、sock);//receivedsearchrequestfrompeervoidremoteSearch(SearchMsgmsg);//sendsearchtologonedleadervoidleaderSearch(intsock);//receivedleader'ssearchrequestvoidsearchBack();//receivedsearchresultfromleader以上函数是根据上面的数据结构而声明的。每个函数都有一个对应的数据结构。这些函数是整个系统的核心。设计了解决通信问题
8、的数据结构和函数的声明后,剩下需要做的便是具体编码,将声明的函数加以实现,最后测试其是否正确便真正意义上的解决了上面叙述的难点问题,也是核心问题。(3)用户接口。QPS只给用户提供了简单的操作接口,但我相信这是足够的。具体的用户接口如下:连接选择:让用户选择想要连接的Group-leaderpeer。上传数目
此文档下载收益归作者所有