RFC

请求意见稿（Request for Comments，缩写：RFC），又翻译作意见征求，意见请求，请求评论、请求评议、请求注释等，是由互联网工程任务组（IETF）发布的一系列备忘录。文件收集了有关互联网相关资讯，以及UNIX和互联网社群的软件文件，以编号排定。目前RFC文件是由互联网协会（ISOC）赞助发行。

RFC始于1969年，由当时就读加州大学洛杉矶分校（UCLA）的斯蒂芬·克罗克（Stephen D. Crocker）用来记录有关ARPANET开发的非正式文档，他是第一份RFC文档的撰写者。最终演变为用来记录互联网规范、协议、过程等的标准文件。基本的互联网通讯协定都有在RFC文件内详细说明。RFC文件还额外加入许多的论题在标准内，例如对于互联网新开发的协定及发展中所有的记录。

## RFC的历史

RFC文件格式最初作为ARPA网计划的基础起源于1969年。如今，它已经成为IETF、（IAB）还有其他一些主要的公共网络研究社区的正式出版物发布途径。

在RFC诞生之时，互联网还不存在，只有4大研究中心的4台计算机连接成的原始网络：加州大学洛杉矶分校，斯坦福研究所，加州大学圣塔芭芭拉分校，和盐湖城的犹他大学。最初的RFC作者使用打字机撰写文档，并在美国国防部国防前沿研究项目署（ARPA）研究成员之间传阅。1969年12月，他们开始通过ARPA网途径来发布新的RFC文档。第一份在1969年4月7日公开发表的RFC 1。当初克罗克为了避免打扰他的室友，是在浴室里完成这篇文档的。

在1970年代，很多后来的RFC文档同样来自加州大学洛杉矶分校，这不仅得益于加州大学洛杉矶分校的学术质量，同时也因为加州大学洛杉矶分校是ARPA网第一批Interface Message Processors（IMPs）成员之一。

由Douglas Engelbart领导的，位于Stanford Research Institute的Augmentation Research Center（ARC）是四个最初的ARPA网结点之一，也是最初的Network Information Centre，同时被社会学家记录为早期大量RFC文档的发源地。

从1969年到1998年，Jon Postel一直担任RFC文档的编辑职务。随着美国政府赞助合同的到期，Internet Society（代表IETF），和南加州大学（USC）Information Sciences Institute的网络部门合作，（在IAB领导下）负责RFC文档的起草和发布工作。Jon Postel继续担任RFC编辑直到去世。随后，由接任整个项目的领导职务，同时继续在团队中的担任职务。

庆祝RFC的30周年的RFC文件是RFC 2555。

## 中文地区的贡献

1996年3月，清华大学提交的适应不同国家和地区中文编码的汉字统一传输标准被IETF通过为RFC 1922，成为中国大陆第一个被认可为RFC文件的提交协议。

## RFC文件的架构

RFC文件只有新增，不会有取消或中途停止发行的情形。但是对于同一主题而言，新的RFC文件可以声明取代旧的RFC文件。RFC文件是纯ASCII文字档格式，可由计算机程序自动转档成其他档案格式。RFC文件有封面、目录及页首页尾和页码。RFC的章节是数字标示，但数字的小数点后不补零，例如4.9的顺序就在4.10前面，但9的前面并不补零。RFC 1000这份文件就是RFC的指南。

### 参考网站

- 中文译文：如何阅读RFC？原文网站： How to Read an RFC。

## RFC文件的产生

RFC文件是由Internet Society审核后给定编号并发行。虽然经过审核，但RFC也并非全部严肃而生硬的技术文件，偶有恶搞之作出现，尤其是4月1日愚人节所发行的恶搞RFC，例如RFC 1606: A Historical Perspective On The Usage Of IP Version 9（参见IPv9）、RFC 2324：“超文字咖啡壶控制协定”（Hyper Text Coffee Pot Control Protocol，煞有其事地写了HTCPCP这样看起来很专业的术语缩写字）。以及如前面所提到纪念RFC的30周年庆的RFC文件。

## RFC编号一览

RFC｜标题

3｜文档格式的征求稿（DOCUMENTATION CONVENTIONS）

768｜UDP

783｜TFTP

791｜IP

792｜ICMP

793｜TCP

826

854｜Telnet

894｜IP over Ethernet

903｜RARP

959｜FTP

DNS

以鸟类为载体的网际协议 （1990年的恶搞RFC）

SNMP LPR Line PRinter daemon protocol 网络互连设备基准化分析术语NTP IRC 用于互联网消息的编码化日语文字（ISO-2022-JP）

PPP

网络礼仪指导（Netiquette Guidelines），可参考：连环信SOCKS v5 Chinese Character Encoding for Internet Messages POP Version 3 Deflate 数据压缩标准 Version 1.3（DEFLATE Compressed Data Format Specification version 1.3）

Some Observations on Implementations of the Post Office Protocol (POP3)

PPP Challenge Handshake Authentication Protocol (CHAP)

Remote Authentication Dial In User Service (RADIUS)

RIPng for IPv6 PNG RFC中的用于表示要求等级的关键词（Key words for use in RFCs to Indicate Requirement Levels）

DHCP RSVP 在 LDAP/X.500 辨别名中，使用域名LDAP v3 LDAP v3: 属性语法的定义（Attribute Syntax Definitions）

LDAP v3: 通过 UTF-8 表示辨别名（UTF-8 String Representation of Distinguished Names）

LDAP v3: LDAP 检索过滤器的定义（The String Representation of LDAP Search Filters）

LDAP URL形式（The LDAP URL Format）

LDAP v3 中使用的 X.500(96) 用户字段的梗概（A Summary of the X.500 (96) User Schema for use with LDAPv3）

Remote Authentication Dial In User Service (RADIUS)

OSPF Version 2 IPSec : Security Architecture for the Internet Protocol （从 RFC2401 到 RFC2412）

RIP Version 2 Internet X.509 Public Key Infrastructure Certificate and CRL Profile IPv6 IANA的追悼（I REMEMBER IANA）

RFC的30年HTTP/1.1 OSPF for IPv6 Secret Key Transaction Authentication for DNS (TSIG)

'text/html' 媒体类型（The 'text/html' Media Type）。可参考：HTML#版本时间线远端用户拨入验证服务（RADIUS） Remote Authentication Dial In User Service (RADIUS)

RADIUS Accounting Secret Key Establishment for DNS (TKEY RR)

SIP Uniform Resource Identifiers (URIs), URLs, and Uniform Resource Names (URNs): Clarifications and Recommendations LDAP v3: 技术标准（Technical Specification）

SNMP

Internationalizing Domain Names in Applications (IDNA)

IMAP Version 4rev1 RTP

RADIUS

Generic Security Service Algorithm for Secret Key Transaction Authentication for DNS (GSS-TSIG)

Internet X.509 Public Key Infrastructure Certificate Policy and Certification Practices Framework

XMPP（Jabberを参照）

NNTP URI的常用语法（Uniform Resource Identifier (URI): Generic Syntax）

Internationalized Resource Identifiers (IRIs)

L2TP Internet X.509 Public Key Infrastructure:Certification Path Building

SSH

BGP TLS Update to DirectoryString Processing in the Internet X.509 Public Key Infrastructure Certificate and Certificate Revocation List (CRL) Profile（を更新）

HMAC SHA TSIG Algorithm Identifiers The RFC Series and RFC Editor SCTP Internet X.509 Public Key Infrastructure Certificate and Certificate Revocation List (CRL) Profile SMTP Internet Message Format Cryptographic Message Syntax (CMS)

RFC Streams, Headers, and Boilerplates Trust Anchor Format Using Trust Anchor Constraints during Certification Path Processing Updates to the Internet X.509 Public Key Infrastructure Certificate and Certificate Revocation List (CRL) Profile（を更新）

DNS Certification Authority Authorization (CAA) Resource Record Domain Name System (DNS) IANA Considerations The JavaScript Object Notation (JSON) Data Interchange Format Hypertext Transfer Protocol (HTTP/1.1): Message Syntax and Routing Hypertext Transfer Protocol (HTTP/1.1): Semantics and Content Hypertext Transfer Protocol (HTTP/1.1): Conditional Requests Hypertext Transfer Protocol (HTTP/1.1): Range Requests Hypertext Transfer Protocol (HTTP/1.1): Caching Hypertext Transfer Protocol (HTTP/1.1): Authentication Template for a Certification Practice Statement (CPS) for the Resource PKI (RPKI)

JSON Web Token (JWT)

Hypertext Transfer Protocol Version 2 (HTTP/2)

BGP MPLS-Based Ethernet VPN

HPACK: Header Compression for HTTP/2 ASCII艺术：一个真实且准确，以字元形式表现，内含奇妙美好事物的动物园（2017年恶搞RFC）

Internet Protocol, Version 6 (IPv6) Specification

### 废弃RFC

废弃RFC｜新RFC｜标题

相対URL HTML 2.0 Form-based File Upload in HTML HTML Tables A Proposed Extension to HTML : Client-Side Image Maps Internationalization of the Hypertext Markup Language Uniform Resource Identifiers (URI): Generic Syntax Internet X.509 Public Key Infrastructure Certificate Policy and Certification Practices Framework Format for Literal IPv6 Addresses in URL's Simple Mail Transfer Protocol Internet X.509 Public Key Infrastructure Certificate and Certificate Revocation List (CRL) Profile Internet X.509 Public Key Infrastructure Authority Information Access Certificate Revocation List (CRL) Extension The application/json Media Type for JavaScript Object Notation (JSON)

The JavaScript Object Notation (JSON) Data Interchange Format