[发明专利]一种局域网多线程文件传输方法在审
申请号: | 201410033190.7 | 申请日: | 2014-01-24 |
公开(公告)号: | CN103841181A | 公开(公告)日: | 2014-06-04 |
发明(设计)人: | 邹国卫 | 申请(专利权)人: | 东蓝数码股份有限公司 |
主分类号: | H04L29/08 | 分类号: | H04L29/08 |
代理公司: | 暂无信息 | 代理人: | 暂无信息 |
地址: | 315000 浙江省宁波市鄞*** | 国省代码: | 浙江;33 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 局域网 多线程 文件传输 方法 | ||
技术领域
本发明涉及通信领域中文件传输方法,尤其是涉及一种局域网多线程文件传输方法。
背景技术
文件传输功能成为现在流行的即时通信工具不可少的一部分。目前,局域网内的文件传输一般采用单线程模式。随着以智能手机、平板电脑为代表的通讯终端的CPU核心数不断的提高,若只采用单线程进行文件传输,存在传输速度和效率的瓶颈,具体表现在:
1、单线程不能最大程度上使用CPU多个核心的作用。
2、单线程不能最大程度上使用文件服务器的带宽。
多线程文件传输发挥了多个核心的作用,能有效地提高文件传输的速度和效率。本文介绍的文件传输工具,通过使用多线程、自定义传输命令等技巧,实现了多个用户之间并发传输多个文件,加强了对CPU的利用率,并可以在传输过程进行简单交互的功能。
发明内容
本发明设计了一种局域网多线程文件传输方法,其解决的技术问题是(1)单线程不能最大程度上使用CPU多个核心的作用;(2)单线程不能最大程度上使用文件服务器的带宽。
为了解决上述存在的技术问题,本发明采用了以下方案:
一种局域网多线程文件传输方法,其中包括作为文件提供者的服务端第一通讯设备和要求下载第一通讯设备存储文件的客户端第二通讯设备,该方法包括以下步骤:
步骤1、所述客户端第二通讯设备发出文件传输下载请求给所述服务端第一通讯设备,请求信息包括文件名称和长度;
步骤2、所述服务端第一通讯设备接收到请求后把文件大小和名称发送给所述客户端第二通信终端;
步骤3、所述客户端第二通讯设备收到所述服务器第一通讯设备的文件信息后,根据文件大小开辟不同数量的线程,每个线程通过网络套接字把要接收的文件片段范围发送给所述服务端第一通讯设备;
步骤4、所述服务端第一通讯设备收到所述客户端第二通讯设备不同线程的网络套接字连接后,读取网络套接字中的文件分块信息,开辟新的线程与所述客户端第二通讯设备连接,并且根据所述客户端第二通讯设备不同的文件分块信息传输相应的文件分块内容;
步骤5、所述客户端第二通讯设备将所述服务端第一通讯设备发来的文件分块内容保存到一个临时文件;
步骤6、所述客户端第二通讯设备接收完所有的文件分块内容后,合并所有分块内容成一个文件,并且删除分块的所述临时文件。
进一步,所述步骤2中服务端第一通讯设备接收到请求后,从网络套接字中取出文件名称,如果本地存储空间不存在该文件或者该文件大小为0,则发送一个文件请求失败的信息给所述的客户端第二通讯设备;如果该文件存在并且大小不为0,则把文件大小和名称发送给所述的客户端第二通信终端。
进一步,所述步骤3中客户端第二通讯设备收到所述服务端第一通讯设备的文件信息后,根据文件大小开辟不同数量的线程;如果文件大小在10M以内则开辟一个线程,例如,文件大小为9M,那么这个线程通过网络套接字把要接收的文件片段范围也就是0到1发送给所述服务端第一通讯设备。如果文件大小在10M到100M之间则开辟两个线程,把文件平均分成2个分片范围,例如,文件大小为91M,那么第一个线程通过网络套接字把要接收的文件片段范围也就是0到45M发送给所述服务端第一通讯设备,第二个线程通过网络套接字把要接收的剩余文件片段范围也就是45M到文件总大小91M发送给所述服务端第一通讯设备;如果文件大小超过100M则开辟三个线程,例如,文件大小为902M,把文件平均分成3个分片范围,第一个线程通过网络套接字把要接收的文件片段范围也就是0到300M发送给所述服务端第一通讯设备,第二个线程通过网络套接字把要接收的文件片段范围也就是300M到600M发送给所述服务端第一通讯设备,第三个线程通过网络套接字把要接收的剩余文件片段范围也就是600M到902M发送给所述服务端第一通讯设备,最大开辟的线程为3个。
该局域网多线程文件传输方法与现有文件传输方法相比,具有以下有益效果:
(1)本发明通过使用多线程、自定义传输命令等方法步骤,实现了多个用户之间并发传输多个文件,加强了对CPU的利用率,发挥了多个核心的作用,能有效地提高文件传输的速度和效率,并且能够最大程度上利用带宽。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于东蓝数码股份有限公司,未经东蓝数码股份有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201410033190.7/2.html,转载请声明来源钻瓜专利网。