[发明专利]一种局域网大文件分发方法及系统在审
申请号: | 201710089770.1 | 申请日: | 2017-02-20 |
公开(公告)号: | CN106973080A | 公开(公告)日: | 2017-07-21 |
发明(设计)人: | 张锡聪;陈志勐 | 申请(专利权)人: | 绿网天下(福建)网络科技股份有限公司 |
主分类号: | H04L29/08 | 分类号: | H04L29/08;H04L29/06 |
代理公司: | 厦门市首创君合专利事务所有限公司35204 | 代理人: | 连耀忠 |
地址: | 361000 福建省*** | 国省代码: | 福建;35 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 局域 网大 文件 分发 方法 系统 | ||
技术领域
本发明涉及计算机技术领域,特别涉及一种局域网大文件分发方法及系统。
背景技术
使用C/S模式将大文件下发给同一局域网内的多个终端时,当前一般的做法是:服务器将大文件传送给每一个客户端,这样导致服务器分发所需流量大,分发瓶颈集中在服务器上,文件下发缓慢且导致服务器长时间处理高负载状态,一旦负荷过重,还可能导致服务器宕机,文件需重新发送。比如老师通过服务器下发一个100MB的文件给60个学生终端,服务器共需下发6000MB,假如局域网宽带为100Mbps,完成整个分发过程需6000MB/100Mbps=480s,如果实在课间进行分发如此长的时间是难以接受的。
发明内容
本发明的目的在于克服现有技术的不足,提出一种克服上述问题或者至少部分地解决上述问题的一种局域网大文件分发方法及系统,通过将大文件进行切分,以文件块的形式均衡分发给各客户端,再由客户端相互进行分发,从而降低服务器压力和提升分发速度。
本发明解决其技术问题所采用的技术方案是:
一方面,一种局域网大文件分发方法,包括:
步骤1,服务器维护客户端列表信息,并将各客户端依次编号为C1、C2、…、Cn;其中,n表示处在同一局域网内的客户端的数量;
步骤2,所述服务器将文件虚拟平均切分为n块,并依次标识为F1、F2、…、Fn;
步骤3,所述服务器维护文件块信息,并将客户端列表信息和文件块信息发给所有客户端;
步骤4,所述服务器根据文件块信息将文件块Fi分发给客户端Ci;其中,i大于等于1小于等于n;
步骤5,客户端Ci根据客户端列表信息将接收到的文件块Fi分发给局域网内的其他客户端;
步骤6,各客户端根据文件块信息将接收到的文件块F1、F2、…、Fn拼接成完整文件,校验文件完整性后通知服务器。
所述服务器将文件虚拟平均切分指没有实际切分IO操作,而是通过Fseek()或seek()函数进行文件读写偏移位置来进行文件块标识。
所述文件块信息包括文件块标识、文件块目标路径、目标文件名、文件大小、文件分块数量和各文件块大小。
所述客户端列表信息包括所有客户端的IP地址和端口号。
步骤5包括:客户端Ci根据客户端列表信息中的IP地址和端口号将接收到的文件块Fi、文件块序号i和文件块Fi的大小分发给局域网内的其他客户端。
各客户端根据文件块信息将接收到的文件块F1、F2、…、Fn拼接成完整文件,校验文件完整性后通知服务器之前,还包括:
各客户端判断接收文件块超时或接收到的文件块大小不正确时,通知服务器直接分发文件块或文件。
步骤6包括:各客户端接收到一个来自其他客户端的文件块后,根据文件块信息判断所有文件块是否接收完成,如果接收完成,将接收到的文件块F1、F2、…、Fn拼接成完整文件,校验文件完整性后通知服务器;否则,等待接收到所有文件块后再进行拼接。
所述校验文件完整性后通知服务器,包括:
如果客户端根据文件块信息校验文件大小正确,则发送消息通知服务器接收成功。
本发明一种局域网大文件分发方法,当服务器有大文件需要分发给局域网内的多个客户端时,首先通过Fseek()或seek()函数对大文件进行虚拟平均切分,然后将切分后的文件块发送到对应的客户端,再由客户端相互传送文件块,所有文件块接收完成后各客户端再将文件块拼接成完整的文件,从而降低了服务器压力和提升分发速度。
依据本发明的另一个方面,提供了一种局域网大文件分发系统,包括服务器和若干处在同一局域网内的客户端;
所述服务器,用于维护客户端列表信息,并将各客户端依次编号为C1、C2、…、Cn;将文件虚拟平均切分为n块,并依次标识为F1、F2、…、Fn;维护文件块信息,并将客户端列表信息和文件块信息发给所有客户端;根据文件块信息将文件块Fi分发给客户端Ci;
所述客户端,用于根据客户端列表信息将接收到的文件块Fi分发给局域网内的其他客户端;根据文件块信息将接收到的文件块F1、F2、…、Fn拼接成完整文件,校验文件完整性后通知服务器。
所述客户端还用于判断接收文件块超时或接收到的文件块大小不正确时,通知服务器直接分发文件块或文件。
本发明提供的技术方案带来的有益效果是:降低服务器压力和提升分发速度。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于绿网天下(福建)网络科技股份有限公司,未经绿网天下(福建)网络科技股份有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201710089770.1/2.html,转载请声明来源钻瓜专利网。
- 上一篇:一种基于MQTT的门禁控制方法
- 下一篇:一种用于发布云资源的方法和装置