Network Working Group R. Troth
Request for Comments: 1440 Rice University
July 1993
SIFT/UFT: Sender-Initiated/Unsolicited File Transfer
1. Introduction
This document describes a Sender-Initiated File Transfer (SIFT) protocol, also commonly called Unsolicited File Transfer (UFT) protocol. The acronyms SIFT and UFT are synonymous throughout this document. The term "unsolicited" does not imply that the file is unwanted, but that the receiver did not initiate the transaction.
2. Rationale
In certain non-IP networks, notably NJE based networks such as BITNET, it is possible to send a file to another user outside of the realm of "mail". The effect is that the file sent is not perceived as correspondence and not processed by a mail user agent. This convenient service is missed in the standard TCP/IP suite. The author maintains that traditional electronic mail is not suited to non-correspondence file transfer. There should be a means of sending non-mail, analogous to the sending of parcels rather than surface mail. Several groups and individuals have shown an interest in this type of service.
Troth [Page 1]
RFC 1440 SIFT/UFT July 1993 3. SpecificationWe define sender-initiated file transfer for IP as a TCP service as follows: a receiver program (the server or "daemon") listens on port 608 for inbound connections. Client programs connect to this port and send a sequence of commands followed by a stream of data. The entire job stream may be thought of as the concatenation of two files, 1) a control file, and 2) a data file, where the control file is plain text and the data file may be any of several formats, but is stored and sent as binary. After each command, the receiver either ACKs (signals positive acknowledgement) or NAKs (signals negative acknowledgement). The target host may reject a file for various reasons, most obvious being 1) that there is no local user matching the intended user, or 2) that there is not enough space to hold the incoming file.
Troth [Page 2]
RFC 1440 SIFT/UFT July 1993
The target "user" may actually be no user at all, but may be the name of some software service engine. An example of this is the job entry queue available as a pseudo-user on many NJE networked hosts.
4. Essential commands and Syntax:
FILE size sender [auth] USER recipient
DIST | BIN | BOX distribution-code or mail-stop
FCB | CTAPE forms-control-buffer or carriage-tape
UCS | CHARSET | TRAIN print-train or character-set
LRECL logical-record-length RECFM record-format BLKSIZE block-size
Troth [Page 3]
RFC 1440 SIFT/UFT July 1993
MODE file access permissions
5. Details:
Commands consist of command words, possibly followed by tokens delimited by white space. Command lines are ASCII terminated by CR/LF. White space may be composed of any mixture of blanks or tab characters, but use of ordinary blank space (ASCII 0x20) is strongly recommended.
Troth [Page 4]
RFC 1440 SIFT/UFT July 1993
xxx hostname UFT 1.0 server-version xxx
Troth [Page 5]
RFC 1440 SIFT/UFT July 1993
TYPE type [parm]
Troth [Page 6]
RFC 1440 SIFT/UFT July 1993
The DATA Command:
Troth [Page 7]
RFC 1440 SIFT/UFT July 1993
CLASS class FORM paper-form-code or print-stock-code DEST destination DIST distribution-code or mail-stop FCB forms-control-buffer or carriage-tape CHARSET print-train or character-set
6. References
NJE -- Network Job Entry; IBM publication SC23-0070,
7. Security Considerations
Security issues are not discussed in this memo.
Troth [Page 8]
RFC 1440 SIFT/UFT July 1993 8. Author's AddressRick Troth Rice University Information Systems Houston, Texas 77251