Aller au contenu principal

4.1. AVP Header

Les champs dans l'en-tête AVP DOIVENT être envoyés en ordre des octets réseau. Le format de l'en-tête est :

    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
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| AVP Code |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|V M P r r r r r| AVP Length |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Vendor-ID (opt) |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Data ...
+-+-+-+-+-+-+-+-+

AVP Code

Le AVP Code, combiné avec le champ Vendor-Id, identifie l'attribut de manière unique. Les numéros AVP 1 à 255 sont réservés pour la réutilisation des attributs RADIUS, sans définir le champ Vendor-Id. Les numéros AVP 256 et supérieurs sont utilisés pour Diameter, qui sont alloués par l'IANA (voir Section 11.1.1).

AVP Flags

Le champ AVP Flags informe le récepteur comment chaque attribut doit être traité. Les nouvelles applications Diameter NE DEVRAIENT PAS définir de bits AVP Flag supplémentaires. Cependant, notez que les nouvelles applications Diameter PEUVENT définir des bits supplémentaires dans l'en-tête AVP, et un bit non reconnu DEVRAIT être considéré comme une erreur. L'expéditeur de l'AVP DOIT définir les bits 'R' (réservés) à 0 et le récepteur DEVRAIT ignorer tous les bits 'R' (réservés). Le bit 'P' a été réservé pour une utilisation future de la sécurité de bout en bout. Au moment de la rédaction, il n'y a pas de mécanismes de sécurité de bout en bout spécifiés ; par conséquent, le bit 'P' DEVRAIT être défini à 0.

Le bit 'M', connu sous le nom de bit Mandatory, indique si le récepteur de l'AVP DOIT analyser et comprendre la sémantique de l'AVP, y compris son contenu. L'entité réceptrice DOIT renvoyer un message d'erreur approprié si elle reçoit un AVP qui a le bit M défini mais qu'elle ne comprend pas. Une exception s'applique lorsque l'AVP est intégré dans un AVP groupé. Voir Section 4.4 pour plus de détails. Les agents de relais et de redirection Diameter NE DOIVENT PAS rejeter les messages contenant des AVP non reconnus.

Le bit 'M' DOIT être défini selon les règles définies dans la spécification d'application qui introduit ou réutilise cet AVP. Dans une application donnée, le paramétrage du bit M pour un AVP est défini soit pour tous les types de commande, soit pour chaque type de commande.

Les AVP avec le bit 'M' effacé sont uniquement informatifs ; un récepteur qui reçoit un message avec un tel AVP qui n'est pas pris en charge, ou dont la valeur n'est pas prise en charge, PEUT simplement ignorer l'AVP.

Le bit 'V', connu sous le nom de bit Vendor-Specific, indique si le champ facultatif Vendor-ID est présent dans l'en-tête AVP. Lorsqu'il est défini, le AVP Code appartient à l'espace d'adressage de code de fournisseur spécifique.

AVP Length

Le champ AVP Length est de trois octets et indique le nombre d'octets dans cet AVP, y compris le champ AVP Code, le champ AVP Length, le champ AVP Flags, le champ Vendor-ID (s'il est présent) et le champ AVP Data. Si un message est reçu avec une longueur d'attribut invalide, le message DOIT être rejeté.