Zusammenfassung

  • RFC 5291 erlaubt einem BGP-Empfänger, typisierte Outbound Route Filters an den Peer zu senden. Dieser kann sie zusätzlich zu seiner lokalen Export-Policy anwenden und Updates vermeiden, die später verworfen würden.
  • ADD, REMOVE und REMOVE-ALL verändern nur den vom Peer gelieferten, sitzungsgebundenen ORF-Zustand; PERMIT und DENY drücken einen Wunsch aus. Lokale Exportfilter bleiben unantastbar, und der Peer darf die Präferenz ablehnen.
  • IMMEDIATE macht Mutation und Re-Advertisement sichtbar; DEFER speichert zunächst nur. Der Nachweis reicht von Quelle und Wire-Encoding über empfangenen Zustand und lokalen Export bis Adj-RIB-Out, UPDATE und Empfänger-RIB und beginnt nach jeder Sitzung neu.

Ein Vorher-Nachher-Vergleich am Kundenrouter wirkt überzeugend: Aus fast einer Million IPv4-Routen werden einige Hundert, Speicher und CPU sinken. Der Änderungsbericht behauptet, der Provider sende nur noch den bestellten Feed.

Dieselbe Ansicht entsteht mit einem gewöhnlichen Inbound-Filter, während der Provider weiterhin alles sendet. Bewiesen ist lokale Ablehnung, nicht vermiedene Arbeit beim Nachbarn. ORF schafft die Möglichkeit, früher zu filtern; nur beidseitige Laufzeitdaten beweisen die Wirkung.

Die Präferenz läuft gegen die Richtung der Routen

Normalerweise baut der Sender aus Loc-RIB und lokaler Outbound-Policy ein peer-spezifisches Adj-RIB-Out. Der Empfänger wendet danach seine Inbound-Policy an. Beide Netze behalten ihre Grenze.

ORF ergänzt ein begrenztes Rücksignal. Der Empfänger schickt Filtereinträge, die der Sender für genau diesen Empfänger in den Outbound-Filter aufnehmen kann. Routen laufen weiterhin vom Provider zum Kunden; der Wunsch nach weniger Information läuft zurück.

RFC 5291 verlangt Komposition. Empfangene ORFs wirken zusätzlich zu lokal konfigurierten Filtern. Der Kunde kann weniger verlangen, aber keine Sicherheitsregel, Geschäftsgrenze oder Vertraulichkeitsentscheidung des Providers entfernen. REMOVE-ALL löscht alle Einträge des angegebenen empfangenen ORF, nicht die gesamte Export-Policy.

Die Einträge sind eine lokale Präferenz, die der Peer honorieren kann oder nicht. Capability-Verhandlung öffnet eine Schnittstelle, keine Fernsteuerung. Der Empfänger behält deshalb seinen Inbound-Schutz und prüft das Ergebnis.

Capability ist ein gerichteter, typisierter Schnitt

Capability Code 3 wird im OPEN mit AFI/SAFI, ORF-Typ und Send/Receive-Richtung angekündigt. Ein universelles „ORF an“ gibt es nicht.

Nur der exakte Schnitt ist verwendbar. Will der Kunde Address Prefix ORF für IPv4 senden, während der Provider diesen Typ nur für IPv6 empfängt, besteht keine IPv4-Beziehung. Sendefähigkeit beweist keine Empfangsfähigkeit; eine Address Family beweist keine andere.

Der Schnitt beeinflusst den Start. Ist er für eine Familie nicht leer, soll der künftige Sender laut RFC 5291 vor einem qualifizierenden Route Refresh keine Routen ankündigen. Das kann ein einfacher Refresh oder ein ORF mit IMMEDIATE sein. So kann die Einschränkung vor dem ersten großen Feed eintreffen.

Ist der Schnitt leer, gelten normale BGP-Abläufe. Eine Established-Sitzung kann daher IPv4 zurückhalten und IPv6 sofort senden. Der Sitzungsstatus verbirgt Richtung, Typ und ersten Commit.

Beweise brauchen die tatsächlich ausgetauschten OPEN je Session-Epoch. Konfiguration ist Absicht; ausgehandelter Schnitt ist ausführbare Realität.

Lokale Liste und Remote-Zustand sind verschiedene Artefakte

Ein ORF-Eintrag enthält AFI/SAFI, Typ, Aktion, Match und typabhängigen Wert. ADD installiert, REMOVE entfernt einen Eintrag, REMOVE-ALL leert den benannten ORF. PERMIT bittet um passende Updates, DENY um deren Zurückhaltung.

RFC 5292 definiert Address Prefix ORF mit Sequence, Prefix, Length, Minlen und Maxlen. Damit lassen sich exakte Präfixe und Längenbereiche ausdrücken. Sequence bestimmt die Auswertungsreihenfolge.

Editierte Prefix-Liste, lokale Kompilierung, Route-Refresh-Bytes und beim Peer dekodierte Einträge sind vier Identitäten. Ein Generator kann Reihenfolgen vertauschen, ein Deny verlieren, den falschen AFI schreiben oder eine alte Revision senden. Ein Quellen-Hash beweist das Ende der Kette nicht.

Der Canary enthält ein exaktes Präfix, ein erlaubtes More-Specific innerhalb der Grenzen, eines unmittelbar außerhalb, ein Deny und eine Route, die lokale Export-Policy unabhängig vom ORF blockiert.

Bei mehreren nichtleeren ORF-Typen durchläuft die Route alle. PERMIT kombiniert mit DENY ergibt DENY. Eine Anzeige nur des Prefix-ORF kann den effektiven Feed überschätzen.

DEFER schreibt Zustand, IMMEDIATE verändert den Feed

ORF-Mutationen reisen in Route Refresh mit einer Transaktionswahl. IMMEDIATE verarbeitet die Einträge und kündigt betroffene Routen unter dem neuen Zustand erneut an. Der Sender muss Betroffene senden und darf Unbetroffene ergänzen.

DEFER speichert, ohne die sichtbare Route-Menge sofort zu ändern. Ein späterer einfacher Refresh oder ein ORF mit IMMEDIATE führt den Commit aus. Erfordern zusätzliche lokale Policy-Änderungen eine vollständige Re-Advertisement, wird DEFER mit anschließendem plain Refresh genutzt.

Die Trennung erlaubt eine kohärente Vorbereitung. Gleichzeitig können beide Seiten neue Einträge anzeigen, obwohl altes Adj-RIB-Out noch wirkt.

Jedes DEFER braucht Transaktions-ID, erwarteten Hash, Verantwortlichen, Commit, Frist und Rollback. Überfälliger Pending-Zustand ist kein Teilerfolg.

Plain Route Refresh löscht empfangene ORFs nicht; er kündigt unter ihnen erneut an. Enhanced-Refresh-Marker grenzen eine Übertragung ab, ersetzen aber keinen ORF-Mutationsnachweis.

Entfernen erweitert nur bis zur lokalen Grenze

Das Entfernen eines peer-gelieferten DENY kann den Feed verbreitern; das Entfernen des letzten Eintrags beseitigt den ORF. Die maximale Breite bleibt durch lokale Export-Policy und die Entscheidung des Senders begrenzt.

Rollback ist asymmetrisch. Der Kunde kann alte Einträge wiederherstellen, alles entfernen oder die Capability aufgeben. Nichts davon darf Provider-Regeln schwächen. Wer Kunden-ORF als einzige Export-Sicherung nutzt, verwechselt Effizienz mit Autorisierung.

Auch der Empfänger behält seinen Inbound-Filter. Der Peer kann die Präferenz ignorieren, Zustand verlieren oder anders neu verhandeln. Optimierung ersetzt keine Admission Control.

Ein unbekannter Wert kann den bisherigen ORF löschen

Nicht ausgehandelte Typen oder Familien werden ignoriert. REMOVE für einen nicht vorhandenen Eintrag wird ebenfalls ignoriert.

Enthält ein ausgewählter ORF jedoch einen unbekannten Feldwert, verlangt RFC 5291 die Entfernung des gesamten zuvor empfangenen ORF dieses Typs. Das verhindert halb verstandene Filter, kann den Feed aber bis zur lokalen Grenze erweitern.

Dieser Pfad gehört in einen isolierten Test. Vorher ist festzulegen, ob Nachricht, Eintrag oder ganzer ORF verschwindet; anschließend zählt Adj-RIB-Out, nicht nur der Parser-Log.

Frequenz, Zahl und Umfang der Mutationen brauchen Grenzen. Ein kompromittierter Empfänger kann Rechenarbeit und Re-Advertisements auslösen; ein kompromittierter Sender kann Einhaltung vortäuschen. Unbegrenzte Automatisierung schafft eine Erschöpfungsfläche.

Die Sitzung ist die natürliche Lebensdauer

Ein ORF lebt nur in der Sitzung, in der er ausgetauscht wurde. Mit deren Ende verschwindet peer-gelieferter Zustand. Ein Screenshot vor dem Reset beweist die neue Session nicht.

Die nächste Sitzung verhandelt Capabilities erneut und wartet gegebenenfalls auf den ersten qualifizierenden Refresh. Rennen, fehlende Initialnachricht oder geänderter Schnitt verändern den Feed, obwohl die lokale Datei gleich blieb.

Session-Epoch verbindet OPEN, ersten ORF oder plain Refresh, empfangene Einträge, Aktivierung und erstes Adj-RIB-Out. Routen vor der erwarteten Anfrage sind ein überprüfbarer Fehler.

Ein Reset räumt Zustand auf, betrifft aber die gesamte Nachbarschaft. Normaler Rollback ist eine beobachtete Gegenmutation; Reconnect nur bei vollständig vorhergesagter Rekonstruktion.

Ein beidseitiger Canary beweist vermiedene Arbeit

Man beginnt mit kleinem Peer und einer Familie. Die Baseline misst Exportkandidaten, übertragene Updates, Empfang und lokale Verwerfungen.

Nach Verhandlung wird vor dem ersten Feed ein enger IMMEDIATE mit Permit und Deny gesendet. Der Sender prüft dekodierte Einträge und lokale Schnittmenge. Adj-RIB-Out, Wire und Empfänger beweisen, dass Ausgeschlossenes nie gesendet wurde.

Version zwei nutzt DEFER: gespeicherter Zustand ändert sich, Feed nicht. Plain Refresh committet, die exakte Delta wird verglichen. REMOVE, fehlendes REMOVE, REMOVE-ALL und letzter Eintrag werden einzeln geprüft.

Zum Schluss beweist ein Reset das Erlöschen des alten Zustands und die Rekonstruktion über Capability und ersten Refresh. Jede AFI/SAFI wird separat getestet.

Abnahme heißt nicht „ORF enabled“. Sie belegt eingesparte Arbeit und erhaltene Hoheit: welche Updates nicht erzeugt wurden, welche lokalen Regeln Offenlegung verhinderten, welche Anfrage die Änderung verursachte und was der Empfänger sah.

ORF gewährt das kleine Recht, einen Nachbarn um weniger Aussagen zu bitten. Es gewährt weder mehr Offenlegung noch das Löschen seiner Regeln. Gerade diese Begrenzung macht Kooperation belastbar.