RFC 196
Mail Box Protocol
Okay so RFC 196 is from the Network Working Group ๐ธ, numbered Request for Comments #196 (NIC 7141). Richard W. Watson at SRI-ARC wrote it on July 20, 1971 ๐๏ธ. It's filed under categories A.5 and D.7, it obsoletes nothing (Obsoletes: none), and it updates nothing (Updates: none) โจ. Iconic that it's from 1971 btw ๐ญ.
A MAIL BOX PROTOCOL ๐
So the whole point of this protocol is giving every site one standard way to receive sequential files ๐ฌ, whether they're for printing right now, printing later, or something else. Files meant for later would probably live in intermediate disk files, but how a site stores, handles, manipulates, or prints a file is not this protocol's business ๐ .
Also, we're assuming there'd be a program on the sending side that sends the file in the format below, adding the optional control codes when it makes sense ๐. It could probably be accessed as a subcommand of the Telnet program ๐ป.
Why do we even need this? The Network Information Center (NIC) needs to deliver messages and documents to remote sites, and it also needs to receive documents from remote sites for cataloging, redistribution, and other purposes ๐. The big win is that nobody has to know the path name conventions or file system commands at each site ๐ง. Multiple mail boxes (128) are allowed at each site ๐ฆ, and they're identified as described below. Mail box number 0 is the default, used with the standard mail printer defined below ๐จ๏ธ.
A mail box, as we see it, is basically just a sequential file where messages and documents get appended, separated by an appropriate site dependent code ๐.
Here's the tea โ: this protocol lets people send messages directly without going through the NIC, but we really want everyone to use the NIC as much as possible ๐ซถ. That way the dialogue gets recorded, cataloged, and available for online viewing at NIC, using the powerful facilities of the ARC on Line System (NLS) ๐ .
This protocol uses established network conventions, specifically the Network Control Program, Initial Connection Protocol, and Data Transfer Protocol, NIC 7104 ๐งฉ.
The normal transmission is full 7-bit ASCII in 8-bit bytes, with the high order bit set to zero ๐ค.
The standard receiving mail printer for mail box number 0 is assumed to have a print line 72 characters wide, and a page of 66 lines ๐จ๏ธ๐. The new line convention is carriage return (X'OD') followed by line feed (X'OA'), as per the Telnet Protocol RFC 158, NIC 6768 ๐ซ. The standard printer will accept form feed (X'OC') as meaning move paper to the top of a new page ๐.
It's the sender's responsibility to control the length of the print line and page ๐. If more than 72 characters per line are sent, or if more than 66 lines are sent without a form feed, then the receiving site can handle those situations as appropriate for them ๐คท. These conventions can be changed by control codes, as described below ๐๏ธ.
A message or document sent to any mail box is a string of 8 bit bytes ๐ง.
At the head of a message or document sent to mail box number 0, there is to be an initial address string terminated by a form feed ๐ฎ. That address string is to contain the sender's name and address, plus the receiver's name and address, formatted in some reasonable, easy-to-read form so a clerk can read and distribute it ๐ฉโ๐ผ. Comments could also be included in the address string ๐ฌ.
The format of information in mail boxes other than mail box number 0 is not explicitly defined by this protocol ๐ค.
Initial Connection
Initial Connection will be as per the Official Initial Connection Protocol, Documents #2, NIC 7101, to a standard socket not yet assigned ๐. A candidate socket number would be socket #5 โจ.
Data Transmission
Data Transmission will be as per the Data Transfer Protocol, RFC 171, NIC 6793 ๐ก. Basically there's a Modes Available handshake, and then special control information and data get transmitted ๐ค. A message or document is defined to be a block of data ๐ฆ.
Control information is global. Once a control mode is set, it's assumed to apply for the life of the connection unless explicitly changed ๐. More than one document may be sent during the life of the connection, unless the infinite bit stream mode is used ๐. In that latter case, there's one message or document per connection ๐.
A reasonable convention for control information sent using the infinite bit stream mode seems to be assuming it applies only to the next data stream connection from the host that sent the control stream ๐ง .
Control Information
The sending process should be capable of letting the user indicate the control codes associated with the transmission of a mail item ๐๏ธ. The control codes can be used with any mail box number ๐.
Mail Box Number
A site may find, as is the case at NIC, that it's useful to have more than one receiving mail box, each one associated with a different process ๐งโโ๏ธ. The mail box number for material to be printed by the standard mail printer is mail box number 0, and it's used by default โจ.
Code X'DO'- Meaning: A seven bit binary number in an eight bit field with the high order bit set to zero is to follow, indicating the receiving mail box number. ๐ฎ
Transmission Code Type
The default code type is 7-bit ASCII in an 8 bit field, high order bit to zero ๐ค.
Code X'AO'- Meaning: A Data Type signal indicating that the transmission code is 7-bit ASCII in an 8-bit field, high order set to zero. ๐
Code X'A1'- Meaning: Transparency, i.e. a stream of 8 bit bytes. ๐ฆ
Code X'A2'- Meaning: EBCDIC ๐งถ
Other character codes could be added in the future ๐ฎ.
Printer Control Codes
The default settings are a print line of 72 characters and a print page of 66 lines ๐จ๏ธ.
Code X'D1'- Meaning: Set line width to 72 characters. ๐
Code X'D2'- Meaning: Use the full width of your printer. ๐จ๏ธ
Code X'D3'- Meaning: Set page size to 66 lines. ๐
Code X'D4'- Meaning: Set page size to infinite. โพ๏ธ
Other virtual printer control codes can be added in the future ๐ธ. Other classes of control codes can be added as the need arises ๐ .
[ This RFC was put into machine readable form for entry ]
[ into the online RFC archives by BBN Corp. under the ]
[ direction of Alex McKenzie. 12/96 ]
๐ฆ where this page comes from
- ietf: rfc196 1971-07
- ๐ girlified by claude-haiku-5-5 on : a language model's rewrite of the original, under its terms