📄 rfc1415.txt
字号:
RFC 1415 FTP-FTAM Gateway Specification January 1993
7. Functional Comparison of FTP and FTAM
A comprehensive comparison of the services offered by FTP and FTAM is
beyond the scope of this specification. What follows is an analysis
of several key points. Refer to [NIST 86a] and [ROSE90] for a more
complete discourse on this topic.
FTAM is not a superset of FTP; each protocol has functions that only
it performs. The set of FTAM functions is, however, larger than the
set of FTP functions.
FTP combines file management and file transfer into one protocol
engine, whereas FTAM separates management and transfer as they relate
to files.
The file transfer services of both FTP and FTAM expect a reliable
underlying end-to-end service. At a minimum, this service includes
the capability to transfer entire files between remote hosts and to
display remote filenames.
In addition to this basic file transfer service, FTAM supports the
capability to: access a few records from a file server, create a
network file system (similar to Sun's Network File System), handle
printing and spooling, and access remote database records. FTP does
not support these additional capabilities.
FTP uses TELNET services to set up a connection between the FTP
Client and FTP Server. A three-digit reply code followed by
explanatory text indicates the status of the preceding request and
provides diagnostic information explaining each transaction.
FTAM relies on the Association Control Service Element (ACSE) to
start and stop the network for network file interaction. Generally,
the ASCE establishes the application association and related
application context needed to support the FTAM protocol.
The FTAM protocol is modularized so as to keep the allowable number
of actions in any particular state relatively small. There are many
more possible sequences of FTP operations than possible sequences of
FTAM operations [NIST86].
Because FTAM is more robust than FTP, FTAM allows greater flexibility
for conveying information about files. FTAM deals only with aspects
of application processes, and leaves data representation and data
management facilities to other OSI service elements.
In contrast to the Client/Server model present in the FTP scheme,
FTAM is based on the Initiator/Responder model. The key distinction
Mindel & Slaski [Page 19]
RFC 1415 FTP-FTAM Gateway Specification January 1993
is that once the FTAM Initiator has established a connection with a
remote host, either the Initiator or Responder can request services
of the other. In the FTP realm, the Client both initiates a
connection and requests all services.
The FTP Client knows the real properties of the remote host
filesystem. FTAM, in contrast, embraces a conceptual model of a
filesystem, labeled a virtual filestore model. The virtual filestore
is a collection of files, each of which has a name that uniquely
identifies it. Each file has a set of attributes, such as ownership
information and contents, which is the data associated with the file.
One file attribute is the <Contents Type> of the file, typically of
value "FTAM-1", "FTAM-3", or "NBS-9". The FTAM Initiator only knows
the properties of the corresponding Responder and virtual filestore,
not the real properties of the filesystem on the remote host.
7.1. Loss of Functionality
As happens whenever two dissimilar protocols, or languages for that
matter, are translated, some loss of functionality is inevitable.
With reference to the FTP-FTAM gateway, several of the most blatant
losses of functionality are:
1. Diagnostics passed between protocols may not be precisely
translated.
2. The FTAM partial file (record) transfer may not be
supported.
3. Some FTAM attributes are not supported by FTP.
The primary goal of the gateway protocol mappings are to minimize
this loss of functionality. As this gateway specification and
subsequent implementations evolve, means to partially overcome loss
of functionality may become more obvious. For example, the gateway
may be able to emulate file record transfers between FTAM Initiators
and FTP Servers.
8. Mapping of Protocol Functions and Representations
The mappings presented are based upon the FTAM protocol
implementation as defined in Stable Implementation Agreements for
Open Systems Interconnection Protocols: Part 9 - FTAM Phase 2,
produced by the March 1992 Open Systems Environment Implementors'
Workshop [NIST92], and in [ISO8571-1], [ISO8571-2],[ISO8571-
3],[ISO8571-4], and [ISO8571-5]. The FTP protocol as defined in
Request for Comments [RFC959]. The mappings are strongly influenced
by the work of M. A. Wallace et. al. at NIST [NIST86] and John Scott
Mindel & Slaski [Page 20]
RFC 1415 FTP-FTAM Gateway Specification January 1993
at MITRE [MITRE87].
A key goal of the mappings presented in this document is to minimize
the loss of functionality between the two protocols. The specific
approach taken to implement the mappings is left to the discretion of
the gateway implementor. The focus of the protocol function and
representation mappings is on non-error encumbered processing. The
mapping of diagnostic and error messages is treated separately in
section 9.
At a minimum, the FTAM implementation in the FTP-FTAM gateway support
for Implementation Profiles T1 (Simple File Transfer) and M1
(Management), as defined in [NIST92], is required. These
Implementation Profiles correspond to the A/111 and A/13 Profiles of
Standards Promotion and Application Group in Europe, respectively
[NIST92].
At a minimum, the gateway support for the following is required:
ASCII and 8 bit binary file types. It should also support FTP
File Stream Mode.
The following FTAM document types: FTAM-1 (unstructured text
file), FTAM-3 (unstructured binary file), and NBS-9 (set of
directory entries).
POSIX file naming and organization conventions are assumed in these
mappings; i.e., files in the systems are assumed to be organized in a
hierarchical structure in which all of the non-terminal nodes are
directories and all of the terminal nodes are any other type of file.
The following terminology is used in the mapping specifications:
argument .......FTP Service Command argument, as used in [RFC959].
parameter ......FTAM Service Primitive parameters and attributes,
as enumerated in Tables 6, 50, and 51 of [ISO8571-
3].
The following notation is used in the mapping specifications:
Arguments and parameters are enclosed in angle brackets; e.g.,
<Action Result>
Values of arguments and parameters are enclosed in quotation
marks; e.g., "Success"
Mindel & Slaski [Page 21]
RFC 1415 FTP-FTAM Gateway Specification January 1993
FTP Service Commands and FTAM Primitives are in uppercase; e.g., F-
INITIALIZE
8.1. FTP-Initiated Gateway Service
The protocol mapping between FTP and FTAM may be one-to-zero (i.e.,
not mappable), one-to-one, or one-to-many.
The general steps taken by the FTP-FTAM gateway to provide the FTP-
Initiated service are:
1. Accept an FTP Client request at the FTP Server side of the
gateway service.
2. Map the request to the (set of) corresponding FTAM
Initiator function(s).
3. Acting as an FTAM Initiator, send the FTAM Initiator
function(s) to the FTAM Responder.
4. Accept information returned to the FTAM Initiator side of
the gateway. This information originated at the FTAM
Responder.
5. Map this returned information to the protocol form
understood by the FTP Server side of the gateway.
6. Send this returned information from the FTP Server side of
the gateway to the FTP Client.
For each FTP protocol function, the FTAM protocol functions required
to map it are identified:
FTP FTAM
------------------------------------------------------------------
ABOR F-BEGIN-GROUP, F-CANCEL, F-CLOSE, F-DESELECT, F-END-GROUP
ACCT F-INITIALIZE,
ALLO none
APPE F-BEGIN-GROUP, F-CLOSE, F-CREATE, F-DATA, F-DATA-END, F-
DESELECT, F-END-GROUP, F-OPEN, F-READ-ATTRIBUTES, F-SELECT,
F-TRANSFER-END, F-WRITE
CDUP F-BEGIN-GROUP, F-DESELECT, F-END-GROUP, F-SELECT
Mindel & Slaski [Page 22]
RFC 1415 FTP-FTAM Gateway Specification January 1993
CWD F-BEGIN-GROUP, F-END-GROUP, F-DESELECT, F-SELECT
DELE F-BEGIN-GROUP, F-DELETE, F-END-GROUP, F-SELECT
HELP none
LIST F-BEGIN-GROUP, F-CLOSE, F-DATA, F-DATA-END, F-DESELECT, F-
END-GROUP, F-OPEN, F-READ, F-READ-ATTRIBUTES, F-SELECT, F-
TRANSFER-END
MKD none
MODE none
NLST F-BEGIN-GROUP, F-CLOSE, F-DATA, F-DATA-END, F-DESELECT, F-
END-GROUP, F-OPEN, F-READ, F-SELECT, F-TRANSFER-END
NOOP none
PASS F-INITIALIZE
PASV none
PORT none
PWD F-BEGIN-GROUP, F-DESELECT, F-END-GROUP, F-READ-ATTRIBUTES,
F-SELECT
QUIT F-P-ABORT or F-U-ABORT, F-TERMINATE
REIN F-BEGIN-GROUP, F-CANCEL, F-CLOSE, F-DESELECT, F-END-GROUP
REST F-CHECK, F-RESTART
RETR F-BEGIN-GROUP, F-CLOSE, F-DATA, F-DATA-END, F-DESELECT, F-
END-GROUP, F-OPEN, F-READ, F-SELECT, F-TRANSFER-END
RMD none
RNFR F-BEGIN-GROUP, F-DESELECT, F-END-GROUP, F-SELECT
RNTO F-BEGIN-GROUP, F-CHANGE-ATTRIBUTES, F-DESELECT, F-END-
GROUP, F-SELECT
SITE F-INITIALIZE
SMNT none
Mindel & Slaski [Page 23]
RFC 1415 FTP-FTAM Gateway Specification January 1993
STAT none
STOR F-BEGIN-GROUP,F-CLOSE, F-CREATE, F-DATA, F-DATA-END, F-
DESELECT, F-END-GROUP, F-OPEN, F-READ-ATTRIBUTES, F-SELECT,
F-TRANSFER-END, F-WRITE
STOU F-BEGIN-GROUP, F-CLOSE, F-CREATE, F-DATA, F-DATA-END, F-
DESELECT, F-END-GROUP, F-OPEN, F-READ-ATTRIBUTES, F-SELECT,
F-TRANSFER-END, F-WRITE
STRU none
TYPE none
USER F-INITIALIZE
The remainder of this section presents detailed mapping procedures
for each of the FTP protocol functions. Gateway support for these
mappings is required.
8.1.1. ABOR
1. Send F-CANCEL to FTAM Responder.
2. Send the following grouped request to the FTAM Responder.
F-BEGIN-GROUP
F-CLOSE
F-DESELECT
F-END-GROUP
3. Translate FTAM Responder <Action Result> and <Diagnostic>
parameters to equivalent FTP reply code(s) and send reply
codes to FTP Client.
4. Translate FTP Client reply codes to equivalent FTAM <Action
Result> and <Diagnostic> parameters and send parameters to
FTAM Responder.
8.1.2. ACCT
1. Set <Account> parameter value for issuing F-INITIALIZE to
FTAM Responder.
2. If <Called Presentation Address>, <Initiator Identity>, and
<Filestore Password> parameters are available, attempt
connection with FTAM Responder;
Otherwise wait for additional ACCT commands.
3. Translate FTAM Responder <Action Result> and <Diagnostic>
parameters to equivalent FTP reply code(s) and send reply
codes to FTP Client.
4. Translate FTP Client reply codes to equivalent FTAM <Action
Result> and <Diagnostic> parameters and send parameters to
Mindel & Slaski [Page 24]
RFC 1415 FTP-FTAM Gateway Specification January 1993
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -