资源获取方法及终端设备技术

技术编号:11325072 阅读:87 留言:0更新日期:2015-04-22 13:48
本发明专利技术涉及网络技术,具体涉及一种资源获取方法及终端设备。上述方法包括:向服务器发送多播传输请求消息,多播传输请求消息包括至少一种可支持的多播传输协议的标识;判断是否在第一预设时间内接收到服务器以多播的通信方式发送的测试数据包,若是,则基于所使用的多播传输协议从该服务器中获取资源;若否,则向服务器发送点对点传输请求消息,点对点传输请求消息包括待获取资源的标识;判断是否在第二预设时间内接收到服务器发送的包括点对点通道信息的消息,若是,则利用点对点通道信息获取资源;若否,则基于超文本传送协议从该服务器中获取资源。本发明专利技术可以解决大量用户下载同一服务器上同一份数据会导致资源获取速度缓慢的问题。

【技术实现步骤摘要】

本专利技术涉及网络技术,具体涉及一种资源获取方法及终端设备
技术介绍
现有技术中,网络中的资源获取主要都是基于HTTP (Hypertext TransferProtocol,超文本传输协议)、FTP (File Transfer Protocol,文件传输协议)、RCP (RemoteCopy Protocol,远程复制协议)和P2P (Peer-to-Peer,点对点)文件传输技术的,每一种资源获取方式均具有各自的优势、劣势以及适用范围。在现有技术中,资源获取的方式通常是由用户自行设定的(比如用户使用HTTP协议或FTP协议在浏览器的网页上获取所需资源),因而对于大量用户下载同一服务器上同一份数据的应用场景,上述任意一种资源获取方式都会使得传输链路上同时存在大量重复数据,极大地影响了整体的传输效率。比如对于局域网内的数据分发场景,服务器需要同时给多个终端发送同一份大小可达几十GB的数据或者文件,按照上述任意一种传输方式均会在总体的传输链路上同时产生很多份相同的数据,不仅会造成传输链路的拥塞,还会使交互机设备的带宽成倍地增加,导致终端获取资源的速度非常缓慢。同一场景下,传统的P2P文件传输技术可以通过利用端到端的数据流量来以很快的速度完成对数据或文件的传输,但是其需要占用通信设备中路由器或网络交换机的巨大带宽,使得多份大小可达几十GB的数据或文件都需要通过路由器或网络交换机进行转发,导致终端设备上其他基于同一路由器或网络交换机的网络应用都无法正常运行。
技术实现思路
针对现有技术中的缺陷,本专利技术提供一种资源获取方法及终端设备,可以解决大量用户下载同一服务器上同一份数据会导致资源获取速度缓慢的问题。第一方面,本专利技术提供了一种终端设备,包括:发送装置,用于向服务器发送多播传输请求消息,所述多播传输请求消息包括至少一种可支持的多播传输协议的标识;判断装置,用于在所述发送装置向服务器发送所述多播传输请求消息之后,判断是否在第一预设时间内接收到所述服务器以多播的通信方式发送的测试数据包;获取装置,用于在所述判断装置判定在第一预设时间内接收到了所述服务器以多播的通信方式发送的测试数据包时,基于所使用的多播传输协议从该服务器中获取资源;所述发送装置还用于在所述判断装置判定在第一预设时间内没有接收到所述服务器以多播的通信方式发送的测试数据包时,向服务器发送点对点传输请求消息,所述点对点传输请求消息包括待获取资源的标识;所述判断装置还用于在所述发送装置向服务器发送点对点传输请求消息之后,判断是否在第二预设时间内接收到所述服务器发送的包括点对点通道信息的消息;所述获取装置还用于在所述判断装置判定在第二预设时间内接收到了所述服务器发送的包括点对点通道信息的消息时,利用所述点对点通道信息获取资源;所述获取装置还用于在所述判断装置判定在第二预设时间内没有接收到所述服务器发送的包括点对点通道信息的消息时,基于超文本传送协议从该服务器中获取资源。可选地,所述获取装置包括:发送模块,用于向服务器发送包括待获取资源的标识的消息;接收模块,用于接收所述服务器以多播的通信方式发送的多个数据单元,所述多个数据单元为所述服务器根据与所述待获取资源的标识对应的资源生成的多个数据单元;处理模块,用于基于所述所使用的多播传输协议根据所述多个数据单元得到所述待获取资源。可选地,所述处理模块具体用于在接收到的数据单元的数目达到预设值时,利用前向纠错编码算法根据接收到的多个数据单元得到所述待获取资源;其中,所述数据单元包括由待获取资源分得的多个原始数据单元和利用所述前向纠错编码算法根据所述原始数据单元得到的多个校验数据单元。可选地,所述多个原始数据单元由多个大小相同的数据块分得,所述多个相同大小的数据块由多个文件传输单元分得,每一所述文件传输单元包括由所述待获取资源分得的文件片段以及与该文件片段对应的校验信息,生成所述校验信息的数据校验编码算法包括文件完整性校验编码算法和/或循环冗余校验编码算法,所述处理模块包括:处理子模块,用于在接收到的与任一数据块对应的原始数据单元和校验数据单元的数目之和达到所述预设值时,利用前向纠错编码算法根据所述原始数据单元和校验数据单元得到该数据块;校验子模块,用于在与任一文件传输单元对应的多个数据块均已得到时,根据所述多个数据块还原该文件传输单元,并利用文件传输单元中的所述校验信息对该文件传输单元进行校验。可选地,所述处理模块还包括执行子模块,用于在校验子模块对任一文件传输单元进行的校验结果为失败时,执行以下操作中的任意一项或多项:利用前向纠错编码算法根据与该文件传输单元对应的多个数据块对该文件传输单元进行纠错;抛弃已经接收到的所有与该文件传输单元对应的数据块,并继续接收与该文件传输单元对应的数据块;向通信网络中的终端设备或服务器发送包括该文件传输单元的标识的传输请求消息,以使通信网络中的终端设备或服务器返回该文件传输单元。第二方面,本专利技术还提供了一种资源获取方法,包括:向服务器发送多播传输请求消息,所述多播传输请求消息包括至少一种可支持的多播传输协议的标识;判断是否在第一预设时间内接收到所述服务器以多播的通信方式发送的测试数据包,若是,则基于所使用的多播传输协议从该服务器中获取资源;若否,则向服务器发送点对点传输请求消息,所述点对点传输请求消息包括待获取资源的标识;判断是否在第二预设时间内接收到所述服务器发送的包括点对点通道信息的消息,若是,则利用所述点对点通道信息获取资源;若否,则基于超文本传送协议从该服务器中获取资源。可选地,所述基于所使用的多播传输协议从该服务器中获取资源,包括:向服务器发送包括待获取资源的标识的消息;接收所述服务器以多播的通信方式发送的多个数据单元,所述多个数据单元为所述服务器根据与所述待获取资源的标识对应的资源生成的多个数据单元;基于所使用的多播传输协议根据所述多个数据单元得到所述待获取资源。可选地,所述基于所使用的多播传输协议根据所述多个数据单元得到所述待获取资源,包括:当接收到的数据单元的数目达到预设值时,利用前向纠错编码算法根据接收到的多个数据单元得到所述待获取资源;其中,所述数据单元包括由待获取资源分得的多个原始数据单元和利用所述前向纠错编码算法根据所述原始数据单元得到的多个校验数据单元。可选地,所述多个原始数据单元由多个大小相同的数据块分得,所述多个相同大小的数据块由多个文件传输单元分得,每一所述文件传输单元包括由所述待获取资源分得的文件片段以及与该文件片段对应的校验信息,生成所述校验信息的数据校验编码算法包括文件完整性校验编码算法和/或循环冗余校验编码算法,所述当接收到的数据单元的数目达到预设值时,利用前向纠错编码算法根据接收到的多个数据单元得到所述待获取资源,包括:当接收到的与任一数据块对应的原始数据单元和校验数据单元的数目之和达到所述预设值时,利用前向纠错编码算法根据所述原始数据单元和校验数据单元得到该数据块;当与任一文件传输单元对应的多个数据块均已得到时,根据所述多个数据块还原该文件传输单元,并利用文件传输单元中的所述校验信息对该文件传输单元进行校验。可选地,在所述利用文件传输单元中的所述校验信息对该文件传输单元进行校验之后,还包括:当任一文件传输单元的校本文档来自技高网...

【技术保护点】
一种终端设备,其特征在于,包括:发送装置,用于向服务器发送多播传输请求消息,所述多播传输请求消息包括至少一种可支持的多播传输协议的标识;判断装置,用于在所述发送装置向服务器发送所述多播传输请求消息之后,判断是否在第一预设时间内接收到所述服务器以多播的通信方式发送的测试数据包;获取装置,用于在所述判断装置判定在第一预设时间内接收到了所述服务器以多播的通信方式发送的测试数据包时,基于所使用的多播传输协议从该服务器中获取资源;所述发送装置还用于在所述判断装置判定在第一预设时间内没有接收到所述服务器以多播的通信方式发送的测试数据包时,向服务器发送点对点传输请求消息,所述点对点传输请求消息包括待获取资源的标识;所述判断装置还用于在所述发送装置向服务器发送点对点传输请求消息之后,判断是否在第二预设时间内接收到所述服务器发送的包括点对点通道信息的消息;所述获取装置还用于在所述判断装置判定在第二预设时间内接收到了所述服务器发送的包括点对点通道信息的消息时,利用所述点对点通道信息获取资源;所述获取装置还用于在所述判断装置判定在第二预设时间内没有接收到所述服务器发送的包括点对点通道信息的消息时,基于超文本传送协议从该服务器中获取资源。...

【技术特征摘要】

【专利技术属性】
技术研发人员:蔡东赟张家柱刘娇
申请(专利权)人:北京奇虎科技有限公司奇智软件北京有限公司
类型:发明
国别省市:北京;11

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1