基本介绍
ISO FTAM:文件传输访问和管理协议(ISO FTAM:File Transfer Access and Management protocol),属于ISO应用协议,专门用于在开放环境下为客户机(InITiator发起端)和服务器(Responder响应端)系统提供文件传输服务。FTAM协议是建立在OSI协议栈上,属于OSI应用层的协议,它是由国际标准化组织(ISO)制定的标准协议,与TCP/IP中的文件传输协议FTP和网络文件系统NFS相类似,FTAM的提出目标是利用其较好的兼容性帮助用户访问不同系统的文件。
在FTAM系统中,服务器要维护有关用户和会话的面向连接的信息,直到会话结束。系统间文件的传输首先要建立一个面向连接的会话。
由于FTAM涉及的文件存储于OSI开放系统中,而且各开放实系统中文件系统的实现细节也不相同,例如UNIX系统的文件被看成是无结构的字符流,而IBM MVS系统中的文件结构则是记录的序列,因此要在不同的系统之间传送、访问和管理文件就要进行转换。这就是ISO 8571规定的文件传送、访问和管理(FTAM)标准。为了解决网络环境下的文件传送问题,屏蔽各系统的不同细节,实现透明传送,在FTAM中定义了一个标准的文件系统模型,该模型又称为虚拟文件存储器。在每个系统中配置一个本地实文件和标准文件模型之间的映射机构。当应用进程要将文件传送至远地系统的应用进程时,需要先将本地文件系统中的实文件映射为标准文件后再传送;目的方将收到的标准文件映射为本地文件系统中的实文件。两者之在FTAM利用应用层进行联系控制,使用表示层服务来解决文件传送中的编码差异使用会话层服务提供传送会话控制和同步。
FTAM与OSI
开放系统互联(OSI,Open Systems Interconnection)参考模型描述了信息如何从一台计算机的应用层软件通过网络媒体传输到另一台计算机的应用层软件中,它是由七层协议组成的概念模型,每一层说明了特定的网络功能。OSI参考模型是在1984年由国际标准化组织(ISO,International Organization for Standardizafion)发布的,现在已被公认为计算机互联通信的基本体系统结构模型。OSI参考模型把网络中计算机之间的信息传递分成七个小的易于管理的层,OSI的七层协议分别执行一个(或一组)任务,各层问相对独立,互不影响。下面是OSI参考模型的七个层次:
OSI参考模型的低层负责处理数据传输问题,物理层和数据链路层是由硬件和软件共同实现的,而其它层通常只是用软件来实现。最底层(物理层)最接近于物理网络介质(如网络电缆),它的职责就是将信息放置到介质上。OSI参考模型为计算机之间的通信提供基本框架。但模型本身不是通信方法,只有通过通信协议才能实现实际的通信。在数据网络中,协议(protocol)是控制计算机在网络介质上进行信息交换的规则和约定。一个协议实现OSI的一层或多层功能。目前已有众多通信协议,FTAM就是其中一种,它包含了OSI全部七层的功能。
物理层
在网络中,物理层为执行,维护和终止物理链路定义了电子,机械,过程及功能的规则。物理层具体定义了诸如电位级别,电位变化间隔,物理数据率,最大传输距离和物理互联装置特性。
数据链路层
数据链路层通过物理网络链路提供可靠数据传输。不同的数据链路层定义了不同的网络和协议特性,其中包括物理编址,网络拓扑结构,错误校验,帧序列以及流控。物理编址(相对应的是网络编址)定义了设备在数据链路层的编址方式;网络拓扑结构包括数据链路层的说明,该说明常常定义了设备的物理连接方式,如总线拓扑结构或拓扑结构;错误校验向发生传输错误的上层协议告警;数据帧序列重新整理并苏秋野:基于FTAM协议的电信数据处理系统传输除序列以外的帧;流控可以延数据的传输能力,以使接收设备不会因为在某一时接收到了超过其处理能力的信息流而崩溃。
网络层
网络层提供路由选择及其相关的功能,这些功能使得多个数据链路被合并到互联网络上,这是通过设备的逻辑编址(相对应的是物理编址)完成的。FTAM与之对应的参数为NET ADDRESS即交换机的ntn参数来进行编码并做为网络中的唯一标识,且作为连接时的判断条件。
传输层
传输层实现了向高层传输可靠的互联网络数据的服务。对于FTAM与之对应的参数为T_SEL。
表示层
表示层提供多种用于应用层数据的编码和转化功能。以确保从一个系统应用层发送的信息可以被另一系统的应用层识别。FTAM与之对就的参数为S_SEL。
应用层
应用层是晟接近终端用户的OSI层,这就意味着OSI应用层与用户之间是通过软件直接相互作用的。FTAM与之应的参数为P_SEL。
服务类型
传输服务类,支持文件或部分文件之间的交换。通常包括简单基本文件传输作业,支持单操作行为。
访问服务类,支持启动系统在独立或整个文件上执行相关操作。
管理服务,支持虚拟文件存储上的用户控制功能,以创建或删除文件、读和修改属性等。
传输-管理服务类综合传输服务类及其它有限文件管理功能单元能力,支持目录导航(DirectoryNavigation)和简单功能。
协议结构
功能单元
所有命令采用ASN.1信息格式。FTAM了定义以下各功能单元:
(1)内核功能单元 (Kernel Functional Unit);
(2)读功能单元 (Read Functional Unit);
(3)写功能单元 (Write Functional Unit);
(4)文件访问功能单元 (File Access Functional Unit);
(5)受限文件管理功能单元 (Limited File Management Functional Unit);
(6)增强文件管理功能单元 (Enhanced File Management Functional Unit);
(7)分组功能单元 (Grouping Functional Unit);
(8)FADU 锁定功能单元 (FADU Locking Functional Unit);
(9)恢复功能单元 (Recovery Functional Unit);
(10)重启功能单元 (Restart Functional Unit)。
用户设施
FTAM包含以下关于本地和远程文件操作的主要用户设施:
(1)FTAM附加设施(APPEND/APPLICATION_PROTOCOL=FTAM):通过该设施,在单个FTAM应用程序中或两个FTAM应用程序之间,用户可以附加一个或多个输入文件到单个输出文件中;
(2)FTAM复制设施(COPY/APPLICATION_PROTOCOL=FTAM):通过该设施,在单个FTAM应用程序中或两个FTAM应用程序之间,用户可以复制一个或多个输入文件到单个输出文件上;
(3)FTAM删除设施(DELETE/APPLICATION_PROTOCOL=FTAM):通过该设施,用户可以删除文件;
(4)FTAM目录设施(DIRECTORY/APPLICATION_PROTOCOL=FTAM):通过该设施,通话可以显示一个或多个文件属性;
(5)FTAM重命名设施(RENAME/APPLICATION_PROTOCOL=FTAM):通过该设施,用户可以对文件重命名。
工作原理
FTAM文件读取结构
按照文件的存取结构来区分,有顺序文件、索引顺序文件、层次文件、网状文件等。FTAM中文件的存取结构是一种分层结构,它是一棵有序树,每个结点都含有结点名和结构信息,还分配零个或一个包含数据信息的数据单元DU,即意味意每个节点可以拥有属于自己的数据单元,也可以没有数据单元,在通常情况下没有数据单元的节点一般会拥有自己的下级节点或是整个数据的未级节点。在访问的过层中通过全树遍历的方式进行文件读取或其它已经定义的操作,其中节点信息不包含在数据单元DU当中。
FTAM文件表示结构
表示结构描述了在文件存取结构中定义的数据单元DU(数据单元)的抽象语法。按照表示结构,数据单元是由一个或多个用抽象语法描述的数据元素组成。ISO规定用抽象语法表示法ASN.1来描述存储在文件中的信息内容。
FATM数据单元传送结构
传送结构描述在通信时FDAU的串行化,即FDAU的顺序性。传送结构规定了一个结构化文件用串行的数据元素传送时的方法。例如:
FADU-Identity::=[APPLICATION 15] CHOICE{
first-last[0]IMPLICIT INTEGER{ftrst(0), last(1)},
relative[1]IMPLICIT INTEGER{previous(0), current(1), next(2)},
begin-end[2]IMPLICIT INTEGER{begin(0), end(1)},
single-name[3]IMPLICIT Node-Name,
name-list [4]IMPLICIT SEQUENCE OF Node-Name,
fadu—number[5]IMPLICIT INTEGER}
FTAM标识结构
标识结构描述在文件存取结构中结点的命名和被传送的FDAU的标识。按FTAM规定的标识方法,既可对树中结点进行顺序访问,也可对树中任一结点进行随即访问。
在一个虚拟文件存储器中可能包含任意数目的文件,每个文件的性能由一组文件属性值决定,这些属性值是全局性的。文件的属性代表文件本身的特性,使得一个文件能够区别于一堆数据。虚拟文件存储器定义了两类文件属性:
(1)文件标识属性:表示文件本身的性质,文件标识属性包括文件名、文件标识、文件类型、文件大小、创建者标识、修改者标识以及文件创建时间和修改时间等。
(2)文件活动属性:主要涉及文件在存取、传送和管理过程中的一些信息,它具有动态的性质,在FTAM会话之外没有意义。
FTAM的虚拟文件存储器还定义了对文件的操作,这些操作分为两大类:对文件整体的操作和对文件内容(或组成成分)的操作。下面列出了FTAM中定义的文件操作: