应用层中的文件传输协议 (FTP)
文件传输协议 (FTP) 是一种应用层协议,用于在本地设备(PC、智能手机等)与服务器之间传输文件。它通过互联网传输文本和二进制文件。
- FTP 在计算机之间打开两个连接——一个用于命令和回复(控制连接),另一个用于数据传输(数据连接)。
- FTP 基于客户端-服务器模型架构,使用客户端和服务器之间的控制连接和数据连接。
控制连接
控制连接在 21 号端口上建立。它是主要连接,用于在客户端和服务器之间来回发送命令。一旦建立控制连接,它就用于发送控制信息,例如用户标识、密码和远程目录等。
数据连接
数据连接在 20 号端口上启动。使用已建立的控制连接,客户端和服务器将创建单独的数据连接来传输请求的数据。
数据连接保持打开状态,直到传输完成,之后数据连接关闭。
数据连接由客户端或服务器关闭,具体取决于哪个方正在发送信息。当客户端从服务器检索数据时,服务器将在所有数据传输完成后关闭连接。当客户端向服务器传输数据时,客户端将在所有数据传输完成后终止连接。
FTP 以三种不同的模式传输文件:
- 流模式——在此模式下,FTP 将数据作为字节流处理,不区分边界。
- 块模式——在块模式下,FTP 将整个数据分解成不同的数据块。
- 压缩模式——在此模式下,FTP 使用 Lempel-Ziv 算法压缩数据。
广告