Extern datarepresentation
OSI modell för lager |
---|
External Data Representation ( XDR ) är ett standardformat för dataserialisering , för användning som t.ex. datornätverksprotokoll . Det gör att data kan överföras mellan olika typer av datorsystem. Att konvertera från den lokala representationen till XDR kallas kodning . Att konvertera från XDR till den lokala representationen kallas avkodning . XDR är implementerat som ett mjukvarubibliotek med funktioner som är portabelt mellan olika operativsystem och dessutom är oberoende av transportskiktet .
XDR använder en basenhet på 4 byte, serialiserad i big-endian- ordning; mindre datatyper upptar fortfarande fyra byte vardera efter kodning. Typer med variabel längd som sträng och ogenomskinlig är vadderade till totalt delbart med fyra byte. Flyttal är representerade i IEEE 754- format.
Historia
XDR utvecklades i mitten av 1980-talet på Sun Microsystems och publicerades först brett 1987. XDR blev en IETF- standard 1995.
XDR-dataformatet används av många system, inklusive:
- Nätverksfilsystem (protokoll)
- ZFS filsystem
- NDMP Network Data Management Protocol
- Öppna Network Computing Remote Procedure Call
- Legato NetWorker säkerhetskopieringsprogram (senare såld av EMC)
- NetCDF (ett vetenskapligt dataformat)
- R -språket och miljön för statistisk beräkning
- HTTP -NG Binary Wire Protocol
- SpiderMonkey JavaScript-motorn, för att serialisera/deserialisera kompilerad JavaScript- kod
- Ganglias distribuerade övervakningssystem
- sFlow nätverksövervakningsstandard _
- Libvirt - virtualiseringsbiblioteket, API och UI
- Firebird (databasserver) för Remote Binary Wire Protocol
- Stellar Payment Network
XDR-datatyper
- booleskt
- int – 32-bitars heltal
- unsigned int – osignerad 32-bitars heltal
- hyper – 64-bitars heltal
- unsigned hyper – osignerad 64-bitars heltal
- IEEE flyta
- IEEE dubbelt
- fyrdubbla (ny i RFC1832)
- uppräkning
- strukturera
- sträng
- array med fast längd
- array med variabel längd
- facket – diskriminerat förbund
- ogenomskinlig data med fast längd
- ogenomskinlig data med variabel längd
- void – noll byte kvantitet
- valfritt – valfri data noteras på samma sätt som C-pekare, men representeras som datatypen "pekade på" med en boolesk flagga "närvarande eller ej". Semantiskt är detta alternativtyp .
Se även
- Structured Data eXchange Format ( SDXF )
- Fjärrproceduranrop
- Abstrakt syntaxnotation ett
- Dataformat Beskrivning Språk
- Jämförelse av dataserialiseringsformat
externa länkar
XDR-standarden finns i tre olika versioner i följande RFC:er:
- RFC 4506 2006 Detta dokument gör inga tekniska ändringar av RFC 1832 och publiceras i syfte att notera IANA-överväganden, förstärka säkerhetsaspekter och skilja normativa från informativa referenser.
- RFC 1832 1995 version. Lade till Quadruple Precision Flying Point till RFC 1014 .
- Ciscos XDR: Tekniska anteckningar
- jsxdrapi.c , huvudkällfilen för SpiderMonkey som använder XDR
- protocol.cpp huvudsakliga xdr-källfil som används i Firebirds fjärrprotokoll
- GNU Libc-implementeringen av rpcgen, XDR-parsern.
- Mu Dynamics Research Labs racc grammatik för XDR
- IvmaiAsn ASN1/ECN/XDR-verktyg (en samling verktyg som innehåller en XDR/RPC-till-ASN.1-omvandlare)