iPhone TCP-IP 字节顺序映射?
Mac 使用与 Windows 相反的字节顺序。但 iPhone 仍然如此吗?由于我正在从 Windows 到 iPhone 进行 TCP-IP(WiFi),字节转换映射是什么样的?
Mac used the opposite byte order to Windows. But is that still true for the iPhone? Since I am doing TCP-IP(WiFi) from Windows to an iPhone, what does the byte conversion mapping look like?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(3)
网络字节顺序(我的意思是 IP,因此 TCP 也是如此)始终是大尾数: http:// /en.wikipedia.org/wiki/Endianness#Endianness_in_networking iPhone 与 Windows 一样,采用小端字节序:iPhone 平台:字节顺序(检测和交换) 您必须仅考虑字节顺序如果您分析 TCP/IP 数据包标头;数据包有效负载将以与发送时相同的字节顺序到达。
Network byte ordering (I mean IP, and therefore TCP too) is always big-endian: http://en.wikipedia.org/wiki/Endianness#Endianness_in_networking iPhone, like Windows, is little-endian: iPhone platform: endianness (detection & swapping) You have to take byte-ordering into account only if you analyze TCP/IP packet headers; packet payload will arrive in the same byte ordering, as it was sent.
你为什么关心?在网络上 - 使用网络字节顺序(通常为 Big Endian),在主机中,使用主机字节顺序,即使用适当的转换例程。
Why do you care? on the network - use network byte order (typically Big Endian) and in the host, use host byte order i.e. use the appropriate conversion routines.
ARM 架构(至少在 iOS 平台中使用)是小端字节序,就像 x86 一样。
The ARM architecture (at least as used in the iOS platform) is little-endian, just like x86.