Reprezentarea datelor externe

XDR
Nume Reprezentarea datelor externe
Nivel (conform modelului OSI ) Reprezentare
Familie TCP/IP , ONC
Scopul protocolului Standardizarea formatului de date
Specificație RFC 4506 / STD 67
Dezvoltator Microsisteme solare

XDR ( în engleză  External Data Representation - reprezentare externă a datelor ) este un standard internațional pentru transmisia de date pe Internet , utilizat în diferite RFC -uri pentru a descrie tipuri. XDR permite comunicarea independentă de platformă între computere din rețele eterogene.

Reprezentarea datelor externe (XDR) este un standard IETF din 1995. Permite împachetarea datelor într-o manieră independentă de arhitectură, astfel încât datele să poată fi transferate între sisteme computerizate eterogene.

Printre programele care folosesc XDR sunt următoarele:

Tipuri de date în XDR

Motivația pentru utilizarea XDR

Calculatoare diferite pot avea o reprezentare internă diferită a informațiilor. De exemplu, un număr întreg de 32 de biți are 2 forme de reprezentare posibile:


Pentru unele funcții WinSock, argumentele lor (adică parametrii funcției) trebuie stocate în ordine inversă.

- Programul convertește mesajele din reprezentarea sa internă în XDR pentru transmiterea ulterioară. Aceasta se numește codificare. - Receptorul convertește mesajul primit de la XDR în propria sa reprezentare. Aceasta se numește decodare.

Tipuri de date în XDR

XDR specifică o reprezentare pentru majoritatea tipurilor de date în C :

Informația codificată conține doar date, nu conține informații despre tipul de date. De exemplu, după codificarea unui număr întreg de 32 de biți, rezultatul va fi un număr întreg de 32 de biți în XDR. Nu vor exista informații că este un număr întreg. Clienții și serverele care utilizează XDR trebuie să convină asupra tipului de date al mesajelor pe care le schimbă.

Suport software pentru utilizarea XDR

Trimiterea unui mesaj către XDR

- nume (șir de caractere) -ID (întreg) - GPA cumulativ (număr în virgulă mobilă)

De exemplu: xdrmem_create() returnează un pointer către un flux gol.

*#* puneți informațiile codificate în următoarea locație disponibilă din buffer *#* actualizați indicatorul de flux intern la noul spațiu liber disponibil


Programe standard de conversie în XDR

Primirea unui mesaj în XDR

De exemplu, decodificarea unui număr întreg pe 32 de biți:

Link -uri