How does INN transfer articles?
INN (innd, nnrpd, innxmit, etc) use the NNTP protocol (Net News Transfer Protocol) described in RFC977. (There are some essential extensions to RFC977 also used.) NNTP is used to transfer articles between news servers as well as to client machines. INN runs NNTP "on top of"
TCP/IP stream sockets. There is more information in the Usenet RKT for Developers NNTP Protocol
innd is designed to accept all NNTP connections. If the connection is listed in the hosts.nntp file, it is assumed for transferring news. innd services all incoming data in a polling loop. It does this to maintain consistency in the various data files, article files, and directories. (See What data files does INN maintain?)
innd also "rejects" unwanted articles (after they have already arrived) and as directed by the newsfeeds configuration file (See the INN man page newsfeeds(5))
innd does not actually send any articles. It creates lists of articles which should be sent and directs other programs to do the actual sending.
Accepting connections from readers
If innd accepts a connection from a news reader, it passes off the connection to the smaller program nnrpd. Since nnrpd does not modify the INN data (it only reads it), there can be many nnrpd's running in parallel. If a post is accepted, nnrpd runs it through INN first.
There are some alternatives to how nnrpd starts, but there can only be one entity maintaining the data at any given time. And that is the main task of innd.
Usenet RKT For Developers NNTP Protocol
Up to Usenet RKT: How does a newsserver work?
Usenet RKT The various parts of INN (Includes Data Flow Diagram)
RKT Rapid-Links:[Search] [RKT Tips] Path: / Usenet RKT / For Providers / Getting Started / 0223.htm
You are reading from the Usenet RKT
Comments? [DocID: USERKT/INN/0223.htm]
Copyright 1997-1998, Forrest J. Cavalier III, Mib Software, INN customization and consulting