FTP

FTP即文件传输协议(File Transfer Protocol),是位于OSI模型的第7层(应用层)的一种协议,FTP基于TCP/IP协议进行文件传输,是Internet文件传输服务的标准协议。

FTP原理

FTP文件传输是一种服务器/客户机的架构,由FTP客户和FTP服务器组成。FTP客户端连接到FTP服务器的端口21(默认),在整个文件传输过程中保持这个连接,用来传输控制命令,传输数据时有两种连接模式

  • 主动模式 当设置为主动模式(Standard)时,客户端发送Port指令给服务器,该指令包含客户端所打开端口号,客户端侦听这个端口号等待服务器连接传输数据,服务器收到指令后,根据指令所包含的端口号,用自己的端口20与客户端该端口建立一个连接,并进行数据传输。
  • 被动模式 当设置了被动模式(Passive)时,客户端发送Pasv指令,服务器收到指令后,打开一个临时端口(1023至65535间的任意端口号),并通过控制命令连接发送该端口给客户端,客户端收到后连接此端口来传送数据。

补动模式可在一些防火墙限制外部连接到客户端网络的情况下正常工作。

FTP服务器与客户端间传输文件前,可通过ascii(文本方式)和binary(二进制方式)指令来指定两种文件传输方式

  • ASCII传输方式 FTP服务器与客户端间传递文件时,把文件内容考虑成文本文件,比如换行、空格等压缩处理,通常这种模式传输文本文件的效率较高。
  • 二进制传输模式 FTP服务器与客户端间传递文件时,逐字节传输,不做任何修改。

当传输的类型是文本(脚本、文本、HTML、XML等)时,使用ASCII方式可提高传输效率,当为压缩包、ELF或其它专用格式时,要防止使用ASCII方式修改文件内容。一般FTP客户端具有针对文件类型来自动确定传输方式的功能。

FTP客户端

FTP客户端较多,通常我们使用除上节介绍的WinSCP外,还有FileZillaFileZilla是一款出色的自由软件。

FileZilla

界面风格较为易于使用。

在首次使用FilleZilla前注意把传输模式设置为二进制模式。从“编辑”菜单,选择“设置”,找到标签“传输”下的“文件类型”,选择“默认传输类型”为“二进制”。 为防止调试电脑端防火墙等影响,建议从“编辑”菜单,选择“设置”,找到标签“FTP”并把“传输模式”选择为“被动”

FileZilla_Setting

results matching ""

    No results matching ""