NNTP:Network News Transfer Protocol Overview
网络新闻传输协议(NNTP)是一种通过使用可靠的服务器-客户机流模式(如 TCP/IP 端口 119 )实现新闻文章的发行、查询、修复及记录等过程的协议。借助
NNTP ,新闻文章只需要存储在一台服务器主机上,而位于其它网络主机上的订户通过建立到新闻主机的流连接阅读到新闻文章。 NNTP 为新闻组的广泛应用建立了技术基础。
NNTP 模型在新闻组网络系统( USENET 新闻系统)后建成,但是 NNTP 对新闻文章的结构、内容及存放只作了很少的要求,因此,它很容易被其他非 USENET 系统采纳。使用 NNTP ,对于交流新闻文章的主机存在一种交互式机制来决定哪些文章需要传送。
主机想要获得新的新闻消息,或想知道哪台机器有新的新闻发送,需要通过 NNTP 联系一个甚至更多的网络邻居。然后主机客户端就会查询哪些新文章已经到达整个新闻组或某几个新闻组,这一过程借助于 NEWNEWS 指令完成。客户端将会从服务器端收到新文章的一个列表并请求传送那些他本身没有并且想要的文章。最后,客户机告诉服务器它们已收到的文章。服务器会将那些已被拷贝的和哪些需要发送的添加到其收藏夹中,所以只有那些没有重复并且客户机想要的文章能够传输。
NNTP 使用命令和响应实现通信。其中命令由命令字构成,在有些情况下带有参数。NNTP 具有很多命令。主要命令有:
- 新闻(信息ID):显示信头,空行及特定文章体(文本)。
- 信息 ID:可选域;是文章信息ID,位于文章信头。如果是空,表示当前的文章是假设的。
- 信头:等同于 ARTICLE 命令,但它只返回文章信头。
- 状态:类似于 ARTICLE 命令,但它不返回文本信息。
- 组(ggg):必需的参数 ggg 是选定的新闻组的名称。LIST 命令中包含一组有效的新闻组。成功选择响应会返回组中首尾两篇新闻的新闻号以及对存档新闻号估计。
- 新闻体:等同于 ARTICLE 命令,但它只返回新闻文本体。
- 目录:返回一列有效新闻组及相关信息。
- 新闻组:由日期和时间构成的一列新闻组会以和 LIST 命令相同的格式列出。
- NewNews:因为已经列出“日期”,所以特定的新闻组能传送或接收一组新闻信息 IDS。
- 下一个:内部维护的“当前新闻指示器”先进于当前新闻组中的下一个新闻。
- 邮件:如果邮件允许,返回响应代码340,表示传送的新闻应该发送。
- 停止:服务器程序响应 QUIT 命令,然后关闭对客户机的连接。
RFC977 中定义