Alles über Newsserver (NNTP Server)


Usenet News Newsserver
Ein Usenet News Newsserver ist:

1. Eine Software zur Handhabung von Usenet Artikeln um Usenet Nachrichten zu speichern, weiterzuleiten und zur Verfügung zu stellen.

2. Ein Server (Computer) auf dem eine Newsserver Software läuft und der in erster Linie, oder ausschließlich, für das Usenet vorgesehen ist. Ein Reader Server stellt ein Schnittstelle zum Schreiben und Lesen von Artikeln bereit, in der Regel mittels eines News Client. Ein Transit Server tauscht Nachrichten mit anderen Servern aus. Normalerweise stellen Newsserver beide Funktionen bereit.

Transit Server
Moderne Transit Server verwenden NNTP, um Nachrichten kontinuierlich über das Internet auszutauschen. In der Vergangenheit wurde das UUCP Protokoll verwendet, das für DFÜ Wählverbindungen entworfen wurde.

Newsserver haben eine Verbindung mit vielen anderen Newsservern, um Artikel auszutauschen, zu verbreiten und sicherzustellen, dass keine Artikel verloren gehen können.
Die Artikel werden unter Verwendung von Informationen verbreitet die in den Kopfzeilen,
definiert nach RFC 1036, zu finden sind.

Von besonderem Interesse für Transit Server sind:

  • Message-ID – ein weltweit einzigartiger Schlüssel
  • Newsgroups – eine Liste von einer oder mehreren Newsgruppen, in denen der Artikel veröffentlicht werden soll
  • Verteilung – (optional) eine Ergänzung zu Newsgroups um die Zirkulation von Artikeln zu beschränken
  • Datum – die Zeit – wann der Artikel erstellt wurde
  • Pfad – eine Liste der Server über die ein Artikel seinen Weg zum lokalen Server genommen hat
  • Gültig bis – (optional) die Zeit, wann der Artikel gelöscht werden soll
  • Genehmigt – (optional) zeigt an, ob ein Artikel für eine moderierte Newsgroup genehmigt wurde
  • Control – (optional) enthält Anforderungen von Befehlen

In den meisten Fällen steuert der sendende Server den Artikeltransferprozess. Er vergleicht die Newsgruppen und die Verteilung jedes neu eingetroffenen Artikels mit dem Newsfeed – einer Reihe von Regeln – , die auflistet welchen Remote-Server er bedient und welche Newsgruppen der Betreiber haben will.
Einige Senderserver überprüfen auch den Pfad; Wenn der empfangende Server dort angezeigt wird, wird er nicht beliefert. Es können auch andere, lokale Regeln eingesetzt werden. Der Sender überträgt „Message-IDs“ auf den empfangenden Server. Der Empfänger zeigt dann an, welche Message-IDs er noch nicht lokal gespeichert hat, und diese Artikel werden dann geschickt.

Der empfangende Server prüft die eingehenden Artikel. Ein Posting wird normalerweise verworfen, wenn
  1. die Message-ID eines Artikel bereits vorhanden ist (das heisst, wenn es in der Zwischenzeit ein anderer Server geschickt hat),
  2. das Datum oder das Ablaufdatum zeigen, dass der Artikel zu alt ist,
  3. die Header Syntax falsch erscheint,
  4. der Genehmigt-Header für eine moderierte Newsgruppe fehlt,
  5. oder zusätzliche lokale Regeln den Empfang verbieten.
Beispiel für einen Header

Beispiel für einen Header

„Usenet hat anarchische, demokratische, feudale und oligarchische
Elemente; es lebt von deren funktionierender Kombination.“Wolfgang Kopp
Die meisten Server haben auch eine Liste der aktiven Newsgroups gespeichert. Wenn der Newsgroups-Header eines neuen Artikels nicht mit der aktiven Liste übereinstimmt, kann er verworfen, oder in einer speziellen „Junk“ Newsgruppe platziert werden. Sobald der Artikel gespeichert ist, versucht der Server ihn an jeden beliebigen Server im eigenen Newsfeed weiterzugeben.

Artikel mit Kontrollbefehlen werden gesondert behandelt. Sie werden üblicherweise in speziellen „Kontroll-Newsgruppen“ gepostet und können den Server veranlassen, automatisch außergewöhnliche Maßnahmen durchzuführen.

Die newgroup und rmgroup Befehle führen dazu, dass Newsgruppen angelegt oder entfernt werden.
Checkgroups kann verwendet werden, um die lokale aktive Gruppenliste mit einer allgemein akzeptierten Liste in Einklang zu bringen.
Der cancel Befehl wird verwendet um einen bestimmten Artikel zu löschen.
Ihave und sendme werden manchmal mit UUCP verwendet, um Listen mit angebotenen oder gewünschten Message-IDs zu übermitteln.
Version, sendsys, uuname sind Anfragen zu Serverkonfigurationsdetails.

Reader-Server
Ein Reader-Server macht die Artikel im „hierarchical disk directory format“ verfügbar, oder bietet NNTP oder IMAP-Befehle, für die Nutzung durch Newsreader.

Ein Reader-Server funktioniert oft als Transit-Server, er kann aber auch unabhängig betrieben werden, oder als alternative Schnittstelle zu einem Internet-Forum dienen.

Beim Empfang von Nachrichten, muss diese Art von Server zusätzliche Schritte für die Ablage von Artikeln in Newsgroups und die Zuweisung fortlaufender Nummern innerhalb jeder Gruppe durchzuführen. Eine Xref Zeile wird hinzugefügt, die alle Gruppen und die entsprechenden Sequenznummern auflistet, in denen die Meldung angezeigt wird.
Im Gegensatz zu Message-IDs, unterscheidet sich die Anzahl und Anordnung der Artikel auf jedem Server.
Reader Server enthalten meist auch eine News Overview (NOV) Datenbank, die es Newsreadern erlaubt schnell Nachrichtenzusammenfassungen und vorhandene Nachrichten zu bekommen.

Die meisten Reader Server unterstützen das Veröffentlichen von Nachrichten, entweder durch
NNTP oder ein spezielles inews Programm. Wird ein Artikel gepostet, ist der Vorgang ziemlich gleich wie bei einem Transit Server, aber mit zusätzlichen Kontrollen.

Für ein Posting wird der Server die fehlenden Pfad- und Message-ID Zeilen einfügen und die
Syntax der Header prüfen. Wird der Artikel in eine moderierte Newsgruppe gepostet, wird der Server versuchen ihn an den Moderator der Newsgruppe zu schicken, falls der Geprüft- Header nicht vorhanden ist. Zusätzlich finden hier Identitätskontrollen und eventuelle Filterungen statt.

Hybrid Server
Kleinere Standorte mit begrenzter Bandbreite können „Sucking“ oder „Cache“ Server betreiben. Diese haben die gleiche Rolle wie konventionelle Newsserver, aber agieren wie Newsreader, um Artikel mit anderen Reader Servern auszutauschen. Hybrid Server erlauben eine größere Flexibilität hinsichtlich der empfangenen Gruppen, da der Server Betreiber nicht manuell eingreifen muss. Sie können auch die einzige Möglichkeit zum Empfang von Nachrichten durch Remote Server sein, die keinen konventionellen Feed anbieten.