繁体   English   中英

如果网络上的所有计算机都使用little-endian,我应该转换为网络字节顺序(hton *)吗?

[英]Should I convert to network byte order (hton*) if all machines on the network use little-endian?

我正在编写一个客户端 - 服务器应用程序,它使用UDP在两台Intel x64计算机之间发送数据报。 我控制了两侧的硬件并验证了它们使用相同的little-endian架构。

由于我可以确认这两台机器都是小端的,因此在发送数据之前使用hton*函数更改字节顺序是否有任何好处? 当然,这会产生非常轻微的性能下降并且没有任何好处?

您的协议始终可以以您不期望的方式使用。 例如,该程序可能会被运行在ARM或Sun系统上的人员接收。

由于通过网络发送的值通常应按网络字节顺序排列,因此最好在发送之前转换值。 对性能的任何影响都可以忽略不计,并被视为过早优化。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM