📄 rfc850.txt
字号:
RFC 850 June 1983 Standard for Interchange of USENET Messages Mark R. Horton[ This memo is distributed as an RFC only to make thisinformation easily accessible to researchers in the ARPAcommunity. It does not specify an Internet standard. ] 1. IntroductionThis document defines the standard format for interchangeof Network News articles among USENET sites. It describesthe format for articles themselves, and gives partialstandards for transmission of news. The news transmissionis not entirely standardized in order to give a good dealof flexibility to the individual hosts to choosetransmission hardware and software, whether to batch news,and so on.There are five sections to this document. Section twosection defines the format. Section three defines thevalid control messages. Section four specifies some validtransmission methods. Section five describes the overallnews propagation algorithm.2. Article FormatThe primary consideration in choosing an article format isthat it fit in with existing tools as well as possible.Existing tools include both implementations of mail andnews. (The notesfiles system from the University ofIllinois is considered a news implementation.) A standardformat for mail messages has existed for many years on theARPANET, and this format meets most of the needs ofUSENET. Since the ARPANET format is extensible,extensions to meet the additional needs of USENET areeasily made within the ARPANET standard. Therefore, therule is adopted that all USENET news articles must beformatted as valid ARPANET mail messages, according to theARPANET standard RFC 822. This standard is morerestrictive than the ARPANET standard, placing additionalrequirements on each article and forbidding use of certainARPANET features. However, it should always be possibleto use a tool expecting an ARPANET message to process anews article. In any situation where this standardconflicts with the ARPANET standard, RFC 822 should beconsidered correct and this standard in error. - 1 -An example message is included to illustrate the fields. Relay-Version: version B 2.10 2/13/83; site cbosgd.UUCP Posting-Version: version B 2.10 2/13/83; site eagle.UUCP Path: cbosgd!mhuxj!mhuxt!eagle!jerry From: jerry@eagle.uucp (Jerry Schwarz) Newsgroups: net.general Subject: Usenet Etiquette -- Please Read Message-ID: <642@eagle.UUCP> Date: Friday, 19-Nov-82 16:14:55 EST Followup-To: net.news Expires: Saturday, 1-Jan-83 00:00:00 EST Date-Received: Friday, 19-Nov-82 16:59:30 EST Organization: Bell Labs, Murray Hill The body of the article comes here, after a blank line.Here is an example of a message in the old format (beforethe existence of this standard). It is recommended thatimplementations also accept articles in this format toease upward conversion. From: cbosgd!mhuxj!mhuxt!eagle!jerry (Jerry Schwarz) Newsgroups: net.general Title: Usenet Etiquette -- Please Read Article-I.D.: eagle.642 Posted: Fri Nov 19 16:14:55 1982 Received: Fri Nov 19 16:59:30 1982 Expires: Mon Jan 1 00:00:00 1990 The body of the article comes here, after a blank line.Some news systems transmit news in the "A" format, whichlooks like this: Aeagle.642 net.general cbosgd!mhuxj!mhuxt!eagle!jerry Fri Nov 19 16:14:55 1982 Usenet Etiquette - Please Read The body of the article comes here, with no blank line.An article consists of several header lines, followed by ablank line, followed by the body of the message. Theheader lines consist of a keyword, a colon, a blank, andsome additional information. This is a subset of theARPANET standard, simplified to allow simpler software tohandle it. The "from" line may optionally include afull name, in the format above, or use the ARPANET anglebracket syntax. To keep the implementations simple, otherformats (for example, with part of the machine addressafter the close parenthesis) are not allowed. The ARPANETconvention of continuation header lines (beginning with ablank or tab) is allowed. - 2 -Certain headers are required, certain headers areoptional. Any unrecognized headers are allowed, and willbe passed through unchanged. The required headers areRelay-Version, Posting-Version, From, Date, Newsgroups,Subject, Message-ID, Path. The optional headers areFollowup-To, Date-Received, Expires, Reply-To, Sender,References, Control, Distribution, Organization.2.1 Required Headers2.1.1 Relay-Version This header line shows the versionof the program responsible for the transmission of thisarticle over the immediate link, that is, the program thatis relaying the article from the next site. For example,suppose site A sends an article to site B, and site Bforwards the article to site C. The message beingtransmitted from A to B would have a Relay-Version headeridentifying the program running on A, and the messagetransmitted from B to C would identify the program runningon B. This header can be used to interpret older headersin an upward compatible way. Relay-Version must always bethe first in a message; thus, all articles meeting thisstandard will begin with an upper case "R". No otherrestrictions are placed on the order of header lines.The line contains two fields, separated by semicolons.The fields are the version and the full domain name of thesite. The version should identify the system program used(e.g., "B") as well as a version number and versiondate. For example, the header line might contain Relay-Version: version B 2.10 2/13/83; site cbosgd.UUCPThis header should not be passed on to additional sites.A relay program, when passing an article on, shouldinclude only its own Relay-Version, not the Relay-Versionof some other site. (For upward compatibility with oldersoftware, if a Relay-Version is found in a header which isnot the first line, it should be assumed to be moved by anolder version of news and deleted.)2.1.2 Posting-Version This header identifies thesoftware responsible for entering this message into thenetwork. It has the same format as Relay-Version. Itwill normally identify the same site as the Message-ID,unless the posting site is serving as a gateway for amessage that already contains a message ID generated bymail. (While it is permissible for a gateway to use anexternally generated message ID, the message ID should bechecked to ensure it conforms to this standard and to RFC822.) - 3 -2.1.3 From The From line contains the electronic mailingaddress of the person who sent the message, in the ARPAinternet syntax. It may optionally also contain the fullname of the person, in parentheses, after the electronicaddress. The electronic address is the same as the entityresponsible for originating the article, unless the Senderheader is present, in which case the From header might notbe verified. Note that in all site and domain names,upper and lower case are considered the same, thusmark@cbosgd.UUCP, mark@cbosgd.uucp, and mark@CBosgD.UUcpare all equivalent. User names may or may not be casesensitive, for example, Billy@cbosgd.UUCP might bedifferent from BillY@cbosgd.UUCP. Programs should avoidchanging the case of electronic addresses when forwardingnews or mail.RFC 822 specifies that all text in parentheses is to beinterpreted as a comment. It is common in ARPANET mail toplace the full name of the user in a comment at the end ofthe From line. This standard specifies a more rigidsyntax. The full name is not considered a comment, but anoptional part of the header line. Either the full name isomitted, or it appears in parentheses after the electronicaddress of the person posting the article, or it appearsbefore an electronic address enclosed in angle brackets.Thus, the three permissible forms are: From: mark@cbosgd.UUCP From: mark@cbosgd.UUCP (Mark Horton) From: Mark Horton <mark@cbosgd.UUCP>Full names may contain any printing ASCII characters fromspace through tilde, with the exceptions that they may notcontain parentheses "(" or ")", or angle brackets"<" or ">". Additional restrictions may be placed onfull names by the mail standard, in particular, thecharacters comma ",", colon ":", and semicolon ";" are inadvisable in full names.2.1.4 Date The Date line (formerly "Posted") is thedate, in a format that must be acceptable both to theARPANET and to the getdate routine, that the article wasoriginally posted to the network. This date remainsunchanged as the article is propagated throughout thenetwork. One format that is acceptable to both is Weekday, DD-Mon-YY HH:MM:SS TIMEZONESeveral examples of valid dates appear in the samplearticle above. Note in particular that ctime format: Wdy Mon DD HH:MM:SS YYYY - 4 -is not acceptable because it is not a valid ARPANET date.However, since older software still generates this format,news implementations are encouraged to accept this formatand translate it into an acceptable format.The contents of the TIMEZONE field is currently subject toworldwide time zone abbreviations, including the usualAmerican zones (PST, PDT, MST, MDT, CST, CDT, EST, EDT),the other North American zones (Bering throughNewfoundland), European zones, Australian zones, and soon. Lacking a complete list at present (and unsure if anunambiguous list exists), authors of software areencouraged to keep this code flexible, and in particularnot to assume that time zone names are exactly threeletters long. Implementations are free to edit thisfield, keeping the time the same, but changing the timezone (with an appropriate adjustment to the local timeshown) to a known time zone.2.1.5 Newsgroups The Newsgroups line specifies whichnewsgroup or newsgroups the article belongs in. Multiplenewsgroups may be specified, separated by a comma.Newsgroups specified must all be the names of existingnewsgroups, as no new newsgroups will be created by simplyposting to them.Wildcards (e.g., the word "all") are never allowed in aNewsgroups line. For example, a newsgroup "net.all" isillegal, although a newsgroup name "net.sport.football" is permitted.If an article is received with a Newsgroups line listingsome valid newsgroups and some invalid newsgroups, a siteshould not remove invalid newsgroups from the list.Instead, the invalid newsgroups should be ignored. Forexample, suppose site A subscribes to the classes"btl.all" and "net.all", and exchanges news articleswith site B, which subscribes to "net.all" but not"btl.all". Suppose A receives an article with"Newsgroups: net.micro,btl.general". This article ispassed on to B because B receives net.micro, but B doesnot receive btl.general. A must leave the Newsgroup lineunchanged. If it were to remove "btl.general", theedited header could eventually reenter the "btl.all" class, resulting in an article that is not shown to userssubscribing to "btl.general". Also, followups fromoutside "btl.all" would not be shown to such users. - 5 -2.1.6 Subject The Subject line (formerly "Title")tells what the article is about. It should be suggestiveenough of the contents of the article to enable a readerto make a decision whether to read the article based onthe subject alone. If the article is submitted inresponse to another article (e.g., is a "followup") thedefault subject should begin with the four characters"Re: " and the References line is required. (The usermight wish to edit the subject of the followup, but thedefault should begin with "Re: ".)2.1.7 Message-ID The Message-ID line gives the article aunique identifier. The same message ID may not be reusedduring the lifetime of any article with the same messageID. (It is recommended that no message ID be reused forat least two years.) Message ID's have the syntax "<" "string not containing blank or >" ">"In order to conform to RFC 822, the Message-ID must havethe format "<" "unique" "@" "full domain name" ">"where "full domain name" is the full name of the host atwhich the article entered the network, including a domainthat host is in, and unique is any string of printingASCII characters, not including "<", ">", or "@". Forexample, the "unique" part could be an integerrepresenting a sequence number for articles submitted tothe network, or a short string derived from the date andtime the article was created. For example, valid messageID for an article submitted from site ucbvax in domainBerkeley.ARPA would be "<4123@ucbvax.Berkeley.ARPA>".Programmers are urged not to make assumptions about thecontent of message ID fields from other hosts, but totreat them as unknown character strings. It is not safe,for example, to assume that a message ID will be under 14characters, nor that it is unique in the first 14characters.The angle brackets are considered part of the message ID.Thus, in references to the message ID, such as theihave/sendme and cancel control messages, the anglebrackets are included. White space characters (e.g.,blank and tab) are not allowed in a message ID. Allcharacters between the angle brackets must be printingASCII characters.2.1.8 Path This line shows the path the article took toreach the current system. When a system forwards themessage, it should add its own name to the list of systemsin the Path line. The names may be separated by anypunctuation character or characters, thus - 6 -
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -