网上的大端或小端?

时间:2009-06-15 18:23:03

标签: network-protocols endianness

网络上的数据传输以字节顺序排列?是Little Endian还是big endian?一旦数据到达主机,它如何转换为相应的字节顺序?

3 个答案:

答案 0 :(得分:23)

“网络字节顺序”是Big Endian,TCP等协议将此用于整数字段(例如端口号)。可以使用htons和ntoh等函数进行转换。

除非您使用的是Presentation Layer,例如XDR,否则数据本身没有任何完全由应用程序定义的字节序。

答案 1 :(得分:2)

按照你发送的顺序转移它。

传统上,互联网协议使用大端,因为进行大部分通信的机器都是大端。

但是,如果您定义自己的结构以通过网络发送,则无需遵循该约定。

通常使用C编程,通常使用htons或ntohs宏进行转换。

答案 2 :(得分:1)

如果你使用tcp使用htons((短)端口)使你能够使用网络安全协议(基本上是大端)并且不关心小端与大端。

如果您确实需要转换使用 http://www.codeguru.com/forum/showthread.php?t=292902

它解释得很好