20.2. Usenet 究竟是什么?

关于 Usenet 最令人惊讶的事实之一是,它不属于任何组织,也没有任何形式的中央网络管理机构。事实上,Usenet 的传统认为,除了技术描述之外,你无法定义 是什么; 冒着听起来很愚蠢的风险,人们可能会将 Usenet 定义为交换 Usenet 新闻的独立站点的协作。要成为 Usenet 站点,您所要做的就是找到另一个 Usenet 站点,并与其所有者和维护者达成协议以与您交换新闻。向另一个站点提供新闻被称为 馈送,Usenet 哲学的另一个常见公理由此而来:“获得馈送,你就加入了。”

Usenet 新闻的基本单位是 文章。 这是用户编写并“发布”到网络的消息。 为了使新闻系统能够处理它,它被预先添加了管理信息,即所谓的文章标头。 它与互联网邮件标准 RFC-822 中规定的邮件标头格式非常相似,因为它由几行文本组成,每行文本都以字段名称开头,后跟一个冒号,然后是字段的值。[1]

文章被提交到一个或多个 新闻组。 可以将新闻组视为与共同主题相关的文章的论坛。 所有新闻组都按层次结构组织,每个组的名称都指示其在层次结构中的位置。 这通常使人们很容易看出一个组是关于什么的。 例如,任何人都可以从新闻组名称中看出 comp.os.linux.announce 用于发布关于名为 Linux 的计算机操作系统的公告。

然后,这些文章在所有愿意承载来自该组新闻的 Usenet 站点之间交换。 当两个站点同意交换新闻时,他们可以自由交换他们喜欢的任何新闻组,甚至可以添加他们自己的本地新闻层次结构。 例如,groucho.edu 可能有到 barnyard.edu 的新闻链接,barnyard.edu 是一个主要的新闻源,以及到它馈送新闻的几个较小站点的链接。 现在,Barnyard College 可能会接收所有 Usenet 组,而 GMU 只想承载像 scicomprec 这样的一些主要层次结构。 一些下游站点,例如一个名为 brewhq 的 UUCP 站点,将希望承载更少的新闻组,因为他们没有网络或硬件资源。 另一方面,brewhq 可能希望接收来自 fj 层次结构的新闻组,而 GMU 不承载 fj 层次结构。 因此,它与 gargleblaster.com 保持另一个链接,gargleblaster.com 承载所有 fj 组并将它们馈送到 brewhq。 新闻流如图 20-1 所示。

图 20-1。Usenet 新闻流经 Groucho Marx 大学

不过,来自 brewhq 的箭头上的标签可能需要一些解释。 默认情况下,它希望将所有本地生成的新闻发送到 groucho.edu。 但是,由于 groucho.edu 不承载 fj 组,因此没有必要向其发送来自这些组的任何消息。 因此,从 brewhq 到 GMU 的馈送被标记为all,!fj,意思是除了 fj 下的组之外的所有组都发送给它。

注释

[1]

Usenet 新闻消息的格式在 RFC-1036,“USENET 消息交换标准”中指定。