drda通信协议中网络字节序的确定方式

这里的字节序指的是网络字节序 , db2 通过网络传输数据时,存在两种字节序:

例如,用 4 字节传输 int 类型 16 ,十六进制 0x10

在 x86 平台计算机内,使用 little endian 字节序

存储四字节顺序为 10 00 00 00
 

little endian 的网络字节序     1000 0000

big endian 的网络字节序       0000 0010

 

db2 在网络传输时,会用 TYPDEFNAM 标识,选用的网络字节序,如下。

如果 TYPDEFNAM 为 QTDSQLX86 ,表示使用 X86 平台的字节序,即 little endian 。

否则,表示使用 big endian 字节序。

 


QTDSQLX86 ,表示使用 little endian 网络字节序,如下图。


 

  drda通信协议中网络字节序的确定方式_第1张图片

 

 

TYPDEFNAM 为 QTDSQLASC ,使用 big endian 网络字节序

 

 drda通信协议中网络字节序的确定方式_第2张图片

另外, 

客户端和服务器端可能使用不同的字节序:

客户端通知服务器端自己使用 BIG-ENDIAN 字节序,服务器照此字节序解析客户端请求;但同时服务器端通知客户端自己使用 LITTLE-ENDIAN 字节序,客户端照此字节序接收。

 

 

你可能感兴趣的:(网络,服务器,db2,存储,平台,X86)