网络字节序和本机转换

计算机在存储数据时是有大小端的概念的:
如果程序仅在本地机器上运行,就无需考虑大小端问题。因为同一台机器上的数据存储方式相同,要么是大端存储模式,要么是小端存储模式。然而,若涉及网络通信,就必须考虑大小端问题,不然对端主机识别出的数据可能与发送端想要发送的数据不一致。
现在两台主机在进行网络通信,发送端是小端机,接收端是大端机。发送端把发送缓冲区中的数据,按照内存地址从低到高的顺序发出。接收端从网络获取数据并依次保存在接收缓冲区时,同样是按内存地址从低到高的顺序保存。
发送端采用小端存储,接收端采用大端存储。对于内存地址从低到高的序列,发送端按小端方式识别出的是[具体内容 1],接收端按大端方式识别出的是[具体内容 2]。这样,接收端识别到的数据与发送端原本想要发送的数据不同,这是由于大小端的偏差导致数据识别出现错误。
因为我们无法确保通信双方存储数据的方式相同,所以网络中传输的数据需要考虑大小端问题。TCP/IP 协议规定,网络数据流采用大端字节序,也就是低地址对应高字节。不管是大端机还是小端机,都必须依据 TCP/IP 协议规定的网络字节序来进行数据的发送和接收。
在这个例子里,发送端是小端机,所以在发送数据之前,得先把数据转换成大端,接着再发送到网络中。而接收端是大端机,因此接收端接收到数据后,能够直接进行数据识别。此时,接收端识别出来的数据和发送端原本想要发送的数据是相同的。
需要注意的是,操作系统会完成所有大小端的转化工作。因为此操作属于通信细节,所以部分信息需要我们自行处理,例如端口号和 IP 地址。
如何证明自己的机器采用了哪种字节顺序:
<p style='margin-bottom:15px;color:#555555;font-size:15px;line-height:200%;text-indent:2em;'> <pre><code class="language-cpp">/* 确定你的电脑是大端字节序还是小端字节序 */ #include <stdio.h> int check1() { i 等于 1;1 在内存中的表示为 0x00000001 即将 int 型的地址强制转换为 char 型 。 如果读取到的第一个字节是 1,那么就是小端法;如果读取到的第一个字节是 0,那么就是大端法。并且是通过判断 *pi 是否等于 0 来确定的。 } int main() { if (check1() == 1) printf("big\n"); else printf("little\n"); return 0; } 第二种方法,我们用联合结构解决,其本质差异不大 /* 确定你的电脑是大端字节序还是小端字节序 */ #include <stdio.h> int check2() { union test { char ch; int i; }test0; test0.i = 1; return test0.ch == 0; } int main() { if (check1() == 1) printf("big\n"); else printf("little\n"); return 0; } </code></pre></p>为什么网络字节序采用的是大端?而不是小端?
若网络字节序采用小端,发送端和接收端在收发数据时就无需进行大小端转换。
该问题有很多不同说法,下面列举了两种说法:
字节序转换函数
为让网络程序具备可移植性,让相同的 C 代码在大端和小端计算机上编译后都能正常运转,系统给出了四个函数,能够通过调用以下库函数来达成网络字节序与主机字节序之间的转换。
<p style='margin-bottom:15px;color:#555555;font-size:15px;line-height:200%;text-indent:2em;'> <pre><code class="language-cpp"> #include <a style='color:#0000CC;font-size:15px;' rpa/inet.h> //将主机字节序转换为网络字节序 调用 unit32_t htonl 函数,并传入 unit32_t 类型的 hostlong 参数。 通过 unit16_t 类型的 hostshort 实施 htons 动作。 //将网络字节序转换为主机字节序 对 netlong 进行 ntohl 处理得到 unit32_t ; 以 unit16_t 类型的 netshort 为参数进行 ntohs 处理; 说明:h 表示主机;n 表示网络;s 表示短;l 表示长。 htons()被称为“Host to Network Short”。 htonl()的意思是“主机到网络长整型” ntohs() 被称为“网络到主机短” ntohl()的含义为“网络到主机长整型” </code></pre></p>
# 广州专业网站推广软件
# 时就
# 南充模板网站推广公司
# 镇江网站推广优化
# 宿迁关键词排名工具网站
# 长春seo工具推荐
# 推广创意网站哪个好用点
# 南京*网站建设优点
# 心情seo
# 广州seo建站
# 海南全网营销如何做推广
# 机器上
# 渝水区个人网站建设低价
# 燕山大学独特网站建设
# 浙江品牌营销推广方案
# 网站运营推广实训报告
# 无锡江阴市网站优化开发
# 黄页网站推广app咋做广告的
# seo服务商
# 鄂州网站建设案例教程书
# 草莓营销推广方案英文翻译
# 吉林网站推广销售电话
# 整型
# 网络字节序和本机转换
# 大小端存储模式对网络通信的影响解析
# 的是
# 转换为
# 第一个
# 被称为
# 具体内容
# 你的电脑
# 网络通信
# 自己的
# 网络字节序和本机转换:大小端存储模式对网络通信的影响解析
# 这是
# 在这个
# 出了
# 是有
# 有很多
# 都能
# 两种
# 一台
# 采用了
相关文章:
第五人格:荒诞画风与悬疑剧情交织的刺激1V4手游
白噪音成哄娃神器,当代年轻人助眠新宠?效果存疑
校园网站设计,打造信息化校园的新窗口,构建信息化校园新格局,校园网站设计创新之道
手机号注册无数App?教你两招查询绑定了哪些软件
早上好!愿你天天开心,在逆境中努力做到最好
专业网站 *** 公司,打造企业 *** 品牌新篇章,塑造企业 *** 品牌辉煌,专业网站 *** 领航新时代,新时代企业 *** 品牌塑造专家,专业网站 *** 领航
高校党校学院分校:牢记党校初心,明确讲授根本提升培训质效
语言盘点:柯林斯词典年度词汇及流行语发布,语文差错也有盘点
企业宣传有妙招:分享经验用案例、问答留言效果好
椰树总部“极繁式”外观,火了
*热点下拉:支持多平台下拉,低成本宣传推广利器
长沙专业做网站,助力企业互联网转型新篇章,长沙专业网站建设,助力企业互联网转型再出发
南充网站建设,助力企业数字化转型,打造线上核心竞争力,南充网站建设,企业数字化转型的线上竞争力引擎,南充网站建设,企业数字化转型线上竞争力加速器
旺旺和旺仔是父子?你不知道的旺旺冷知识。。。
上海专业做网站服务,助力企业打造数字化形象,提升在线竞争力,上海专业网站服务,助力企业数字化转型与在线竞争力升级
收到这类微信官方短信要小心!点开链接后果不堪设想?
“长在手上”的遥控器 如何承包牛奶盒子的亮点
广西网站推广策略,助力企业线上腾飞,广西企业线上增长新引擎,网站推广策略全攻略,广西企业线上增长加速器,揭秘网站推广全攻略
合肥网站 *** ,打造个性化企业网站,助力企业品牌升级,合肥定制化企业网站建设,助力品牌形象焕新升级
杭州网站 *** ,打造个性化企业品牌形象,助力企业腾飞,杭州定制网站 *** ,塑造独特企业品牌,推动企业飞跃,杭州定制网站 *** ,塑造独特品牌形象,助力企业飞跃腾飞
安卓手机微信如何访问相机及好友删了怎么恢复?看这里
截至2025年8月1日收盘,广西广电股价下跌,关注股权变动?
南京陈女士注销微信号遇假客服,被骗6万多,如何安全处置社交账号?
365好商机网:集多种服务于一体,助力创业与招商
免费建立个人网站,轻松开启你的 *** 之旅,零成本打造个人网站,轻松启航 *** 新生活
旅游博主升级计划后收入锐减引关注,中视频伙伴计划曾迎黄金时代?
长沙网站 *** 公司,打造个性化 *** 门户,助力企业线上发展,长沙专业网站定制,塑造企业专属 *** 门户,驱动线上增长新引擎
网站设计规划,打造高效、专业的 *** 平台,构建高效专业 *** 平台,网站设计规划攻略,高效专业 *** 平台构建攻略,网站设计规划全解析
江门网站建设,助力企业腾飞的 *** 基石,江门企业飞跃,专业网站建设,打造 *** 基石
河南网站优化的重要性及策略探讨,河南网站优化的重要性与策略详解,河南网站优化的重要性与策略详解
南昌网站优化,提升企业在线竞争力,打造高效 *** 平台,南昌企业网站优化策略,增强在线竞争力,构建高效 *** 营销平台
小红书笔记有效推广秘籍!内容6字诀之真与美?
国家金融监督管理总局指导下,中国太平全方位展现保险担当
百度世界大会2025发布A1互动式搜索APP,简单搜索再升级
演唱会门口“捞人”,海底捞太会营销了!
账号注册流程详解:填写信息、绑定管理员及unionid获取要点
如何选择合适的网站建设空间,如何选择合适的网站建设空间,指南与建议
潍坊网站优化,提升网站排名,助力企业互联网发展,潍坊企业网站优化,助力提升 *** 排名,推动互联网成长
古韵邯郸:华夏腹心之地,藏金戈铁马与诗酒风流的城
同一手机如何使用两个微信账号?微信分身方法大揭秘
微信朋友圈能发实况图啦!快来看看具体操作步骤
长沙网站建设公司,助力企业打造高效、专业的 *** 平台,长沙专业网站建设,赋能企业 *** 发展新篇章
台州网站建设,打造个性化 *** 品牌,助力企业腾飞,台州企业腾飞之路,个性化网站建设助力品牌崛起
微信误删好友怎么找回?七种实用恢复方法助力你
免费企业网站模板,打造专业形象,开启 *** 营销新篇章,专业形象立显,免费模板助力企业 *** 营销新起点
青岛网站推广,助力企业线上崛起的黄金策略,青岛企业线上腾飞之道,网站推广黄金策略全解析
柳州网站建设,助力企业数字化转型,打造 *** 新名片,柳州企业数字化转型新引擎,网站建设铸就 *** 新名片
资阳网站建设,助力企业数字化转型,开启 *** 营销新篇章,资阳企业数字化转型新起点,网站建设引领 *** 营销革新,资阳企业数字化升级,网站建设推动 *** 营销新纪元
高端品牌网站建设,打造企业核心竞争力的重要策略,企业核心竞争力提升,高端品牌网站建设的战略布局
网页版传世新开精选内容!微信神秘信号,判断女人是否想你?
相关栏目:
【
广告资讯90366 】
【
广告推广18483 】
【
广告优化154267 】
【
广告营销46464 】