Maths News System

News is a bit like mail, there are news readers and news servers which get news from A to B. News is different from mail, in that it works by sending articles to a small group of neighbours, who forward to their neighbours and so on.

News is feed to us on the basis of what we are offered, not what we ask for. We can choose not to take an article, but we do not ask for articles. When we feed news to others we have choice about what articles we send them - again they can reject these if they choose.

The protocol used for news is called NNTP. You can ask for articles with NNTP - and this is how news readers without direct access to the spool disks work. This is not our primary method of reading or recieving news.

News Transfer

At the heart of our news system is innd. The manual pages for innd and friends are surprisingly accurate and useful, so they are worth examining. Innd sits and waits for connections, spools the news and aranges for it to be queued for sending. The best way to control innd is with ctlinnd. Innd is monitered by innwatch, which will stop in if it gets into trouble.

Innd doesn't deal with users posting news, cleaning up or even the sending of news to others. If innd thinks you are a news reader ( and not a feeder ) it connects you to a nnrpd. Cleaning up is delt with by news.daily, which is run from cron. Newsxd aranges for the news to actally be sent.

News Reading and Posting

Locally people read the spool disk directly. It used to be the case that each news reader would mentain a summary of the articles. We are currently using a system where we feed the filenamed of all the articles are fed into an overview channel which produces a summary of the newsgroups under /news/spool/over.view. News readers can look at this for the summary.

Posting of news is done via a program inews - which is sgid news, so that it can read the authinfo needed to post. Netscape can read news via NNTP, though it cannot post, as it isn't able to use inews.

People can run ( say ) nn on another machine, and build their database via NNTP. This just requires read access to the server.