6.1.2. Map-Request Message Format (Map-Request-Nachrichtenformat)
6.1.2. Map-Request Message Format (Map-Request-Nachrichtenformat)
0 1 2 3
0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|Type=1 |A|M|P|S|p|s| Reserved | IRC | Record Count |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Nonce . . . |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| . . . Nonce |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Source-EID-AFI | Source EID Address ... |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| ITR-RLOC-AFI 1 | ITR-RLOC Address 1 ... |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| ... |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| ITR-RLOC-AFI n | ITR-RLOC Address n ... |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
/ | Reserved | EID mask-len | EID-Prefix-AFI |
Rec +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
\ | EID-Prefix ... |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Map-Reply Record ... |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
Beschreibung der Paketfelder:
Type: 1 (Map-Request)
A: Dies ist das Autoritätsbit, das für UDP-basierte Map-Requests eines ITR auf 0 gesetzt wird. Es wird auf 1 gesetzt, wenn ein ITR möchte, dass der Zielstandort den Map-Reply zurückgibt und nicht das Mapping-Datenbanksystem.
M: Dies ist das Bit map-data-present. Wenn es gesetzt ist, ist ein Map-Reply-Record-Segment im Map-Request enthalten.
P: Dies ist das Probe-Bit; es zeigt an, dass ein Map-Request als Locator-Erreichbarkeitssonde behandelt werden SOLLTE. Der Empfänger SOLLTE mit einem Map-Reply antworten, bei dem das Probe-Bit gesetzt ist, was anzeigt, dass der Map-Reply eine Antwort auf eine Locator-Erreichbarkeitssonde ist, mit dem aus dem Map-Request kopierten Nonce. Siehe Abschnitt 6.3.2 für weitere Details.
S: Dies ist das Solicit-Map-Request-(SMR)-Bit. Siehe Abschnitt 6.6.2 für Details.
p: Dies ist das PITR-Bit. Dieses Bit wird auf 1 gesetzt, wenn ein PITR einen Map-Request sendet.
s: Dies ist das SMR-invoked-Bit. Dieses Bit wird auf 1 gesetzt, wenn ein xTR einen Map-Request als Antwort auf einen empfangenen SMR-basierten Map-Request sendet.
Reserved: Dieses Feld MUSS beim Senden auf 0 gesetzt und beim Empfang ignoriert werden.
IRC: Dieses 5-Bit-Feld ist der ITR-RLOC-Zähler und kodiert die zusätzliche Anzahl von (ITR-RLOC-AFI, ITR-RLOC Address)-Feldern in dieser Nachricht. Mindestens ein Paar (ITR-RLOC-AFI, ITR-RLOC-Address) MUSS kodiert werden. Mehrere ITR-RLOC Address-Felder werden verwendet, damit ein Map-Replier die Zieladresse für einen Map-Reply wählen kann. Der IRC-Wert liegt zwischen 0 und 31. Bei 0 ist eine ITR-RLOC-Adresse kodiert; bei 1 sind zwei ITR-RLOC-Adressen kodiert, usw. bis 31, was insgesamt 32 ITR-RLOC-Adressen kodiert.
Record Count: Dies ist die Anzahl der Datensätze in dieser Map-Request-Nachricht. Ein Datensatz besteht aus dem Teil des Pakets, der oben mit Rec bezeichnet ist, und kommt so oft vor wie Record Count. Für diese Protokollversion MUSS ein Empfänger Map-Requests akzeptieren und verarbeiten, die einen oder mehrere Datensätze enthalten, aber ein Sender MUSS nur Map-Requests senden, die genau einen Datensatz enthalten. Die Unterstützung für die Anforderung mehrerer EIDs in einer einzigen Map-Request-Nachricht wird in einer zukünftigen Protokollversion festgelegt.
Nonce: Dies ist ein 8-Oktett-Zufallswert, den der Absender des Map-Request erzeugt. Dieses Nonce wird im Map-Reply zurückgegeben. Die Sicherheit des LISP-Mapping-Protokolls hängt kritisch von der Stärke des Nonce in der Map-Request-Nachricht ab. Das Nonce SOLLTE von einer ordnungsgemäß geseedeten Pseudozufalls- (oder starken Zufalls-)Quelle erzeugt werden. Siehe [RFC4086] für Hinweise zur Erzeugung sicherheitsrelevanter Zufallsdaten.
Source-EID-AFI: Dies ist die Adressfamilie des Felds Source EID Address.
Source EID Address: Dies ist die EID des Quellhosts, der das Paket gesendet hat, das den Map-Request ausgelöst hat. Wenn Map-Requests zum Aktualisieren eines Map-Cache-Eintrags oder für RLOC-Probing verwendet werden, wird der AFI-Wert 0 verwendet und dieses Feld hat die Länge null.
ITR-RLOC-AFI: Dies ist die Adressfamilie des Felds ITR-RLOC Address, das diesem Feld folgt.
ITR-RLOC Address: Dies dient dazu, dem ETR die Wahl der Zieladresse aus beliebiger Adressfamilie für die Map-Reply-Nachricht zu ermöglichen. Diese Adresse MUSS eine routbare RLOC-Adresse des Absenders der Map-Request-Nachricht sein.
EID mask-len: Dies ist die Maskenlänge für das EID-Prefix.
EID-Prefix-AFI: Dies ist die Adressfamilie des EID-Prefix gemäß [AFI].
EID-Prefix: Dieses Präfix ist 4 Oktette bei IPv4 und 16 Oktette bei IPv6. Wenn ein ITR einen Map-Request sendet, weil ein Datenpaket für ein Ziel ohne Mapping-Eintrag empfangen wird, wird das EID-Prefix auf die Ziel-IP-Adresse des Datenpakets gesetzt und das EID mask-len auf 32 bzw. 128 für IPv4 bzw. IPv6. Wenn ein xTR einen Standort zum Status eines bereits zwischengespeicherten Mappings abfragen möchte, hat das im Map-Request verwendete EID-Prefix dieselbe Maskenlänge wie das EID-Prefix, das der Standort beim Senden einer Map-Reply-Nachricht zurückgegeben hat.
Map-Reply Record: Wenn das M-Bit gesetzt ist, hat dieses Feld die Größe eines einzelnen "Record" im Map-Reply-Format. Dieser Map-Reply-Datensatz enthält den der Source-EID zugeordneten EID-to-RLOC-Mapping-Eintrag. Dadurch kann der ETR, der diesen Map-Request empfängt, die Daten bei Bedarf cachen.