外部数据表示法

外部数据表示法(,縮寫為XDR)是一种标准数据序列化格式,主要用于计算机网络协议。在OSI模型表示层中实现。XDR允许把数据包装在独立于介质的结构中,使得数据可以在异构的计算机系统之间传输。从本地表示转换到XDR称为编码,从XDR转换到本地表示称为解码。XDR使用软件来完成变换,所以在不同的操作系统中可以灵活的运用,同样的,XDR独立于传输层

XDR使用4字节为基本单位,以大端字节序序列化;更小的数据类型在编码后仍占据4字节。变长类型比如字符串和不透明类型被填充为整体上可被4字节整除。浮点数用IEEE 754格式表示。

历史和应用

XDR在1980年代中期由Sun Microsystems开发,并在1987年首次广泛发表[1],在1995年成为IETF標準協定。

XDR数据格式用于了很多系统,包括:

XDR 数据类型

XDR定义了以下数据类型:

  • 布尔
  • int – 32-bit整数,unsigned int – 无符号32-bit整数
  • hyper – 64-bit整数,unsigned hyper – 无符号64-bit整数
  • IEEE浮点数,IEEE 双精度浮点数四精度浮点数 (新出现在RFC1832)
  • 枚举结构字符串
  • 定长数组,变长数组
  • 联合 – 可辨别的联合
  • 定长不透明数据,变长不透明数据
  • void – 零字节量
  • optional – 可选数据的记号类似于C指针,但是表示为“指向”布尔“存在与否”标记的数据类型。语义上这是可选类型

参见

引用

  1. Sun Microsystems. . RFC 1014. Network Working Group. 1987 [July 11, 2011]. (原始内容存档于2019-03-21).

外部链接

XDR标准存在三个不同版本的RFC中:

This article is issued from Wikipedia. The text is licensed under Creative Commons - Attribution - Sharealike. Additional terms may apply for the media files.