C’est un protocole standard de representation,
de description et de codage des données à
la norme ISO 8825. Un tel standard est indispensable dès
qu’il faut transférer des informations entre des
systèmes hétérogènes.
La procédure XDR s’implémente au niveau de la
couche présentation du modéle OSI.
La description des données se fait par l’intermédiaire
d’un language. Ce language n’est pas un language de programmation et
ne peu donc servir qu’à décrire des données de
manière rigoureuse, fiable et concise.
Le protocole XDR suppose à priori que chaque octet est
portable et qu’il est défini sur 8 bits. Le codage d’un octet
doit pouvoir être fait de telle façon que le
périphérique de réception puisse effectuer son
décodage.
- Les nombres entiers
Ils sont representés sur 32 bits en complément à
2. Leur intervalle de variation est de [-2147483648, 2147483647].
Les octets nomérotés de 0 à 3 de gauche à
droite, l’octet de poids fort est l’octet 0. Les nombres entiers non
signé sont représentés sur 32 bits. Leurs
intervalle de variation est compris dans [0, 4294967295]. L’octet
de poids fort est l’octet 0.
- Les énumérations
Une énumération est représentée
comme une suite d’entiers non signés
- Les chaînes de caractéres
Un chaîne de caractéres de longueur N est
représentée par un entier non signé
égal à N, suivi des N octets en ASCII qui
composent la chaîne.
- Les tableaux
Un tableau de n éléments, avec n fixé, est
représenté par la suite des n éléments
qui le composent codés individuellement. Si la taille du tableau
est variable, la suite des éléments est
précédée d’un entier non signé qui en
contient le nombre.
- Les structures
La représentation d’une structure est faite en codifiant les
éléments qui la composent dans l’ordre où ils
se présentent. Chaque élément est codé
sur un multiple de 4 octets. S’ils s’agit d’une union, chaque
élément est précédé du
discriminant qui le concerne. Le discriminant peut être de
type entier, entier non signé ou énuméré.
- Les flottants
Les nombres flottants sur 32 bits sont représentés
suivant la norme IEEE. Un bit pour le signe, 8 bits pour
l’exposant en base 2 et 23 bits pour la mantisse.
- Les flottants double précission
Les nombres flottants double précision sur 64 bits sont aussi
représentés suivant le norme IEEE. Un bit pour le signe,
11 bits pour l’exposant et 52 bits pour la mantisse.