一种基于ap的p2p传输方法和系统的制作方法_2

文档序号:8226154阅读:来源:国知局
操作指令。
[0030]所述服务器判断自身状态还包括:
在自身状态为不活跃的情况下,调用预先存储的hash函数查找到预先存储的且与所述报文相匹配的资源块,根据所述资源块和报文信息判断是否存在预先存储的与所述报文信息相匹配的种子文件。
[0031]所述服务器根据所述报文信息判断是否存在预先存储的与所述报文信息相匹配的种子文件还包括:
在存在所述种子文件的情况下,发送所述种子文件。
[0032]所述查找与种子文件请求报文相匹配的种子文件还包括:
在未找到种子文件的情况下,所述服务器自动执行预先存储的释放该报文请求的操作指令。
[0033]根据本发明的另一方面,提供了一种基于AP的P2P传输系统,该基于AP的P2P传输系统包括: 接收报文模块,用于通过预先设置的服务器并采用预先配置的握手协议接收报文,根据所述握手协议判断报文的正确性;
状态监测模块,用于在判断结果为报文正确的情况下,所述服务器判断自身状态;文件查找模块,用于在自身状态为活跃的情况下,所述服务器根据所述报文信息判断是否存在预先存储的与所述报文信息相匹配的种子文件;
请求报文发送模块,用于在不存在所述种子文件的情况下,发送预先设置的与种子文件相匹配的种子文件请求报文;
接收存储模块,用于通过预先设置的服务器接收所述种子文件请求报文,并将所述种子文件报文存储在预先设置的中间管道内;
文件读取查找模块,用于读取预先存储在中间管道内的信息并根据所述种子文件请求报文,查找与种子文件请求报文相匹配的种子文件;
文件发送模块,用于在找到种子文件的情况下,将所述种子文件信息发送至管道; 接收反馈模块,用于所述管道接收所述种子文件,并向用户端发送所述种子文件。
[0034]根据所述握手协议判断报文的正确性还包括:
程序释放模块,用于在判断结果为报文错误的情况下,所述服务器执行预先存储的释放该报文请求的操作指令。
[0035]所述服务器判断自身状态还包括:
函数调用模块,用于在自身状态为不活跃的情况下,调用预先存储的hash函数查找到预先存储的且与所述报文相匹配的资源块,根据所述资源块和报文信息判断是否存在预先存储的与所述报文信息相匹配的种子文件。
[0036]所述服务器根据所述报文信息判断是否存在预先存储的与所述报文信息相匹配的种子文件还包括:
文件发送子模块,用于在存在所述种子文件的情况下,发送所述种子文件。
[0037]所述查找与种子文件请求报文相匹配的种子文件还包括:
释放程序子模块,用于在未找到种子文件的情况下,所述服务器自动执行预先存储的释放该报文请求的操作指令。
[0038]具体应用时,本发明中还包括内容文件传输流程,而所述内容文件传输流程与种子文件传输流程一致,均采用管道处理模式。
[0039]另外,如图3-4所示,本系统中的结构包括SOURCE,而所述SOURCE包括种子文件和可传输文件,通过管道做缓冲,并开辟单独线程处理磁盘到管道的传输,随后从管道中获取请求报文或回复报文,传送给peer。而具体的文件传输过程是从磁盘复制至请求或应答结构体中,之后复制至管道中,再从管道复制到socket队列发送至请求或应答peer,并且在文件传输时,可以根据文件的特点设置传输任务的优先等级,使得系统可以根据不同的优先等级进行相对应的处理,可以有效的提高传输效率。
[0040]此外,本发明中还包括释放程序操作,具体操作时运用三种以上的删除方法,及时删除传输完成节点/无连接节点/超时未传输完成节点/无资源节点。
[0041]另外,本发明中还增加预判函数,判断某个传输任务是否可被执行,以减少额外的传输任务,有效的提高了系统运行的稳定性和可靠性。
[0042]最后,本发明运用双向链表管理邻居节点;配置中间管道,做为缓冲,结合私有协议,减少了传输时间。
[0043]综上所述,借助于本发明的上述技术方案,相对于现有技术,本发明具有以下优占.V.1、多线程处理磁盘读写任务链,将单任务整合成多任务,可集中处理大量磁盘读写任务,分离磁盘1操作和socket传输操作,将磁盘读写时间与网络传输时间并行化,设磁盘读写时间为m,网络传输时间为n,则将原来的m+n变为n (m>n);
2、超时检查机制去除了无效任务,三种删除操作节省内存占用空间;
3、邻居节点的管理方式为双向链表结构,是单向链表查找效率的2倍,内存增加为0(1)数量级;
4、预判函数和任务等级划分借鉴了cpu任务处理模式,类型1/4的有效报文得到优先传送,可占报文总数的62%以上。
[0044]以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
【主权项】
1.一种基于AP的P2P传输方法,其特征在于,包括以下步骤: 通过预先设置的服务器并采用预先配置的握手协议接收报文,根据所述握手协议判断报文的正确性; 在判断结果为报文正确的情况下,所述服务器判断自身状态; 在自身状态为活跃的情况下,所述服务器根据所述报文信息判断是否存在预先存储的与所述报文信息相匹配的种子文件; 在不存在所述种子文件的情况下,发送预先设置的与种子文件相匹配的种子文件请求报文; 通过预先设置的服务器接收所述种子文件请求报文,并将所述种子文件报文存储在预先设置的中间管道内; 读取预先存储在中间管道内的信息并根据所述种子文件请求报文,查找与种子文件请求报文相匹配的种子文件; 在找到种子文件的情况下,将所述种子文件信息发送至管道; 所述管道接收所述种子文件,并向用户端发送所述种子文件。
2.根据权利要求1所述的基于AP的P2P传输方法,其特征在于,根据所述握手协议判断报文的正确性还包括: 在判断结果为报文错误的情况下,所述服务器执行预先存储的释放该报文请求的操作指令。
3.根据权利要求1所述的基于AP的P2P传输方法,其特征在于,所述服务器判断自身状态还包括: 在自身状态为不活跃的情况下,调用预先存储的hash函数查找到预先存储的且与所述报文相匹配的资源块,根据所述资源块和报文信息判断是否存在预先存储的与所述报文信息相匹配的种子文件。
4.根据权利要求1所述的基于AP的P2P传输方法,其特征在于,所述服务器根据所述报文信息判断是否存在预先存储的与所述报文信息相匹配的种子文件还包括: 在存在所述种子文件的情况下,发送所述种子文件。
5.根据权利要求1所述的基于AP的P2P传输方法,其特征在于,所述查找与种子文件请求报文相匹配的种子文件还包括: 在未找到种子文件的情况下,所述服务器自动执行预先存储的释放该报文请求的操作指令。
6.一种基于AP的P2P传输系统,其特征在于,包括: 接收报文模块,用于通过预先设置的服务器并采用预先配置的握手协议接收报文,根据所述握手协议判断报文的正确性; 状态监测模块,用于在判断结果为报文正确的情况下,所述服务器判断自身状态;文件查找模块,用于在自身状态为活跃的情况下,所述服务器根据所述报文信息判断是否存在预先存储的与所述报文信息相匹配的种子文件; 请求报文发送模块,用于在不存在所述种子文件的情况下,发送预先设置的与种子文件相匹配的种子文件请求报文; 接收存储模块,用于通过预先设置的服务器接收所述种子文件请求报文,并将所述种子文件报文存储在预先设置的中间管道内; 文件读取查找模块,用于读取预先存储在中间管道内的信息并根据所述种子文件请求报文,查找与种子文件请求报文相匹配的种子文件; 文件发送模块,用于在找到种子文件的情况下,将所述种子文件信息发送至管道; 接收反馈模块,用于所述管道接收所述种子文件,并向用户端发送所述种子文件。
7.根据权利要求6所述的基于AP的P2P传输系统,其特征在于,根据所述握手协议判断报文的正确性还包括: 程序释放模块,用于在判断结果为报文错误的情况下,所述服务器执行预先存储的释放该报文请求的操作指令。
8.根据权利要求6所述的基于AP的P2P传输系统,其特征在于,所述服务器判断自身状态还包括: 函数调用模块,用于在自身状态为不活跃的情况下,调用预先存储的hash函数查找到预先存储的且与所述报文相匹配的资源块,根据所述资源块和报文信息判断是否存在预先存储的与所述报文信息相匹配的种子文件。
9.根据权利要求6所述的基于AP的P2P传输系统,其特征在于,所述服务器根据所述报文信息判断是否存在预先存储的与所述报文信息相匹配的种子文件还包括: 文件发送子模块,用于在存在所述种子文件的情况下,发送所述种子文件。
10.根据权利要求6所述的基于AP的P2P传输系统,其特征在于,所述查找与种子文件请求报文相匹配的种子文件还包括: 释放程序子模块,用于在未找到种子文件的情况下,所述服务器自动执行预先存储的释放该报文请求的操作指令。
【专利摘要】本发明公开了一种基于AP的P2P传输方法,包括通过服务器并采用握手协议接收报文,根据握手协议判断报文的正确性;在判断结果为报文正确时,服务器判断自身状态;在自身状态为活跃时,服务器根据报文信息判断是否存在与报文信息种子文件;在不存在种子文件时,发送种子文件请求报文;通过服务器接收种子文件请求报文,并将种子文件报文存储在中间管道内;读取在中间管道内的信息并根据种子文件请求报文,查找种子文件;在找到种子文件时,将种子文件信息发送至管道;管道接收种子文件,并向用户端发送种子文件。本发明的有益效果为:采用管道传输技术、循环链表邻居技术及事件驱动组合的方法,有效提高了文件传输的精度和效率。
【IPC分类】H04L29-08
【公开号】CN104539728
【申请号】CN201510020819
【发明人】龙峻, 白帆, 袁洪, 王彦青
【申请人】北京国创富盛通信股份有限公司
【公开日】2015年4月22日
【申请日】2015年1月15日
当前第2页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1