Aller au contenu principal

6.1.4. Map-Reply Message Format (Format de message Map-Reply)

6.1.4. Map-Reply Message Format (Format de message Map-Reply)

        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=2 |P|E|S| Reserved | Record Count |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Nonce . . . |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| . . . Nonce |
+-> +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| | Record TTL |
| +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

R | Locator Count | EID mask-len | ACT |A| Reserved |

   e   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

c | Rsvd | Map-Version Number | EID-Prefix-AFI |

   o   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

r | EID-Prefix |

   d   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| /| Priority | Weight | M Priority | M Weight |
| L +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| o | Unused Flags |L|p|R| Loc-AFI |
| c +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| \| Locator |
+-> +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

Description des champs de paquet:

Type: 2 (Map-Reply)

P: Il s'agit du probe-bit (bit de sonde), indiquant que le Map-Reply est une réponse à un Map-Request de sonde de joignabilité de localisateur. Le champ 'Nonce' DOIT contenir une copie de la valeur du nonce dans le Map-Request d'origine. Voir la section 6.3.2 pour plus de détails.

E: Ce bit indique que l'ETR qui envoie ce message Map-Reply annonce que le site prend en charge l'algorithme de joignabilité de localisateur Echo-Nonce. Voir la section 6.3.1 pour plus de détails.

S: Il s'agit du Security bit (bit de sécurité). Lorsqu'il est défini sur 1, les informations d'authentification suivantes seront ajoutées à la fin du Map-Reply. Le format détaillé du Authentication Data Content reste à étudier.

     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
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| AD Type | Authentication Data Content . . . |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

Reserved: Ce champ DOIT être défini sur 0 en transmission et DOIT être ignoré à la réception.

Record Count: Il s'agit du nombre d'enregistrements dans ce message de réponse. Un enregistrement est composé de la partie du paquet étiquetée 'Record' ci-dessus et apparaît un nombre de fois égal à Record Count.

Nonce: Il s'agit de la valeur de 24 bits définie dans un paquet Data-Probe ou de la valeur de 64 bits répercutée du Map-Request dans le champ 'Nonce' du Map-Reply. Lorsqu'une valeur de 24 bits est fournie, elle se trouve dans les 64 bits de poids faible du champ 'Nonce'.

Record TTL: Il s'agit du temps (en minutes) pendant lequel le destinataire du Map-Reply stockera le mappage. Si le TTL est 0, l'entrée DEVRAIT être supprimée immédiatement du cache. Si la valeur est 0xffffffff, le destinataire peut décider localement combien de temps stocker le mappage.

Locator Count: Il s'agit du nombre d'entrées de localisateur. Une entrée de localisateur comprend la partie étiquetée 'Loc' ci-dessus. Le Locator count peut être 0, indiquant qu'il n'y a pas de localisateurs pour l'EID-Prefix.

EID mask-len: Il s'agit de la longueur du masque de l'EID-Prefix.

ACT: Ce champ de 3 bits décrit une opération de Map-Reply négatif. Dans tout autre type de message, ces bits sont définis sur 0 et ignorés à la réception. Ces bits ne sont utilisés que lorsque le champ 'Locator Count' est défini sur 0. Les bits d'action sont encodés uniquement dans les messages Map-Reply. Ces actions sont utilisées par un ITR ou PITR lorsqu'un EID de destination correspond à une entrée de Map-Cache négative. Les valeurs non attribuées devraient entraîner la création d'une entrée Map-Cache qui abandonne les paquets lorsqu'ils correspondent à cette entrée de cache négative. Les valeurs actuellement attribuées sont:

(0) No-Action: le map-cache reste actif, aucune encapsulation de paquet ne se produit.

(1) Natively-Forward: le paquet n'est pas encapsulé ou abandonné mais transféré nativement.

(2) Send-Map-Request: le paquet déclenche l'envoi d'un Map-Request.

(3) Drop: un paquet correspondant à cette entrée map-cache est abandonné. Un message ICMP Destination Unreachable DEVRAIT être envoyé.

A: Bit Authoritative (faisant autorité), toujours défini sur 1 par un ETR lors de l'envoi. Lorsqu'un Map-Server proxy Map-Replying [RFC6833] pour un site LISP, le bit Authoritative est défini sur 0. Cela indique à l'ITR demandeur que le Map-Reply n'a pas été initié par un nœud LISP géré par le site qui possède l'EID-Prefix.

Map-Version Number: Lorsque cette valeur de 12 bits est différente de zéro, l'expéditeur du Map-Reply informe l'ITR du numéro de version de l'enregistrement EID contenu dans le Map-Reply. L'ETR peut attribuer ce numéro en interne mais DOIT coordonner cette valeur avec les autres ETRs du site. Lorsque cette valeur est 0, aucune information de version n'est transmise. Le Map-Version Number peut être inclus dans les messages Map-Request et Map-Register. Voir la section 6.6.3 pour plus de détails.

EID-Prefix-AFI: Famille d'adresses de l'EID-Prefix selon [AFI].

EID-Prefix: Ce préfixe est de 4 octets pour la famille d'adresses IPv4 et de 16 octets pour la famille d'adresses IPv6.

Priority: Une Priority unicast est attribuée à chaque RLOC. Les valeurs plus basses sont préférables. Lorsque plusieurs RLOCs ont la même Priority, ils peuvent être utilisés de manière équilibrée. Une valeur de 255 signifie que le RLOC NE DOIT PAS être utilisé pour le transfert unicast.

Weight: Lorsque plusieurs RLOCs ont la même priorité, le Weight indique comment équilibrer le trafic unicast entre eux. Le Weight est encodé comme un poids relatif (voir ci-dessous) du nombre total de paquets unicast qui correspondent à l'entrée de mappage. Par exemple, si le Locator-Set contient 4 localisateurs auxquels sont attribués des Weights de 30, 20, 20 et 10, le premier localisateur recevra 37,5 % du trafic, les deuxième et troisième localisateurs recevront chacun 25 % du trafic et le quatrième localisateur recevra 12,5 % du trafic. Si tous les Weights du Locator-Set sont égaux, le destinataire du Map-Reply décidera comment équilibrer la charge du trafic. Voir la section 6.5 pour un algorithme de hachage recommandé pour répartir la charge entre les localisateurs avec la même Priority et des valeurs de Weight égales.

M Priority: Une Priority multicast est attribuée à chaque RLOC pour être utilisée par un ETR dans un site multicast récepteur pour sélectionner un ITR dans un site multicast source pour construire un arbre de distribution multicast. Une valeur de 255 signifie que le RLOC NE DOIT PAS être utilisé pour rejoindre un arbre de distribution multicast. Voir [RFC6831] pour plus de détails.

M Weight: Lorsque plusieurs RLOCs ont la même priorité, le Weight indique comment équilibrer la construction d'arbres de distribution multicast entre plusieurs ITRs. Le Weight est encodé comme un poids relatif (similaire au Weight unicast) du nombre total d'arbres construits vers le site source identifié par l'EID-Prefix. Si tous les Weights du Locator-Set sont égaux, le destinataire du Map-Reply décidera comment distribuer l'état multicast parmi les ITRs. Voir [RFC6831] pour plus de détails.

Unused Flags: Ceux-ci sont définis sur 0 lors de l'envoi et ignorés à la réception.

L: Lorsque ce bit est défini, le localisateur est marqué comme un localisateur local pour l'ETR qui envoie le Map-Reply. Lorsqu'un Map-Server effectue un proxy Map-Replying [RFC6833] pour un site LISP, le L-bit est défini sur 0 pour tous les localisateurs de ce Locator-Set.

p: Lorsque ce bit est défini, l'ETR informe l'ITR faisant RLOC-Probing que l'adresse du localisateur pour lequel ce bit est défini est celle qui est RLOC-probée et peut être différente de l'adresse source du Map-Reply. Un ITR qui fait RLOC-probe pour un localisateur spécifique DOIT utiliser ce localisateur pour récupérer la structure de données stockant le fait de joignabilité du localisateur. Le p-bit est défini pour un seul localisateur dans le même Locator-Set. Si l'implémentation définit par erreur plusieurs p-bits, le destinataire du Map-Reply DOIT sélectionner le premier localisateur. Le p-bit NE DOIT PAS être défini pour les enregistrements Locator-Set envoyés dans les messages Map-Request et Map-Register.

R: Ce bit est défini lorsque l'expéditeur du Map-Reply a une route vers le localisateur dans l'enregistrement de données du localisateur. Le destinataire peut trouver cela utile pour savoir si le localisateur est actif mais pas nécessairement joignable du point de vue du destinataire. Voir également la section 6.4 pour une autre façon d'utiliser le R-bit.

Locator: Il s'agit d'une adresse IPv4 ou IPv6 (encodée par le champ 'Loc-AFI') attribuée à un ETR. Notez que l'adresse RLOC de destination peut être une adresse anycast. Le RLOC source peut également être une adresse anycast. Le RLOC source ou de destination NE DOIT PAS être une adresse de diffusion (255.255.255.255 ou toute adresse de diffusion de sous-réseau connue du routeur) et NE DOIT PAS être une adresse multicast locale de liaison. Le RLOC source NE DOIT PAS être une adresse multicast. Le RLOC de destination DEVRAIT être une adresse multicast s'il mappe depuis un EID de destination multicast.