TCP/IP协议学习记录之二十四:FTP--文件传送协议

         F T P是另一个常见的应用程序。它是用于文件传输的 I n t e r n e t标准。我们必须分清文件传送(file transfer )和文件存取 (file access) 之间的区别,前者是 F T P提供的,后者是如 N F S等应用系统提供的。由 F T P提供的文件传送是将一个完整的
文件从一个系统复制到另一个系统中。F T P支持有限数量的文件类型(A S C I I,二进制,等等)和文件结构(面向字节流或记录)。


FTP协议

     采用两个TCP连接来传输一个文件;

    1) 控制连接以通常的客户服务器方式建立。服务器以被动方式打开众所周知的用于F T P的端口(2 1),等待客户的连接。客户则以主动方式打开 T C P端口2 1,来建立连接。控制连接始终等待客户与服务器之间的通信。该连接将命令从客户传给服务器,
并传回服务器的应答。由于命令通常是由用户键入的,所以I P对控制连接的服务类型就是“最大限度地减小迟延”。
   2) 每当一个文件在客户与服务器之间传输时,就创建一个数据连接。(其他时间也可以创建,后面我们将说到)。由于该连接用于传输目的,所以I P对数据连接的服务特点就是“最大限度提高吞吐量”。

数据表示

 1. 文件类型
(a) ASCII码文件类型 (默认选择)文本文件以NVT ASCII码形式在数据连接中传输。这要求发方将本地文本文件转换成NVT ASCII码形式,而收方则将NVT ASCII码再还原成本地文本文件。其中,用NVT ASCII码传输的每行都带有一个回车,而后是一个换行。这意味着收方必须扫描每个字节,查找C R、 L F对(我们在第1 5 . 2节见过的关于T F I P的A S C I I码文件传输情况与相同)。
(b) EBCDIC文件类型 该文本文件传输方式要求两端都是 E B C D I C系统。
(c) 图像文件类型(也称为二进制文件类型) 数据发送呈现为一个连续的比特流。通常用于传输二进制文件。
(d) 本地文件类型 该方式在具有不同字节大小的主机间传输二进制文件。每一字节的比特数由发方规定。对使用8 bit字节的系统来说,本地文件以8 bit字节传输就等同于图像文件传输。
2. 格式控制
该选项只对A S C I I和E B C D I C文件类型有效。
(a) 非打印 (默认选择)文件中不含有垂直格式信息。
(b) 远程登录格式控制 文件含有向打印机解释的远程登录垂直格式控制。
(c) Fortran 回车控制 每行首字符是F o r t r a n格式控制符。
3. 结构
(a) 文件结构 (默认选择)文件被认为是一个连续的字节流。不存在内部的文件结构。
(b) 记录结构 该结构只用于文本文件(A S C I I或E B C D I C)。
(c) 页结构 每页都带有页号发送,以便收方能随机地存储各页。该结构由 TO P S - 2 0操作系统提供(主机需求 R F C不提倡采用该结构)。
4. 传输方式
它规定文件在数据连接中如何传输。
(a) 流方式 (默认选择)文件以字节流的形式传输。对于文件结构,发方在文件尾提示关闭数据连接。对于记录结构,有专用的两字节序列码标志记录结束和文件结束。
(b) 块方式 文件以一系列块来传输,每块前面都带有一个或多个首部字节。
(c) 压缩方式 一个简单的全长编码压缩方法,压缩连续出现的相同字节。在文本文件中常用来压缩空白串,在二进制文件中常用来压缩 0字节(这种方式很少使用,也不受支持。现在有一些更好的文件压缩方法来支持 F T P)。

FTP命令:

连接管理:

 数据连接有以下三大用途:
1) 从客户向服务器发送一个文件。
2) 从服务器向客户发送一个文件。
3) 从服务器向客户发送文件或目录列表。

猜你喜欢

转载自blog.csdn.net/cxy19931018/article/details/81384611
今日推荐