大端序big endian,网络字节序
人类的阅读习惯
地址排放顺序:道生一,一生二,二生三
对于“大家好”,低位的地址放“大”,高位的地址放小
小端序,主机字节序
与上述相反
单个字节,不区分大端序小端序,都是一样的;对于多个字节,才区分大端序小端序
在程序中,只有数据以正确的主机字节序(x86都是小端序)存放时,数据才能被正确运算\打印,比如int(4byte)
在发包时,需要将数据转换为网络字节序,才能正确发出
在收包时,需要将数据转换为主机字节序,才能被正确运算、打印。如果一个个字节纯打印的话,是数据包的真实形态,但如果看version为几的话,只有转换之后,才能打印出4
dpdk中,ntoh和hton的函数内容一致,可以复用,或者是调两次数据复原等等。但最好还是在函数名上区分开来,增加程序可读性。