
一、概 述
1.FTP服务支持文本(ASCII)和二进制(Binary)传输模式,能够在上述模式之间进行切换。
2.FTP在实际文件传输中,无需对文件的内容进行修改或解释,即明码传输,因此安全性较差。
二、原 理
1.进程:FTP【Windows操作系统】,FTPD【UNIX操作系统】
2.连接类型:
1控制连接(Control Connection)
Ⅰ主要用于传送在实际通信过程中需要执行的FTP命令及其响应。
Ⅱ 该连接是在执行FTP命令时由客户端建立的通往FTP服务器的连接。
Ⅲ 该连接不传输数据,仅用于传输控制数据内部的FTP命令及其响应。
Ⅳ 需要带宽小。
2数据连接(Data Connection)
Ⅰ 用于传输用户的数据
Ⅱ 当客户端通过验证之后,客户端需要和服务器协调具体的传输参数(如:ASCII或二进制代码)
Ⅲ 全双工传输
3.说明:
⑴ 控制连接建立后并不立即建立数据连接,而是需要服务器端通过一定的方式来验证客户端的身份,以决定是否可以进行数据传输。
⑵ 在数据连接存在的时间内,控制连接必然存在。
⑶ 当控制连接断开后,数据连接自动关闭。
4. 示意图
控制连接(21)
数据连接(20)
三、FTP的基本命令
1. 服务方式:匿名用户、面向用户的FTP代转
2. 执行顺序:
① 启动:在客户端启动FTP应用程序,建立FTP连接
② 登录:用户名,密码验证。
③ 选择传输模式和传输目录【默认:ASCII】
④ 进行数据传输(get下载文件,put上传文件)
⑤ 关闭连接
3.FTP常用命令
| 命 令 | 说 明 |
| ascii | 设置ASCII传输模式【默认】 |
| binary | 设置二进制传输模式 |
| cd | 进入指定目录 |
| cdup | 切换到父目录 |
| open | 建立一个ftp连接 |
| close | 中断ftp会话,不从ftp客户程序返回 |
| disconnect | 中断当前ftp会话 |
| mget | 下载多个文件 |
| mput | 从本地文件系统上传多个文件 |
| lcd | 切换本地工作目录 |
⑴ ftp ⑵ ftp open
