FTP(File Transfer Protocol,文件传输协议)用于在远端服务器和本地主机之间传输文件,是IP网络上传输文件的通用协议。在万维(WWW,World Wide Web)出现以前,用户使用命令行方式传输文件,最通用的应用程序就是FTP。虽然目前大多数用户在通常情况下选择使用Email 和Web 传输文件,但是FTP 仍然有着比较广泛的应用。FTP 协议在TCP/IP 协议族中属于应用层协议,用于在远端服务器和本地客户端之间传输文件,使用TCP 端口20 和21 进行传输。端口20 用于传输数据,端口21 用于传输控制消息。FTP 协议基本操作在RFC959 中进行了描述。
FTP 有两种文件传输模式:
二进制模式,用于传输程序文件(比如后缀名为.app、.bin 和.btm 的文件);
ASCII 码模式,用于传输文本格式的文件(比如后缀名为.txt、.bat 和.cfg 的文件)。
FTP 的实现
设备在支持 FTP 协议上有两种方式: 设备作为 FTP 客户端:用户在PC 上通过终端仿真程序或Telnet 程序连接到设备(设备作为FTP 客户端),执行ftp 命令,建立设备与远程FTP 服务器的连接,访问远程FTP 服务器上的文件。 设备作为 FTP 服务器:用户运行FTP 客户端程序,作为FTP 客户端,登录到设备上进行访问(用户登录前,网络管理员需要事先配置好FTP 服务器的IP 地址)。
TFTP 概述
TFTP(Trivial File Transfer Protocol,简单文件传输协议)也是用于在远端服务器和本地主机之间、传输文件的,相对于FTP,TFTP 没有复杂的交互存取接口和认证控制,适用于客户端和服务器之间不需要复杂交互的环境。TFTP 协议的运行基于UDP 协议,使用UDP 端口69 进行数据传输。TFTP 协议基本操作在RFC1986 中进行了描述。
TFTP 传输文件有两种模式:
二进制模式,用于传输程序文件(比如后缀名为.app、.bin 和.btm 的文件);
ASCII 码模式,用于传输文本格式的文件(比如后缀名为.txt、.bat 和.cfg 的文件)。
TFTP 的实现
目前,设备只能作为 TFTP 客户端,不支持作为TFTP 服务器。TFTP 传输请求是由客户端发起的,当 TFTP 客户端需要从服务器下载文件时,由客户端向TFTP 服务器发送读请求包,然后从服务器接收数据,并向服务器发送确认;当 TFTP 客户端需要向服务器上传文件时,由客户端向TFTP 服务器发送写请求包,然后向服务器发送数据,并接收服务器的确认。