一、协议类型(Protocol type)
1、FTP(standard File Transfer Protocol)
2、FTP with TLS/SSL (Port 990 - Implicit)
3、FTP with SSL (AUTH SSL - Explicit)
4、FTP with TLS (AUTH TLS -Explicit)
5、SFTP using SSH2 (Secure Shell)
参见:http://www.cnblogs.com/h2appy/archive/2008/08/27/1277953.html
二、数据连接类型(Data connection type)
1、Use PORT(主动模式)
2、Use PASV(被动模式)
3、Use EPRT
4、Use EPSV
FTP两种工作模式:主动模式(Active FTP)和被动模式(Passive FTP)
在主动模式下,FTP客户端随机开启一个大于1024的端口N向服务器的21号端口发起连接,然后开放N+1号端口进行监听,并向服务器发出PORT N+1命令。服务器接收到命令后,会用其本地的FTP数据端口(通常是20)来连接客户端指定的端口N+1,进行数据传输。
在被动模式下,FTP库户端随机开启一个大于1024的端口N向服务器的21号端口发起连接,同时会开启N+1号端口。然后向服务器发送PASV命令,通知服务器自己处于被动模式。服务器收到命令后,会开放一个大于1024的端口P进行监听,然后用PORT P命令通知客户端,自己的数据端口是P。客户端收到命令后,会通过N+1号端口连接服务器的端口P,然后在两个端口之间进行数据传输。
总的来说,主动模式的FTP是指服务器主动连接客户端的数据端口,被动模式的FTP是指服务器被动地等待客户端连接自己的数据端口。
被动模式的FTP通常用在处于防火墙之后的FTP客户访问外界FTp服务器的情况,因为在这种情况下,防火墙通常配置为不允许外界访问防火墙之后主机,而只允许由防火墙之后的主机发起的连接请求通过。因此,在这种情况下不能使用主动模式的FTP传输,而被动模式的FTP可以良好的工作。
三、传输类型(Transfer type)
1、ASCII
2、Binary
在二进制模式下,文件以字节为单位进行传输,不进行字符转换。在传输可执行文件和图像文件时应该使用二进制。
在ASCII 模式中,将执行网络标准字符集间的字符转换。例如,行尾字符在必要时根据目标操作系统进行转换。