周六早上,哈哈,喷一篇无关紧要的。


IPv6最经典的广告词,可以为地球上每一粒沙子分配一个IP地址。

提起IPv6,人们总是用这句话形容其地址之多,多到一个这么一个形象的天文数字。

到底能不能为地球上每一粒沙子分配一个IPv6地址我们姑且不论,假设这是真的,我这里想摆一摆的是,存储所有的IPv6地址需要多大的物理空间。注意!是物理空间,只有这样才能体现出实施IPv6真实的,现实中的代价。

一粒沙子到底多大呢?经常看到有人实际计算地球上沙子数量的时候用毫米做尺寸量级,但实际上那不是沙子,那是珠子。真正的沙子应该至少用毫米的十分之一甚至微米做尺寸量级,由于海底也有沙子,因此应该把地球表面积全都算上,至少5到10公里的厚度,如果你真的这么算,会发现IPv6可能并不够为每一粒沙子分配一个地址…但无论如何,本文不抬这个杠,本文说的是另一个有意思的事,即,真实的代价。

IPv6的存储空间有多大?

人们不假思索地回答,2128×162^128\times 162128×16字节呗,但这不是实际落地的物理空间,这只是一个逻辑数字。

如果我们把所有的IPv6地址保存在实实在在的存储介质中,结果会和 “IPv6可以为每一粒沙子分配一个IP地址” 一样令人吃惊,我所谓, “为了每一粒沙,真实的代价”, 哈哈。

我假设用当今最牛X的16TB磁盘为例存储IPv6地址,由于磁盘尺寸无论2.5英寸还是3.5英寸,其长宽高均不是容易计算的整数,我取一个折中的中间值,我假设磁盘尺寸为10cm×10cm×1cm10cm \times 10cm \times 1cm10cm×10cm×1cm,下面开始我们的计算:

  • 首先我们看每块磁盘可以存储多少IPv6地址:
    1024×1024×1024×1024×1616≈1.1×1012\dfrac{1024\times 1024\times 1024\times 1024\times 16}{16}\approx 1.1 \times 10^{12}161024×1024×1024×1024×16​≈1.1×1012

  • 我们看一共多少IPv6地址:
    2128≈3.4×10382^128 \approx 3.4 \times 10^{38}2128≈3.4×1038

  • 上面二者相除,很容易计算出需要多少磁盘:
    3.4×10381.1×1012≈3.1×1026\dfrac{3.4 \times 10^{38}}{1.1 \times 10^{12}}\approx 3.1 \times 10^{26}1.1×10123.4×1038​≈3.1×1026

  • 根据我假设的磁盘尺寸大小(这个尺寸非常合理),我们知道1立方米空间中正好容纳100001000010000块磁盘,因此所有的磁盘占据的总空间是:
    3.1×102610000=3.1×1022m3\dfrac{3.1 \times 10^{26}}{10000}=3.1 \times 10^{22} m^3100003.1×1026​=3.1×1022m3

  • 换算成立方公里:
    3.1×1013km33.1 \times 10^{13} km^33.1×1013km3

  • 来自Wiki,地球的体积为:
    1.08321×1012km31.08321\times 10^{12} km^31.08321×1012km3

上面两个数字相除,我们得到一个倍数,即28个地球大小的空间摆满磁盘,才能存储所有的IPv6地址!

好家伙,为了存储所有的IPv6地址,我们需要比地球还要大28倍的体积…这就是现实的代价!

还敢给沙子,细胞,线粒体之类的分配IPv6地址吗?问题是你分配了地址就要保存它啊。

也许你会问,IPv4难道没有这个问题吗?很抱歉,还真的没有。IPv4一共4G个地址,每一个地址4个字节,只需要16G的空间就能存放,别说磁盘,普通内存都够装入所有的IPv4地址了!

为什么会这样?!

IPv6竟然需要这么大的存储介质体积!看到这个惊人的存储介质的总体积,一般人会把锅甩给存储介质本身,比方说你会说现在的磁盘太落后了,以后总会有更小尺寸更大容量的磁盘出现。我并不否认存储器本身的技术也在飞速发展,但是我要说的点不是这个,我想说的是一个 尺度缩放 的问题。

举个我们都知道的例子,类似将一张纸对折42次,其厚度就可以到达月球之类,假设一张纸厚度0.01cm0.01cm0.01cm,简单计算就知道这是真的,就好像我们简单计算就知道IPv6真的能为地球每一粒沙子分配一个IP地址一样,然而对于折纸的例子而言,现实的问题是,这张纸有多大,以及我们要折这张纸折多长时间,如果你真的去计算了,或者你真的去实际试着折纸了,就会发现,这几乎是不可能做到。

理论往往是放大指数级增加的尺度所带来的恩惠,然而现实的代价则是指数级放大的阻力。

任何一件事均有无限个维度可以扩张,只有一个物理维度是受限的,在这个物理维度,我们必须遵守现实的物理法则。 任何事物,随着其扩张,其中物理维度的成本终将不堪重负从而使整个扩张过程停止!

虽然IPv6可以为不止一个地球上的沙子们分配独立的IP地址,但要存储这些IP地址,需要28个地球这么大的体积!这些对于我们真实世界而言,都是不可想像的。

我经常说超过几千米的摩天大楼无法建设,为了把所有人高效运输至每一个楼层,当楼层超过一定高度时,电梯占据的空间比例将会越来越多,直到所有的空间全部被电梯占据。

我也说过32位处理器上工作的好好的多级页表,用到64位处理器,如果程序地址是稠密模式,仅仅页表需要的内存就会占有超大的比例。

同样的道理,虱子长到人这么大也跳不到太空,因为它如果真的长到了人这么大,支撑它超强弹跳的生物机能开销将会大到让它变得和我们人类一样平庸,对,这就是所谓沉重的肉身。

为了强调IPv6地址之多,说什么可以为每一粒沙子分配一个地址,这个就和为了强调虱子跳得高,说什么长到人这么大可以跳到太空一样,忽略了现实的代价。

如果你了解《人月神话》里说的沟通成本,应该可以很容易理解我这篇文章说的意思。当然了,这是经理才在乎的事,对于普通工人,我推荐一本书《规模》:https://book.douban.com/subject/30244461/


浙江温州皮鞋湿,下雨进水不会胖。

闲谈IPv6-为了每一粒沙,真实的代价!相关推荐

  1. 我们的世界又何尝不是一粒沙呢!

    只是生命时间的尺度不一样导致的时空错觉,所谓一花一世界,一叶一菩提,就是这个道理.一粒沙子就是沙子世界的整个宇宙,他们的时间单位很小,可能我们的一毫秒就是他们的上百年,或者更久,在沙子世界里的各种规律 ...

  2. 数据标注员:时代的一粒沙,落到每个人身上都是一座山丨曼孚科技

    ​深夜11点,赵明在提交最后一个数据包后,终于长舒了一口气. 作为一名普通的数据标注员,这是他一周以来第一次早于午夜12前点下班. 十几天以前,他所在的团队接到了一个"大项目":在 ...

  3. 时代的一粒沙,压在个人头上便是整整的一座山

    校招这段时间以来,于我的感觉就是满眼的"荒唐".宛如跳梁小丑,宛如粉墨登场的花旦.于我如此乐观之人,常常感慨生在了好时代,遇上了大变局.好机遇,是如此的想大展拳脚,幻想中也是如此的 ...

  4. 据说有了IPv6,全世界的每一粒沙子都能编上一个网址!

    亲爱的童鞋们,大家好! 我是沉迷技术不能自拔的阿里妹 今天来陪你一起唠点事儿- 这几天,阿里妹被一条朋友圈刷屏了: 近日,阿里巴巴宣布已全面应用IPv6,淘宝.天猫.优酷以及高德地图等多个用户过亿的应 ...

  5. 一次一粒沙,一次一件事

    一次一粒沙,一次一件事 要克服生活排山倒海的压力,一次做好一件事,就是最好的应付之道.--黑立言 有一天,一个小男孩儿在沙滩上玩耍.由于适逢大退潮,沙滩散布着海星,色彩绚丽又非常壮观.小男孩儿高兴的一 ...

  6. 从一粒沙中看世界,一朵花里有天堂 08.11.2

    从一粒沙中看世界 一朵花里有天堂 从一粒沙子看到一个世界,      To see a world in a grain of sand, 从一朵野花看到一个天堂,      And a heaven ...

  7. 我是外包一粒沙(原创)

    我是一粒沙,2006年4月的一阵妖风,把我刮进了外包的圈子,一晃就是3年又4个月. 在外包公司迅速成长的这几年里,公司本着能用就用,指哪打哪的原则,让我几乎接触了外包行业的各个岗位(除了技术岗位,俺不 ...

  8. 天空好大,我顶多算是地表上的一粒沙!

    今天又看到很多不错的文章,有的写的细,有的写的概括,感觉都写的不错,都是自己应该掌握的,都需要细细咀嚼,太多的技术牛人了,非常感谢他们的分享,感觉大IT技术的天空好大好大,有一辈子都学不完的知识再等着 ...

  9. 我们是宇宙还是一粒沙?

    微观人的自身也是宇宙...... 宏观宇宙也可能只是沙粒......

  10. IPv6,为每一粒“沙子”提供一个 IP 地址

    11月26日,中办.国办印发了<推进互联网协议第六版(IPv6)规模部署行动计划>,提出国内要在 5~10 年的时间形成下一代互联网自主技术体系和产业生态,建成全球最大规模的 IPv6 商 ...

最新文章

  1. Pytorch多进程最佳实践
  2. MySQL创建索引跳过redo_明明我建了索引,为什么sql执行的还是这么慢?
  3. iOS使用NSMutableAttributedString实现富文本
  4. 陈百强原来这么帅_朱一龙虽然很少玩手机,但居式打字法很有个性,手指飞舞超级帅!...
  5. 数学 - 线性代数导论 - #9 Ax=b的解:存在性、解法、解的结构、解的数量
  6. Codeforces Round #197 (Div. 2): D. Xenia and Bit Operations(线段树)
  7. 如何在前端中使用protobuf(vue篇)
  8. C#昵图素材下载器源码可下我图、包图、千图等(带数据库)
  9. MySQL字符串拼接、分组拼接字符串
  10. MDK5:正点原子stm32遇Target not created的解决方法
  11. MSSQL 2000安装 图解
  12. 9 款最好的免费博客网站对比
  13. 最低成本DIY视频遥控车方案:ESP32-CAM视频遥控车
  14. 黑苹果外接显示器最优解决方案
  15. 婚姻家庭法简答题及答案
  16. Java实现DES加密解密(对称式)
  17. 关于OpenCV中cv2.imwrite保存的图片是全黑色的解决方案
  18. asc18_hpl,hpc,hpcg
  19. Android实现应用的增量更新\升级
  20. WiFI Display介绍

热门文章

  1. ubuntu 18 安装显卡驱动时卡死及系统重装
  2. OpenWrt自定义luci页面来修改配置文件
  3. 数据特征分析 正态性检验
  4. Microsoft Word 教程:如何在 Word 中插入页码、目录?
  5. python实用案例教程第四章-python 入门到实践第四章案例
  6. 脉冲触发器和边沿触发器的区别
  7. 手游pvp系统网络设计
  8. IT项目经理面试题分解
  9. 无人机通信方式及原理
  10. 第7章 - 多无人机系统的协同控制 --> 无人机飞行原理