WHAT IS OPEN NNTP?

The abbreviation NNTP stands for Network News Transfer Protocol. This protocol is used to access Usenet. The main idea of this article is to help new users understand NNTP and all the major tasks it performs. The explanation below will take you through the evolution of NNTP so that you can grow along with it. The information is kept general so that you get an overall idea on the topic. This explanation is not meant to be an in-depth technical study, and rather it will act as a primary guide for newbies.

When defining NNTP, we will be using the term Usenet quite often, making it appropriate to tell you a little about Usenet. Usenet is a world-wide distributed discussion system that is one of the oldest computer network communication systems still in widespread use. It’s a set of “newsgroups” with names that are organized hierarchically by subject. People use different types of software to post articles and messages on this network with the help of appropriate software and then, these articles are broadcasted to other interconnected computer systems via a broad variety of networks. It was the shift of Usenet to the internet that required it to develop a protocol for message delivery across the internet, which led to the development of NNTP. Let’s start with the story of how things evolved.

UseNet

Usenet started out as an informal network of UNIX computers, which used dial-up UUCP connections to drive messages between servers. This system worked quite fine even though it had a number of bugs and problems. With the internet developing throughout the world around the 1980s, it provided the ideal time for a more effective and reliable way of distributing Usenet articles and therefore a special and more reliable and dependable TCP/IP protocol was developed for sending these messages. This protocol was called Network News Transfer Protocol (NNTP). Today, the same protocol is used for carrying billions of copies of Usenet messages from one computer to another every day.

When Usenet started, it was a logical internetwork of cooperating hosts that contacted each other directly. In the earlier days of Usenet, a client would post a message to his or her local server and that message or post would stay in the same server until that server either contacted or was contacted by another server. The message or post would then be handed over to the next server, which was contacted and remained there until it contacted another server and so on.

Although this transfer mechanism was functional, there were many flaws in it. These servers were not connected to each other at all times and an analog modem was required to make a phone call to establish a link between the two servers in contact. This meant that the messages were supposed to wait in line until a contact was made. Modems in those days were very slow, especially by today’s standards, and thus it took quite a long time to transfer a message from one server to another. But there was no other alternative available to mend this problem.

The Birth of Today’s Internet & Creation of NNTP

With the birth of today’s modern internet everything has changed. As the arena of internet expanded globally, more and more sites started connecting with it. These sites also included the ones who were participating earlier in Usenet. The internet provided an option that was more reliable and fast at the same time. It also got rid of slow and expensive telephone calls that were required on Usenet. Due to these and many other reasons, more and more Usenet sites started to join Internet, and thus it became obvious that the future belonged to Internet.

This shift of technology from Usenet to Internet required more rethinking to be done as to how Usenet articles were moved from server to server. Over the internet, Usenet was just one of many applications, and the transfer of messages and posts was required to be structured according to the transport protocols i.e. TCP/IP or UDP.

Thus, like many other applications that had to find a way to live with the internet, Usenet had to develop an application level protocol to describe how to carry its traffic over TCP/IP and it had to develop a message delivery protocol on the same footing as the one used by e-mail; the Simple Mail Protocol (SMTP). The result? Network News Transfer Protocol (NNTP).

How Does NNTP Operate

It is quite similar to SMTP. The NNTP uses TCP, with servers always listening on TCP port 119 for any incoming connections (From clients host or other NNTP servers). As in SMTP, when two servers start communicating with each other using NNTP, the one initiating the connection becomes the client.

As the connection is established, the client sends commands (communication messages) to the server and replies are returned from the servers back to the client device. NNTP commands are sent as ASCII text, the same way as used by SMPTP, FTP, HTTP and other protocols. The responses in NNTP take the form of three-digit reply codes, as well as descriptive text, just like SMTP.

NNTP was designed to be a comprehensive system for the communication of Usenet messages. And although this is usually considered the delivery protocol for moving Usenet articles from one server to another, it is also used for connections from clients to Usenet servers for posting and reading messages. Thus, the NNTP command set is really extensive as it includes both inter-server and client-server communication. NNTP uses a set of commands for Message Propagation, which allows a server to put a request for new articles to another server, or to transfer new articles to it. For Message Posting and Access, NNTP utilizes another set of commands by which the client must put forward request lists of new newsgroups and messages to recover messages for display to a user.

Use of NNTP for News Article Propagation

All the transfer steps required by the modern Usenet communication system require Network News Transfer Protocol (NNTP). However, NNTP is most often linked with the process of Usenet article propagation as it is one of the most important functions which Network News Transfer Protocol performs for Usenet by providing a proficient way of moving heavy quantities of Usenet articles from a server to another.

Use of NNTP for News Posting and Access

The defining function of NNTP is its capability to propagate Usenet articles. However, one specific area where NNTP takes lead from its progenitor SMTP is that NNTP is used not just for inter-server communication, but is also used for the initial posting of Usenet messages, and reading them as well. The majority of NNTP commands deal with the communication between user client machines and NNTP servers, and not inter-server communications.

Other Client-Server Functions

In addition to reading and posting, NNTP includes commands to support other “miscellaneous” tasks that a Usenet user may wish to perform. The client can ask the server for help information using the help command, or get a list of new newsgroups using the newsgroup command.

This article focused on the evolution of NNTP so that when you start taking an in-depth study of this protocol you have a general background in mind. Hope it works out for you! Thank you!


Related Pages