Die Verbreitung der News

Usenet ist ein gerichteter Graph. Jeder Knoten entspricht einem Host und jede Kante entspricht einem Übertragungsweg zwischen zwei Hosts. Weiterhin ist jede Kante mit einem Newsgruppenmuster beschriftet, das aussagt, welche Newsgruppenklassen entlang dieses Weges weitergeleitet werden. Die meisten dieser Kanten sind bidirektional., obwohl dies nicht ausdrücklich gefordert ist.

Wenn nun ein Artikel an einen Host gepostet wird, so versieht dieser ihn mit einer message-id und fügt noch eine Path-Headerzeile folgender Art hinzu:

Path: Rechnername!Adressant
Anschließend versendet er den Artikel entlang all der Kanten, die von seinem Knoten ausgehen. Damit er weiß, welche Artikel er schon kennt, speichert er die message-ids der Artikel, die er in den letzten N Tagen empfangen hat. (N mind. 7 --> Empfehlung aus Son-Of-1036)

Wenn jetzt ein Host einen Artikel angeboten bekommt, entscheidet er anhand der message-id, ob er ihn empfangen will oder nicht. Falls er ihn empfängt, erweitert er dann die Path-Headerzeile um seinen Rechnernamen.
Als kleine Optimierung werden Artikel nicht mehr an Hosts weitergesendet, deren Name bereits in der Path-Headerzeile auftaucht.

Nun stellt sich die Frage:
Wie kann ich in Newsgruppen posten, die mein Server gar nicht empfängt?

Die Antwort ist simpel, aber man muß erst einmal darauf kommen: Man sendet den Artikel gleichzeitig in die gewünschte Gruppe und in eine Newsgruppe, von der bekannt ist, daß sie von den meisten Hosts empfangen wird.(z.Bsp. alt.test oder de.test).
Der Artikel wird auf jeden Fall versendet, wenn eine der Gruppen in der Newsgroups-Zeile bekannt ist. Wenn nun ein Host den Artikel empfängt, der zusätzlich die gewünschte Newsgruppe empfängt, so erscheint dort der Artikel in beiden Gruppen. - tataaa
Damit man von den Reaktionen auf sein Posting auch etwas hat, versieht man seinen Artikel mit einer Followup-To-Zeile, die zusätzlich eine Gruppe enthält, die vom Poster gelesen werden kann.


zurück