1.1.1 FTP协议简介
文件传输协议(FTP),是用于从一台计算机向另一台计算机传送文件的协议,通常来讲是从计算机传输至网络服务器。FTP是首选的文件交换的方法,因为它比其他协议(HTTP、POP)要快。如果你需要交换较大的文件,你应当考虑FTP。
FTP数据是在TCP协议下通过计算机端口21发送和接受的。传输不是同步的,意着并非同时进行的,因此要比其他协议快。
1.1.2 FTP协议设计目标
• 我们更加方便地共享文件(比如共享图片、文字和程序代码等);
• 增强人们间接地(通过程序)使用远程计算机的兴趣;
• 为了增强对用户因主机之间文件传输存储系统导致的变化的保护;
• 为了可靠和高效地传输。
1.1.3 FTP协议通讯
FTP的运行按数据连接的方式可以分为主动或被动模式。在这两种情况下,客户端都会创建一个从随机非特权端口N到FTP服务器命令端口21的TCP控制连接。在主动模式下,客户端开始在端口N+1上监听来自服务器的输入数据连接(客户端发送FTP命令端口N+1,告知服务器,正在监听哪个端口)。如果客户端由于安装了防火墙无法接受输入TCP连接,那么就可以采用被动模式。在该模式下,客户使用控制连接向服务器发送一个PSAV命令,然后从服务器处接受服务器IP地址和服务器端口号,借此客户端可以打开从任意客户端端口到所收到的服务器IP地址和服务器端口号的数据连接。上述两个模式都在1998年9月升级支持IPv6,并且同时还对被动模式做了进一步的改动,使其升级为扩展的被动模式。
1.1.4 FTP客户端
FTP客户端是一个应用程序,用于与FTP服务器连接,然后与FTP服务器共同协作实现客户端与服务器之间的文件传输。FTP客户端使用不同的FTP命令并采用了GUI,因此用户可以安全、简单地同服务器之间互传文件。比较受欢迎的FTP客户端有FileZilla、WinSCP、CuteFTP。
1.1.5 FTP命令
• ABOR - 放弃文件传输
• CWD - 更改工作目录
• DELE - 删除远程文件
• LIST - 列出远程文件
• MDTM – 返回文件修改时间
• MKD - 创建远程目录
• NLST - 远程目录名单
• PASS -发送密码
• PASV -进入被动模式
• PORT -打开数据端口
• PWD – 打印工作目录
• QUIT – 终止连接
• RETR – 搜索远程文件
• RMD – 删除远程目录
• RNFR - 重命名自
• RNTO - 重命名为
• SITE - 站点相关命令
• SIZE -返回文件大小
• STOR - 将文件储存在远程主机上
• TYPE -设定传输类型
• USER – 发送用户名
1.2 最新研究
FTP协议是标准的文件传输网络协议,其基于网络对等运行。近日来,已有研究人员写出了有关文件传输协议的新文章,通过比较选择最优。研究表明,FTP协议在安卓系统中表现优越。因此,本人决定在此讨论有关FTP客户端的执行。
安卓FTP客户端认证 – 如何连接FTP服务器?
安卓FTP客户端下载 – 怎样将FTP服务器上的文件从上面下载下来?
安卓FTP客户度上传 – 如何上传文件至FTP服务器? 基于Android的FTP客户端程序的设计与实现(2):http://www.youerw.com/jisuanji/lunwen_21581.html