基于FTP的文件高效上传方法的研究与实现
发布时间:2018-09-18 17:07
【摘要】:FTP是一种广泛使用的网络服务,它是数据传输的重要通信方式,大多数的文件上传和下载任务都是靠FTP完成的,它实现了可靠且有效传输数据的功能;同时,只要进行文件传输的操作系统都支持FTP协议,就可以方便地在不同类型的计算机之间进行文件传输,使文件传输操作不会因为各类主机文件存储系统的差异而受影响。因此,FTP一直是Internet上广泛使用的服务。 FTP服务器为客户提供文件上传和下载的双向服务,而当前的应用及研究更多地侧重在FTP下载技术上,对于上传技术的研究则涉及甚少,尤其是对单个大文件有效上传技术的研究则更少。然而,现在网络实际使用中,经常需要传输以GB为单位的大文件,如多媒体文件共享等应用。大文件上传效率的高低对于多媒体文件的网络共享等应用显得越来越重要。但是,,由于这些文件容量巨大,使用传统单线程FTP上传的方式耗时长,上传过程最容易发生意外中断,导致文件重新上传的操作频繁,极大影响了数据共享的效率。再如:利用某超算中心进行高性能相关的计算时,客户端的用户需通过VPN网络上传大量的计算数据,经过超级计算机计算后取得结果,如果使用传统FTP上传,效率会很低,而采用多线程断点上传技术可以发挥显著的优势。由此可见,大文件上传技术的研究对于促进网络应用发展有着重大的意义。 传统FTP采用单线程上传文件,在网络带宽有限的条件下,对带宽的抢占优势小,导致上传速度慢;同时,一旦发生意外中断,就需要重新上传文件的全部数据,极大地影响了数据上传的效率。本文提出了根据实际情况对文件合理分块、智能为每个线程分配传输任务等一系列技术,通过多线程并行作业和断点恢复上传的方法,可以有效解决传统FTP上传操作中存在的问题。 同时,由于Linux操作系统具有开放性、高效性、良好的可移植性和丰富的网络功能等诸多优势,因此,在设计实现阶段选择了基于Linux操作系统,使用C++编程语言开发一套FTP客户端软件。经过大量对比试验和测试数据的全面分析,充分证明本技术方法的可行性与有效性,证明本论文提出的技术方案可以大幅度提高大文件上传的效率,尤其对单个大文件的上传效率的提升效果明显。
[Abstract]:FTP is a widely used network service, it is an important communication mode of data transmission. Most of the tasks of file upload and download are accomplished by FTP, which realizes the function of reliable and effective data transmission. As long as the operating system for file transfer supports FTP protocol, it can easily transfer files between different types of computers, so that file transfer operations will not be affected by the differences of file storage systems in all kinds of hosts. Therefore, FTP server has always been a widely used service on Internet. FTP server provides bidirectional service for file upload and download to clients, and the current application and research focus more on FTP download technology. There are few researches on upload technology, especially on single large file efficient upload technology. However, it is often necessary to transfer large files based on GB, such as multimedia file sharing and so on. The efficiency of large file upload is becoming more and more important for the network sharing of multimedia files. However, because of the huge capacity of these files, the traditional single-threaded FTP upload mode takes a long time, and the uploading process is most likely to be interrupted by accident, which leads to frequent file re-upload operations, which greatly affect the efficiency of data sharing. For example, when making use of a supercomputing center for high performance related calculations, the client users need to upload a large amount of computing data through the VPN network, and the results are obtained after the supercomputer calculation. If the traditional FTP is used to upload, the efficiency will be very low. The use of multi-thread breakpoint upload technology can play a significant advantage. It can be seen that the research of large file upload technology is of great significance to promote the development of network applications. Under the condition of limited network bandwidth, the traditional FTP uses single thread to upload files. Under the condition of limited network bandwidth, the preemptive advantage of bandwidth is small, which results in slow uploading speed. At the same time, once unexpected interruption occurs, all the data of the file need to be uploaded again. It greatly affects the efficiency of data upload. In this paper, according to the actual situation, a series of techniques, such as reasonably dividing files into blocks and intelligently assigning transmission tasks to each thread, are put forward to restore uploading by multi-thread parallel jobs and breakpoints. It can effectively solve the problems existing in the traditional FTP upload operation. At the same time, because the Linux operating system has many advantages, such as openness, high efficiency, good portability and rich network function, so in the stage of design and implementation, the Linux operating system is chosen. Use C programming language to develop a set of FTP client software. The feasibility and effectiveness of this technical method are fully proved through a large number of comparative experiments and comprehensive analysis of test data. It is proved that the technical scheme proposed in this paper can greatly improve the efficiency of large file uploading. Especially for a single large file upload efficiency effect is obvious.
【学位授予单位】:华南理工大学
【学位级别】:硕士
【学位授予年份】:2014
【分类号】:TP393.09
本文编号:2248566
[Abstract]:FTP is a widely used network service, it is an important communication mode of data transmission. Most of the tasks of file upload and download are accomplished by FTP, which realizes the function of reliable and effective data transmission. As long as the operating system for file transfer supports FTP protocol, it can easily transfer files between different types of computers, so that file transfer operations will not be affected by the differences of file storage systems in all kinds of hosts. Therefore, FTP server has always been a widely used service on Internet. FTP server provides bidirectional service for file upload and download to clients, and the current application and research focus more on FTP download technology. There are few researches on upload technology, especially on single large file efficient upload technology. However, it is often necessary to transfer large files based on GB, such as multimedia file sharing and so on. The efficiency of large file upload is becoming more and more important for the network sharing of multimedia files. However, because of the huge capacity of these files, the traditional single-threaded FTP upload mode takes a long time, and the uploading process is most likely to be interrupted by accident, which leads to frequent file re-upload operations, which greatly affect the efficiency of data sharing. For example, when making use of a supercomputing center for high performance related calculations, the client users need to upload a large amount of computing data through the VPN network, and the results are obtained after the supercomputer calculation. If the traditional FTP is used to upload, the efficiency will be very low. The use of multi-thread breakpoint upload technology can play a significant advantage. It can be seen that the research of large file upload technology is of great significance to promote the development of network applications. Under the condition of limited network bandwidth, the traditional FTP uses single thread to upload files. Under the condition of limited network bandwidth, the preemptive advantage of bandwidth is small, which results in slow uploading speed. At the same time, once unexpected interruption occurs, all the data of the file need to be uploaded again. It greatly affects the efficiency of data upload. In this paper, according to the actual situation, a series of techniques, such as reasonably dividing files into blocks and intelligently assigning transmission tasks to each thread, are put forward to restore uploading by multi-thread parallel jobs and breakpoints. It can effectively solve the problems existing in the traditional FTP upload operation. At the same time, because the Linux operating system has many advantages, such as openness, high efficiency, good portability and rich network function, so in the stage of design and implementation, the Linux operating system is chosen. Use C programming language to develop a set of FTP client software. The feasibility and effectiveness of this technical method are fully proved through a large number of comparative experiments and comprehensive analysis of test data. It is proved that the technical scheme proposed in this paper can greatly improve the efficiency of large file uploading. Especially for a single large file upload efficiency effect is obvious.
【学位授予单位】:华南理工大学
【学位级别】:硕士
【学位授予年份】:2014
【分类号】:TP393.09
【参考文献】
相关期刊论文 前7条
1 黎苑文;程明智;徐秀花;杨义先;;断点续传及多线程机制在远程传版中的应用研究[J];北京印刷学院学报;2012年06期
2 骆斌,费翔林;多线程技术的研究与应用[J];计算机研究与发展;2000年04期
3 刘轶,郑守淇,钱德沛;一种分布式共享存储系统的线程分配算法[J];计算机研究与发展;2000年05期
4 郑燕飞,余海燕;Linux的多线程机制探讨与实践[J];计算机应用;2001年01期
5 黄珍生;;一种基于带宽的文件分块动态下载模型[J];计算机应用与软件;2010年10期
6 廖乐林;;断点续传的原理探讨和编程应用[J];科技信息(科学教研);2007年23期
7 王魁生;卢梦侨;王晓波;;一种基于网络状况的多线程下载调度算法[J];软件导刊;2011年04期
本文编号:2248566
本文链接:https://www.wllwen.com/guanlilunwen/ydhl/2248566.html