简介
文件传输协议(File Transfer Protocol,FTP)是用于在网络上进行文件传输的一套标准协议,于应用层, 使用 TCP 传输。
工作原理
FTP 是基于客户–服务器(C/S)模型而设计的,在客户端与 FTP 服务器之间建立两个连接。
FTP与其它客户服务器程序最大的不同点就在于它在两台通信的主机之间使用了两条 TCP 连接,一条是数据连接,用于数据传送;另一条是控制连接,用于传送控制信息(命令和响应),这种将命令和数据分开传送的思想大大提高了 FTP 的效率,而其它客户服务器应用程序一般只有一条 TCP 连接。
图 1 给出了 FTP 的基本模型。客户有三个构件:用户接口、客户控制进程和客户数据传送进程。服务器有两个构件:服务器控制进程和服务器数据传送进程。在整个交互的FTP会话中,控制连接始终是处于连接状态的,数据连接则在每一次文件传送时先打开后关闭。
两种传输模式
主动模式:port模式
采用20号端口。
有防火墙时使用。
被动模式:passive模式
采用>1024的随机端口