324 字
2 分钟
FTP
File Transfer Protocol
工作原理
服务器
- 主进程 只有一个 一直打开,准备响应新的请求
- 从进程 多个 需要时打开,负责处理单个请求 处理完单个请求后关闭
工作步骤
- 打开控制端口(21),使得客户进程能够连接
- 等待客户进程发送请求
- 启动从属进程处理请求
- 主进程继续等待其他请求
控制连接与数据连接

- 控制连接
- 负责传输请求
- 始终保持连接
- 服务端端口号为21
- 数据连接
- 负责传输数据
- 需要时打开连接 传输完数据后连接关闭
- 端口号与传输模式有关
- 主动方式:20(客户端的端口号自定)
- 被动方式:服务端与客户端商定(>1024)
- 主动与被动模式
- 主动模式服务器主动连接客户端
- 被动模式服务器被动地被客户端连
- 有点类似于控制与数据两条总线,不过这两条总线是TCP连接罢了
数据传输方式
- 文本方式:ASCII模式,以文本序列传输数据
- 二进制方式:Binary模式,以二进制序列传输数据
