自定义协议的 magic number 超过 8 字节,如何在大小端系统正确解释

查看 19|回复 1
作者:proxytoworld   
假如协议头: 0xDEADBEEFDEADBEEFEF 9 个字节,而用于网络和主机字节序转换的函数 htonl/ntohl 最多能转换一个 long 的长度即 8 个字节
那么如何在大小端系统中传输这个自定义协议数据时,如何保证都能正确解释这个协议头(能够正确判断协议头对,自定义协议基于 TCP )
期望:
  • TCP 数据:data=0xDEADBEEFDEADBEEFEF
  • 小端系统:some_func(data) == 0xDEADBEEFDEADBEEFEF
  • 大端系统:some_func(data) == 0xDEADBEEFDEADBEEFEF

    结论:协议头正确
  • leonshaw   
    字节数组
    您需要登录后才可以回帖 登录 | 立即注册

    返回顶部