摘要: 据预测,到2020年底我国IPv6终端设备将达到5亿,正在快速取代IPv4。阿里巴巴网络架构师张先国先生在2018 年GNTC 大会IPv6 专场上分享IPv6应用集团业务(支付宝、淘宝、天猫等)的改造经验,及赋能企业(政企门户、广电传媒、视频网站)快速升级IPv6 基础设施的演进步骤。

在11月15日的GNTC IPv6专场峰会上,阿里巴巴网络架构师张先国先生首先分享了“阿里巴巴IPv6应用平台引领下一代互联网”主题演讲。演讲中讲述了阿里巴巴为何尽早启动IPv6项目、阿里巴巴PV6应用平台实践、以及阿里巴巴五大应用及集团各种平台如何构建在阿里云平台之上。

  • GNTC大会背景
    GNTC 作为全球规模最大的网络技术盛会之一,是由下一代互联网国家工程中心主办,南京市江北新区等单位支持,2018年11月14日-16日在南京火热开幕。本届GNTC通过2场全体大会、7场技术峰会、1场测试活动及GNTC Awards颁奖典礼等特别活动,汇集来自20个国家、50余个国际组织、150多位技术专家,2000+位现场观众。

阿里巴巴网络架构高级专家 张先国

以下为大家收录张先国演讲摘要:

阿里巴巴在2017年6月份就开始启动IPv6项目,主要原因:1)当时全球有5亿以上的IPv6活跃用户,分布在印度、美国、日本、欧洲这些国家,甚至东南亚也开始了增长。截至现在中国,移动端的IPv6终端已经达到了5亿。2)未来五年以内将有500亿的物联网终端进入互联网,如此大体量是IPv4无法支撑的。3)5G正在快速普及,其高带宽、低时延、海量接入的特点,无法继续使用地址转换、会话保持、单向访问的技术。

  • 目前IPv6 项目改造进展和成果:
  1. 2018年双十一:阿里巴巴的当天交易额总数是2135亿,交易峰值每秒49万笔,淘宝背后有IPv6支撑全栈业务。IPv6的好处是,过去从服务端只能看到用户的家庭网关或者4G网关,也缺少很多大数据。采用IPv6绕过NAT,可以直接看到终端用户,进行精准分析和服务。
  2. 高德:导航能力非常专业准确,是DAU过亿的应用,双十一之前抓IPv6 用户访问图,一周数据每天早晚高峰服务非常平顺,IPv6在4G或者3G信号比漫游强,体验非常流畅。
  3. 优酷:日活过亿的应用,世界杯期间就开始了IPv6直播,阿里巴巴采用了IPv6的应用加速技术,让用户的观看更加流畅,因为省去了NAT转换流程,并且全国IPv6的网络是非常通畅的。
  • 总体业务架构与面临挑战:

阿里巴巴总体的IPv6总体业务架构分为接入层互联网和应用。接入层大多知名品牌终端支持了IPv6。移动端访问运营商的互联网,然后进入阿里巴巴的数据中心。应用侧包括三层,网络、云、应用。基础网络包括接入网、骨干网、IDC网络、网关、服务器;另外就是云平台、云网络包括阿里巴巴的一些安全系统,CDN、DNS、SLB等,这两层之上是阿里巴巴改造的五大应用,运行在云平台之上。

这其中面临的挑战包含:1)阿里巴巴对接运营商比较复杂,因为在全国多个地域要开通IPv6,而早期网络对接是不成熟的,到目前为止还有一些问题正在排查解决优化。2)投资量大,因为大量的网络设备是过去的积累,阿里基础设施有上百万台服务器,涉及到总的硬件投资大概有几百亿以上。3)工作量大,因为涉及到变更、替换、升级,数百台的设备,数千条链路割接,还有大量的运营工作。

  • 在网络架构方面,从外向内有五层网络,接入-广域-城域-应用网络-DCN网络,内网从双栈向IPv6 only演进,在这演进过程中,阿里巴巴在这个网络的升级演进过程相当于开着飞机换引擎,成本及稳定性成为两大挑战。另外就是技术方面的挑战,包含路由爆表、安全规则资源不足、管控适配等等。
  • 在电商业务架构方面,首先移动端PC端都是采用统一接入,可以让用户体验更好,一次连接可以访问所有的模块,包括天猫超市、饿了么这些业务。但是IPv6演进也带来一些业务风险,包含600个以上的应用及5亿以上用户逐步切换到IPv6的过程以及面临DDoS攻击等风险。
  • 在应用体验方面,因为阿里巴巴IPv6网络今年开始大规模的建设改造,包括运营商网络和企业的网络都是这样,这个网络是不成熟的,也有大量的连接失败率,及较高的网络延时。另外回落时间过长,还有大量的MTU导致的丢包问题,对网络应用都是一个挑战。

基于以上问题及挑战,阿里巴巴也逐渐发展了解决方案。阿里巴巴的网络优化方案分成三个层面:1)物理网络的覆盖 2)自研虚拟网络平台 3)应用调度三个领域。

  • 在物理网络方面,阿里在全国超过20个IDC已经支持了IPv6,带宽每个区域出口达到了2T以上的带宽,北京、上海、深圳等等出口都超过了2个T。另外CDN在全国各地实现了IPv6的应用加速,可以保证更优质的业务体验。此外,阿里巴巴透过全国各地的探测系统、移动端APP实时发现用户质量问题,把这些质量数据问题送给网络大脑--活水,活水系统会把这些信息进行大数据分析,分析之后传送给控制器,再进行网络层调度和应用层的调度,包括SRTE网络调度、BGP路由调度,以及应用层DNS方案调度,加上有多个运营商出口,进行同城多出口的调度,也可以进行异地的调度。
  • 在虚拟网络技术平台方面,以下这张图是阿里巴巴自研的一套网络平台,左边是转发层面业务,右边是管控层面系统。主要核心技术包含右边的Netframe转发支撑平台,拥有400G级IPv6的转发能力,另外就是AliBGP,实现跨厂商路由协议对接,解决了多厂商兼容性的问题;最后是AliGuard可以提供一个T能力的抗攻击能力,有效的防御黑产的攻击。
  • 在应用链路和网络方面,应用层大概分三步,首先左侧是APP移动端:
  1. 进行DNS解析,包括PC端方案和移动端的解析方案
  2. 地址解析到静态加速一个域名,可以进行静态页面或者图片视频加载,这就指向CDN服务。
  3. 动态业务请求服务指向阿里巴巴的VIP,实现云上负载均衡。

当后端的业务需要客户的原始IP时,采用TOA携带用户原始的IP,流转到阿里巴巴的Proxy,把IP信息插入HttpHeader,携带原始IP传递给后端Nginx,可通过X-Forwarded-For方法获取real-IP。

  • 在应用调度能力方面,因为阿里巴巴有大量应用都是日活超过一亿的,所以必须渐进式切换到IPv6,有两个方案:
  1. PC端或者浏览器端:
    域名请求先走到本地的运营商一般是本省,再向阿里云权威DNS。阿里云DNS能提供高达1T抗攻击能力的DNS服务,目前承载了全国1200万域名服务系统,并在全球18个region部署了Anycast技术。标准DNS也有缺点,因为调度是按省份,一个省全切上去,风险较大,生效较慢。
  2. 移动端HttpDNS:
    需要在终端的APP嵌入SDK,需要域名解析的时候,终端通过Http协议请求,这样就绕过了传统Local DNS解析过程。有几个好处:a)域名精准调度,可以按照更细的百分比,而且还可以加灰度白名单,控制测试用户先上一些IPv6。b)域名防劫持,以前的标准DNS走UDP协议很容易被劫持,HTTP DNS很难被劫持或者是攻击。c)域名变更比以前快了很多,过去是五分钟生效,现在是秒级生效。

总结整个阿里巴巴五大应用和各种平台,都是构建在阿里的云这个平台之上包括计算、存储、网络、数据库安全,阿里大体量的应用在一年不到的时间内就可以实现上线的程度,原因是依赖了已经构建好的阿里云平台,云网络。阿里云IPv6产品和方案已经服务了200个行业的场景。

IPv6项目是一个冷启动的项目,今年在国家政策推动下加速,各个领域都没有准备好,阿里之所以快了一点,早在去年就开始投入。人类智慧发展之所以这么快,是因为构建在别人的肩膀之上,应用的演进也是这样的,希望大家可以把自己的应用平台,构建在云计算的平台之上,实现更快的升级迭代。

阅读原文​​​​​​​

更多技术干货 请关注阿里云云栖社区微信号 :yunqiinsight

阿里巴巴IPv6应用平台引领下一代互联网的更多相关文章

  1. [cnBeta]阿里云推出全栈IPv6解决方案 加速推进下一代互联网应用

    https://www.cnbeta.com/articles/tech/795695.htm 访问: 阿里云 - 最高1888元通用代金券立即可用 作为国内首个全面支持IPv6的云厂商,过去5个月, ...

  2. eFPGA与FPGA SoC,谁将引领下一代可编程硬件之潮流?|半导体行业观察

    eFPGA:冉冉升起的新星 eFPGA即嵌入式FPGA(embedded FPGA),是近期兴起的新型电路IP. 随着摩尔定律越来越接近瓶颈,制造ASIC芯片的成本越来越高.因此,设计者会希望ASIC ...

  3. Koa -- 基于 Node.js 平台的下一代 web 开发框架 koa.bootcss.com

    Koa -- 基于 Node.js 平台的下一代 web 开发框架 koa.bootcss.com

  4. Koa--基于Node.js平台的下一代web开发框架的安装

    koa 是由 Express 原班人马打造的,致力于成为一个更小.更富有表现力.更健壮的 Web 框架. 使用 koa 编写 web 应用,通过组合不同的 generator,可以免除重复繁琐的回调函 ...

  5. Leap Motion发布新平台,直击下一代移动端VR/AR手部追踪

    2013年,动作捕捉技术公司Leap Motion发布了面向PC的体感控制器,不过销量并不乐观.随着2014年虚拟现实技术的再一次兴起,它发布一款用于Oculus Rift的附加设备,从而正式登上VR ...

  6. .Net 平台下的互联网架构新思考

    上一篇<互联网应用架构谈>有很多阅读量,但后来实践中发现基于WCF服务层技术用于实现网站访问的效率是有问题的. 我的本意是以WCF中间层解决商业逻辑,供各个平台调用,然而还是带来诸多的麻烦 ...

  7. Koa -- 基于 Node.js 平台的下一代 web 开发框架

    http://koa.bootcss.com/ 多研究点 react 和 nodejs 这个是未来

  8. IPV6 国内进展情况

    国家下一代互联网产业技术创新战略联盟(以下简称“产业联盟”),近日在北京发布了我国首份IPv6业务用户体验监测报告(以下简称<报告>).该<报告>监测了我国固定宽带的IPv6普 ...

  9. 【转】物业管理与移动互联网科技|微信公众平台,物业app,物业O2O

    [导语]当下,物业管理行业正在接受新科技浪潮的冲击和洗礼,业界企业纷纷探索物业服务的新发展模式.云服务.微社区.微信公众平台.app等,这些本来陌生的词汇在物业管理行业变得耳熟能详.在借助科技手段拓展 ...

随机推荐

  1. Codeforces 1163D DP + KMP

    题意:给你一个字符串s,以及两个字符串s1,s2.s中有些位置是*,意思是可以随便填字母,s的子串中如果出现一次s1,就加一分,如果出现一次s2,就减一分.问这个字符串s最多可以得多少分? 思路: 设 ...

  2. Java的安全性如何理解

    Java取消了强大但又危险的指针,而代之以引用.由于指针可进行移动运算,指针可随便指向一个内存区域,而不管这个区域是否可用,这样做是危险的,因为原来这个内存地址可能存储着重要数据或者是其他程序运行所占 ...

  3. linux php5.6 安装

    如果之前有安装其他版本PHP,请先卸载干净   配置yum源 追加CentOS 6.5的epel及remi源. # rpm -Uvh http://ftp.iij.ad.jp/pub/linux/fe ...

  4. 定时器实现Promise.all()的简单使用

    // 异步事件1 function time1() { const promise = new Promise(function (resolve, reject) { setTimeout(func ...

  5. leetcood学习笔记-14*-最长公共前缀

    笔记: python if not   判断是否为None的情况 if not x if x is None if not x is None if x is not None`是最好的写法,清晰,不 ...

  6. python3 获取电脑磁盘、CPU、内存使用情况

    import psutil # cd C:\Python36-32\Scripts pip install psutil # 获取本机磁盘使用率和剩余空间G信息 def get_disk_info() ...

  7. linux IPC socket

    套接字是通讯端点的抽象 创建一个套接字 #include <sys/types.h> #include <sys/socket.h> int socket(int domain ...

  8. 聊一聊JavaScript中的事件循环

    一.概念:事件循环 JavaScript是单线程的 1.整片 script 整体代码(第一个宏任务)放到执行栈中,执行之后,会触发很多方法 这些方法只能一个个的顺序执行,不能并发 2.这些要执行的方法 ...

  9. 汇编检测OD代码

    repnz指令说明:重复执行其后面的指令,CX或ECX存放最多比较次数,DI或EDI存放查找表首地址,AL或AX或EAX存放想查找的内容.当(CX或ECX)= 0 或 ZF=1 退出重复,否则,(CX ...

  10. 探索C++的秘密之详解extern

    转载:http://developer.51cto.com/art/200704/46843.htm C和C++对函数的处理方式是不同的.extern "C"是使C++能够调用C写 ...