网络管理员指南 -16.网络新闻 -3.>Usenet 怎么处理新闻?

/ns/wz/net/data/20020808041206.htm

网络管理员指南 -16.网络新闻 -3.>Usenet 怎么处理新闻?


本文出自:http://www.linpus.com.tw 作者: Andrew Anderson


今天, Usenet 成长为庞大的部分。携带全部网络新闻的地点通常象一天一个无价值的60 兆字节一样转移。
当然这不仅需要有力的文件。因此,让我们看一眼大多数系统处理 Usenet 新闻的方法。

新闻被各种各样的运输通过网络散布。历史的媒介过去常是 UUCP ,但是今天主要的交通工具由因特网地点
携带。被使用的路由算法被叫充满:每个地点维持很多(新闻流入)到另外的地点的连接。由本地新闻系统产
生或接收的任何文章被提交给它们,除非它已经在那个地点被看见了,在此情况下,它被丢弃。一个地点可以
发现文章通过看路径已经穿越了的所有另外的地点:头域。这个头包含文章在bang路径标志中被提交了的所
有的系统的一张列表。

区别文章和认出副本, Usenet 文章必须携带一条消息身份(在Message-Id中被指定:头域),它联合邮寄地点
的名字和一个序列号 int 到“”.对于每篇被处理的文章,新闻系统记载这身份进入一个历
史文件,相对这个文件所有新到来的文章被检查。

在任何两个地点之间的流动可以由两个标准限定:对于一个,一篇文章被分配给一个分区(在分区中:头域)它
可以被用来限制它到某个组地点。在另一方面,交换的新闻组可以由发送或接收系统限制。允许被发送到一
个地点的新闻组和分发的集合通常被放在 sys 文件中。

文章的纯粹数字通常要求改进被做到上面的计划里。在 UUCP 网络上,自然要做的事情是,在一段时期上收集文
章,并且联合他们进入一个单个的文件,它被压缩和发送到远程地点。这被称为 batching 。

选择性的技术是阻止副本文章首先被转移的 ihave/sendme 协议,这样节省网带宽度。而不把所有的文章放在
批文件中并且发送他们,仅文章的信息 ids 被联合进一个巨人“ ihave ”信息并且发送到远程地点。它读这
条消息,把它比作它的历史文件,并且返还它希望在一个“ sendme ”信息中的文章的列表。然后仅这些文章
被发送。

当然,如果它包含从若干独立入口收到新闻的 两个大地点, ihave/sendme 才有意义,并且每个人经常为一个
新闻的有效的流动相互投票。

在因特网上的地点通常依靠使用网络新闻转移协议的 TCP/IP-based 软件, NNTP 。它在入口之间转移新闻,
并且在远程主机上提供 Usenet 存取给单个用户。

NNTP 知道三个转移新闻的不同方法。一个方法是 ihave/sendme 的一个实时的版本,也参考作为推动新闻。第
二个技术被称为拉动新闻,在那里,顾客需要一个在一个给出新闻组或在一个指定的日期以后到达服务器的地点
的层次的文章列表,并且选择它不能在它的历史文件中发现的那些。第三个模式是为了交互阅读新闻,并且允许
你或你的新闻阅读程序从指定的新闻组检索文章,象传递有不完整头的信息的文章一样。

在每个地点,新闻保留在 /var/spool/news 之下的一个目录层中,在一个分开的文件中的每篇文章,和在每个
分开的目录中的每个新闻组目录名字由新闻组名字组成,其部件是路径部件。这样, comp.os.linux.misc 文章
被保留在在/var/spool/news/comp/os/linux/misc中。在新闻组中的文章以他们到达的顺序被分配数字。这个数
字作为文件的名字进行服务。文章的数字的范围目前在网上被放在被称为活跃的一个文件中,它同时作为在你的
地点上被知道的新闻组的一张列表进行服务。

由于磁盘空间是一个有限的资源,一个人必须在某个时间后开始扔掉一些文章。这被称为到期。通常,在他们到
达以后,来自某个组和层次的文章在一个固定的天数时到期。这可以被在到期中指定终止的一个日期的海报制
服:文章头域。