文/ Geoff Huston 翻译:杨望
2018 年12 月30 日,APNIC(亚太互联网络信息中心)发布《中国IPv6 突然加速!》一文。作者围绕中国在全球IPv6 部署中的重要性,中国的IPv6 部署情况,Facebook、Google、Akamai 及APNIC 发布的对于中国IPv6 的测量数据,中国IPv6 的性能等几个方面详细阐述了我国在IPv6 上的加速部署。
我们可以从经济学角度来审视IPv6 的部署过程。一旦一件商品被市场采用达到一定程度,新的市场行为就会出现:后期采用者会受到惩罚。因为他们之前没有参与到市场引进的产品或服务活动中,很可能不得不额外花费资源来弥补之前没有参与的损失。一旦市场已经达到临界点,市场上的其他参与者都会迫于压力采用新的服务或产品,因为与现有采用者相比,后采用的人现在处于相对劣势。IPv6 同样遵循此规律。
如果我们从人的角度来看IPv6 采用的指标(作者按:计算“用户”而不是连接的设备或流量大小),那么我们观察到人口最多的五个经济体是中国、印度、美国、印度尼西亚和巴西,这五个经济体总共包含大约世界48%的人口。但如果我们观察每个经济体的网民数量时,发现一些变化,那些儿童占人口比率更高、人均国内生产总值低的国家,人均互联网使用水平可能没有那些经济水平更高、人口平均年龄更成熟的国家高。全球最大的五个互联网用户经济体是中国、印度、美国、巴西和日本,他们总共拥有大约全球51%的互联网用户。
虽然我们不知道IPv6 推广应用的临界点在哪,但是如果五个互联网用户最多的国家都全面采用了IPv6,那么IPv6 的应用必然已经达到了推广的临界点。
在这五个国家经济体中,印度的IPv6部署数量最高。印度4.75亿的互联网用户中的60%在使用支持IPv6 终端的设备和服务。在美国,2.91 亿用户中有略少于48%的人在使用IPv6。巴西拥有的IPv6 基础设施服务占1.4 亿用户中的26%,而日本的IPv6用户数占1.16 亿用户中的30%。就IPv6 部署而言,中国在这五个经济体中是最低的。
中国14 亿总人口中估计有7.41 亿网民,如果在中国有广泛的IPv6 服务部署,那么突破IPv6 的应用临界点就很容易;但如果这样一个重要的用户群体没有IPv6 服务,也没有任何可见的IPv6 服务计划,那么关于IPv6 全面应用的时间点和确定性将朝着不同的方向发展。
这意味着中国在IPv6 的世界中很重要,这点非常重要。因此,测量中国的IPv6 采用率是当前的重要话题。
互联网测量一直很具有挑战性。互联网很大程度上是建立在私人公司的平台上,对网络的测量分析通常可以产生具有竞争力的市场情报。但现状是,真正能让我们了解网络构成的大规模测量方法非常缺乏。当然,不仅仅是研究人员对这种情况感到沮丧,行业监管和公共政策的制定工作不仅依赖于对当前环境的深入了解,还依赖于有足够数量的数据来执行合理的预测。
让我们来看看关于中国在IPv6 部署中的一些公开数据。
中国的IPv6 地址
区域地址注册中心维护有关IP 地址分配的记录。在这些记录中,他们会指定国家名称,在地址分配记录中添加两个字母的国家代码。尽管数据并不完全反映实际地理位置,但地址分配记录的国家代码与其公布地址的实际地理位置之间存在很强的相关性。
分配给中国的IPv6 地址块数量的记录如图1 所示。2011 年至2015 年期间,指定给中国的IPv6 地址块大部分是在2011 年到2015 年期间分配的。最近的分配记录分别是2017 年底一块/21 大小的地址被分配给了中国广播电视网络公司CBN,另一块/20 大小的地址在2018 年分配给了中国石化。
图1 中国IPv6 地址分配数量和BGP 宣告数量(2010-2018)
虽然许多地址分配都发生在几年前,但在2017 年底之前,在Internet 域间路由空间中中国发布的IPv6 地址前缀总量一直很小。2017 年12 月29 日,BGP 发布地址总量从略低于/24 的IPv6 地址空间水平跃升至/20。2018 年10 月下旬,发布地址的总量增加了一倍多,略多于/18 的IPv6 地址空间。2018 年底,分配给中国的IPv6 地址空间有略少于一半的地址被BGP 发布。
这种趋势与2018 年的IPv6 部署活动保持一致,尽管如何准确解释这些数字依然具有挑战性。通过BGP 发布IPv6 地址前缀是部署IPv6 服务的必要前提,但路由系统发布地址与终端用户和服务使用地址之间可能还存在相当大的时间差。
在2011 年4 月通用地址池耗尽之前的三个月内,APNIC 为中国分配了大量的IP 地址块。这一期间,大约1.3 亿个IPv4 地址被分配给中国。而这些地址公布到路由系统中花了更长的时间。在2010 年初,路由系统中分配给中国的大约85%的IPv4 地址是可见的。2010 年5 月,这一比例降至75%。然而在七年的时间里,路由系统中可见的地址数量已经攀升到已分配地址的90%。尽管未发布的地址数量正在缓慢下降,中国未发布的IPv4 地址池总共覆盖了3200 万个地址。自2014 年以来,中国通过地址交易进一步增加地址持有量。这些地址交易形成了IPv4 地址净流入中国的现象。
自2016 年以来,中国的IPv4 地址增长基本上已经停止。在中国,任何IPv4 互联网的规模扩张都必须通过各种使用网络地址转换手段(NATs)的地址共享形式来实现。不幸的是,在中国或其他任何国家都没有关于NAT 使用的公开数据,不过用户数量自身也可以来解释数据问题。我们已知在中国大约有3.01 亿个IPv4地址服务7.41 亿互联网用户。有些用户可能拥有多个联网设备,而另一些用户可能通过共享一个设备连接上网,平均估计中国的设备数量超过10 亿个是合理的,这意味着平均IPv4 地址共享率约为3 个设备/IP 地址。
虽然当2016 年初最后一个大型的IPv4 地址块部署到网络中后,中国的IPv4 网络停止了重大的扩张,但这些网络中的IPv6部署出现了滞后。中国的IPv6 部署活动仅在2018 年初才有所加强,IPv6 网络在地址发布方面的主要增长发生在2018 年10 月。
Facebook 的测量
Facebook 发布了一组关于IPv6 部署的测量结果。截至2018年12 月底,Facebook 公布了IPv6 流量约占Facebook 总流量的25%,并给出了每个国家的流量数据(可从Facebook 上“按国家采用”报告中获得)。
对这些数据有这样一些观点。
第一个观点是,中国的IPv6 流量比例仍然很低,从2018 年年中的0.5%上升到年底的2.5%。
第二个观点给出了一种可能的解释,即Facebook 通常不能从中国境内访问(请参见关于此类体验的账户演示)。
中国的Facebook 用户可能正在使用某种形式的VPN 工具,而使用的VPN 工具可能只能使用IPv4 地址访问Facebook。
令人好奇的是,在2018 年初的前几个月里,IPv6 的流量比例下降了2/3,并且一直保持在相对较低的水平,直到2018年8月,这一比例大幅上升到了年底的2.5%。在5 月和7 月出现的突然变化在小数据集上更常见,因此有理由推测本报告背后的潜在流量相对较小。
但据报道,Facebook 在中国并不普遍可用,因此,对2.4%的IPv6 流量的测量可能并不能反映出中国IP 基础设施的总体情况。
Google 的测量
谷歌也有一个类似的测量页面。谷歌报告称,他们的报告反映了“通过IPv6 访问谷歌的用户百分比”。
据谷歌统计,工作日中约22%的全互联网用户使用IPv6 访问谷歌,而周末的用户比例则上升到26%。尽管不清楚用户群体的确切组成,我们可以得出这样的结论:个人用户使用IPv6 服务的数量高于公司和企业。
谷歌报告了目前每个国家的IPv6 使用率,在12 月底,谷歌报告了在中国约3.37%的用户使用IPv6 访问谷歌,如图2 所示。
虽然谷歌只发布每日报告,但是Eric Vyncke 将每日测量数据组成时间序列。谷歌在中国受欢迎的程度并不清楚,特别要考虑的是谷歌已经正式退出中国市场。与Facebook 数据一样,报告的数据也出现了一些意想不到的快速变化,如2016 年初的快速上涨和下跌以及2017 年初的快速上涨。2018 年的数据模式与Facebook 的数据模式一致,在2018 的上半年有所下降,而后则有所上升。但在Facebook 数据中,我们看到最终年底数据高于年初的水平,而谷歌数据则相反,年底只有3.3%,低于年初的4.2%。
完全有可能谷歌数据只反映了一小部分中国用户,因此与Facebook 数据一样,这可能无法反映中国IPv6 部署的全局。
Akamai 的测量
Akamai公司为许多在线服务提供商提供内容分发服务(CDN),并在许多国家/地区运营数据中心。Akamai 发布的“互联网现状”报告包括使用IPv6 访问Akamai 服务的中国用户比例。根据他们的报告显示,到2018 年底,IPv6 使用率为4.6%。
根据数据显示,截止到2018 年底,中国的IPv6 使用率为4.5%。与Facebook 和谷歌在过去几年数据中的比较表明,Akamai 可能有拥有比使用谷歌和Facebook 更大的测量对象,这也使得2018 年中8%使用率的峰值更加令人好奇。
图2 谷歌关于中国IPv6 报告
Akamai 并不是唯一报告这种异常变化的公司。CloudFlare公司大约在同时报告了来自AS9898(中国移动广东分公司)的IPv6 使用量的类似峰值,此峰值可能反映了一个或多个中国网络对IPv6 的某种短期测试行为。
APNIC 的测量
APNIC 一直在使用在线广告嵌入的脚本对IPv6 部署情况进行测量。当广告被传送到浏览器时,一个嵌入的脚本被激活。此脚本指示浏览器访问有IPv4/v6 双栈地址的URL、仅有IPv4 地址的 URL 和仅有IPv6 地址的 URL 的提取,所有这些URL 都存放在APNIC 维护的服务器上(对中国用户此服务器位于新加坡)。然后,这些服务器可以根据运行的脚本测量用户的IPv6 支持能力。
我们使用服务器的数据来计算可以访问IPv6 地址 URL 的中国用户数量。每日总计的时间序列如图3 所示。在这个数据集中,中国目前的IPv6 使用率在7%左右。
图3 APNIC 中国IPv6 使用率时间序列数据
数据的总体形状与Akamai 的数据相似,即在2018 年年中之前,数据量相对较小,约为1%。2018 年7 月的数据出现了大幅增长,然后从2018 年10 月开始,IPv6 的水平显著提高,目前约有7%的用户在使用IPv6。
广告活动管理有大量的可变因素,因为广告投放会受其他并发投放的广告活动影响,内嵌在线广告的应用程序流行度也会对广告投放产生影响。结果显示,每日广告投放的数量具有相当大的变化水平。在2015 年底,投放到中国终端的广告数量有所增加,从那时起每天的广告计数在10 万到100 多万之间变化。
此测量的服务器被部署于新加坡,那么如果服务器位于中国境内,数据是否会有所不同呢?中国境内是否有无法与中国境外建立IPv6 连接的更大的用户群呢?为了回答这个问题,我们得到了位于中国境内的服务器的帮助,并对位于中国境内的服务器执行了相同的URL 测试。这使我们能够从中国国内的有利位置来收集关于中国境内IPv6 的数据并和国外的数据进行对比。比较结果如图4 所示。
图中两条曲线在2018 年10 月底和11 月和12 月之间的差异可能与新加坡的服务器过载有关,这导致了访问新加坡服务器IPv6 URL 的请求数量异常下降。这种情况在12 月中得到了解决,此后两个服务器上的IPv6 测量结果是一致的。同样有趣的是,本次活动中的两台服务器在12 月的最后一周都报告了接近10%的IPv6 使用率,比全球大型广告活动的测量结果还高出2~3%。
图4 中国国内外IPv6 使用数据对比
在国内,中国按照线路和其他经济体的不同组织互联网服务提供商(ISP)。许多中国的ISP 提供的并不是使用单一AS 号的单一网络,而是将其网络管理视图进一步划分为不同的区域网络,其中的典型是中国联通和中国移动。如果我们从自治系统的角度来看待中国,并将这些区域网络视为一个独立的网络,那么就有32 个用户规模在100 万或以上的网络,另外还有26 个用户规模在10 万至100 万用户之间的网络,(完整的网络用户可以在https://stats.labs.apnic.net/cgi-bin/v6pop?c=CN 查看)。
这些运营商网络中,有一个网络运营商多年来一直支持IPv6,即中国教育和科研计算机网CERNET,AS 4538。尽管可能是测量环境和网络本身的变化导致使用率的测量结果有一些变化,CERNET 的IPv6 使用率多年来一直在30%左右,如图5 所示。
我们观察到大多数其他中国ISP 对IPv6 的部署都发生在最近几个月,这个结果与地址测量以及Akamai 的观测数据一致。
值得注意的是,中国移动集团内部的许多区域网络都在进行IPv6 部署。一个很好的例子是CloudFlare 公司在2018 年7 月观察到的AS9808 网络(广东移动)。在这一网络中,大规模的IPv6 部署可能始于2018 年9 月和10 月的测试,然后在2018 年11 月进行了更大规模的部署测试。到2018 年底,该网络中的IPv6 部署水平约为15%。
同样的情况在AS56048(中国移动北京分公司)的网络中也很明显,他们在2018 年6 月、7 月和8 月进行了3 次IPv6 部署测试,随后在2018 年11 月进行了大规模部署。该网络当前的部署范围涵盖了约1200 万用户基数的25%左右。同样,2018 年11 月和12 月的零点数据是测量中人为因素导致的,与网络中的任何变化无关。
图5 IPv6 in AS4538 - CERNET
中国移动集团湖南分公司的AS56047 网络的数据也显示了相似的趋势,说明他们也在近期进行了大规模部署。
最后,中国最大的ISP 中国电信表现如何呢?该网络是中国最大的用户网络,AS4134,估计有3 亿用户。2018 年5 月起该网络在IPv6 部署上出现了明显的变化,该变化在2018 年11 月起则再次出现。值得注意的是,即使该网络只在5%的用户中部署了IPv6服务,也有超过1500万用户,这是一个值得称赞的成就。
APNIC 的测量系统还包括两个进一步的测量:连接故障测量和IPv4/IPv6 往返时延比较测量。
客户端和服务器之间在打开HTTP 会话访问URL 时发送的TCP 三次握手被用来计算连接丢失率。TCP 以客户端向服务器发送设置了SYN 标志的TCP 报文开始,服务器用一个设置了SYN和ACK 标志的报文响应,客户端通过发送一个设置了ACK 标志的TCP 报文来完成连接。
如果服务器接收到初始的TCP SYN 数据包并发送SYN/ACK响应,但它没有接收到最终的ACK 报文,则该连接被定义为失败的连接。这些连接失败的可能原因是本地防火墙和报文过滤程序。防火墙通常允许所有形式的出站数据包,但检查和过滤入站数据包。如果过滤程序仅被配置为IPv4 服务,那么传入的IPv6数据包(包括SYN/ACK 相应数据包)将被此类防火墙丢弃。这样的防火墙配置在尝试IPv6 连接时会总是失败,如图6 所示。
互联网的平均IPv6 连接失败率约为1%,因此即使中国最近的IPv6 连接失败率降到3%,也远高于全球平均水平。平均值隐藏了不同网络连接失败率的变化,一些中国网络IPv6 连接失败率非常高。其中最高的是中国联通广东分公司的AS 134543 网络,根据数据统计,该网络的连接失败率高达IPv6 连接尝试的60%。中国最大的网络ChinaNet(AS 4134),拥有1500 万个IPv6客户端,连接失败率统计为4%。这意味着有60 万用户正在体验到IPv6 连接丢失,这是一个非常高的失败率。
另一个测量方法是测量双栈设备时比较IPv4 和IPv6 不同地址下的连接往返时延。
图6 中国IPv6 连接失败率
如果用户有一个双栈连接的设备,那么测量脚本将让用户先使用IPv4 地址访问Web 对象,并再次使用IPv6 地址访问同一物理服务器上的对象。通过查看这两个协议中的TCP 握手过程,我们可以在相同的两个端点之间分别使用IPv4 地址和IPv6 地址进行两次往返时延测量。从新加坡的APNIC 服务器可以看出,与来自同一端点的IPv4 连接相比,连接到服务器的IPv6 连接平均要长70 毫秒左右的时间。这意味着两者路由并不对称,IPv6 路由的路径与IPv4 路由的路径不同,尤其是中国到新加坡的路径,可能会跨越太平洋后再返回新加坡,而对于大多数ISP 来说,IPv4 路径可能是一个更短的南北向直连线路。不同的ISP 的IPv6 测量数据并不相同,采样点的平均标准偏差约为80 毫秒。这意味着不同的网络使用不同的路由配置。与IPv4 路由相比,中国的某些网络和新加坡在IPv6 上的RTT 性能更好。中国联通主干网AS5837 和新加坡之间的IPv6 RTT 数据比IPv4 的RTT 快25 毫秒。
当我们在中国境内的服务器上查看连接失败率时,统计数字会发生什么变化呢?
出乎意料的是,在中国境内服务器上的连接失败率更高,大约8%的IPv6 连接尝试没能成功。对于这种更高的连接失败率,还没有好的解释。
中国的内部IPv6 路由管理表现得很好,往返时间的平均差异表明,IPv4 和IPv6 的路由路径处理大致相同。
访问失败率每日数据之间的变化表明这些测量值存在一定程度的波动,部分原因可能是路由变化,部分原因可能是每日广告投放分布的变化。我们可以通过AS网络来进一步划分这些测量值。
有三个AS 网络的IP 连接可能使用了一些更长的外部路径来访问中国国内的服务器。在其他大多数情况下,IPv6 提供了更好的RTT 性能。
在过去的几个月里,我们看到了一些中国的规模部署IPv6服务的证据,这在中国移动的区域网络和中国ChinaNet 主干网的网络中最为明显。
谷歌和Facebook 发布的IPv6 数据似乎只看到了中国IP 基础设施的一小部分,而使用VPN 访问这些服务很可能会使这一部分数据受到影响。来自Akamai 的统计与我们基于APNIC 广告的测量计划中看到的数据一致。在中国,IPv6 的使用已经发生了大规模的变化,从11 月开始,在这些大规模的服务网络中,显示出了很多明显地向IPv6 迁移的迹象。
如果有人希望中国成为未来几年推动互联网大规模IPv6 迁移部署临界点的最后一环,那么情况看起来非常令人鼓舞。