文件传输协议(RFC 0959 中文版).doc 文件传输协议( File Transfer Protocol, FTP ) 1. 介绍 FTP 的目标是提高文件的共享性,提供非直接使用远程计算机,使存储介质对用户透明和可靠高效地传送数据。虽然我们也可以手工使用它, 但是它的主要作用是供程序使用的。在阅读本文之前最好能够阅读 TCP 协议标准规范和 协议标准规范。 2. 概览在本节中我们将讨论一些表面上的问题,有些名词的定义请参阅 TCP 和 参考文献。我们先介绍一下( 1 )字节大小,在 FTP 中字节大小有两个:逻辑字节大小和用于传输的字节大小。后者通常是 8 位,而前者可不一定是多少了。传输字节不必等于逻辑字节大小,也不必对数据结构进行解释。( 2 )控制连接是建立在 USER-PIT 和 SERVER-PI 之间用于交换命令与应答的通信链路。(3) 数据连接是传输数据的全双工连接。传输数据可以发生在服务器 DTP 和用户 DTP 之间也可以发生在两个服务器 DTP 之间。(4) DTP : 数据传输过程( DTP ) 建立和管理数据连接, DTP 可以是主动的也可以是被动的。(5) EOR 代表记录尾。( 6) NTV 代表网络虚拟终端,它的定义与在 协议中的定义一致。( 7) NVFS 代表网络虚拟文件系统。( 8) FTP 可以传输非连续的文件,这些文件的一部分称为页。( 9) PI 代表协议解释器。( 10) 服务器 DTP 代表一种传输过程, 它通常处于“主动”状态, 它和侦听端口建立数据连接, 它还可以为传输和存储设置参数, 并根据 PI 的指令传输数据。当然, DTP 也可以转入“被动”状态。( 11) 服务器 FTP 进程,它是和用户 FTP 进程一起工作的,它由 PI和 DTP 组成。至于用户 FTP 进程则是由 PI, DTP 和用户接口组成的。下图是 FTP 服务示意图: 注意: 数据连接是双向的, 它不用整个时间都存在。上图中用户 PI 开始控制连接, 控制连接与 Telne t 协议很象。在开始阶段, 标准 FTP 命令由用户 PI 产生并通过控制连接传送到服务器进程。服务器 PI 向用户 PI 返回标准应答。 FTP 命令指定数据连接参数和文件系统操作。用户 DTP 在特定数据端口侦听, 服务器开始数据连接并以指定的参数开始数据传输。数据端口不必在开始 FTP 命令的机器上,但用户或用户 FTP 进程必须确定它在指定的数据端口上侦听。这个数据连接是全双工的。文件传输协议(RFC 0959 中文版).doc 3. 数据传输功能数据连接只传输数据, 控制连接传送命令和响应。几个命令是关于在主机间传输数据的, 数据传输基本上独立于物理结构的, 但是如果在压缩传输模式下流式传输与文件结构有关, 文件的属性与表示类型有关。 . 数据表示与保存数据是在主机间的存储设置间传送的。因为两个系统的数据存储方式不同,因此需要对它进行转换, 在传送文本时会有对 ASCII 表示的问题, 在进行二进制传送的时候, 会有不同系统对字节长度规定不同的问题, 有的系统是 7位, 有的系统可能是 32位, 这也需要进行转换。需要提供数据表示与传输模型函数, 但是 FTP 提供这方面的功能不多,超过 FTP 提
文件传输协议(RFC 0959中文版) 来自淘豆网m.daumloan.com转载请标明出处.