[发明专利]一种基于FTP文件高效传输的方法在审
申请号: | 201710308332.X | 申请日: | 2017-05-04 |
公开(公告)号: | CN106911811A | 公开(公告)日: | 2017-06-30 |
发明(设计)人: | 姜铭 | 申请(专利权)人: | 郑州云海信息技术有限公司 |
主分类号: | H04L29/08 | 分类号: | H04L29/08 |
代理公司: | 济南信达专利事务所有限公司37100 | 代理人: | 孙园园 |
地址: | 450000 河南省郑州市*** | 国省代码: | 河南;41 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | 本发明公开了一种基于FTP文件高效传输的方法,属于网络技术,本发明要解决的技术问题为FTP采用单线程上传文件,造成上传速度慢以及中断后只能重新上传,造成上传效率低,采用的技术方案为该方法包括如下步骤(1)、查看是否存在指定文件对应的临时配置文件①、如果不存在,则执行步骤(2);②、如果存在,则跳转执行步骤(3);(2)、首先,获取用户设置的上传线程数目N、待上传文件在服务器端的路径、文件上传的进度和文件传输格式(默认为二进制格式);然后,根据线程数目N,将原文件分割成N块(逻辑分割,只获得每个块开始和结束位置的偏移量)。 | ||
搜索关键词: | 一种 基于 ftp 文件 高效 传输 方法 | ||
【主权项】:
一种基于FTP文件高效传输的方法,其特征在于:该方法包括如下步骤:(1)、查看是否存在指定文件对应的临时配置文件:①、如果不存在,则执行步骤(2);②、如果存在,则跳转执行步骤(3);(2)、首先,获取用户设置的上传线程数目N、待上传文件在服务器端的路径、文件上传的进度和文件传输格式(默认为二进制格式);然后,根据线程数目N,将原文件分割成N块(逻辑分割,只获得每个块开始和结束位置的偏移量);专门开启一个线程,用来建立和管理对应的临时配置文件,将每个线程完成任务情况实时记录到临时配置文件中,方便断点续传时使用,跳转执行步骤(4);(3)、首先,读取临时配置文件,获取之前的数据传输格式、上传线程数目N和各个线程的上传进度,为每个线程重新分配任务,接着之前的断点位置上传;专门开启一个线程,用来管理对应的临时配置文件,将每个线程完成任务情况实时记录到临时配置文件中,方便断点续传时使用;(4)、开启N个线程,分别创建本地套接字,应用TCP/IP协议与目标服务器建立N个控制连接;(5)、N个线程分别发送USER xxx /r/n和PASSyyy /r/n命令将用户名和密码发送到FTP服务器,登录FTP服务器;(6)、成功登录后,N个线程分别使用TYPE命令设置统一的数据传输格式;(7)、N个线程分别发送PASV /r/n命令,该命令的回应包含服务器正监听的主机地址端口地址,客户端从回复信息中获得FTP服务器的IP地址和临时开放的用于建立数据连接的端口号,用于N个线程与FTP服务器建立N个数据连接;(8)、N个线程分别发送RSET xxx /r/n命令,设置文件传输的起始偏移量,其中,xxx是起始偏移量的数值,每个线程的偏移量不同;(9)、N个线程分别发送APPE xxx /r/n命令,向FTP服务器发起文件上传请求,其中,xxx是要在服务器上创建的文件名,N个线程使用相同的文件名;(10)、N个线程与FTP服务器分别建立数据连接,每个线程分配一个文件块,开始并行上传各个文件块数据;(11)、主线程每隔十秒钟查询一次各个线程的任务完成情况,当有线程分配的传输任务完成后,利用RDT算法,为剩余任务量最多的线程分担部分传输任务;(12)、如果再次出现意外中断,则重复进行步骤(1)到步骤(11);至到所有文件块都上传完毕,则关闭所有的数据连接和控制连接;(13)、删除临时配置文件,一次文件上传过程结束。
下载完整专利技术内容需要扣除积分,VIP会员可以免费下载。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于郑州云海信息技术有限公司,未经郑州云海信息技术有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/patent/201710308332.X/,转载请声明来源钻瓜专利网。