1000Mbps换算成MB/s是多少?除以8?想简单了

👇我的小册 40章教程:(小白零基础用Python量化股票分析小册) ,原价299,限时特价2杯咖啡,满100人涨10元。作者:iN在

在网络传输的时候,往往会用到Mbps这个单位,GbE or 1 GigE 的网卡现在很流行,这个东西被大家叫做“千兆网卡”。

63159697fb54d8b8bd43038e27ef1f30.jpeg

同时,大家特别习惯用GB或者MB来描述一个磁盘的大小。这个叫做Gigabyte或者Megabyte。

但描述文件大小(或者讨论磁盘空间)的时候,我们通常还会用GiB或者MiB来描述。

5aa0df71c955bd33577e48b5deb4be48.jpeg

GB和GiB的对比实际上就是上面标的关系了,KB、MB、GB、TB来自于10进制三位分割的计数法,也就是每隔三位数加进一个逗号,这是对应了欧美那边的计算方法,这个来源于“短级差制(short scale)”,本意是指1000个前数,例如1 billion= 1000 million,也就是10亿= 1000个百万。但是这种计数方法本身会带来困扰。如果敏感一点的读者看到了“短级差制”,一定会想到“长级差制(long Scale)”,长级差制是以百万(10的6次方)来作为下一个级别的,在长级差制之内1 billion 代表的意思就是“万亿”了,代表100万个百万,也就是10的12次方。

无论是短级差制还是短级差制在欧洲都在用,这件事就会引起混乱,于是国际标准化组织就依照短级差短方式定义了一套标准化的词头计数方式,以10的3次方为级,这也就是我们现在的千、兆、吉、太、拍、艾、泽……的计数方法了。

同理,在二进制中,我们会以2的n*10次方来计算数字的大小,于是就有一个二进制的词头,写法和国标的词头类似,只不过在英文中把后两位依据发音习惯替换成了bi,例如Giga被改成了Gibi、Tera被改成了Tebi,我们说的MB(megabyte),也被改成了mebibyte,也就是简写的MiB。

回到留言的问题:1000Mbps的网络,换算为MB是多少,首先我们先搞清楚1000Mbps是什么,前面说了是是GbE,这个东西叫做“吉比特以太网(Gigabit Ethernet)” 注意这里面用的是Giga,说明是10进制计算的,也就是一秒钟可以传输1,000,000,000个比特。

30592550104cf890e3cfb3e098c8ede7.jpeg

我们都知道的是 一个字节(Byte)是由8个比特(Bit)组成。按理论上来说,1000Mbps的网络传输带宽在一秒钟之内可以传递125MegaByte的数据。

但是,我们得知道,在网络传输的时候并不是光传输你所需要的数据,在传输的过程中还需要将数据改变成网络数据包,所谓的打包数据就是在各个网络层为数据增加相应的标记信息。

6e361fcfc766892f7e2e3252b13cd2cd.png

这些信息对传输文件本身这件事并不会有太大的意义,只是为了能够完成网络传输。这时候,你在文件管理器中传输文件的时候看到的速度就已经不是网卡的速度了,而是在传输后层层打包后的净文件流数据获取速度。

c75b9e2c8899cd574c5a28491660abc3.png

因此,有的人就在问,为什么明明是千兆网卡,传输速度却不会达到125MB/秒?这里损失的一部分速度就是打包数据包所占用的传输流量。

所以速度达不到125MB/秒并不是网络的问题,而是正常现象。

那么有没有可能让传输速度进一步提高,尽量接近125MB/秒的极限呢?也是可以的。我们就得从数据链路层的以太网帧来入手了。

之前给大家讲过以太网帧,其中有一个MTU设置,叫做最大传输单元(Maximum Transmission Unit),每个以太网帧可以被定义为一个传输单元。以太网所定义的一个帧的大小为1538

89d6a39fe66eb1df98fa5096c382e248.jpeg

在网络设备上开始传输的时候设备会先发出7个字节的先导码,然后按照固定的格式分节来传输后面的数据。这个过程叫做一个传输单元,最终一个帧会以四个字节的校验码结束。其中最多会在Data这一节承载1500字节的数据。

如果我们把一个帧当作一辆卡车的话是这样的:

b8e7c1ffa761ec15a22f712e4c3d7284.jpeg

车头、车架、车轮都是数据包的封装结构,车厢就是数据包中的数据。

即便是数据再少,车头、车架、车轮也是精简不掉的。

3b9ed7c7e05f40cf9b5dd0a9d6eaf854.jpeg

但我们可以尽量的增加车厢的大小,让一趟车尽量的运送更多的货物。这就是降低了每次传输数据包的损耗率。

所以,我们可以知道的传输速率是可以计算出来的,大致上 效率=真正的传输数据内容/帧大小,因此可以计算在一个MTU为1500的以太网上的效率计算则是 1500/(1500+38)=97.53%,这还是干净的以太网帧,如果我们在交换机上附带了Vlan等设置,我们就需要再加入VLan的封包子节数。还拿卡车做例子就是这样的感觉:

4cb2011c9e9775f840c533f6796a2f28.jpeg

一辆卡车被作为货物装入另一辆卡车。

这时候Vlan的四个字节的标记也得加进去,就成了1500/(1500+38+4)=97.28%。

所以说,在网络传输效率上,一般以千兆太网是可以做到975.3Mbps的真实传输效率的,如果加了VLan可以做到972.8Mbps的传输效率。当然了,这是理论最高数值。

这个数值除以8是不是就算是网络能传文件的字节数了呢?还不是!

一般我们用SMB做文件分享和传输,这是TCP协议集里面的一个协议:

a4b61cd9e2b8dd2123a5768830d9f77b.png

看——也有包头、控制、基础数据等等一系列的额外内容在里面。因此 975.3Mbps 除以8 的121.9MB/秒也不会是一个文件传输的真实数值,还得打折扣。

还是卡车,这个SMB是卡车车厢里面的货物而已但不是你的文件。

a3a8b6e245092c9f304766b6eaf25841.jpeg

例如这辆卡车里面装的是苹果笔记本电脑,你要的也是一台苹果笔记本电脑,但是只要不是买二手,大部分电脑运送的时候还是有包装箱的,这个包装箱的一包就是SMB传输的数据包。

而在你的购买行为里面却默认只是要层层包装里面的一台电脑。多余的东西实际上都是运输损耗。

了解这些背景信息,你就会发现,带宽1000Mbps不变的情况下,你需要降低附带的这些协议包的损耗。怎么办?加大车厢!

506e95ccc4eb6c53722164a0cf5d69d2.jpeg

换一个更大车厢一次性装更多的数据就好了。这里就要用到交换机上的巨型帧了,是指MTU大于1500的帧。按照规范来说,巨型帧(jumbo frames)可以设置到9000字节。这个大小远远突破了IEEE 802.3以太网协议的限制。它可以做到在一个封装好的以太网帧中最多传输9000字节的数据,也就是MTU=9000。

我们按照之前的效率算法来计算一下就可以知道 效率=9000/(9000+38)= 99.58%,比起默认以太网的97.53要多压榨出了一些网络传输性能。

但是,要知道的是网络上不仅仅只是来回交换文件传输数据包的内容,还会不停的传输一些小包指令。

这时候一个巨大的帧内有可能只传输一些极小的负载。例如一辆大集装箱卡车里面只装了一小件货物:

8ac38a9817ad2c828f5a9ba4a2761e6f.jpeg

和卡车司机的困扰一样,以太网要传输小包数据实际上也会占用相同的以太网帧大小。于是十几个字节的数据在巨型帧的交换机上也得占用几百倍的传输带宽。这样就会导致网络的性能不增反降。

一般的做法是将两种交换机分离开,专门做大型数据传输的使用设置好巨型帧的交换机进行传输,而一般的小指令小数据包的传输会利用普通的MTU设置为1500的以太网交换机进行传输。

这就把存储的网络和普通业务网络进行分离。为了配合存储需求,也就出现了iscsi等专门跑在以太网上的存储协议。当然了,也有一些光纤通道交换机专门跑存储业务。这就有点脱离开大家经常用到的以太网的范畴了。

39b9d0c3f51a3f23eff3a6ea5ab00c9a.jpeg

最后推荐一下我们团队写的量化小册的内容,45篇内容!从Python安装,入门,数据分析,爬取股票基金的历史+实时数据,以及如何写一个简单量化策略,策略回测,如何看资金曲线统统都有介绍!非常超值!

欢迎订阅:原价199 早鸟价2杯咖啡钱,即可永久阅读。满400人又要涨价了,现在的价格非常非常低,只要2杯奶茶,就可以终身订阅+课程源码,还有永久陪伴群。48小时无理由退款,放心食用!

f9ff1cab3d60131a5f0dc2d96c5c36a8.png

往期推荐
量化: 如何用Python爬取创业板历史+实时股票数据!|实战股票分析篇利用Pandas 9招挖掘五粮液股价!|实战股票数据分析篇 Pandas滚动操作 |量化股票第一步,用Python画股票K线,双均线图,可视化你的股票数据!|如何用Python爬取全部800多只ETF基金数据!|如何用Python写一个双均线策略 |如何用Python开发一个多策略机器人!上篇!|Python量化系列-用布林策略买五粮液能赚多少钱?|只要4秒钟!用Python 获取上证指数34年的历史日线数据!
 
 
入门: 最全的零基础学Python的问题  | 零基础学了8个月的Python  | 实战项目 |学Python就是这条捷径

干货:爬取豆瓣短评,电影《后来的我们》 | 38年NBA最佳球员分析 |   从万众期待到口碑扑街!唐探3令人失望  | 笑看新倚天屠龙记 | 灯谜答题王 |用Python做个海量小姐姐素描图 |碟中谍这么火,我用机器学习做个迷你推荐系统电影

趣味:弹球游戏  | 九宫格  | 漂亮的花 | 两百行Python《天天酷跑》游戏!

AI: 会做诗的机器人 | 给图片上色 | 预测收入 | 碟中谍这么火,我用机器学习做个迷你推荐系统电影

小工具: Pdf转Word,轻松搞定表格和水印! | 一键把html网页保存为pdf!|  再见PDF提取收费! | 用90行代码打造最强PDF转换器,word、PPT、excel、markdown、html一键转换 | 制作一款钉钉低价机票提示器! |60行代码做了一个语音壁纸切换器天天看小姐姐!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值