近日,中共中央办公厅、国务院办公厅印发了《推进互联网协议第六版(IPv6)规模部署行动计划》,并发出通知,要求各地区各部门结合实际认真贯彻落实。
行动计划的主要目标为:
到2018年末,市场驱动的良性发展环境基本形成,IPv6活跃用户数达到2亿,在互联网用户中的占比不低于20%
到2020年末,市场驱动的良性发展环境日臻完善,IPv6活跃用户数超过5亿,在互联网用户中的占比超过50%,新增网络地址不再使用私有IPv4地址
到2025年末,我国IPv6网络规模、用户规模、流量规模位居世界第一位,网络、应用、终端全面支持IPv6,全面完成向下一代互联网的平滑演进升级
基于互联网协议第四版(IPv4)的全球互联网面临网络地址消耗殆尽、服务质量难以保证等制约性问题,IPv6能够提供充足的网络地址,号称能让地球上的每一粒沙子都拥有一个IP地址,是全球公认的应对下一波互联网和物联网浪潮的商业应用解决方案。
于是,问题来了,对一个连IP地址都不知为何物的“小白”来说,IPv6到底是什么?
从TCP/IP协议说起
在计算机诞生之初,大部分计算机之间是互不兼容的。
也就是说,在一台电脑上完成的工作,很难拿到另一台电脑上去用;想让两台硬件和软件都不一样的电脑互相之间传个文件发个消息什么的,也存在很多困难。
当时美国的状况是,陆军用的电脑是DEC系列产品,海军用的电脑是Honeywell中标的机器,空军用的是IBM公司中标的电脑,每一个军种的电脑在各自系里都运行良好,但却不能共享资源。
于是,科学家们提出这样一个理念:“所有电脑生来都是平等的。”
为了让这些“生来平等”的电脑能够“沟通交流”,并实现“资源共享”,就得在这些系统的标准之上,建立一种大家都必须共同遵守的规则。
这就好比两个人要正常沟通就必须使用共同的语言一样。一个只懂英语的人,和一个只懂中文的人由于没有共同的语言(规则)就没办法沟通。
同理,两台电脑之间进行通讯所共同遵守的规则,就是网络协议。
要想制定通讯规则,需要考虑很多内容,比如A电脑如何找到B电脑?A电脑在发送信息给B电脑时是否需要B电脑进行反馈?A电脑传送给B电脑的数据格式又是怎样的?两者通讯是否安全……
因为涉及的内容太多太杂,人们就想啊,得把所有涉及到的问题归类整理一下吧。
这时,国际标准化组织(ISO)就跳出来了,它把通讯过程涉及到的问题按照层次进行了划分,每一层次解决一个类别的问题,这样就使得标准的制定没那么复杂了,对症下药,有啥问题定啥标准。
这种划分出来的基本框架,被称为OSI模型。
图:OSI模型
这是一个七层标准模型,分别是:应用层,表示层,会话层,传输层,网络层,数据链路层,物理层。
物理层:解决最基础的传送通道问题
数据链路层:将物理层提供的比特流组成帧,要提供一定的纠错和检验机制,以太网就属于这一层
网络层:进行路由选择,拥塞控制和网络互联,还有统计与控制
传输层:向用户提供可靠的,透明的端到端的数据传输,以及差错控制和流量控制机制,TCP UDP属于传输层
会话层:在不同的机器之间提供会话进程通信
表示层:处理通信进程之间交换数据的表示方法,包括语法转换,数据格式的转换加压与减压,压缩与解压缩等
应用层:负责管理应用程序之间的通信
什么?看不懂,没关系,我们用寄信的过程来表示一下,就一目了然了。
物理层:高速公路,城乡公路
数据链路层:相当于货物核对单,表明里面有些什么东西,接受的时候确认一下是否正确(CRC检验)
网络层:相当于邮政局和收件人地址(IP地址),确保信件能正确到达对方
传输层:信封(TCP协议是挂号信,是可靠的;UDP协议是平信,尽力送到对方,不保证一定送到收信人手里)
会话层:相当于邮票,优质邮票寄一封信,相当于一个会话。
表示层:你用普通话还是用方言?或者是英语?
应用层:信件里的具体内容
虽然国际标准化组织制定了这样一个网络协议的模型,但这只是一个参考模型,实际上互联网通讯使用的网络协议是TCP/IP网络协议。
换言之,TCP/IP协议参考了OSI模型,但是并没有严格按照OSI规定的七层去划分标准,而只划分了四层:应用层,传输层,网络层,数据链路层。
这样会更简单点。但无论是四层划分还是七层划分,其实都差不多,只是叫法不一样,实质的东西一点没有变化。
TCP/IP中有两个重要的协议,传输层的TCP协议(传输控制协议)和网络层的IP协议(Internet协议)——TCP描述如何在网络上建立可靠的,主机对主机之间的数据传输服务,IP描述如何在互联的网络之间实现寻址的标准以及如何进行数据包路由。
因此就拿这两个协议做代表,来命名整个协议族了,在说TCP/IP协议时,是指整个协议族。
从IPv4到IPv6
前文说了,IP描述的是如何在互联的网络之间实现寻址的标准以及如何进行数据包路由。这是什么意思?
原来,在互联网上连接的所有计算机,从大型机到微型计算机都是以独立的身份出现,我们称它为主机。为了实现各主机间的通信,每台主机都必须有一个唯一的网络地址。
就好像每一个住宅都有唯一的门牌一样,才不至于在传输资料时出现混乱。
互联网的网络地址是指连入互联网网络的计算机的地址编号,互联网是由几千万台计算机互相连接而成的。而我们要确认网络上的每一台计算机,靠的就是能唯一标识该计算机的网络地址,这个地址就叫做IP(Internet Protocol的简写)地址,即用Internet协议语言表示的地址。
目前IP协议的版本号是4,v4就是 Version 4,第四版本,简称为IPv4,就像5G是指第五代通信技术,一个道理。
IPv4也是第一个被广泛使用,构成现今互联网技术的基石的协议。
IPv4的地址是一个32位的二进制地址,就是一个32位的0/1序列,比如1100000000000000000000000000011。
不过这样表示的话也太长了,为了方便人类记录和阅读,我们通常将32位0/1分成4段8位序列,并用10进制来表示每一段(这样,一段的范围就是0到255),段与段之间以.分隔。比如上面的地址可以表示成为192.0.0.3,这种书写方法叫做点数表示法。
讲到这里我们就可以拿笔算一下了,由于IPv4协议的地址为32位,所以它可以提供的地址数为:
2^32-1个(大约43亿个)
但并不是所有的地址都会被分配,一些地址被预留,用于广播、测试、私有网络使用等。这些地址被称为专用地址(special-useaddress)。所以真正可供分配的地址也就大约40亿个。
与之相比,目前世界总人口数已达75亿了,就算地球人每人只给一个IP地址,IPv4地址也远远不够,何况在物联网时代来临时,每人拥有的智能设备可不止一个(手环、可穿戴设备、智能家居等)......
IP地址不够会有什么问题呢?很重要的一点就是难以实现网络实名制——因为IP资源不够,所以不同的人在不同的时间段共用一个IP,IP和上网用户无法实现一一对应。
在IPv4下,根据IP查人也比较麻烦,电信局要保留一段时间的上网日志才行,通常因为数据量很大,运营商只保留三个月左右的上网日志,比如查前年某个IP发帖子的用户就不能实现。
更令人憋屈的是,因为IPv4的核心技术源于美国,因此北美现在占有3/4的IP地址,约30亿个,而人口最多的亚洲只有不到4亿个。没有IP地址,互联网怎么发展?
尽管一些技术措施,比如NAT技术(一种通过使用少量的公有IP 地址代表较多的私有IP 地址的方式,有助于减缓可用的IP地址空间的枯竭)减缓了情况的紧急程度,但IPv4地址耗尽的一天终究还是会很快到来。
很明显,我们需要更多的IP地址,以满足爆炸式增长的互联网设备对IP地址的需求!于是,IPv6应运而生!
较之IPv4使用的32位地址,IPv6使用128位地址,按照上文的计算方法,我们可以计算出IPv6能够提供的地址数为:
2^128-1个(大约340万亿个)
340万亿是什么概念?即使地球上每个人都有几十个联网设备,分配的话也绰绰有余。难怪会说,IPv6要给地球上的每一粒沙子都分配一个IP地址!
总结一下,与IPV4相比,IPV6具有以下几个优势:
1、IPv6具有更大的地址空间。IPv4中规定IP地址长度为32,其地址空间增加了2^128-2^32个。
2、IPv6使用更小的路由表。IPv6的地址分配一开始就遵循聚类(Aggregation)的原则,这使得路由器能在路由表中用一条记录(Entry)表示一片子网,大大减小了路由器中路由表的长度,提高了路由器转发数据包的速度。
3、IPv6增加了增强的组播(Multicast)支持以及对流的控制(Flow Control),这使得网络上的多媒体应用有了长足发展的机会,为服务质量(QoS,Quality of Service)控制提供了良好的网络平台。
4、IPv6加入了对自动配置(Auto Configuration)的支持。这是对DHCP协议的改进和扩展,使得网络(尤其是局域网)的管理更加方便和快捷。
5、IPv6具有更高的安全性。在使用IPv6网络中用户可以对网络层的数据进行加密并对IP报文进行校验,在IPV6中的加密与鉴别选项提供了分组的保密性与完整性。极大的增强了网络的安全性。
6、允许扩充。如果新的技术或应用需要时,IPV6允许协议进行扩充。
7、更好的头部格式。IPV6使用新的头部格式,其选项与基本头部分开,如果需要,可将选项插入到基本头部与上层数据之间。这就简化和加速了路由选择过程,因为大多数的选项不需要由路由选择。
8、新的选项。IPV6有一些新的选项来实现附加的功能。
当然,上面这些都不用记,作为普通人,我们只需要知道:IP地址数量多了,可以不通过NAT上网了,由此带来的便利是每个人都能有自己独立的IP了,可以实现网络实名制下的互联网身份证/VIeID了,可以搭建网站了等等......
我国IPv6的发展
IPv6从1998年由CERNET首次引进中国,到今年2017年,也将满20年了。
现在教育网的IPv6网络已经覆盖了800多所高校,已经有600万IPv6网络用户。电信、联通、移动的IPv6试点城市里面,合计也有超过1500万的IPv6用户。粗略算一算,国内IPv6的用户数量大约有2000万了。
不过,中国目前与美国、欧洲国家,乃至于印度之间的差距,不仅没有缩小,反而显著加大,中国在IPv6发展上严重落后。
2016年12月7日举行的“2016全球网络技术大会(GNTC)”上,中国工程院院士、清华大学教授吴建平在演讲中表示,我国的IPv6发展“起了个大早,赶了个晚集。”
吴建平认为,国家在2003年就将IPv6的发展提上了日程,这是非常正确非常及时的战略决策,当时经过五年的发展,第一期取得了预定的战略目标。但从2008年以后,我国IPv6的发展速度开始放缓,开始落后于国际水平。
在吴建平看来,造成今天局面的主要原因有几个。
首先,我国在互联技术使用上还是比较落后的,而且起步比较晚,这就导致了地址短缺,地址短缺造成的应用就是用私有地址出口转换成公有地址。“产业链对IPv6无动于衷,国外一个用户要拿到运营商的服务必须有公有地址,否则不选择你的服务,在中国不一定这样,大家有时候选择少,另外也没有这个意识非要选择一个公有地址。”
第二,互联网缺乏应有的国际竞争,诸如谷歌、Facebook等大型ISP已经将大量应用迁移到IPv6上,我国部分ISP其实也做了部分应用迁移,但深层次服务就不提供了,国内的部分ISP也不在国际大的竞争环境下。另外,运营商和信息提供商互相之间还有抱怨,运营商抱怨ISP不做应用迁移,用户没有访问资源,ISP抱怨运营商不发展用户,我资源没人用,其实都没有战略眼光。
另外,我国互联网安全监管措施成本和代价很高,在IPv6上面,整个迁移以后需要重新构建。
推广迁移的代价有多大呢?知乎上的网络研发工程师时国怀对这一点进行了补充:要想完全推广v6,需要从骨干网到终端用户的所有设备都进行一次升级,这里的骨干网不仅仅是电信、联通的网络,还包括银行、铁路、军队等等的内部网路,还包括移动、联通的移动通信的数据网络,不管是哪一个网络的改造,都需要付出巨大的成本。
骨干网改造完了就没事了吗?不是的,还有各种末端设备,家里的网卡、路由器、计算机软件都需要升级。好在主流的操作系统都已经支持了v6,其它方面,只能走一步算一步了。
《推进互联网协议第六版(IPv6)规模部署行动计划》的发布,将推进IPv6规模部署。大力发展基于IPv6的下一代互联网,有助于提升我国网络信息技术自主创新能力和产业高端发展水平,高效支撑移动互联网、物联网、工业互联网、云计算、大数据、人工智能等新兴领域快速发展,不断催生新技术新业态,促进网络应用进一步繁荣,打造先进开放的下一代互联网技术产业生态。
这一次,中国不能再受制于人!