[发明专利]一种基于FTP文件高效传输的方法在审
申请号: | 201710308332.X | 申请日: | 2017-05-04 |
公开(公告)号: | CN106911811A | 公开(公告)日: | 2017-06-30 |
发明(设计)人: | 姜铭 | 申请(专利权)人: | 郑州云海信息技术有限公司 |
主分类号: | H04L29/08 | 分类号: | H04L29/08 |
代理公司: | 济南信达专利事务所有限公司37100 | 代理人: | 孙园园 |
地址: | 450000 河南省郑州市*** | 国省代码: | 河南;41 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 基于 ftp 文件 高效 传输 方法 | ||
1.一种基于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)、删除临时配置文件,一次文件上传过程结束。
2.根据权利要求1所述的基于FTP文件高效传输的方法,其特征在于:所述步骤(1)中若存在指定文件对应的临时配置文件,则说明该文件将要进行断点续传。
3.根据权利要求1所述的基于FTP文件高效传输的方法,其特征在于:所述步骤(2)中文件传输格式默认为二进制格式。
4.根据权利要求1所述的基于FTP文件高效传输的方法,其特征在于:所述步骤(2)中源文件分割采用逻辑分割,只获得每个块开始和结束为止的偏移量。
5.根据权利要求1所述的基于FTP文件高效传输的方法,其特征在于:所述步骤(6)中数据传输格式为二进制格式时,发送个FTP服务器的命令为TYPE I /r/n。
6.根据权利要求1所述的基于FTP文件高效传输的方法,其特征在于:所述FTP服务器支持文件的断点续传。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于郑州云海信息技术有限公司,未经郑州云海信息技术有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201710308332.X/1.html,转载请声明来源钻瓜专利网。