News Server - Transit Server

Transit Server

Modern transit servers usually use NNTP to exchange news continually over the Internet and similar always-on connections. In the past, servers normally employed the UUCP protocol, which was designed for intermittent dial-up connections. Other ad hoc protocols, including e-mail, are less commonly seen. News servers normally connect with multiple peers, with the redundancy helping to spread loads and ensure that articles are not lost. Smaller sites, called leaf nodes, are connected to one other major server.

Articles are routed based on information found in the header lines defined in RFC 1036. Of particular interest to a transit server are:

  • Message-ID - a globally unique key
  • Newsgroups - a list of one or more newsgroups where the article is intended to appear
  • Distribution - (optional) a supplement to Newsgroups, used to restrict circulation of articles.
  • Date - the time when the article was created
  • Path - a list of the servers an article passed through on its way to the local server
  • Expires - (optional) the time when it is requested that the article be deleted
  • Approved - (optional) indicates an article that has been accepted for a moderated newsgroup
  • Control - (optional) contains command requests

In most cases, the sending server controls the article transfer process. It compares the Newsgroups and Distribution of each newly arrived article against a set of patterns called newsfeeds, listing each remote server and the newsgroups its operator wishes to receive. Some senders also examine the Path; if the receiving server appears in this line, it is not offered. Other local rules may also be added. The sender transmits matching articles' Message-IDs to the receiving server. The receiver indicates which Message-IDs it has not yet stored locally, and those articles are sent.

The receiving server examines the incoming articles. A message is normally discarded if the Message-ID is duplicated by an article already received (i.e., another server sent it in the meantime), the Date or Expires lines indicate that the article is too old, the header syntax appears to be invalid, the Approved header is missing for a moderated newsgroup, or additional local rules disallow it. Most servers also maintain a list of active newsgroups. If the Newsgroups header of a new article does not match the active list, it may be discarded or placed in a special "junk" newsgroup. Once the article is stored, the server attempts to retransmit it to any servers in its own newsfeed list.

Articles with Control lines are given special handling. They are typically filed in special "control" newsgroups and may cause the server to automatically carry out exceptional actions. The newgroup and rmgroup commands can cause newsgroups to be created or removed; checkgroups can be used to reconcile the local active list with a commonly accepted set; and cancel commands are used to request the deletion of a specific article. ihave and sendme are sometimes used with UUCP to transmit lists of offered and wanted Message-IDs. Other commands (version, sendsys, uuname) are requests for server configuration details. Once used to create network maps, they now are generally obsolete.

Specialized transit servers may omit some of these checks. Other hosts will then need to perform the checks, but the reduced processing overhead allows articles to be relayed in less time.

Read more about this topic:  News Server

Famous quotes containing the word transit:

    My esoteric doctrine, is that if you entertain any doubt, it is safest to take the unpopular side in the first instance. Transit from the unpopular, is easy ... but from the popular to the unpopular is so steep and rugged that it is impossible to maintain it.
    William Lamb Melbourne, 2nd Viscount (1779–1848)