⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 rfc850.txt

📁 RFC 相关的技术文档
💻 TXT
📖 第 1 页 / 共 3 页
字号:
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 + -