1、概述
云计算是一种全新的计算模式,其核心驱动力是:企业或个人不再需要在电脑中安装大量应用软件,而是通过Web浏览器接入到一种大范围的、按需定制的服务中,即“云服务”。它将使用户体验发生根本性的变化。
传统的服务器主要面向科学计算,通过提高CPU的时钟频率、指令集并行度、核数等来提高服务器的性能。Intel/AMD/IBM等公司的服务器产品均过分迫求性能,忽视了产品的功耗、体积、成本等能效因素,结果导致服务器能效较低,同时造成了服务器体积大、功耗高等问题。云计算则以商业计算为主,它并不注重数学运算的性能,而需要解决大量逻辑运算和多用户同时请求的问题。因此,必须采用全新的思路来设计云服务器系统结构。本文分析了新型云计算服务器的系统结构,设计并实理了一个ICCS-PW新型云计算服务器。
2、新型云计算服务器系统结构
新型云计算服务器关注的是高性能吞吐量计算能力,关注在一段时间内的工作最总和。因此,新型云计算服务器在架构上和传统的服务器有着很大的区别。在传统服务器中,均包含处理器摸块、存储模块、网络模块、电源、风扇等设备。
新型云服务器体系架构按照功能校块划分成云处理器模块、网络处理模块、存储处理模块与系统件理模块等,它们通过引入紧耦合高速互连网络来提供完成网络模块和存储模块的硬件虚拟化。新型云计算服务器模型如图1所示。
相比传统服务器架构,新型云计算服务器大大提高了其利用率,同时也在系统中省去了很多重复的硬件很据云计算服务的特点,采用多个云处理器完成系统设计,并引入低功耗管理理念完成对系统的集中冗余管理。
新型云服务器将计算、存储、交换、管理等集成到个标准系统中,与外界的网络设备、存储设备间的接口和通用架构保待一致,操作系统主要支持Linux,以便用户应用软件的移植。
#p# 3、新型云计算服务器关键技术
3.1云处理器
本文设计的新型云处理器关注的是高性能吞吐量计算。高性能吞吐量计算是指把高端的单线程性能与多核多线程联系起来,关注一段时间工作量总和,而不是看单个核或单线程在某个Benchmark上运行后的性能指数和结果。
云服务器一般包括线程、核、处理器、网络、加速器等功能单元全部计算的总和。因此,云计算一般都有着庞大的数据输入量或海量的工作集,导致占用很多内存,但访问方式却缺乏空间局部性,从而使现有的多级cache内存架构失效率大大提高。
由于在实际情况下,很多服务器通过数以百计的双面内置的内存模型来驱动大量数据,使得内存不可避免地远离处理器,令处理器有可能很多时间花在等待远处内存的数据或指令的获取。同时,云处理的中断比较多,必须要处理好CPU计算和数据存取之间的关系。
本文的云处理器采用以下技术:
(1)硬件多线程技术
硬件多线程技术即在一个核中实现了多个硬件线程,通过多组寄存器存取各个线程的状态,来达到硬件线程之间的正确与零消耗地切换。这些线程对于上层操作系统或者软件是透明,可以直接认为底层是具有多个核的架构,然后完全按照多核处理器那般调度和分配。
(2)硬件探测技术
高性能吞吐量计算主要还得克服“内存墙问题”,即如何让L1 cache访问失效时,读取L2 cache或者主存所致的延迟控制在可容忍的范围内。在传统处理器中,大多数程序都是最大程度地利用cache空间和时间来容忍主存的延迟。云处理器设计了新型的非阻塞cache,这种cache能够在失效的情况下不全部锁定cahce,让加载数据可以继续运行。
(3)网络处理技术
云处理器内嵌了网络协处理器。它实现智能路由转发器功能,将最常见也是最耗费时间的TCP包剪切与URL地址解析进行硬件处理,大幅度提高云服务器性能与速度。云处理器经过了特别设计与优化,针对网络应用程序逐位处理的特性,加入如柱式移位器等专用于网络处理的硬件单元。协处理器与内存单元之间一般使用支持资料组交互作用的总线,并连接双端口的RAM,缓冲来自总线的网络数据包。
3.2网络拓扑结构
为了提高新型云计算服务器中多处理器之间数据交换的效率,提升性能,本文采用多维互联网络。多维互联网络具有大容量、易扩展以及高可靠性等特点。为了达到这些特点,需要在交换核心部件—交换结构方面有所突破。
多维互联网络最先应用于并行计算和多处理器技术,相对于多处理器系统的应用,数据交换中对吞吐量的要求更高,需要有业务质量保证,但对分组时延要求不高,多维互联结构具有巨大的交换容量以及高度的可扩展性和鲁棒性,这些特点恰好满足了大容量交换网络对容量、可扩展性和可靠性方面的要求,多维互联结构具有很高的并行处理特性和很好的可扩展性。
新型云计算服务器采用3D-torus结构网络拓扑、虫孔路由并结合虚通道技术的交换网络的节点结构,它可以实现维序路由算法和对节点资源进行合理的调度。3D-torus网络拓扑示意图如图2所示。
在该结构框架下,节点被划分成数据平面和控制平面2个部分,分别处理数据信号和控制信号,这使节点的结构更加清晰,功能更加明确。本文利用3D-tons实现的云服务器具有高带宽、低时延的特点,能很好地满足云计算多用户高吞吐量访问的特点。
3.3负载均衡
由于云计算需求的不断增长,需要具备提供大量并发访问服务的能力。如果简单的提高单机系统的硬件性能并不能真正解决这个问题,因为在把单机系统的性能提高到一定的程度时,其性价比会急剧下降,而且单机系统的性能总是有限的。因此,必须采用多个处理器提供网络服务,并将网络请求分配给这些处理器分担,才能提供处理大量并发服务的能力,而如何把网络请求合理地分配到多个处理器上,使之不出现一个处理器过忙、而别的处理器却未充分发挥处理能力的情况。
本文在云计算服务器中采用负载均衡机制,负载均衡技术可以解决成本、性能、可扩展能力等各方面的矛盾,通过相对总体成本较低的计算机群集,可以实现单机系统无法提供的强大性能。
负载均衡的实现方式有软件和硬件2种
基于软件的负载均衡,具有针对小规模系统性价比高,和能够更好地根据系统与应用的状况来分配负载等特点,但负载能力却受服务器本身性能的影响,性能越好,负载能力越大。
而采用硬件实现方式一般直接通过智能交换机实现处理能力更强,并与系统无关、负载性能强的负载均衡设备,其更加适用于一大堆设备、大访问量与简单应用模式。因此,非常符合目前数据中心中占主流的Web服务。
调度算法决定了负载均衡的好坏。好的调度算法不仅可以使服务器集群内的每个服务器都充分发挥各自的性能,使整个服务器集群的负载均匀分布,也不会使集群内的服务器负载过重。本文在云服务器设计中植入硬件负载均衡单元,同时配备多种供选择的均衡算法。在实际应用中可以根据规模综合考虑采用何种均衡方式本文根据云服务器的应用场合,同时采用了软件和硬件负载均衡策略。
3.4硬件虚拟化
传统的服务器一般配备有自己的主板、电源、网络模块和存储模块等,能够独立成系统。但根据目前数据中心的部署的情况来看,更多地采用集中式存储结构。就网络访问而言,目前主要采用千兆网卡,如果其能满负荷工作,能够同时支持数十万个TCP并发请求,但后端的处理速度无法跟上,所以目前高性能双至强4核处理器也只能支持最多2万个并发请求。
新型云计算服务器针对存储模块进行硬件虚拟化,去掉主板上不常使用,但十分耗电相关硬件,可根据需要集中访问存储设备,将使得服务器结构更加精简,大大降低系统功耗。针对网络模块进行硬件虚拟化,让一定数量的处理器去共享网络通信外没,即提高了网络换块的利川率,同时也降低进一步降低了功耗。
3.5服务管理
新型云计算服务器将通过为管理层提供管理接口的形式,支持云计算服务管理。
在资源接口层,提供服务器硬件平台服务接口,以便资源接口采用面向资源管理服务的方式进一步封装。在通用资源层,提供服务器通用资探管理服务接口,以便通用资源层进一步封装后体现出与硬件平台无关的特点。在服务管理层,提供高级的资源和计算服务,如流程服务、动态分配计算资源、资源监控、系统的健康管理、自动优化的调用接口。
#p# 4、新型云计算服务器的实现
本文针对云计算服务的特点,采用了低功率处理器、3D-torus网络、硬件盘拟化、负载均衡、服务管理等技术,研制的ICCS-PW新型云服务器系统结构如图3所示。它采用并行计算机技术将多处理器、存储、I/O通过高速网络实现整机,大大降低了云服务器的体积和功耗。
ICCS-PW新型云计算服务器的内部实物照片如图4所示,外部实物照片如图5所示。
需要说明的是,由于目前还没有专门针对云计算的云处理器产品,本文在设计新型云计算服务器时采用低功耗处理器。由于它在芯片上简化了流水线、cache等微结构,因此大大地降低了功耗。
ICCS-PW新型云计算服务器支持并发连接数45000个~150000个。与传统服务器相比,新型云服务器在处理性能相同的情况下,体积和功耗可降低到传统服务器的1/4。
传统服务器与云计算服务器运行成本对比如表1所示,其中,假定传统服务器与云计算服务器全天24 h不间断工作,电费按照0.5元/kWH,托管费用按照每月300元。可以看出,云计算服务器比传统服务器运行成本降低75%,具有绿色环保的特点。
5、结束语
本文在研究云计算的特点的基础上,设计并实现了一种新型云计算服务器,具有低功耗、小体积等的特点。下一步将对可变计算结构、网络请求快速处理、高效能动态负载请求节能处理等技术进行研究,进一步减低云计算服务器的运行成本,达到节能环保的目的。