首页 > 其他分享 >主机字节序和网络字节序

主机字节序和网络字节序

时间:2023-10-15 09:45:39浏览次数:25  
标签:字节 00000000 主机 网络 endian CPU

小端字节序和大端字节序

考虑一个16位整数,它由2个字节组成。内存中存储这两个字节有两种方法:一种是将低序字节存储在起始地址,这称为小端(little-endian)字节序;另一种方法是将高序字节存储在起始地址,这称为大端(big-endian)字节序。
Inter x86、ARM核采用的是小端模式,Power PC、MIPS UNIX和HP-PA UNIX采用大端模式。

网络字节序和主机字节序

网络字节序是TCP/IP中规定好的一种数据表示格式,采用big endian排序方式,与具体的CPU类型、操作系统等无关,保证数据在不同主机之间传输时能够被正确解释。
不同的机器主机字节序不同,由CPU决定,与操作系统无关。某个给定系统所用的字节序称为主机字节序(host byte order)。比如x86系列CPU都是little-endian的字节序。
因为这个原因不同体系结构的机器之间无法通信,所以要转换成一种约定的数序,也就是网络字节顺序。
网络字节序与主机字节序之间的转换函数:htons(), ntohs(), htons(),htonl(),位于头文件<netinet/in.h>,htons和ntohs完成16位无符号数的相互转换,htonl和ntohl完成32位无符号数的相互转换。

用IP地址127.0.0.1为例:
第一步 127.0.0.1
把IP地址每一部分转换为8位的二进制数。
第二步 01111111 00000000 00000000 00000001=2130706433(主机字节序)
然后把上面的四部分二进制数从右往左按部分重新排列。
第三步 00000001 00000000 00000000 01111111=16777343(网络字节序)

Wireshark抓包结果是网络字节序

起始地址是高序字节。

参考资料

https://www.cnblogs.com/xingguang1130/p/11643446.html

标签:字节,00000000,主机,网络,endian,CPU
From: https://www.cnblogs.com/WJQ2017/p/17765262.html

相关文章

  • OnTheSSH使用技巧(三)向多个远端主机发送命令
    OnTheSSH提供将同一条命令发送到多台远端主机运行的功能。使用方式如下:1)勾选要运行命令的远端主机到工作区: 提示:合理将远端主机归纳入分组,可提高勾选的效率。2)在命令输入区输入命令,点击“运行”按钮执行,或使用组合键执行命令,windows中是Ctrl+Enter,MacOS中是Command(⌘)+Enter。......
  • 关于Hyperledger Fabric区块链中的测试网络
    HyperledgerFabric区块链运行时核心架构当然,上图中仅给出了只有一个组织的示例。Fabric网络中测试网络的重要作用有哪些?在Fabric网络中,测试网络的重要作用主要包括以下几点:学习和了解Fabric:通过测试网络,可以帮助初学者和开发者更深入地了解Fabric的基础架构、运行机制以及相关技术......
  • 计算机网络---内积判断是否向站内发送数据
    https://blog.csdn.net/Nimrod__/article/details/113448050 这个链接是讲的关于内积的判断一个站如果要发送比特1,则发送他自己的mbit码片序列。一个站如果要发送比特0,则发送自己的mbit码片序列的反码。 在码分多址中,任何一个站和其他各占的码片反码的向量的内积也是0。......
  • 深入探析网络代理与网络安全
    随着互联网的快速发展,网络安全问题日益突出,而网络代理技术正成为应对安全挑战的重要工具。本文将深入探讨Socks5代理、IP代理以及它们在网络安全、爬虫开发和HTTP协议中的关键作用,以期帮助读者更好地理解和应用这些技术。1.Socks5代理:多协议支持与安全防护Socks5代理作为一种高级......
  • 网络安全笔记DAY01
    实战:MS17-010(永恒之蓝)漏洞测试实战背景:2017年4月14日晚,黑客团体ShadowBrokers(影子经纪人)公布一大批网络攻工具,其中包含“永恒之蓝”工具,“永恒之蓝”利用Windows系统的SMB漏洞可以获取系统最高权限。恶意代码会扫描开放445文件共享端口的Windows机器,无需用户任何操作,只要开机上网......
  • 浅谈MDK, IAR,CLANG和GCC的局部变量字节对齐处理差异(2023-10-13)
    视频:https://www.bilibili.com/video/BV1CB4y1Z7kA问题由来:早期这个帖子里面的局部变量对齐仅测试了MDKAC5,但项目中使用AC6发现了新问题,看来AAPCS规约研究的还是不够细:https://www.armbbs.cn/forum.php?mod=viewthread&tid=109400当时对局部变量的描述如下:局部变量使用的是......
  • 动手学深度学习--卷积神经网络
    frompixiv从全连接层到卷积现在我们给自己一个任务:用神经网络去识别区分出百万级像素的不同图片回顾一下以前:我们是通过多层感知机来实现的,当面对一张图片的时候,我们将其看成一个像素点矩阵,然后将其从二维拉直到一维上,再通过MLP进行训练但是我们这次的任务每张照片具有百......
  • 在全基因组选择中,基因组数据是如何输入进神经网络中的
    在全基因组选择(GS)中,通常使用基因分型数据,这些数据来源于一个组织或个体的DNA。这些数据通常是由高通量测序或基因分型技术得到的。为了将这些数据用作神经网络的输入,我们需要将它们转换为合适的格式。以下是这一过程的详细步骤:基因分型数据:通常,基因分型数据表示为二进制或三类......
  • 网络
    目录1、网路层次的划分1-1OSI七层网络模型与TCP/IP五层协议1.1.1Rpc和Http的区别1、网路层次的划分1-1OSI七层网络模型与TCP/IP五层协议1.1.1Rpc和Http的区别相同点:底层通讯都是基于socket,都可以实现远程调用,都可以实现服务调用服务不同点:是什么优缺点框架典......
  • 网络唤醒后,计算机无法关机,任然被唤醒。
    在使用openwrt网络唤醒功能后,唤醒计算机后,关机休眠等操作后,会被再次唤醒。将网线从计算机网口拔出,再次关机操作后,等待完全关机,插上网线没有被唤醒。那么是网卡设置有问题,对网络中的唤醒进行识别。计算机管理-->网络适配器--找到唤醒的网卡,点击右键属性--电源管理。 全部勾......