Zusammenfassung
- Nach RFC 3977 holt der Client vor
NEWNEWSdie Serverzeit mitDATE, sucht aber ab dem in der vorigen Sitzung gesicherten Zeitstempel. - Dadurch überlappen zwei Abrufe. Wiederkehrende Message-IDs sind abgleichbar; ein zwischen zwei Checkpoints übersprungener Artikel hinterlässt dagegen keinen lokalen Hinweis.
- Die Liste bleibt eine begrenzte Beobachtung von Ankünften auf einem Server, in ausgewählten Gruppen und bei verfügbarer Fähigkeit – keine Textübertragung und kein weltweites Vollarchiv.
Die Lücke zwischen zwei korrekten Antworten
Um zwölf Uhr beginnt ein Client seine Abfrage, acht Sekunden später ist die Antwort vollständig. Währenddessen erreicht ein Artikel den Server. Hat der Server seine Auswahl bereits gebildet, fehlt er in der laufenden Liste. Speichert der Client nun zwölf Uhr und acht Sekunden als nächste Grenze, liegt die Ankunft auch außerhalb des folgenden Abrufs. Beide Vorgänge melden Erfolg. Gerade deshalb ist der Verlust schwer zu entdecken.
Es existiert kein unbekannter Message-ID im lokalen Bestand, kein fehlgeschlagener Einzelabruf und kein Fehlercode. Die Lücke sieht aus wie ein Zeitraum ohne Aktivität.
RFC 3977 trennt deshalb den alten dauerhaften Checkpoint von der künftigen Grenze. Zuerst fragt der Client mit DATE die Serverzeit ab und hält sie vorläufig fest. Dann führt er NEWNEWS mit dem Wert aus der vorigen Sitzung aus. Erst nach Annahme der Antwort ersetzt er den alten Wert durch die bereits vor der Suche erfasste Zeit.
Das Verzeichnis kam vor dem Inhalt
Schon RFC 977 beschrieb 1986 NEWNEWS. Der Client nannte Newsgroups, Datum und Uhrzeit; der Server lieferte die Message-IDs der seither veröffentlichten oder empfangenen Artikel. Muster konnten den Bereich erweitern, ein führendes Ausrufezeichen Zweige ausschließen, und eine leere Liste war eine gültige Antwort.
Der Befehl lieferte keine Artikelkörper. Er war ein Entdeckungsindex, aus dem der Client weitere Abrufe plante. Eine aufgeführte Kennung bewies daher weder den Download des Inhalts noch dessen dauerhafte Verfügbarkeit.
Die ursprüngliche Syntax enthielt zusätzlich einen optionalen Distributionsfilter. RFC 2980 dokumentierte abweichende Implementierungen dieses Filters und nannte NEWNEWS als häufig deaktivierten Befehl. Standardisierung bedeutete also nicht, dass jeder Server dieselbe Oberfläche bereitstellte.
Neu war eine serverlokale Eigenschaft
RFC 3977 unterscheidet drei Schlüssel: den global gedachten Message-ID, die Kombination aus Gruppe und serverlokaler Artikelnummer sowie den Ankunftszeitstempel. Letzterer beschreibt, wann ein Artikel diesen Server erreicht hat. Er entscheidet für NEWNEWS.
Das vom Autor eingetragene Datum steuert die Auswahl nicht. Ein verspätet transportierter alter Beitrag kann für einen Server heute neu sein. Derselbe Artikel erhält auf verschiedenen Relays unterschiedliche Ankunftszeiten. Der Befehl liefert damit keine absolute Usenet-Chronik, sondern die Historie eines Beobachtungspunkts.
Auch die Uhr der Grenze muss zu diesem Punkt gehören. RFC 2980 definierte DATE als UTC aus Sicht des Servers. RFC 3977 verlangt dieselbe Uhr, mit der Artikelankünfte und Gruppenerstellungen bestimmt werden. DATE ersetzt NTP nicht. Es bringt die Abfrage in das Zeitkoordinatensystem der Instanz, die später den Vergleich ausführt.
Wiederholung als abgesicherter Übergang
Bis das Ergebnis dauerhaft angenommen ist, behält der alte Checkpoint seine Autorität. Stürzt der Client vorher ab, fragt er den alten Bereich erneut ab. Das kostet Wiederholungsarbeit, verhindert aber, dass eine lediglich begonnene Operation als abgeschlossen gilt.
RFC 3977 erlaubt sogar, den Zeitwert um zwei oder drei Minuten zurückzusetzen, um kleine Fehler abzufangen. Im Beispiel der Spezifikation erscheint derselbe Message-ID in zwei Sitzungen. Die Dublette ist der sichtbare Abdruck der Sicherheitsmarge.
Auch innerhalb einer Antwort kann sich eine Kennung wiederholen. Die Reihenfolge besitzt keine festgelegte Bedeutung, kann sich in derselben Sitzung ändern, und mehrere Vorkommen bedeuten dasselbe wie eines. Ein Client muss Mengen von Identitäten abgleichen, nicht aus Zeilenpositionen eine Chronologie ableiten.
Was die Überlappung nicht heilt
Ein korrekter Zeitübergang repariert keine zu enge Gruppenauswahl. Er aktiviert keinen nicht angekündigten Befehl und holt nichts zurück, was der Server nicht mehr melden kann. Eine abgebrochene mehrzeilige Antwort darf den Checkpoint nicht voranbringen. Ein Serverwechsel tauscht Uhr und Ankunftshistorie aus, selbst wenn das Cursorformat gleich bleibt.
Das IANA-Register der NNTP-Parameter führt NEWNEWS als Fähigkeit, die die Verfügbarkeit des Befehls anzeigt. Der Eintrag belegt interoperablen Namen und Referenz, nicht Aktivierung oder Vollständigkeit einer Installation.
Der Entwurf trifft eine eng umrissene, aber wertvolle Wahl: Er bevorzugt einen Fehler mit Beweisstück. Eine Dublette trägt ihren Message-ID, lässt sich zählen und zusammenführen. Ein übersprungener Artikel besitzt im Clientbestand nicht einmal einen Namen.
Ein Checkpoint ist eine Behauptung über die Vergangenheit
Ein Cursor bezeichnet nicht bloß den aktuellen Ort. Er erklärt den früheren Bereich für hinreichend beobachtet, sodass er nie wieder angefragt werden muss. Wer den Zeitpunkt am Ende der Antwort nimmt, kann Sekunden beglaubigen, die die Auswahl gar nicht umfasste.
NNTP ließ deshalb die künftige Grenze vor der Suche entstehen, hielt aber die alte während des Abrufs in Kraft. Erst nach Annahme wechselte die Zuständigkeit. Unsicherheit verschwand nicht; sie sollte als erkennbare Wiederholung erscheinen und nicht als makellose, falsche Stille.
Quellen
Mitgliederbriefing
Detaillierter Profilkontext
Melden Sie sich mit der richtigen Mitgliedschaftsstufe an, um das vollständige Briefing und die Quellennotizen freizuschalten.
Nur für Strategic Circle
Strategic Circle
Offen für alle Leser. Schalten Sie Profil-Briefings nach Beitritt und Anmeldung frei.
Strategic Circle beitretenNur für Leadership Alliance
Leadership Alliance
Für qualifizierte Inhaber von IP-Assets und Management; melden Sie sich an, um Leadership-Alliance-Briefings freizuschalten.
Leadership Alliance beitreten
