Zum Hauptinhalt springen

6.6.2. Solicit-Map-Request (SMR) (Solicit-Map-Request (SMR))

6.6.2. Solicit-Map-Request (SMR) (Solicit-Map-Request (SMR))

Das Anfordern, dass ein Peer eine Map-Request sendet, ist eine Möglichkeit für einen Site-ETR, dessen Zuordnung sich geändert hat, selektiv die Rate zu kontrollieren, mit der er Map-Reply-Anfragen empfängt. SMR wird auch verwendet, um entfernte ITRs zu informieren, ihre gecachten Zuordnungen zu aktualisieren.

Da ein ETR nicht verfolgt, welche entfernten ITRs seine Zuordnungen gecacht haben, weiß er nicht, welche ITRs aktualisiert werden müssen. Daher sendet der ETR Solicit-Map-Requests (genannt SMR-Nachrichten) an Sites, die ihm in der letzten Minute gekapselte Daten gesendet haben. Insbesondere sendet der ETR SMR an ITRs, die ihm kürzlich gekapselte Daten gesendet haben.

Eine SMR-Nachricht ist ein in einer Map-Request-Nachricht gesetztes Bit. Wenn ein ITR oder PITR eine SMR-Nachricht empfängt, sendet er eine Map-Request. Sowohl der SMR-Sender als auch der Map-Request-Responder MÜSSEN diese Nachrichten ratenbegrenzen. Ratenbegrenzung kann als globaler Limiter oder als Limiter pro SMR-Ziel implementiert werden.

Das folgende Verfahren zeigt, wie ein SMR-Austausch erfolgt, wenn eine Site eine Locator-Set-Kompression für ihre EID-zu-RLOC-Zuordnung durchführt:

  1. Wenn sich die Datenbank-Zuordnung eines ETR ändert, beginnt der Site-ETR, Map-Request mit gesetztem SMR-Bit an jeden Locator in jedem Map-Cache-Eintrag zu senden, den er gecacht hat.

  2. Ein entfernter ITR, der eine SMR empfängt, plant das Senden einer Map-Request an die Quell-Locator-Adresse der SMR-Nachricht oder an das Zuordnungsdatenbanksystem. Eine neue zufällig zugewiesene Nonce wird gewählt, und das verwendete EID-Präfix wird aus der SMR-Nachricht kopiert. Wenn der Quell-Locator der einzige Locator im gecachten Locator-Set ist, sollte der entfernte ITR die Map-Request an das Datenbank-Zuordnungssystem senden, falls der einzelne Locator sich geändert hat und möglicherweise nicht mehr erreichbar ist, um die Map-Request zu akzeptieren.

  3. Der entfernte ITR MUSS die Map-Request ratenbegrenzen, während er weiterhin die gecachte Zuordnung verwendet, bis er eine Map-Reply erhält. Bei Verwendung von Map-Versioning wie in Abschnitt 6.6.3 beschrieben kann der SMR-Sender erkennen, ob der ITR die neueste Datenbank-Zuordnung verwendet.

  4. Der ETR der Site mit der geänderten Zuordnung antwortet mit einer Map-Reply mit der Nonce aus der SMR-ausgelösten Map-Request. Die Map-Reply sollte ratenbegrenzt werden. Dies ist wichtig, um eine Map-Reply-Flut zu vermeiden.

  5. Der ETR der Site mit der geänderten Zuordnung zeichnet auf, dass Sites, die Map-Request gesendet haben, die neuen Zuordnungsdaten in ihrem Map-Cache-Eintrag erhalten haben, sodass die Locator-Status-Bits für Pakete, die an die entfernte Site gesendet werden, die neue Zuordnung widerspiegeln. Der ETR hört dann auf, SMR-Nachrichten zu senden.

Experimente laufen, um geeignete Ratenbegrenzungsparameter zu bestimmen.

Aus Sicherheitsgründen DARF ein ITR keine unaufgeforderte Map-Reply verarbeiten. Um zu vermeiden, dass Dritte Map-Cache-Einträge korrumpieren, MUSS der Sender einer SMR-ausgelösten Map-Request verifiziert werden. Wenn ein ITR eine SMR-ausgelöste Map-Request erhält und die Quelle nicht im Locator-Set des gespeicherten Map-Cache-Eintrags ist, MUSS die antwortende Map-Request mit einer EID-Zieladresse an das Zuordnungsdatenbanksystem gesendet werden. Da das Zuordnungsdatenbanksystem ein zuverlässigerer Weg ist, um den autoritativen ETR zu erreichen, wird es die Map-Request zur autoritativen Quelle der Zuordnungsdaten liefern.

Wenn ein ITR eine SMR-ausgelöste Map-Request erhält, aber keine gecachte Zuordnung für die EID in der SMR-Nachricht hat, kann er sich dafür entscheiden, keine SMR-ausgelöste Map-Request zu senden. Dieses Szenario kann auftreten, wenn ein ETR SMR an alle Lokatoren im Locator-Set sendet, das er in seinem Map-Cache gespeichert hat, aber der entfernte ITR, der die SMR erhält, möglicherweise keine Pakete an diese Site gesendet hat. Es macht keinen Sinn, sie zu aktualisieren, bevor der ITR senden muss, zu diesem Zeitpunkt würden sie eine Map-Request senden, um einen Map-Cache-Eintrag zu erhalten.