1.2 5G+AI时代的算力平台
1.2.1 典型算力平台:云计算
云计算本质上是一种从计算机算力的角度提出的一种服务提供模式,即云计算是一种面向不同服务的计算力提供方式,或者是面向不同服务的计算力提供模型。因此存储和数据传输都需要以计算力作为驱动力。云计算的发展历史一共可以分为三个阶段。云计算的早期阶段,又称为能效计算;云计算的中期阶段,又称为网格计算;近期属于云计算的成熟阶段[8]。
关于云计算的定义有很多,Gartner对云计算定义是:一种计算方式,能通过Internet技术将可扩展的和弹性的IT能力作为服务交付给外部用户。美国国家标准与技术研究所(NIST)在2011年9月,对云计算的定义是:云计算是一种模型,可以实现随时随地、便捷地、按需地从可配置计算资源共享池中获取所需的资源(如网络、服务器、存储、应用程序及服务),资源可以快速供给和释放,使管理的工作量和服务提供者的介入降低至最少[9]。
1. 云计算的早期阶段(概念和模型塑造阶段)
云计算发展的早期阶段需要追溯到1961年,美国计算机科学家John McCarthy提出“如果我倡导的计算机能在未来得到使用,那么有一天,计算也可以像电话一样成为公用设施。计算机应用(Computer Utility)将成为一种全新的、重要的产业基础”。1969年,美国国防部高级研究计划局(Defense Advanced Research Projects Agency,DARPA)的首席科学家伦纳德·克兰罗克(Leonard Kleinrock)表示:“现在,计算机网络还处于初级阶段,但是随着网络的进步和复杂化,我们将可能看到‘计算机应用’的扩展……”。这个时候的云计算更准确地说还处于效能计算阶段。
2. 云计算的中期阶段(缓慢演进阶段)
任何科学技术的演进都离不开业务驱动。从计算机的效能计算模型提出到20世纪90年代,受限于提供计算力的介质的缓慢发展,效能计算模型的演进也经历了几乎停滞的阶段。随着各行各业的发展中对计算力的强劲需求及计算机和互联网的普及,最初从世界上各大高校开始,人们在效能计算的基础之上提出了网格计算这一新型的计算力提供模型。具体地,就是由一个集中控制系统把一些本身非常复杂的任务划分为大量更小的计算片段任务,然后把这些由大化小的计算任务分配给许多联网参与计算的独立计算机进行并行处理,最后再将这些计算结果综合起来得到最终的结果,并输出返回之前的集中控制系统[10]。网格计算模型的优势在当时非常明显,它可以提供稀缺的计算力资源的共享,通过分布式的计算可以在多台联网的计算机上平衡计算负载,从而实现较大规模的整体计算力提供。这种计算提供模型可以在当时的条件下为各企业解决以前难以处理的问题,在满足企业用户需求的同时降低企业计算机资源拥有和管理总成本。
3. 云计算的普及与大规模应用(成熟阶段)
网格计算模型是通过拥有计算能力的节点之间自发形成联盟来共同解决大规模计算的问题的。本质上,这是一次对基础IT资源联合共享模式的进一步探索。但是网格计算能解决的大规模计算问题其实有很多局限性和前提条件。如果一些大型企业的关键性业务需要长期面对大规模计算的难题,那么这些企业往往需要与提供大规模、高可靠计算的企业签订商业服务合同[11]。这时,我们会发现我们需要一种新型的、标准工业化的计算力服务提供模型。正如后来我们熟知的历史那样,美国的一些面向广大公众提供服务的大企业(亚马逊和谷歌)率先遇到计算力难题,并率先于2007年提出了云计算这一理念。
当代以云计算为代表的新型计算力服务提供模型的很多特点,使其有别于效能计算和网格计算模型,也正是这些特点把云计算这一计算力服务模型应用到了数据信息通信技术(Data Information Communication Technology,DICT)等多个领域。主要特点包括:
1)服务器的资源虚拟化技术
服务器资源虚拟化技术主要通过将有一定差异的物理服务器硬件(CPU、内存、硬盘、网卡)分别在逻辑上抽象为各类虚拟资源,实现对底层异构物理硬件的差异性屏蔽,最大限度降低上层业务应用对底层资源环境的依赖和耦合度,为大规模服务器资源的“池化”提供了先决条件。
2)分布式数据库技术
把众多的服务器资源集中组成计算集群之后,遇到了两个难题。第一个难题就是管理系统的全局同步和统一。第二个难题是更大的难题,即如何把需要计算的信息素材和计算后的结果进行统一存储。分布式数据库技术的出现和成熟促使我们可以把一个逻辑上统一的巨大信息体存储在一个逻辑上统一但物理上分离的分布式数据库的物理存储硬件之中。再由该分布式数据库管理软件来负责数据的统一调度和数据的分区存放[12]。
3)高并发高可靠的管理软件技术
如果各类资源的“池化”是当代云计算实现的重要先决条件,那么对各类资源的管理和调度将是云计算算力服务模型能否为各行各业提供基础算力的关键。其中,各行业私有云中的OpenStack云管系统和世界上领先的公有云服务商自研的云资源管理系统的出现和成熟解决了云计算算力服务模型中对“池化”资源进行高并发、高可靠性管理与调度的难题。
4. 云计算的发展驱动力
回顾了云计算近60年的发展历程之后,无论是梳理过往云计算的发展脉络还是进一步整理近年来云计算进一步演进到边缘计算,发现这个过程中唯一不变的就是云计算发展的驱动力。它主要分为两个方面,分别是商业驱动力和技术驱动力,同时这也是任何技术不断向前发展和进化的两大核心因素。
商业驱动力包括容量规划、降低成本、组织灵活性。
技术驱动包括集群化、网格计、虚拟化及其他相关技术(IP网络与架构、数据中心技术、互联网技术、多租户技术、服务技术)。
1.2.2 新型算力平台:边缘计算
随着5G时代的到来,边缘计算成为新的业务增长点,受到了学术界、产业界及政府部门的极大关注,在电力、交通、制造、智慧城市等多个价值行业有了规模应用。产业界在实践中逐步认识到边缘计算的本质与核心能力。边缘计算成为新一代通信技术下的新型算力提供平台。
中国电信在深圳召开的5G创新合作大会上对外展示了自主研发的基于分布式开放平台的多接入边缘计算(Multi-access Edge Computing,MEC)平台。该平台就近提供边缘智能服务,支持固定/移动网络接入、第三方能力/应用灵活部署及边缘能力统一开放,可应用于工业互联网、高清视频、车联网等行业。
边缘计算概念虽然早于5G提出,但真正让业界关注起来是因为伴随对5G商业模式的探讨,各方都逐步认识到边缘计算将成为5G时代驱动各行各业变革的重要解决方案。当然边缘计算并不是简单将服务器放到网络边缘的机房即可,还需要具备低时延、高可靠、本地化等业务特性,边缘计算对网络指标的要求更为苛刻。
虽然目前业界对边缘计算的定义与内涵并没有形成一致意见,各标准化组织或企业分别从自己的角度提出了不同的认识,如国际标准化组织(International Organization for Standardization,ISO)认为边缘计算是一种将主要业务处理和数据存储放在网络边缘节点的分布式计算形式;ETSI定义边缘计算是在靠近数据源或用户的地方提供计算、存储等基础设施,并为边缘应用提供云服务和IT环境服务;而国内的边缘计算产业联盟(ECC)则定义边缘计算是靠近物或数据源头的网络边缘侧,融合网络、计算、存储、应用核心能力的开发平台等。但业界普遍认可边缘计算是在网络边缘提供计算服务的,这也导致边缘计算与传统的云计算存在较大的差异。
然而,传统云计算和边缘计算并不是对立的,两者之间不是替代关系,而是互补协同关系。它们需要通过紧密协同才能更好地满足各种需求场景的匹配,从而把彼此的应用价值发挥到最大。换而言之,边缘计算凭借“边缘”的特性,可以更好地支撑云端的应用,而云计算则能够基于大数据分析,完成边缘节点无法胜任的计算任务,助力边缘计算更加满足本地化的需求。
由于在后面的章节我们还会对边缘计算进行具体介绍,因此这里就不对边缘计算的具体内容进行介绍了。
1.2.3 端计算
端即用户终端,如PC、手机和物联网终端设备等。用户终端设备具有一定的计算能力,能够对采集的数据进行实时处理,进行本地优化控制、故障自动处理、负荷识别和建模等操作。在和网络进行连接后,用户终端设备可以把加工汇集后的高价值数据与云端进行交互,在云端进行全网的安全和风险分析、大数据和人工智能的模式识别、节能和策略改进等操作。同时,如果遇到网络覆盖不到的情况,可以先在边缘侧进行数据处理,当有网络时再将数据上传到云端,在云端进行数据存储和分析[13]。
1.2.4 多样化的算力提供方
随着芯片技术的发展,算力的价格日益降低,已经不再是数年前昂贵的奢侈品。小到个人手机、PC,大到超级计算机、数据中心,算力存在于我们生活的各个角落。但随着算力的普及,算力的利用率却在大幅下降。有数据表明各类算力终端的利用率甚至低于15%。以PC为例,每个家庭甚至不止一台PC,但是并不是很每一台PC都可以物尽其用,大部分时间是处于闲置状态的。而在企业的私有数据中心、科研机构的超算中心中,闲置率更甚。大量算力的浪费,对于家庭或企业而言都是一种经济上的损失。因此可以考虑搭建一种新型的算力交易平台,使所有闲置的算力可以在网上进行交易,减少资源的浪费,提高企业、个人的经济效益。这样,不仅传统的云计算平台、新兴的边缘计算平台,甚至企业闲置的服务器、个人计算机都可以成为网络上的算力提供方,为算力购买者提供多元化的选择。