FTP 概述
FTP(File Transfer Protocol,文件传输协议)用于在计算机网络上的客户端和服务器之间传输文件。
主要特点
- 带外传输(Out-of-band):控制信息和数据通过不同的连接传输
- TCP 协议:基于 TCP 的可靠传输
- 两种连接:控制连接和数据连接
连接机制
控制连接
- 端口号:21
- 用途:传输 FTP 命令和响应(如 USER、PASS、LIST、RETR)
- 特点:在整个会话期间保持打开
数据连接
- 端口号:20
- 用途:传输实际文件数据
- 特点:每次文件传输时建立,传输完成后关闭
传输模式
| 模式 | 名称 | 说明 |
|---|---|---|
| 主动模式 PORT | 服务器主动 | 客户端告知端口,服务器(端口 20)主动连接客户端 |
| 被动模式 PASV | 服务器被动 | 服务器告知端口,客户端主动连接服务器 |
被动模式适用于客户端在防火墙后的场景。
与 NFS 的区别
FTP 需要下载文件到本地才能操作;NFS(网络文件系统)允许远程访问文件,如同本地文件一样。